Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
headernode.cpp
Go to the documentation of this file.
1// Copyright (C) 2021 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
3
4#include "headernode.h"
5
7
8/*!
9 \class Headernode
10 \brief This class represents a C++ header file.
11 */
12
13 HeaderNode::HeaderNode(Aggregate *parent, const QString &name) : Aggregate(NodeType::HeaderFile, parent, name)
14{
15 // Set the include file with enclosing angle brackets removed
16 if (name.startsWith(QChar('<')) && name.size() > 2)
17 Aggregate::setIncludeFile(name.mid(1).chopped(1));
18 else
19 Aggregate::setIncludeFile(name);
20}
21
22/*!
23 Returns true if this header file node is not private and
24 contains at least one public child node with documentation.
25 */
27{
28 if (isInAPI())
29 return true;
31}
32
33/*!
34 Returns true if this header file node contains at least one
35 child that has documentation and is not private or internal.
36 */
38{
39 return std::any_of(m_children.cbegin(), m_children.cend(),
40 [](Node *child) { return child->isInAPI(); });
41}
42
43QT_END_NAMESPACE
NodeList m_children
Definition aggregate.h:84
bool hasDocumentedChildren() const
Returns true if this header file node contains at least one child that has documentation and is not p...
bool docMustBeGenerated() const override
Returns true if this header file node is not private and contains at least one public child node with...
The Node class is the base class for all the nodes in QDoc's parse tree.
virtual bool isInAPI() const
Definition node.h:243