C++ Specific Configuration Variables
The C++ specific configuration variables are provided to avoid erroneous documentation due to non-standard C++ constructs.
Cpp.ignoredirectives
The Cpp.ignoredirectives
variable makes QDoc ignore the specified non-standard constructs, within C++ source code.
If not specified by the Cpp.ignoretokens
or Cpp.ignoredirectives
variables, non-standard constructs (typically macros) can result in erroneous documentation.
Cpp.ignoredirectives = Q_DECLARE_INTERFACE \ Q_DECLARE_OPERATORS_FOR_FLAGS \ Q_DECLARE_PRIVATE \ Q_DECLARE_PUBLIC \ Q_DISABLE_COPY \ Q_DUMMY_COMPARISON_OPERATOR \ Q_ENUMS \ Q_FLAGS \ Q_INTERFACES \ __attribute__
makes sure that when processing the code below, for example, QDoc will simply ignore the 'Q_ENUMS' and 'Q_FLAGS' expressions:
class Q_CORE_EXPORT Qt { Q_OBJECT Q_ENUMS(Orientation TextFormat BackgroundMode DateFormat ScrollBarPolicy FocusPolicy ContextMenuPolicy CaseSensitivity LayoutDirection ArrowType) Q_ENUMS(ToolButtonStyle) Q_FLAGS(Alignment) Q_FLAGS(Orientations) Q_FLAGS(DockWidgetAreas) public: ... };
The Q_OBJECT macro, however, is an exception: QDoc recognizes this particular non-standard construct, so there is no need specifying it using the Cpp.ignoredirectives
variable.
Regarding the Q_CORE_EXPORT macro; see the documentation of the Cpp.ignoretokens
variable.
See also Cpp.ignoretokens.
Cpp.ignoretokens
The Cpp.ignoretokens
variable makes QDoc ignore the specified non-standard constructs, within C++ source code.
If not specified by the Cpp.ignoretokens
or Cpp.ignoredirectives
variables, non-standard constructs (typically macros) can result in erroneous documentation.
In qtgui.qdocconf:
Cpp.ignoretokens = QAXFACTORY_EXPORT \ QM_EXPORT_CANVAS \ ... Q_COMPAT_EXPORT \ Q_CORE_EXPORT \ Q_EXPLICIT \ Q_EXPORT \ ... Q_XML_EXPORT
makes sure that when processing the code below, for example, QDoc will simply ignore the 'Q_CORE_EXPORT' expression:
class Q_CORE_EXPORT Qt { Q_OBJECT Q_ENUMS(Orientation TextFormat BackgroundMode DateFormat ScrollBarPolicy FocusPolicy ContextMenuPolicy CaseSensitivity LayoutDirection ArrowType) Q_ENUMS(ToolButtonStyle) Q_FLAGS(Alignment) Q_FLAGS(Orientations) Q_FLAGS(DockWidgetAreas) public: ... };
Regarding the Q_OBJECT, Q_ENUMS and Q_FLAGS macros; see the documentation of the Cpp.ignoredirectives
variable.
See also Cpp.ignoredirectives.
© 2020 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.