xref: /aoo41x/main/autodoc/inc/ary/cpp/c_slntry.hxx (revision cdf0e10c)
1 /*************************************************************************
2  *
3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4  *
5  * Copyright 2000, 2010 Oracle and/or its affiliates.
6  *
7  * OpenOffice.org - a multi-platform office productivity suite
8  *
9  * This file is part of OpenOffice.org.
10  *
11  * OpenOffice.org is free software: you can redistribute it and/or modify
12  * it under the terms of the GNU Lesser General Public License version 3
13  * only, as published by the Free Software Foundation.
14  *
15  * OpenOffice.org is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU Lesser General Public License version 3 for more details
19  * (a copy is included in the LICENSE file that accompanied this code).
20  *
21  * You should have received a copy of the GNU Lesser General Public License
22  * version 3 along with OpenOffice.org.  If not, see
23  * <http://www.openoffice.org/license.html>
24  * for a copy of the LGPLv3 License.
25  *
26  ************************************************************************/
27 
28 #ifndef ARY_CPP_C_SLNTRY_HXX
29 #define ARY_CPP_C_SLNTRY_HXX
30 //  KORR_DEPRECATED_3.0
31 
32 // USED SERVICES
33 #include <ary/cpp/c_types4cpp.hxx>
34 #include <ary/namesort.hxx>
35 
36 
37 namespace ary
38 {
39 namespace cpp
40 {
41     class Namespace;
42 
43 
44 
45 typedef Namespace * NamespacePtr;
46 struct Less_NamespacePtr
47 {
48     bool                operator()(             /// @return true if (i_p1->Name() < i_p2->Name()) .
49                             const NamespacePtr& i_p1,
50                             const NamespacePtr& i_p2 );
51 };
52 
53 
54 
55 
56 struct S_Classes_Base
57 {
58     Type_id			    nId;
59 	E_Protection		eProtection;
60 	E_Virtuality		eVirtuality;
61     String              sComment;
62 
63 						S_Classes_Base()
64 							:	nId(0),
65 								eProtection(PROTECT_global),
66 								eVirtuality(VIRTUAL_none)
67 								// sComment
68 								{ }
69 };
70 
71 struct S_TplParam
72 {
73     String              sName;
74     Type_id             nId;
75 
76                         S_TplParam(
77                             String              i_sName,
78                             Type_id             i_nId )
79                             :   sName(i_sName), nId(i_nId) {}
80     const String  &     Name() const            { return sName; }
81 };
82 
83 
84 struct S_LocalCe
85 {
86 	String              sLocalName;
87 	Ce_id               nId;
88 
89 						S_LocalCe()             : nId(0) {}
90 						S_LocalCe(
91 							const String  &     i_sLocalName,
92 							Cid                 i_nId )
93 												: sLocalName(i_sLocalName), nId(i_nId) {}
94 	bool                operator<(
95 							const S_LocalCe &   i_rCe ) const
96 												{ return LesserName()(sLocalName,i_rCe.sLocalName); }
97 };
98 
99 typedef std::vector< S_LocalCe >        List_LocalCe;
100 
101 
102 typedef std::map<String, NamespacePtr>          Map_NamespacePtr;
103 typedef std::vector< S_Classes_Base >           List_Bases;
104 typedef std::vector< S_TplParam >               List_TplParam;
105 
106 
107 
108 }   // namespace cpp
109 }   // namespace ary
110 #endif
111