Doxygen
entry.h
浏览该文件的文档.
1 /******************************************************************************
2  *
3  *
4  *
5  * Copyright (C) 1997-2015 by Dimitri van Heesch.
6  *
7  * Permission to use, copy, modify, and distribute this software and its
8  * documentation under the terms of the GNU General Public License is hereby
9  * granted. No representations are made about the suitability of this software
10  * for any purpose. It is provided "as is" without express or implied warranty.
11  * See the GNU General Public License for more details.
12  *
13  * Documents produced by Doxygen are derivative works derived from the
14  * input used in their production; they are not affected by this license.
15  *
16  */
17 
18 #ifndef ENTRY_H
19 #define ENTRY_H
20 
21 #include <vector>
22 #include <memory>
23 #include <sstream>
24 
25 #include "types.h"
26 #include "arguments.h"
27 #include "reflist.h"
28 #include "textstream.h"
29 
30 class SectionInfo;
31 class FileDef;
32 
33 /** This class stores information about an inheritance relation
34  */
35 struct BaseInfo
36 {
37  /*! Creates an object representing an inheritance relation */
39  name(n),prot(p),virt(v) {}
40  QCString name; //!< the name of the base class
41  Protection prot; //!< inheritance type
42  Specifier virt; //!< virtualness
43 };
44 
45 /** This struct is used to capture the tag file information
46  * for an Entry.
47  */
48 struct TagInfo
49 {
53 };
54 
55 /** Represents an unstructured piece of information, about an
56  * entity found in the sources.
57  *
58  * parseMain() in scanner.l will generate a tree of these
59  * entries.
60  */
61 class Entry
62 {
63  public:
64 
65  /*! Kind of entries that are supported */
66  enum Sections {
67  CLASS_SEC = 0x00000001,
68  NAMESPACE_SEC = 0x00000010,
69  CONCEPT_SEC = 0x00000020,
72 
73  CLASSDOC_SEC = 0x00000800,
74  STRUCTDOC_SEC = 0x00001000,
75  UNIONDOC_SEC = 0x00002000,
76  EXCEPTIONDOC_SEC = 0x00004000,
77  NAMESPACEDOC_SEC = 0x00008000,
78  INTERFACEDOC_SEC = 0x00010000,
79  PROTOCOLDOC_SEC = 0x00020000,
80  CATEGORYDOC_SEC = 0x00040000,
81  SERVICEDOC_SEC = 0x00080000,
82  SINGLETONDOC_SEC = 0x00100000,
83  CONCEPTDOC_SEC = 0x00200000,
87 
88  SOURCE_SEC = 0x00400000,
89  HEADER_SEC = 0x00800000,
91 
92  ENUMDOC_SEC = 0x01000000,
93  ENUM_SEC = 0x02000000,
94  EMPTY_SEC = 0x03000000,
95  PAGEDOC_SEC = 0x04000000,
96  VARIABLE_SEC = 0x05000000,
97  FUNCTION_SEC = 0x06000000,
98  TYPEDEF_SEC = 0x07000000,
99  MEMBERDOC_SEC = 0x08000000,
100  OVERLOADDOC_SEC = 0x09000000,
101  EXAMPLE_SEC = 0x0a000000,
102  VARIABLEDOC_SEC = 0x0b000000,
103  FILEDOC_SEC = 0x0c000000,
104  DEFINEDOC_SEC = 0x0d000000,
105  INCLUDE_SEC = 0x0e000000,
106  DEFINE_SEC = 0x0f000000,
107  GROUPDOC_SEC = 0x10000000,
108  USINGDIR_SEC = 0x11000000,
109  MAINPAGEDOC_SEC = 0x12000000,
110  MEMBERGRP_SEC = 0x13000000,
111  USINGDECL_SEC = 0x14000000,
112  PACKAGE_SEC = 0x15000000,
113  PACKAGEDOC_SEC = 0x16000000,
114  OBJCIMPL_SEC = 0x17000000,
115  DIRDOC_SEC = 0x18000000,
117  INCLUDED_SERVICE_SEC = 0x1A000000,
118  EXAMPLE_LINENO_SEC = 0x1B000000,
119  };
120 
121  // class specifiers (add new items to the end)
122  static const uint64 Template = (1ULL<<0);
123  static const uint64 Generic = (1ULL<<1);
124  static const uint64 Ref = (1ULL<<2);
125  static const uint64 Value = (1ULL<<3);
126  static const uint64 Interface = (1ULL<<4);
127  static const uint64 Struct = (1ULL<<5);
128  static const uint64 Union = (1ULL<<6);
129  static const uint64 Exception = (1ULL<<7);
130  static const uint64 Protocol = (1ULL<<8);
131  static const uint64 Category = (1ULL<<9);
132  static const uint64 SealedClass = (1ULL<<10);
133  static const uint64 AbstractClass = (1ULL<<11);
134  static const uint64 Enum = (1ULL<<12); // for Java-style enums
135  static const uint64 Service = (1ULL<<13); // UNO IDL
136  static const uint64 Singleton = (1ULL<<14); // UNO IDL
137  static const uint64 ForwardDecl = (1ULL<<15); // forward declared template classes
138  static const uint64 Local = (1ULL<<16); // for Slice types
139 
140  // member specifiers (add new items to the beginning)
141  static const uint64 EnumStruct = (1ULL<<18);
142  static const uint64 ConstExpr = (1ULL<<19); // C++11 constexpr
143  static const uint64 PrivateGettable = (1ULL<<20); // C# private getter
144  static const uint64 ProtectedGettable = (1ULL<<21); // C# protected getter
145  static const uint64 PrivateSettable = (1ULL<<22); // C# private setter
146  static const uint64 ProtectedSettable = (1ULL<<23); // C# protected setter
147  static const uint64 Inline = (1ULL<<24);
148  static const uint64 Explicit = (1ULL<<25);
149  static const uint64 Mutable = (1ULL<<26);
150  static const uint64 Settable = (1ULL<<27);
151  static const uint64 Gettable = (1ULL<<28);
152  static const uint64 Readable = (1ULL<<29);
153  static const uint64 Writable = (1ULL<<30);
154  static const uint64 Final = (1ULL<<31);
155  static const uint64 Abstract = (1ULL<<32);
156  static const uint64 Addable = (1ULL<<33);
157  static const uint64 Removable = (1ULL<<34);
158  static const uint64 Raisable = (1ULL<<35);
159  static const uint64 Override = (1ULL<<36);
160  static const uint64 New = (1ULL<<37);
161  static const uint64 Sealed = (1ULL<<38);
162  static const uint64 Initonly = (1ULL<<39);
163  static const uint64 Optional = (1ULL<<40);
164  static const uint64 Required = (1ULL<<41);
165  static const uint64 NonAtomic = (1ULL<<42);
166  static const uint64 Copy = (1ULL<<43);
167  static const uint64 Retain = (1ULL<<44);
168  static const uint64 Assign = (1ULL<<45);
169  static const uint64 Strong = (1ULL<<46);
170  static const uint64 Weak = (1ULL<<47);
171  static const uint64 Unretained = (1ULL<<48);
172  static const uint64 Alias = (1ULL<<49);
173  static const uint64 ConstExp = (1ULL<<50);
174  static const uint64 Default = (1ULL<<51);
175  static const uint64 Delete = (1ULL<<52);
176  static const uint64 NoExcept = (1ULL<<53);
177  static const uint64 Attribute = (1ULL<<54); // UNO IDL attribute
178  static const uint64 Property = (1ULL<<55); // UNO IDL property
179  static const uint64 Readonly = (1ULL<<56); // on UNO IDL attribute or property
180  static const uint64 Bound = (1ULL<<57); // on UNO IDL attribute or property
181  static const uint64 Constrained = (1ULL<<58); // on UNO IDL property
182  static const uint64 Transient = (1ULL<<59); // on UNO IDL property
183  static const uint64 MaybeVoid = (1ULL<<60); // on UNO IDL property
184  static const uint64 MaybeDefault = (1ULL<<61); // on UNO IDL property
185  static const uint64 MaybeAmbiguous = (1ULL<<62); // on UNO IDL property
186  static const uint64 Published = (1ULL<<63); // UNO IDL keyword
187 
189  {
190  GROUPDOC_NORMAL, //!< defgroup
191  GROUPDOC_ADD, //!< addtogroup
192  GROUPDOC_WEAK //!< weakgroup
193  }; //!< kind of group
194 
195  Entry();
196  Entry(const Entry &);
197  ~Entry();
198 
199  /*! Returns the parent for this Entry or 0 if this entry has no parent. */
200  Entry *parent() const { return m_parent; }
201 
202  /*! Returns the list of children for this Entry
203  * @see addSubEntry() and removeSubEntry()
204  */
205  const std::vector< std::shared_ptr<Entry> > &children() const { return m_sublist; }
206 
207  /*! @name add entry as a child and pass ownership.
208  * @note This makes the entry passed invalid!
209  * @{
210  */
211  void moveToSubEntryAndKeep(Entry* e);
212  void moveToSubEntryAndKeep(std::shared_ptr<Entry> e);
213  /*! @} */
214 
215  /*! @name add entry as a child, pass ownership and reinitialize entry */
217  void moveToSubEntryAndRefresh(std::shared_ptr<Entry> &e);
218 
219  /*! make a copy of \a e and add it as a child to this entry */
220  void copyToSubEntry (Entry* e);
221  void copyToSubEntry (const std::shared_ptr<Entry> &e);
222 
223  /*! Removes entry \a e from the list of children.
224  * The entry will be deleted if found.
225  */
226  void removeSubEntry(const Entry *e);
227 
228  /*! Restore the state of this Entry to the default value it has
229  * at construction time.
230  */
231  void reset();
232 
233  void markAsProcessed() const { ((Entry*)(this))->section = Entry::EMPTY_SEC; }
234  void setFileDef(FileDef *fd);
235  FileDef *fileDef() const { return m_fileDef; }
236 
237  // identification
238  int section; //!< entry type (see Sections);
239  QCString type; //!< member type
240  QCString name; //!< member name
241  bool hasTagInfo; //!< is tag info valid
242  TagInfo tagInfoData; //!< tag file info data
243  const TagInfo *tagInfo() const { return hasTagInfo ? &tagInfoData : 0; }
244 
245  // content
246  Protection protection; //!< class protection
247  MethodTypes mtype; //!< signal, slot, (dcop) method, or property?
248  uint64 spec; //!< class/member specifiers
249  int initLines; //!< define/variable initializer lines to show
250  bool stat; //!< static ?
251  bool explicitExternal; //!< explicitly defined as external?
252  bool proto; //!< prototype ?
253  bool subGrouping; //!< automatically group class members?
254  bool callGraph; //!< do we need to draw the call graph?
255  bool callerGraph; //!< do we need to draw the caller graph?
256  bool referencedByRelation;//!< do we need to show the referenced by relation?
257  bool referencesRelation; //!< do we need to show the references relation?
258  Specifier virt; //!< virtualness of the entry
259  QCString args; //!< member argument string
260  QCString bitfields; //!< member's bit fields
261  ArgumentList argList; //!< member arguments as a list
262  ArgumentLists tArgLists; //!< template argument declarations
263  TextStream program; //!< the program text
264  TextStream initializer; //!< initial value (for variables)
265  QCString includeFile; //!< include file (2 arg of \\class, must be unique)
266  QCString includeName; //!< include name (3 arg of \\class)
267  QCString doc; //!< documentation block (partly parsed)
268  int docLine; //!< line number at which the documentation was found
269  QCString docFile; //!< file in which the documentation was found
270  QCString brief; //!< brief description (doc block)
271  int briefLine; //!< line number at which the brief desc. was found
272  QCString briefFile; //!< file in which the brief desc. was found
273  QCString inbodyDocs; //!< documentation inside the body of a function
274  int inbodyLine; //!< line number at which the body doc was found
275  QCString inbodyFile; //!< file in which the body doc was found
276  QCString relates; //!< related class (doc block)
277  RelatesType relatesType; //!< how relates is handled
278  QCString read; //!< property read accessor
279  QCString write; //!< property write accessor
280  QCString inside; //!< name of the class in which documents are found
281  QCString exception; //!< throw specification
282  ArgumentList typeConstr; //!< where clause (C#) for type constraints
283  int bodyLine; //!< line number of the body in the source
284  int bodyColumn; //!< column of the body in the source
285  int endBodyLine; //!< line number where the definition ends
286  int mGrpId; //!< member group id
287  std::vector<BaseInfo> extends; //!< list of base classes
288  std::vector<Grouping> groups; //!< list of groups this entry belongs to
289  std::vector<const SectionInfo*> anchors; //!< list of anchors defined in this entry
290  QCString fileName; //!< file this entry was extracted from
291  int startLine; //!< start line of entry in the source
292  int startColumn; //!< start column of entry in the source
293  RefItemVector sli; //!< special lists (test/todo/bug/deprecated/..) this entry is in
294  SrcLangExt lang; //!< programming language in which this entry was found
295  bool hidden; //!< does this represent an entity that is hidden from the output
296  bool artificial; //!< Artificially introduced item
298  QCString id; //!< libclang id
300  QCString metaData; //!< Slice metadata
301  QCString req; //!< C++20 requires clause
302 
303  /// return the command name used to define GROUPDOC_SEC
304  const char *groupDocCmd() const
305  {
306  switch( groupDocType )
307  {
308  case GROUPDOC_NORMAL: return "\\defgroup";
309  case GROUPDOC_ADD: return "\\addtogroup";
310  case GROUPDOC_WEAK: return "\\weakgroup";
311  default: return "unknown group command";
312  }
313  }
315  {
316  if( section != GROUPDOC_SEC )
317  {
319  }
320  switch( groupDocType )
321  {
325  default: return Grouping::GROUPING_LOWEST;
326  }
327  }
328 
329  private:
330  Entry *m_parent; //!< parent node in the tree
331  std::vector< std::shared_ptr<Entry> > m_sublist;
332  Entry &operator=(const Entry &);
334 };
335 
336 typedef std::vector< std::shared_ptr<Entry> > EntryList;
337 
338 #endif
Entry::args
QCString args
member argument string
Definition: entry.h:259
Entry::SERVICEDOC_SEC
@ SERVICEDOC_SEC
Definition: entry.h:81
Entry::tArgLists
ArgumentLists tArgLists
template argument declarations
Definition: entry.h:262
Entry::Override
static const uint64 Override
Definition: entry.h:159
TagInfo
This struct is used to capture the tag file information for an Entry.
Definition: entry.h:48
Entry::GROUPDOC_NORMAL
@ GROUPDOC_NORMAL
defgroup
Definition: entry.h:190
Entry::OVERLOADDOC_SEC
@ OVERLOADDOC_SEC
Definition: entry.h:100
Entry::virt
Specifier virt
virtualness of the entry
Definition: entry.h:258
Entry::Weak
static const uint64 Weak
Definition: entry.h:170
Entry::EXAMPLE_SEC
@ EXAMPLE_SEC
Definition: entry.h:101
Entry::Initonly
static const uint64 Initonly
Definition: entry.h:162
Entry::INTERFACEDOC_SEC
@ INTERFACEDOC_SEC
Definition: entry.h:78
Protection
Protection
Protection level of members
Definition: types.h:26
Entry::initializer
TextStream initializer
initial value (for variables)
Definition: entry.h:264
Entry::startLine
int startLine
start line of entry in the source
Definition: entry.h:291
Entry::groupDocCmd
const char * groupDocCmd() const
return the command name used to define GROUPDOC_SEC
Definition: entry.h:304
Entry::callGraph
bool callGraph
do we need to draw the call graph?
Definition: entry.h:254
Entry::groupingPri
Grouping::GroupPri_t groupingPri() const
Definition: entry.h:314
types.h
This file contains a number of basic enums and types.
Entry::Retain
static const uint64 Retain
Definition: entry.h:167
Entry::STRUCTDOC_SEC
@ STRUCTDOC_SEC
Definition: entry.h:74
Entry::Unretained
static const uint64 Unretained
Definition: entry.h:171
Entry::CLASSDOC_SEC
@ CLASSDOC_SEC
Definition: entry.h:73
Entry::Readonly
static const uint64 Readonly
Definition: entry.h:179
Entry::Assign
static const uint64 Assign
Definition: entry.h:168
Entry::SINGLETONDOC_SEC
@ SINGLETONDOC_SEC
Definition: entry.h:82
ArgumentList
This class represents an function or template argument list.
Definition: arguments.h:59
Entry::ForwardDecl
static const uint64 ForwardDecl
Definition: entry.h:137
Entry::operator=
Entry & operator=(const Entry &)
Entry::spec
uint64 spec
class/member specifiers
Definition: entry.h:248
TagInfo::tagName
QCString tagName
Definition: entry.h:50
Entry::mtype
MethodTypes mtype
signal, slot, (dcop) method, or property?
Definition: entry.h:247
Entry::extends
std::vector< BaseInfo > extends
list of base classes
Definition: entry.h:287
Entry::Property
static const uint64 Property
Definition: entry.h:178
Entry::Final
static const uint64 Final
Definition: entry.h:154
Entry::ENUM_SEC
@ ENUM_SEC
Definition: entry.h:93
Entry::startColumn
int startColumn
start column of entry in the source
Definition: entry.h:292
Entry::name
QCString name
member name
Definition: entry.h:240
Entry::hidden
bool hidden
does this represent an entity that is hidden from the output
Definition: entry.h:295
Entry::COMPOUND_MASK
@ COMPOUND_MASK
Definition: entry.h:70
BaseInfo::prot
Protection prot
inheritance type
Definition: entry.h:41
SrcLangExt
SrcLangExt
Language as given by extension
Definition: types.h:41
Entry::removeSubEntry
void removeSubEntry(const Entry *e)
Definition: entry.cpp:172
Entry::USINGDIR_SEC
@ USINGDIR_SEC
Definition: entry.h:108
Entry::anchors
std::vector< const SectionInfo * > anchors
list of anchors defined in this entry
Definition: entry.h:289
Entry::CONCEPT_SEC
@ CONCEPT_SEC
Definition: entry.h:69
Entry::hasTagInfo
bool hasTagInfo
is tag info valid
Definition: entry.h:241
Entry::referencedByRelation
bool referencedByRelation
do we need to show the referenced by relation?
Definition: entry.h:256
Entry::mGrpId
int mGrpId
member group id
Definition: entry.h:286
Entry::DEFINE_SEC
@ DEFINE_SEC
Definition: entry.h:106
Grouping::GROUPING_LOWEST
@ GROUPING_LOWEST
Definition: types.h:69
Entry::protection
Protection protection
class protection
Definition: entry.h:246
Template
Abstract interface for a template.
Definition: template.h:475
Specifier
Specifier
Virtualness of a member.
Definition: types.h:29
BaseInfo::BaseInfo
BaseInfo(const QCString &n, Protection p, Specifier v)
Definition: entry.h:38
Entry::Settable
static const uint64 Settable
Definition: entry.h:150
Entry::VARIABLEDOC_SEC
@ VARIABLEDOC_SEC
Definition: entry.h:102
Entry::id
QCString id
libclang id
Definition: entry.h:298
Entry::briefFile
QCString briefFile
file in which the brief desc. was found
Definition: entry.h:272
Entry::MAINPAGEDOC_SEC
@ MAINPAGEDOC_SEC
Definition: entry.h:109
Entry::DIRDOC_SEC
@ DIRDOC_SEC
Definition: entry.h:115
Entry::Sealed
static const uint64 Sealed
Definition: entry.h:161
Entry::CONCEPTDOC_SEC
@ CONCEPTDOC_SEC
Definition: entry.h:83
textstream.h
Entry::includeName
QCString includeName
include name (3 arg of \class)
Definition: entry.h:266
TextStream
Text streaming class that buffers data.
Definition: textstream.h:33
Entry::docLine
int docLine
line number at which the documentation was found
Definition: entry.h:268
Entry::includeFile
QCString includeFile
include file (2 arg of \class, must be unique)
Definition: entry.h:265
Entry::fileDef
FileDef * fileDef() const
Definition: entry.h:235
Entry::reset
void reset()
Definition: entry.cpp:183
TagInfo::anchor
QCString anchor
Definition: entry.h:52
Entry::Default
static const uint64 Default
Definition: entry.h:174
Entry::EXCEPTIONDOC_SEC
@ EXCEPTIONDOC_SEC
Definition: entry.h:76
Entry::Copy
static const uint64 Copy
Definition: entry.h:166
Entry::setFileDef
void setFileDef(FileDef *fd)
Definition: entry.cpp:250
Entry::New
static const uint64 New
Definition: entry.h:160
Entry::PROTOCOLDOC_SEC
@ PROTOCOLDOC_SEC
Definition: entry.h:79
Entry::Value
static const uint64 Value
Definition: entry.h:125
Entry::AbstractClass
static const uint64 AbstractClass
Definition: entry.h:133
Entry::relates
QCString relates
related class (doc block)
Definition: entry.h:276
Entry::Alias
static const uint64 Alias
Definition: entry.h:172
Entry::doc
QCString doc
documentation block (partly parsed)
Definition: entry.h:267
Entry::UNIONDOC_SEC
@ UNIONDOC_SEC
Definition: entry.h:75
Entry::markAsProcessed
void markAsProcessed() const
Definition: entry.h:233
Entry::PrivateGettable
static const uint64 PrivateGettable
Definition: entry.h:143
Entry::Required
static const uint64 Required
Definition: entry.h:164
Entry::MaybeDefault
static const uint64 MaybeDefault
Definition: entry.h:184
Entry::groupDocType
GroupDocType groupDocType
Definition: entry.h:297
MethodTypes
MethodTypes
Kind of method
Definition: types.h:32
Entry::FILEDOC_SEC
@ FILEDOC_SEC
Definition: entry.h:103
Entry::CATEGORYDOC_SEC
@ CATEGORYDOC_SEC
Definition: entry.h:80
BaseInfo::name
QCString name
the name of the base class
Definition: entry.h:40
Entry::bodyColumn
int bodyColumn
column of the body in the source
Definition: entry.h:284
Entry::Sections
Sections
Definition: entry.h:66
Entry::GROUPDOC_ADD
@ GROUPDOC_ADD
addtogroup
Definition: entry.h:191
Entry::SCOPE_MASK
@ SCOPE_MASK
Definition: entry.h:71
Entry::inbodyDocs
QCString inbodyDocs
documentation inside the body of a function
Definition: entry.h:273
Entry::NAMESPACE_SEC
@ NAMESPACE_SEC
Definition: entry.h:68
Entry::Union
static const uint64 Union
Definition: entry.h:128
Entry::metaData
QCString metaData
Slice metadata
Definition: entry.h:300
Entry::TYPEDEF_SEC
@ TYPEDEF_SEC
Definition: entry.h:98
Entry::Optional
static const uint64 Optional
Definition: entry.h:163
Entry::INCLUDED_SERVICE_SEC
@ INCLUDED_SERVICE_SEC
Definition: entry.h:117
Entry::Struct
static const uint64 Struct
Definition: entry.h:127
LocalToc
Definition: types.h:301
Entry::Interface
static const uint64 Interface
Definition: entry.h:126
Entry::program
TextStream program
the program text
Definition: entry.h:263
Entry::GroupDocType
GroupDocType
Definition: entry.h:188
Entry::INCLUDE_SEC
@ INCLUDE_SEC
Definition: entry.h:105
Entry::Raisable
static const uint64 Raisable
Definition: entry.h:158
Entry::SOURCE_SEC
@ SOURCE_SEC
Definition: entry.h:88
Entry::Inline
static const uint64 Inline
Definition: entry.h:147
Entry::Constrained
static const uint64 Constrained
Definition: entry.h:181
Entry::briefLine
int briefLine
line number at which the brief desc. was found
Definition: entry.h:271
Entry::CLASS_SEC
@ CLASS_SEC
Definition: entry.h:67
Entry::ConstExpr
static const uint64 ConstExpr
Definition: entry.h:142
Entry::MaybeVoid
static const uint64 MaybeVoid
Definition: entry.h:183
Entry::Ref
static const uint64 Ref
Definition: entry.h:124
Entry::OBJCIMPL_SEC
@ OBJCIMPL_SEC
Definition: entry.h:114
Entry::ConstExp
static const uint64 ConstExp
Definition: entry.h:173
Entry::section
int section
entry type (see Sections);
Definition: entry.h:238
arguments.h
Entry::ENUMDOC_SEC
@ ENUMDOC_SEC
Definition: entry.h:92
Entry::Abstract
static const uint64 Abstract
Definition: entry.h:155
Entry::endBodyLine
int endBodyLine
line number where the definition ends
Definition: entry.h:285
Entry::localToc
LocalToc localToc
Definition: entry.h:299
Grouping::GroupPri_t
GroupPri_t
Grouping priority
Definition: types.h:67
Entry::Explicit
static const uint64 Explicit
Definition: entry.h:148
Entry::callerGraph
bool callerGraph
do we need to draw the caller graph?
Definition: entry.h:255
Entry::moveToSubEntryAndKeep
void moveToSubEntryAndKeep(Entry *e)
Definition: entry.cpp:146
Entry::m_parent
Entry * m_parent
parent node in the tree
Definition: entry.h:330
Entry::Removable
static const uint64 Removable
Definition: entry.h:157
Entry::m_fileDef
FileDef * m_fileDef
Definition: entry.h:333
Entry::FUNCTION_SEC
@ FUNCTION_SEC
Definition: entry.h:97
Entry::Delete
static const uint64 Delete
Definition: entry.h:175
Entry::ProtectedGettable
static const uint64 ProtectedGettable
Definition: entry.h:144
Entry::Service
static const uint64 Service
Definition: entry.h:135
Entry::COMPOUNDDOC_MASK
@ COMPOUNDDOC_MASK
Definition: entry.h:84
Entry::inbodyLine
int inbodyLine
line number at which the body doc was found
Definition: entry.h:274
Entry::MEMBERDOC_SEC
@ MEMBERDOC_SEC
Definition: entry.h:99
Entry::Gettable
static const uint64 Gettable
Definition: entry.h:151
Entry::SealedClass
static const uint64 SealedClass
Definition: entry.h:132
Entry::Protocol
static const uint64 Protocol
Definition: entry.h:130
Entry::MaybeAmbiguous
static const uint64 MaybeAmbiguous
Definition: entry.h:185
reflist.h
Entry::stat
bool stat
static ?
Definition: entry.h:250
Entry::tagInfo
const TagInfo * tagInfo() const
Definition: entry.h:243
Entry::Transient
static const uint64 Transient
Definition: entry.h:182
Entry::copyToSubEntry
void copyToSubEntry(Entry *e)
Definition: entry.cpp:158
Entry::GROUPDOC_SEC
@ GROUPDOC_SEC
Definition: entry.h:107
Grouping::GROUPING_AUTO_DEF
@ GROUPING_AUTO_DEF
membership in group was defined via @defgroup
Definition: types.h:72
Entry::USINGDECL_SEC
@ USINGDECL_SEC
Definition: entry.h:111
EntryList
std::vector< std::shared_ptr< Entry > > EntryList
Definition: entry.h:336
Entry::fileName
QCString fileName
file this entry was extracted from
Definition: entry.h:290
Entry::m_sublist
std::vector< std::shared_ptr< Entry > > m_sublist
Definition: entry.h:331
Entry::ProtectedSettable
static const uint64 ProtectedSettable
Definition: entry.h:146
Entry::Entry
Entry()
Definition: entry.cpp:33
Entry::Exception
static const uint64 Exception
Definition: entry.h:129
Entry::inbodyFile
QCString inbodyFile
file in which the body doc was found
Definition: entry.h:275
Entry::NAMESPACEDOC_SEC
@ NAMESPACEDOC_SEC
Definition: entry.h:77
Entry::Readable
static const uint64 Readable
Definition: entry.h:152
Entry::lang
SrcLangExt lang
programming language in which this entry was found
Definition: entry.h:294
ArgumentLists
std::vector< ArgumentList > ArgumentLists
Definition: arguments.h:138
Entry::typeConstr
ArgumentList typeConstr
where clause (C#) for type constraints
Definition: entry.h:282
Entry::brief
QCString brief
brief description (doc block)
Definition: entry.h:270
Entry::Attribute
static const uint64 Attribute
Definition: entry.h:177
Entry::bodyLine
int bodyLine
line number of the body in the source
Definition: entry.h:283
RefItemVector
std::vector< RefItem * > RefItemVector
Definition: reflist.h:132
Entry::initLines
int initLines
define/variable initializer lines to show
Definition: entry.h:249
Entry::Generic
static const uint64 Generic
Definition: entry.h:123
Entry::Strong
static const uint64 Strong
Definition: entry.h:169
Entry
Represents an unstructured piece of information, about an entity found in the sources.
Definition: entry.h:61
Entry::Writable
static const uint64 Writable
Definition: entry.h:153
Entry::children
const std::vector< std::shared_ptr< Entry > > & children() const
Definition: entry.h:205
Entry::PAGEDOC_SEC
@ PAGEDOC_SEC
Definition: entry.h:95
Entry::explicitExternal
bool explicitExternal
explicitly defined as external?
Definition: entry.h:251
BaseInfo::virt
Specifier virt
virtualness
Definition: entry.h:42
Entry::NonAtomic
static const uint64 NonAtomic
Definition: entry.h:165
Entry::relatesType
RelatesType relatesType
how relates is handled
Definition: entry.h:277
Entry::EXAMPLE_LINENO_SEC
@ EXAMPLE_LINENO_SEC
Definition: entry.h:118
Entry::Addable
static const uint64 Addable
Definition: entry.h:156
Entry::Category
static const uint64 Category
Definition: entry.h:131
Grouping::GROUPING_AUTO_ADD
@ GROUPING_AUTO_ADD
membership in group was defined via @add[to]group
Definition: types.h:71
Entry::Bound
static const uint64 Bound
Definition: entry.h:180
SectionInfo
class that provide information about a section.
Definition: section.h:49
Entry::Local
static const uint64 Local
Definition: entry.h:138
Entry::PACKAGE_SEC
@ PACKAGE_SEC
Definition: entry.h:112
Entry::artificial
bool artificial
Artificially introduced item
Definition: entry.h:296
Entry::moveToSubEntryAndRefresh
void moveToSubEntryAndRefresh(Entry *&e)
Definition: entry.cpp:132
Entry::EMPTY_SEC
@ EMPTY_SEC
Definition: entry.h:94
Entry::Mutable
static const uint64 Mutable
Definition: entry.h:149
Entry::EnumStruct
static const uint64 EnumStruct
Definition: entry.h:141
Entry::inside
QCString inside
name of the class in which documents are found
Definition: entry.h:280
TagInfo::fileName
QCString fileName
Definition: entry.h:51
FileDef
A model of a file symbol.
Definition: filedef.h:73
Entry::PrivateSettable
static const uint64 PrivateSettable
Definition: entry.h:145
Entry::read
QCString read
property read accessor
Definition: entry.h:278
BaseInfo
This class stores information about an inheritance relation
Definition: entry.h:35
Entry::HEADER_SEC
@ HEADER_SEC
Definition: entry.h:89
Entry::VARIABLE_SEC
@ VARIABLE_SEC
Definition: entry.h:96
Entry::sli
RefItemVector sli
special lists (test/todo/bug/deprecated/..) this entry is in
Definition: entry.h:293
Entry::subGrouping
bool subGrouping
automatically group class members?
Definition: entry.h:253
Entry::PACKAGEDOC_SEC
@ PACKAGEDOC_SEC
Definition: entry.h:113
Entry::type
QCString type
member type
Definition: entry.h:239
Entry::parent
Entry * parent() const
Definition: entry.h:200
Entry::exception
QCString exception
throw specification
Definition: entry.h:281
Entry::proto
bool proto
prototype ?
Definition: entry.h:252
Entry::bitfields
QCString bitfields
member's bit fields
Definition: entry.h:260
Entry::DEFINEDOC_SEC
@ DEFINEDOC_SEC
Definition: entry.h:104
Entry::referencesRelation
bool referencesRelation
do we need to show the references relation?
Definition: entry.h:257
Grouping::GROUPING_AUTO_WEAK
@ GROUPING_AUTO_WEAK
membership in group was defined via @weakgroup
Definition: types.h:70
Entry::argList
ArgumentList argList
member arguments as a list
Definition: entry.h:261
Entry::tagInfoData
TagInfo tagInfoData
tag file info data
Definition: entry.h:242
Entry::Singleton
static const uint64 Singleton
Definition: entry.h:136
Entry::docFile
QCString docFile
file in which the documentation was found
Definition: entry.h:269
RelatesType
RelatesType
Type of member relation
Definition: types.h:35
Entry::write
QCString write
property write accessor
Definition: entry.h:279
Entry::~Entry
~Entry()
Definition: entry.cpp:123
Entry::groups
std::vector< Grouping > groups
list of groups this entry belongs to
Definition: entry.h:288
uint64
uint64_t uint64
Definition: qcstring.h:43
Entry::MEMBERGRP_SEC
@ MEMBERGRP_SEC
Definition: entry.h:110
Entry::Published
static const uint64 Published
Definition: entry.h:186
Entry::FILE_MASK
@ FILE_MASK
Definition: entry.h:90
Entry::NoExcept
static const uint64 NoExcept
Definition: entry.h:176
Entry::Enum
static const uint64 Enum
Definition: entry.h:134
Entry::GROUPDOC_WEAK
@ GROUPDOC_WEAK
weakgroup
Definition: entry.h:192
QCString
This is an alternative implementation of QCString.
Definition: qcstring.h:108
Entry::EXPORTED_INTERFACE_SEC
@ EXPORTED_INTERFACE_SEC
Definition: entry.h:116
Entry::req
QCString req
C++20 requires clause
Definition: entry.h:301