|
Packit |
1c1d7e |
/******************************************************************************
|
|
Packit |
1c1d7e |
*
|
|
Packit |
1c1d7e |
*
|
|
Packit |
1c1d7e |
*
|
|
Packit |
1c1d7e |
* Copyright (C) 1997-2015 by Dimitri van Heesch.
|
|
Packit |
1c1d7e |
*
|
|
Packit |
1c1d7e |
* Permission to use, copy, modify, and distribute this software and its
|
|
Packit |
1c1d7e |
* documentation under the terms of the GNU General Public License is hereby
|
|
Packit |
1c1d7e |
* granted. No representations are made about the suitability of this software
|
|
Packit |
1c1d7e |
* for any purpose. It is provided "as is" without express or implied warranty.
|
|
Packit |
1c1d7e |
* See the GNU General Public License for more details.
|
|
Packit |
1c1d7e |
*
|
|
Packit |
1c1d7e |
* Documents produced by Doxygen are derivative works derived from the
|
|
Packit |
1c1d7e |
* input used in their production; they are not affected by this license.
|
|
Packit |
1c1d7e |
*
|
|
Packit |
1c1d7e |
*/
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
#ifndef MEMBERDEF_H
|
|
Packit |
1c1d7e |
#define MEMBERDEF_H
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
#include <qlist.h>
|
|
Packit |
1c1d7e |
#include <sys/types.h>
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
#include "types.h"
|
|
Packit |
1c1d7e |
#include "definition.h"
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
class ClassDef;
|
|
Packit |
1c1d7e |
class NamespaceDef;
|
|
Packit |
1c1d7e |
class GroupDef;
|
|
Packit |
1c1d7e |
class FileDef;
|
|
Packit |
1c1d7e |
class MemberList;
|
|
Packit |
1c1d7e |
class MemberGroup;
|
|
Packit |
1c1d7e |
class ExampleSDict;
|
|
Packit |
1c1d7e |
class OutputList;
|
|
Packit |
1c1d7e |
class GroupDef;
|
|
Packit |
1c1d7e |
class QTextStream;
|
|
Packit |
1c1d7e |
class ArgumentList;
|
|
Packit |
1c1d7e |
class MemberDefImpl;
|
|
Packit |
1c1d7e |
class QStrList;
|
|
Packit |
1c1d7e |
struct TagInfo;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
/** A model of a class/file/namespace member symbol. */
|
|
Packit |
1c1d7e |
class MemberDef : public Definition
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
public:
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
MemberDef(const char *defFileName,int defLine,int defColumn,
|
|
Packit |
1c1d7e |
const char *type,const char *name,const char *args,
|
|
Packit |
1c1d7e |
const char *excp,Protection prot,Specifier virt,bool stat,
|
|
Packit |
1c1d7e |
Relationship related,MemberType t,const ArgumentList *tal,
|
|
Packit |
1c1d7e |
const ArgumentList *al);
|
|
Packit |
1c1d7e |
~MemberDef();
|
|
Packit |
1c1d7e |
DefType definitionType() const { return TypeMember; }
|
|
Packit |
1c1d7e |
// move this member into a different scope
|
|
Packit |
1c1d7e |
MemberDef *deepCopy() const;
|
|
Packit |
1c1d7e |
void moveTo(Definition *);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//-----------------------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// ---- getters -----
|
|
Packit |
1c1d7e |
//-----------------------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// link id
|
|
Packit |
1c1d7e |
QCString getOutputFileBase() const;
|
|
Packit |
1c1d7e |
QCString getReference() const;
|
|
Packit |
1c1d7e |
QCString anchor() const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
const char *declaration() const;
|
|
Packit |
1c1d7e |
const char *definition() const;
|
|
Packit |
1c1d7e |
const char *typeString() const;
|
|
Packit |
1c1d7e |
const char *argsString() const;
|
|
Packit |
1c1d7e |
const char *excpString() const;
|
|
Packit |
1c1d7e |
const char *bitfieldString() const;
|
|
Packit |
1c1d7e |
const char *extraTypeChars() const;
|
|
Packit |
1c1d7e |
const QCString &initializer() const;
|
|
Packit |
1c1d7e |
int initializerLines() const;
|
|
Packit |
1c1d7e |
uint64 getMemberSpecifiers() const;
|
|
Packit |
1c1d7e |
MemberList *getSectionList(Definition *d) const;
|
|
Packit |
1c1d7e |
QCString displayDefinition() const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// scope query members
|
|
Packit |
1c1d7e |
ClassDef *getClassDef() const;
|
|
Packit |
1c1d7e |
FileDef *getFileDef() const;
|
|
Packit |
1c1d7e |
NamespaceDef* getNamespaceDef() const;
|
|
Packit |
1c1d7e |
ClassDef *accessorClass() const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// grabbing the property read/write accessor names
|
|
Packit |
1c1d7e |
const char *getReadAccessor() const;
|
|
Packit |
1c1d7e |
const char *getWriteAccessor() const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// querying the grouping definition
|
|
Packit |
1c1d7e |
GroupDef *getGroupDef() const;
|
|
Packit |
1c1d7e |
Grouping::GroupPri_t getGroupPri() const;
|
|
Packit |
1c1d7e |
const char *getGroupFileName() const;
|
|
Packit |
1c1d7e |
int getGroupStartLine() const;
|
|
Packit |
1c1d7e |
bool getGroupHasDocs() const;
|
|
Packit |
1c1d7e |
QCString qualifiedName() const;
|
|
Packit |
1c1d7e |
QCString objCMethodName(bool localLink,bool showStatic) const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// direct kind info
|
|
Packit |
1c1d7e |
Protection protection() const;
|
|
Packit |
1c1d7e |
Specifier virtualness(int count=0) const;
|
|
Packit |
1c1d7e |
MemberType memberType() const;
|
|
Packit |
1c1d7e |
QCString memberTypeName() const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// getter methods
|
|
Packit |
1c1d7e |
bool isSignal() const;
|
|
Packit |
1c1d7e |
bool isSlot() const;
|
|
Packit |
1c1d7e |
bool isVariable() const;
|
|
Packit |
1c1d7e |
bool isEnumerate() const;
|
|
Packit |
1c1d7e |
bool isEnumValue() const;
|
|
Packit |
1c1d7e |
bool isTypedef() const;
|
|
Packit |
1c1d7e |
bool isFunction() const;
|
|
Packit |
1c1d7e |
bool isFunctionPtr() const;
|
|
Packit |
1c1d7e |
bool isDefine() const;
|
|
Packit |
1c1d7e |
bool isFriend() const;
|
|
Packit |
1c1d7e |
bool isDCOP() const;
|
|
Packit |
1c1d7e |
bool isProperty() const;
|
|
Packit |
1c1d7e |
bool isEvent() const;
|
|
Packit |
1c1d7e |
bool isRelated() const;
|
|
Packit |
1c1d7e |
bool isForeign() const;
|
|
Packit |
1c1d7e |
bool isStatic() const;
|
|
Packit |
1c1d7e |
bool isInline() const;
|
|
Packit |
1c1d7e |
bool isExplicit() const;
|
|
Packit |
1c1d7e |
bool isMutable() const;
|
|
Packit |
1c1d7e |
bool isGettable() const;
|
|
Packit |
1c1d7e |
bool isPrivateGettable() const;
|
|
Packit |
1c1d7e |
bool isProtectedGettable() const;
|
|
Packit |
1c1d7e |
bool isSettable() const;
|
|
Packit |
1c1d7e |
bool isPrivateSettable() const;
|
|
Packit |
1c1d7e |
bool isProtectedSettable() const;
|
|
Packit |
1c1d7e |
bool isReadable() const;
|
|
Packit |
1c1d7e |
bool isWritable() const;
|
|
Packit |
1c1d7e |
bool isAddable() const;
|
|
Packit |
1c1d7e |
bool isRemovable() const;
|
|
Packit |
1c1d7e |
bool isRaisable() const;
|
|
Packit |
1c1d7e |
bool isFinal() const;
|
|
Packit |
1c1d7e |
bool isAbstract() const;
|
|
Packit |
1c1d7e |
bool isOverride() const;
|
|
Packit |
1c1d7e |
bool isInitonly() const;
|
|
Packit |
1c1d7e |
bool isOptional() const;
|
|
Packit |
1c1d7e |
bool isRequired() const;
|
|
Packit |
1c1d7e |
bool isNonAtomic() const;
|
|
Packit |
1c1d7e |
bool isCopy() const;
|
|
Packit |
1c1d7e |
bool isAssign() const;
|
|
Packit |
1c1d7e |
bool isRetain() const;
|
|
Packit |
1c1d7e |
bool isWeak() const;
|
|
Packit |
1c1d7e |
bool isStrong() const;
|
|
Packit |
1c1d7e |
bool isUnretained() const;
|
|
Packit |
1c1d7e |
bool isNew() const;
|
|
Packit |
1c1d7e |
bool isSealed() const;
|
|
Packit |
1c1d7e |
bool isImplementation() const;
|
|
Packit |
1c1d7e |
bool isExternal() const;
|
|
Packit |
1c1d7e |
bool isAlias() const;
|
|
Packit |
1c1d7e |
bool isDefault() const;
|
|
Packit |
1c1d7e |
bool isDelete() const;
|
|
Packit |
1c1d7e |
bool isNoExcept() const;
|
|
Packit |
1c1d7e |
bool isAttribute() const; // UNO IDL attribute
|
|
Packit |
1c1d7e |
bool isUNOProperty() const; // UNO IDL property
|
|
Packit |
1c1d7e |
bool isReadonly() const;
|
|
Packit |
1c1d7e |
bool isBound() const;
|
|
Packit |
1c1d7e |
bool isConstrained() const;
|
|
Packit |
1c1d7e |
bool isTransient() const;
|
|
Packit |
1c1d7e |
bool isMaybeVoid() const;
|
|
Packit |
1c1d7e |
bool isMaybeDefault() const;
|
|
Packit |
1c1d7e |
bool isMaybeAmbiguous() const;
|
|
Packit |
1c1d7e |
bool isPublished() const; // UNO IDL published
|
|
Packit |
1c1d7e |
bool isTemplateSpecialization() const;
|
|
Packit |
1c1d7e |
bool hasDocumentedParams() const;
|
|
Packit |
1c1d7e |
bool hasDocumentedReturnType() const;
|
|
Packit |
1c1d7e |
bool isObjCMethod() const;
|
|
Packit |
1c1d7e |
bool isObjCProperty() const;
|
|
Packit |
1c1d7e |
bool isConstructor() const;
|
|
Packit |
1c1d7e |
bool isDestructor() const;
|
|
Packit |
1c1d7e |
bool hasOneLineInitializer() const;
|
|
Packit |
1c1d7e |
bool hasMultiLineInitializer() const;
|
|
Packit |
1c1d7e |
bool protectionVisible() const;
|
|
Packit |
1c1d7e |
bool showInCallGraph() const;
|
|
Packit |
1c1d7e |
bool isStrongEnumValue() const;
|
|
Packit |
1c1d7e |
bool livesInsideEnum() const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
int numberOfFlowKeyWords();
|
|
Packit |
1c1d7e |
// derived getters
|
|
Packit |
1c1d7e |
bool isFriendToHide() const;
|
|
Packit |
1c1d7e |
bool isNotFriend() const;
|
|
Packit |
1c1d7e |
bool isFunctionOrSignalSlot() const;
|
|
Packit |
1c1d7e |
bool isRelatedOrFriend() const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// output info
|
|
Packit |
1c1d7e |
bool isLinkableInProject() const;
|
|
Packit |
1c1d7e |
bool isLinkable() const;
|
|
Packit |
1c1d7e |
bool hasDocumentation() const; // overrides hasDocumentation in definition.h
|
|
Packit |
1c1d7e |
//bool hasUserDocumentation() const; // overrides hasUserDocumentation
|
|
Packit |
1c1d7e |
bool isDeleted() const;
|
|
Packit |
1c1d7e |
bool isBriefSectionVisible() const;
|
|
Packit |
1c1d7e |
bool isDetailedSectionVisible(bool inGroup,bool inFile) const;
|
|
Packit |
1c1d7e |
bool isDetailedSectionLinkable() const;
|
|
Packit |
1c1d7e |
bool isFriendClass() const;
|
|
Packit |
1c1d7e |
bool isDocumentedFriendClass() const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
MemberDef *reimplements() const;
|
|
Packit |
1c1d7e |
MemberList *reimplementedBy() const;
|
|
Packit |
1c1d7e |
bool isReimplementedBy(ClassDef *cd) const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//int inbodyLine() const;
|
|
Packit |
1c1d7e |
//QCString inbodyFile() const;
|
|
Packit |
1c1d7e |
//const QCString &inbodyDocumentation() const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
ClassDef *relatedAlso() const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
bool hasDocumentedEnumValues() const;
|
|
Packit |
1c1d7e |
MemberDef *getAnonymousEnumType() const;
|
|
Packit |
1c1d7e |
bool isDocsForDefinition() const;
|
|
Packit |
1c1d7e |
MemberDef *getEnumScope() const;
|
|
Packit |
1c1d7e |
MemberList *enumFieldList() const;
|
|
Packit |
1c1d7e |
void setEnumBaseType(const QCString &type);
|
|
Packit |
1c1d7e |
QCString enumBaseType() const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
bool hasExamples();
|
|
Packit |
1c1d7e |
ExampleSDict *getExamples() const;
|
|
Packit |
1c1d7e |
bool isPrototype() const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// argument related members
|
|
Packit |
1c1d7e |
ArgumentList *argumentList() const;
|
|
Packit |
1c1d7e |
ArgumentList *declArgumentList() const;
|
|
Packit |
1c1d7e |
ArgumentList *templateArguments() const;
|
|
Packit |
1c1d7e |
QList<ArgumentList> *definitionTemplateParameterLists() const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// member group related members
|
|
Packit |
1c1d7e |
int getMemberGroupId() const;
|
|
Packit |
1c1d7e |
MemberGroup *getMemberGroup() const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
bool fromAnonymousScope() const;
|
|
Packit |
1c1d7e |
bool anonymousDeclShown() const;
|
|
Packit |
1c1d7e |
MemberDef *fromAnonymousMember() const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// callgraph related members
|
|
Packit |
1c1d7e |
bool hasCallGraph() const;
|
|
Packit |
1c1d7e |
bool hasCallerGraph() const;
|
|
Packit |
1c1d7e |
bool visibleMemberGroup(bool hideNoHeader);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
MemberDef *templateMaster() const;
|
|
Packit |
1c1d7e |
QCString getScopeString() const;
|
|
Packit |
1c1d7e |
ClassDef *getClassDefOfAnonymousType();
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// cached typedef functions
|
|
Packit |
1c1d7e |
bool isTypedefValCached() const;
|
|
Packit |
1c1d7e |
ClassDef *getCachedTypedefVal() const;
|
|
Packit |
1c1d7e |
QCString getCachedTypedefTemplSpec() const;
|
|
Packit |
1c1d7e |
QCString getCachedResolvedTypedef() const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
MemberDef *memberDefinition() const;
|
|
Packit |
1c1d7e |
MemberDef *memberDeclaration() const;
|
|
Packit |
1c1d7e |
MemberDef *inheritsDocsFrom() const;
|
|
Packit |
1c1d7e |
MemberDef *getGroupAlias() const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
ClassDef *category() const;
|
|
Packit |
1c1d7e |
MemberDef *categoryRelation() const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
QCString displayName(bool=TRUE) const;
|
|
Packit |
1c1d7e |
QCString getDeclType() const;
|
|
Packit |
1c1d7e |
void getLabels(QStrList &sl,Definition *container) const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
const ArgumentList *typeConstraints() const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// overrules
|
|
Packit |
1c1d7e |
QCString documentation() const;
|
|
Packit |
1c1d7e |
QCString briefDescription(bool abbr=FALSE) const;
|
|
Packit |
1c1d7e |
QCString fieldType() const;
|
|
Packit |
1c1d7e |
bool isReference() const;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//-----------------------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// ---- setters -----
|
|
Packit |
1c1d7e |
//-----------------------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void addFlowKeyWord();
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// set functions
|
|
Packit |
1c1d7e |
void setMemberType(MemberType t);
|
|
Packit |
1c1d7e |
void setDefinition(const char *d);
|
|
Packit |
1c1d7e |
void setFileDef(FileDef *fd);
|
|
Packit |
1c1d7e |
void setAnchor();
|
|
Packit |
1c1d7e |
void setProtection(Protection p);
|
|
Packit |
1c1d7e |
void setMemberSpecifiers(uint64 s);
|
|
Packit |
1c1d7e |
void mergeMemberSpecifiers(uint64 s);
|
|
Packit |
1c1d7e |
void setInitializer(const char *i);
|
|
Packit |
1c1d7e |
void setBitfields(const char *s);
|
|
Packit |
1c1d7e |
void setMaxInitLines(int lines);
|
|
Packit |
1c1d7e |
void setMemberClass(ClassDef *cd);
|
|
Packit |
1c1d7e |
void setSectionList(Definition *d,MemberList *sl);
|
|
Packit |
1c1d7e |
void setGroupDef(GroupDef *gd,Grouping::GroupPri_t pri,
|
|
Packit |
1c1d7e |
const QCString &fileName,int startLine,bool hasDocs,
|
|
Packit |
1c1d7e |
MemberDef *member=0);
|
|
Packit |
1c1d7e |
void setExplicitExternal(bool b);
|
|
Packit |
1c1d7e |
void setReadAccessor(const char *r);
|
|
Packit |
1c1d7e |
void setWriteAccessor(const char *w);
|
|
Packit |
1c1d7e |
void setTemplateSpecialization(bool b);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void makeRelated();
|
|
Packit |
1c1d7e |
void makeForeign();
|
|
Packit |
1c1d7e |
void setHasDocumentedParams(bool b);
|
|
Packit |
1c1d7e |
void setHasDocumentedReturnType(bool b);
|
|
Packit |
1c1d7e |
void setInheritsDocsFrom(MemberDef *md);
|
|
Packit |
1c1d7e |
void setTagInfo(TagInfo *i);
|
|
Packit |
1c1d7e |
void setArgsString(const char *as);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// relation to other members
|
|
Packit |
1c1d7e |
void setReimplements(MemberDef *md);
|
|
Packit |
1c1d7e |
void insertReimplementedBy(MemberDef *md);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// in-body documentation
|
|
Packit |
1c1d7e |
//void setInbodyDocumentation(const char *docs,const char *file,int line);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void setRelatedAlso(ClassDef *cd);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// enumeration specific members
|
|
Packit |
1c1d7e |
void insertEnumField(MemberDef *md);
|
|
Packit |
1c1d7e |
void setEnumScope(MemberDef *md,bool livesInsideEnum=FALSE);
|
|
Packit |
1c1d7e |
void setEnumClassScope(ClassDef *cd);
|
|
Packit |
1c1d7e |
void setDocumentedEnumValues(bool value);
|
|
Packit |
1c1d7e |
void setAnonymousEnumType(MemberDef *md);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// example related members
|
|
Packit |
1c1d7e |
bool addExample(const char *anchor,const char *name,const char *file);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// prototype related members
|
|
Packit |
1c1d7e |
void setPrototype(bool p);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// argument related members
|
|
Packit |
1c1d7e |
void setArgumentList(ArgumentList *al);
|
|
Packit |
1c1d7e |
void setDeclArgumentList(ArgumentList *al);
|
|
Packit |
1c1d7e |
void setDefinitionTemplateParameterLists(QList<ArgumentList> *lists);
|
|
Packit |
1c1d7e |
void setTypeConstraints(ArgumentList *al);
|
|
Packit |
1c1d7e |
void setType(const char *t);
|
|
Packit |
1c1d7e |
void setAccessorType(ClassDef *cd,const char *t);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// namespace related members
|
|
Packit |
1c1d7e |
void setNamespace(NamespaceDef *nd);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// member group related members
|
|
Packit |
1c1d7e |
void setMemberGroup(MemberGroup *grp);
|
|
Packit |
1c1d7e |
void setMemberGroupId(int id);
|
|
Packit |
1c1d7e |
void makeImplementationDetail();
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// anonymous scope members
|
|
Packit |
1c1d7e |
void setFromAnonymousScope(bool b);
|
|
Packit |
1c1d7e |
void setFromAnonymousMember(MemberDef *m);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void enableCallGraph(bool e);
|
|
Packit |
1c1d7e |
void enableCallerGraph(bool e);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void setTemplateMaster(MemberDef *mt);
|
|
Packit |
1c1d7e |
void addListReference(Definition *d);
|
|
Packit |
1c1d7e |
void setDocsForDefinition(bool b);
|
|
Packit |
1c1d7e |
void setGroupAlias(MemberDef *md);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void cacheTypedefVal(ClassDef *val,const QCString &templSpec,const QCString &resolvedType);
|
|
Packit |
1c1d7e |
void invalidateTypedefValCache();
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void invalidateCachedArgumentTypes();
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// declaration <-> definition relation
|
|
Packit |
1c1d7e |
void setMemberDefinition(MemberDef *md);
|
|
Packit |
1c1d7e |
void setMemberDeclaration(MemberDef *md);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void setAnonymousUsed();
|
|
Packit |
1c1d7e |
void copyArgumentNames(MemberDef *bmd);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void setCategory(ClassDef *);
|
|
Packit |
1c1d7e |
void setCategoryRelation(MemberDef *);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void setDocumentation(const char *d,const char *docFile,int docLine,bool stripWhiteSpace=TRUE);
|
|
Packit |
1c1d7e |
void setBriefDescription(const char *b,const char *briefFile,int briefLine);
|
|
Packit |
1c1d7e |
void setInbodyDocumentation(const char *d,const char *inbodyFile,int inbodyLine);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void setHidden(bool b);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//-----------------------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// --- actions ----
|
|
Packit |
1c1d7e |
//-----------------------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// output generation
|
|
Packit |
1c1d7e |
void writeDeclaration(OutputList &ol,
|
|
Packit |
1c1d7e |
ClassDef *cd,NamespaceDef *nd,FileDef *fd,GroupDef *gd,
|
|
Packit |
1c1d7e |
bool inGroup, ClassDef *inheritFrom=0,const char *inheritId=0);
|
|
Packit |
1c1d7e |
void writeDocumentation(MemberList *ml,int memCount,int memTotal,OutputList &ol,
|
|
Packit |
1c1d7e |
const char *scopeName,Definition *container,
|
|
Packit |
1c1d7e |
bool inGroup,bool showEnumValues=FALSE,bool
|
|
Packit |
1c1d7e |
showInline=FALSE);
|
|
Packit |
1c1d7e |
void writeMemberDocSimple(OutputList &ol,Definition *container);
|
|
Packit |
1c1d7e |
void writeEnumDeclaration(OutputList &typeDecl,
|
|
Packit |
1c1d7e |
ClassDef *cd,NamespaceDef *nd,FileDef *fd,GroupDef *gd);
|
|
Packit |
1c1d7e |
void writeTagFile(FTextStream &);
|
|
Packit |
1c1d7e |
void warnIfUndocumented();
|
|
Packit |
1c1d7e |
void warnIfUndocumentedParams();
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
MemberDef *createTemplateInstanceMember(ArgumentList *formalArgs,
|
|
Packit |
1c1d7e |
ArgumentList *actualArgs);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void findSectionsInDocumentation();
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
bool visited;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
protected:
|
|
Packit |
1c1d7e |
void flushToDisk() const;
|
|
Packit |
1c1d7e |
void loadFromDisk() const;
|
|
Packit |
1c1d7e |
private:
|
|
Packit |
1c1d7e |
void lock() const;
|
|
Packit |
1c1d7e |
void unlock() const;
|
|
Packit |
1c1d7e |
void saveToDisk() const;
|
|
Packit |
1c1d7e |
void makeResident() const;
|
|
Packit |
1c1d7e |
void _computeLinkableInProject();
|
|
Packit |
1c1d7e |
void _computeIsConstructor();
|
|
Packit |
1c1d7e |
void _computeIsDestructor();
|
|
Packit |
1c1d7e |
void _writeGroupInclude(OutputList &ol,bool inGroup);
|
|
Packit |
1c1d7e |
void _writeCallGraph(OutputList &ol);
|
|
Packit |
1c1d7e |
void _writeCallerGraph(OutputList &ol);
|
|
Packit |
1c1d7e |
void _writeReimplements(OutputList &ol);
|
|
Packit |
1c1d7e |
void _writeReimplementedBy(OutputList &ol);
|
|
Packit |
1c1d7e |
void _writeExamples(OutputList &ol);
|
|
Packit |
1c1d7e |
void _writeTypeConstraints(OutputList &ol);
|
|
Packit |
1c1d7e |
void _writeEnumValues(OutputList &ol,Definition *container,
|
|
Packit |
1c1d7e |
const QCString &cfname,const QCString &ciname,
|
|
Packit |
1c1d7e |
const QCString &cname);
|
|
Packit |
1c1d7e |
void _writeCategoryRelation(OutputList &ol);
|
|
Packit |
1c1d7e |
void _writeTagData(const DefType);
|
|
Packit |
1c1d7e |
void _addToSearchIndex();
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
static int s_indentLevel;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
int number_of_flowkw;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// disable copying of member defs
|
|
Packit |
1c1d7e |
MemberDef(const MemberDef &);
|
|
Packit |
1c1d7e |
MemberDef &operator=(const MemberDef &);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void writeLink(OutputList &ol,
|
|
Packit |
1c1d7e |
ClassDef *cd,NamespaceDef *nd,FileDef *fd,GroupDef *gd,
|
|
Packit |
1c1d7e |
bool onlyText=FALSE);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
MemberDefImpl *m_impl;
|
|
Packit |
1c1d7e |
uchar m_isLinkableCached; // 0 = not cached, 1=FALSE, 2=TRUE
|
|
Packit |
1c1d7e |
uchar m_isConstructorCached; // 0 = not cached, 1=FALSE, 2=TRUE
|
|
Packit |
1c1d7e |
uchar m_isDestructorCached; // 0 = not cached, 1=FALSE, 2=TRUE
|
|
Packit |
1c1d7e |
};
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void combineDeclarationAndDefinition(MemberDef *mdec,MemberDef *mdef);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
#endif
|