memberdef.h
Go to the documentation of this file.
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 MEMBERDEF_H
19 #define MEMBERDEF_H
20 
21 #include <qlist.h>
22 #include <sys/types.h>
23 
24 #include "types.h"
25 #include "definition.h"
26 
27 class ClassDef;
28 class NamespaceDef;
29 class GroupDef;
30 class FileDef;
31 class MemberList;
32 class MemberGroup;
33 class ExampleSDict;
34 class OutputList;
35 class GroupDef;
36 class QTextStream;
37 class ArgumentList;
38 class MemberDefImpl;
39 class QStrList;
40 struct TagInfo;
41 
42 /** A model of a class/file/namespace member symbol. */
43 class MemberDef : public Definition
44 {
45  public:
46 
47  MemberDef(const char *defFileName,int defLine,int defColumn,
48  const char *type,const char *name,const char *args,
49  const char *excp,Protection prot,Specifier virt,bool stat,
50  Relationship related,MemberType t,const ArgumentList *tal,
51  const ArgumentList *al);
52  ~MemberDef();
53  DefType definitionType() const { return TypeMember; }
54  // move this member into a different scope
55  MemberDef *deepCopy() const;
56  void moveTo(Definition *);
57 
58  //-----------------------------------------------------------------------------------
59  // ---- getters -----
60  //-----------------------------------------------------------------------------------
61 
62  // link id
64  QCString getReference() const;
65  QCString anchor() const;
66 
67  const char *declaration() const;
68  const char *definition() const;
69  const char *typeString() const;
70  const char *argsString() const;
71  const char *excpString() const;
72  const char *bitfieldString() const;
73  const char *extraTypeChars() const;
74  const QCString &initializer() const;
75  int initializerLines() const;
79 
80  // scope query members
81  ClassDef *getClassDef() const;
82  FileDef *getFileDef() const;
84  ClassDef *accessorClass() const;
85 
86  // grabbing the property read/write accessor names
87  const char *getReadAccessor() const;
88  const char *getWriteAccessor() const;
89 
90  // querying the grouping definition
91  GroupDef *getGroupDef() const;
93  const char *getGroupFileName() const;
94  int getGroupStartLine() const;
95  bool getGroupHasDocs() const;
96  QCString qualifiedName() const;
97  QCString objCMethodName(bool localLink,bool showStatic) const;
98 
99  // direct kind info
100  Protection protection() const;
101  Specifier virtualness(int count=0) const;
102  MemberType memberType() const;
103  QCString memberTypeName() const;
104 
105  // getter methods
106  bool isSignal() const;
107  bool isSlot() const;
108  bool isVariable() const;
109  bool isEnumerate() const;
110  bool isEnumValue() const;
111  bool isTypedef() const;
112  bool isFunction() const;
113  bool isFunctionPtr() const;
114  bool isDefine() const;
115  bool isFriend() const;
116  bool isDCOP() const;
117  bool isProperty() const;
118  bool isEvent() const;
119  bool isRelated() const;
120  bool isForeign() const;
121  bool isStatic() const;
122  bool isInline() const;
123  bool isExplicit() const;
124  bool isMutable() const;
125  bool isGettable() const;
126  bool isPrivateGettable() const;
127  bool isProtectedGettable() const;
128  bool isSettable() const;
129  bool isPrivateSettable() const;
130  bool isProtectedSettable() const;
131  bool isReadable() const;
132  bool isWritable() const;
133  bool isAddable() const;
134  bool isRemovable() const;
135  bool isRaisable() const;
136  bool isFinal() const;
137  bool isAbstract() const;
138  bool isOverride() const;
139  bool isInitonly() const;
140  bool isOptional() const;
141  bool isRequired() const;
142  bool isNonAtomic() const;
143  bool isCopy() const;
144  bool isAssign() const;
145  bool isRetain() const;
146  bool isWeak() const;
147  bool isStrong() const;
148  bool isUnretained() const;
149  bool isNew() const;
150  bool isSealed() const;
151  bool isImplementation() const;
152  bool isExternal() const;
153  bool isAlias() const;
154  bool isDefault() const;
155  bool isDelete() const;
156  bool isNoExcept() const;
157  bool isAttribute() const; // UNO IDL attribute
158  bool isUNOProperty() const; // UNO IDL property
159  bool isReadonly() const;
160  bool isBound() const;
161  bool isConstrained() const;
162  bool isTransient() const;
163  bool isMaybeVoid() const;
164  bool isMaybeDefault() const;
165  bool isMaybeAmbiguous() const;
166  bool isPublished() const; // UNO IDL published
167  bool isTemplateSpecialization() const;
168  bool hasDocumentedParams() const;
169  bool hasDocumentedReturnType() const;
170  bool isObjCMethod() const;
171  bool isObjCProperty() const;
172  bool isConstructor() const;
173  bool isDestructor() const;
174  bool hasOneLineInitializer() const;
175  bool hasMultiLineInitializer() const;
176  bool protectionVisible() const;
177  bool showInCallGraph() const;
178  bool isStrongEnumValue() const;
179  bool livesInsideEnum() const;
180 
181  // derived getters
182  bool isFriendToHide() const;
183  bool isNotFriend() const;
184  bool isFunctionOrSignalSlot() const;
185  bool isRelatedOrFriend() const;
186 
187  // output info
188  bool isLinkableInProject() const;
189  bool isLinkable() const;
190  bool hasDocumentation() const; // overrides hasDocumentation in definition.h
191  //bool hasUserDocumentation() const; // overrides hasUserDocumentation
192  bool isDeleted() const;
193  bool isBriefSectionVisible() const;
194  bool isDetailedSectionVisible(bool inGroup,bool inFile) const;
195  bool isDetailedSectionLinkable() const;
196  bool isFriendClass() const;
197  bool isDocumentedFriendClass() const;
198 
199  MemberDef *reimplements() const;
200  MemberList *reimplementedBy() const;
201  bool isReimplementedBy(ClassDef *cd) const;
202 
203  //int inbodyLine() const;
204  //QCString inbodyFile() const;
205  //const QCString &inbodyDocumentation() const;
206 
207  ClassDef *relatedAlso() const;
208 
209  bool hasDocumentedEnumValues() const;
211  bool isDocsForDefinition() const;
212  MemberDef *getEnumScope() const;
213  MemberList *enumFieldList() const;
214  void setEnumBaseType(const QCString &type);
215  QCString enumBaseType() const;
216 
217  bool hasExamples();
218  ExampleSDict *getExamples() const;
219  bool isPrototype() const;
220 
221  // argument related members
222  ArgumentList *argumentList() const;
226 
227  // member group related members
228  int getMemberGroupId() const;
229  MemberGroup *getMemberGroup() const;
230 
231  bool fromAnonymousScope() const;
232  bool anonymousDeclShown() const;
234 
235  // callgraph related members
236  bool hasCallGraph() const;
237  bool hasCallerGraph() const;
238  bool visibleMemberGroup(bool hideNoHeader);
239 
240  MemberDef *templateMaster() const;
241  QCString getScopeString() const;
243 
244  // cached typedef functions
245  bool isTypedefValCached() const;
246  ClassDef *getCachedTypedefVal() const;
249 
250  MemberDef *memberDefinition() const;
251  MemberDef *memberDeclaration() const;
252  MemberDef *inheritsDocsFrom() const;
253  MemberDef *getGroupAlias() const;
254 
255  ClassDef *category() const;
256  MemberDef *categoryRelation() const;
257 
258  QCString displayName(bool=TRUE) const;
259  QCString getDeclType() const;
260  void getLabels(QStrList &sl,Definition *container) const;
261 
262  const ArgumentList *typeConstraints() const;
263 
264  // overrules
265  QCString documentation() const;
266  QCString briefDescription(bool abbr=FALSE) const;
267  QCString fieldType() const;
268  bool isReference() const;
269 
270 
271  //-----------------------------------------------------------------------------------
272  // ---- setters -----
273  //-----------------------------------------------------------------------------------
274 
275  // set functions
276  void setMemberType(MemberType t);
277  void setDefinition(const char *d);
278  void setFileDef(FileDef *fd);
279  void setAnchor();
280  void setProtection(Protection p);
283  void setInitializer(const char *i);
284  void setBitfields(const char *s);
285  void setMaxInitLines(int lines);
286  void setMemberClass(ClassDef *cd);
287  void setSectionList(Definition *d,MemberList *sl);
289  const QCString &fileName,int startLine,bool hasDocs,
290  MemberDef *member=0);
291  void setExplicitExternal(bool b);
292  void setReadAccessor(const char *r);
293  void setWriteAccessor(const char *w);
294  void setTemplateSpecialization(bool b);
295 
296  void makeRelated();
297  void makeForeign();
298  void setHasDocumentedParams(bool b);
299  void setHasDocumentedReturnType(bool b);
301  void setTagInfo(TagInfo *i);
302  void setArgsString(const char *as);
303 
304  // relation to other members
305  void setReimplements(MemberDef *md);
307 
308  // in-body documentation
309  //void setInbodyDocumentation(const char *docs,const char *file,int line);
310 
311  void setRelatedAlso(ClassDef *cd);
312 
313  // enumeration specific members
314  void insertEnumField(MemberDef *md);
315  void setEnumScope(MemberDef *md,bool livesInsideEnum=FALSE);
316  void setEnumClassScope(ClassDef *cd);
317  void setDocumentedEnumValues(bool value);
319 
320  // example related members
321  bool addExample(const char *anchor,const char *name,const char *file);
322 
323  // prototype related members
324  void setPrototype(bool p);
325 
326  // argument related members
327  void setArgumentList(ArgumentList *al);
331  void setType(const char *t);
332  void setAccessorType(ClassDef *cd,const char *t);
333 
334  // namespace related members
335  void setNamespace(NamespaceDef *nd);
336 
337  // member group related members
338  void setMemberGroup(MemberGroup *grp);
339  void setMemberGroupId(int id);
341 
342  // anonymous scope members
343  void setFromAnonymousScope(bool b);
345 
346  void enableCallGraph(bool e);
347  void enableCallerGraph(bool e);
348 
349  void setTemplateMaster(MemberDef *mt);
350  void addListReference(Definition *d);
351  void setDocsForDefinition(bool b);
352  void setGroupAlias(MemberDef *md);
353 
354  void cacheTypedefVal(ClassDef *val,const QCString &templSpec,const QCString &resolvedType);
356 
358 
359  // declaration <-> definition relation
360  void setMemberDefinition(MemberDef *md);
362 
363  void setAnonymousUsed();
364  void copyArgumentNames(MemberDef *bmd);
365 
366  void setCategory(ClassDef *);
368 
369  void setDocumentation(const char *d,const char *docFile,int docLine,bool stripWhiteSpace=TRUE);
370  void setBriefDescription(const char *b,const char *briefFile,int briefLine);
371  void setInbodyDocumentation(const char *d,const char *inbodyFile,int inbodyLine);
372 
373  void setHidden(bool b);
374 
375  //-----------------------------------------------------------------------------------
376  // --- actions ----
377  //-----------------------------------------------------------------------------------
378 
379  // output generation
380  void writeDeclaration(OutputList &ol,
381  ClassDef *cd,NamespaceDef *nd,FileDef *fd,GroupDef *gd,
382  bool inGroup, ClassDef *inheritFrom=0,const char *inheritId=0);
384  const char *scopeName,Definition *container,
385  bool inGroup,bool showEnumValues=FALSE,bool
386  showInline=FALSE);
387  void writeMemberDocSimple(OutputList &ol,Definition *container);
388  void writeEnumDeclaration(OutputList &typeDecl,
389  ClassDef *cd,NamespaceDef *nd,FileDef *fd,GroupDef *gd);
390  void writeTagFile(FTextStream &);
391  void warnIfUndocumented();
392 
394  ArgumentList *actualArgs);
395 
397 
398  bool visited;
399 
400  protected:
401  void flushToDisk() const;
402  void loadFromDisk() const;
403  private:
404  void lock() const;
405  void unlock() const;
406  void saveToDisk() const;
407  void makeResident() const;
409  void _computeIsConstructor();
410  void _computeIsDestructor();
411  void _writeGroupInclude(OutputList &ol,bool inGroup);
412  void _writeCallGraph(OutputList &ol);
413  void _writeCallerGraph(OutputList &ol);
414  void _writeReimplements(OutputList &ol);
416  void _writeExamples(OutputList &ol);
418  void _writeEnumValues(OutputList &ol,Definition *container,
419  const QCString &cfname,const QCString &ciname,
420  const QCString &cname);
422  void _writeTagData(const DefType);
423  void _addToSearchIndex();
424 
425  static int s_indentLevel;
426  // disable copying of member defs
427  MemberDef(const MemberDef &);
428  MemberDef &operator=(const MemberDef &);
429 
430  void writeLink(OutputList &ol,
431  ClassDef *cd,NamespaceDef *nd,FileDef *fd,GroupDef *gd,
432  bool onlyText=FALSE);
433 
435  uchar m_isLinkableCached; // 0 = not cached, 1=FALSE, 2=TRUE
436  uchar m_isConstructorCached; // 0 = not cached, 1=FALSE, 2=TRUE
437  uchar m_isDestructorCached; // 0 = not cached, 1=FALSE, 2=TRUE
438 };
439 
441 
442 #endif
bool isFinal() const
Definition: memberdef.cpp:4280
bool isMaybeAmbiguous() const
Definition: memberdef.cpp:4422
void lock() const
bool anonymousDeclShown() const
Definition: memberdef.cpp:4547
bool isReadable() const
Definition: memberdef.cpp:4270
bool isAddable() const
Definition: memberdef.cpp:4255
void setArgumentList(ArgumentList *al)
Definition: memberdef.cpp:3876
QCString docFile() const
bool isProperty() const
Definition: memberdef.cpp:4185
void setMemberType(MemberType t)
Definition: memberdef.cpp:4613
bool isDocsForDefinition() const
Definition: memberdef.cpp:4482
void findSectionsInDocumentation()
Definition: memberdef.cpp:3918
void setRelatedAlso(ClassDef *cd)
Definition: memberdef.cpp:4713
void setType(const char *t)
Definition: memberdef.cpp:3902
void writeDocumentation(MemberList *ml, OutputList &ol, const char *scopeName, Definition *container, bool inGroup, bool showEnumValues=FALSE, bool showInline=FALSE)
Definition: memberdef.cpp:2526
bool isOptional() const
Definition: memberdef.cpp:4310
bool isDetailedSectionVisible(bool inGroup, bool inFile) const
Definition: memberdef.cpp:1920
bool isBound() const
Definition: memberdef.cpp:4397
void setDefinition(const char *d)
Definition: memberdef.cpp:4619
void insertEnumField(MemberDef *md)
Definition: memberdef.cpp:909
This class represents an function or template argument list.
Definition: arguments.h:82
bool isTypedefValCached() const
Definition: memberdef.cpp:4572
This file contains a number of basic enums and types.
void setFromAnonymousMember(MemberDef *m)
Definition: memberdef.cpp:4755
void setEnumBaseType(const QCString &type)
Definition: memberdef.cpp:4816
bool isMutable() const
Definition: memberdef.cpp:4220
void setReimplements(MemberDef *md)
Definition: memberdef.cpp:860
MemberDef * reimplements() const
Definition: memberdef.cpp:878
bool isCopy() const
Definition: memberdef.cpp:4325
bool isFunctionPtr() const
Definition: memberdef.cpp:4165
bool hasMultiLineInitializer() const
Definition: memberdef.cpp:3460
void setMemberDefinition(MemberDef *md)
Definition: memberdef.cpp:4786
void setHasDocumentedReturnType(bool b)
Definition: memberdef.cpp:4698
MemberList * reimplementedBy() const
Definition: memberdef.cpp:883
void setFromAnonymousScope(bool b)
Definition: memberdef.cpp:4750
bool isWeak() const
Definition: memberdef.cpp:4340
void writeTagFile(FTextStream &)
Definition: memberdef.cpp:3580
bool isReference() const
Definition: memberdef.cpp:5127
QCString getReference() const
Definition: memberdef.cpp:1001
void setTagInfo(TagInfo *i)
Definition: memberdef.cpp:3992
bool hasDocumentation() const
Definition: memberdef.cpp:3274
bool isFriend() const
Definition: memberdef.cpp:4175
void _writeTagData(const DefType)
Grouping::GroupPri_t getGroupPri() const
Definition: memberdef.cpp:4100
MemberList * getSectionList(Definition *d) const
Definition: memberdef.cpp:3541
bool livesInsideEnum() const
Definition: memberdef.cpp:4492
void _writeCategoryRelation(OutputList &ol)
Definition: memberdef.cpp:2240
void makeRelated()
Definition: memberdef.cpp:4681
void insertReimplementedBy(MemberDef *md)
Definition: memberdef.cpp:865
uchar m_isConstructorCached
Definition: memberdef.h:436
bool isEvent() const
Definition: memberdef.cpp:4190
bool isUNOProperty() const
Definition: memberdef.cpp:4387
ClassDef * accessorClass() const
Definition: memberdef.cpp:3913
void _writeCallerGraph(OutputList &ol)
Definition: memberdef.cpp:2081
bool visibleMemberGroup(bool hideNoHeader)
Definition: memberdef.cpp:3295
bool isNonAtomic() const
Definition: memberdef.cpp:4320
void setMemberGroup(MemberGroup *grp)
Definition: memberdef.cpp:3290
Protection protection() const
Definition: memberdef.cpp:4120
bool isPrototype() const
Definition: memberdef.cpp:4507
bool visited
Definition: memberdef.h:398
const char * bitfieldString() const
Definition: memberdef.cpp:4050
void setAnchor()
Definition: memberdef.cpp:3334
void setTemplateSpecialization(bool b)
Definition: memberdef.cpp:4676
bool isRequired() const
Definition: memberdef.cpp:4315
void enableCallGraph(bool e)
Definition: memberdef.cpp:3923
bool fromAnonymousScope() const
Definition: memberdef.cpp:4542
const bool FALSE
Definition: qglobal.h:370
bool isTemplateSpecialization() const
Definition: memberdef.cpp:4443
MemberDef * templateMaster() const
Definition: memberdef.cpp:4567
bool protectionVisible() const
MemberList * enumFieldList() const
Definition: memberdef.cpp:4497
bool isLinkableInProject() const
Definition: memberdef.cpp:1150
void addListReference(Definition *d)
Definition: memberdef.cpp:3481
void setMemberGroupId(int id)
Definition: memberdef.cpp:4740
GroupPri_t
Definition: types.h:64
uchar m_isDestructorCached
Definition: memberdef.h:437
void setNamespace(NamespaceDef *nd)
Definition: memberdef.cpp:3400
void enableCallerGraph(bool e)
Definition: memberdef.cpp:3929
Definition: entry.h:50
MemberType
Definition: types.h:195
bool isDefine() const
Definition: memberdef.cpp:4170
void setArgsString(const char *as)
Definition: memberdef.cpp:4708
int briefLine() const
void setPrototype(bool p)
Definition: memberdef.cpp:4735
bool isSignal() const
Definition: memberdef.cpp:4130
void writeLink(OutputList &ol, ClassDef *cd, NamespaceDef *nd, FileDef *fd, GroupDef *gd, bool onlyText=FALSE)
Definition: memberdef.cpp:1183
Simplified and optimized version of QTextStream.
Definition: ftextstream.h:11
bool isSlot() const
Definition: memberdef.cpp:4135
bool isImplementation() const
Definition: memberdef.cpp:4433
bool isFunctionOrSignalSlot() const
Definition: memberdef.cpp:5117
bool isVariable() const
Definition: memberdef.cpp:4140
void setReadAccessor(const char *r)
Definition: memberdef.cpp:4666
bool isAbstract() const
Definition: memberdef.cpp:4305
void _writeEnumValues(OutputList &ol, Definition *container, const QCString &cfname, const QCString &ciname, const QCString &cname)
Definition: memberdef.cpp:2314
MemberDef * getGroupAlias() const
Definition: memberdef.cpp:4608
bool hasCallerGraph() const
Definition: memberdef.cpp:4562
bool isInline() const
Definition: memberdef.cpp:4210
static QCString args
Definition: declinfo.cpp:674
bool isObjCProperty() const
Definition: memberdef.cpp:3962
void setInheritsDocsFrom(MemberDef *md)
Definition: memberdef.cpp:4703
void _writeReimplementedBy(OutputList &ol)
Definition: memberdef.cpp:2165
MemberDef * memberDefinition() const
Definition: memberdef.cpp:4593
ArgumentList * declArgumentList() const
Definition: memberdef.cpp:4517
bool isUnretained() const
Definition: memberdef.cpp:4357
void setExplicitExternal(bool b)
Definition: memberdef.cpp:4661
unsigned char uchar
Definition: nybbler.cc:11
void _writeExamples(OutputList &ol)
Definition: memberdef.cpp:2293
void invalidateTypedefValCache()
Definition: memberdef.cpp:4781
bool isNotFriend() const
Definition: memberdef.cpp:5112
void warnIfUndocumented()
Definition: memberdef.cpp:3210
bool isDocumentedFriendClass() const
Definition: memberdef.cpp:3259
bool isBriefSectionVisible() const
Definition: memberdef.cpp:1289
bool hasCallGraph() const
Definition: memberdef.cpp:4557
void setHasDocumentedParams(bool b)
Definition: memberdef.cpp:4693
void mergeMemberSpecifiers(uint64 s)
Definition: memberdef.cpp:4643
QCString displayDefinition() const
Definition: memberdef.cpp:2403
FileDef * getFileDef() const
Definition: memberdef.cpp:4075
Relationship
Definition: types.h:38
bool isDeleted() const
Definition: memberdef.cpp:3269
QCString displayName(bool=TRUE) const
Definition: memberdef.cpp:4887
void setBitfields(const char *s)
Definition: memberdef.cpp:4648
void setGroupAlias(MemberDef *md)
Definition: memberdef.cpp:4776
Specifier virtualness(int count=0) const
Definition: memberdef.cpp:3560
bool isExplicit() const
Definition: memberdef.cpp:4215
const char * typeString() const
Definition: memberdef.cpp:4035
void setDefinitionTemplateParameterLists(QList< ArgumentList > *lists)
Definition: memberdef.cpp:1174
void makeImplementationDetail()
Definition: memberdef.cpp:4745
bool isNew() const
Definition: memberdef.cpp:4285
void copyArgumentNames(MemberDef *bmd)
Definition: memberdef.cpp:4836
static constexpr double as
Definition: Units.h:101
MemberDef * getEnumScope() const
Definition: memberdef.cpp:4487
const QCString & name() const
Definition: definition.h:114
void _computeIsDestructor()
Definition: memberdef.cpp:3714
bool isDetailedSectionLinkable() const
Definition: memberdef.cpp:1852
const double e
MemberDef * createTemplateInstanceMember(ArgumentList *formalArgs, ArgumentList *actualArgs)
Definition: memberdef.cpp:3406
bool isEnumValue() const
Definition: memberdef.cpp:4150
QCString inbodyFile() const
fileName
Definition: dumpTree.py:9
QCString getCachedTypedefTemplSpec() const
Definition: memberdef.cpp:4582
ClassDef * category() const
Definition: memberdef.cpp:4796
QCString getScopeString() const
Definition: memberdef.cpp:3301
bool isRemovable() const
Definition: memberdef.cpp:4260
void setDocumentation(const char *d, const char *docFile, int docLine, bool stripWhiteSpace=TRUE)
Definition: memberdef.cpp:1126
void setInbodyDocumentation(const char *d, const char *inbodyFile, int inbodyLine)
Definition: memberdef.cpp:1138
void setMemberClass(ClassDef *cd)
Definition: memberdef.cpp:3392
QCString briefDescription(bool abbr=FALSE) const
Definition: memberdef.cpp:5073
void moveTo(Definition *)
Definition: memberdef.cpp:832
ClassDef * relatedAlso() const
Definition: memberdef.cpp:4467
const char * getWriteAccessor() const
Definition: memberdef.cpp:4090
static int s_indentLevel
Definition: memberdef.h:425
MemberDef * inheritsDocsFrom() const
Definition: memberdef.cpp:4603
bool isForeign() const
Definition: memberdef.cpp:4200
Specifier
Definition: types.h:29
QList< ArgumentList > * definitionTemplateParameterLists() const
Definition: memberdef.cpp:4527
void setTemplateMaster(MemberDef *mt)
Definition: memberdef.cpp:4765
bool isWritable() const
Definition: memberdef.cpp:4275
bool isAssign() const
Definition: memberdef.cpp:4330
void loadFromDisk() const
p
Definition: test.py:223
bool isConstructor() const
Definition: memberdef.cpp:3702
bool isSettable() const
Definition: memberdef.cpp:4240
bool isFriendClass() const
Definition: memberdef.cpp:3252
void setProtection(Protection p)
Definition: memberdef.cpp:4632
void _writeReimplements(OutputList &ol)
Definition: memberdef.cpp:2106
bool isInitonly() const
Definition: memberdef.cpp:4300
bool isPublished() const
Definition: memberdef.cpp:4427
bool isConstrained() const
Definition: memberdef.cpp:4402
QCString anchor() const
Definition: memberdef.cpp:1031
MemberDef & operator=(const MemberDef &)
void setAccessorType(ClassDef *cd, const char *t)
Definition: memberdef.cpp:3907
bool isGettable() const
Definition: memberdef.cpp:4225
bool isStrong() const
Definition: memberdef.cpp:4345
bool isStrongEnumValue() const
Definition: memberdef.cpp:4350
const char * definition() const
Definition: memberdef.cpp:4025
ClassDef * getClassDef() const
Definition: memberdef.cpp:4070
bool isPrivateGettable() const
Definition: memberdef.cpp:4230
void setSectionList(Definition *d, MemberList *sl)
Definition: memberdef.cpp:3548
bool isDefault() const
Definition: memberdef.cpp:4367
QCString briefFile() const
MemberDef * categoryRelation() const
Definition: memberdef.cpp:4806
bool isObjCMethod() const
Definition: memberdef.cpp:3956
uint64 getMemberSpecifiers() const
Definition: memberdef.cpp:4065
bool isDelete() const
Definition: memberdef.cpp:4372
void setAnonymousEnumType(MemberDef *md)
Definition: memberdef.cpp:4730
void writeMemberDocSimple(OutputList &ol, Definition *container)
Definition: memberdef.cpp:3096
void makeForeign()
Definition: memberdef.cpp:4687
ClassDef * getCachedTypedefVal() const
Definition: memberdef.cpp:4577
MemberDef * fromAnonymousMember() const
Definition: memberdef.cpp:4760
void _writeGroupInclude(OutputList &ol, bool inGroup)
Definition: memberdef.cpp:2482
bool hasDocumentedReturnType() const
Definition: memberdef.cpp:4453
bool isReadonly() const
Definition: memberdef.cpp:4392
MemberType memberType() const
Definition: memberdef.cpp:4125
int inbodyLine() const
const char * declaration() const
Definition: memberdef.cpp:4020
void setTypeConstraints(ArgumentList *al)
Definition: memberdef.cpp:3888
void flushToDisk() const
bool isFriendToHide() const
Definition: memberdef.cpp:5102
void setDocumentedEnumValues(bool value)
Definition: memberdef.cpp:4725
void setDocsForDefinition(bool b)
Definition: memberdef.cpp:4771
bool hasDocumentedParams() const
Definition: memberdef.cpp:4448
void setMemberSpecifiers(uint64 s)
Definition: memberdef.cpp:4638
TFile * inFile
Definition: makeDST.cxx:36
The QTextStream class provides basic functions for reading and writing text using a QIODevice...
Definition: qtextstream.h:53
bool hasOneLineInitializer() const
Definition: memberdef.cpp:3451
const char * getGroupFileName() const
Definition: memberdef.cpp:4105
bool hasExamples()
Definition: memberdef.cpp:933
void writeEnumDeclaration(OutputList &typeDecl, ClassDef *cd, NamespaceDef *nd, FileDef *fd, GroupDef *gd)
Definition: memberdef.cpp:3754
MemberGroup * getMemberGroup() const
Definition: memberdef.cpp:4537
void setCategory(ClassDef *)
Definition: memberdef.cpp:4801
QCString documentation() const
Definition: memberdef.cpp:5085
bool isMaybeVoid() const
Definition: memberdef.cpp:4412
GroupDef * getGroupDef() const
Definition: memberdef.cpp:4095
void unlock() const
void makeResident() const
void _writeTypeConstraints(OutputList &ol)
Definition: memberdef.cpp:2306
ArgumentList * argumentList() const
Definition: memberdef.cpp:4512
static Specifier virt
bool showInCallGraph() const
Definition: memberdef.cpp:4458
const char * getReadAccessor() const
Definition: memberdef.cpp:4085
MemberDef * deepCopy() const
Definition: memberdef.cpp:758
MemberDef * memberDeclaration() const
Definition: memberdef.cpp:4598
void _addToSearchIndex()
Definition: memberdef.cpp:4892
void setMaxInitLines(int lines)
Definition: memberdef.cpp:4653
QCString qualifiedName() const
Definition: memberdef.cpp:3968
int initializerLines() const
Definition: memberdef.cpp:4060
bool isAlias() const
Definition: memberdef.cpp:4362
const char * extraTypeChars() const
Definition: memberdef.cpp:4030
bool isOverride() const
Definition: memberdef.cpp:4295
int getMemberGroupId() const
Definition: memberdef.cpp:4532
bool isRetain() const
Definition: memberdef.cpp:4335
QCString getCachedResolvedTypedef() const
Definition: memberdef.cpp:4587
const QCString & initializer() const
Definition: memberdef.cpp:4055
DefType definitionType() const
Definition: memberdef.h:53
const char * excpString() const
Definition: memberdef.cpp:4045
QCString objCMethodName(bool localLink, bool showStatic) const
Definition: memberdef.cpp:4003
bool isDCOP() const
Definition: memberdef.cpp:4180
MemberDef * getAnonymousEnumType() const
Definition: memberdef.cpp:4477
void setEnumScope(MemberDef *md, bool livesInsideEnum=FALSE)
Definition: memberdef.cpp:3377
void setInitializer(const char *i)
Definition: memberdef.cpp:3470
void setMemberDeclaration(MemberDef *md)
Definition: memberdef.cpp:4791
QCString getDeclType() const
Definition: memberdef.cpp:1383
QCString fieldType() const
Definition: memberdef.cpp:3084
QCString getOutputFileBase() const
Definition: memberdef.cpp:941
const ArgumentList * typeConstraints() const
Definition: memberdef.cpp:5097
void combineDeclarationAndDefinition(MemberDef *mdec, MemberDef *mdef)
Definition: memberdef.cpp:4946
void setAnonymousUsed()
Definition: memberdef.cpp:4552
void setEnumClassScope(ClassDef *cd)
Definition: memberdef.cpp:4718
void cacheTypedefVal(ClassDef *val, const QCString &templSpec, const QCString &resolvedType)
Definition: memberdef.cpp:4827
ClassDef * getClassDefOfAnonymousType()
Definition: memberdef.cpp:1236
void setDeclArgumentList(ArgumentList *al)
Definition: memberdef.cpp:3882
static bool * b
Definition: config.cpp:1043
bool isPrivateSettable() const
Definition: memberdef.cpp:4245
bool isMaybeDefault() const
Definition: memberdef.cpp:4417
void invalidateCachedArgumentTypes()
Definition: memberdef.cpp:4879
NamespaceDef * getNamespaceDef() const
Definition: memberdef.cpp:4080
Protection
Definition: types.h:26
int getGroupStartLine() const
Definition: memberdef.cpp:4110
MemberDefImpl * m_impl
Definition: memberdef.h:434
QCString memberTypeName() const
Definition: memberdef.cpp:3188
bool isReimplementedBy(ClassDef *cd) const
Definition: memberdef.cpp:888
bool isFunction() const
Definition: memberdef.cpp:4160
QCString enumBaseType() const
Definition: memberdef.cpp:4821
bool hasDocumentedEnumValues() const
Definition: memberdef.cpp:4472
bool addExample(const char *anchor, const char *name, const char *file)
Definition: memberdef.cpp:915
void setGroupDef(GroupDef *gd, Grouping::GroupPri_t pri, const QCString &fileName, int startLine, bool hasDocs, MemberDef *member=0)
Definition: memberdef.cpp:3363
void setHidden(bool b)
Definition: memberdef.cpp:1144
bool isRelated() const
Definition: memberdef.cpp:4195
int docLine() const
void setWriteAccessor(const char *w)
Definition: memberdef.cpp:4671
const char * argsString() const
Definition: memberdef.cpp:4040
bool isSealed() const
Definition: memberdef.cpp:4290
bool isStatic() const
Definition: memberdef.cpp:4205
void setFileDef(FileDef *fd)
Definition: memberdef.cpp:4624
void _computeLinkableInProject()
Definition: memberdef.cpp:1054
unsigned long long uint64
Definition: qglobal.h:361
bool isTypedef() const
Definition: memberdef.cpp:4155
bool isExternal() const
Definition: memberdef.cpp:4438
void saveToDisk() const
bool isRaisable() const
Definition: memberdef.cpp:4265
bool isLinkable() const
Definition: memberdef.cpp:1161
void setBriefDescription(const char *b, const char *briefFile, int briefLine)
Definition: memberdef.cpp:1132
void _computeIsConstructor()
Definition: memberdef.cpp:3659
static QCString * s
Definition: config.cpp:1042
bool isRelatedOrFriend() const
Definition: memberdef.cpp:5122
const bool TRUE
Definition: qglobal.h:371
void getLabels(QStrList &sl, Definition *container) const
Definition: memberdef.cpp:1938
bool isTransient() const
Definition: memberdef.cpp:4407
ExampleSDict * getExamples() const
Definition: memberdef.cpp:4502
uchar m_isLinkableCached
Definition: memberdef.h:435
bool isProtectedSettable() const
Definition: memberdef.cpp:4250
bool isAttribute() const
Definition: memberdef.cpp:4382
bool isEnumerate() const
Definition: memberdef.cpp:4145
void writeDeclaration(OutputList &ol, ClassDef *cd, NamespaceDef *nd, FileDef *fd, GroupDef *gd, bool inGroup, ClassDef *inheritFrom=0, const char *inheritId=0)
Definition: memberdef.cpp:1411
bool isNoExcept() const
Definition: memberdef.cpp:4377
HLTPathStatus const excp
ArgumentList * templateArguments() const
Definition: memberdef.cpp:4522
bool isDestructor() const
Definition: memberdef.cpp:3743
MemberDef(const char *defFileName, int defLine, int defColumn, const char *type, const char *name, const char *args, const char *excp, Protection prot, Specifier virt, bool stat, Relationship related, MemberType t, const ArgumentList *tal, const ArgumentList *al)
Definition: memberdef.cpp:736
bool getGroupHasDocs() const
Definition: memberdef.cpp:4115
bool isProtectedGettable() const
Definition: memberdef.cpp:4235
void setCategoryRelation(MemberDef *)
Definition: memberdef.cpp:4811
void _writeCallGraph(OutputList &ol)
Definition: memberdef.cpp:2055