xref: /trunk/main/autodoc/inc/ary/cpp/c_slntry.hxx (revision 1c78a5d6)
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