summaryrefslogtreecommitdiff
path: root/src/namespacedef.h
diff options
context:
space:
mode:
authorDongHun Kwak <dh0128.kwak@samsung.com>2021-10-15 11:16:22 +0900
committerDongHun Kwak <dh0128.kwak@samsung.com>2021-10-15 11:16:22 +0900
commit558fa54c62ec59357cb5c40a411f16f1c1754f33 (patch)
tree9468f1b169143cbb375fc223ca2f78539a908085 /src/namespacedef.h
parentce6f802772f02771c3bf86ccf78d0fc1731947c5 (diff)
downloaddoxygen-558fa54c62ec59357cb5c40a411f16f1c1754f33.tar.gz
doxygen-558fa54c62ec59357cb5c40a411f16f1c1754f33.tar.bz2
doxygen-558fa54c62ec59357cb5c40a411f16f1c1754f33.zip
Imported Upstream version 1.9.2upstream/1.9.2
Diffstat (limited to 'src/namespacedef.h')
-rw-r--r--src/namespacedef.h33
1 files changed, 24 insertions, 9 deletions
diff --git a/src/namespacedef.h b/src/namespacedef.h
index e644a32..46d2b1e 100644
--- a/src/namespacedef.h
+++ b/src/namespacedef.h
@@ -18,7 +18,6 @@
#include <set>
-#include <qstrlist.h>
#include "definition.h"
#include "filedef.h"
#include "linkedmap.h"
@@ -26,11 +25,12 @@
class MemberList;
class ClassDef;
+class ConceptDef;
class OutputList;
class ClassLinkedRefMap;
+class ConceptLinkedRefMap;
class MemberDef;
class NamespaceDef;
-class FTextStream;
class NamespaceDef;
class NamespaceDefMutable;
@@ -45,9 +45,9 @@ class NamespaceLinkedMap : public LinkedMap<NamespaceDef>
class NamespaceLinkedRefMap : public LinkedRefMap<const NamespaceDef>
{
public:
- void writeDeclaration(OutputList &ol,const char *title,
+ void writeDeclaration(OutputList &ol,const QCString &title,
bool isConstantGroup=false, bool localName=FALSE);
- bool declVisible() const;
+ bool declVisible(bool isContantGroup) const;
};
/** An abstract interface of a namespace symbol. */
@@ -72,7 +72,7 @@ class NamespaceDef : public Definition
virtual bool isLinkableInProject() const = 0;
virtual bool isLinkable() const = 0;
virtual bool hasDetailedDescription() const = 0;
- virtual const Definition *findInnerCompound(const char *name) const = 0;
+ virtual const Definition *findInnerCompound(const QCString &name) const = 0;
virtual bool subGrouping() const = 0;
virtual MemberList *getMemberList(MemberListType lt) const = 0;
virtual const MemberLists &getMemberLists() const = 0;
@@ -96,6 +96,9 @@ class NamespaceDef : public Definition
/*! Returns the namespaces contained in this namespace */
virtual NamespaceLinkedRefMap getNamespaces() const = 0;
+ /*! Returns the concepts contained in this namespace */
+ virtual ConceptLinkedRefMap getConcepts() const = 0;
+
virtual QCString title() const = 0;
virtual QCString compoundTypeString() const = 0;
};
@@ -110,8 +113,9 @@ class NamespaceDefMutable : public DefinitionMutable, public NamespaceDef
virtual void writeDocumentation(OutputList &ol) = 0;
virtual void writeMemberPages(OutputList &ol) = 0;
virtual void writeQuickMemberLinks(OutputList &ol,const MemberDef *currentMd) const = 0;
- virtual void writeTagFile(FTextStream &) = 0;
+ virtual void writeTagFile(TextStream &) = 0;
virtual void insertClass(const ClassDef *cd) = 0;
+ virtual void insertConcept(const ConceptDef *cd) = 0;
virtual void insertNamespace(const NamespaceDef *nd) = 0;
virtual void insertMember(MemberDef *md) = 0; // md cannot be const, since setSectionList is called on it
virtual void computeAnchors() = 0;
@@ -130,9 +134,9 @@ class NamespaceDefMutable : public DefinitionMutable, public NamespaceDef
};
/** Factory method to create new NamespaceDef instance */
-NamespaceDefMutable *createNamespaceDef(const char *defFileName,int defLine,int defColumn,
- const char *name,const char *ref=0,
- const char *refFile=0,const char*type=0,
+NamespaceDefMutable *createNamespaceDef(const QCString &defFileName,int defLine,int defColumn,
+ const QCString &name,const QCString &ref=QCString(),
+ const QCString &refFile=QCString(),const QCString &type=QCString(),
bool isPublished=false);
/** Factory method to create an alias of an existing namespace. Used for inline namespaces. */
@@ -147,6 +151,17 @@ const NamespaceDef *toNamespaceDef(const Definition *d);
NamespaceDefMutable *toNamespaceDefMutable(Definition *d);
NamespaceDefMutable *toNamespaceDefMutable(const Definition *d);
+// --- Helpers
+
+NamespaceDef *getResolvedNamespace(const QCString &key);
+inline NamespaceDefMutable *getResolvedNamespaceMutable(const QCString &key)
+{
+ return toNamespaceDefMutable(getResolvedNamespace(key));
+}
+bool namespaceHasNestedNamespace(const NamespaceDef *nd);
+bool namespaceHasNestedConcept(const NamespaceDef *nd);
+bool namespaceHasNestedClass(const NamespaceDef *nd,bool filterClasses,ClassDef::CompoundType ct);
+
//------------------------------------------------------------------------
#endif