Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
|
The Node class is the base class for all the nodes in QDoc's parse tree. More...
#include <lalr.h>
Public Types | |
enum | NodeType : unsigned char { NoType , Namespace , Class , Struct , Union , HeaderFile , Page , Enum , Example , ExternalPage , Function , Typedef , TypeAlias , Property , Variable , Group , Module , QmlType , QmlModule , QmlProperty , QmlValueType , SharedComment , Collection , Proxy } |
An unsigned char value that identifies an object as a particular subclass of Node. More... | |
enum | Genus : unsigned char { DontCare = 0x0 , CPP = 0x1 , QML = 0x4 , DOC = 0x8 , API = CPP | QML } |
An unsigned char value that specifies whether the Node represents a C++ element, a QML element, or a text document. More... | |
enum | Status : unsigned char { Deprecated , Preliminary , Active , Internal , DontDocument } |
An unsigned char that specifies the status of the documentation element in the documentation set. More... | |
enum | ThreadSafeness : unsigned char { UnspecifiedSafeness , NonReentrant , Reentrant , ThreadSafe } |
An unsigned char that specifies the degree of thread-safeness of the element. More... | |
enum | SignatureOption : unsigned char { SignaturePlain = 0x0 , SignatureDefaultValues = 0x1 , SignatureReturnType = 0x2 , SignatureTemplateParams = 0x4 } |
enum | LinkType : unsigned char { StartLink , NextLink , PreviousLink , ContentsLink } |
An unsigned char value that probably should be moved out of the Node base class. More... | |
enum | FlagValue { FlagValueDefault = -1 , FlagValueFalse = 0 , FlagValueTrue = 1 } |
A value used in PropertyNode and QmlPropertyNode that can be -1, 0, or +1. More... | |
typedef std::set< Node< _Tp > > | Repository |
typedef Repository::iterator | iterator |
typedef std::list< iterator >::iterator | edge_iterator |
Public Member Functions | |
std::pair< edge_iterator, bool > | insertEdge (iterator other) const |
edge_iterator | begin () const |
edge_iterator | end () const |
bool | operator== (const Node< _Tp > &other) const |
bool | operator!= (const Node< _Tp > &other) const |
bool | operator< (const Node< _Tp > &other) const |
virtual | ~Node ()=default |
The default destructor is virtual so any subclass of Node can be deleted by deleting a pointer to Node. | |
virtual Node * | clone (Aggregate *) |
When reimplemented in a subclass, this function creates a clone of this node on the heap and makes the clone a child of parent. | |
virtual Tree * | tree () const |
Returns a pointer to the Tree this node is in. | |
Aggregate * | root () const |
NodeType | nodeType () const |
Returns this node's type. | |
QString | nodeTypeString () const |
Returns this node's type as a string for use as an attribute value in XML or HTML. | |
Genus | genus () const |
Returns this node's Genus. | |
void | setGenus (Genus t) |
bool | isActive () const |
Returns true if this node's status is Active . | |
bool | isClass () const |
Returns true if the node type is Class . | |
bool | isCppNode () const |
Returns true if this node's Genus value is CPP . | |
bool | isDontDocument () const |
Returns true if this node's status is DontDocument . | |
bool | isEnumType () const |
Returns true if the node type is Enum . | |
bool | isExample () const |
Returns true if the node type is Example . | |
bool | isExternalPage () const |
Returns true if the node type is ExternalPage . | |
bool | isFunction (Genus g=DontCare) const |
Returns true if this is a FunctionNode and its Genus is set to g. | |
bool | isGroup () const |
Returns true if the node type is Group . | |
bool | isHeader () const |
Returns true if the node type is HeaderFile . | |
bool | isIndexNode () const |
Returns true if this node was created from something in an index file. | |
bool | isModule () const |
Returns true if the node type is Module . | |
bool | isNamespace () const |
Returns true if the node type is Namespace . | |
bool | isPage () const |
Returns true if the node type is Page . | |
bool | isPreliminary () const |
Returns true if this node's status is Preliminary . | |
bool | isPrivate () const |
Returns true if this node's access is Private . | |
bool | isProperty () const |
Returns true if the node type is Property . | |
bool | isProxyNode () const |
Returns true if the node type is Proxy . | |
bool | isPublic () const |
Returns true if this node's access is Public . | |
bool | isProtected () const |
Returns true if this node's access is Protected . | |
bool | isQmlBasicType () const |
Returns true if the node type is QmlBasicType . | |
bool | isQmlModule () const |
Returns true if the node type is QmlModule . | |
bool | isQmlNode () const |
Returns true if this node's Genus value is QML . | |
bool | isQmlProperty () const |
Returns true if the node type is QmlProperty . | |
bool | isQmlType () const |
Returns true if the node type is QmlType or QmlValueType . | |
bool | isRelatedNonmember () const |
Returns true if this is a related nonmember of something. | |
bool | isStruct () const |
Returns true if the node type is Struct . | |
bool | isSharedCommentNode () const |
Returns true if the node type is SharedComment . | |
bool | isTypeAlias () const |
Returns true if the node type is Typedef . | |
bool | isTypedef () const |
Returns true if the node type is Typedef . | |
bool | isUnion () const |
Returns true if the node type is Union . | |
bool | isVariable () const |
Returns true if the node type is Variable . | |
bool | isGenericCollection () const |
Returns true if the node type is Collection . | |
virtual bool | isDeprecated () const |
Returns true if this node's status is Deprecated . | |
virtual bool | isAbstract () const |
Returns true if the ClassNode or QmlTypeNode is marked abstract. | |
virtual bool | isAggregate () const |
Returns true if this node is an aggregate, which means it inherits Aggregate and can therefore have children. | |
virtual bool | isFirstClassAggregate () const |
Returns true if this Node is an Aggregate but not a ProxyNode. | |
virtual bool | isAlias () const |
Returns true if this QML property is marked as an alias. | |
virtual bool | isAttached () const |
Returns true if the QML property or QML method node is marked as attached. | |
virtual bool | isClassNode () const |
Returns true if this is an instance of ClassNode. | |
virtual bool | isCollectionNode () const |
Returns true if this is an instance of CollectionNode. | |
virtual bool | isDefault () const |
Returns true if the QML property node is marked as default. | |
virtual bool | isInternal () const |
Returns true if the node's status is Internal , or if its parent is a class with Internal status. | |
virtual bool | isMacro () const |
returns true if either FunctionNode::isMacroWithParams() or FunctionNode::isMacroWithoutParams() returns true. | |
virtual bool | isPageNode () const |
Returns true if this node represents something that generates a documentation page. | |
virtual bool | isRelatableType () const |
Returns true if this node is something you can relate things to with the relates command. | |
virtual bool | isMarkedReimp () const |
Returns true if the FunctionNode is marked as a reimplemented function. | |
virtual bool | isPropertyGroup () const |
Returns true if the node is a SharedCommentNode for documenting multiple C++ properties or multiple QML properties. | |
virtual bool | isStatic () const |
Returns true if the FunctionNode represents a static function. | |
virtual bool | isTextPageNode () const |
Returns true if the node is a PageNode but not an Aggregate. | |
virtual bool | isWrapper () const |
Returns true if the node is a class node or a QML type node that is marked as being a wrapper class or wrapper QML type, or if it is a member of a wrapper class or type. | |
QString | plainName () const |
Returns this node's name member. | |
QString | plainFullName (const Node *relative=nullptr) const |
Constructs and returns the node's fully qualified name by recursively ascending the parent links and prepending each parent name + "::". | |
QString | plainSignature () const |
Constructs and returns the node's fully qualified signature by recursively ascending the parent links and prepending each parent name + "::" to the plain signature. | |
QString | fullName (const Node *relative=nullptr) const |
Constructs and returns this node's full name. | |
virtual QString | signature (Node::SignatureOptions) const |
void Node::setGenus(Genus t) Sets this node's Genus to t. | |
const QString & | fileNameBase () const |
Returns the node's file name base string, which is built once, when Generator::fileBase() is called and stored in the Node. | |
bool | hasFileNameBase () const |
Returns true if the node's file name base has been set. | |
void | setFileNameBase (const QString &t) |
Sets the node's file name base to t. | |
void | setAccess (Access t) |
Sets the node's access type to t. | |
void | setLocation (const Location &t) |
Sets the node's declaration location, its definition location, or both, depending on the suffix of the file name from the file path in location t. | |
void | setDoc (const Doc &doc, bool replace=false) |
Sets this Node's Doc to doc. | |
void | setStatus (Status t) |
Sets the node's status to t. | |
void | setThreadSafeness (ThreadSafeness t) |
Sets the node's thread safeness to t. | |
void | setSince (const QString &since) |
Sets the information about the project and version a node was introduced in, unless the version is lower than the 'ignoresince. | |
void | setPhysicalModuleName (const QString &name) |
Sets the node's physical module name. | |
void | setUrl (const QString &url) |
Sets the node's URL to url, which is the url to the page that the node represents. | |
void | setTemplateDecl (std::optional< RelaxedTemplateDeclaration > t) |
void | setReconstitutedBrief (const QString &t) |
When reading an index file, this function is called with the reconstituted brief clause t to set the node's brief clause. | |
void | setParent (Aggregate *n) |
Sets the node's parent pointer to n. | |
void | setIndexNodeFlag (bool isIndexNode=true) |
Sets a flag in this Node that indicates the node was created for something in an index file. | |
void | setHadDoc () |
void | setComparisonCategory (const ComparisonCategory &category) |
ComparisonCategory | comparisonCategory () const |
virtual void | setRelatedNonmember (bool b) |
Sets a flag in the node indicating whether this node is a related nonmember of something. | |
virtual void | addMember (Node *) |
In a CollectionNode, this function adds node to the collection node's members list. | |
virtual bool | hasNamespaces () const |
Returns true if this is a CollectionNode and its members list contains namespace nodes. | |
virtual bool | hasClasses () const |
Returns true if this is a CollectionNode and its members list contains class nodes. | |
virtual void | setAbstract (bool) |
If this node is a ClassNode or a QmlTypeNode, the node's abstract flag data member is set to b. | |
virtual void | setWrapper () |
If this node is a ClassNode or a QmlTypeNode, the node's wrapper flag data member is set to true . | |
virtual void | setDataType (const QString &) |
If this node is a PropertyNode or a QmlPropertyNode, its data type data member is set to dataType. | |
virtual bool | wasSeen () const |
Returns the seen flag data member of this node if it is a NamespaceNode or a CollectionNode. | |
virtual void | appendGroupName (const QString &) |
virtual QString | element () const |
If this node is a QmlPropertyNode or a FunctionNode, this function returns the name of the parent node. | |
virtual bool | docMustBeGenerated () const |
This function is called to perform a test to decide if the node must have documentation generated. | |
virtual QString | title () const |
Returns a string that can be used to print a title in the documentation for whatever this Node is. | |
virtual QString | subtitle () const |
Returns a string that can be used to print a subtitle in the documentation for whatever this Node is. | |
virtual QString | fullTitle () const |
Returns a string that can be used as the full title for the documentation of this node. | |
virtual bool | setTitle (const QString &) |
Sets the node's title, which is used for the title of the documentation page, if one is generated for this node. | |
virtual bool | setSubtitle (const QString &) |
Sets the node's subtitle, which is used for the subtitle of the documentation page, if one is generated for this node. | |
void | markInternal () |
Sets the node's access to Private and its status to Internal. | |
virtual void | markDefault () |
If this node is a QmlPropertyNode, it is marked as the default property. | |
virtual void | markReadOnly (bool) |
If this node is a QmlPropertyNode, then the property's read-only flag is set to flag. | |
Aggregate * | parent () const |
Returns the node's parent pointer. | |
const QString & | name () const |
Returns the node's name data member. | |
QString | physicalModuleName () const |
QString | url () const |
Returns the node's URL, which is the url of the documentation page created for the node or the url of an external page if the node is an ExternalPageNode. | |
virtual void | setQtVariable (const QString &) |
If this node is a CollectionNode, its QT variable is set to v. | |
virtual QString | qtVariable () const |
If this node is a CollectionNode, its QT variable is returned. | |
virtual void | setCMakePackage (const QString &) |
virtual void | setCMakeComponent (const QString &) |
virtual void | setCMakeTargetItem (const QString &) |
virtual QString | cmakePackage () const |
virtual QString | cmakeComponent () const |
virtual QString | cmakeTargetItem () const |
virtual bool | hasTag (const QString &) const |
If this node is a FunctionNode, the function returns true if the function has the tag t. | |
void | setDeprecated (const QString &sinceVersion) |
Sets the Node status to Node::Deprecated, unless sinceVersion represents a future version. | |
const QString & | deprecatedSince () const |
const QMap< LinkType, std::pair< QString, QString > > & | links () const |
Returns a reference to this node's link map. | |
void | setLink (LinkType linkType, const QString &link, const QString &desc) |
This function creates a pair that describes a link. | |
Access | access () const |
Returns the node's Access setting, which can be Public , Protected , or Private . | |
const Location & | declLocation () const |
Returns the Location where this node's declaration was seen. | |
const Location & | defLocation () const |
Returns the Location where this node's dedefinition was seen. | |
const Location & | location () const |
If this node's definition location is empty, this function returns this node's declaration location. | |
const Doc & | doc () const |
Returns a reference to the node's Doc data member. | |
bool | isInAPI () const |
bool | hasDoc () const |
Returns true if this node is documented, or it represents a documented node read from the index ('had doc'), or this node is sharing a non-empty doc with other nodes. | |
bool | hadDoc () const |
Status | status () const |
Returns the node's status value. | |
ThreadSafeness | threadSafeness () const |
Returns the thread safeness value for whatever this node represents. | |
ThreadSafeness | inheritedThreadSafeness () const |
If this node has a parent, the parent's thread safeness value is returned. | |
QString | since () const |
Returns the node's since string, which can be empty. | |
const std::optional< RelaxedTemplateDeclaration > & | templateDecl () const |
const QString & | reconstitutedBrief () const |
bool | isSharingComment () const |
This function returns true if the node is sharing a comment with other nodes. | |
void | setSharedCommentNode (SharedCommentNode *t) |
SharedCommentNode * | sharedCommentNode () |
QString | extractClassName (const QString &string) const |
Extract a class name from the type string and return it. | |
virtual QString | qmlTypeName () const |
If this is a QmlPropertyNode or a FunctionNode representing a QML method, this function returns the qmlTypeName() of the parent() node. | |
virtual QString | qmlFullBaseName () const |
If this is a QmlTypeNode, this function returns the QML full base name. | |
virtual QString | logicalModuleName () const |
If this is a CollectionNode, this function returns the logical module name. | |
virtual QString | logicalModuleVersion () const |
If this is a CollectionNode, this function returns the logical module version number. | |
virtual QString | logicalModuleIdentifier () const |
If this is a CollectionNode, this function returns the logical module identifier. | |
virtual void | setLogicalModuleInfo (const QStringList &) |
If this node is a CollectionNode, this function splits arg on the blank character to get a logical module name and version number. | |
virtual CollectionNode * | logicalModule () const |
If this is a QmlTypeNode, a pointer to its QML module is returned, which is a pointer to a CollectionNode. | |
virtual void | setQmlModule (CollectionNode *) |
If this is a QmlTypeNode, this function sets the QML type's QML module pointer to the CollectionNode t. | |
virtual ClassNode * | classNode () |
If this is a QmlTypeNode, this function returns the pointer to the C++ ClassNode that this QML type represents. | |
virtual void | setClassNode (ClassNode *) |
If this is a QmlTypeNode, this function sets the C++ class node to cn. | |
QString | fullDocumentName () const |
Construct the full document name for this node and return it. | |
QString | qualifyCppName () |
Returns the CPP node's qualified name by prepending the namespaces name + "::" if there isw a namespace. | |
QString | qualifyQmlName () |
Returns the QML node's qualified name by prepending the logical module name. | |
QString | qualifyWithParentName () |
Return the name of this node qualified with the parent name and "::" if there is a parent name. | |
Static Public Member Functions | |
static iterator | get (_Tp data) |
static iterator | begin_nodes () |
static iterator | end_nodes () |
static Repository & | repository () |
static Genus | getGenus (NodeType t) |
Determines the appropriate Genus value for the NodeType value t and returns that Genus value. | |
static FlagValue | toFlagValue (bool b) |
Converts the boolean value b to an enum representation of the boolean type, which includes an enum value for the {default value} of the item, i.e. | |
static bool | fromFlagValue (FlagValue fv, bool defaultValue) |
Converts the enum fv back to a boolean value. | |
static QString | nodeTypeString (NodeType t) |
Returns the node type t as a string for use as an attribute value in XML or HTML. | |
static bool | nodeNameLessThan (const Node *first, const Node *second) |
Returns true if the node n1 is less than node n2. | |
static bool | nodeSortKeyOrNameLessThan (const Node *n1, const Node *n2) |
Returns true if node n1 is less than node n2 when comparing the sort keys, defined with. | |
Public Attributes | |
bool | root |
Returns a pointer to the root of the Tree this node is in. | |
int | dfn |
_Tp | data |
std::list< iterator > | outs |
Protected Member Functions | |
Node () | |
Node (_Tp d) | |
Node (NodeType type, Aggregate *parent, QString name) | |
Construct a node with the given type and having the given parent and name. | |
The Node class is the base class for all the nodes in QDoc's parse tree.
Class Node is the base class of all the node subclasses. There is a subclass of Node for each type of entity that QDoc can document. The types of entities that QDoc can document are listed in the enum type NodeType.
After ClangCodeParser has parsed all the header files to build its precompiled header, it then visits the clang Abstract Syntax Tree (AST). For each node in the AST that it determines is in the public API and must be documented, it creates an instance of one of the Node subclasses and adds it to the QDoc Tree.
Each instance of a sublass of Node has a parent pointer to link it into the Tree. The parent pointer is obtained by calling \l {parent()}, which returns a pointer to an instance of the Node subclass, Aggregate, which is never instantiated directly, but as the base class for certain subclasses of Node that can have children. For example, ClassNode and QmlTypeNode can have children, so they both inherit Aggregate, while PropertyNode and QmlPropertyNode can not have children, so they both inherit Node.
std::list<iterator>::iterator Node< _Tp >::edge_iterator |
Repository::iterator Node< _Tp >::iterator |
enum Node::FlagValue |
A value used in PropertyNode and QmlPropertyNode that can be -1, 0, or +1.
Properties and QML properties have flags, which can be 0 or 1, false or true, or not set. FlagValueDefault is the not set value. In other words, if a flag is set to FlagValueDefault, the meaning is the flag has not been set.
\value FlagValueDefault -1 Not set. \value FlagValueFalse 0 False. \value FlagValueTrue 1 True.
Enumerator | |
---|---|
FlagValueDefault | |
FlagValueFalse | |
FlagValueTrue |
enum Node::Genus : unsigned char |
An unsigned char value that specifies whether the Node represents a C++ element, a QML element, or a text document.
The Genus values are also passed to search functions to specify the Genus of Tree Node that can satisfy the search.
\value DontCare The Genus is not specified. Used when calling Tree search functions to indicate the search can accept any Genus of Node. \value CPP The Node represents a C++ element. \value QML The Node represents a QML element. \value DOC The Node represents a text document.
Enumerator | |
---|---|
DontCare | |
CPP | |
QML | |
DOC | |
API |
enum Node::LinkType : unsigned char |
enum Node::NodeType : unsigned char |
An unsigned char value that identifies an object as a particular subclass of Node.
\value NoType The node type has not been set yet. \value Namespace The Node subclass is NamespaceNode, which represents a C++ namespace. \value Class The Node subclass is ClassNode, which represents a C++ class. \value Struct The Node subclass is ClassNode, which represents a C struct. \value Union The Node subclass is ClassNode, which represents a C union (currently no known uses). \value HeaderFile The Node subclass is HeaderNode, which represents a header file. \value Page The Node subclass is PageNode, which represents a text page from a .qdoc file. \value Enum The Node subclass is EnumNode, which represents an enum type or enum class. \value Example The Node subclass is ExampleNode, which represents an example subdirectory. \value ExternalPage The Node subclass is ExternalPageNode, which is for linking to an external page. \value Function The Node subclass is FunctionNode, which can represent C++, and QML functions. \value Typedef The Node subclass is TypedefNode, which represents a C++ typedef. \value Property The Node subclass is PropertyNode, which represents a use of Q_Property. \value Variable The Node subclass is VariableNode, which represents a global variable or class data member. \value Group The Node subclass is CollectionNode, which represents a group of documents. \value Module The Node subclass is CollectionNode, which represents a C++ module. \value QmlType The Node subclass is QmlTypeNode, which represents a QML type. \value QmlModule The Node subclass is CollectionNode, which represents a QML module. \value QmlProperty The Node subclass is QmlPropertyNode, which represents a property in a QML type. \value QmlBasicType The Node subclass is QmlTypeNode, which represents a value type like int, etc. \value SharedComment The Node subclass is SharedCommentNode, which represents a collection of nodes that share the same documentation comment. \omitvalue Collection \value Proxy The Node subclass is ProxyNode, which represents one or more entities that are documented in the current module but which actually reside in a different module. \omitvalue LastType
enum Node::SignatureOption : unsigned char |
enum Node::Status : unsigned char |
An unsigned char that specifies the status of the documentation element in the documentation set.
\value Deprecated The element has been deprecated. \value Preliminary The element is new; the documentation is preliminary. \value Active The element is current. \value Internal The element is for internal use only, not to be published. \value DontDocument The element is not to be documented.
Enumerator | |
---|---|
Deprecated | |
Preliminary | |
Active | |
Internal | |
DontDocument |
enum Node::ThreadSafeness : unsigned char |
An unsigned char that specifies the degree of thread-safeness of the element.
\value UnspecifiedSafeness The thread-safeness is not specified. \value NonReentrant The element is not reentrant. \value Reentrant The element is reentrant. \value ThreadSafe The element is threadsafe.
Enumerator | |
---|---|
UnspecifiedSafeness | |
NonReentrant | |
Reentrant | |
ThreadSafe |
Definition at line 183 of file lalr.h.
References Node< _Tp >::data, Node< _Tp >::dfn, and Node< _Tp >::root.
|
protected |
Construct a node with the given type and having the given parent and name.
The new node is added to the parent's child list.
Definition at line 584 of file node.cpp.
References Node< _Tp >::Node(), Aggregate::addChild(), Node< _Tp >::getGenus(), and Node< _Tp >::setGenus().
Referenced by Node< _Tp >::Node().
Returns the node's Access setting, which can be Public
, Protected
, or Private
.
Definition at line 264 of file node.h.
Referenced by CodeMarker::extraSynopsis(), DocBookGenerator::generateDocBookSynopsis(), DocBookGenerator::generateSortedNames(), Node< _Tp >::nodeNameLessThan(), CppCodeParser::processTopicCommand(), and Generator::supplementAlsoList().
In a CollectionNode, this function adds node to the collection node's members list.
It does nothing if this node is not a CollectionNode.
Reimplemented in CollectionNode.
|
inline |
Definition at line 162 of file lalr.h.
References Node< _Tp >::repository().
If this is a QmlTypeNode, this function returns the pointer to the C++ ClassNode that this QML type represents.
Otherwise the nullptr
is returned.
Reimplemented in QmlTypeNode.
When reimplemented in a subclass, this function creates a clone of this node on the heap and makes the clone a child of parent.
A pointer to the clone is returned.
Here in the base class, this function does nothing and returns nullptr.
Reimplemented in EnumNode, FunctionNode, SharedCommentNode, TypeAliasNode, TypedefNode, and VariableNode.
|
inlinenodiscardvirtual |
Reimplemented in CollectionNode.
Reimplemented in CollectionNode.
|
inlinenodiscardvirtual |
Reimplemented in CollectionNode.
|
inlinenodiscard |
Definition at line 217 of file node.h.
Referenced by Generator::generateComparisonCategory().
Returns the Location where this node's declaration was seen.
Normally the declaration location is in an include file. The declaration location is used in qdoc error/warning messages about the declaration.
Definition at line 265 of file node.h.
Referenced by ClassNode::docMustBeGenerated().
Returns the Location where this node's dedefinition was seen.
Normally the definition location is in a .cpp file. The definition location is used in qdoc error/warning messages when the error is discovered at the location of the definition, although the way to correct the problem often requires changing the declaration.
Returns a reference to the node's Doc data member.
Definition at line 271 of file node.h.
Referenced by WebXMLGenerator::addAtomElements(), WebXMLGenerator::append(), checkModuleInclusion(), formatStatus(), DocBookGenerator::generateAtom(), HtmlGenerator::generateAtom(), DocBookGenerator::generateBody(), Generator::generateBody(), DocBookGenerator::generateCollectionNode(), HtmlGenerator::generateCollectionNode(), Generator::generateComparisonList(), DocBookGenerator::generateCppReferencePage(), HtmlGenerator::generateCppReferencePage(), DocBookGenerator::generateDocBookSynopsis(), Generator::generateEnumValuesForQmlProperty(), DocBookGenerator::generateExampleFilePage(), HtmlGenerator::generateExampleFilePage(), WebXMLGenerator::generateExampleFilePage(), DocBookGenerator::generateHeader(), Generator::generateLinkToExample(), DocBookGenerator::generateProxyPage(), HtmlGenerator::generateProxyPage(), DocBookGenerator::generateSortedNames(), EnumNode::itemAccess(), XmlGenerator::linkForNode(), Node< _Tp >::nodeSortKeyOrNameLessThan(), nodeToSynopsisTag(), CppCodeParser::parseMacroArg(), XmlGenerator::refForNode(), ManifestWriter::retrieveExampleInstallationPath(), tagsAddedWithMetaCommand(), warnAboutUnusedAttributes(), and writeDescription().
|
inlinenodiscardvirtual |
This function is called to perform a test to decide if the node must have documentation generated.
In the Node base class, it always returns false
.
In the ProxyNode class it always returns true
. There aren't many proxy nodes, but when one appears, it must generate documentation. In the overrides in NamespaceNode and ClassNode, a meaningful test is performed to decide if documentation must be generated.
Reimplemented in ClassNode, HeaderNode, NamespaceNode, and ProxyNode.
Definition at line 228 of file node.h.
Referenced by DocBookGenerator::generateDocumentation(), and Generator::generateDocumentation().
If this node is a QmlPropertyNode or a FunctionNode, this function returns the name of the parent node.
Otherwise it returns an empty string.
Reimplemented in FunctionNode, and QmlPropertyNode.
|
inline |
Definition at line 165 of file lalr.h.
References Node< _Tp >::repository().
Returns the node's file name base string, which is built once, when Generator::fileBase() is called and stored in the Node.
Converts the enum fv back to a boolean value.
If fv is neither the true enum value nor the false enum value, the boolean value returned is defaultValue.
Definition at line 748 of file node.cpp.
References Node< _Tp >::FlagValueFalse, and Node< _Tp >::FlagValueTrue.
Referenced by QmlPropertyNode::isReadOnly(), QmlPropertyNode::isReadOnly(), QmlPropertyNode::isRequired(), PropertyNode::isStored(), QmlPropertyNode::isStored(), and PropertyNode::isWritable().
Construct the full document name for this node and return it.
Definition at line 961 of file node.cpp.
References Node< _Tp >::isQmlType(), Node< _Tp >::isRelatedNonmember(), Node< _Tp >::isTextPageNode(), and Node< _Tp >::parent().
QString Node< _Tp >::fullName | ( | const Node< _Tp > * | relative = nullptr | ) | const |
Constructs and returns this node's full name.
The full name is often just the title(). When it is not the title, it is the plainFullName().
Returns a string that can be used as the full title for the documentation of this node.
In this base class, the name() is returned. In a PageNode, title() is returned. In a HeaderNode, if the title() is empty, the name() is returned. If the title() is not empty then name-title is returned. In a CollectionNode, the title() is returned.
Reimplemented in CollectionNode, HeaderNode, and PageNode.
Returns this node's Genus.
Definition at line 124 of file node.h.
Referenced by SharedCommentNode::append(), Aggregate::findChildNode(), DocBookGenerator::generateCollectionNode(), HtmlGenerator::generateCollectionNode(), TargetRec::genus(), QDocDatabase::getModuleNode(), Node< _Tp >::isCppNode(), Node< _Tp >::isFunction(), Node< _Tp >::isQmlNode(), Generator::outputPrefix(), and Generator::outputSuffix().
|
static |
Definition at line 188 of file lalr.h.
References Node< _Tp >::repository().
|
static |
Determines the appropriate Genus value for the NodeType value t and returns that Genus value.
Note that this function is called in the Node() constructor. It always returns Node::CPP when t is Node::Function, which means the FunctionNode() constructor must determine its own Genus value separately, because class FunctionNode is a subclass of Node.
Definition at line 607 of file node.cpp.
References Node< _Tp >::Class, Node< _Tp >::Collection, Node< _Tp >::CPP, Node< _Tp >::DOC, Node< _Tp >::DontCare, Node< _Tp >::Enum, Node< _Tp >::Example, Node< _Tp >::ExternalPage, Node< _Tp >::Function, Node< _Tp >::Group, Node< _Tp >::HeaderFile, Node< _Tp >::Module, Node< _Tp >::Namespace, Node< _Tp >::Page, Node< _Tp >::Property, Node< _Tp >::Proxy, Node< _Tp >::QML, Node< _Tp >::QmlModule, Node< _Tp >::QmlProperty, Node< _Tp >::QmlType, Node< _Tp >::QmlValueType, Node< _Tp >::SharedComment, Node< _Tp >::Struct, Node< _Tp >::TypeAlias, Node< _Tp >::Typedef, Node< _Tp >::Union, and Node< _Tp >::Variable.
Referenced by Node< _Tp >::Node().
|
inlinenodiscard |
|
inlinenodiscardvirtual |
Returns true
if this is a CollectionNode and its members list contains class nodes.
Otherwise it returns false
.
Reimplemented in CollectionNode.
|
nodiscard |
Returns true
if this node is documented, or it represents a documented node read from the index ('had doc'), or this node is sharing a non-empty doc with other nodes.
Definition at line 906 of file node.cpp.
References Node< _Tp >::hasDoc(), and Doc::isEmpty().
Referenced by Sections::buildStdRefPageSections(), ClassNode::docMustBeGenerated(), DocBookGenerator::generateBody(), Generator::generateBody(), HtmlGenerator::generateCppReferencePage(), DocBookGenerator::generateHeader(), Node< _Tp >::hasDoc(), FunctionNode::isIgnored(), Node< _Tp >::isInAPI(), nodeToTestForDistribution(), and Aggregate::normalizeOverloads().
|
inlinenodiscard |
Returns true if the node's file name base has been set.
Definition at line 200 of file node.h.
Referenced by Generator::fileBase().
|
inlinenodiscardvirtual |
Returns true
if this is a CollectionNode and its members list contains namespace nodes.
Otherwise it returns false
.
Reimplemented in CollectionNode.
|
inlinenodiscardvirtual |
If this node is a FunctionNode, the function returns true
if the function has the tag t.
Otherwise the function returns false
. I don't know what the tag is used for.
Reimplemented in FunctionNode.
|
nodiscard |
If this node has a parent, the parent's thread safeness value is returned.
Otherwise, this node's thread safeness value is returned. Why?
Definition at line 838 of file node.cpp.
References Node< _Tp >::inheritedThreadSafeness(), and Node< _Tp >::UnspecifiedSafeness.
Referenced by Node< _Tp >::inheritedThreadSafeness(), and Node< _Tp >::threadSafeness().
std::pair< typename std::list< typename Node< _Tp >::iterator >::iterator, bool > Node< _Tp >::insertEdge | ( | iterator | other | ) | const |
|
inlinenodiscardvirtual |
Returns true if the ClassNode or QmlTypeNode is marked abstract.
Reimplemented in ClassNode, and QmlTypeNode.
Definition at line 169 of file node.h.
Referenced by Sections::buildStdQmlTypeRefPageSections(), Section::insert(), Node< _Tp >::isInternal(), and XmlGenerator::linkForNode().
|
inlinenodiscard |
Returns true if this node's status is Active
.
Definition at line 128 of file node.h.
References Node< _Tp >::Active.
|
inlinenodiscardvirtual |
Returns true if this node is an aggregate, which means it inherits Aggregate and can therefore have children.
Reimplemented in Aggregate.
Definition at line 170 of file node.h.
Referenced by HtmlGenerator::fileBase(), findNodeForCursor(), DocBookGenerator::generateCppReferencePage(), DocBookGenerator::generateDocBookSynopsis(), DocBookGenerator::generateDocumentation(), Generator::generateDocumentation(), WebXMLGenerator::generateDocumentation(), DocBookGenerator::generateGroupReferenceText(), DocBookGenerator::generateStatus(), Generator::generateStatus(), DocBookGenerator::generateThreadSafeness(), Generator::generateThreadSafeness(), PageNode::isTextPageNode(), CppCodeParser::processMetaCommand(), and CppCodeParser::processTopicCommand().
|
inlinenodiscardvirtual |
Returns true if this QML property is marked as an alias.
Reimplemented in QmlPropertyNode.
|
inlinenodiscardvirtual |
Returns true if the QML property or QML method node is marked as attached.
Reimplemented in FunctionNode, and QmlPropertyNode.
Definition at line 176 of file node.h.
Referenced by Generator::fullDocumentLocation(), and XmlGenerator::refForNode().
|
inlinenodiscard |
Returns true if the node type is Class
.
Definition at line 129 of file node.h.
References Node< _Tp >::Class.
Referenced by DocBookGenerator::generateCppReferencePage(), DocBookGenerator::generateDocBookSynopsis(), and nodeToSynopsisTag().
|
inlinenodiscardvirtual |
Returns true if this is an instance of ClassNode.
Reimplemented in ClassNode.
Definition at line 177 of file node.h.
Referenced by Sections::Sections(), WebXMLGenerator::append(), findNodeForCursor(), Generator::fullDocumentLocation(), DocBookGenerator::generateAtom(), HtmlGenerator::generateAtom(), DocBookGenerator::generateCollectionNode(), HtmlGenerator::generateCollectionNode(), HtmlGenerator::generateCppReferencePage(), DocBookGenerator::generateDocumentation(), Generator::generateDocumentation(), WebXMLGenerator::generateDocumentation(), DocBookGenerator::generateRequisites(), CollectionNode::hasClasses(), CollectionNode::hasNamespaces(), Sections::hasObsoleteMembers(), Section::insert(), and sortName().
|
inlinenodiscardvirtual |
Returns true if this is an instance of CollectionNode.
Reimplemented in CollectionNode.
Definition at line 178 of file node.h.
Referenced by Generator::fileBase(), Generator::fullDocumentLocation(), DocBookGenerator::generateDocBookSynopsis(), DocBookGenerator::generateDocumentation(), Generator::generateDocumentation(), WebXMLGenerator::generateDocumentation(), XmlGenerator::hasBrief(), Generator::outputPrefix(), and CppCodeParser::processMetaCommand().
|
inlinenodiscard |
Returns true if this node's Genus value is CPP
.
Definition at line 130 of file node.h.
References Node< _Tp >::CPP, and Node< _Tp >::genus().
Referenced by FnMatchError::isParentInternal().
|
inlinenodiscardvirtual |
Returns true if the QML property node is marked as default.
Reimplemented in FunctionNode, and QmlPropertyNode.
|
inlinenodiscardvirtual |
Returns true if this node's status is Deprecated
.
Reimplemented in FunctionNode.
Definition at line 168 of file node.h.
References Node< _Tp >::Deprecated.
Referenced by WebXMLGenerator::addAtomElements(), HtmlGenerator::fileBase(), Generator::fullDocumentLocation(), DocBookGenerator::generateAtom(), HtmlGenerator::generateAtom(), Section::insert(), FunctionNode::isDeprecated(), and nodeStatusAsString().
|
inlinenodiscard |
Returns true if this node's status is DontDocument
.
Definition at line 131 of file node.h.
References Node< _Tp >::DontDocument.
Referenced by ClassNode::docMustBeGenerated(), Node< _Tp >::isInAPI(), and ClassNode::removePrivateAndInternalBases().
|
inlinenodiscard |
Returns true if the node type is Enum
.
Definition at line 132 of file node.h.
References Node< _Tp >::Enum.
Referenced by WebXMLGenerator::addAtomElements(), Aggregate::addChild(), Aggregate::adoptChild(), findNodeForCursor(), HtmlGenerator::generateAtom(), Generator::generateBody(), DocBookGenerator::generateDocBookSynopsis(), Section::insert(), CppCodeMarker::markedUpEnumValue(), and nodeToSynopsisTag().
|
inlinenodiscard |
Returns true if the node type is Example
.
Definition at line 133 of file node.h.
References Node< _Tp >::Example.
Referenced by WebXMLGenerator::append(), Generator::fileBase(), DocBookGenerator::generateExampleFilePage(), HtmlGenerator::generatePageNode(), Generator::generateRequiredLinks(), CppCodeParser::processMetaCommand(), and XmlGenerator::setImageFileName().
|
inlinenodiscard |
Returns true if the node type is ExternalPage
.
Definition at line 134 of file node.h.
References Node< _Tp >::ExternalPage.
Referenced by DocBookGenerator::generateDocumentation(), Generator::generateDocumentation(), and WebXMLGenerator::generateDocumentation().
|
inlinenodiscardvirtual |
Returns true if this Node is an Aggregate but not a ProxyNode.
Reimplemented in ClassNode, HeaderNode, NamespaceNode, and QmlTypeNode.
Returns true if this is a FunctionNode and its Genus is set to g.
Definition at line 135 of file node.h.
References Node< _Tp >::DontCare, Node< _Tp >::Function, and Node< _Tp >::genus().
Referenced by Aggregate::addChild(), Aggregate::adoptChild(), findNodeForCursor(), DocBookGenerator::generateAddendum(), Generator::generateAddendum(), DocBookGenerator::generateBody(), Generator::generateBody(), DocBookGenerator::generateDocBookSynopsis(), Generator::getOverloadedSignalCode(), Section::insert(), CppCodeMarker::markedUpName(), QmlCodeMarker::markedUpName(), CppCodeMarker::markedUpQmlItem(), Node< _Tp >::nodeNameLessThan(), nodeToSynopsisTag(), Node< _Tp >::nodeTypeString(), CppCodeParser::processMetaCommand(), sortName(), Generator::supplementAlsoList(), and CodeMarker::taggedQmlNode().
|
inlinenodiscard |
Returns true if the node type is Collection
.
Definition at line 166 of file node.h.
References Node< _Tp >::Collection.
Referenced by DocBookGenerator::generateDocumentation(), and Generator::generateDocumentation().
|
inlinenodiscard |
Returns true if the node type is Group
.
Definition at line 139 of file node.h.
References Node< _Tp >::Group.
Referenced by WebXMLGenerator::append(), DocBookGenerator::generateCollectionNode(), DocBookGenerator::generateDocBookSynopsis(), and WebXMLGenerator::generateIndexSections().
|
inlinenodiscard |
Returns true if the node type is HeaderFile
.
Definition at line 140 of file node.h.
References Node< _Tp >::HeaderFile.
Referenced by DocBookGenerator::generateCppReferencePage(), HtmlGenerator::generateCppReferencePage(), DocBookGenerator::generateDocumentation(), Generator::generateDocumentation(), WebXMLGenerator::generateDocumentation(), CppCodeMarker::markedUpEnumValue(), CppCodeMarker::markedUpSynopsis(), and Node< _Tp >::plainFullName().
|
inlinenodiscard |
Definition at line 272 of file node.h.
References Node< _Tp >::hasDoc(), Node< _Tp >::isDontDocument(), Node< _Tp >::isInternal(), and Node< _Tp >::isPrivate().
Referenced by checkModuleInclusion(), HeaderNode::docMustBeGenerated(), NamespaceNode::docMustBeGenerated(), CollectionNode::hasClasses(), HeaderNode::hasDocumentedChildren(), NamespaceNode::hasDocumentedChildren(), and CollectionNode::hasNamespaces().
|
inlinenodiscard |
Returns true if this node was created from something in an index file.
Definition at line 141 of file node.h.
Referenced by Aggregate::addChild(), DocBookGenerator::generateDocumentation(), Generator::generateDocumentation(), and WebXMLGenerator::generateDocumentation().
|
nodiscardvirtual |
Returns true
if the node's status is Internal
, or if its parent is a class with Internal
status.
Reimplemented in QmlTypeNode.
Definition at line 849 of file node.cpp.
References Node< _Tp >::Internal, Node< _Tp >::isAbstract(), Node< _Tp >::parent(), and Node< _Tp >::status().
Referenced by QmlTypeNode::addInheritedBy(), ClassNode::docMustBeGenerated(), Aggregate::findFunctionChild(), DocBookGenerator::generateDocumentation(), Generator::generateDocumentation(), WebXMLGenerator::generateDocumentation(), DocBookGenerator::generateQmlRequisites(), Section::insert(), Node< _Tp >::isInAPI(), keep(), XmlGenerator::linkForNode(), Aggregate::normalizeOverloads(), CppCodeParser::processMetaCommand(), and ClassNode::removePrivateAndInternalBases().
|
inlinenodiscardvirtual |
returns true if either FunctionNode::isMacroWithParams() or FunctionNode::isMacroWithoutParams() returns true.
Reimplemented in FunctionNode.
Definition at line 181 of file node.h.
Referenced by CppCodeMarker::markedUpName(), and Generator::supplementAlsoList().
|
inlinenodiscardvirtual |
Returns true if the FunctionNode is marked as a reimplemented function.
That means it is virtual in the base class and it is reimplemented in the subclass.
Reimplemented in FunctionNode.
Definition at line 184 of file node.h.
Referenced by DocBookGenerator::generateBody(), and Generator::generateBody().
|
inlinenodiscard |
Returns true if the node type is Module
.
Definition at line 142 of file node.h.
References Node< _Tp >::Module.
Referenced by WebXMLGenerator::append(), Generator::fileBase(), DocBookGenerator::generateCollectionNode(), HtmlGenerator::generateCollectionNode(), DocBookGenerator::generateDocBookSynopsis(), DocBookGenerator::generateStatus(), Generator::generateStatus(), and CppCodeParser::processMetaCommand().
|
inlinenodiscard |
Returns true if the node type is Namespace
.
Definition at line 143 of file node.h.
References Node< _Tp >::Namespace.
Referenced by Sections::Sections(), Sections::buildStdRefPageSections(), findNodeForCursor(), Generator::fullDocumentLocation(), DocBookGenerator::generateCppReferencePage(), HtmlGenerator::generateCppReferencePage(), DocBookGenerator::generateDocBookSynopsis(), DocBookGenerator::generateDocumentation(), Generator::generateDocumentation(), WebXMLGenerator::generateDocumentation(), DocBookGenerator::generateHeader(), DocBookGenerator::generateRequisites(), Section::insert(), nodeToSynopsisTag(), and QmlDocVisitor::visit().
|
inlinenodiscard |
Returns true if the node type is Page
.
Definition at line 144 of file node.h.
References Node< _Tp >::Page.
|
inlinenodiscardvirtual |
Returns true if this node represents something that generates a documentation page.
In other words, if this Node's subclass inherits PageNode, then this function will return true.
Reimplemented in PageNode.
Definition at line 182 of file node.h.
Referenced by Generator::beginSubPage(), Generator::fileBase(), QDocDatabase::findNodeForAtom(), DocBookGenerator::generateDocBookSynopsis(), XmlGenerator::hasBrief(), XmlGenerator::linkForNode(), Node< _Tp >::nodeNameLessThan(), nodeToSynopsisTag(), Generator::outputPrefix(), and Generator::outputSuffix().
|
inlinenodiscard |
Returns true if this node's status is Preliminary
.
Definition at line 145 of file node.h.
References Node< _Tp >::Preliminary.
|
inlinenodiscard |
Returns true if this node's access is Private
.
Definition at line 146 of file node.h.
Referenced by Sections::buildStdCppClassRefPageSections(), ClassNode::docMustBeGenerated(), Section::insert(), Section::insertReimplementedMember(), Node< _Tp >::isInAPI(), keep(), XmlGenerator::linkForNode(), and ClassNode::removePrivateAndInternalBases().
|
inlinenodiscard |
Returns true if the node type is Property
.
Definition at line 147 of file node.h.
References Node< _Tp >::Property.
Referenced by WebXMLGenerator::addAtomElements(), Sections::buildStdCppClassRefPageSections(), DocBookGenerator::generateBody(), Generator::generateBody(), DocBookGenerator::generateDocBookSynopsis(), CppCodeMarker::markedUpSynopsis(), nodeToSynopsisTag(), and sortName().
|
inlinenodiscardvirtual |
Returns true if the node is a SharedCommentNode for documenting multiple C++ properties or multiple QML properties.
Reimplemented in SharedCommentNode.
Definition at line 185 of file node.h.
Referenced by Generator::fullDocumentLocation(), XmlGenerator::linkForNode(), and XmlGenerator::refForNode().
|
inlinenodiscard |
|
inlinenodiscard |
Returns true if the node type is Proxy
.
Definition at line 148 of file node.h.
References Node< _Tp >::Proxy.
Referenced by Generator::fileBase(), DocBookGenerator::generateDocumentation(), Generator::generateDocumentation(), DocBookGenerator::generateProxyPage(), HtmlGenerator::generateProxyPage(), and CppCodeMarker::markedUpSynopsis().
|
inlinenodiscard |
|
inlinenodiscard |
Returns true if the node type is QmlBasicType
.
Definition at line 151 of file node.h.
References Node< _Tp >::QmlValueType.
Referenced by DocBookGenerator::generateQmlTypePage(), and HtmlGenerator::generateQmlTypePage().
|
inlinenodiscard |
Returns true if the node type is QmlModule
.
Definition at line 152 of file node.h.
References Node< _Tp >::QmlModule.
Referenced by Generator::fileBase(), DocBookGenerator::generateCollectionNode(), DocBookGenerator::generateDocBookSynopsis(), DocBookGenerator::generateStatus(), Generator::generateStatus(), and CppCodeParser::processMetaCommand().
|
inlinenodiscard |
Returns true if this node's Genus value is QML
.
Definition at line 153 of file node.h.
References Node< _Tp >::genus(), and Node< _Tp >::QML.
Referenced by Generator::generateStatus(), and CppCodeMarker::markedUpSynopsis().
|
inlinenodiscard |
Returns true if the node type is QmlProperty
.
Definition at line 154 of file node.h.
References Node< _Tp >::QmlProperty.
Referenced by DocBookGenerator::generateDocBookSynopsis(), Generator::generateEnumValuesForQmlProperty(), CppCodeMarker::markedUpEnumValue(), CppCodeMarker::markedUpQmlItem(), nodeToSynopsisTag(), CppCodeParser::processMetaCommand(), and CodeMarker::taggedQmlNode().
|
inlinenodiscard |
Returns true if the node type is QmlType
or QmlValueType
.
Definition at line 155 of file node.h.
References Node< _Tp >::QmlType, and Node< _Tp >::QmlValueType.
Referenced by Generator::fileBase(), Generator::fullDocumentLocation(), Node< _Tp >::fullDocumentName(), DocBookGenerator::generateDocBookSynopsis(), DocBookGenerator::generateDocumentation(), Generator::generateDocumentation(), XmlGenerator::hasBrief(), Sections::hasObsoleteMembers(), Section::insert(), XmlGenerator::linkForNode(), nodeToSynopsisTag(), CppCodeParser::processMetaCommand(), QmlDocVisitor::visit(), and QmlDocVisitor::visit().
|
inlinenodiscardvirtual |
Returns true if this node is something you can relate things to with the relates command.
NamespaceNode, ClassNode, HeaderNode, and ProxyNode are relatable types.
Reimplemented in ClassNode, HeaderNode, NamespaceNode, and ProxyNode.
|
inlinenodiscard |
Returns true if this is a related nonmember of something.
Definition at line 156 of file node.h.
Referenced by Sections::buildStdCppClassRefPageSections(), Node< _Tp >::fullDocumentName(), Section::insert(), Section::insertReimplementedMember(), and CppCodeMarker::markedUpSynopsis().
|
inlinenodiscard |
Returns true if the node type is SharedComment
.
Definition at line 158 of file node.h.
References Node< _Tp >::SharedComment.
Referenced by Aggregate::adoptChild(), Sections::buildStdCppClassRefPageSections(), DocBookGenerator::generateDocBookSynopsis(), Generator::generateNoexceptNote(), nodeToTestForDistribution(), CppCodeParser::processMetaCommand(), and CppCodeParser::processMetaCommands().
|
inlinenodiscard |
This function returns true
if the node is sharing a comment with other nodes.
For example, multiple functions can be documented with a single qdoc comment by listing the {\fn}
signatures for all the functions in the single qdoc comment.
Definition at line 285 of file node.h.
Referenced by Sections::buildStdRefPageSections(), DocBookGenerator::generateBody(), and Generator::generateBody().
|
inlinenodiscardvirtual |
Returns true if the FunctionNode represents a static function.
Reimplemented in FunctionNode, and VariableNode.
|
inlinenodiscard |
Returns true if the node type is Struct
.
Definition at line 157 of file node.h.
References Node< _Tp >::Struct.
|
inlinenodiscardvirtual |
Returns true if the node is a PageNode but not an Aggregate.
Reimplemented in PageNode.
Definition at line 187 of file node.h.
Referenced by XmlGenerator::anchorForNode(), WebXMLGenerator::append(), Generator::fileBase(), Generator::fullDocumentLocation(), Node< _Tp >::fullDocumentName(), DocBookGenerator::generateDocumentation(), Generator::generateDocumentation(), WebXMLGenerator::generateDocumentation(), and CppCodeParser::processMetaCommand().
|
inlinenodiscard |
Returns true if the node type is Typedef
.
Definition at line 159 of file node.h.
References Node< _Tp >::TypeAlias.
Referenced by CppCodeParser::processTopicCommand().
|
inlinenodiscard |
Returns true if the node type is Typedef
.
Definition at line 160 of file node.h.
References Node< _Tp >::TypeAlias, and Node< _Tp >::Typedef.
Referenced by findNodeForCursor(), DocBookGenerator::generateDocBookSynopsis(), Section::insert(), and nodeToSynopsisTag().
|
inlinenodiscard |
Returns true if the node type is Union
.
Definition at line 164 of file node.h.
References Node< _Tp >::Union.
|
inlinenodiscard |
Returns true if the node type is Variable
.
Definition at line 165 of file node.h.
References Node< _Tp >::Variable.
Referenced by WebXMLGenerator::addAtomElements(), findNodeForCursor(), DocBookGenerator::generateDocBookSynopsis(), Section::insert(), nodeToSynopsisTag(), and sortName().
|
nodiscardvirtual |
Returns true
if the node is a class node or a QML type node that is marked as being a wrapper class or wrapper QML type, or if it is a member of a wrapper class or type.
Reimplemented in ClassNode, and QmlTypeNode.
Definition at line 953 of file node.cpp.
References Node< _Tp >::isWrapper().
Referenced by Generator::generateBody(), and Node< _Tp >::isWrapper().
|
inlinenodiscard |
If this node's definition location is empty, this function returns this node's declaration location.
Otherwise it returns the definition location.
Definition at line 267 of file node.h.
Referenced by WebXMLGenerator::addAtomElements(), Generator::addImageToCopy(), DocBookGenerator::generateAtom(), HtmlGenerator::generateAtom(), Generator::generateBody(), HtmlGenerator::generateCppReferencePage(), Generator::generateDocumentation(), WebXMLGenerator::generateIndexSections(), Generator::generateOverloadedSignal(), Node< _Tp >::nodeNameLessThan(), Generator::openSubPageFile(), and CppCodeParser::processTopicCommand().
|
inlinenodiscardvirtual |
If this is a QmlTypeNode, a pointer to its QML module is returned, which is a pointer to a CollectionNode.
Otherwise the nullptr
is returned.
Reimplemented in QmlTypeNode.
|
inlinenodiscardvirtual |
If this is a CollectionNode, this function returns the logical module identifier.
Otherwise it returns an empty string.
Reimplemented in CollectionNode, FunctionNode, QmlPropertyNode, and QmlTypeNode.
|
inlinenodiscardvirtual |
If this is a CollectionNode, this function returns the logical module name.
Otherwise it returns an empty string.
Reimplemented in CollectionNode, FunctionNode, QmlPropertyNode, and QmlTypeNode.
|
inlinenodiscardvirtual |
If this is a CollectionNode, this function returns the logical module version number.
Otherwise it returns an empty string.
Reimplemented in CollectionNode, FunctionNode, QmlPropertyNode, and QmlTypeNode.
If this node is a QmlPropertyNode, it is marked as the default property.
Otherwise the function does nothing.
Reimplemented in QmlPropertyNode.
Definition at line 241 of file node.h.
Referenced by CppCodeParser::processMetaCommand().
Sets the node's access to Private and its status to Internal.
Definition at line 236 of file node.h.
References Node< _Tp >::Internal, Node< _Tp >::setAccess(), and Node< _Tp >::setStatus().
Referenced by CppCodeParser::processMetaCommand().
If this node is a QmlPropertyNode, then the property's read-only flag is set to flag.
Reimplemented in QmlPropertyNode.
Definition at line 242 of file node.h.
Referenced by CppCodeParser::processMetaCommand().
Returns the node's name data member.
Definition at line 245 of file node.h.
Referenced by testing.tools.encode_pdf_filter._PdfStream::RegisterByName().
|
staticnodiscard |
Returns true
if the node n1 is less than node n2.
The comparison is performed by comparing properties of the nodes in order of increasing complexity.
Definition at line 57 of file node.cpp.
References Node< _Tp >::access(), FunctionNode::isConst(), Node< _Tp >::isFunction(), Node< _Tp >::isPageNode(), Node< _Tp >::location(), Node< _Tp >::nodeType(), and Node< _Tp >::SignatureReturnType.
Referenced by DocBookGenerator::generateAddendum(), Generator::generateAddendum(), DocBookGenerator::generateDocBookSynopsis(), DocBookGenerator::generateRequisites(), Node< _Tp >::nodeSortKeyOrNameLessThan(), and Aggregate::nonfunctionList().
|
staticnodiscard |
Returns true
if node n1 is less than node n2 when comparing the sort keys, defined with.
\badcode \meta sortkey {
}
in the respective nodes' documentation. If the two sort keys are equal, falls back to nodeNameLessThan(). If n1 defines a sort key and n2 does not, then n1 < n2.
Definition at line 99 of file node.cpp.
References Node< _Tp >::doc(), Doc::metaTagMap(), and Node< _Tp >::nodeNameLessThan().
Returns this node's type.
Definition at line 121 of file node.h.
Referenced by Sections::Sections(), Sections::Sections(), Sections::~Sections(), WebXMLGenerator::addAtomElements(), checkModuleInclusion(), CodeMarker::extraSynopsis(), Generator::fullDocumentLocation(), DocBookGenerator::generateAtom(), DocBookGenerator::generateDocBookSynopsis(), DocBookGenerator::generateRequisites(), CollectionNode::getMembers(), XmlGenerator::hOffset(), CppCodeMarker::markedUpSynopsis(), Node< _Tp >::nodeNameLessThan(), XmlGenerator::refForNode(), XmlGenerator::rewritePropertyBrief(), CodeMarker::taggedNode(), taggedNode(), XmlGenerator::targetType(), Generator::typeString(), and Aggregate::typeWord().
Returns this node's type as a string for use as an attribute value in XML or HTML.
Definition at line 664 of file node.cpp.
References Node< _Tp >::isFunction().
Returns the node type t as a string for use as an attribute value in XML or HTML.
Definition at line 677 of file node.cpp.
References Node< _Tp >::Class, Node< _Tp >::Collection, Node< _Tp >::Enum, Node< _Tp >::Example, Node< _Tp >::ExternalPage, Node< _Tp >::Function, Node< _Tp >::Group, Node< _Tp >::HeaderFile, Node< _Tp >::Module, Node< _Tp >::Namespace, Node< _Tp >::Page, Node< _Tp >::Property, Node< _Tp >::Proxy, Node< _Tp >::QmlModule, Node< _Tp >::QmlProperty, Node< _Tp >::QmlType, Node< _Tp >::QmlValueType, Node< _Tp >::SharedComment, Node< _Tp >::Struct, Node< _Tp >::TypeAlias, Node< _Tp >::Typedef, Node< _Tp >::Union, and Node< _Tp >::Variable.
Definition at line 156 of file lalr.h.
References Node< _Tp >::data.
Definition at line 159 of file lalr.h.
References Node< _Tp >::data.
Definition at line 153 of file lalr.h.
References Node< _Tp >::data.
Returns the node's parent pointer.
Definition at line 244 of file node.h.
Referenced by SharedCommentNode::SharedCommentNode(), WebXMLGenerator::addAtomElements(), Aggregate::adoptChild(), FunctionNode::element(), QmlPropertyNode::element(), Generator::fileBase(), Generator::fullDocumentLocation(), Node< _Tp >::fullDocumentName(), DocBookGenerator::generateAtom(), HtmlGenerator::generateAtom(), DocBookGenerator::generateBody(), Generator::generateBody(), HtmlGenerator::generateCppReferencePage(), DocBookGenerator::generateDocumentation(), Generator::generateDocumentation(), WebXMLGenerator::generateDocumentation(), Generator::getOverloadedSignalCode(), FunctionNode::hasOverloads(), Section::insert(), Section::insertReimplementedMember(), Node< _Tp >::isInternal(), QmlPropertyNode::isReadOnly(), XmlGenerator::linkForNode(), FunctionNode::logicalModuleIdentifier(), QmlPropertyNode::logicalModuleIdentifier(), FunctionNode::logicalModuleName(), QmlPropertyNode::logicalModuleName(), FunctionNode::logicalModuleVersion(), QmlPropertyNode::logicalModuleVersion(), CppCodeMarker::markedUpEnumValue(), CppCodeMarker::markedUpSynopsis(), CppCodeParser::parseMacroArg(), Node< _Tp >::plainFullName(), Node< _Tp >::plainSignature(), CppCodeParser::processMetaCommand(), CppCodeParser::processTopicCommand(), FunctionNode::qmlTypeName(), QmlPropertyNode::qmlTypeName(), PageNode::setTitle(), FunctionNode::setVirtualness(), Generator::supplementAlsoList(), and NamespaceNode::tree().
QString Node< _Tp >::plainFullName | ( | const Node< _Tp > * | relative = nullptr | ) | const |
Constructs and returns the node's fully qualified name by recursively ascending the parent links and prepending each parent name + "::".
Breaks out when reaching a HeaderNode, or when the parent pointer is relative. Typically, calls to this function pass nullptr
for relative.
Definition at line 485 of file node.cpp.
References Node< _Tp >::isHeader(), and Node< _Tp >::parent().
Constructs and returns the node's fully qualified signature by recursively ascending the parent links and prepending each parent name + "::" to the plain signature.
The return type is not included.
Definition at line 509 of file node.cpp.
References Node< _Tp >::parent(), and Node< _Tp >::SignaturePlain.
|
inlinenodiscardvirtual |
If this is a QmlTypeNode, this function returns the QML full base name.
Otherwise it returns an empty string.
Reimplemented in QmlTypeNode.
If this is a QmlPropertyNode or a FunctionNode representing a QML method, this function returns the qmlTypeName() of the parent() node.
Otherwise it returns the name data member.
Reimplemented in FunctionNode, and QmlPropertyNode.
If this node is a CollectionNode, its QT variable is returned.
Otherwise an empty string is returned. I don't know what the QT variable is used for.
Reimplemented in CollectionNode.
|
inlinestatic |
Definition at line 168 of file lalr.h.
Referenced by Node< _Tp >::begin_nodes(), Node< _Tp >::end_nodes(), and Node< _Tp >::get().
Referenced by QDocDatabase::findNodeForAtom(), and Node< _Tp >::tree().
If this node is a ClassNode or a QmlTypeNode, the node's abstract flag data member is set to b.
Reimplemented in ClassNode, and QmlTypeNode.
Definition at line 222 of file node.h.
Referenced by CppCodeParser::processMetaCommand().
Sets the node's access type to t.
Definition at line 203 of file node.h.
Referenced by Node< _Tp >::markInternal(), and CppCodeParser::processTopicCommand().
|
inlinevirtual |
If this is a QmlTypeNode, this function sets the C++ class node to cn.
The C++ ClassNode is the C++ implementation of the QML type.
Reimplemented in QmlTypeNode.
|
inlinevirtual |
Reimplemented in CollectionNode.
Reimplemented in CollectionNode.
|
inlinevirtual |
Reimplemented in CollectionNode.
|
inline |
|
inlinevirtual |
If this node is a PropertyNode or a QmlPropertyNode, its data type data member is set to dataType.
Otherwise, this function does nothing.
Reimplemented in PropertyNode, and QmlPropertyNode.
Sets the Node status to Node::Deprecated, unless sinceVersion represents a future version.
Stores sinceVersion representing the version in which the deprecation took (or will take) place.
Fetches the current version from the config ('version' variable) as a string, and compared to sinceVersion. If both string represent a valid version and sinceVersion is greater than the currect version, do not mark the node as deprecated; leave it active.
Definition at line 1008 of file node.cpp.
References Node< _Tp >::Deprecated, and Node< _Tp >::setStatus().
If replace is false and this Node already has a Doc, and if this doc is not marked with the \reimp command, a warning is reported that the existing Doc is being overridden, and it reports where the previous Doc was found. If replace is true, the Doc is replaced silently.
Definition at line 546 of file node.cpp.
References Doc::isEmpty(), Doc::isMarkedReimp(), Doc::location(), and Doc::operator=().
Sets the node's file name base to t.
Only called by Generator::fileBase().
Definition at line 125 of file node.h.
Referenced by Node< _Tp >::Node(), VariableNode::VariableNode(), and SharedCommentNode::append().
Sets a flag in this Node that indicates the node was created for something in an index file.
This is important to know because an index node is not to be documented in the current module. When the index flag is set, it means the Node represents something in another module, and it will be documented in that module's documentation.
Definition at line 214 of file node.h.
Referenced by Aggregate::addChild().
Sets the node's declaration location, its definition location, or both, depending on the suffix of the file name from the file path in location t.
Definition at line 886 of file node.cpp.
Referenced by QmlSignatureParser::matchFunctionDecl(), CppCodeParser::processQmlProperties(), and CppCodeParser::processTopicCommand().
|
inlinevirtual |
If this node is a CollectionNode, this function splits arg on the blank character to get a logical module name and version number.
If this node is a CollectionNode, this function accepts the logical module info as a string list.
If the version number is present, it splits the version number on the '.' character to get a major version number and a minor version number. If the version number is present, both the major and minor version numbers should be there, but the minor version number is not absolutely necessary.
The strings are stored in the appropriate data members for use when the QML module page is generated.
If the logical module info contains the version number, it splits the version number on the '.' character to get the major and minor version numbers. Both major and minor version numbers should be provided, but the minor version number is not strictly necessary.
The strings are stored in the appropriate data members for use when the QML module page is generated. This overload of the function is called when qdoc is reading an index file.
Reimplemented in CollectionNode.
Sets the node's parent pointer to n.
Such a thing is not lightly done. All the calls to this function are in other member functions of Node subclasses. See the code in the subclass implementations to understand when this function can be called safely and why it is called.
Definition at line 213 of file node.h.
Referenced by Aggregate::addChild(), Aggregate::adoptChild(), EnumNode::clone(), SharedCommentNode::clone(), TypeAliasNode::clone(), TypedefNode::clone(), and VariableNode::clone().
|
inlinevirtual |
If this is a QmlTypeNode, this function sets the QML type's QML module pointer to the CollectionNode t.
Otherwise the function does nothing.
Reimplemented in QmlTypeNode.
If this node is a CollectionNode, its QT variable is set to v.
Otherwise the function does nothing. I don't know what the QT variable is used for.
Reimplemented in CollectionNode.
Sets a flag in the node indicating whether this node is a related nonmember of something.
This function is called when the relates
command is seen.
Reimplemented in SharedCommentNode.
Definition at line 218 of file node.h.
Referenced by SharedCommentNode::setRelatedNonmember().
|
inline |
Definition at line 286 of file node.h.
Referenced by SharedCommentNode::append().
Sets the node's status to t.
Definition at line 560 of file node.cpp.
References Node< _Tp >::Internal.
Referenced by Tree::markDontDocumentNodes(), Node< _Tp >::markInternal(), CppCodeParser::processMetaCommand(), and Node< _Tp >::setDeprecated().
|
inlinevirtual |
Sets the node's subtitle, which is used for the subtitle of the documentation page, if one is generated for this node.
Returns true
if the subtitle is set. In this base class, there is no subtitle string stored, so in the base class, nothing happens and false
is returned. The override in the PageNode and HeaderNode classes is where the subtitle is set.
Reimplemented in HeaderNode, and PageNode.
|
inline |
Definition at line 211 of file node.h.
Referenced by CppCodeParser::processTopicCommand().
|
inline |
Sets the node's thread safeness to t.
Definition at line 207 of file node.h.
Referenced by CppCodeParser::processMetaCommand().
Sets the node's title, which is used for the title of the documentation page, if one is generated for this node.
Returns true
if the title is set. In this base class, there is no title string stored, so in the base class, nothing happens and false
is returned. The override in the PageNode class is where the title is set.
Reimplemented in HeaderNode, and PageNode.
Sets the node's URL to url, which is the url to the page that the node represents.
This function is only called when an index file is read. In other words, a node's url is set when qdoc decides where its page will be and what its name will be, which happens when qdoc writes the index file for the module being documented.
If this node is a ClassNode or a QmlTypeNode, the node's wrapper flag data member is set to true
.
Reimplemented in ClassNode, and QmlTypeNode.
Definition at line 223 of file node.h.
Referenced by CppCodeParser::processMetaCommand().
|
inline |
|
inlinenodiscardvirtual |
void Node::setGenus(Genus t) Sets this node's Genus to t.
Specific parts of the signature are included according to flags in options.
If this node is not a FunctionNode, this function returns plainName().
Reimplemented in FunctionNode.
Returns the node's status value.
Definition at line 278 of file node.h.
Referenced by formatStatus(), DocBookGenerator::generateDocBookSynopsis(), DocBookGenerator::generateQmlRequisites(), DocBookGenerator::generateRequisites(), DocBookGenerator::generateSortedNames(), DocBookGenerator::generateStatus(), Generator::generateStatus(), Node< _Tp >::isInternal(), and QmlTypeNode::isInternal().
Returns a string that can be used to print a subtitle in the documentation for whatever this Node is.
In the Node base class, the empty string is returned. In a PageNode, the function returns the subtitle data member. In a HeaderNode, the subtitle data member is returned.
Reimplemented in HeaderNode, and PageNode.
|
inlinenodiscard |
Definition at line 282 of file node.h.
Referenced by HtmlGenerator::generateCppReferencePage().
|
nodiscard |
Returns the thread safeness value for whatever this node represents.
But if this node has a parent and the thread safeness value of the parent is the same as the thread safeness value of this node, what is returned is the value {UnspecifiedSafeness}. Why?
Definition at line 826 of file node.cpp.
References Node< _Tp >::inheritedThreadSafeness(), and Node< _Tp >::UnspecifiedSafeness.
Referenced by DocBookGenerator::generateDocBookSynopsis(), DocBookGenerator::generateThreadSafeness(), Generator::generateThreadSafeness(), and Generator::hasExceptions().
Returns a string that can be used to print a title in the documentation for whatever this Node is.
In the Node base class, the node's name() is returned. In a PageNode, the function returns the title data member. In a HeaderNode, if the title() is empty, the name() is returned.
Reimplemented in HeaderNode, and PageNode.
|
static |
Converts the boolean value b to an enum representation of the boolean type, which includes an enum value for the {default value} of the item, i.e.
true, false, or default.
Definition at line 737 of file node.cpp.
References Node< _Tp >::FlagValueFalse, and Node< _Tp >::FlagValueTrue.
Referenced by QmlPropertyNode::markReadOnly(), QmlPropertyNode::setRequired(), PropertyNode::setStored(), QmlPropertyNode::setStored(), and PropertyNode::setWritable().
Returns a pointer to the Tree this node is in.
Reimplemented in NamespaceNode.
Definition at line 876 of file node.cpp.
References Node< _Tp >::root(), and Node< _Tp >::tree().
Referenced by QDocDatabase::findNodeForAtom(), and Node< _Tp >::tree().
Returns the node's URL, which is the url of the documentation page created for the node or the url of an external page if the node is an ExternalPageNode.
The url is used for generating a link to the page the node represents.
|
inlinenodiscardvirtual |
Returns the seen
flag data member of this node if it is a NamespaceNode or a CollectionNode.
Otherwise it returns false
. If true
is returned, it means that the location where the namespace or collection is to be documented has been found.
Reimplemented in CollectionNode, and NamespaceNode.
Definition at line 225 of file node.h.
Referenced by WebXMLGenerator::generateDocumentation().
Definition at line 177 of file lalr.h.
Referenced by Node< _Tp >::Node(), Node< _Tp >::operator!=(), Node< _Tp >::operator<(), and Node< _Tp >::operator==().
|
mutable |
Definition at line 176 of file lalr.h.
Referenced by Node< _Tp >::Node().
Returns a pointer to the root of the Tree this node is in.
Definition at line 175 of file lalr.h.
Referenced by Node< _Tp >::Node().