26 enum class Protection { Public, Protected, Private, Package } ;
32 enum class MethodTypes { Method, Signal, Slot, DCOP, Property, Event };
70 GROUPING_AUTO_WEAK = GROUPING_LOWEST,
73 GROUPING_AUTO_HIGHEST = GROUPING_AUTO_DEF,
75 GROUPING_HIGHEST = GROUPING_INGROUP
78 static const char *getGroupPriName(
GroupPri_t priority )
82 case GROUPING_AUTO_WEAK:
84 case GROUPING_AUTO_ADD:
86 case GROUPING_AUTO_DEF:
88 case GROUPING_INGROUP:
102 MemberListType_privateLists = 0x00800,
103 MemberListType_detailedLists = 0x01000,
104 MemberListType_declarationLists = 0x02000,
105 MemberListType_documentationLists = 0x04000,
106 MemberListType_exportedLists = 0x08000,
107 MemberListType_internalLists = 0x10000,
109 MemberListType_undefined = -1,
111 MemberListType_pubMethods = 0,
112 MemberListType_proMethods = 1,
113 MemberListType_pacMethods = 2,
114 MemberListType_priMethods = 3 + MemberListType_privateLists,
115 MemberListType_pubStaticMethods = 4,
116 MemberListType_proStaticMethods = 5,
117 MemberListType_pacStaticMethods = 6,
118 MemberListType_priStaticMethods = 7 + MemberListType_privateLists,
119 MemberListType_pubSlots = 8,
120 MemberListType_proSlots = 9,
121 MemberListType_priSlots = 10 + MemberListType_privateLists,
122 MemberListType_pubAttribs = 11,
123 MemberListType_proAttribs = 12,
124 MemberListType_pacAttribs = 13,
125 MemberListType_priAttribs = 14 + MemberListType_privateLists,
126 MemberListType_pubStaticAttribs = 15,
127 MemberListType_proStaticAttribs = 16,
128 MemberListType_pacStaticAttribs = 17,
129 MemberListType_priStaticAttribs = 18 + MemberListType_privateLists,
130 MemberListType_pubTypes = 19,
131 MemberListType_proTypes = 20,
132 MemberListType_pacTypes = 21,
133 MemberListType_priTypes = 22 + MemberListType_privateLists,
134 MemberListType_related = 23,
135 MemberListType_signals = 24,
136 MemberListType_friends = 25,
137 MemberListType_dcopMethods = 26,
138 MemberListType_properties = 27,
139 MemberListType_events = 28,
141 MemberListType_typedefMembers = 29 + MemberListType_detailedLists,
142 MemberListType_enumMembers = 30 + MemberListType_detailedLists,
143 MemberListType_enumValMembers = 31 + MemberListType_detailedLists,
144 MemberListType_functionMembers = 32 + MemberListType_detailedLists,
145 MemberListType_relatedMembers = 33 + MemberListType_detailedLists,
146 MemberListType_variableMembers = 34 + MemberListType_detailedLists,
147 MemberListType_propertyMembers = 35 + MemberListType_detailedLists,
148 MemberListType_eventMembers = 36 + MemberListType_detailedLists,
149 MemberListType_constructors = 37 + MemberListType_detailedLists,
151 MemberListType_allMembersList = 38,
153 MemberListType_decDefineMembers = 39 + MemberListType_declarationLists,
154 MemberListType_decProtoMembers = 40 + MemberListType_declarationLists,
155 MemberListType_decTypedefMembers = 41 + MemberListType_declarationLists,
156 MemberListType_decEnumMembers = 42 + MemberListType_declarationLists,
157 MemberListType_decFuncMembers = 43 + MemberListType_declarationLists,
158 MemberListType_decVarMembers = 44 + MemberListType_declarationLists,
159 MemberListType_decEnumValMembers = 45 + MemberListType_declarationLists,
160 MemberListType_decPubSlotMembers = 46 + MemberListType_declarationLists,
161 MemberListType_decProSlotMembers = 47 + MemberListType_declarationLists,
162 MemberListType_decPriSlotMembers = 48 + MemberListType_declarationLists,
163 MemberListType_decSignalMembers = 49 + MemberListType_declarationLists,
164 MemberListType_decEventMembers = 50 + MemberListType_declarationLists,
165 MemberListType_decFriendMembers = 51 + MemberListType_declarationLists,
166 MemberListType_decPropMembers = 52 + MemberListType_declarationLists,
168 MemberListType_docDefineMembers = 53 + MemberListType_documentationLists,
169 MemberListType_docProtoMembers = 54 + MemberListType_documentationLists,
170 MemberListType_docTypedefMembers = 55 + MemberListType_documentationLists,
171 MemberListType_docEnumMembers = 56 + MemberListType_documentationLists,
172 MemberListType_docFuncMembers = 57 + MemberListType_documentationLists,
173 MemberListType_docVarMembers = 58 + MemberListType_documentationLists,
174 MemberListType_docEnumValMembers = 59 + MemberListType_documentationLists,
175 MemberListType_docPubSlotMembers = 60 + MemberListType_documentationLists,
176 MemberListType_docProSlotMembers = 61 + MemberListType_documentationLists,
177 MemberListType_docPriSlotMembers = 62 + MemberListType_documentationLists,
178 MemberListType_docSignalMembers = 63 + MemberListType_documentationLists,
179 MemberListType_docEventMembers = 64 + MemberListType_documentationLists,
180 MemberListType_docFriendMembers = 65 + MemberListType_documentationLists,
181 MemberListType_docPropMembers = 66 + MemberListType_documentationLists,
183 MemberListType_redefinedBy = 67,
184 MemberListType_enumFields = 68,
185 MemberListType_memberGroup = 69,
188 MemberListType_interfaces = 70,
190 MemberListType_interfaceMembers = 71 + MemberListType_detailedLists,
191 MemberListType_services = 72,
192 MemberListType_serviceMembers = 73 + MemberListType_detailedLists,
194 MemberListType_decSequenceMembers = 74 + MemberListType_declarationLists,
195 MemberListType_docSequenceMembers = 75 + MemberListType_documentationLists,
196 MemberListType_decDictionaryMembers = 76 + MemberListType_declarationLists,
197 MemberListType_docDictionaryMembers = 77 + MemberListType_documentationLists,
200 enum class MemberListContainer
209 enum class CodeSymbolType
244 constexpr
const char *codeSymbolType2Str(CodeSymbolType type)
248 case CodeSymbolType::Class:
return "class";
249 case CodeSymbolType::Struct:
return "struct";
250 case CodeSymbolType::Union:
return "union";
251 case CodeSymbolType::Interface:
return "interface";
252 case CodeSymbolType::Protocol:
return "protocol";
253 case CodeSymbolType::Category:
return "category";
254 case CodeSymbolType::Exception:
return "exception";
255 case CodeSymbolType::Service:
return "service";
256 case CodeSymbolType::Singleton:
return "singleton";
257 case CodeSymbolType::Concept:
return "concept";
258 case CodeSymbolType::Namespace:
return "namespace";
259 case CodeSymbolType::Package:
return "package";
260 case CodeSymbolType::Define:
return "define";
261 case CodeSymbolType::Function:
return "function";
262 case CodeSymbolType::Variable:
return "variable";
263 case CodeSymbolType::Typedef:
return "typedef";
264 case CodeSymbolType::EnumValue:
return "enumvalue";
265 case CodeSymbolType::Enumeration:
return "enumeration";
266 case CodeSymbolType::Signal:
return "signal";
267 case CodeSymbolType::Slot:
return "slot";
268 case CodeSymbolType::Friend:
return "friend";
269 case CodeSymbolType::DCOP:
return "dcop";
270 case CodeSymbolType::Property:
return "property";
271 case CodeSymbolType::Event:
return "event";
272 case CodeSymbolType::Sequence:
return "sequence";
273 case CodeSymbolType::Dictionary:
return "dictionary";
286 MemberType_Enumeration,
287 MemberType_EnumValue,
294 MemberType_Interface,
297 MemberType_Dictionary
302 FortranFormat_Unknown,
319 LocalToc() : m_mask(None) { memset(m_level,0,
sizeof(m_level)); }
322 void enableHtml(
int level)
327 void enableLatex(
int level)
330 m_level[Latex]=level;
332 void enableXml(
int level)
337 void enableDocbook(
int level)
339 m_mask|=(1<<Docbook);
340 m_level[Docbook]=level;
344 bool isHtmlEnabled()
const {
return (m_mask & (1<<Html))!=0; }
345 bool isLatexEnabled()
const {
return (m_mask & (1<<Latex))!=0; }
346 bool isXmlEnabled()
const {
return (m_mask & (1<<Xml))!=0; }
347 bool isDocbookEnabled()
const {
return (m_mask & (1<<Docbook))!=0; }
348 bool nothingEnabled()
const {
return m_mask == None; }
349 int htmlLevel()
const {
return m_level[Html]; }
350 int latexLevel()
const {
return m_level[Latex]; }
351 int xmlLevel()
const {
return m_level[Xml]; }
352 int docbookLevel()
const {
return m_level[Docbook]; }
353 int mask()
const {
return m_mask; }
357 int m_level[numTocTypes];
363 #define TYPE_SPECIFIERS \ 364 TSPEC(Template) TSPEC(Generic) TSPEC(Ref) TSPEC(Value) TSPEC(Interface) \ 365 TSPEC(Struct) TSPEC(Union) TSPEC(Exception) TSPEC(Protocol) TSPEC(Category) \ 366 TSPEC(SealedClass) TSPEC(AbstractClass) TSPEC(Enum) TSPEC(Service) TSPEC(Singleton) \ 367 TSPEC(ForwardDecl) TSPEC(Local) TSPEC(EnumStruct) TSPEC(ConstExpr) TSPEC(PrivateGettable) \ 368 TSPEC(ProtectedGettable) TSPEC(PrivateSettable) TSPEC(ProtectedSettable) TSPEC(Inline) TSPEC(Explicit) \ 369 TSPEC(Mutable) TSPEC(Settable) TSPEC(Gettable) TSPEC(Readable) TSPEC(Writable) \ 370 TSPEC(Final) TSPEC(Abstract) TSPEC(Addable) TSPEC(Removable) TSPEC(Raisable) \ 371 TSPEC(Override) TSPEC(New) TSPEC(Sealed) TSPEC(Initonly) TSPEC(Optional) \ 372 TSPEC(Required) TSPEC(NonAtomic) TSPEC(Copy) TSPEC(Retain) TSPEC(Assign) \ 373 TSPEC(Strong) TSPEC(Weak) TSPEC(Unretained) TSPEC(Alias) TSPEC(ConstExp) \ 374 TSPEC(Default) TSPEC(Delete) TSPEC(NoExcept) TSPEC(Attribute) TSPEC(Property) \ 375 TSPEC(Readonly) TSPEC(Bound) TSPEC(Constrained) TSPEC(Transient) TSPEC(MaybeVoid) \ 376 TSPEC(MaybeDefault) TSPEC(MaybeAmbiguous) TSPEC(Published) TSPEC(ConstEval) TSPEC(ConstInit) \ 387 void reset() { std::memset(
this, 0,
sizeof(*
this)); }
391 #define TSPEC(x) m_is##x = m_is##x || other.is##x(); 399 #define TSPEC(x) eq = eq && (t1.m_is##x == t2.m_is##x); 407 return !(operator==(t1,t2));
411 std::string to_string()
const 413 std::string result=
"[";
417 if (!first) result+=","; \ 418 result+=#x; first=false; \ 429 TypeSpecifier &set##x(bool b) { m_is##x = b; return *this; } \ 430 bool is##x() const { return m_is##x; } \ 438 enum class VhdlSpecifier
472 #define ENTRY_TYPES \ 474 ETYPE(Class, Compound|Scope) \ 475 ETYPE(Namespace, Scope) \ 476 ETYPE(Concept, None) \ 477 ETYPE(ClassDoc, CompoundDoc|Doc) \ 478 ETYPE(StructDoc, CompoundDoc|Doc) \ 479 ETYPE(UnionDoc, CompoundDoc|Doc) \ 480 ETYPE(ExceptionDoc, CompoundDoc|Doc) \ 481 ETYPE(InterfaceDoc, CompoundDoc|Doc) \ 482 ETYPE(ProtocolDoc, CompoundDoc|Doc) \ 483 ETYPE(CategoryDoc, CompoundDoc|Doc) \ 484 ETYPE(ServiceDoc, CompoundDoc|Doc) \ 485 ETYPE(SingletonDoc, CompoundDoc|Doc) \ 486 ETYPE(Source, File) \ 487 ETYPE(Header, File) \ 488 ETYPE(ModuleDoc, Doc) \ 489 ETYPE(ConceptDoc, Doc) \ 490 ETYPE(NamespaceDoc, Doc) \ 491 ETYPE(EnumDoc, Doc) \ 492 ETYPE(PageDoc, Doc) \ 493 ETYPE(MemberDoc, Doc) \ 494 ETYPE(OverloadDoc, Doc) \ 495 ETYPE(Example, Doc) \ 496 ETYPE(VariableDoc, Doc) \ 497 ETYPE(FileDoc, Doc) \ 498 ETYPE(DefineDoc, Doc) \ 499 ETYPE(GroupDoc, Doc) \ 500 ETYPE(MainpageDoc, Doc) \ 501 ETYPE(MemberGrp, Doc) \ 502 ETYPE(PackageDoc, Doc) \ 504 ETYPE(Variable, None) \ 505 ETYPE(Function, None) \ 506 ETYPE(Typedef, None) \ 507 ETYPE(Include, None) \ 509 ETYPE(Define, None) \ 510 ETYPE(UsingDir, None) \ 511 ETYPE(UsingDecl, None) \ 512 ETYPE(Package, None) \ 513 ETYPE(ObjcImpl, None) \ 514 ETYPE(ExportedInterface, None) \ 515 ETYPE(IncludedService, None) \ 516 ETYPE(ExampleLineno, None) \ 524 #define ETYPE(x,bits) \ 525 static EntryType make##x() { return EntryType(static_cast<int>(x)|static_cast<int>(bits)); } \ 526 bool is##x() const { return (m_type&TypeMask)==x; } 529 bool isCompound()
const {
return (m_type & Compound)!=0; }
530 bool isScope()
const {
return (m_type & Scope)!=0; }
531 bool isFile()
const {
return (m_type & File)!=0; }
532 bool isCompoundDoc()
const {
return (m_type & CompoundDoc)!=0; }
533 bool isDoc()
const {
return (m_type & Doc)!=0; }
534 std::string to_string()
const 538 #define ETYPE(x,bits) \ 539 case x : return "["+std::string(#x)+bits_to_string()+"]"; 545 friend inline bool operator==(
const EntryType &t1,
const EntryType &t2) {
return t1.m_type==t2.m_type; }
546 friend inline bool operator!=(
const EntryType &t1,
const EntryType &t2) {
return !(operator==(t1,t2)); }
551 #define ETYPE(x,bits) \ 563 CompoundDoc = (1<<19),
565 TypeMask = 0x0000FFFF,
566 CategoryMask = 0xFFFF0000
569 std::string bits_to_string()
const 572 if (m_type&Compound) result+=
",Compound";
573 if (m_type&Scope) result+=
",Scope";
574 if (m_type&File) result+=
",File";
575 if (m_type&CompoundDoc) result+=
",CompoundDoc";
578 TypeName type()
const {
return static_cast<TypeName
>(m_type & TypeMask); }
579 unsigned int m_type = Empty;
Grouping info.
Definition: types.h:64
membership in group was defined via @defgroup
Definition: types.h:72
GroupPri_t
Grouping priority.
Definition: types.h:67
GroupPri_t pri
priority of this definition
Definition: types.h:96
SrcLangExt
Language as given by extension.
Definition: types.h:41
Relationship
Kind of member relationship.
Definition: types.h:38
membership in group was defined by @ingroup
Definition: types.h:74
A class representing a macro definition.
Definition: define.h:30
Specifier
Virtualness of a member.
Definition: types.h:29
Wrapper class for a number of boolean properties.
Definition: types.h:382
QCString groupname
name of the group
Definition: types.h:95
MethodTypes
Kind of method.
Definition: types.h:32
Protection
Protection level of members.
Definition: types.h:26
RelatesType
Type of member relation.
Definition: types.h:35
This is an alternative implementation of QCString.
Definition: qcstring.h:93
membership in group was defined via @add[to]group
Definition: types.h:71
Helper class to process markdown formatted text.
Definition: markdown.h:31
Wrapper class for the Entry type.
Definition: types.h:521