47 const char *refFileName) :
Definition(df,dl,1,na)
111 for (;(mg=mgli.current());++mgli)
122 for (;(mg=mgli.current());++mgli)
165 if (i==-1) i=qn.
find(
'.');
252 for (;(mg=mgli.current());++mgli)
269 for ( ; (srcMi=srcMnii.
current()) ; ++srcMnii )
272 if (srcMd==md)
return FALSE;
285 ((tSrcMdAl==0 && tMdAl==0) ||
286 (tSrcMdAl!=0 && tMdAl!=0 && tSrcMdAl->
count()==tMdAl->
count())
415 err(
"GroupDef::insertMembers(): " 416 "member `%s' (typeid=%d) with scope `%s' inserted in group scope `%s'!\n",
506 err(
"GroupDef::removeMember(): unexpected member remove in file!\n");
544 return groups!=0 && groups->
count()!=0;
567 tagFile <<
" <compound kind=\"group\">" <<
endl;
584 for (ci.toFirst();(cd=ci.current());++ci)
601 for (ni.toFirst();(nd=ni.current());++ni)
606 <<
"</namespace>" << endl;
634 for (pdi.toFirst();(pd=pdi.current());++pdi)
671 tagFile <<
" <subgroup>" <<
convertToXML(gd->
name()) <<
"</subgroup>" << endl;
693 for (;(mg=mgli.current());++mgli)
705 tagFile <<
" </compound>" <<
endl;
769 if (rootNode && !rootNode->
isEmpty())
950 for (pdi.toFirst();(pd=pdi.current());++pdi)
978 for (;(mg=mgli.current());++mgli)
1102 static QRegExp we(
"[a-zA-Z_][-a-zA-Z_0-9]*");
1121 switch (lde->
kind())
1225 err(
"Internal inconsistency: member %d should not be part of " 1226 "LayoutDocManager::Group entry list\n",lde->
kind());
1310 for (;(g=gli.
current());++gli)
1329 for (;(g=gli.
current());++gli)
1346 for (;(g=gli.
current());++gli)
1365 for (;(g=gli.
current());++gli)
1377 warn(root->
fileName,root->
startLine,
"Refusing to add group %s to group %s, since the latter is already a " 1400 for (;(g=gli.
current());++gli)
1407 if (fgd && gd!=fgd && g->
pri==pri)
1410 "Member %s found in multiple %s groups! " 1411 "The member will be put in group %s, and not in group %s",
1428 bool insertit =
FALSE;
1435 bool moveit =
FALSE;
1455 "Member documentation for %s found several times in %s groups!\n" 1456 "%s:%d: The member will remain in group %s, and won't be put into group %s",
1500 for (;(g=gli.
current());++gli)
1538 for (;(mg=mgli.current());++mgli)
1587 for (;(ml=mli.
current());++mli)
1597 for (;(ml=mli.
current());++mli)
1609 static bool optimizeVhdl =
Config_getBool(
"OPTIMIZE_OUTPUT_VHDL");
1612 if (optimizeVhdl && ml)
void writeMemberPages(OutputList &ol)
void writeFiles(OutputList &ol, const QCString &title)
QCString convertToXML(const char *s)
void startMemberItem(const char *anchor, int i1, const char *id=0)
void endMemberDeclaration(const char *anchor, const char *inheritId)
MemberListType listType() const
static GroupSDict * groupSDict
void append(const MemberDef *md)
void setAnchors(MemberList *ml)
void endFile(OutputList &ol, bool skipNavIndex, bool skipEndContents, const QCString &navPath)
This class represents an function or template argument list.
void endGroupHeader(int extraLevels=0)
NamespaceSDict * namespaceSDict
bool isLinkableInProject() const
bool matchArguments2(Definition *srcScope, FileDef *srcFileScope, ArgumentList *srcAl, Definition *dstScope, FileDef *dstFileScope, ArgumentList *dstAl, bool checkCV)
virtual QCString trFile(bool first_capital, bool singular)=0
void addDirToGroups(Entry *root, DirDef *dd)
virtual QCString getReference() const
void writePageDocumentation(OutputList &ol)
void inSort(const char *key, const T *d)
const QCString & shortName() const
static constexpr double g
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)
QCString convertNameToFile(const char *name, bool allowDots=FALSE) const
void msg(const char *fmt,...)
Grouping::GroupPri_t getGroupPri() const
void startGroupCollaboration()
void append(const type *d)
void addMemberToGroups(Entry *root, MemberDef *md)
Protection protection() const
QList< ListItemInfo > * xrefListItems() const
static QCString htmlFileExtension
void writeTagFile(FTextStream &)
void writeString(const char *text)
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)
void writeGroupGraph(OutputList &ol)
QCString inbodyDocumentation() const
void setLanguage(SrcLangExt lang)
MemberList * createMemberList(MemberListType lt)
void disableAllBut(OutputGenerator::OutputType o)
virtual QCString trCollaborationDiagram(const char *clName)=0
void endTitleHead(const char *fileName, const char *name)
QCString compoundTypeString() const
virtual bool hasDocumentation() const
void addExampleToGroups(Entry *root, PageDef *eg)
void addNamespaceToGroups(Entry *root, NamespaceDef *nd)
QCString title(SrcLangExt lang) const
void setAutoDelete(bool val)
void writeDocumentation(OutputList &ol, const char *scopeName, Definition *container, const char *title, bool showEnumValues=FALSE, bool showInline=FALSE)
void findSectionsInDocumentation()
bool isLinkableInProject() const
void startHeaderSection()
static LayoutDocManager & instance()
def graph(desc, maker=maker)
void startMemberDeclarations(OutputList &ol)
bool isLinkableInProject() const
void startMemberDescription(const char *anchor, const char *inheritId=0)
bool declVisible(const ClassDef::CompoundType *filter=0) const
void distributeMemberGroupDocumentation()
void addDir(const DirDef *dd)
void writeMemberGroups(OutputList &ol)
void startMemberSections()
QCString left(uint len) const
GroupPri_t pri
priority of this definition
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 writeDeclarations(OutputList &ol, ClassDef *cd, NamespaceDef *nd, FileDef *fd, GroupDef *gd, bool showInline=FALSE)
void writeNamespaces(OutputList &ol, const QCString &title)
void writeDirs(OutputList &ol, const QCString &title)
static bool suppressDocWarnings
void writeTagFile(FTextStream &)
virtual bool isReference() const
bool addClass(const ClassDef *def)
Simplified and optimized version of QTextStream.
void writeInlineClasses(OutputList &ol)
int find(char c, int index=0, bool cs=TRUE) const
void addMemberToList(MemberListType lt, MemberDef *md)
void removeMember(MemberDef *md)
void setGroupTitle(const char *newtitle)
const char * groupTitle() const
MemberDef * getGroupAlias() const
MemberList * allMemberList
GroupList * partOfGroups() const
void append(const char *key, const T *d)
static constexpr double mg
void startMemberDocumentation(OutputList &ol)
int findRev(char c, int index=-1, bool cs=TRUE) const
Represents of a member definition list with configurable title.
void startTextLink(const char *file, const char *anchor)
void writeClasses(OutputList &ol, const QCString &title)
QCString title(SrcLangExt lang) const
void addGroup(const GroupDef *def)
bool parseText(const QCString &textStr)
void endGroupCollaboration(const DotGroupCollaboration &g)
QCString displayName(bool=TRUE) const
Represents of a member declaration list with configurable title and subtitle.
void writeDocAnchorsToTagFile(FTextStream &)
void setAutoDelete(bool val)
void writeDocumentation(OutputList &ol)
FileDef * getFileDef() const
void writeDetailedDescription(OutputList &ol, const QCString &title)
void setGroupAlias(MemberDef *md)
virtual DefType definitionType() const =0
Specifier virtualness(int count=0) const
void addIndexItem(Definition *context, MemberDef *md, const char *sectionAnchor=0, const char *title=0)
static SearchIndexIntf * searchIndex
Q_EXPORT uint qstrlen(const char *str)
const QCString & name() const
QList< Grouping > * groups
list of groups this entry belongs to
void writeSummaryLink(const char *file, const char *anchor, const char *title, bool first)
void inSort(const type *d)
QCString inbodyFile() const
void writeMemberDocumentation(OutputList &ol, MemberListType lt, const QCString &title)
void findSectionsInDocumentation()
void addMembersToMemberGroup()
void setGroupDefForAllMembers(GroupDef *g, Grouping::GroupPri_t pri, const QCString &fileName, int startLine, bool hasDocs)
void pushGeneratorState()
void startMemberDeclaration()
bool isLinkableInProject() const
QCString convertToHtml(const char *s, bool keepEntities)
static void writeVhdlDeclarations(MemberList *, OutputList &, GroupDef *, ClassDef *, FileDef *, NamespaceDef *)
SrcLangExt getLanguage() const
virtual QCString trAuthor(bool first_capital, bool singular)=0
virtual void addWord(const char *word, bool hiPriority)=0
bool findGroup(const GroupDef *def) const
bool insertMember(MemberDef *def, bool docOnly=FALSE)
bool remove(const char *key)
virtual QCString trGeneratedAutomatically(const char *s)=0
int startLine
start line of entry in the source
void disable(OutputGenerator::OutputType o)
void makePartOfGroup(GroupDef *gd)
static SectionDict * sectionDict
void writeSummaryLinks(OutputList &ol)
void addGroupToGroups(Entry *root, GroupDef *subGroup)
void setNeedsSorting(bool b)
A bunch of utility functions.
const char * data() const
void addGroupListToTitle(OutputList &ol, Definition *d)
virtual bool hasUserDocumentation() const
#define Config_getString(val)
void setInGroup(bool inGroup)
void writeDoc(DocRoot *root, Definition *ctx, MemberDef *md)
GroupDef(const char *fileName, int line, const char *name, const char *title, const char *refFileName=0)
QList< MemberList > m_memberLists
void enable(OutputGenerator::OutputType o)
#define Config_getBool(val)
ClassDef * getClassDef() const
virtual bool isVisible() const
QCString briefFile() const
virtual QCString trGroup(bool first_capital, bool singular)=0
virtual QCString qualifiedName() const
void addPage(PageDef *def)
void warn(const char *file, int line, const char *fmt,...)
bool isLinkableInProject() const
QCString groupname
name of the group
void err(const char *fmt,...)
void writeMemberDeclarations(OutputList &ol, MemberListType lt, const QCString &title)
int findAt(const QCString &key)
void addExample(const PageDef *def)
const char * memberName() const
MemberType memberType() const
virtual QCString trMore()=0
virtual QCString briefDescription(bool abbreviate=FALSE) const
void addClassToGroups(Entry *root, ClassDef *cd)
MemberGroupSDict * memberGroupSDict
void startGroupHeader(int extraLevels=0)
QCString mid(uint index, uint len=0xffffffff) const
QCString getOutputFileBase() const
int match(const QCString &str, int index=0, int *len=0, bool indexIsStart=TRUE) const
void writeDocumentationPage(OutputList &ol, const char *scopeName, Definition *container)
bool hasDetailedDescription() const
void writeTagFile(FTextStream &)
QCString doc
documentation block (partly parsed)
bool isLinkableInProject() const
void addFile(const FileDef *def)
void endSection(const char *lab, SectionInfo::SectionType t)
const char * getGroupFileName() const
bool addNamespace(const NamespaceDef *def)
virtual Definition * getOuterScope() const
void writeNestedGroups(OutputList &ol, const QCString &title)
GroupDef * getGroupDef() const
void writeDeclaration(OutputList &ol, const ClassDef::CompoundType *filter=0, const char *header=0, bool localNames=FALSE)
QCString getOutputFileBase() const
MemberList * getMemberList(MemberListType lt) const
ArgumentList * argumentList() const
void startTextBlock(bool dense=FALSE)
A model of a page symbol.
virtual Kind kind() const =0
QCString fileName
file this entry was extracted from
Base class representing a piece of a documentation page.
virtual void setCurrentDoc(Definition *ctx, const char *anchor, bool isSourceFile)=0
QCString getOutputFileBase() const
void writeAnchor(const char *fileName, const char *name)
MemberNameInfoSDict * allMemberNameInfoSDict
void endMemberDescription()
ClassDef * getClassDefOfAnonymousType()
static const char * getGroupPriName(GroupPri_t priority)
void addRefItem(const QList< ListItemInfo > *sli, const char *key, const char *prefix, const char *name, const char *title, const char *args, Definition *scope)
Translator * theTranslator
void writeDocumentation(OutputList &ol, Definition *container=0)
bool needsSorting() const
virtual QCString trDir(bool first_capital, bool singular)=0
int getGroupStartLine() const
static QCString listTypeAsString(MemberListType type)
void endTextBlock(bool paraBreak=FALSE)
void writeQuickMemberLinks(OutputList &ol, MemberDef *currentMd) const
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 startTitleHead(const char *fileName)
void createSubDirs(QDir &d)
void writeBriefDescription(OutputList &ol)
void endMemberDeclarations(OutputList &ol)
void distributeMemberGroupDocumentation()
void removeMemberFromList(MemberListType lt, MemberDef *md)
void setGroupDef(GroupDef *gd, Grouping::GroupPri_t pri, const QCString &fileName, int startLine, bool hasDocs, MemberDef *member=0)
void endMemberDocumentation(OutputList &ol)
void docFindSections(const char *input, Definition *d, MemberGroup *mg, const char *fileName)
bool isLinkableInProject() const
QCString getOutputFileBase() const
void startMemberHeader(const char *anchor)
void docify(const char *s)
void insertMemberAlign(bool templ=FALSE)
void findSectionsInDocumentation()
T * find(const char *key)
void startSection(const char *lab, const char *title, SectionInfo::SectionType t)
virtual QCString documentation() const
void insertAt(int i, const char *key, const T *d)
void writeObjectLink(const char *ref, const char *file, const char *anchor, const char *name)
void setAutoDelete(bool enable)
QCString getOutputFileBase() const
void writeDeclaration(OutputList &ol, const char *title, bool isConstantGroup=false, bool localName=FALSE)
void addListReferences(Definition *def)
QCString stripExtension(const char *fName)
QCString localName() const
void updateLanguage(const Definition *)
static IndexList * indexList
void writeAuthorSection(OutputList &ol)
QCString title(SrcLangExt lang) const
QTextStream & endl(QTextStream &s)
ArgumentList * templateArguments() const
bool getGroupHasDocs() const
void addListReferences(Definition *d)