56 void init(
const char *defFileName,
const char *
name,
57 const QCString &ctStr,
const char *fName);
198 const QCString &ctStr,
const char *fName)
287 const char *defFileName,
int defLine,
int defColumn,
289 const char *lref,
const char *fName,
405 for (;(mg=mgli.current());++mgli)
678 if (md->
name()==
"operator->")
738 for (;(mg=mgli.current());++mgli)
751 for (;(mg=mgli.current());++mgli)
765 for (;(mg=mgli.current());++mgli)
791 for (qdi.toFirst();(cd=qdi.current());++qdi)
821 const char *includeName,
bool local,
bool force)
834 if (force && includeName)
871 if (!name.
isEmpty()) name+=
"::";
873 if ( clName.
right(2)==
"-p")
879 if (cd->templateArguments())
881 result.
append(cd->templateArguments());
882 if (!isSpecialization)
1163 for (;(ibcd=it.
current());++it)
1172 for (;(ibcd=it.
current());++it)
1186 bool renderDiagram =
FALSE;
1200 renderDiagram =
TRUE;
1212 renderDiagram =
TRUE;
1228 int index=0,newIndex,matchLen;
1230 while ((newIndex=marker.
match(inheritLine,index,&matchLen))!=-1)
1234 uint entryIndex = inheritLine.
mid(newIndex+1,matchLen-1).
toUInt(&ok);
1259 err(
"invalid marker %d in inherits list!\n",entryIndex);
1261 index=newIndex+matchLen;
1273 int index=0,newIndex,matchLen;
1275 while ((newIndex=marker.
match(inheritLine,index,&matchLen))!=-1)
1279 uint entryIndex = inheritLine.
mid(newIndex+1,matchLen-1).
toUInt(&ok);
1294 index=newIndex+matchLen;
1388 void ClassDef::writeAllMembersLink(
OutputList &ol)
1416 for (;(mg=mgli.current());++mgli)
1477 static bool inlineInheritedMembers =
Config_getBool(
"INLINE_INHERITED_MEMB");
1547 for (li.toFirst();li.current();++li)
1566 tagFile <<
">" <<
endl;
1582 for (;(a=ali.
current());++ali)
1598 tagFile <<
" <base";
1601 tagFile <<
" protection=\"protected\"";
1605 tagFile <<
" protection=\"private\"";
1609 tagFile <<
" virtualness=\"virtual\"";
1619 for (eli.toFirst();(lde=eli.current());++eli)
1621 switch (lde->
kind())
1629 for (cli.toFirst();(innerCd=cli.current());++
cli)
1659 for (;(mg=mgli.current());++mgli)
1671 tagFile <<
" </compound>" <<
endl;
1728 switch (lde->
kind())
1816 if (!(usePDFLatex && pdfHyperlinks))
1838 static bool hideUndocClasses =
Config_getBool(
"HIDE_UNDOC_CLASSES");
1839 static bool extractLocalClasses =
Config_getBool(
"EXTRACT_LOCAL_CLASSES");
1843 (linkable || (!hideUndocClasses && (!
isLocal() || extractLocalClasses)))
1913 if (rootNode && !rootNode->
isEmpty())
1942 const char *
s=sl.
first();
1945 const char *
ns = sl.
next();
1979 switch (lde->
kind())
2067 err(
"Internal inconsistency: member %d should not be part of " 2068 "LayoutDocManager::Class entry list\n",lde->
kind());
2122 static bool generateTreeView =
Config_getBool(
"GENERATE_TREEVIEW");
2128 if (!generateTreeView)
2186 for (;(mni=mnili.current());++mnili)
2233 for (cli.toFirst();(innerCd=cli.current());++
cli)
2240 msg(
"Generating docs for nested compound %s...\n",
qPrint(innerCd->
name()));
2254 static bool generateTreeView =
Config_getBool(
"GENERATE_TREEVIEW");
2263 if (!generateTreeView)
2288 for (mnii.toFirst();(mni=mnii.current());++mnii)
2304 bool memberWritten=
FALSE;
2311 if ((idx&1)==0) ol.
writeString(
" class=\"even\"");
2364 if ((idx&1)==0) ol.
writeString(
" class=\"even\"");
2372 ol.
writeString(
"+ </td><td class=\"entry\">");
2374 ol.
writeString(
"- </td><td class=\"entry\">");
2456 else if (virt==
Pure) sl.
append(
"pure virtual");
2473 const char *
s=sl.
first();
2478 if (s) ol.
writeString(
"</span><span class=\"mlabel\">");
2532 static bool hideUndocRelation =
Config_getBool(
"HIDE_UNDOC_RELATIONS");
2535 if (cd==0 && !hideUndocRelation)
2570 for (;(a=ali.
current());++ali)
2597 for (;(a=ali.
current());++ali)
2611 for (;(a=ali.
current());++ali)
2641 QDictIterator<ClassDef> tidi(*cil);
2642 for ( ; tidi.current() && !
found ; ++tidi)
2645 found = found || tidi.current()->hasNonReferenceSuperClass();
2658 ClassDef *inheritedFrom,
const char *inheritId)
2686 for (;(mg=mgli.current());++mgli)
2709 static bool extractLocal =
Config_getBool(
"EXTRACT_LOCAL_CLASSES");
2746 static bool hideUndocClasses =
Config_getBool(
"HIDE_UNDOC_CLASSES");
2759 !hideUndocClasses ||
2783 err(
"Possible recursive class relation while inside %s and looking for base class %s\n",
qPrint(
name()),
qPrint(bcd->
name()));
2799 found=ccd->
isBaseClass(bcd,followInstances,level+1);
2812 err(
"Possible recursive class relation while inside %s and looking for derived class %s\n",
qPrint(
name()),
qPrint(cd->
name()));
2834 return md->
name()==
"operator=" ||
2852 int sepLen = sep.
length();
2856 bool inlineInheritedMembers =
Config_getBool(
"INLINE_INHERITED_MEMB" );
2862 for ( ; (bcd=bcli.
current()) ; ++bcli )
2876 for ( ; (srcMni=srcMnili.current()) ; ++srcMnili)
2888 for ( ; (srcMi=srcMnii.
current()) ; ++srcMnii )
2897 for ( ; (dstMi=dstMnii.
current()) && !found; ++dstMnii )
2918 hidden = hidden || !
found;
2980 if (inlineInheritedMembers)
3035 for (;(mi=mnii.current());++mnii)
3057 if (inlineInheritedMembers)
3097 static bool extractLocalMethods =
Config_getBool(
"EXTRACT_LOCAL_METHODS");
3098 bool makePrivate = category->
isLocal();
3101 if (makePrivate && !extractLocalMethods)
return;
3114 for ( ; (bcd=bcli.current()) ; ++bcli )
3116 insertBaseClass(bcd->classDef,bcd->usedName,bcd->prot,bcd->virt,bcd->templSpecifiers);
3119 if (bcd->classDef->subClasses())
3123 for ( ; (scd=scli.current()) ; ++scli )
3125 if (scd->classDef==category)
3141 if (srcMnd && dstMnd)
3145 for ( ; (srcMni=srcMnili.current()) ; ++srcMnili)
3181 for (;(mi=mnii.current());++mnii)
3216 if (makePrivate || isExtension)
3238 if (prot==
Private && !extractPrivate)
return;
3272 if (prot==
Private && !extractPrivate)
return;
3308 void ClassDef::determineImplUsageRelation()
3312 for (;(mni=mnili.current());++mnili)
3338 for (ali.toFirst();(arg=ali.current());++ali,++
count)
3340 if (arg->name==usedClassName)
3346 cd->setIsTemplateBaseClass(count);
3397 if (
m_impl->usesClassDict)
3399 msg(
"Class %s uses the following classes:\n",
name().
data());
3402 for (;(ucd=ucdi.current());++ucdi)
3405 QDictIterator<void> dvi(*ucd->
accessors);
3407 for (;(s=dvi.currentKey());++dvi)
3425 static const QRegExp re(
"[a-z_A-Z][a-z_A-Z0-9:]*");
3427 while ((i=re.
match(type,p,&l))!=-1)
3453 void ClassDef::determineIntfUsageRelation()
3457 for (;(mni=mnili.current());++mnili)
3485 for (;(a=ali.
current());++ali)
3505 case Class:
return "module";
3506 case Struct:
return "type";
3507 case Union:
return "union";
3512 default:
return "unknown";
3520 case Struct:
return "struct";
3521 case Union:
return "union";
3526 case Service:
return "service";
3528 default:
return "unknown";
3535 static bool inlineGroupedClasses =
Config_getBool(
"INLINE_GROUPED_CLASSES");
3536 static bool inlineSimpleClasses =
Config_getBool(
"INLINE_SIMPLE_STRUCTS");
3622 for (;(mni=mnili.current());++mnili)
3629 md->
setGroupDef(gd,pri,fileName,startLine,hasDocs);
3654 if (name==0)
return 0;
3703 int startLine,
int startColumn,
const QCString &templSpec,
bool &freshInstance)
3705 freshInstance =
FALSE;
3711 if (templateClass==0)
3717 templateClass->setTemplateMaster(
this);
3719 templateClass->setHidden(
isHidden());
3723 return templateClass;
3734 if (templateClass==0)
3738 templateClass =
new ClassDef(
"<code>",1,1,tcname,
3744 return templateClass;
3749 if (templateNames==0)
return;
3756 QDictIterator<int> qdi(*templateNames);
3757 for (;qdi.current();++qdi)
3777 for (;(mni=mnili.current());++mnili)
3788 delete actualArguments;
3870 else if (!hideScopeNames)
3878 if (!scName.
isEmpty()) scName+=scopeSeparator;
3893 if (actualParams && *actualParamIndex<(
int)actualParams->
count())
3895 al = actualParams->
at(*actualParamIndex);
3896 if (!isSpecialization)
3900 (*actualParamIndex)++;
3904 if (!isSpecialization)
3952 for (;(mg=mgli.current());++mgli)
4025 for (;(ml=mli.
current());++mli)
4040 ml->
setNeedsSorting((isBrief && sortBriefDocs) || (!isBrief && sortMemberDocs));
4051 for (;(ml=mli.
current());++mli)
4087 for (;(mg=mgli.current());++mgli)
4093 static bool inlineInheritedMembers =
Config_getBool(
"INLINE_INHERITED_MEMB");
4094 if (!inlineInheritedMembers)
4113 if ((process^invert) || showAlways)
4128 if (visitedClasses->
find(icd)==0)
4130 visitedClasses->
insert(icd,icd);
4155 if (lmd->
type==type)
4157 title = lmd->
title(lang);
4214 ClassDef *inheritedFrom,
bool additional)
4227 for (;(mg=mgli.current());++mgli)
4231 if ((additional && hasOwnSection) || (!additional && !hasOwnSection))
4253 if ((process^invert) || showAlways)
4266 if (lt2==-1 && lt3!=-1)
4271 if (visitedClasses->
find(icd)==0)
4273 visitedClasses->
insert(icd,icd);
4292 const char *subTitle,
bool showInline,
ClassDef *inheritedFrom,
int lt2,
4318 ml->
writeDeclarations(ol,
this,0,0,0,tt,st,
FALSE,showInline,inheritedFrom,lt);
4325 ml2->
writeDeclarations(ol,
this,0,0,0,tt,st,
FALSE,showInline,inheritedFrom,lt);
4327 static bool inlineInheritedMembers =
Config_getBool(
"INLINE_INHERITED_MEMB");
4328 if (!inlineInheritedMembers)
4332 inheritedFrom ? inheritedFrom :
this,
4334 visitedClasses==0 ? &visited: visitedClasses);
4347 for (;(mg=mgli.current());++mgli)
4373 ClassDef *inheritedFrom,
const char *inheritId)
4599 for (;(ml=mli.
current());++mli)
4632 static bool inlineGroupedClasses =
Config_getBool(
"INLINE_GROUPED_CLASSES");
4633 static bool inlineSimpleClasses =
Config_getBool(
"INLINE_SIMPLE_STRUCTS");
4637 bool containerLinkable =
4641 container->isLinkableInProject()
4648 (containerLinkable ||
4688 for (;(ml=mli.
current());++mli)
4712 int si = n.
find(
'(');
4713 int ei = n.
find(
')');
void endMemberDocumentation(OutputList &ol)
QCString convertToXML(const char *s)
void startMemberItem(const char *anchor, int i1, const char *id=0)
virtual QCString trExamples()=0
CompoundType compoundType() const
bool isMaybeAmbiguous() const
bool addExample(const char *anchor, const char *name, const char *file)
virtual QCString trGeneratedFromFilesFortran(ClassDef::CompoundType compType, bool single)=0
void endMemberDeclaration(const char *anchor, const char *inheritId)
MemberListType listType() const
void addMembersToTemplateInstance(ClassDef *cd, const char *templSpec)
void setMemberType(MemberType t)
virtual QCString trInheritsList(int numEntries)=0
void append(const MemberDef *md)
void setAnchors(MemberList *ml)
void writeInheritanceGraph(OutputList &ol)
FileDef * getFileDef() const
void endFile(OutputList &ol, bool skipNavIndex, bool skipEndContents, const QCString &navPath)
static const uint64 Published
This class represents an function or template argument list.
void endFileWithNavPath(Definition *d, OutputList &ol)
void endGroupHeader(int extraLevels=0)
void writeDetailedDescription(OutputList &ol, const QCString &pageType, bool exampleFlag, const QCString &title, const QCString &anchor=QCString())
QCString stripWhiteSpace() const
bool isLinkableInProject() const
bool isArtificial() const
ClassDef * getVariableInstance(const char *templSpec)
bool matchArguments2(Definition *srcScope, FileDef *srcFileScope, ArgumentList *srcAl, Definition *dstScope, FileDef *dstFileScope, ArgumentList *dstAl, bool checkCV)
void combineDeclarationAndDefinition(MemberDef *mdec, MemberDef *mdef)
void writeInheritedMemberDeclarations(OutputList &ol, MemberListType lt, int lt2, const QCString &title, ClassDef *inheritedFrom, bool invert, bool showAlways, QPtrDict< void > *visitedClasses)
MemberNameInfoSDict * allMemberNameInfoSDict
bool isFunctionPtr() const
BaseClassList * subClasses() const
IncludeInfo * includeInfo() const
virtual QCString getReference() const
virtual QCString trCompounds()=0
void inSort(const char *key, const T *d)
void getTitleForMemberListType(MemberListType type, QCString &title, QCString &subtitle)
void removeMemberFromLists(MemberDef *md)
static QCString trVhdlType(uint64 type, bool sing=true)
QCString getReference() const
The QRegExp class provides pattern matching using regular expressions or wildcards.
void startFile(OutputList &ol, const char *name, const char *manName, const char *title, HighlightedItem hli, bool additionalIndices, const char *altSidebarName)
void addUsedByClass(ClassDef *cd, const char *accessName, Protection prot)
void writeSimpleMemberDocumentation(OutputList &ol, MemberListType lt)
QCString convertNameToFile(const char *name, bool allowDots=FALSE) const
void msg(const char *fmt,...)
NamespaceDef * getNamespaceDef() const
void writeTagFile(FTextStream &)
BaseClassList * inheritedBy
MemberGroupSDict * memberGroupSDict
virtual bool isLinkableInProject() const =0
static ClassSDict * hiddenClasses
void append(const type *d)
bool isUNOProperty() const
bool generateSourceFile() const
virtual QCString trInheritedByList(int numEntries)=0
int guessSection(const char *name)
virtual void setName(const char *name)
const ExampleSDict * exampleList() const
Protection protection() const
static const uint64 Abstract
QList< ListItemInfo > * xrefListItems() const
static QCString htmlFileExtension
void writePlainDeclarations(OutputList &ol, ClassDef *cd, NamespaceDef *nd, FileDef *fd, GroupDef *gd, ClassDef *inheritedFrom, const char *inheritId)
void writeTagFile(FTextStream &)
void writeString(const char *text)
int countGroupedInheritedMembers(MemberListType lt)
bool generateDoc(const char *fileName, int startLine, Definition *ctx, MemberDef *md, const QCString &docStr, bool indexWords, bool isExample, const char *exampleName=0, bool singleLine=FALSE, bool linkFromIndex=FALSE)
static const uint64 ForwardDecl
bool isForwardDeclared() const
QCString inbodyDocumentation() const
void setLanguage(SrcLangExt lang)
const ClassList * taggedInnerClasses() const
int countInheritedDecMembers(MemberListType lt, ClassDef *inheritedFrom, bool invert, bool showAlways, QPtrDict< void > *visitedClasses)
ArgumentList * templateArguments() const
static const uint64 Sealed
void disableAllBut(OutputGenerator::OutputType o)
virtual QCString trCollaborationDiagram(const char *clName)=0
virtual QCString trEnumName()=0
void writeDetailedDocumentationBody(OutputList &ol)
void lineBreak(const char *style=0)
void writeBriefDescription(OutputList &ol, bool exampleFlag)
FileDef * getBodyDef() const
void addGroupedInheritedMembers(OutputList &ol, MemberListType lt, ClassDef *inheritedFrom, const QCString &inheritId)
void setArtificial(bool b)
QCString compoundTypeString() const
virtual bool hasDocumentation() const
MemberNameInfoSDict * memberNameInfoSDict() const
void startSubsubsection()
virtual QCString trClass(bool first_capital, bool singular)=0
QCString title(SrcLangExt lang) const
void addIndexItem(const char *s1, const char *s2)
void writeNavigationPath(OutputList &ol) const
void setTemplateBaseClassNames(QDict< int > *templateNames)
int countInheritanceNodes()
virtual QCString trServiceReference(const char *sName)=0
void writeDocumentation(OutputList &ol, const char *scopeName, Definition *container, const char *title, bool showEnumValues=FALSE, bool showInline=FALSE)
virtual QCString trSingletonGeneratedFromFiles(bool single)=0
void writeTypeConstraints(OutputList &ol, Definition *d, ArgumentList *al)
static LayoutDocManager & instance()
void writeMemberGroups(OutputList &ol, bool showInline=FALSE)
bool isLinkableInProject() const
void setMemberGroupId(int id)
void startMemberDescription(const char *anchor, const char *inheritId=0)
bool declVisible(const ClassDef::CompoundType *filter=0) const
UsesClassDict * usesImplClassDict
void addUsedInterfaceClasses(MemberDef *md, const char *typeStr)
virtual QCString trMemberList()=0
QDict< ClassDef > * templateInstances
bool hasNonReferenceSuperClass()
int countMembersIncludingGrouped(MemberListType lt, ClassDef *inheritedFrom, bool additional)
void startMemberSections()
QCString left(uint len) const
static QCString getClassName(const ClassDef *)
DocRoot * validatingParseDoc(const char *fileName, int startLine, Definition *ctx, MemberDef *md, const char *input, bool indexWords, bool isExample, const char *exampleName, bool singleLine, bool linkFromIndex)
void writeLabel(const char *l, bool isLast)
void writeDeclarations(OutputList &ol, ClassDef *cd, NamespaceDef *nd, FileDef *fd, GroupDef *gd, bool showInline=FALSE)
virtual QCString trEnumValue()=0
ConstraintClassDict * constraintClassDict
static bool suppressDocWarnings
void writeTagFile(FTextStream &)
ClassDef * insertTemplateInstance(const QCString &fileName, int startLine, int startColumn, const QCString &templSpec, bool &freshInstance)
virtual bool isReference() const
void writePlainMemberDeclaration(OutputList &ol, MemberListType lt, bool inGroup, ClassDef *inheritedFrom, const char *inheritId)
bool protectionLevelVisible(Protection prot)
bool addClass(const ClassDef *def)
Simplified and optimized version of QTextStream.
QCString displayName(bool includeScope=TRUE) const
int find(char c, int index=0, bool cs=TRUE) const
MemberDef * getMemberByName(const QCString &) const
void setClassName(const char *name)
void writeDeclarationLink(OutputList &ol, bool &found, const char *header, bool localNames)
void findSectionsInDocumentation()
virtual QCString getOutputFileBase() const =0
int find(const type *d) const
UsesClassDict * usesIntfClassDict
GroupList * partOfGroups() const
void append(const char *key, const T *d)
static constexpr double mg
void mergeCategory(ClassDef *category)
QCString getReference() const
Represents of a member definition list with configurable title.
bool isBaseClass(ClassDef *bcd, bool followInstances, int level=0)
void startTextLink(const char *file, const char *anchor)
QCString title(SrcLangExt lang) const
ClassSDict * getClassSDict()
bool hasDetailedDescription() const
void addInnerCompound(Definition *d)
QCString removeAnonymousScopes(const QCString &s)
virtual QCString trSingletonReference(const char *sName)=0
bool parseText(const QCString &textStr)
Protection protection() const
QCString getDefFileName() const
ClassList * taggedInnerClasses
void writeMemberList(OutputList &ol)
ClassDef * getClass(const char *n)
ArgumentList * typeConstraints
Represents of a member declaration list with configurable title and subtitle.
void writeDocAnchorsToTagFile(FTextStream &)
void insert(void *k, const type *d)
ClassDef * templateMaster
virtual QCString trDataTypes()=0
bool isTemplateArgument() const
void setAutoDelete(bool val)
void addGroupedInheritedMembers(OutputList &ol, ClassDef *cd, MemberListType lt, ClassDef *inheritedFrom, const QCString &inheritId)
void endDotGraph(const DotClassGraph &g)
void writeInlineDocumentation(OutputList &ol)
virtual QCString trCompoundReference(const char *clName, ClassDef::CompoundType compType, bool isTemplate)=0
static QCString stripFromPath(const QCString &path, QStrList &l)
FileDef * getFileDef() const
virtual QCString trServiceGeneratedFromFiles(bool single)=0
void countDocMembers(bool countEnumValues=FALSE)
static NamespaceDef * globalScope
virtual QCString trClassDiagram(const char *clName)=0
void setName(const char *name)
QCString ambiguityResolutionScope
ClassDef * templateMaster() const
virtual DefType definitionType() const =0
Specifier virtualness(int count=0) const
This class contains the information about the argument of a function or template. ...
static const uint64 Final
const char * typeString() const
QCString getLanguageSpecificSeparator(SrcLangExt lang, bool classScope)
virtual QCString trEnumReference(const char *name)=0
void writeQuickMemberLinks(OutputList &ol, MemberDef *md) const
const ClassSDict * innerClasses() const
void makeImplementationDetail()
QCString className() const
void addIndexItem(Definition *context, MemberDef *md, const char *sectionAnchor=0, const char *title=0)
static SearchIndexIntf * searchIndex
void setClassSpecifier(uint64 spec)
void insertMember(MemberDef *)
const QCString & name() const
QList< MemberList > memberLists
QCString getFileBase() const
MemberDef * createTemplateInstanceMember(ArgumentList *formalArgs, ArgumentList *actualArgs)
void writeSummaryLink(const char *file, const char *anchor, const char *title, bool first)
void inSort(const type *d)
QCString inbodyFile() const
static void writeInheritanceSpecifier(OutputList &ol, BaseClassDef *bcd)
UsesClassDict * usedInterfaceClasses() const
void writeNestedClasses(OutputList &ol, const QCString &title)
void findSectionsInDocumentation()
ClassDef * category() const
bool allMembersInSameSection() const
void setTemplateMaster(ClassDef *tm)
void setGroupDefForAllMembers(GroupDef *g, Grouping::GroupPri_t pri, const QCString &fileName, int startLine, bool hasDocs)
void pushGeneratorState()
void startMemberDeclaration()
bool isLinkableInProject() const
void setDocumentation(const char *d, const char *docFile, int docLine, bool stripWhiteSpace=TRUE)
QCString getInstanceOutputFileBase() const
virtual QCString getSourceFileBase() const
void setInbodyDocumentation(const char *d, const char *inbodyFile, int inbodyLine)
void setMemberClass(ClassDef *cd)
QCString briefDescription(bool abbr=FALSE) const
bool hasDocumentation() const
QCString getMemberListFileName() const
bool hasBriefDescription() const
void moveTo(Definition *)
QCString convertToHtml(const char *s, bool keepEntities)
int numDocMembers() const
QCString getSourceFileBase() const
QCString right(uint len) const
static void writeVhdlDeclarations(MemberList *, OutputList &, GroupDef *, ClassDef *, FileDef *, NamespaceDef *)
SrcLangExt getLanguage() const
void setProtection(Protection p)
virtual QCString trAuthor(bool first_capital, bool singular)=0
const ArgumentList * typeConstraints() const
void setCategoryOf(ClassDef *cd)
virtual void addWord(const char *word, bool hiPriority)=0
void writeIncludeFiles(OutputList &ol)
ClassDef(const char *fileName, int startLine, int startColumn, const char *name, CompoundType ct, const char *ref=0, const char *fName=0, bool isSymbol=TRUE, bool isJavaEnum=FALSE)
bool insertMember(MemberDef *def, bool docOnly=FALSE)
type * find(void *k) const
virtual QCString trGeneratedAutomatically(const char *s)=0
void addMemberToList(MemberListType lt, MemberDef *md, bool isBrief)
void setTemplateArguments(ArgumentList *al)
void setTemplateMaster(MemberDef *mt)
static void print(DebugMask mask, int prio, const char *fmt,...)
virtual QCString trCompoundReferenceFortran(const char *clName, ClassDef::CompoundType compType, bool isTemplate)=0
void stringToArgumentList(const char *argsString, ArgumentList *al, QCString *extraTypeChars)
QCString & prepend(const char *s)
void setTagLessReference(ClassDef *cd)
bool isConstructor() const
void disable(OutputGenerator::OutputType o)
virtual QCString trDefinedIn()=0
void append(const type *d)
void addMembersToMemberGroup()
void setNeedsSorting(bool b)
static bool generatingXmlOutput
A bunch of utility functions.
QDict< int > * getTemplateBaseClassNames() const
void writeAdditionalInheritedMembers(OutputList &ol)
void writeDocumentation(OutputList &ol)
ConstraintClassDict * templateTypeConstraints() const
const char * data() const
bool isEmbeddedInOuterScope() const
void addGroupListToTitle(OutputList &ol, Definition *d)
bool isConstrained() const
void addToDeclarationSection()
void startMemberDeclarations(OutputList &ol)
#define Config_getString(val)
void setInGroup(bool inGroup)
void writeDoc(DocRoot *root, Definition *ctx, MemberDef *md)
bool invert(ublas::matrix< T, L, A > &m)
void writeSummaryLinks(OutputList &ol)
virtual QCString trGeneratedFromFiles(ClassDef::CompoundType compType, bool single)=0
void enable(OutputGenerator::OutputType o)
#define Config_getBool(val)
void setReference(const char *r)
ClassDef * getClassDef() const
ClassSDict * innerClasses
static bool isStandardFunc(MemberDef *md)
void setSectionList(Definition *d, MemberList *sl)
QCString briefFile() const
MemberList * createMemberList(MemberListType lt)
bool isObjCMethod() const
void writeDocumentationContents(OutputList &ol, const QCString &pageTitle)
void writeSimpleDocumentation(OutputList &ol, Definition *container)
QCString generatedFromFiles() const
uint64 getMemberSpecifiers() const
virtual QCString qualifiedName() const
void distributeMemberGroupDocumentation()
QCString getSourceFileBase() const
void startSimpleSect(SectionTypes t, const char *file, const char *anchor, const char *title)
void err(const char *fmt,...)
SDict< QCString > vhdlSummaryTitles
const char * memberName() const
MemberType memberType() const
QCString includeStatement() const
virtual QCString trMore()=0
virtual QCString briefDescription(bool abbreviate=FALSE) const
QCString qualifiedNameWithTemplateParameters(QList< ArgumentList > *actualParams=0, int *actualParamIndex=0) const
void addUsedClass(ClassDef *cd, const char *accessName, Protection prot)
void setCompoundType(CompoundType t)
void startMemberDoc(const char *clName, const char *memName, const char *anchor, const char *title, bool showInline)
QCString removeRedundantWhiteSpace(const QCString &s)
int extractClassNameFromType(const QCString &type, int &pos, QCString &name, QCString &templSpec, SrcLangExt lang)
void writeDeclaration(OutputList &ol, MemberDef *md, bool inGroup, ClassDef *inheritedFrom, const char *inheritId)
void startGroupHeader(int extraLevels=0)
QCString mid(uint index, uint len=0xffffffff) const
QDict< ClassDef > * variableInstances
void writeMemberPages(OutputList &ol)
QCString getOutputFileBase() const
static QCString getClassTitle(const ClassDef *)
void writeExample(OutputList &ol, ExampleSDict *ed)
int match(const QCString &str, int index=0, int *len=0, bool indexIsStart=TRUE) const
void writeDocumentationPage(OutputList &ol, const char *scopeName, Definition *container)
ClassDef * categoryOf() const
void setMemberSpecifiers(uint64 s)
QCString subtitle(SrcLangExt lang) const
void endMemberDoc(bool hasArgs)
int countMemberDeclarations(MemberListType lt, ClassDef *inheritedFrom, int lt2, bool invert, bool showAlways, QPtrDict< void > *visitedClasses)
void insertBaseClass(ClassDef *, const char *name, Protection p, Specifier s, const char *t=0)
QCString getOutputFileBase() const
MemberGroupSDict * getMemberGroupSDict() const
bool visibleInParentsDeclList() const
int countInheritableMembers(ClassDef *inheritedFrom) const
void setCategory(ClassDef *)
virtual Definition * getOuterScope() const
void internalInsertMember(MemberDef *md, Protection prot, bool addToAllList)
QCString documentation() const
static QCString getProtectionName(int prot)
ExampleSDict * exampleSDict
void init(const char *defFileName, const char *name, const QCString &ctStr, const char *fName)
void writeDeclaration(OutputList &ol, const ClassDef::CompoundType *filter=0, const char *header=0, bool localNames=FALSE)
void writeCollaborationGraph(OutputList &ol)
ClassDef * tagLessReference() const
UsesClassDict * usedByImplementationClasses() const
void startTitle(OutputList &ol, const char *fileName, Definition *def)
void insertSubClass(ClassDef *, Protection p, Specifier s, const char *t=0)
ArgumentList * argumentList() const
void addClassAttributes(OutputList &ol)
MemberDef * deepCopy() const
SrcLangExt getLanguageFromFileName(const QCString fileName)
bool isVisibleInHierarchy()
int getStartBodyLine() const
void showUsedFiles(OutputList &ol)
void countDecMembers(bool countEnumValues=FALSE, GroupDef *gd=0)
virtual QCString trEnumGeneratedFromFiles(bool single)=0
static MemberNameSDict * memberNameSDict
QCString tempArgListToString(ArgumentList *al, SrcLangExt lang)
bool isSubClass(ClassDef *bcd, int level=0)
QDict< ClassDef > * getTemplateInstances() const
void writeSourceDef(OutputList &ol, const char *scopeName)
virtual QCString trListOfAllMembers()=0
int getMemberGroupId() const
virtual QCString trAdditionalInheritedMembers()=0
void startTextBlock(bool dense=FALSE)
uint toUInt(bool *ok=0) const
static void writeInlineClassLink(const ClassDef *, OutputList &ol)
void endMemberDeclarations(OutputList &ol)
virtual Kind kind() const =0
virtual QCString trType(bool first_capital, bool singular)=0
void writeMoreLink(OutputList &ol, const QCString &anchor)
Base class representing a piece of a documentation page.
void endClassDiagram(const ClassDiagram &d, const char *f, const char *n)
virtual void setCurrentDoc(Definition *ctx, const char *anchor, bool isSourceFile)=0
const int maxInheritanceDepth
QCString getOutputFileBase() const
QCString insertTemplateSpecifierInScope(const QCString &scope, const QCString &templ)
void writeAnchor(const char *fileName, const char *name)
bool isAccessibleMember(MemberDef *md)
void endMemberDescription()
ClassDef * getClassDefOfAnonymousType()
bool isMaybeDefault() const
void addAccessor(const char *s)
void addRefItem(const QList< ListItemInfo > *sli, const char *key, const char *prefix, const char *name, const char *title, const char *args, Definition *scope)
void writeMemberDocumentation(OutputList &ol, MemberListType lt, const QCString &title, bool showInline=FALSE)
static void searchTemplateSpecs(Definition *d, QList< ArgumentList > &result, QCString &name, SrcLangExt lang)
Translator * theTranslator
void writeDocumentation(OutputList &ol, Definition *container=0)
MemberDef * isSmartPointer() const
bool needsSorting() const
void setTypeConstraints(ArgumentList *al)
UsesClassDict * usedByImplClassDict
static QCString listTypeAsString(MemberListType type)
int countAdditionalInheritedMembers()
void endTextBlock(bool paraBreak=FALSE)
void endTitle(OutputList &ol, const char *fileName, const char *name)
virtual QCString trThisIsTheListOfAllMembers()=0
void writeDeclarations(OutputList &ol, ClassDef *cd, NamespaceDef *nd, FileDef *fd, GroupDef *gd, const char *title, const char *subtitle, bool showEnumValues=FALSE, bool showInline=FALSE, ClassDef *inheritedFrom=0, MemberListType lt=MemberListType_pubMethods)
void reclassifyMember(MemberDef *md, MemberType t)
void setIncludeFile(FileDef *fd, const char *incName, bool local, bool force)
void convertProtectionLevel(MemberListType inListType, Protection inProt, int *outListType1, int *outListType2)
void getTemplateParameterLists(QList< ArgumentList > &lists) const
void createSubDirs(QDir &d)
MemberDef * arrowOperator
static void writeTemplateSpec(OutputList &ol, Definition *d, const QCString &type, SrcLangExt lang)
void distributeMemberGroupDocumentation()
void setGroupDef(GroupDef *gd, Grouping::GroupPri_t pri, const QCString &fileName, int startLine, bool hasDocs, MemberDef *member=0)
UsesClassDict * usedImplementationClasses() const
QCString includeName() const
void makeTemplateArgument(bool b=TRUE)
void docFindSections(const char *input, Definition *d, MemberGroup *mg, const char *fileName)
const char * argsString() const
void insertUsedFile(FileDef *)
QCString getOutputFileBase() const
void startMemberHeader(const char *anchor)
void docify(const char *s)
void startMemberDocumentation(OutputList &ol)
void insertMemberAlign(bool templ=FALSE)
void findSectionsInDocumentation()
unsigned long long uint64
const FileList & usedFiles() const
Q_EXPORT int qstrcmp(const char *str1, const char *str2)
T * find(const char *key)
static bool isSpecialization(const QList< ArgumentList > &srcTempArgLists, const QList< ArgumentList > &dstTempArgLists)
bool isObjectiveC() const
void writeInlineClasses(OutputList &ol)
virtual QCString documentation() const
ClassDef * getResolvedClass(Definition *scope, FileDef *fileScope, const char *n, MemberDef **pTypeDef, QCString *pTemplSpec, bool mayBeUnlinkable, bool mayBeHidden, QCString *pResolvedType)
void writeObjectLink(const char *ref, const char *file, const char *anchor, const char *name)
void setSubGrouping(bool enabled)
void setNamespace(NamespaceDef *nd)
void setAutoDelete(bool enable)
void addTaggedInnerClass(ClassDef *cd)
void addTypeConstraints()
void addListReferences(Definition *def)
const QList< MemberList > & getMemberLists() const
QDict< int > * templBaseClassNames
void setBriefDescription(const char *b, const char *briefFile, int briefLine)
const QCString & docName() const
MemberList * getMemberList(MemberListType lt)
void setFileDef(FileDef *fd)
QCString stripExtension(const char *fName)
void writeAuthorSection(OutputList &ol)
virtual QCString trIncludingInheritedMembers()=0
QCString localName() const
const char * qPrint(const char *s)
void writeMemberDeclarations(OutputList &ol, MemberListType lt, const QCString &title, const char *subTitle=0, bool showInline=FALSE, ClassDef *inheritedFrom=0, int lt2=-1, bool invert=FALSE, bool showAlways=FALSE, QPtrDict< void > *visitedClasses=0)
static IndexList * indexList
void addTypeConstraint(const QCString &typeConstraint, const QCString &type)
QCString substitute(const QCString &s, const QCString &src, const QCString &dst)
substitute all occurrences of src in s by dst
QCString title(SrcLangExt lang) const
QTextStream & endl(QTextStream &s)
QCString getVersion() const
int numDecMembers() const
BaseClassList * baseClasses() const
void writePlainDeclarations(OutputList &ol, ClassDef *cd, NamespaceDef *nd, FileDef *fd, GroupDef *gd, ClassDef *inheritedFrom, const char *inheritId)
int minClassDistance(const ClassDef *cd, const ClassDef *bcd, int level)
bool isDestructor() const
ClassDef::CompoundType compType
void addListReferences(Definition *d)
void writeDocumentationForInnerClasses(OutputList &ol)
void addAccessor(const char *s)
QDict< void > * accessors
virtual Definition * findInnerCompound(const char *name)
void setCategoryRelation(MemberDef *)
void startMemberDocName(bool align)