LCOV - code coverage report
Current view: top level - libreoffice/autodoc/source/ary/idl - ia_ce.hxx (source / functions) Hit Total Coverage
Test: libreoffice_filtered.info Lines: 5 5 100.0 %
Date: 2012-12-27 Functions: 3 3 100.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
       2             : /*
       3             :  * This file is part of the LibreOffice project.
       4             :  *
       5             :  * This Source Code Form is subject to the terms of the Mozilla Public
       6             :  * License, v. 2.0. If a copy of the MPL was not distributed with this
       7             :  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
       8             :  *
       9             :  * This file incorporates work covered by the following license notice:
      10             :  *
      11             :  *   Licensed to the Apache Software Foundation (ASF) under one or more
      12             :  *   contributor license agreements. See the NOTICE file distributed
      13             :  *   with this work for additional information regarding copyright
      14             :  *   ownership. The ASF licenses this file to you under the Apache
      15             :  *   License, Version 2.0 (the "License"); you may not use this file
      16             :  *   except in compliance with the License. You may obtain a copy of
      17             :  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
      18             :  */
      19             : 
      20             : #ifndef ARY_IDL_IA_CE_HXX
      21             : #define ARY_IDL_IA_CE_HXX
      22             : 
      23             : 
      24             : // USED SERVICES
      25             :     // BASE CLASSES
      26             : #include <ary/idl/ip_ce.hxx>
      27             :     // COMPONENTS
      28             :     // PARAMETERS
      29             : 
      30             : 
      31             : namespace ary
      32             : {
      33             : namespace idl
      34             : {
      35             : 
      36             : class Ce_Storage;
      37             : class TypeAdmin;
      38             : 
      39             : 
      40             : /** @resp
      41             :     Implements ::ary::idl::CePilot. Provides the access logic for all
      42             :     IDL code entities.
      43             : 
      44             :     @collab Ce_Storage
      45             :     @collab TypeAdmin
      46             : 
      47             :     @see CodeEntity
      48             : */
      49             : class CeAdmin : public CePilot
      50             : {
      51             :   public:
      52             :     // LIFECYCLE
      53             :                         CeAdmin(
      54             :                             NameLookup &        io_rNameDictionary,
      55             :                             TypeAdmin &         io_rTypePilot );
      56             :     virtual             ~CeAdmin();
      57             : 
      58             :     // OPERATIONS
      59             : 
      60             :     // INQUIRY
      61             :     const Ce_Storage &  Storage() const;
      62             : 
      63             :     // ACCESS
      64             :     Ce_Storage &        Storage();
      65             : 
      66             :     // INHERITED
      67             :         // Interface ::ary::idl::CePilot:
      68             :     virtual Module &    CheckIn_Module(
      69             :                             Ce_id               i_nParentId,
      70             :                             const String &      i_sName );
      71             :     virtual Service &   Store_Service(
      72             :                             Ce_id               i_nOwner,
      73             :                             const String &      i_sName );
      74             :     virtual SglIfcService &
      75             :                         Store_SglIfcService(
      76             :                             Ce_id               i_nOwner,
      77             :                             const String &      i_sName,
      78             :                             Type_id             i_nBaseInterface );
      79             :     virtual Interface & Store_Interface(
      80             :                             Ce_id               i_nOwner,
      81             :                             const String &      i_sName,
      82             :                             Type_id             i_nBase );
      83             :     virtual Struct &    Store_Struct(
      84             :                             Ce_id               i_nOwner,
      85             :                             const String &      i_sName,
      86             :                             Type_id             i_nBase,
      87             :                             const String &      i_sTemplateParam );
      88             :     virtual Exception & Store_Exception(
      89             :                             Ce_id               i_nOwner,
      90             :                             const String &      i_sName,
      91             :                             Type_id             i_nBase );
      92             :     virtual Enum &      Store_Enum(
      93             :                             Ce_id               i_nOwner,
      94             :                             const String &      i_sName );
      95             :     virtual Typedef &   Store_Typedef(
      96             :                             Ce_id               i_nOwner,
      97             :                             const String &      i_sName,
      98             :                             Type_id             i_nDefiningType );
      99             :     virtual ConstantsGroup &
     100             :                         Store_ConstantsGroup(
     101             :                             Ce_id               i_nOwner,
     102             :                             const String &      i_sName );
     103             :     virtual Singleton & Store_Singleton(
     104             :                             Ce_id               i_nOwner,
     105             :                             const String &      i_sName );
     106             :     virtual SglIfcSingleton &
     107             :                         Store_SglIfcSingleton(
     108             :                             Ce_id               i_nOwner,
     109             :                             const String &      i_sName,
     110             :                             Type_id             i_nBaseInterface );
     111             : 
     112             :     virtual Constant &  Store_Constant(
     113             :                             Ce_id               i_nOwner,
     114             :                             const String &      i_sName,
     115             :                             Type_id             i_nType,
     116             :                             const String &      i_sValue );
     117             :     virtual Property &  Store_Property(
     118             :                             Ce_id               i_nOwner,
     119             :                             const String &      i_sName,
     120             :                             Type_id             i_nType,
     121             :                             Property::Stereotypes
     122             :                                                 i_stereotypes );
     123             :     virtual Function &  Store_Function(
     124             :                             Ce_id               i_nOwner,
     125             :                             const String &      i_sName,
     126             :                             Type_id             i_nReturnType,
     127             :                             bool                i_bOneWay );
     128             :     virtual Function &  Store_ServiceConstructor(
     129             :                             Ce_id               i_nOwner,
     130             :                             const String &      i_sName );
     131             :     virtual StructElement &
     132             :                         Store_StructMember(
     133             :                             Ce_id               i_nOwner,
     134             :                             const String &      i_sName,
     135             :                             Type_id             i_nType );
     136             :     virtual StructElement &
     137             :                         Store_ExceptionMember(
     138             :                             Ce_id               i_nOwner,
     139             :                             const String &      i_sName,
     140             :                             Type_id             i_nType );
     141             :     virtual EnumValue & Store_EnumValue(
     142             :                             Ce_id               i_nOwner,
     143             :                             const String &      i_sName,
     144             :                             const String &      i_sValue );
     145             :     virtual Attribute & Store_Attribute(
     146             :                             Ce_id               i_nOwner,
     147             :                             const String &      i_sName,
     148             :                             Type_id             i_nType,
     149             :                             bool                i_bReadOnly,
     150             :                             bool                i_bBound );
     151             : 
     152             :     virtual const Module &
     153             :                         GlobalNamespace() const;
     154             :     virtual const CodeEntity &
     155             :                         Find_Ce(
     156             :                             Ce_id               i_nId ) const;
     157             :     virtual const Module &
     158             :                         Find_Module(
     159             :                             Ce_id               i_nId ) const;
     160             :     virtual const Module *
     161             :                         Search_Module(
     162             :                             Ce_id               i_nId ) const;
     163             :     virtual const Function &
     164             :                         Find_Function(
     165             :                             Ce_id               i_nId ) const;
     166             :     virtual const Property &
     167             :                         Find_Property(
     168             :                             Ce_id               i_nId ) const;
     169             :     virtual const EnumValue &
     170             :                         Find_EnumValue(
     171             :                             Ce_id               i_nId ) const;
     172             :     virtual const Constant &
     173             :                         Find_Constant(
     174             :                             Ce_id               i_nId ) const;
     175             :     virtual const StructElement &
     176             :                         Find_StructElement(
     177             :                             Ce_id               i_nId ) const;
     178             :     virtual void        Get_Text(
     179             :                             StringVector &      o_module,
     180             :                             String &            o_ce,
     181             :                             String &            o_member,
     182             :                             const CodeEntity &  i_ce ) const;
     183             :     virtual const NameLookup &
     184             :                         NameDictionary() const;
     185             :     virtual void        Get_AlphabeticalIndex(
     186             :                             std::vector<Ce_id> &
     187             :                                                 o_rResult,
     188             :                             alphabetical_index::E_Letter
     189             :                                                 i_cLetter) const;
     190             :     // ACCESS
     191             :     virtual Module &    GlobalNamespace();
     192             :     virtual CodeEntity &
     193             :                         Find_Ce(
     194             :                             Ce_id               i_nId );
     195             :   private:
     196             :     // Locals
     197             :     Module &            lhf_Access_Module(
     198             :                             Ce_id               i_nId );
     199             :     void                lhf_Put2Storage_and_AssignId(
     200             :                             CodeEntity &        pass_io_rCe );
     201             :     void                lhf_Store_NewEntity(
     202             :                             DYN CodeEntity &    pass_io_rCe,
     203             :                             Module &            i_rOwner );
     204             :     void                lhf_Store_NewEntity(
     205             :                             DYN CodeEntity &    pass_io_rCe,
     206             :                             Ce_id               i_nOwnerModule );
     207             :     void                get_ModuleText(
     208             :                             StringVector &      o_module,
     209             :                             const CodeEntity &  i_ce ) const;
     210             :     Struct &            lhf_Store_TplStruct(
     211             :                             Ce_id               i_nOwner,
     212             :                             const String &      i_sName,
     213             :                             Type_id             i_nBase,
     214             :                             const String &      i_sTemplateParam );
     215             : 
     216             :     const Ce_Storage &  my_Storage() const;
     217             :     Ce_Storage &        my_Storage();
     218       19526 :     NameLookup &        my_NameDictionary()     { return *pNameDictionary; }
     219             : 
     220             :     // DATA
     221             :     Dyn<Ce_Storage>     pStorage;           /// @inv pStorage != 0;
     222             :     Module *            pGlobalNamespace;
     223             :     NameLookup *        pNameDictionary;
     224             :     TypeAdmin *         pTypePilot;
     225             : };
     226             : 
     227             : 
     228             : // IMPLEMENTATION
     229             : inline const Ce_Storage &
     230      632562 : CeAdmin::Storage() const
     231             : {
     232      632562 :     return *pStorage;
     233             : }
     234             : 
     235             : inline Ce_Storage &
     236      174271 : CeAdmin::Storage()
     237             : {
     238      174271 :     return *pStorage;
     239             : }
     240             : 
     241             : 
     242             : 
     243             : }   // namespace idl
     244             : }   // namespace ary
     245             : #endif
     246             : 
     247             : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Generated by: LCOV version 1.10