diff options
author | Paul Wicking <paul.wicking@qt.io> | 2020-05-31 11:53:37 +0200 |
---|---|---|
committer | Paul Wicking <paul.wicking@qt.io> | 2020-06-04 13:08:20 +0200 |
commit | df38c2d3510e11b881e3d7bf89b4fe7868e801ca (patch) | |
tree | 50bc722358afa9c7f391e81738749e2b9f58f19f /src/qdoc/clangcodeparser.cpp | |
parent | 2eed23718f3f2b8f29298784266fd745ff0fc0a9 (diff) | |
download | qttools-df38c2d3510e11b881e3d7bf89b4fe7868e801ca.tar.gz |
QDoc: Extract enum Access from Node
Move Node::Access out of Node and make it a scoped enum,
to break circular dependency issues between Node and
RelatedClass.
This is a requirement to extract struct RelatedClass
from Node.
Task-number: QTBUG-84578
Change-Id: I13a1ac275d46abcd04f5f712291c77c2f24a65db
Reviewed-by: Topi Reiniƶ <topi.reinio@qt.io>
Diffstat (limited to 'src/qdoc/clangcodeparser.cpp')
-rw-r--r-- | src/qdoc/clangcodeparser.cpp | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/src/qdoc/clangcodeparser.cpp b/src/qdoc/clangcodeparser.cpp index 752870b88..d31cdc15a 100644 --- a/src/qdoc/clangcodeparser.cpp +++ b/src/qdoc/clangcodeparser.cpp @@ -43,6 +43,7 @@ #include "clangcodeparser.h" +#include "access.h" #include "codechunk.h" #include "config.h" #include "enumnode.h" @@ -181,17 +182,17 @@ static Location fromCXSourceLocation(CXSourceLocation location) /*! convert a CX_CXXAccessSpecifier to Node::Access */ -static Node::Access fromCX_CXXAccessSpecifier(CX_CXXAccessSpecifier spec) +static Access fromCX_CXXAccessSpecifier(CX_CXXAccessSpecifier spec) { switch (spec) { case CX_CXXPrivate: - return Node::Private; + return Access::Private; case CX_CXXProtected: - return Node::Protected; + return Access::Protected; case CX_CXXPublic: - return Node::Public; + return Access::Public; default: - return Node::Public; + return Access::Public; } } @@ -725,7 +726,7 @@ CXChildVisitResult ClangVisitor::visitHeader(CXCursor cursor, CXSourceLocation l parent_->findNonfunctionChild(namespaceName, &Node::isNamespace)); if (!ns) { ns = new NamespaceNode(parent_, namespaceName); - ns->setAccess(Node::Public); + ns->setAccess(Access::Public); ns->setLocation(fromCXSourceLocation(clang_getCursorLocation(cursor))); } QScopedValueRollback<Aggregate *> setParent(parent_, ns); @@ -1008,7 +1009,7 @@ void ClangVisitor::parseProperty(const QString &spelling, const Location &loc) name.remove(0, 1); } auto *property = new PropertyNode(parent_, name); - property->setAccess(Node::Public); + property->setAccess(Access::Public); property->setLocation(loc); property->setDataType(type); int i = 2; |