29 #include "docparser.h" 69 virtual void writeString(
const char *,
bool)
const = 0;
70 virtual void writeBreak(
int indent)
const = 0;
71 virtual void writeLink(
const char *extRef,
const char *file,
72 const char *anchor,
const char *text
82 void writeString(
const char *s,
bool keepSpaces)
const;
83 void writeBreak(
int indent)
const;
84 void writeLink(
const char *extRef,
const char *file,
85 const char *anchor,
const char *text
100 void append(uint letter,
typename T::ElementType *elem)
111 int compareValues(
const T *l1,
const T *l2)
const 113 return (
int)l1->letter()-(int)l2->letter();
129 bool autoBreak=FALSE,
131 bool keepSpaces=FALSE,
149 bool forceEmptyScope=FALSE,
152 const char *forceTagFile=0
162 bool lookForSpecializations = TRUE,
164 bool checkScope = FALSE
167 bool resolveLink(
const char *scName,
178 const char *,
bool inSeeBlock,
const char *);
181 const char *linkTxt=0);
202 QCString resolveDefines(
const char *n);
211 bool mayBeUnlinkable=FALSE,
212 bool mayBeHidden=FALSE,
224 inline bool isId(
int c)
226 return c==
'_' || c>=128 || c<0 || isalnum(c);
250 const char *projName,
const char *projNum,
const char *projBrief);
256 QCString replaceAnonymousScopes(
const QCString &s,
const char *replacement=0);
261 bool classHasVisibleChildren(
ClassDef *cd);
262 bool namespaceHasVisibleChild(
NamespaceDef *nd,
bool includeClasses);
263 bool classVisibleInIndex(
ClassDef *cd);
272 bool allowEmptyClass=FALSE);
276 QCString stripScope(
const char *name);
282 QCString convertToLaTeX(
const QCString &s,
bool insideTabbing=FALSE,
bool keepSpaces=FALSE);
286 QCString convertToJSString(
const char *s);
297 QCString normalizeNonTemplateArgumentsInString(
310 bool parentOnly=TRUE,
324 const char *name,
const char *title,
const char *args,
Definition *scope);
328 const char *fileName,
int startLine,
335 QCString escapeCharsInString(
const char *name,
bool allowDots,
bool allowUnderscore=FALSE);
339 void filterLatexString(
FTextStream &t,
const char *str,
340 bool insideTabbing=FALSE,
341 bool insidePre=FALSE,
342 bool insideItem=FALSE,
343 bool keepSpaces=FALSE);
345 QCString latexEscapeLabelName(
const char *s,
bool insideTabbing);
346 QCString latexEscapeIndexChars(
const char *s,
bool insideTabbing);
347 QCString latexEscapePDFString(
const char *s);
349 QCString rtfFormatBmkStr(
const char *name);
353 bool checkExtension(
const char *fName,
const char *ext);
355 QCString stripExtensionGeneral(
const char *fName,
const char *ext);
357 QCString stripExtension(
const char *fName);
359 void replaceNamespaceAliases(
QCString &scope,
int i);
366 int computeQualifiedIndex(
const QCString &name);
368 void addDirPrefix(
QCString &fileName);
370 QCString relativePathToRoot(
const char *name);
372 void createSubDirs(
QDir &d);
386 bool updateLanguageMapping(
const QCString &extension,
const QCString &parser);
388 void initDefaultExtensionMapping();
389 void addCodeOnlyMappings();
404 QCString recodeString(
const QCString &str,
const char *fromEncoding,
const char *toEncoding);
408 int countAliasArguments(
const QCString argList);
422 bool filter=TRUE,
bool isSourceCode=FALSE);
429 int nextUtf8CharPosition(
const QCString &utf8Str,
int len,
int startPos);
430 const char *writeUtf8Char(
FTextStream &t,
const char *s);
437 unsigned short width;
438 unsigned short height;
439 unsigned char *content;
440 unsigned char *alpha;
458 QCString getDotImageExtension(
void);
460 bool fileVisibleInIndex(
FileDef *fd,
bool &genSourceFile);
471 MemberListType inListType,
477 bool mainPageHasTitle();
478 bool openOutputFile(
const char *outFile,
QFile &f);
Traverses directory structures and contents in a platform-independent way.
Definition: qdir.h:52
Sorted dictionary of MemberNameInfo objects.
Definition: membername.h:92
Definition: qstrlist.h:57
void writeColoredImgData(const char *dir, ColoredImgDataItem data[])
Writes the intensity only bitmap representated by data as an image to directory dir using the colors ...
Definition: util.cpp:8000
This class represents an function or template argument list.
Definition: arguments.h:89
This file contains a number of basic enums and types.
Ordered dictionary of elements of type T.
Definition: sortdict.h:74
The common base class of all entity definitions found in the sources.
Definition: definition.h:92
A model of a namespace symbol.
Definition: namespacedef.h:39
ClassDef * getClass(const char *key)
Definition: util.cpp:473
A model of a class/file/namespace member symbol.
Definition: memberdef.h:43
void extractNamespaceName(const QCString &scopeName, QCString &className, QCString &namespaceName, bool allowEmptyClass=FALSE)
Definition: util.cpp:5581
QCString substitute(const QCString &s, const QCString &src, const QCString &dst)
substitute all occurrences of src in s by dst
Definition: util.cpp:5190
bool checkIfTypedef(Definition *scope, FileDef *fileScope, const char *n)
Definition: util.cpp:7266
T * find(int key)
Definition: sortdict.h:555
QCString stripLeadingAndTrailingEmptyLines(const QCString &s, int &docLine)
Special version of QCString::stripWhiteSpace() that only strips completely blank lines.
Definition: util.cpp:6982
bool getDefs(const QCString &scopeName, const QCString &memberName, const char *, MemberDef *&md, ClassDef *&cd, FileDef *&fd, NamespaceDef *&nd, GroupDef *&gd, bool forceEmptyScope=FALSE, FileDef *currentFile=0, bool checkCV=FALSE, const char *forceTagFile=0)
Definition: util.cpp:4035
void setAutoDelete(bool val)
Definition: sortdict.h:545
QCString stripTemplateSpecifiersFromScope(const QCString &fullName, bool parentOnly=TRUE, QCString *lastScopeStripped=0)
Definition: util.cpp:6329
QCString langToString(SrcLangExt lang)
Returns a string representation of lang.
Definition: util.cpp:8176
Interface used for generating documentation.
Definition: outputgen.h:507
A model of a file symbol.
Definition: filedef.h:64
QCString convertNameToFile(const char *name, bool allowDots=FALSE, bool allowUnderscore=FALSE)
Definition: util.cpp:5456
This struct is used to capture the tag file information for an Entry.
Definition: entry.h:50
Simplified and optimized version of QTextStream.
Definition: ftextstream.h:11
A sorted dictionary of ClassDef objects.
Definition: classlist.h:56
int guessSection(const char *name)
Definition: util.cpp:315
SrcLangExt
Language as given by extension.
Definition: types.h:41
int filterCRLF(char *buf, int len)
Definition: util.cpp:2366
List of base classes.
Definition: classdef.h:550
QCString stripFromPath(const QCString &path)
Definition: util.cpp:298
Abstract interface for a hyperlinked text fragment.
Definition: util.h:65
QCString generateMarker(int id)
Definition: util.cpp:266
ClassDef * newResolveTypedef(FileDef *fileScope, MemberDef *md, MemberDef **pMemType=0, QCString *pTemplSpec=0, QCString *pResolvedType=0, ArgumentList *actTemplParams=0)
Definition: util.cpp:536
QCString mergeScopes(const QCString &leftScope, const QCString &rightScope)
Definition: util.cpp:6390
QCString stripFromIncludePath(const QCString &path)
Definition: util.cpp:306
void inSort(int key, const T *d)
Definition: sortdict.h:532
bool copyFile(const QCString &src, const QCString &dest)
Copies the contents of file with name src to the newly created file with name dest.
Definition: util.cpp:8077
QCString removeAnonymousScopes(const QCString &s)
Definition: util.cpp:164
A list of ClassDef objects.
Definition: classlist.h:30
int getPrefixIndex(const QCString &name)
Definition: util.cpp:5246
Class representing a section in a page.
Definition: section.h:27
QCString convertToId(const char *s)
Definition: util.cpp:5788
int extractClassNameFromType(const QCString &type, int &pos, QCString &name, QCString &templSpec, SrcLangExt=SrcLangExt_Unknown)
Definition: util.cpp:6066
QCString getOverloadDocs()
Definition: util.cpp:5962
QCString substituteTemplateArgumentsInString(const QCString &name, ArgumentList *formalArgs, ArgumentList *actualArgs)
Definition: util.cpp:6202
A list of MemberDef objects.
Definition: memberlist.h:32
maps a unicode character code to a list of T::ElementType's
Definition: util.h:96
A sorted dictionary of NamespaceDef objects.
Definition: namespacedef.h:173
QCString replaceColorMarkers(const char *str)
Replaces any markers of the form ##AA in input string str by new markers of the form #AABBCC...
Definition: util.cpp:8030
bool resolveRef(const char *scName, const char *name, bool inSeeBlock, Definition **resContext, MemberDef **resMember, bool lookForSpecializations=TRUE, FileDef *currentFile=0, bool checkScope=FALSE)
Definition: util.cpp:4581
QCString getFileFilter(const char *name, bool isSourceCode)
Definition: util.cpp:2427
QCString convertToXML(const char *s)
Definition: util.cpp:5820
Buffer used to store strings.
Definition: bufstr.h:30
The QFile class is an I/O device that operates on files.
Definition: qfile.h:50
QList< ArgumentList > * copyArgumentLists(const QList< ArgumentList > *srcLists)
Definition: util.cpp:6308
QCString correctURL(const QCString &url, const QCString &relPath)
Corrects URL url according to the relative path relPath.
Definition: util.cpp:8220
uint getUtf8Code(const QCString &s, int idx)
Get one unicode character as an unsigned integer from utf-8 string.
Definition: util.cpp:8376
A model of a page symbol.
Definition: pagedef.h:29
uint getUtf8CodeToLower(const QCString &s, int idx)
Returns one unicode character as an unsigned integer from utf-8 string, making the character lower ca...
Definition: util.cpp:8412
Class representing a list of output generators that are written to in parallel.
Definition: outputlist.h:54
Protection
Protection level of members.
Definition: types.h:26
bool readInputFile(const char *fileName, BufStr &inBuf, bool filter=TRUE, bool isSourceCode=FALSE)
read a file name fileName and optionally filter and transcode it
Definition: util.cpp:7784
int lineBlock(const QCString text, const QCString marker)
Returns the line number of the line following the line with the marker.
Definition: util.cpp:8155
bool containsWord(const QCString &s, const QCString &word)
returns TRUE iff string s contains word w
Definition: util.cpp:6942
void convertProtectionLevel(MemberListType inListType, Protection inProt, int *outListType1, int *outListType2)
Computes for a given list type inListType, which are the the corresponding list type(s) in the base c...
Definition: util.cpp:8514
A sorted dictionary of Example objects.
Definition: example.h:36
Data associated with a HSV colored image.
Definition: util.h:434
uint getUtf8CodeToUpper(const QCString &s, int idx)
Returns one unicode character as ian unsigned interger from utf-8 string, making the character upper ...
Definition: util.cpp:8427
The QFileInfo class provides system-independent file information.
Definition: qfileinfo.h:51
Unsorted dictionary of FileName objects.
Definition: filename.h:67
QCString fileToString(const char *name, bool filter=FALSE, bool isSourceCode=FALSE)
Definition: util.cpp:2506
This is an alternative implementation of QCString.
Definition: qcstring.h:131
A sorted dictionary of MemberGroup objects.
Definition: membergroup.h:129
A model of a group of symbols.
Definition: groupdef.h:45
Implements TextGeneratorIntf for an OutputDocInterface stream.
Definition: util.h:77
A class representing of a compound symbol.
Definition: classdef.h:59
int getScopeFragment(const QCString &s, int p, int *l)
Definition: util.cpp:6425
QCString clearBlock(const char *s, const char *begin, const char *end)
Clear a text block s from begin to end markers.
Definition: htmlgen.cpp:110
QCString extractBlock(const QCString text, const QCString marker)
Returns the section of text, in between a pair of markers.
Definition: util.cpp:8110
QCString getLanguageSpecificSeparator(SrcLangExt lang, bool classScope=FALSE)
Returns the scope separator to use given the programming language lang.
Definition: util.cpp:8201
QCString convertToHtml(const char *s, bool keepEntities=TRUE)
Definition: util.cpp:5849