1 /************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23 24 #ifndef ARY_CPP_C_SLNTRY_HXX 25 #define ARY_CPP_C_SLNTRY_HXX 26 // KORR_DEPRECATED_3.0 27 28 // USED SERVICES 29 #include <ary/cpp/c_types4cpp.hxx> 30 #include <ary/namesort.hxx> 31 32 33 namespace ary 34 { 35 namespace cpp 36 { 37 class Namespace; 38 39 40 41 typedef Namespace * NamespacePtr; 42 struct Less_NamespacePtr 43 { 44 bool operator()( /// @return true if (i_p1->Name() < i_p2->Name()) . 45 const NamespacePtr& i_p1, 46 const NamespacePtr& i_p2 ); 47 }; 48 49 50 51 52 struct S_Classes_Base 53 { 54 Type_id nId; 55 E_Protection eProtection; 56 E_Virtuality eVirtuality; 57 String sComment; 58 S_Classes_Baseary::cpp::S_Classes_Base59 S_Classes_Base() 60 : nId(0), 61 eProtection(PROTECT_global), 62 eVirtuality(VIRTUAL_none) 63 // sComment 64 { } 65 }; 66 67 struct S_TplParam 68 { 69 String sName; 70 Type_id nId; 71 S_TplParamary::cpp::S_TplParam72 S_TplParam( 73 String i_sName, 74 Type_id i_nId ) 75 : sName(i_sName), nId(i_nId) {} Nameary::cpp::S_TplParam76 const String & Name() const { return sName; } 77 }; 78 79 80 struct S_LocalCe 81 { 82 String sLocalName; 83 Ce_id nId; 84 S_LocalCeary::cpp::S_LocalCe85 S_LocalCe() : nId(0) {} S_LocalCeary::cpp::S_LocalCe86 S_LocalCe( 87 const String & i_sLocalName, 88 Cid i_nId ) 89 : sLocalName(i_sLocalName), nId(i_nId) {} operator <ary::cpp::S_LocalCe90 bool operator<( 91 const S_LocalCe & i_rCe ) const 92 { return LesserName()(sLocalName,i_rCe.sLocalName); } 93 }; 94 95 typedef std::vector< S_LocalCe > List_LocalCe; 96 97 98 typedef std::map<String, NamespacePtr> Map_NamespacePtr; 99 typedef std::vector< S_Classes_Base > List_Bases; 100 typedef std::vector< S_TplParam > List_TplParam; 101 102 103 104 } // namespace cpp 105 } // namespace ary 106 #endif 107