Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
|
This class describes one instance of using the Q_PROPERTY macro. More...
#include <propertynode.h>
Public Types | |
enum class | PropertyType { StandardProperty , BindableProperty } |
enum class | FunctionRole { Getter , Setter , Resetter , Notifier , Bindable , NumFunctionRoles } |
Public Types inherited from Node< _Tp > | |
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 | |
PropertyNode (Aggregate *parent, const QString &name) | |
The constructor sets the parent and the name, but everything else is left to default values. | |
void | setDataType (const QString &dataType) override |
If this node is a PropertyNode or a QmlPropertyNode, its data type data member is set to dataType. | |
void | addFunction (FunctionNode *function, FunctionRole role) |
void | addSignal (FunctionNode *function, FunctionRole role) |
void | setStored (bool stored) |
void | setWritable (bool writable) |
void | setOverriddenFrom (const PropertyNode *baseProperty) |
Sets this property's {overridden from} property to baseProperty, which indicates that this property overrides baseProperty. | |
void | setConstant () |
void | setRequired () |
void | setPropertyType (PropertyType type) |
const QString & | dataType () const |
QString | qualifiedDataType () const |
Returns a string containing the data type qualified with "const" either prepended to the data type or appended to it, or without the const qualification, depending circumstances in the PropertyNode internal state. | |
NodeList | functions () const |
const NodeList & | functions (FunctionRole role) const |
const NodeList & | getters () const |
const NodeList & | setters () const |
const NodeList & | resetters () const |
const NodeList & | notifiers () const |
bool | hasAccessFunction (const QString &name) const |
Returns true if this property has an access function named name. | |
FunctionRole | role (const FunctionNode *functionNode) const |
Returns the role of functionNode for this property. | |
bool | isStored () const |
bool | isWritable () const |
bool | isConstant () const |
bool | isRequired () const |
PropertyType | propertyType () const |
const PropertyNode * | overriddenFrom () const |
bool | storedDefault () const |
bool | writableDefault () const |
Public Member Functions inherited from Node< _Tp > | |
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 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 QString | roleName (FunctionRole role) |
Returns a string representing an access function role. | |
Static Public Member Functions inherited from Node< _Tp > | |
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. | |
Additional Inherited Members | |
Public Attributes inherited from Node< _Tp > | |
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 inherited from Node< _Tp > | |
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. | |
This class describes one instance of using the Q_PROPERTY macro.
Definition at line 17 of file propertynode.h.
|
strong |
Enumerator | |
---|---|
Getter | |
Setter | |
Resetter | |
Notifier | |
Bindable | |
NumFunctionRoles |
Definition at line 21 of file propertynode.h.
|
strong |
Enumerator | |
---|---|
StandardProperty | |
BindableProperty |
Definition at line 20 of file propertynode.h.
The constructor sets the parent and the name, but everything else is left to default values.
Definition at line 20 of file propertynode.cpp.
|
inline |
Definition at line 71 of file propertynode.h.
|
inline |
Definition at line 77 of file propertynode.h.
|
inlinenodiscard |
Definition at line 36 of file propertynode.h.
|
inlinenodiscard |
Definition at line 83 of file propertynode.h.
|
inlinenodiscard |
Definition at line 39 of file propertynode.h.
Referenced by getters(), notifiers(), resetters(), and setters().
|
inlinenodiscard |
Definition at line 43 of file propertynode.h.
References functions(), and Getter.
|
nodiscard |
Returns true if this property has an access function named name.
Definition at line 102 of file propertynode.cpp.
|
inlinenodiscard |
Definition at line 51 of file propertynode.h.
|
inlinenodiscard |
Definition at line 52 of file propertynode.h.
Referenced by QmlPropertyNode::isRequired().
|
inlinenodiscard |
Definition at line 49 of file propertynode.h.
References Node< _Tp >::fromFlagValue(), and storedDefault().
|
inlinenodiscard |
Definition at line 50 of file propertynode.h.
References Node< _Tp >::fromFlagValue(), and writableDefault().
Referenced by CodeMarker::extraSynopsis(), and QmlPropertyNode::isReadOnly().
|
inlinenodiscard |
Definition at line 46 of file propertynode.h.
References functions(), and Notifier.
|
inlinenodiscard |
Definition at line 54 of file propertynode.h.
|
inlinenodiscard |
Definition at line 53 of file propertynode.h.
Referenced by CodeMarker::extraSynopsis(), DocBookGenerator::generateBody(), and Generator::generateBody().
|
nodiscard |
Returns a string containing the data type qualified with "const" either prepended to the data type or appended to it, or without the const qualification, depending circumstances in the PropertyNode internal state.
Definition at line 78 of file propertynode.cpp.
References resetters(), and setters().
|
inlinenodiscard |
Definition at line 45 of file propertynode.h.
References functions(), and Resetter.
Referenced by qualifiedDataType().
PropertyNode::FunctionRole PropertyNode::role | ( | const FunctionNode * | functionNode | ) | const |
Returns the role of functionNode for this property.
Definition at line 126 of file propertynode.cpp.
References Notifier.
|
static |
Returns a string representing an access function role.
Definition at line 29 of file propertynode.cpp.
|
inline |
Definition at line 32 of file propertynode.h.
If this node is a PropertyNode or a QmlPropertyNode, its data type data member is set to dataType.
Otherwise, this function does nothing.
Reimplemented from Node< _Tp >.
Definition at line 26 of file propertynode.h.
void PropertyNode::setOverriddenFrom | ( | const PropertyNode * | baseProperty | ) |
Sets this property's {overridden from} property to baseProperty, which indicates that this property overrides baseProperty.
To begin with, all the values in this property are set to the corresponding values in baseProperty.
We probably should ensure that the constant and final attributes are not being overridden improperly.
Definition at line 58 of file propertynode.cpp.
References Node< _Tp >::FlagValueDefault.
|
inline |
Definition at line 34 of file propertynode.h.
|
inline |
Definition at line 33 of file propertynode.h.
|
inline |
Definition at line 29 of file propertynode.h.
References Node< _Tp >::toFlagValue().
|
inlinenodiscard |
Definition at line 44 of file propertynode.h.
References functions(), and Setter.
Referenced by qualifiedDataType(), and writableDefault().
|
inline |
Definition at line 30 of file propertynode.h.
References Node< _Tp >::toFlagValue().
|
inlinenodiscard |
Definition at line 56 of file propertynode.h.
Referenced by isStored().
|
inlinenodiscard |
Definition at line 57 of file propertynode.h.
References setters().
Referenced by isWritable().