Doxygen
|
A bunch of utility functions. More...
#include <memory>
#include <unordered_map>
#include <algorithm>
#include <functional>
#include <fstream>
#include <variant>
#include <string_view>
#include <ctype.h>
#include "types.h"
#include "docparser.h"
#include "containers.h"
#include "outputgen.h"
#include "regex.h"
#include "conceptdef.h"
#include "construct.h"
Go to the source code of this file.
Classes | |
class | TextGeneratorIntf |
Abstract interface for a hyperlinked text fragment. More... | |
class | TextGeneratorOLImpl |
Implements TextGeneratorIntf for an OutputDocInterface stream. More... | |
struct | GetDefInput |
struct | GetDefResult |
struct | SelectionBlock |
struct | SelectionMarkerInfo |
struct | KeywordSubstitution |
struct | ColoredImgDataItem |
Data associated with a HSV colored image. More... | |
Typedefs | |
using | SelectionBlockList = std::vector<SelectionBlock> |
using | KeywordSubstitutionList = std::vector<KeywordSubstitution> |
Functions | |
QCString | langToString (SrcLangExt lang) |
Returns a string representation of lang. | |
QCString | getLanguageSpecificSeparator (SrcLangExt lang, bool classScope=FALSE) |
Returns the scope separator to use given the programming language lang. | |
void | linkifyText (const TextGeneratorIntf &ol, const Definition *scope, const FileDef *fileScope, const Definition *self, const QCString &text, bool autoBreak=FALSE, bool external=TRUE, bool keepSpaces=FALSE, int indentLevel=0) |
QCString | fileToString (const QCString &name, bool filter=FALSE, bool isSourceCode=FALSE) |
GetDefResult | getDefs (const GetDefInput &input) |
QCString | getFileFilter (const QCString &name, bool isSourceCode) |
bool | resolveRef (const QCString &scName, const QCString &name, bool inSeeBlock, const Definition **resContext, const MemberDef **resMember, bool lookForSpecializations=TRUE, const FileDef *currentFile=nullptr, bool checkScope=FALSE) |
bool | resolveLink (const QCString &scName, const QCString &lr, bool inSeeBlock, const Definition **resContext, QCString &resAnchor, const QCString &prefix=QCString()) |
void | generateFileRef (OutputList &ol, const QCString &, const QCString &linkTxt=QCString()) |
void | writePageRef (OutputList &ol, const QCString &cn, const QCString &mn) |
bool | matchArguments2 (const Definition *srcScope, const FileDef *srcFileScope, const ArgumentList *srcAl, const Definition *dstScope, const FileDef *dstFileScope, const ArgumentList *dstAl, bool checkCV, SrcLangExt lang) |
void | mergeArguments (ArgumentList &, ArgumentList &, bool forceNameOverwrite=FALSE) |
QCString | substituteClassNames (const QCString &s) |
QCString | selectBlocks (const QCString &s, const SelectionBlockList &blockList, const SelectionMarkerInfo &markerInfo) |
remove disabled blocks and all block markers from s and return the result as a string | |
void | checkBlocks (const QCString &s, const QCString fileName, const SelectionMarkerInfo &markerInfo) |
QCString | removeEmptyLines (const QCString &s) |
FileDef * | findFileDef (const FileNameLinkedMap *fnMap, const QCString &n, bool &ambig) |
QCString | findFilePath (const QCString &file, bool &ambig) |
QCString | showFileDefMatches (const FileNameLinkedMap *fnMap, const QCString &n) |
EntryType | guessSection (const QCString &name) |
bool | isId (int c) |
bool | isIdJS (int c) |
QCString | removeRedundantWhiteSpace (const QCString &s) |
QCString | inlineArgListToDoc (const ArgumentList &al) |
QCString | argListToString (const ArgumentList &al, bool useCanonicalType=FALSE, bool showDefVals=TRUE) |
QCString | tempArgListToString (const ArgumentList &al, SrcLangExt lang, bool includeDefaults=true) |
QCString | generateMarker (int id) |
void | writeExamples (OutputList &ol, const ExampleList &el) |
QCString | stripAnonymousNamespaceScope (const QCString &s) |
QCString | stripFromPath (const QCString &path) |
QCString | stripFromIncludePath (const QCString &path) |
bool | rightScopeMatch (const QCString &scope, const QCString &name) |
bool | leftScopeMatch (const QCString &scope, const QCString &name) |
QCString | substituteKeywords (const QCString &s, const KeywordSubstitutionList &keywords) |
QCString | substituteKeywords (const QCString &s, const QCString &title, const QCString &projName, const QCString &projNum, const QCString &projBrief) |
int | getPrefixIndex (const QCString &name) |
QCString | removeAnonymousScopes (const QCString &s) |
QCString | replaceAnonymousScopes (const QCString &s, const QCString &replacement=QCString()) |
QCString | convertNameToFile (const QCString &name, bool allowDots=FALSE, bool allowUnderscore=FALSE) |
QCString | generateAnonymousAnchor (const QCString &fileName, int count) |
void | extractNamespaceName (const QCString &scopeName, QCString &className, QCString &namespaceName, bool allowEmptyClass=FALSE) |
QCString | insertTemplateSpecifierInScope (const QCString &scope, const QCString &templ) |
QCString | stripScope (const QCString &name) |
QCString | convertToId (const QCString &s) |
QCString | correctId (const QCString &s) |
QCString | convertToHtml (const QCString &s, bool keepEntities=TRUE) |
QCString | convertToXML (const QCString &s, bool keepEntities=FALSE) |
QCString | convertToJSString (const QCString &s) |
QCString | getOverloadDocs () |
void | addMembersToMemberGroup (MemberList *ml, MemberGroupList *pMemberGroups, const Definition *context) |
int | extractClassNameFromType (const QCString &type, int &pos, QCString &name, QCString &templSpec, SrcLangExt=SrcLangExt::Unknown) |
QCString | normalizeNonTemplateArgumentsInString (const QCString &name, const Definition *context, const ArgumentList &formalArgs) |
QCString | substituteTemplateArgumentsInString (const QCString &name, const ArgumentList &formalArgs, const ArgumentList *actualArgs) |
QCString | stripTemplateSpecifiersFromScope (const QCString &fullName, bool parentOnly=TRUE, QCString *lastScopeStripped=nullptr, QCString scopeName=QCString(), bool allowArtificial=true) |
QCString | resolveTypeDef (const Definition *d, const QCString &name, const Definition **typedefContext=nullptr) |
QCString | mergeScopes (const QCString &leftScope, const QCString &rightScope) |
int | getScopeFragment (const QCString &s, int p, int *l) |
void | addRefItem (const RefItemVector &sli, const QCString &key, const QCString &prefix, const QCString &name, const QCString &title, const QCString &args, const Definition *scope) |
PageDef * | addRelatedPage (const QCString &name, const QCString &ptitle, const QCString &doc, const QCString &fileName, int docLine, int startLine, const RefItemVector &sli=RefItemVector(), GroupDef *gd=nullptr, const TagInfo *tagInfo=nullptr, bool xref=FALSE, SrcLangExt lang=SrcLangExt::Unknown) |
bool | getCaseSenseNames () |
QCString | escapeCharsInString (const QCString &name, bool allowDots, bool allowUnderscore=FALSE) |
QCString | unescapeCharsInString (const QCString &s) |
void | addGroupListToTitle (OutputList &ol, const Definition *d) |
QCString | linkToText (SrcLangExt lang, const QCString &link, bool isFileName) |
bool | checkExtension (const QCString &fName, const QCString &ext) |
void | addHtmlExtensionIfMissing (QCString &fName) |
QCString | stripExtensionGeneral (const QCString &fName, const QCString &ext) |
QCString | stripExtension (const QCString &fName) |
int | computeQualifiedIndex (const QCString &name) |
Return the index of the last :: in the string name that is still before the first <. | |
void | addDirPrefix (QCString &fileName) |
QCString | relativePathToRoot (const QCString &name) |
QCString | determineAbsoluteIncludeName (const QCString &curFile, const QCString &incFileName) |
void | createSubDirs (const Dir &d) |
void | clearSubDirs (const Dir &d) |
QCString | removeLongPathMarker (QCString path) |
QCString | stripPath (const QCString &s) |
bool | containsWord (const QCString &s, const char *word) |
returns TRUE iff string s contains word w | |
bool | findAndRemoveWord (QCString &s, const char *word) |
removes occurrences of whole word from sentence, while keeps internal spaces and reducing multiple sequences of spaces. | |
QCString | stripLeadingAndTrailingEmptyLines (const QCString &s, int &docLine) |
Special version of QCString::stripWhiteSpace() that only strips completely blank lines. | |
bool | updateLanguageMapping (const QCString &extension, const QCString &parser) |
SrcLangExt | getLanguageFromFileName (const QCString &fileName, SrcLangExt defLang=SrcLangExt::Cpp) |
SrcLangExt | getLanguageFromCodeLang (QCString &fileName) |
Routine to handle the language attribute of the \code command. | |
QCString | getFileNameExtension (const QCString &fn) |
void | initDefaultExtensionMapping () |
void | addCodeOnlyMappings () |
bool | checkIfTypedef (const Definition *scope, const FileDef *fileScope, const QCString &n) |
QCString | parseCommentAsText (const Definition *scope, const MemberDef *member, const QCString &doc, const QCString &fileName, int lineNr) |
bool | transcodeCharacterStringToUTF8 (std::string &input, const char *inputEncoding) |
QCString | recodeString (const QCString &str, const char *fromEncoding, const char *toEncoding) |
void | writeTypeConstraints (OutputList &ol, const Definition *d, const ArgumentList &al) |
QCString | convertCharEntitiesToUTF8 (const QCString &s) |
void | stackTrace () |
bool | readInputFile (const QCString &fileName, std::string &contents, bool filter=TRUE, bool isSourceCode=FALSE) |
read a file name fileName and optionally filter and transcode it | |
QCString | filterTitle (const QCString &title) |
bool | patternMatch (const FileInfo &fi, const StringVector &patList) |
QCString | externalLinkTarget (const bool parent=false) |
QCString | createHtmlUrl (const QCString &relPath, const QCString &ref, bool href, bool islocalFile, const QCString &targetFileName, const QCString &anchor) |
QCString | externalRef (const QCString &relPath, const QCString &ref, bool href) |
int | nextUtf8CharPosition (const QCString &utf8Str, uint32_t len, uint32_t startPos) |
void | writeMarkerList (OutputList &ol, const std::string &markerText, size_t numMarkers, std::function< void(size_t)> replaceFunc) |
void | writeColoredImgData (const QCString &dir, ColoredImgDataItem data[]) |
Writes the intensity only bitmap represented by data as an image to directory dir using the colors defined by HTML_COLORSTYLE_*. | |
QCString | replaceColorMarkers (const QCString &str) |
Replaces any markers of the form ##AA in input string str by new markers of the form #AABBCC, where #AABBCC represents a valid color, based on the intensity represented by hex number AA and the current HTML_COLORSTYLE_* settings. | |
bool | copyFile (const QCString &src, const QCString &dest) |
Copies the contents of file with name src to the newly created file with name dest. | |
int | lineBlock (const QCString &text, const QCString &marker) |
Returns the line number of the line following the line with the marker. | |
bool | isURL (const QCString &url) |
Checks whether the given url starts with a supported protocol. | |
QCString | correctURL (const QCString &url, const QCString &relPath) |
Corrects URL url according to the relative path relPath. | |
QCString | processMarkup (const QCString &s) |
bool | protectionLevelVisible (Protection prot) |
QCString | stripIndentation (const QCString &s) |
void | stripIndentationVerbatim (QCString &doc, const int indentationLevel) |
QCString | getDotImageExtension () |
bool | fileVisibleInIndex (const FileDef *fd, bool &genSourceFile) |
QCString | extractDirection (QCString &docs) |
Strip the direction part from docs and return it as a string in canonical form The input docs string can start with e.g. | |
void | convertProtectionLevel (MemberListType inListType, Protection inProt, MemberListType *outListType1, MemberListType *outListType2) |
Computes for a given list type inListType, which are the the corresponding list type(s) in the base class that are to be added to this list. | |
bool | mainPageHasTitle () |
bool | openOutputFile (const QCString &outFile, std::ofstream &f) |
StringVector | split (const std::string &s, const std::string &delimiter) |
split input string s by string delimiter delimiter. | |
StringVector | split (const std::string &s, const reg::Ex &delimiter) |
split input string s by regular expression delimiter delimiter. | |
int | findIndex (const StringVector &sv, const std::string &s) |
find the index of a string in a vector of strings, returns -1 if the string could not be found | |
int | findIndex (const std::string &s, const reg::Ex &re) |
find the index of the first occurrence of pattern re in a string s returns -1 if the pattern could not be found | |
std::string | join (const StringVector &s, const std::string &delimiter) |
create a string where the string in the vector are joined by the given delimiter | |
bool | recognizeFixedForm (const QCString &contents, FortranFormat format) |
FortranFormat | convertFileNameFortranParserCode (QCString fn) |
QCString | integerToAlpha (int n, bool upper=true) |
QCString | integerToRoman (int n, bool upper=true) |
QCString | getEncoding (const FileInfo &fi) |
QCString | fixSpaces (const QCString &s) |
QCString | detab (const QCString &s, size_t &refIndent) |
QCString | getProjectId () |
QCString | projectLogoFile () |
void | mergeMemberOverrideOptions (MemberDefMutable *md1, MemberDefMutable *md2) |
size_t | updateColumnCount (const char *s, size_t col) |
A bunch of utility functions.
Definition in file util.h.
using KeywordSubstitutionList = std::vector<KeywordSubstitution> |
using SelectionBlockList = std::vector<SelectionBlock> |
void addCodeOnlyMappings | ( | ) |
Definition at line 5543 of file util.cpp.
References updateLanguageMapping().
Referenced by generateOutput().
void addDirPrefix | ( | QCString & | fileName | ) |
void addGroupListToTitle | ( | OutputList & | ol, |
const Definition * | d ) |
Definition at line 5233 of file util.cpp.
References recursivelyAddGroupListToTitle(), and TRUE.
Referenced by ClassDefImpl::writeDocumentation(), ConceptDefImpl::writeDocumentation(), FileDefImpl::writeDocumentation(), GroupDefImpl::writeDocumentation(), ModuleDefImpl::writeDocumentation(), and NamespaceDefImpl::writeDocumentation().
void addHtmlExtensionIfMissing | ( | QCString & | fName | ) |
Definition at line 5243 of file util.cpp.
References QCString::find(), QCString::findRev(), Doxygen::htmlFileExtension, and QCString::isEmpty().
Referenced by HtmlCodeGenerator::_writeCodeLink(), Crawlmap::addContentsItem(), DocSets::addContentsItem(), EclipseHelp::addContentsItem(), HtmlHelp::addContentsItem(), Qhp::addContentsItem(), Crawlmap::addIndexFile(), Sitemap::addIndexFile(), common_attributes(), convertMapFile(), dumpSymbol(), field2URL(), FTVHelp::Private::generateTree(), Crawlmap::initialize(), makeFileName(), makeFileName(), makeURL(), DefinitionImpl::navigationPathAsString(), node2URL(), HtmlDocVisitor::operator()(), replaceRef(), SearchIndexExternal::setCurrentDoc(), HtmlGenerator::startFile(), HtmlGenerator::startIndexItem(), HtmlDocVisitor::startLink(), HtmlGenerator::startTextLink(), LayoutNavEntry::url(), DefinitionImpl::writeDocAnchorsToTagFile(), writeIndex(), HtmlGenerator::writeInheritedSectionTitle(), writeJavasScriptSearchDataPage(), writeMapArea(), HtmlGenerator::writeObjectLink(), ClassDefImpl::writeQuickMemberLinks(), FileDefImpl::writeQuickMemberLinks(), GroupDefImpl::writeQuickMemberLinks(), NamespaceDefImpl::writeQuickMemberLinks(), HtmlGenerator::writeSplitBarAsString(), HtmlGenerator::writeStartAnnoItem(), HtmlGenerator::writeSummaryLink(), ClassDefImpl::writeTagFile(), ConceptDefImpl::writeTagFile(), DirDefImpl::writeTagFile(), FileDefImpl::writeTagFile(), GroupDefImpl::writeTagFile(), MemberDefImpl::writeTagFile(), ModuleDefImpl::writeTagFile(), NamespaceDefImpl::writeTagFile(), PageDefImpl::writeTagFile(), VhdlDocGen::writeTagFile(), DocSets::writeToken(), HtmlCodeGenerator::writeTooltip(), and DotNode::writeUrl().
void addMembersToMemberGroup | ( | MemberList * | ml, |
MemberGroupList * | pMemberGroups, | ||
const Definition * | context ) |
Definition at line 4448 of file util.cpp.
References ASSERT, MemberList::container(), Definition::docFile(), end(), MemberGroup::insertMember(), Doxygen::memberGroupInfoMap, MemberVector::remove(), MemberDef::setMemberGroup(), and toMemberDefMutable().
void addRefItem | ( | const RefItemVector & | sli, |
const QCString & | key, | ||
const QCString & | prefix, | ||
const QCString & | name, | ||
const QCString & | title, | ||
const QCString & | args, | ||
const Definition * | scope ) |
Definition at line 5146 of file util.cpp.
References QCString::isEmpty(), and prefix.
Referenced by MemberDefImpl::addListReference(), addListReferences(), ClassDefImpl::addListReferences(), FileDefImpl::addListReferences(), GroupDefImpl::addListReferences(), ModuleDefImpl::addListReferences(), NamespaceDefImpl::addListReferences(), and buildPageList().
PageDef * addRelatedPage | ( | const QCString & | name, |
const QCString & | ptitle, | ||
const QCString & | doc, | ||
const QCString & | fileName, | ||
int | docLine, | ||
int | startLine, | ||
const RefItemVector & | sli = RefItemVector(), | ||
GroupDef * | gd = nullptr, | ||
const TagInfo * | tagInfo = nullptr, | ||
bool | xref = FALSE, | ||
SrcLangExt | lang = SrcLangExt::Unknown ) |
Definition at line 5016 of file util.cpp.
References SectionManager::add(), GroupDef::addPage(), convertNameToFile(), createPageDef(), Definition::docFile(), QCString::endsWith(), FALSE, SectionInfo::fileName(), TagInfo::fileName, LinkedMap< T, Hash, KeyEqual, Map >::find(), Definition::getOutputFileBase(), Definition::getReference(), Definition::getStartBodyLine(), PageDef::hasTitle(), Doxygen::htmlFileExtension, SectionManager::instance(), QCString::isEmpty(), Definition::isReference(), QCString::left(), QCString::length(), SectionInfo::lineNr(), Definition::name(), SectionType::Page, Doxygen::pageLinkedMap, qPrint(), SectionInfo::ref(), SectionManager::replace(), QCString::right(), DefinitionMutable::setBodySegment(), DefinitionMutable::setDocumentation(), PageDef::setFileName(), DefinitionMutable::setLanguage(), PageDef::setNestingLevel(), PageDef::setPageScope(), DefinitionMutable::setReference(), DefinitionMutable::setRefItems(), PageDef::setShowLineNo(), PageDef::setTitle(), SectionInfo::setTitle(), QCString::stripWhiteSpace(), TagInfo::tagName, PageDef::title(), TRUE, and warn.
QCString argListToString | ( | const ArgumentList & | al, |
bool | useCanonicalType = FALSE, | ||
bool | showDefVals = TRUE ) |
Definition at line 1174 of file util.cpp.
References Argument::array, Argument::attrib, ArgumentList::begin(), Argument::canType, ArgumentList::constSpecifier(), Argument::defval, ArgumentList::end(), QCString::find(), ArgumentList::hasParameters(), QCString::isEmpty(), QCString::left(), LValue, QCString::mid(), Argument::name, ArgumentList::pureSpecifier(), ArgumentList::refQualifier(), removeRedundantWhiteSpace(), RValue, ArgumentList::trailingReturnType(), Argument::type, and ArgumentList::volatileSpecifier().
Referenced by addMemberFunction(), DocParser::checkArgumentName(), DocParser::checkUnOrMultipleDocumentedParams(), findGlobalMember(), findMember(), SymbolResolver::Private::getResolvedSymbol(), matchArguments2(), mergeArguments(), and substituteTemplateArgumentsInString().
void checkBlocks | ( | const QCString & | s, |
const QCString | fileName, | ||
const SelectionMarkerInfo & | markerInfo ) |
Definition at line 6849 of file util.cpp.
References SelectionMarkerInfo::beginLen, SelectionMarkerInfo::beginStr, SelectionMarkerInfo::closeLen, SelectionMarkerInfo::closeStr, QCString::data(), SelectionMarkerInfo::endLen, SelectionMarkerInfo::endStr, QCString::isEmpty(), SelectionMarkerInfo::markerChar, qPrint(), qstrncmp(), and warn.
Referenced by HtmlGenerator::init(), and LatexGenerator::init().
Definition at line 5238 of file util.cpp.
References QCString::length(), and QCString::right().
Referenced by copyLatexStyleSheet(), and extraLatexStyleSheet().
bool checkIfTypedef | ( | const Definition * | scope, |
const FileDef * | fileScope, | ||
const QCString & | n ) |
Returns true iff the given name string appears to be a typedef in scope.
Definition at line 5653 of file util.cpp.
References FALSE, getMemberFromSymbol(), MemberDef::isTypedef(), and TRUE.
Referenced by isVarWithConstructor().
void clearSubDirs | ( | const Dir & | d | ) |
Definition at line 4021 of file util.cpp.
References Config_getBool, Config_getInt, Dir::exists(), Dir::isEmpty(), Dir::rmdir(), QCString::sprintf(), and QCString::str().
Referenced by DocbookGenerator::cleanup(), HtmlGenerator::cleanup(), LatexGenerator::cleanup(), ManGenerator::cleanup(), RTFGenerator::cleanup(), and generateXML().
int computeQualifiedIndex | ( | const QCString & | name | ) |
Return the index of the last :: in the string name that is still before the first <.
Definition at line 7151 of file util.cpp.
References QCString::data(), and QCString::length().
Referenced by addToMap(), getMemberFromSymbol(), SymbolResolver::Private::getResolvedSymbolRec(), and SymbolResolver::Private::getResolvedTypeRec().
bool containsWord | ( | const QCString & | s, |
const char * | word ) |
returns TRUE
iff string s contains word w
Definition at line 5309 of file util.cpp.
References QCString::isEmpty(), QCString::str(), reg::Match::str(), and word.
Definition at line 4398 of file util.cpp.
References GrowBuf::addChar(), GrowBuf::addStr(), QCString::data(), end(), GrowBuf::get(), HtmlEntityMapper::instance(), QCString::isEmpty(), HtmlEntityMapper::name2sym(), and HtmlEntityMapper::Sym_Unknown.
Referenced by convertToJSString(), generateSqlite3ForPage(), generateXMLForPage(), getSQLDocBlock(), and parseCommentAsText().
FortranFormat convertFileNameFortranParserCode | ( | QCString | fn | ) |
Definition at line 6723 of file util.cpp.
References Fixed, Free, getFileNameExtension(), Doxygen::parserManager, and Unknown.
Referenced by convertCppComments().
This function determines the file name on disk of an item given its name, which could be a class name with template arguments, so special characters need to be escaped.
Definition at line 3858 of file util.cpp.
References Config_getBool, Config_getInt, QCString::data(), escapeCharsInString(), g_usedNames, g_usedNamesCount, g_usedNamesMutex, QCString::isEmpty(), QCString::left(), QCString::length(), QCString::prepend(), QCString::sprintf(), and QCString::str().
Referenced by addRelatedPage(), buildExampleList(), ClassDefImpl::ClassDefImpl(), ClassDefImpl::deepCopy(), DocAnchor::DocAnchor(), DocCite::DocCite(), ModuleDefImpl::getOutputFileBase(), DocParser::handleAHref(), PageDefImpl::PageDefImpl(), CCodeParser::parseCode(), FortranCodeParser::parseCode(), VHDLCodeParser::parseCode(), RefList::RefList(), FileDefImpl::setDiskNameLocal(), and NamespaceDefImpl::setFileNameLocal().
void convertProtectionLevel | ( | MemberListType | inListType, |
Protection | inProt, | ||
MemberListType * | outListType1, | ||
MemberListType * | outListType2 ) |
Computes for a given list type inListType, which are the the corresponding list type(s) in the base class that are to be added to this list.
So for public inheritance, the mapping is 1-1, so outListType1=inListType Private members are to be hidden completely.
For protected inheritance, both protected and public members of the base class should be joined in the protected member section.
For private inheritance, both protected and public members of the base class should be joined in the private member section.
Definition at line 6556 of file util.cpp.
References Config_getBool, MemberListType::Invalid(), MemberListType::isPrivate(), MemberListType::isProtected(), MemberListType::isPublic(), Private, Protected, Public, MemberListType::toProtected(), and MemberListType::toPublic().
Referenced by ClassDefImpl::countInheritedDecMembers(), and ClassDefImpl::writeInheritedMemberDeclarations().
Converts a string to a HTML-encoded string
Definition at line 4317 of file util.cpp.
References GrowBuf::addChar(), GrowBuf::addStr(), QCString::data(), GrowBuf::get(), hex, QCString::isEmpty(), and isId().
Referenced by HtmlCodeGenerator::_writeCodeLink(), HtmlHelp::addContentsItem(), convertToHtmlAndTruncate(), FTVHelp::Private::generateLink(), DefinitionImpl::navigationPathAsString(), HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), HtmlGenerator::startFile(), HtmlDocVisitor::startLink(), substituteHtmlKeywords(), HtmlHelpIndex::writeFields(), HtmlGenerator::writeInheritedSectionTitle(), HtmlGenerator::writeLocalToc(), writeMapArea(), HtmlGenerator::writePageFooter(), ClassDefImpl::writeQuickMemberLinks(), FileDefImpl::writeQuickMemberLinks(), GroupDefImpl::writeQuickMemberLinks(), NamespaceDefImpl::writeQuickMemberLinks(), and HtmlGenerator::writeSearchPage().
Converts a string to a HTML id string
Definition at line 4226 of file util.cpp.
References GrowBuf::addChar(), GrowBuf::addStr(), QCString::data(), FALSE, GrowBuf::get(), hex, and QCString::isEmpty().
Referenced by HtmlGenerator::endClassDiagram(), renderMemberIndicesAsJs(), writeMemberList(), writeQuickMemberIndex(), ClassDefImpl::writeSummaryLinks(), and VhdlDocGen::writeVHDLDeclarations().
Definition at line 4377 of file util.cpp.
References GrowBuf::addChar(), GrowBuf::addStr(), convertCharEntitiesToUTF8(), QCString::data(), GrowBuf::get(), and QCString::isEmpty().
Referenced by generateJSLink(), generateJSNavTree(), renderMemberIndicesAsJs(), and renderQuickLinksAsJs().
Converts a string to an XML-encoded string
Definition at line 4266 of file util.cpp.
References GrowBuf::addChar(), GrowBuf::addStr(), QCString::data(), GrowBuf::get(), QCString::isEmpty(), and isId().
Referenced by DocSets::addContentsItem(), EclipseHelp::addContentsItem(), Qhp::addFile(), Sitemap::addIndexFile(), Qhp::addIndexItem(), XmlDocVisitor::filter(), generateXMLForClass(), generateXMLForConcept(), generateXMLForDir(), generateXMLForFile(), generateXMLForGroup(), generateXMLForMember(), generateXMLForModule(), generateXMLForNamespace(), generateXMLForPage(), generateXMLSection(), DotDirDeps::getImgAltText(), htmlAttribsToString(), EclipseHelp::initialize(), Qhp::initialize(), XmlDocVisitor::operator()(), XmlDocVisitor::operator()(), QhpSectionTree::traverse(), visitPreStart(), SearchIndexExternal::write(), FileDefImpl::writeClassesToTagFile(), NamespaceDefImpl::writeClassesToTagFile(), NamespaceDefImpl::writeConceptsToTagFile(), DefinitionImpl::writeDocAnchorsToTagFile(), DotNode::writeDocbook(), DotGraph::writeGraphHeader(), writeInnerClasses(), writeInnerConcepts(), writeInnerDirs(), writeInnerFiles(), writeInnerGroups(), writeInnerModules(), writeInnerNamespaces(), writeInnerPages(), writeJavascriptSearchData(), writeJavasScriptSearchDataPage(), DotNode::writeLabel(), writeListOfAllMembers(), writeMapArea(), writeMemberReference(), ClassDefImpl::writeTagFile(), ConceptDefImpl::writeTagFile(), DirDefImpl::writeTagFile(), FileDefImpl::writeTagFile(), GroupDefImpl::writeTagFile(), MemberDefImpl::writeTagFile(), ModuleDefImpl::writeTagFile(), NamespaceDefImpl::writeTagFile(), PageDefImpl::writeTagFile(), VhdlDocGen::writeTagFile(), writeTemplateArgumentList(), DocSets::writeToken(), DotNode::writeXML(), writeXMLLink(), and writeXMLString().
Copies the contents of file with name src to the newly created file with name dest.
Returns TRUE if successful.
Definition at line 6169 of file util.cpp.
References err, qPrint(), and QCString::str().
Referenced by copyExtraFiles(), copyIcon(), copyLatexStyleSheet(), copyLogo(), copyStyleSheet(), DocParser::findAndCopyImage(), FormulaManager::generateImages(), CitationManager::generatePage(), RTFGenerator::init(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), XmlDocVisitor::operator()(), XmlDocVisitor::operator()(), XmlDocVisitor::operator()(), XmlDocVisitor::operator()(), XmlDocVisitor::operator()(), and substituteLatexKeywords().
Some strings have been corrected but the requirement regarding the fact that an id cannot have a digit at the first position. To overcome problems with double labels we always place an "a" in front
Definition at line 4259 of file util.cpp.
References QCString::isEmpty().
Referenced by DotGraph::generateCode(), and DotFilePatcher::run().
Corrects URL url according to the relative path relPath.
Returns the corrected URL. For absolute URLs no correction will be done.
Definition at line 6257 of file util.cpp.
References QCString::isEmpty(), isURL(), and QCString::prepend().
Referenced by HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), XmlDocVisitor::operator()(), startQuickIndexItem(), and writeIndexHierarchyEntries().
QCString createHtmlUrl | ( | const QCString & | relPath, |
const QCString & | ref, | ||
bool | href, | ||
bool | islocalFile, | ||
const QCString & | targetFileName, | ||
const QCString & | anchor ) |
Definition at line 6032 of file util.cpp.
References externalRef(), and QCString::isEmpty().
Referenced by HtmlCodeGenerator::_writeCodeLink(), HtmlDocVisitor::startLink(), HtmlGenerator::startTextLink(), HtmlGenerator::writeObjectLink(), and HtmlCodeGenerator::writeTooltip().
void createSubDirs | ( | const Dir & | d | ) |
Definition at line 3994 of file util.cpp.
References Config_getBool, Config_getInt, Dir::exists(), Dir::mkdir(), qPrint(), QCString::sprintf(), QCString::str(), and term.
Referenced by generateXML(), DocbookGenerator::init(), HtmlGenerator::init(), LatexGenerator::init(), ManGenerator::init(), RTFGenerator::init(), ClassDefImpl::writeQuickMemberLinks(), FileDefImpl::writeQuickMemberLinks(), GroupDefImpl::writeQuickMemberLinks(), and NamespaceDefImpl::writeQuickMemberLinks().
Definition at line 7047 of file util.cpp.
References GrowBuf::addChar(), GrowBuf::addStr(), Config_getInt, QCString::data(), GrowBuf::get(), getUTF8CharNumBytes(), isUTF8NonBreakableSpace(), QCString::length(), and qstrncmp().
Referenced by Markdown::process().
Definition at line 3954 of file util.cpp.
References FileInfo::absFilePath(), Config_getBool, Config_getList, FileInfo::dirPath(), FileInfo::exists(), FileInfo::isDir(), QCString::str(), and TRUE.
Referenced by readIncludeFile(), and ModuleManager::resolveImports().
QCString escapeCharsInString | ( | const QCString & | name, |
bool | allowDots, | ||
bool | allowUnderscore = FALSE ) |
Definition at line 3684 of file util.cpp.
References GrowBuf::addChar(), GrowBuf::addStr(), Config_getBool, QCString::data(), GrowBuf::get(), getCaseSenseNames(), getUTF8CharNumBytes(), hex, and QCString::isEmpty().
Referenced by convertNameToFile(), DotClassGraph::getMapLabel(), DotDirDeps::getMapLabel(), DotGfxHierarchyTable::getMapLabel(), DotGroupCollaboration::getMapLabel(), DotInclDepGraph::getMapLabel(), markdownFileNameToId(), and PageDefImpl::writeDocumentation().
QCString externalLinkTarget | ( | const bool | parent = false | ) |
Definition at line 6021 of file util.cpp.
References Config_getBool, and parent().
Referenced by HtmlCodeGenerator::_writeCodeLink(), FTVHelp::Private::generateLink(), Markdown::Private::processLink(), replaceRef(), HtmlGenerator::startIndexItem(), HtmlDocVisitor::startLink(), HtmlGenerator::writeInheritedSectionTitle(), writeMapArea(), and HtmlGenerator::writeObjectLink().
Definition at line 6065 of file util.cpp.
References QCString::append(), QCString::at(), end(), QCString::isEmpty(), QCString::length(), QCString::prepend(), QCString::str(), and Doxygen::tagDestinationMap.
Referenced by HtmlHelp::addContentsItem(), convertMapFile(), createHtmlUrl(), generateJSLink(), FTVHelp::Private::generateLink(), replaceRef(), HtmlGenerator::startIndexItem(), LayoutNavEntry::url(), HtmlGenerator::writeInheritedSectionTitle(), writeJavasScriptSearchDataPage(), and writeMapArea().
int extractClassNameFromType | ( | const QCString & | type, |
int & | pos, | ||
QCString & | name, | ||
QCString & | templSpec, | ||
SrcLangExt | lang ) |
Extracts a (sub-)string from type starting at pos that could form a class. The index of the match is returned and the found class name and a template argument list templSpec. If -1 is returned there are no more matches.
Definition at line 4566 of file util.cpp.
References QCString::clear(), end(), Fortran, QCString::isEmpty(), QCString::length(), QCString::lower(), QCString::mid(), QCString::startsWith(), and QCString::str().
Referenced by extractCanonicalType(), findUsedClassesForClass(), stripClassName(), and stripClassName().
Strip the direction part from docs and return it as a string in canonical form The input docs string can start with e.g.
"[in]", "[in, out]", "[inout]", "[out,in]"...
Definition at line 6505 of file util.cpp.
References end(), and QCString::str().
Referenced by inlineArgListToDoc().
void extractNamespaceName | ( | const QCString & | scopeName, |
QCString & | className, | ||
QCString & | namespaceName, | ||
bool | allowEmptyClass ) |
Input is a scopeName, output is the scopename split into a namespace part (as large as possible) and a classname part.
Definition at line 4051 of file util.cpp.
References QCString::clear(), QCString::endsWith(), QCString::findRev(), getClass(), getResolvedNamespace(), QCString::isEmpty(), QCString::left(), QCString::length(), Definition::name(), and QCString::right().
Referenced by addClassToContext(), addConceptToContext(), findMember(), and writeAlphabeticalClassList().
reads a file with name name and returns it as a string. If filter is TRUE the file will be filtered by any user specified input filter. If name is "-" the string will be read from standard input.
Definition at line 1414 of file util.cpp.
References addTerminalCharIfMissing(), err, FileInfo::exists(), QCString::isEmpty(), FileInfo::isFile(), qPrint(), readInputFile(), and QCString::str().
Referenced by createDVIFile(), extractBoundingBox(), getConvertLatexMacro(), HtmlGenerator::init(), LatexGenerator::init(), LayoutDocManager::parse(), FileDefImpl::parseSource(), parseTagFile(), DocParser::readTextFileByName(), readTextFileByName(), runPlantumlContent(), FileDefImpl::writeSourceBody(), HtmlGenerator::writeStyleInfo(), and writeXMLCodeBlock().
bool fileVisibleInIndex | ( | const FileDef * | fd, |
bool & | genSourceFile ) |
Definition at line 6416 of file util.cpp.
References Config_getBool, FileDef::generateSourceFile(), FileDef::isDocumentationFile(), Definition::isLinkable(), and Definition::isLinkableInProject().
Referenced by countFiles(), dirHasVisibleChildren(), generateJSTree(), writeDirHierarchy(), writeDirTreeNode(), and DirDefImpl::writeFileList().
Definition at line 5920 of file util.cpp.
References end(), and QCString::str().
Referenced by addToIndices(), createJavaScriptSearchIndex(), PerlModGenerator::generatePerlModForPage(), generateSqlite3ForPage(), generateXMLForPage(), mainPageHasOwnTitle(), SearchTerm::makeTitle(), SearchIndexExternal::setCurrentDoc(), HtmlGenerator::startFile(), writeExampleIndex(), writeIndex(), writeJavasScriptSearchDataPage(), HtmlGenerator::writeLocalToc(), and writePages().
bool findAndRemoveWord | ( | QCString & | sentence, |
const char * | word ) |
removes occurrences of whole word from sentence, while keeps internal spaces and reducing multiple sequences of spaces.
Example: sentence=cat+ catfish cat cat concat cat
, word=cat
returns: + catfish concat
Definition at line 5325 of file util.cpp.
References end(), found, QCString::simplifyWhiteSpace(), QCString::str(), and word.
Referenced by isVarWithConstructor().
FileDef * findFileDef | ( | const FileNameLinkedMap * | fnMap, |
const QCString & | n, | ||
bool & | ambig ) |
Definition at line 3262 of file util.cpp.
References Dir::cleanDirPath(), FALSE, FindFileCacheElem::fileDef, Portable::fileSystemIsCaseSensitive(), LinkedMap< T, Hash, KeyEqual, Map >::find(), QCString::findRev(), g_findFileDefCache, g_findFileDefMutex, FileDef::getPath(), FindFileCacheElem::isAmbig, QCString::isEmpty(), QCString::left(), QCString::length(), QCString::lower(), qsnprintf, removeLongPathMarker(), QCString::right(), QCString::str(), and stripFromIncludePath().
Referenced by addIncludeFile(), buildFileList(), checkMarkdownMainfile(), DocParser::findAndCopyImage(), DocParser::findDocsForMemberOrCompound(), findFile(), findFilePath(), generateFileRef(), generateFileSources(), DocParser::handleLinkedWord(), DocbookDocVisitor::operator()(), XmlDocVisitor::operator()(), DocDiaFile::parse(), DocDotFile::parse(), DocMscFile::parse(), DocPlantUmlFile::parse(), parseFilesMultiThreading(), parseFilesSingleThreading(), Markdown::Private::processLink(), readIncludeFile(), readTextFileByName(), ModuleManager::resolveImports(), resolveLink(), ModuleManager::resolvePartitions(), resolveRef(), and setFileName().
Definition at line 3345 of file util.cpp.
References FileDef::absFilePath(), FileInfo::absFilePath(), Config_getList, Doxygen::exampleNameLinkedMap, FileInfo::exists(), findFileDef(), found, Portable::pathSeparator(), and QCString::str().
Referenced by readIncludeFile(), and DocParser::readTextFileByName().
int findIndex | ( | const std::string & | s, |
const reg::Ex & | re ) |
find the index of the first occurrence of pattern re in a string s returns -1 if the pattern could not be found
Definition at line 6989 of file util.cpp.
References reg::search().
int findIndex | ( | const StringVector & | sv, |
const std::string & | s ) |
find the index of a string in a vector of strings, returns -1 if the string could not be found
Definition at line 6981 of file util.cpp.
Referenced by initUCF(), VhdlDocGen::parseForBinding(), VhdlDocGen::parseUCF(), DotFilePatcher::run(), and VhdlDocGen::writeFormatString().
Definition at line 464 of file util.h.
References substitute().
Referenced by renderQuickLinksAsTabs(), renderQuickLinksAsTree(), writeClassMemberIndexFiltered(), writeFileMemberIndexFiltered(), writeModuleMemberIndexFiltered(), writeNamespaceMemberIndexFiltered(), and writeUserGroupStubPage().
Definition at line 3912 of file util.cpp.
References QCString::data(), QCString::length(), QCString::setNum(), and stripFromPath().
void generateFileRef | ( | OutputList & | ol, |
const QCString & | name, | ||
const QCString & | linkTxt = QCString() ) |
Definition at line 3234 of file util.cpp.
References OutputList::docify(), findFileDef(), Definition::getOutputFileBase(), Definition::getReference(), Doxygen::inputNameLinkedMap, QCString::isEmpty(), Definition::isLinkable(), and OutputList::writeObjectLink().
QCString generateMarker | ( | int | id | ) |
Generate a place holder for a position in a list. Used for translators to be able to specify different elements orders depending on whether text flows from left to right or visa versa.
Definition at line 290 of file util.cpp.
References qsnprintf.
Referenced by TranslatorAfrikaans::trWriteList(), TranslatorArabic::trWriteList(), TranslatorArmenian::trWriteList(), TranslatorBrazilian::trWriteList(), TranslatorBulgarian::trWriteList(), TranslatorCatalan::trWriteList(), TranslatorChinese::trWriteList(), TranslatorChinesetraditional::trWriteList(), TranslatorCroatian::trWriteList(), TranslatorCzech::trWriteList(), TranslatorDanish::trWriteList(), TranslatorDutch::trWriteList(), TranslatorEnglish::trWriteList(), TranslatorEsperanto::trWriteList(), TranslatorFinnish::trWriteList(), TranslatorFrench::trWriteList(), TranslatorGerman::trWriteList(), TranslatorGreek::trWriteList(), TranslatorHindi::trWriteList(), TranslatorHungarian::trWriteList(), TranslatorIndonesian::trWriteList(), TranslatorItalian::trWriteList(), TranslatorJapanese::trWriteList(), TranslatorKorean::trWriteList(), TranslatorLatvian::trWriteList(), TranslatorLithuanian::trWriteList(), TranslatorMacedonian::trWriteList(), TranslatorNorwegian::trWriteList(), TranslatorPersian::trWriteList(), TranslatorPolish::trWriteList(), TranslatorPortuguese::trWriteList(), TranslatorRomanian::trWriteList(), TranslatorRussian::trWriteList(), TranslatorSerbian::trWriteList(), TranslatorSerbianCyrillic::trWriteList(), TranslatorSlovak::trWriteList(), TranslatorSlovene::trWriteList(), TranslatorSpanish::trWriteList(), TranslatorSwedish::trWriteList(), TranslatorTurkish::trWriteList(), TranslatorUkrainian::trWriteList(), and TranslatorVietnamese::trWriteList().
bool getCaseSenseNames | ( | ) |
Definition at line 3674 of file util.cpp.
References Config_getEnum, and Portable::fileSystemIsCaseSensitive().
Referenced by escapeCharsInString(), genericPatternMatch(), FileNameFn::searchKey(), and unescapeCharsInString().
GetDefResult getDefs | ( | const GetDefInput & | input | ) |
Definition at line 2742 of file util.cpp.
References GetDefInput::args, GetDefResult::cd, GetDefInput::checkCV, GetDefInput::currentFile, GetDefResult::fd, GetDefInput::forceEmptyScope, GetDefResult::found, GetDefResult::gd, getDefsNew(), getDefsOld(), GetDefResult::md, GetDefInput::memberName, Definition::name(), GetDefResult::nd, qPrint(), and GetDefInput::scopeName.
Referenced by DocParser::findDocsForMemberOrCompound(), getLinkInScope(), getLinkInScope(), if(), and resolveRef().
QCString getDotImageExtension | ( | ) |
Definition at line 6616 of file util.cpp.
References Config_getEnumAsString, QCString::find(), and QCString::left().
Referenced by RTFGenerator::endCallGraph(), RTFGenerator::endDirDepGraph(), RTFGenerator::endDotGraph(), RTFGenerator::endInclDepGraph(), DotGraph::generateCode(), DotGraph::imgName(), HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), DocbookDocVisitor::startDotFile(), TranslatorAfrikaans::trLegendDocs(), TranslatorArabic::trLegendDocs(), TranslatorArmenian::trLegendDocs(), TranslatorBrazilian::trLegendDocs(), TranslatorBulgarian::trLegendDocs(), TranslatorCatalan::trLegendDocs(), TranslatorChinese::trLegendDocs(), TranslatorChinesetraditional::trLegendDocs(), TranslatorCroatian::trLegendDocs(), TranslatorCzech::trLegendDocs(), TranslatorDanish::trLegendDocs(), TranslatorDutch::trLegendDocs(), TranslatorEnglish::trLegendDocs(), TranslatorEsperanto::trLegendDocs(), TranslatorFinnish::trLegendDocs(), TranslatorFrench::trLegendDocs(), TranslatorGerman::trLegendDocs(), TranslatorGreek::trLegendDocs(), TranslatorHindi::trLegendDocs(), TranslatorHungarian::trLegendDocs(), TranslatorIndonesian::trLegendDocs(), TranslatorItalian::trLegendDocs(), TranslatorJapanese::trLegendDocs(), TranslatorKorean::trLegendDocs(), TranslatorLatvian::trLegendDocs(), TranslatorLithuanian::trLegendDocs(), TranslatorMacedonian::trLegendDocs(), TranslatorNorwegian::trLegendDocs(), TranslatorPersian::trLegendDocs(), TranslatorPolish::trLegendDocs(), TranslatorPortuguese::trLegendDocs(), TranslatorRomanian::trLegendDocs(), TranslatorRussian::trLegendDocs(), TranslatorSerbian::trLegendDocs(), TranslatorSerbianCyrillic::trLegendDocs(), TranslatorSlovak::trLegendDocs(), TranslatorSlovene::trLegendDocs(), TranslatorSpanish::trLegendDocs(), TranslatorSwedish::trLegendDocs(), TranslatorTurkish::trLegendDocs(), TranslatorUkrainian::trLegendDocs(), TranslatorVietnamese::trLegendDocs(), DocbookDocVisitor::writeDotFile(), RTFDocVisitor::writeDotFile(), writeDotGraphFromFile(), writeDotImageMapFromFile(), DotLegendGraph::writeGraph(), writeGraphInfo(), HtmlDocVisitor::writeMscFile(), and HtmlDocVisitor::writePlantUMLFile().
Definition at line 6007 of file util.cpp.
References Config_getString, InputFileEncoding::encoding, genericPatternMatch(), and Doxygen::inputFileEncodingList.
Referenced by readCodeFragment(), and readInputFile().
looks for a filter for the file name. Returns the name of the filter if there is a match for the file name, otherwise an empty string. In case inSourceCode is TRUE then first the source filter list is considered.
Definition at line 1342 of file util.cpp.
References Config_getList, Config_getString, FALSE, found, getFilterFromList(), QCString::isEmpty(), QCString::length(), and QCString::mid().
Referenced by FilterCache::getFileContents(), CodeFragmentManager::parseCodeFragment(), readCodeFragment(), readInputFile(), and FileDefImpl::writeSourceBody().
Definition at line 5591 of file util.cpp.
References QCString::findRev(), QCString::isEmpty(), and QCString::mid().
Referenced by TooltipManager::addTooltip(), anonymous_namespace{tagreader.cpp}::TagFileParser::buildLists(), convertFileNameFortranParserCode(), generateExampleDocs(), FileDefImpl::isDocumentationFile(), DocbookDocVisitor::operator()(), HtmlDocVisitor::operator()(), LatexDocVisitor::operator()(), ManDocVisitor::operator()(), RTFDocVisitor::operator()(), XmlDocVisitor::operator()(), CodeFragmentManager::parseCodeFragment(), and MarkdownOutlineParser::parseInput().
SrcLangExt getLanguageFromCodeLang | ( | QCString & | fileName | ) |
Routine to handle the language attribute of the \code
command.
Definition at line 5567 of file util.cpp.
References QCString::at(), Cpp, g_lang2extMap, getLanguageFromFileName(), QCString::lower(), QCString::mid(), and Unknown.
Referenced by DocbookDocVisitor::operator()(), HtmlDocVisitor::operator()(), LatexDocVisitor::operator()(), ManDocVisitor::operator()(), RTFDocVisitor::operator()(), and XmlDocVisitor::operator()().
SrcLangExt getLanguageFromFileName | ( | const QCString & | fileName, |
SrcLangExt | defLang = SrcLangExt::Cpp ) |
Definition at line 5549 of file util.cpp.
References QCString::at(), FileInfo::extension(), FALSE, g_extLookup, QCString::isEmpty(), QCString::lower(), QCString::prepend(), and QCString::str().
Referenced by MemberDefImpl::_writeMultiLineInitializer(), convertCppComments(), DocRef::DocRef(), FileDefImpl::FileDefImpl(), generateExampleDocs(), getLanguageFromCodeLang(), guessSection(), ClassDefImpl::IMPL::init(), FileDefImpl::isDocumentationFile(), COutlineParser::needsPreprocessing(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), ManDocVisitor::operator()(), ManDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), XmlDocVisitor::operator()(), XmlDocVisitor::operator()(), CodeFragmentManager::parseCodeFragment(), parseFilesMultiThreading(), parseFilesSingleThreading(), parseMain(), Markdown::Private::processLink(), readCodeFragment(), setContext(), setFileName(), validatingParseDoc(), and writeXMLCodeBlock().
QCString getLanguageSpecificSeparator | ( | SrcLangExt | lang, |
bool | classScope = FALSE ) |
Returns the scope separator to use given the programming language lang.
Definition at line 6229 of file util.cpp.
References CSharp, Java, PHP, Python, and VHDL.
Referenced by DefinitionImpl::_writeSourceRefList(), MemberDefImpl::addListReference(), addVariableToFile(), MemberDefImpl::displayDefinition(), DefinitionAliasImpl::init(), linkToText(), makeDisplayName(), makeDisplayName(), makeQualifiedNameWithTemplateParameters(), ClassDefImpl::mergeMembersFromBaseClasses(), DefinitionImpl::qualifiedName(), MemberDefImpl::qualifiedName(), SearchIndex::setCurrentDoc(), validatingParseDoc(), MemberDefImpl::warnIfUndocumented(), writeAlphabeticalClassList(), MemberDefImpl::writeDeclaration(), writeDefArgumentList(), MemberDefImpl::writeDocumentation(), writeJavasScriptSearchDataPage(), MemberDefImpl::writeLink(), and writeMemberReference().
QCString getOverloadDocs | ( | ) |
Returns the standard string that is generated when the \overload command is used.
Definition at line 4440 of file util.cpp.
References theTranslator.
Referenced by addMemberDocs(), addOverloaded(), and CommentScanner::parseCommentBlock().
int getPrefixIndex | ( | const QCString & | name | ) |
Returns the character index within name of the first prefix in Config_getList(IGNORE_PREFIX) that matches name at the left hand side, or zero if no match was found
Definition at line 3590 of file util.cpp.
References Config_getList, QCString::data(), and QCString::isEmpty().
Referenced by Index::addClassMemberNameToIndex(), Index::addFileMemberNameToIndex(), Index::addModuleMemberNameToIndex(), Index::addNamespaceMemberNameToIndex(), SearchIndex::addWordRec(), parseInput(), writeAlphabeticalClassList(), and writeMemberList().
QCString getProjectId | ( | ) |
Definition at line 7138 of file util.cpp.
References Config_getString, QCString::data(), QCString::isEmpty(), and QCString::length().
Referenced by generateJSNavTree(), HtmlGenerator::init(), and writeJavaScriptSearchIndex().
int getScopeFragment | ( | const QCString & | s, |
int | p, | ||
int * | l ) |
Returns a fragment from scope s, starting at position p.
s | the scope name as a string. |
p | the start position (0 is the first). |
l | the resulting length of the fragment. |
Definition at line 4969 of file util.cpp.
References QCString::at(), found, and QCString::length().
Referenced by buildScopeFromQualifiedName(), findScopeFromQualifiedName(), SymbolResolver::Private::followPath(), resolveTypeDef(), and stripAnonymousNamespaceScope().
try to determine if name is a source or a header file name by looking at the extension. A number of variations is allowed in both upper and lower case) If anyone knows or uses another extension please let me know :-)
Definition at line 349 of file util.cpp.
References Cpp, QCString::findRev(), getLanguageFromFileName(), QCString::lower(), QCString::mid(), QCString::str(), and Unknown.
Referenced by addIncludeFile(), anonymous_namespace{tagreader.cpp}::TagFileParser::buildLists(), computeClassRelations(), FileDefImpl::FileDefImpl(), FileDefImpl::generateSourceFile(), ClassDefImpl::IMPL::init(), parseMain(), parseMain(), Preprocessor::processFile(), setFileName(), and warnUndocumentedNamespaces().
void initDefaultExtensionMapping | ( | ) |
Definition at line 5476 of file util.cpp.
References updateLanguageMapping().
Referenced by initDoxygen().
QCString inlineArgListToDoc | ( | const ArgumentList & | al | ) |
Definition at line 1156 of file util.cpp.
References extractDirection(), and ArgumentList::hasDocumentation().
Referenced by DocParser::processCopyDoc(), and MemberDefImpl::writeDocumentation().
Definition at line 4100 of file util.cpp.
References ArgumentList::empty(), QCString::find(), getClass(), QCString::isEmpty(), QCString::left(), QCString::length(), QCString::right(), and ClassDef::templateArguments().
Referenced by DotClassGraph::addClass(), generateXMLForClass(), DiagramItem::label(), ClassDefImpl::writeInheritanceGraph(), and ClassDefImpl::writeTagFile().
QCString integerToAlpha | ( | int | n, |
bool | upper = true ) |
Definition at line 7009 of file util.cpp.
Referenced by ManDocVisitor::operator()(), and RTFDocVisitor::operator()().
QCString integerToRoman | ( | int | n, |
bool | upper = true ) |
Definition at line 7025 of file util.cpp.
Referenced by LatexDocVisitor::operator()(), ManDocVisitor::operator()(), and RTFDocVisitor::operator()().
|
inline |
Definition at line 202 of file util.h.
Referenced by addTemplateNames(), SearchIndexExternal::addWord(), convertToHtml(), convertToXML(), MemberDefImpl::displayDefinition(), escapeId(), filterLatexString(), findEndOfCommand(), getNextId(), matchExcludedSymbols(), nameIsOperator(), processConcatOperators(), removeIdsAndMarkers(), removeRedundantWhiteSpace(), replaceAliases(), splitKnRArg(), splitSearchTokens(), startsWithKeyword(), stripIrrelevantString(), substituteTemplateArgumentsInString(), tempArgListToString(), MemberDefImpl::writeDocumentation(), and PlantumlManager::writePlantUMLSource().
|
inline |
Definition at line 206 of file util.h.
Referenced by SearchTerm::termEncoded().
bool isURL | ( | const QCString & | url | ) |
Checks whether the given url starts with a supported protocol.
Definition at line 6245 of file util.cpp.
References QCString::find(), QCString::left(), QCString::str(), and QCString::stripWhiteSpace().
Referenced by correctURL(), Markdown::Private::processLink(), and renderQuickLinksAsJs().
std::string join | ( | const StringVector & | s, |
const std::string & | delimiter ) |
create a string where the string in the vector are joined by the given delimiter
Definition at line 6996 of file util.cpp.
Referenced by handleAnchor(), handleFormatBlock(), and handleImage().
QCString langToString | ( | SrcLangExt | lang | ) |
Returns a string representation of lang.
Definition at line 6203 of file util.cpp.
References Cpp, CSharp, D, Fortran, IDL, Java, JS, Lex, Markdown, ObjC, PHP, Python, Slice, SQL, Unknown, VHDL, and XML.
Referenced by buildNamespaceList(), findUsingDirectives(), generateXMLForClass(), generateXMLForFile(), and generateXMLForNamespace().
Definition at line 892 of file util.cpp.
References QCString::at(), QCString::left(), and QCString::length().
Referenced by addClassToContext(), addConceptToContext(), mergeScopes(), pushScope(), and resolveRef().
Returns the line number of the line following the line with the marker.
Definition at line 6182 of file util.cpp.
References QCString::find(), and found.
Referenced by readIncludeFile().
void linkifyText | ( | const TextGeneratorIntf & | ol, |
const Definition * | scope, | ||
const FileDef * | fileScope, | ||
const Definition * | self, | ||
const QCString & | text, | ||
bool | autoBreak = FALSE, | ||
bool | external = TRUE, | ||
bool | keepSpaces = FALSE, | ||
int | indentLevel = 0 ) |
Definition at line 904 of file util.cpp.
References end(), FALSE, QCString::isEmpty(), skipIndex, QCString::view(), and TextGeneratorIntf::writeString().
Referenced by MemberDefImpl::_writeTemplatePrefix(), generateSqlite3ForMember(), generateXMLForClass(), generateXMLForConcept(), generateXMLForMember(), insertMemberFunctionParams(), MemberDefImpl::writeDeclaration(), writeDefArgumentList(), MemberDefImpl::writeDocumentation(), writeExceptionListImpl(), MemberDefImpl::writeMemberDocSimple(), writeTemplateArgumentList(), ClassDefImpl::writeTemplateSpec(), and writeTypeConstraints().
QCString linkToText | ( | SrcLangExt | lang, |
const QCString & | link, | ||
bool | isFileName ) |
Definition at line 3100 of file util.cpp.
References QCString::at(), QCString::find(), getLanguageSpecificSeparator(), QCString::isEmpty(), QCString::length(), QCString::right(), and substitute().
Referenced by DotCallGraph::buildGraph(), DocRef::DocRef(), DotCallGraph::DotCallGraph(), and DocParser::handleLinkedWord().
bool mainPageHasTitle | ( | ) |
Definition at line 6611 of file util.cpp.
References Doxygen::mainPage.
Referenced by generateJSNavTree(), generateSqlite3ForPage(), generateXMLForPage(), mainPageHasOwnTitle(), and writeIndex().
bool matchArguments2 | ( | const Definition * | srcScope, |
const FileDef * | srcFileScope, | ||
const ArgumentList * | srcAl, | ||
const Definition * | dstScope, | ||
const FileDef * | dstFileScope, | ||
const ArgumentList * | dstAl, | ||
bool | checkCV, | ||
SrcLangExt | lang ) |
Definition at line 1931 of file util.cpp.
References argListToString(), ASSERT, AUTO_TRACE, ArgumentList::begin(), ArgumentList::constSpecifier(), ArgumentList::empty(), ArgumentList::end(), FALSE, ArgumentList::front(), MATCH, matchArgument2(), Definition::name(), NOMATCH, ArgumentList::refQualifier(), ArgumentList::size(), TRUE, Argument::type, and ArgumentList::volatileSpecifier().
Referenced by addMemberDocs(), addMemberFunction(), combineDeclarationAndDefinition(), computeMemberRelationsForBaseClass(), ClassDefImpl::containsOverload(), findGlobalMember(), findMember(), findMembersWithSpecificName(), getDefsOld(), SymbolResolver::Private::getResolvedSymbol(), GroupDefImpl::insertMember(), matchCanonicalTypes(), ClassDefImpl::mergeMembersFromBaseClasses(), transferFunctionReferences(), and transferRelatedFunctionDocumentation().
void mergeArguments | ( | ArgumentList & | srcAl, |
ArgumentList & | dstAl, | ||
bool | forceNameOverwrite = FALSE ) |
Definition at line 2025 of file util.cpp.
References argListToString(), AUTO_TRACE, AUTO_TRACE_ADD, ArgumentList::begin(), QCString::clear(), Argument::defval, Argument::docs, ArgumentList::end(), QCString::find(), QCString::isEmpty(), QCString::left(), QCString::length(), Argument::name, qPrint(), QCString::right(), ArgumentList::size(), QCString::stripWhiteSpace(), and Argument::type.
Referenced by addMemberDocs().
void mergeMemberOverrideOptions | ( | MemberDefMutable * | md1, |
MemberDefMutable * | md2 ) |
Definition at line 7188 of file util.cpp.
References Config_getBool, MemberDef::hasCallerGraph(), MemberDef::hasCallGraph(), MemberDef::hasEnumValues(), MemberDef::hasInlineSource(), MemberDef::hasReferencedByRelation(), MemberDef::hasReferencesRelation(), MemberDefMutable::overrideCallerGraph(), MemberDefMutable::overrideCallGraph(), MemberDefMutable::overrideEnumValues(), MemberDefMutable::overrideInlineSource(), MemberDefMutable::overrideReferencedByRelation(), and MemberDefMutable::overrideReferencesRelation().
Referenced by combineDeclarationAndDefinition().
Merges two scope parts together. The parts may (partially) overlap. Example1: A::B
and B::C
will result in A::B::C
Example2: A
and B
will be A::B
Example3: A::B
and B will be A::B
leftScope | the left hand part of the scope. |
rightScope | the right hand part of the scope. |
Definition at line 4934 of file util.cpp.
References FALSE, QCString::findRev(), found, QCString::isEmpty(), QCString::left(), leftScopeMatch(), QCString::length(), QCString::right(), and TRUE.
Referenced by addEnumValuesToEnums(), findEnums(), findMember(), and stripTemplateSpecifiersFromScope().
int nextUtf8CharPosition | ( | const QCString & | utf8Str, |
uint32_t | len, | ||
uint32_t | startPos ) |
QCString normalizeNonTemplateArgumentsInString | ( | const QCString & | name, |
const Definition * | context, | ||
const ArgumentList & | formalArgs ) |
Definition at line 4640 of file util.cpp.
References end(), FALSE, QCString::find(), found, QCString::left(), QCString::mid(), Definition::name(), removeRedundantWhiteSpace(), SymbolResolver::resolveClass(), QCString::str(), and TRUE.
Referenced by findUsedClassesForClass().
bool openOutputFile | ( | const QCString & | outFile, |
std::ofstream & | f ) |
Definition at line 6623 of file util.cpp.
References FileInfo::exists(), FALSE, FileInfo::filePath(), Portable::openOutputStream(), Dir::remove(), Dir::rename(), and QCString::str().
Referenced by compareDoxyfile(), generateConfigFile(), readConfiguration(), and writeDefaultLayoutFile().
QCString parseCommentAsText | ( | const Definition * | scope, |
const MemberDef * | member, | ||
const QCString & | doc, | ||
const QCString & | fileName, | ||
int | lineNr ) |
Definition at line 5707 of file util.cpp.
References QCString::at(), Config_getBool, convertCharEntitiesToUTF8(), createDocParser(), QCString::data(), FALSE, QCString::isEmpty(), QCString::left(), QCString::length(), nextUTF8CharPosition(), TextStream::str(), QCString::stripWhiteSpace(), and validatingParseDoc().
Referenced by PageDefImpl::addSectionsToIndex(), and DefinitionImpl::computeTooltip().
bool patternMatch | ( | const FileInfo & | fi, |
const StringVector & | patList ) |
Definition at line 6000 of file util.cpp.
References genericPatternMatch().
Referenced by checkAndOpenFile(), and readDir().
QCString projectLogoFile | ( | ) |
Definition at line 3495 of file util.cpp.
References Config_getString, QCString::find(), QCString::isEmpty(), and QCString::left().
Referenced by copyLogo(), and substituteKeywords().
bool protectionLevelVisible | ( | Protection | prot | ) |
Definition at line 6269 of file util.cpp.
References Config_getBool, Package, and Private.
Referenced by MemberDefImpl::_computeLinkableInProject(), addClassAndNestedClasses(), computeClassRelations(), MemberDefImpl::hasDetailedDescription(), ClassDefImpl::internalInsertMember(), MemberDefImpl::isBriefSectionVisible(), ClassDefImpl::isLinkableInProject(), ClassDefImpl::isVisibleInHierarchy(), MemberDefImpl::warnIfUndocumented(), MemberDefImpl::writeDeclaration(), ClassDefImpl::writeDocumentationForInnerClasses(), ClassDefImpl::writeMemberList(), and ClassDefImpl::writeTagFile().
bool readInputFile | ( | const QCString & | fileName, |
std::string & | contents, | ||
bool | filter = TRUE, | ||
bool | isSourceCode = FALSE ) |
read a file name fileName and optionally filter and transcode it
Definition at line 5841 of file util.cpp.
References err, FileInfo::exists(), Debug::ExtCmd, FALSE, filterCRLF(), Debug::FilterOutput, getEncoding(), getFileFilter(), QCString::isEmpty(), Portable::openInputStream(), Portable::pclose(), Portable::popen(), Debug::print(), qPrint(), FileInfo::size(), QCString::str(), and transcodeCharacterBuffer().
Referenced by checkAndOpenFile(), fileToString(), HtmlDocVisitor::operator()(), RTFDocVisitor::operator()(), parseFile(), readIncludeFile(), DocbookDocVisitor::startPlantUmlFile(), and LatexDocVisitor::startPlantUmlFile().
bool recognizeFixedForm | ( | const QCString & | contents, |
FortranFormat | format ) |
Definition at line 6670 of file util.cpp.
References QCString::at(), Config_getInt, QCString::data(), FALSE, Fixed, Free, keyWordsFortranC(), QCString::length(), and TRUE.
Referenced by convertCppComments(), FortranCodeParser::parseCode(), and parseMain().
Definition at line 3933 of file util.cpp.
References Config_getBool, QCString::findRev(), QCString::isEmpty(), and REL_PATH_TO_ROOT.
Referenced by generateBriefDoc(), DocbookGenerator::startFile(), HtmlGenerator::startFile(), LatexGenerator::startFile(), RTFGenerator::startFile(), and validatingParseDoc().
Removes all anonymous scopes from string s Possible examples:
"bla::@10::blep" => "bla::blep" "bla::@10::@11::blep" => "bla::blep" "@10::blep" => "blep" " @10::blep" => "blep" "@9::@10::blep" => "blep" "bla::@1" => "bla" "bla::@1::@2" => "bla" "bla @1" => "bla"
Definition at line 172 of file util.cpp.
References end(), QCString::isEmpty(), and QCString::str().
Referenced by createTagLessInstance(), MemberDefImpl::displayDefinition(), generateClassMemberLink(), makeDisplayName(), makeDisplayName(), simplifyTypeForTable(), MemberDefImpl::writeDeclaration(), and MemberDefImpl::writeDocumentation().
Definition at line 6913 of file util.cpp.
References QCString::data(), and QCString::length().
Referenced by substituteHtmlKeywords(), and substituteLatexKeywords().
Definition at line 298 of file util.cpp.
References QCString::mid(), and QCString::startsWith().
Referenced by computeCommonDirPrefix(), FileDefImpl::FileDefImpl(), findFileDef(), DirDefImpl::mergeDirectoryInTree(), and stripFromPath().
Definition at line 578 of file util.cpp.
References Config_getBool, constScope, QCString::data(), g_charAroundSpace, QCString::isEmpty(), isId(), QCString::length(), operatorScope, qisspace(), THREAD_LOCAL, virtualScope, and volatileScope.
Referenced by addFrom(), addVariableToClass(), argListToString(), extractCanonicalType(), findClassRelation(), DocParser::findDocsForMemberOrCompound(), findMember(), findUsedClassesForClass(), findUsingDeclImports(), generateFunctionLink(), generateFunctionLink(), generateLink(), getCanonicalTypeForIdentifier(), getLink(), getLink(), getLink(), MemberDefImpl::init(), ClassDefImpl::insertTemplateInstance(), MemberDefImpl::MemberDefImpl(), normalizeNonTemplateArgumentsInString(), parseFuncDecl(), resolveRef(), tempArgListToString(), and writeExceptionListImpl().
Definition at line 229 of file util.cpp.
References QCString::data(), QCString::isEmpty(), reg::replace(), and QCString::str().
Referenced by generateDEFForMember().
Replaces any markers of the form ##AA in input string str by new markers of the form #AABBCC, where #AABBCC represents a valid color, based on the intensity represented by hex number AA and the current HTML_COLORSTYLE_* settings.
Definition at line 6118 of file util.cpp.
References Config_getInt, end(), hex, HEXTONUM, ColoredImage::hsl2rgb(), QCString::isEmpty(), and QCString::str().
Referenced by ResourceMgr::copyResourceAs(), fillColorStyleMaps(), HtmlGenerator::init(), and writeDefaultStyleSheet().
bool resolveLink | ( | const QCString & | scName, |
const QCString & | lr, | ||
bool | inSeeBlock, | ||
const Definition ** | resContext, | ||
QCString & | resAnchor, | ||
const QCString & | prefix = QCString() ) |
Definition at line 3126 of file util.cpp.
References FileInfo::absFilePath(), Definition::anchor(), SectionInfo::definition(), Doxygen::dirLinkedMap, Doxygen::exampleLinkedMap, FALSE, LinkedMap< T, Hash, KeyEqual, Map >::find(), findFileDef(), getClass(), getConcept(), PageDef::getGroupDef(), Doxygen::groupLinkedMap, Doxygen::inputNameLinkedMap, SectionManager::instance(), QCString::isEmpty(), Definition::isLinkable(), SectionInfo::label(), Definition::name(), Doxygen::namespaceLinkedMap, Doxygen::pageLinkedMap, prefix, resolveRef(), QCString::str(), stripTemplateSpecifiersFromScope(), and TRUE.
Referenced by DocLink::DocLink(), and DocRef::DocRef().
bool resolveRef | ( | const QCString & | scName, |
const QCString & | name, | ||
bool | inSeeBlock, | ||
const Definition ** | resContext, | ||
const MemberDef ** | resMember, | ||
bool | lookForSpecialization, | ||
const FileDef * | currentFile, | ||
bool | checkScope ) |
Returns an object to reference to given its name and context
Definition at line 2877 of file util.cpp.
References ASSERT, AUTO_TRACE, AUTO_TRACE_ADD, GetDefResult::cd, GetDefInput::checkCV, Doxygen::conceptLinkedMap, GetDefInput::currentFile, FALSE, GetDefResult::fd, QCString::find(), findFileDef(), findParameterList(), QCString::findRev(), GetDefInput::forceEmptyScope, GetDefResult::found, GetDefResult::gd, getClass(), getDefs(), Definition::getOuterScope(), getScopeDefs(), Doxygen::globalScope, Doxygen::groupLinkedMap, Doxygen::inputNameLinkedMap, QCString::isEmpty(), MemberDef::isEnumerate(), isLowerCase(), MemberDef::isStrongEnumValue(), MemberDef::isTypedef(), QCString::left(), leftScopeMatch(), QCString::length(), GetDefResult::md, QCString::mid(), GetDefResult::nd, removeRedundantWhiteSpace(), resolveRef(), QCString::right(), QCString::startsWith(), substitute(), and TRUE.
Referenced by DocParser::handleLinkedWord(), resolveLink(), and resolveRef().
QCString resolveTypeDef | ( | const Definition * | d, |
const QCString & | name, | ||
const Definition ** | typedefContext = nullptr ) |
Definition at line 384 of file util.cpp.
References MemberDef::argsString(), AUTO_TRACE, AUTO_TRACE_ADD, AUTO_TRACE_EXIT, Definition::definitionType(), LinkedMap< T, Hash, KeyEqual, Map >::find(), QCString::find(), Definition::findInnerCompound(), QCString::findRev(), Doxygen::functionNameLinkedMap, Definition::getOuterScope(), getScopeFragment(), Doxygen::globalScope, SymbolResolver::isAccessibleFrom(), QCString::isEmpty(), MemberDef::isRelated(), MemberDef::isTypedef(), QCString::left(), QCString::length(), Doxygen::memberNameLinkedMap, QCString::mid(), Definition::name(), resolveTypeDef(), QCString::right(), Definition::TypeClass, and MemberDef::typeString().
Referenced by findUsedClassesForClass(), getCanonicalTemplateSpec(), getCanonicalTypeForIdentifier(), isVarWithConstructor(), and resolveTypeDef().
Definition at line 881 of file util.cpp.
References QCString::at(), QCString::length(), and QCString::right().
Referenced by addMemberFunction(), findScopeFromQualifiedName(), getDefsOld(), and isRecursiveBaseClass().
QCString selectBlocks | ( | const QCString & | s, |
const SelectionBlockList & | blockList, | ||
const SelectionMarkerInfo & | markerInfo ) |
remove disabled blocks and all block markers from s and return the result as a string
Definition at line 6736 of file util.cpp.
References SelectionMarkerInfo::beginLen, SelectionMarkerInfo::beginStr, SelectionMarkerInfo::closeLen, SelectionMarkerInfo::closeStr, QCString::data(), SelectionMarkerInfo::endLen, SelectionMarkerInfo::endStr, found, QCString::isEmpty(), QCString::length(), SelectionMarkerInfo::markerChar, qstrlen(), qstrncmp(), and QCString::reserve().
Referenced by substituteHtmlKeywords(), and substituteLatexKeywords().
QCString showFileDefMatches | ( | const FileNameLinkedMap * | fnMap, |
const QCString & | n ) |
Definition at line 3388 of file util.cpp.
References LinkedMap< T, Hash, KeyEqual, Map >::find(), QCString::findRev(), QCString::isEmpty(), QCString::left(), QCString::length(), and QCString::right().
Referenced by addIncludeFile(), buildFileList(), DocParser::findAndCopyImage(), DocDiaFile::parse(), DocDotFile::parse(), DocMscFile::parse(), DocPlantUmlFile::parse(), readIncludeFile(), DocParser::readTextFileByName(), and readTextFileByName().
StringVector split | ( | const std::string & | s, |
const reg::Ex & | delimiter ) |
split input string s by regular expression delimiter delimiter.
returns a vector of non-empty strings that are between the delimiters
Definition at line 6962 of file util.cpp.
References end().
StringVector split | ( | const std::string & | s, |
const std::string & | delimiter ) |
split input string s by string delimiter delimiter.
returns a vector of non-empty strings that are between the delimiters
Definition at line 6945 of file util.cpp.
Referenced by VHDLOutlineParser::addProto(), VHDLOutlineParser::addVhdlType(), FlowChart::alignCommentNode(), VHDLOutlineParser::checkInlineCode(), checkVhdlString(), VHDLOutlineParser::createFunction(), VhdlDocGen::findArchitecture(), getFilteredImageAttributes(), VhdlDocGen::getIndexWord(), DocPara::handleCommand(), DocParser::handleImage(), DocPara::handleInclude(), Qhp::initialize(), VhdlDocGen::parseForBinding(), VhdlDocGen::parseForConfig(), parseIncludeOptions(), writeFuncProto(), VhdlDocGen::writeInlineClassLink(), and VhdlDocGen::writeRecUnitDocu().
void stackTrace | ( | ) |
Definition at line 5777 of file util.cpp.
References Portable::pclose(), Portable::popen(), and qsnprintf.
Definition at line 241 of file util.cpp.
References QCString::at(), getScopeFragment(), QCString::isEmpty(), QCString::left(), QCString::length(), QCString::mid(), Doxygen::namespaceLinkedMap, and QCString::right().
Referenced by addMemberFunction(), addPageToContext(), buildNamespaceList(), computeTemplateClassRelations(), extractClassName(), findGroupScope(), findUsingDeclImports(), findUsingDirectives(), MemberDefImpl::getClassDefOfAnonymousType(), and resolveClassNestingRelations().
Definition at line 5265 of file util.cpp.
References Doxygen::htmlFileExtension, and stripExtensionGeneral().
Referenced by anonymous_namespace{tagreader.cpp}::TagFileParser::buildLists(), ClassDefImpl::IMPL::init(), and MemberDefImpl::setTagInfo().
Definition at line 5255 of file util.cpp.
References QCString::left(), QCString::length(), and QCString::right().
Referenced by TooltipManager::addTooltip(), anonymous_namespace{tagreader.cpp}::TagFileParser::buildLists(), extraLatexStyleSheet(), MarkdownOutlineParser::parseInput(), stripExtension(), DocbookCodeGenerator::writeCodeLinkLine(), LatexCodeGenerator::writeLineNumber(), and RTFCodeGenerator::writeLineNumber().
strip part of path if it matches one of the paths in the Config_getList(INCLUDE_PATH) list
Definition at line 340 of file util.cpp.
References Config_getList, and stripFromPath().
Referenced by addIncludeFile(), and findFileDef().
strip part of path if it matches one of the paths in the Config_getList(STRIP_FROM_PATH) list
Definition at line 332 of file util.cpp.
References Config_getList, and stripFromPath().
Definition at line 6281 of file util.cpp.
References Config_getInt, QCString::data(), FALSE, QCString::isEmpty(), qstrncmp(), TextStream::str(), substitute(), and TRUE.
Referenced by handleCommentBlock(), handleCommentBlock(), handleCommentBlock(), handleParametersCommentBlocks(), and DocPara::handleStartCode().
void stripIndentationVerbatim | ( | QCString & | doc, |
const int | indentationLevel ) |
Definition at line 6366 of file util.cpp.
References QCString::data(), QCString::isEmpty(), QCString::rawData(), and QCString::resize().
Special version of QCString::stripWhiteSpace() that only strips completely blank lines.
s | the string to be stripped |
docLine | the line number corresponding to the start of the string. This will be adjusted based on the number of lines stripped from the start. |
Definition at line 5368 of file util.cpp.
References QCString::data(), QCString::isEmpty(), QCString::length(), QCString::mid(), and qstrncmp().
Referenced by DefinitionImpl::_setBriefDescription(), DefinitionImpl::_setDocumentation(), DocGroup::addDocs(), VHDLOutlineParser::checkInlineCode(), DocPara::handleCommand(), and CommentScanner::parseCommentBlock().
Definition at line 5292 of file util.cpp.
References QCString::findRev(), and QCString::mid().
Referenced by LatexGenerator::addLabel(), anonymous_namespace{tagreader.cpp}::TagFileParser::buildLists(), RTFGenerator::endDoxyAnchor(), LatexGenerator::endIndexItem(), LatexGenerator::endIndexValue(), LatexGenerator::endTitleHead(), objectLinkToString(), objectLinkToString(), objectLinkToString(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), XmlDocVisitor::operator()(), XmlDocVisitor::operator()(), XmlDocVisitor::operator()(), XmlDocVisitor::operator()(), XmlDocVisitor::operator()(), DotFilePatcher::run(), SearchIndexExternal::setCurrentDoc(), DocbookGenerator::startDoxyAnchor(), LatexGenerator::startDoxyAnchor(), DocbookGenerator::startFile(), LatexGenerator::startFile(), RTFGenerator::startFile(), DocbookDocVisitor::startLink(), LatexDocVisitor::startLink(), RTFDocVisitor::startLink(), DocbookGenerator::startSection(), LatexGenerator::startSection(), LatexGenerator::startTextLink(), RTFGenerator::startTextLink(), substituteHtmlKeywords(), substituteKeywords(), LatexGenerator::writeAnchor(), RTFGenerator::writeAnchor(), LatexCodeGenerator::writeCodeLink(), RTFCodeGenerator::writeCodeLink(), DocbookCodeGenerator::writeCodeLinkLine(), MemberList::writeDeclarations(), writeDocbookLink(), LatexCodeGenerator::writeLineNumber(), RTFCodeGenerator::writeLineNumber(), RTFGenerator::writeRTFReference(), and RTFGenerator::writeStartAnnoItem().
Strips the scope from a name. Examples: A::B will return A and A<T>::B<N::C<D> > will return A<T>.
Definition at line 4133 of file util.cpp.
References QCString::at(), FALSE, QCString::length(), QCString::right(), and TRUE.
Referenced by DotClassGraph::addClass(), DocRef::DocRef(), generateJSLink(), getCanonicalTypeForIdentifier(), DefinitionImpl::IMPL::init(), DiagramItem::label(), NamespaceDefImpl::writeBriefDescription(), and ClassDefImpl::writeIncludeFilesForSlice().
QCString stripTemplateSpecifiersFromScope | ( | const QCString & | fullName, |
bool | parentOnly, | ||
QCString * | pLastScopeStripped, | ||
QCString | scopeName, | ||
bool | allowArtificial ) |
Strips template specifiers from scope fullName, except those that make up specialized classes. The switch parentOnly determines whether or not a template "at the end" of a scope should be considered, e.g. with parentOnly is TRUE
, A<T>::B<S>
will try to strip <T>
and not <S>
, while parentOnly is FALSE
will strip both unless A<T>
or B<S>
are specialized template classes.
Definition at line 4867 of file util.cpp.
References QCString::at(), QCString::find(), getClass(), Definition::isArtificial(), QCString::length(), mergeScopes(), QCString::mid(), and QCString::right().
Referenced by addClassToContext(), addMemberFunction(), computeTemplateClassRelations(), extractClassName(), findMember(), findScopeFromQualifiedName(), findUsingDeclImports(), getCanonicalTypeForIdentifier(), getDefsOld(), SymbolResolver::Private::getResolvedSymbolRec(), SymbolResolver::Private::getResolvedTypeRec(), SymbolResolver::Private::newResolveTypedef(), and resolveLink().
QCString substituteKeywords | ( | const QCString & | s, |
const KeywordSubstitutionList & | keywords ) |
Definition at line 3418 of file util.cpp.
References QCString::data(), found, QCString::left(), QCString::length(), qstrlen(), and qstrncmp().
Referenced by substituteHtmlKeywords(), substituteKeywords(), and substituteLatexKeywords().
QCString substituteKeywords | ( | const QCString & | s, |
const QCString & | title, | ||
const QCString & | projName, | ||
const QCString & | projNum, | ||
const QCString & | projBrief ) |
Definition at line 3561 of file util.cpp.
References Config_getString, Date, DateTime, dateToString(), QCString::isEmpty(), projectLogoFile(), projectLogoSize(), showDate(), stripPath(), substituteKeywords(), theTranslator, Time, and yearToString().
QCString substituteTemplateArgumentsInString | ( | const QCString & | nm, |
const ArgumentList & | formalArgs, | ||
const ArgumentList * | actualArgs ) |
Substitutes any occurrence of a formal argument from argument list formalArgs in name by the corresponding actual argument in argument list actualArgs. The result after substitution is returned as a string. The argument name is used to prevent recursive substitution.
Definition at line 4705 of file util.cpp.
References argListToString(), AUTO_TRACE, AUTO_TRACE_ADD, AUTO_TRACE_EXIT, ArgumentList::begin(), Argument::defval, ArgumentList::empty(), ArgumentList::end(), end(), FALSE, found, QCString::isEmpty(), isId(), QCString::left(), QCString::mid(), Argument::name, prefix, QCString::simplifyWhiteSpace(), QCString::startsWith(), QCString::str(), QCString::stripWhiteSpace(), substituteTemplateArgumentsInString(), TRUE, and Argument::type.
Referenced by computeTemplateClassRelations(), MemberDefImpl::createTemplateInstanceMember(), findBaseClassesForClass(), findUsedClassesForClass(), SymbolResolver::Private::getResolvedSymbol(), SymbolResolver::Private::newResolveTypedef(), and substituteTemplateArgumentsInString().
QCString tempArgListToString | ( | const ArgumentList & | al, |
SrcLangExt | lang, | ||
bool | includeDefaults = true ) |
Definition at line 1219 of file util.cpp.
References CSharp, ArgumentList::empty(), isId(), Java, removeRedundantWhiteSpace(), and QCString::right().
Referenced by addMemberFunction(), findTemplateInstanceRelation(), makeQualifiedNameWithTemplateParameters(), searchTemplateSpecs(), and writeDefArgumentList().
bool transcodeCharacterStringToUTF8 | ( | std::string & | input, |
const char * | inputEncoding ) |
Definition at line 1376 of file util.cpp.
References QCString::at(), QCString::ExplicitSize, portable_iconv(), portable_iconv_close(), portable_iconv_open(), qstricmp(), QCString::rawData(), QCString::resize(), and QCString::str().
Referenced by LayoutDocManager::parse(), and readCodeFragment().
Definition at line 3771 of file util.cpp.
References QCString::data(), getCaseSenseNames(), and QCString::isEmpty().
size_t updateColumnCount | ( | const char * | s, |
size_t | col ) |
Definition at line 7207 of file util.cpp.
References Config_getInt, and getUTF8CharNumBytes().
Referenced by HtmlCodeGenerator::codify(), LatexCodeGenerator::codify(), ManCodeGenerator::codify(), RTFCodeGenerator::codify(), writeDocbookCodeString(), and writeXMLCodeString().
Definition at line 5444 of file util.cpp.
References QCString::at(), QCString::data(), err, FALSE, g_extLookup, g_lang2extMap, QCString::isEmpty(), QCString::lower(), Doxygen::parserManager, QCString::prepend(), qPrint(), QCString::str(), and TRUE.
Referenced by addCodeOnlyMappings(), adjustConfiguration(), and initDefaultExtensionMapping().
void writeColoredImgData | ( | const QCString & | dir, |
ColoredImgDataItem | data[] ) |
Writes the intensity only bitmap represented by data as an image to directory dir using the colors defined by HTML_COLORSTYLE_*.
Definition at line 6094 of file util.cpp.
References ColoredImgDataItem::alpha, Config_getInt, ColoredImgDataItem::content, ColoredImgDataItem::height, Doxygen::indexList, ColoredImgDataItem::name, ColoredImage::save(), and ColoredImgDataItem::width.
Referenced by ResourceMgr::copyResourceAs().
void writeExamples | ( | OutputList & | ol, |
const ExampleList & | el ) |
Definition at line 1127 of file util.cpp.
References OutputList::disable(), Docbook, Html, Latex, Man, OutputList::popGeneratorState(), OutputList::pushGeneratorState(), RTF, theTranslator, writeMarkerList(), OutputList::writeObjectLink(), and OutputList::writeString().
Referenced by MemberDefImpl::_writeExamples(), and ClassDefImpl::writeDetailedDocumentationBody().
void writeMarkerList | ( | OutputList & | ol, |
const std::string & | markerText, | ||
size_t | numMarkers, | ||
std::function< void(size_t)> | replaceFunc ) |
Definition at line 1103 of file util.cpp.
References end(), and OutputList::parseText().
Referenced by MemberDefImpl::_writeReimplementedBy(), DefinitionImpl::_writeSourceRefList(), writeExamples(), and ClassDefImpl::writeInheritanceGraph().
void writePageRef | ( | OutputList & | ol, |
const QCString & | cn, | ||
const QCString & | mn ) |
Definition at line 270 of file util.cpp.
References Config_getBool, OutputList::disable(), Docbook, OutputList::docify(), OutputList::endPageRef(), Html, Latex, Man, OutputList::popGeneratorState(), OutputList::pushGeneratorState(), RTF, OutputList::startPageRef(), and theTranslator.
Referenced by MemberDefImpl::_writeReimplementedBy(), and MemberDefImpl::_writeReimplements().
void writeTypeConstraints | ( | OutputList & | ol, |
const Definition * | d, | ||
const ArgumentList & | al ) |
Definition at line 5755 of file util.cpp.
References Config_getBool, Definition::docFile(), Definition::docLine(), ArgumentList::empty(), OutputList::endConstraintDocs(), OutputList::endConstraintList(), OutputList::endConstraintParam(), OutputList::endConstraintType(), FALSE, OutputList::generateDoc(), linkifyText(), OutputList::parseText(), OutputList::startConstraintDocs(), OutputList::startConstraintList(), OutputList::startConstraintParam(), OutputList::startConstraintType(), theTranslator, and TRUE.
Referenced by MemberDefImpl::_writeTypeConstraints(), and ClassDefImpl::writeDetailedDocumentationBody().