16 #ifndef NAMESPACEDEF_H 17 #define NAMESPACEDEF_H 20 #include <unordered_set> 22 #include "definition.h" 24 #include "linkedmap.h" 25 #include "membergroup.h" 39 using NamespaceDefSet = std::unordered_set<const NamespaceDef*>;
49 bool isConstantGroup=
false,
bool localName=FALSE);
50 bool declVisible(
bool isContantGroup)
const;
60 virtual int numDocMembers()
const = 0;
63 virtual bool isConstantGroup()
const = 0;
64 virtual bool isModule()
const = 0;
65 virtual bool isLibrary()
const = 0;
66 virtual bool isInline()
const = 0;
67 virtual bool isVisibleInHierarchy()
const = 0;
68 virtual bool hasDetailedDescription()
const = 0;
69 virtual bool subGrouping()
const = 0;
70 virtual MemberList *getMemberList(MemberListType lt)
const = 0;
71 virtual const MemberLists &getMemberLists()
const = 0;
73 virtual int countVisibleMembers()
const = 0;
97 virtual QCString compoundTypeString()
const = 0;
106 virtual void setMetaData(
const QCString &m) = 0;
107 virtual void insertUsedFile(
FileDef *fd) = 0;
108 virtual void writeDocumentation(
OutputList &ol) = 0;
109 virtual void writeMemberPages(
OutputList &ol) = 0;
111 virtual void insertClass(
ClassDef *cd) = 0;
112 virtual void insertConcept(
ConceptDef *cd) = 0;
114 virtual void insertMember(
MemberDef *md) = 0;
115 virtual void computeAnchors() = 0;
116 virtual void countMembers() = 0;
117 virtual void addMembersToMemberGroup() = 0;
118 virtual void distributeMemberGroupDocumentation() = 0;
119 virtual void findSectionsInDocumentation() = 0;
120 virtual void sortMemberLists() = 0;
121 virtual void addListReferences() = 0;
122 virtual void setFileName(
const QCString &fn) = 0;
123 virtual void combineUsingRelations(NamespaceDefSet &visitedNamespace) = 0;
125 virtual void addUsingDeclaration(
ClassDef *cd) = 0;
126 virtual void setInline(
bool isInline) = 0;
130 std::unique_ptr<NamespaceDef> createNamespaceDef(
const QCString &defFileName,
int defLine,
int defColumn,
133 bool isPublished=
false);
151 return toNamespaceDefMutable(getResolvedNamespace(key));
153 bool namespaceHasNestedNamespace(
const NamespaceDef *nd);
The common base class of all entity definitions found in the sources.
Definition: definition.h:75
An abstract interface of a namespace symbol.
Definition: namespacedef.h:54
A model of a class/file/namespace member symbol.
Definition: memberdef.h:47
Definition: namespacedef.h:41
Text streaming class that buffers data.
Definition: textstream.h:35
A model of a file symbol.
Definition: filedef.h:98
Definition: conceptdef.h:73
Definition: namespacedef.h:45
Definition: namespacedef.h:100
Definition: membergroup.h:109
Definition: memberlist.h:165
Definition: definition.h:305
Definition: conceptdef.h:26
A list of MemberDef objects as shown in documentation sections.
Definition: memberlist.h:107
Container class representing a vector of objects with keys.
Definition: linkedmap.h:35
Container class representing a vector of objects with keys.
Definition: linkedmap.h:231
Class representing a list of output generators that are written to in parallel.
Definition: outputlist.h:530
CompoundType
The various compound types.
Definition: classdef.h:109
This is an alternative implementation of QCString.
Definition: qcstring.h:93
Definition: classlist.h:30
A abstract class representing of a compound symbol.
Definition: classdef.h:103