31#include "configvalues.h"
38#define COMMAND_OVERRIDES \
39 OVERRIDE_ENTRY(bool, bool, 1, callGraph ) \
40 OVERRIDE_ENTRY(bool, bool, 1, callerGraph ) \
41 OVERRIDE_ENTRY(bool, bool, 1, referencedByRelation ) \
42 OVERRIDE_ENTRY(bool, bool, 1, referencesRelation ) \
43 OVERRIDE_ENTRY(bool, bool, 1, inlineSource ) \
44 OVERRIDE_ENTRY(bool, bool, 1, includeGraph ) \
45 OVERRIDE_ENTRY(bool, bool, 1, includedByGraph ) \
46 OVERRIDE_ENTRY(bool, bool, 1, directoryGraph ) \
47 OVERRIDE_ENTRY(bool, bool, 1, collaborationGraph ) \
48 OVERRIDE_ENTRY(bool, bool, 1, groupGraph ) \
49 OVERRIDE_ENTRY(bool, bool, 1, enumValues ) \
50 OVERRIDE_ENTRY(CLASS_GRAPH_t, int, 3, inheritanceGraph )
55#define OVERRIDE_ENTRY(type,store_type,bits,name) \
56 store_type m_##name : bits; \
57 bool m_##name##ExplicitlySet : 1;
63 void reset() { std::memset(
this, 0,
sizeof(*
this)); }
67 int to_store_type(CLASS_GRAPH_t t)
const {
return static_cast<int>(t); }
69 CLASS_GRAPH_t
from_store_type(
int t)
const {
return static_cast<CLASS_GRAPH_t
>(t); }
71#define OVERRIDE_ENTRY(type,store_type,bits,name) \
72 void override_##name(type value) { \
73 m_##name = to_store_type(value); \
74 m_##name##ExplicitlySet = true; \
77 void apply_##name(std::function<void(type)> func) const { \
79 if (m_##name##ExplicitlySet) func(from_store_type(m_##name)); \
248 default:
return "unknown group command";
std::vector< ArgumentList > ArgumentLists
This class represents an function or template argument list.
bool from_store_type(bool t) const
bool to_store_type(bool t) const
CLASS_GRAPH_t from_store_type(int t) const
int to_store_type(CLASS_GRAPH_t t) const
A String class for use with Doxygen wrapping std::string and adding some additional functionality off...
Represents an unstructured piece of information, about an entity found in the sources.
TextStream initializer
initial value (for variables)
void moveToSubEntryAndKeep(Entry *e)
VhdlSpecifier vhdlSpec
VHDL specifiers.
bool subGrouping
automatically group class members?
RequirementRefs rqli
references to requirements
Entry & operator=(const Entry &)=delete
void setFileDef(FileDef *fd)
const std::vector< std::shared_ptr< Entry > > & children() const
TextStream program
the program text
std::vector< std::shared_ptr< Entry > > m_sublist
GroupDocType groupDocType
int docLine
line number at which the documentation was found
DString includeName
include name (3 arg of \class)
DString bitfields
member's bit fields
ArgumentList typeConstr
where clause (C#) for type constraints
void markAsProcessed() const
int endBodyLine
line number where the definition ends
bool hasTagInfo
is tag info valid
DString write
property write accessor
bool exported
is the symbol exported from a C++20 module
const TagInfo * tagInfo() const
const char * groupDocCmd() const
return the command name used to define GROUPDOC_SEC
DString includeFile
include file (2 arg of \class, must be unique)
DString fileName
file this entry was extracted from
ArgumentLists tArgLists
template argument declarations
DString docFile
file in which the documentation was found
MethodTypes mtype
signal, slot, (dcop) method, or property?
@ GROUPDOC_NORMAL
defgroup
DString args
member argument string
SrcLangExt lang
programming language in which this entry was found
TagInfo tagInfoData
tag file info data
DString inside
name of the class in which documents are found
DString doc
documentation block (partly parsed)
DString req
C++20 requires clause.
bool explicitExternal
explicitly defined as external?
DString brief
brief description (doc block)
std::vector< const SectionInfo * > anchors
list of anchors defined in this entry
void moveToSubEntryAndRefresh(Entry *&e)
RelatesType relatesType
how relates is handled
std::vector< Grouping > groups
list of groups this entry belongs to
CommandOverrides commandOverrides
store info for commands whose default can be overridden
int startLine
start line of entry in the source
size_t startColumn
start column of entry in the source
ArgumentList argList
member arguments as a list
Grouping::GroupPri_t groupingPri() const
int inbodyLine
line number at which the body doc was found
EntryType section
entry type (see Sections);
int bodyLine
line number of the body in the source
DString exception
throw specification
DString relates
related class (doc block)
int mGrpId
member group id
void copyToSubEntry(Entry *e)
std::vector< BaseInfo > extends
list of base classes
DString inbodyFile
file in which the body doc was found
DString attributes
member's attributes (e.g. [[nodiscard]])
Specifier virt
virtualness of the entry
DString metaData
Slice metadata.
std::vector< std::string > qualifiers
qualifiers specified with the qualifier command
RefItemVector sli
special lists (test/todo/bug/deprecated/..) this entry is in
Protection protection
class protection
bool artificial
Artificially introduced item.
bool hidden
does this represent an entity that is hidden from the output
DString inbodyDocs
documentation inside the body of a function
int briefLine
line number at which the brief desc. was found
Entry * m_parent
parent node in the tree
FileDef * fileDef() const
int initLines
define/variable initializer lines to show
Entry & operator=(Entry &&)=delete
TypeSpecifier spec
class/member specifiers
DString briefFile
file in which the brief desc. was found
DString read
property read accessor
size_t bodyColumn
column of the body in the source
void removeSubEntry(const Entry *e)
Wrapper class for the Entry type.
A model of a file symbol.
class that provide information about a section.
Text streaming class that buffers data.
Wrapper class for a number of boolean properties.
#define COMMAND_OVERRIDES
std::vector< std::shared_ptr< Entry > > EntryList
std::vector< RefItem * > RefItemVector
std::vector< RequirementRef > RequirementRefs
List of requirement references.
BaseInfo(const DString &n, Protection p, Specifier v)
Protection prot
inheritance type
Specifier virt
virtualness
DString name
the name of the base class
GroupPri_t
Grouping priority.
@ GROUPING_AUTO_ADD
membership in group was defined via @add[to]group
@ GROUPING_AUTO_WEAK
membership in group was defined via @weakgroup
@ GROUPING_AUTO_DEF
membership in group was defined via @defgroup
This struct is used to capture the tag file information for an Entry.
This file contains a number of basic enums and types.