Doxygen
Loading...
Searching...
No Matches
QCString Class Reference

This is an alternative implementation of QCString. More...

#include <src/qcstring.h>

Public Types

enum  SizeTag { ExplicitSize }
 creates a string with room for size characters More...

Public Member Functions

 QCString ()=default
 QCString (const QCString &)=default
QCStringoperator= (const QCString &)=default
 QCString (QCString &&)=default
QCStringoperator= (QCString &&)=default
 ~QCString ()=default
 QCString (const std::string &s)
 QCString (std::string &&s)
QCStringoperator= (std::string &&s)
 QCString (std::string_view sv)
QCStringoperator= (std::string_view sv)
 QCString (int)=delete
 QCString (const JavaCCString &s)
 For converting a JavaCC string.
QCStringoperator= (const JavaCCString &s)
 QCString (size_t size, SizeTag t)
 QCString (const char *str)
 creates a string from a plain C string.
 QCString (const char *str, size_t maxlen)
 creates a string from str and copies over the first maxlen characters.
QCStringoperator= (const char *str)
 replaces the contents by that of C string str.
QCStringoperator= (const std::string &s)
bool isEmpty () const
 Returns TRUE iff the string is empty.
size_t length () const
 Returns the length of the string, not counting the 0-terminator.
size_t size () const
 Returns the length of the string, not counting the 0-terminator.
const char * data () const
 Returns a pointer to the contents of the string in the form of a 0-terminated C string.
std::string_view view () const
char * rawData ()
 Returns a writable pointer to the data.
void resize (size_t newlen)
void clear ()
void reserve (size_t size)
 Reserve space for size bytes without changing the string contents.
QCString fill (char c, int len=-1)
 Fills a string with a predefined character.
QCStringsprintf (const char *format,...)
int find (char c, int index=0, bool cs=TRUE) const
int find (const char *str, int index=0, bool cs=TRUE) const
int find (const std::string &str, int index=0, bool cs=TRUE) const
int find (const QCString &str, int index=0, bool cs=TRUE) const
int findRev (char c, int index=-1, bool cs=TRUE) const
int findRev (const char *str, int index=-1, bool cs=TRUE) const
int contains (char c, bool cs=TRUE) const
int contains (const char *str, bool cs=TRUE) const
bool stripPrefix (const QCString &prefix)
bool stripPrefix (const char *prefix)
QCString left (size_t len) const
QCString right (size_t len) const
QCString mid (size_t index, size_t len=static_cast< size_t >(-1)) const
QCString lower () const
QCString upper () const
QCString stripWhiteSpace () const
 returns a copy of this string with leading and trailing whitespace removed
QCString stripLeadingAndTrailingEmptyLines () const
QCString quoted () const
QCString removeWhiteSpace () const
 returns a copy of this string with all whitespace removed
QCString simplifyWhiteSpace () const
 return a copy of this string with leading and trailing whitespace removed and multiple whitespace characters replaced by a single space
QCString repeat (unsigned int n) const
QCStringinsert (size_t index, const QCString &s)
QCStringinsert (size_t index, std::string_view s)
QCStringinsert (size_t index, const char *s)
QCStringinsert (size_t index, char c)
QCStringappend (char c)
QCStringappend (const char *s)
QCStringappend (const QCString &s)
QCStringappend (const std::string &s)
QCStringappend (std::string_view s)
QCStringprepend (const char *s)
QCStringprepend (const QCString &s)
QCStringprepend (const std::string &s)
QCStringprepend (std::string_view s)
QCStringremove (size_t index, size_t len)
QCStringreplace (size_t index, size_t len, const char *s)
short toShort (bool *ok=nullptr, int base=10) const
uint16_t toUShort (bool *ok=nullptr, int base=10) const
int toInt (bool *ok=nullptr, int base=10) const
uint32_t toUInt (bool *ok=nullptr, int base=10) const
long toLong (bool *ok=nullptr, int base=10) const
unsigned long toULong (bool *ok=nullptr, int base=10) const
uint64_t toUInt64 (bool *ok=nullptr, int base=10) const
QCStringsetNum (short n)
QCStringsetNum (uint16_t n)
QCStringsetNum (int n)
QCStringsetNum (uint32_t n)
QCStringsetNum (long n)
QCStringsetNum (long long n)
QCStringsetNum (unsigned long long n)
QCStringsetNum (unsigned long n)
bool startsWith (const char *s) const
bool startsWith (const std::string &s) const
bool startsWith (const QCString &s) const
bool endsWith (const char *s) const
bool endsWith (const std::string &s) const
bool endsWith (const QCString &s) const
const std::string & str () const
QCStringoperator+= (const QCString &s)
QCStringoperator+= (const std::string &s)
QCStringoperator+= (std::string_view s)
QCStringoperator+= (const char *s)
 Appends string str to this string and returns a reference to the result.
char & at (size_t i)
 Returns a reference to the character at index i.
const char & at (size_t i) const
char & operator[] (size_t i)
 Indexing operator.
const char & operator[] (size_t i) const

Private Attributes

std::string m_rep

Detailed Description

This is an alternative implementation of QCString.

It provides basically the same functions but uses std::string as the underlying string type

Definition at line 100 of file qcstring.h.

Member Enumeration Documentation

◆ SizeTag

creates a string with room for size characters

Parameters
[in]sizethe number of character to allocate (also counting the 0-terminator!)
Enumerator
ExplicitSize 

Definition at line 146 of file qcstring.h.

146{ ExplicitSize };
@ ExplicitSize
Definition qcstring.h:146

Constructor & Destructor Documentation

◆ QCString() [1/11]

◆ QCString() [2/11]

QCString::QCString ( const QCString & )
default

References QCString().

◆ QCString() [3/11]

QCString::QCString ( QCString && )
default

References QCString().

◆ ~QCString()

QCString::~QCString ( )
default

◆ QCString() [4/11]

QCString::QCString ( const std::string & s)
inline

Definition at line 110 of file qcstring.h.

110: m_rep(s) {}
std::string m_rep
Definition qcstring.h:615

References m_rep.

◆ QCString() [5/11]

QCString::QCString ( std::string && s)
inline

Definition at line 112 of file qcstring.h.

112: m_rep(std::move(s)) {}

References m_rep.

◆ QCString() [6/11]

QCString::QCString ( std::string_view sv)
inline

Definition at line 120 of file qcstring.h.

120: m_rep(sv) {}

References m_rep.

◆ QCString() [7/11]

QCString::QCString ( int )
delete

◆ QCString() [8/11]

QCString::QCString ( const JavaCCString & s)
inline

For converting a JavaCC string.

Definition at line 131 of file qcstring.h.

132 {
133 m_rep.resize(s.size());
134 memcpy(m_rep.data(),s.data(),s.size());
135 }

References m_rep.

◆ QCString() [9/11]

QCString::QCString ( size_t size,
SizeTag t )
inlineexplicit

Definition at line 147 of file qcstring.h.

147{ m_rep.resize(size); }
size_t size() const
Returns the length of the string, not counting the 0-terminator.
Definition qcstring.h:169

References m_rep, and size().

◆ QCString() [10/11]

QCString::QCString ( const char * str)
inline

creates a string from a plain C string.

Parameters
[in]strA zero terminated C string. When 0 an empty string is created.

Definition at line 152 of file qcstring.h.

152: m_rep(str?str:"") {}
const std::string & str() const
Definition qcstring.h:552

References m_rep, and str().

◆ QCString() [11/11]

QCString::QCString ( const char * str,
size_t maxlen )
inline

creates a string from str and copies over the first maxlen characters.

Definition at line 155 of file qcstring.h.

155: m_rep(str?str:"") { m_rep.resize(maxlen); }

References m_rep, and str().

Member Function Documentation

◆ append() [1/5]

◆ append() [2/5]

QCString & QCString::append ( const char * s)
inline

Definition at line 402 of file qcstring.h.

403 {
404 return operator+=(s);
405 }
QCString & operator+=(const QCString &s)
Definition qcstring.h:557

References operator+=(), and QCString().

◆ append() [3/5]

QCString & QCString::append ( const QCString & s)
inline

Definition at line 407 of file qcstring.h.

408 {
409 return operator+=(s);
410 }

References operator+=(), and QCString().

◆ append() [4/5]

QCString & QCString::append ( const std::string & s)
inline

Definition at line 412 of file qcstring.h.

413 {
414 return operator+=(s);
415 }

References operator+=(), and QCString().

◆ append() [5/5]

QCString & QCString::append ( std::string_view s)
inline

Definition at line 417 of file qcstring.h.

418 {
419 return operator+=(s);
420 }

References operator+=(), and QCString().

◆ at() [1/2]

char & QCString::at ( size_t i)
inline

Returns a reference to the character at index i.

Definition at line 593 of file qcstring.h.

594 {
595 return m_rep[i];
596 }

References m_rep.

Referenced by DefinitionImpl::_setBriefDescription(), abbreviate(), Qhp::addContentsItem(), addGlobalFunction(), addIncludeFile(), addMethodToClass(), addSeparatorsIfNeeded(), addTemplateNames(), addVariable(), addVariableToFile(), Config::checkAndCorrect(), checkVhdlString(), computeVerifiedDotPath(), configStringRecode(), TranslatorPersian::convertDigitsToFarsi(), MemberDefImpl::displayDefinition(), DocEmoji::DocEmoji(), elemIsVisible(), expandExpression(), externalRef(), DefinitionImpl::externalReference(), extractPartAfterNewLine(), findDirDocumentation(), findEndOfTemplate(), findEnumDocumentation(), VhdlDocGen::formatString(), PerlModGenerator::generatePerlModForMember(), generateSqlite3ForMember(), generateXMLForMember(), getCanonicalTemplateSpec(), getCurrentChar(), getExtension(), getLanguageFromCodeLang(), getLanguageFromFileName(), getNextChar(), getNextId(), getScopeDefs(), getScopeFragment(), handleHtmlTag(), DocPara::handleStartCode(), Markdown::Private::isAtxHeader(), NamespaceDefImpl::isLinkableInProject(), isVarWithConstructor(), leftScopeMatch(), linkToText(), makeFileName(), makeFileName(), matchExcludedSymbols(), nameIsOperator(), SymbolResolver::Private::newResolveTypedef(), node2URL(), DocbookDocVisitor::operator()(), HtmlDocVisitor::operator()(), ManDocVisitor::operator()(), parseCommentAsText(), parseFuncDecl(), Markdown::process(), Markdown::Private::processLink(), processList(), processString(), projectLogoSize(), readCodeFragment(), readIncludeFile(), readIncludeFile(), HtmlHelpRecoder::recode(), recognizeFixedForm(), replaceFunctionMacro(), resolveSymlink(), rightScopeMatch(), searchInputFiles(), splitSearchTokens(), startsWithKeyword(), stringize(), stripAnonymousNamespaceScope(), stripComment(), stripIrrelevantString(), stripQuotes(), stripQuotes(), stripScope(), stripTemplateSpecifiers(), stripTemplateSpecifiersFromScope(), stripTrailingWhiteSpace(), substEnvVarsInStrList(), Portable::system(), transcodeCharacterStringToUTF8(), Trace::trunc(), updateLanguageMapping(), validatingParseDoc(), MemberDefImpl::writeDeclaration(), MemberDefImpl::writeDocumentation(), writeExceptionList(), VhdlDocGen::writeFormatString(), writeIndexHierarchyEntries(), HtmlGenerator::writeLabel(), MemberDefImpl::writeMemberDocSimple(), writeMemberList(), writeObjCMethodCall(), PlantumlManager::writePlantUMLSource(), writeSingleFileIndex(), ConfigOption::writeStringList(), writeWord(), and HtmlEntityMapper::writeXMLSchema().

◆ at() [2/2]

const char & QCString::at ( size_t i) const
inline

Definition at line 598 of file qcstring.h.

599 {
600 return m_rep[i];
601 }

References m_rep.

◆ clear()

◆ contains() [1/2]

int QCString::contains ( char c,
bool cs = TRUE ) const

Definition at line 148 of file qcstring.cpp.

149{
150 if (length()==0) return 0;
151 int count=0;
152 const char *pos = data();
153 if (cs)
154 {
155 while (*pos) if (*pos++ == c) count++;
156 }
157 else
158 {
159 c = toLowerChar(c);
160 while (*pos)
161 {
162 if (toLowerChar(*pos)==c) count++;
163 pos++;
164 }
165 }
166 return count;
167}
size_t length() const
Returns the length of the string, not counting the 0-terminator.
Definition qcstring.h:166
const char * data() const
Returns a pointer to the contents of the string in the form of a 0-terminated C string.
Definition qcstring.h:172
char toLowerChar(char c)
Definition qcstring.cpp:24

References data(), length(), and toLowerChar().

Referenced by addMacroDefinition(), applyModifiers(), buildScopeFromQualifiedName(), VHDLOutlineParser::checkInlineCode(), DotNode::convertLabel(), hasDateReplacement(), mangleCSharpGenericName(), SymbolModifiers::operator|=(), VhdlDocGen::parseForConfig(), readIncludeFile(), and writeUCFLink().

◆ contains() [2/2]

int QCString::contains ( const char * str,
bool cs = TRUE ) const

Definition at line 169 of file qcstring.cpp.

170{
171 if (str==nullptr || length()==0) return 0;
172 int count=0;
173 const char *pos = data();
174 int len = qstrlen(str);
175 while (*pos)
176 {
177 if (cs)
178 {
179 if (qstrncmp(pos,str,len)==0) count++;
180 }
181 else
182 {
183 if (qstrnicmp(pos,str,len)==0) count++;
184 }
185 pos++;
186 }
187 return count;
188}
int qstrncmp(const char *str1, const char *str2, size_t len)
Definition qcstring.h:75
int qstrnicmp(const char *str1, const char *str2, size_t len)
Definition qcstring.cpp:463
uint32_t qstrlen(const char *str)
Returns the length of string str, or 0 if a null pointer is passed.
Definition qcstring.h:58

References data(), length(), qstrlen(), qstrncmp(), qstrnicmp(), and str().

◆ data()

const char * QCString::data ( ) const
inline

Returns a pointer to the contents of the string in the form of a 0-terminated C string.

Definition at line 172 of file qcstring.h.

172{ return m_rep.c_str(); }

References m_rep.

Referenced by DefinitionImpl::_docsAlreadyAdded(), SectionManager::add(), Crawlmap::addContentsItem(), addMacroDefinition(), GrowBuf::addStr(), SearchIndex::addWordRec(), addXRefItem(), adjustConfiguration(), bindTextParameter(), buildFileName(), checkBlocks(), checkMarkdownMainfile(), checkWarnMessage(), FlowChart::codify(), HtmlCodeGenerator::codify(), LatexCodeGenerator::codify(), ManCodeGenerator::codify(), RTFCodeGenerator::codify(), codifyLines(), codifyLines(), codifyLines(), codifyLines(), codifyLines(), codifyMapLines(), FilterCache::compileLineOffsets(), computeQualifiedIndex(), configStringRecode(), contains(), contains(), convertCharEntitiesToUTF8(), convertCppComments(), convertIndexWordToAnchor(), convertNameToFile(), convertToComment(), convertToDocBook(), convertToHtml(), convertToId(), convertToJSString(), convertToPSString(), convertToXML(), Portable::correctPath(), VhdlDocGen::createFlowChart(), detab(), do_mscgen_generate(), ManGenerator::docify(), HtmlGenerator::docify_(), docifyToString(), docifyToString(), encodeDirName(), encodeForOutput(), escapeAt(), escapeCharsInString(), escapeDoubleQuotes(), escapeSpecialChars(), escapeTooltip(), extractBoundingBox(), HtmlDocVisitor::filter(), ManDocVisitor::filter(), RTFDocVisitor::filter(), TextDocVisitor::filter(), filter2008VhdlComment(), filterId(), filterLatexString(), HtmlDocVisitor::filterQuotedCdataAttr(), find(), find(), Markdown::Private::findEmphasisChar(), Markdown::Private::findEndOfLine(), findRev(), findRev(), DocTokenizer::findSections(), VhdlDocGen::findVhdlClass(), Portable::fopen(), format_warn(), formatDateTime(), generateAnonymousAnchor(), generateOutput(), generateXML(), getConvertLatexMacro(), Portable::getenv(), CitationManager::getFormulas(), ParserManager::getParsers(), getPrefixIndex(), getProjectId(), SymbolResolver::Private::getResolvedTypeRec(), handle_warn_as_error(), handleCommentBlock(), handleToc(), PerlModOutput::iaddQuoted(), LayoutDocManager::init(), HtmlHelpRecoder::initialize(), insert(), insertPath(), DocParser::internalValidatingParseDoc(), Portable::isAbsolutePath(), isLowerCase(), latexEscapeIndexChars(), latexEscapeLabelName(), latexEscapePDFString(), latexFilterURL(), letterToLabel(), VHDLOutlineParser::lineCount(), nameIsActuallyPartOfType(), operator!=(), operator!=(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), RTFDocVisitor::operator()(), operator<(), operator<(), operator<(), operator<=(), operator<=(), operator==(), operator==(), operator>(), operator>(), operator>=(), operator>=(), DocIncOperator::parse(), LayoutDocManager::parse(), CCodeParser::parseCode(), FileCodeParser::parseCode(), FortranCodeParser::parseCode(), LexCodeParser::parseCode(), PythonCodeParser::parseCode(), SQLCodeParser::parseCode(), VHDLCodeParser::parseCode(), XMLCodeParser::parseCode(), parseCommentAsText(), parseFile(), parseFuncDecl(), parsePrototype(), parsePrototype(), ConfigImpl::parseString(), parseTagFile(), VHDLOutlineParser::Private::parseVhdlfile(), Portable::popen(), prepend(), Markdown::process(), Markdown::Private::processBlocks(), Markdown::Private::processQuotations(), Markdown::Private::processSpecialCommand(), pushBuffer(), qPrint(), qstrcmp(), qstrcmp(), qstrcmp(), qstricmp(), qstricmp(), qstricmp(), qstricmp_sort(), qstricmp_sort(), qstricmp_sort(), qstrnicmp(), qstrnicmp(), qstrnicmp(), readCodeFragment(), readConfiguration(), readIncludeFile(), HtmlHelpRecoder::recode(), Portable::recodeUtf8StringToW(), recognizeFixedForm(), removeEmptyLines(), removeIdsAndMarkers(), removeMarkers(), removeRedundantWhiteSpace(), repeat(), SectionManager::replace(), replaceAnonymousScopes(), CitationManager::replaceFormulas(), replaceVariables(), DotFilePatcher::run(), runPlantumlContent(), ColoredImage::save(), Image::save(), selectBlocks(), MemberDefImpl::setAnchor(), DefinitionImpl::Private::setDefFileName(), Portable::setenv(), simplifyWhiteSpace(), skipToEndMarker(), startCondSection(), Image::stringLength, stringToArgumentList(), stripIndentation(), stripIndentationVerbatim(), stripLeadingAndTrailingEmptyLines(), stripTrailingWhiteSpace(), substitute(), substitute(), substituteHtmlKeywords(), substituteKeywords(), Portable::system(), toLong(), toUInt64(), toULong(), transcodeCharacterBuffer(), unescapeCharsInString(), unescapeCRef(), Portable::unlink(), DocTokenizer::unputString(), Portable::unsetenv(), updateLanguageMapping(), validatingParseDoc(), validatingParseText(), ManCodeGenerator::writeCodeLink(), writeDEFString(), writeDocbookCodeString(), ClassDefImpl::writeIncludeFilesForSlice(), writeMemberList(), writeMultiLineCodeLink(), writeMultiLineCodeLink(), writeMultiLineCodeLink(), writeMultiLineCodeLink(), HtmlDocVisitor::writeObfuscatedMailAddress(), writeObjCMethodCall(), DocbookGenerator::writePageLink(), PlantumlManager::writePlantUMLSource(), Image::writeString(), ConfigOption::writeStringValue(), and writeXMLCodeString().

◆ endsWith() [1/3]

◆ endsWith() [2/3]

bool QCString::endsWith ( const QCString & s) const
inline

Definition at line 537 of file qcstring.h.

538 {
539 size_t l = s.length();
540 return m_rep.length()>=l && m_rep.compare(m_rep.length()-l, l, s.str())==0;
541 }

References length(), m_rep, QCString(), and str().

◆ endsWith() [3/3]

bool QCString::endsWith ( const std::string & s) const
inline

Definition at line 531 of file qcstring.h.

532 {
533 size_t l = s.length();
534 return m_rep.length()>=l && m_rep.compare(m_rep.length()-l, l, s)==0;
535 }

References m_rep.

◆ fill()

QCString QCString::fill ( char c,
int len = -1 )
inline

Fills a string with a predefined character.

Parameters
[in]cthe character used to fill the string with.
[in]lenthe number of character to fill. Use -1 to fill the whole string.
Note
the string will be resized to contain len characters. The contents of the string will be lost.

Definition at line 193 of file qcstring.h.

194 {
195 int l = len==-1 ? static_cast<int>(m_rep.size()) : len;
196 m_rep = std::string(l,c);
197 return *this;
198 }

References m_rep, and QCString().

Referenced by FlowChart::alignCommentNode(), FlowChart::alignFuncProc(), checkIfHtmlEndTagEndsAutoList(), codifyMapLines(), generateJSTree(), DocSets::Private::indent(), ManDocVisitor::operator()(), ManDocVisitor::operator()(), ManDocVisitor::operator()(), ManDocVisitor::operator()(), printNavLayout(), printNavTree(), FlowChart::printNode(), readCodeFragment(), and writeTemplateArgumentList().

◆ find() [1/4]

int QCString::find ( char c,
int index = 0,
bool cs = TRUE ) const

Definition at line 43 of file qcstring.cpp.

44{
45 if (index<0 || index>=static_cast<int>(length())) return -1; // index outside string
46 const char *pos = nullptr;
47 if (cs)
48 {
49 pos = strchr(data()+index,c);
50 }
51 else
52 {
53 pos = data()+index;
54 c = toLowerChar(c);
55 while (*pos && toLowerChar(*pos)!=c) pos++;
56 if (!*pos && c) pos=nullptr; // not found
57 }
58 return pos ? static_cast<int>(pos - data()) : -1;
59}

References data(), length(), and toLowerChar().

Referenced by MemberDefImpl::_computeIsConstructor(), MemberDefImpl::_computeIsDestructor(), DefinitionImpl::_docsAlreadyAdded(), MemberDefImpl::_writeCategoryRelation(), MemberDefImpl::_writeReimplements(), VhdlDocGen::addBaseClass(), addClassToContext(), VHDLOutlineParser::addCompInst(), addConceptToContext(), ModuleManager::addDocs(), addHtmlExtensionIfMissing(), addMacroDefinition(), addMethodToClass(), addSubprogram(), addTemplateNames(), addVariable(), addVariableToFile(), adjustConfiguration(), argListToString(), buildDictionaryList(), buildFunctionList(), buildScopeFromQualifiedName(), buildSequenceList(), buildTypedefList(), buildVarList(), Config::checkAndCorrect(), VHDLOutlineParser::checkInlineCode(), checkList(), combineArgsAndException(), computeClassRelations(), VhdlDocGen::convertFileNameToClassName(), DotFilePatcher::convertMapFile(), MemberList::countEnumValues(), createDVIFile(), demangleCSharpGenericName(), determineBlockName(), MemberDefImpl::displayDefinition(), DocInternalRef::DocInternalRef(), ExistsOnPath(), extractBeginRawStringDelimiter(), extractBlock(), extractBoundingBox(), extractClassName(), extractFromParens(), extractLanguageSpecificTitle(), extractNoExcept(), extractPartAfterNewLine(), fillColorStyleMap(), filterMemberDocumentation(), find(), find(), VhdlDocGen::findAllArchitectures(), DocParser::findDocsForMemberOrCompound(), findGlobalMember(), findMember(), findPackageScopeFromPath(), findUsedClassesForClass(), generateClassOrGlobalLink(), generateDEFForClass(), generateFileSources(), generateFunctionLink(), CitationManager::generatePage(), generateXML(), generateXMLForMember(), getDefsOld(), getDotImageExtension(), getFilteredImageAttributes(), getFilterFromList(), getLinkInScope(), SymbolResolver::Private::getResolvedSymbolRec(), getTemplateArgumentsFromName(), DocPara::handleCommand(), DocParser::handleParameterType(), handleToc(), CitationManager::insertCrossReferencesForBibFile(), insertTemplateSpecifierInScope(), ClassDefImpl::internalInsertMember(), isCastKeyword(), MemberDefImpl::isDocumentedFriendClass(), ClassDefImpl::isExtension(), MemberDefImpl::isFunctionPtr(), isRecursiveBaseClass(), DocImage::isSVG(), isURL(), isVarWithConstructor(), lineBlock(), linkToText(), Htags::loadFilemap(), makeBaseName(), makeBaseName(), makeBaseName(), makeQualifiedNameWithTemplateParameters(), makeTemplateInstanceRelation(), mangleCSharpGenericName(), matchCanonicalTypes(), matchExcludedSymbols(), mergeArguments(), DirDefImpl::mergeDirectoryInTree(), nameIsOperator(), SymbolResolver::Private::newResolveTypedef(), normalizeNonTemplateArgumentsInString(), VHDLOutlineParser::oneLineComment(), SymbolModifiers::operator|=(), DocLink::parse(), DocParamList::parse(), parseFuncDecl(), VhdlDocGen::parseFuncProto(), parseMain(), VhdlDocGen::parseUCF(), Markdown::Private::processLink(), processTagLessClasses(), projectLogoFile(), projectLogoSize(), readTagFile(), CitationManager::replaceFormulas(), replaceRef(), replaceVariables(), resolveRef(), resolveSymlink(), resolveTemplateInstanceInType(), resolveTypeDef(), DotFilePatcher::run(), searchTemplateSpecs(), MemberList::setAnonymousEnumType(), setClassScope(), setJavaProtection(), StyleData::setStyle(), splitSearchTokens(), splitString(), LatexDocVisitor::startPlantUmlFile(), stripDeclKeywords(), stripIrrelevantString(), stripKeyword(), stripTemplateSpecifiersFromScope(), subrHandleCommentBlock(), substEnvVarsInStrList(), Portable::system(), trimBaseClassScope(), Portable::unsetenv(), MemberDefImpl::warnIfUndocumented(), MemberDefImpl::warnIfUndocumentedParams(), DotNode::writeDEF(), writeDefArgumentList(), FileDefImpl::writeDetailedDescription(), DotNode::writeDocbook(), MemberDefImpl::writeDocumentation(), writeExceptionList(), writeExceptionListImpl(), HtmlGenerator::writeExternalSearchPage(), HtmlHelpIndex::writeFields(), writeFileIndex(), VhdlDocGen::writeFormatString(), writeGraphInfo(), LatexDocVisitor::writePlantUMLFile(), VhdlDocGen::writeRecordUnit(), VhdlDocGen::writeSource(), DefinitionImpl::writeSourceDef(), and DotNode::writeXML().

◆ find() [2/4]

int QCString::find ( const char * str,
int index = 0,
bool cs = TRUE ) const

Definition at line 61 of file qcstring.cpp.

62{
63 int l = static_cast<int>(length());
64 if (index<0 || index>=l) return -1; // index outside string
65 if (!str) return -1; // no string to search for
66 if (!*str) return index; // empty string matching at index
67 const char *pos = nullptr;
68 if (cs) // case sensitive
69 {
70 pos = strstr(data()+index,str);
71 }
72 else // case insensitive
73 {
74 pos = data();
75 int len = qstrlen(str);
76 while (*pos)
77 {
78 if (qstrnicmp(pos,str,len)==0) break;
79 pos++;
80 }
81 if (!*pos) pos = nullptr; // not found
82 }
83 return pos ? static_cast<int>(pos - data()) : -1;
84}

References data(), length(), qstrlen(), qstrnicmp(), and str().

◆ find() [3/4]

int QCString::find ( const QCString & str,
int index = 0,
bool cs = TRUE ) const

Definition at line 91 of file qcstring.cpp.

92{
93 return find(str.data(),index,cs);
94}
int find(char c, int index=0, bool cs=TRUE) const
Definition qcstring.cpp:43

References find(), QCString(), and str().

◆ find() [4/4]

int QCString::find ( const std::string & str,
int index = 0,
bool cs = TRUE ) const

Definition at line 86 of file qcstring.cpp.

87{
88 return find(str.c_str(),index,cs);
89}

References find(), and str().

◆ findRev() [1/2]

int QCString::findRev ( char c,
int index = -1,
bool cs = TRUE ) const

Definition at line 96 of file qcstring.cpp.

97{
98 const char *b = data();
99 const char *pos = nullptr;
100 int len = static_cast<int>(length());
101 if (len==0) return -1; // empty string
102 if (index<0) // start from end
103 {
104 if (cs)
105 {
106 pos = strrchr(b,c);
107 return pos ? static_cast<int>(pos - b) : -1;
108 }
109 index=len;
110 }
111 else if (index>len) // bad index
112 {
113 return -1;
114 }
115 pos = b+index;
116 if (cs)
117 {
118 while ( pos>=b && *pos!=c) pos--;
119 }
120 else
121 {
122 c = toLowerChar(c);
123 while ( pos>=b && toLowerChar(*pos)!=c) pos--;
124 }
125 return pos>=b ? static_cast<int>(pos - b) : -1;
126}

References data(), length(), and toLowerChar().

Referenced by abbreviate(), addClassToContext(), addEnumValuesToEnums(), addHtmlExtensionIfMissing(), addMemberFunction(), addModule(), addTemplateNames(), TooltipManager::addTooltip(), alignText(), buildDirectories(), buildFileList(), buildFunctionList(), combineArgsAndException(), computeCommonDirPrefix(), convertFileId2Var(), VhdlDocGen::correctMemberProperties(), MemberList::countEnumValues(), VhdlDocGen::deleteAllChars(), VhdlDocGen::deleteCharRev(), MemberDefImpl::displayDefinition(), endScope(), extractFromParens(), extractNamespaceName(), fillColorStyleMap(), DocParser::findAndCopyImage(), findClassRelation(), findDirDocumentation(), findEnumDocumentation(), findEnums(), findFileDef(), findGlobalMember(), findPackageScopeFromPath(), findParameterList(), findUsingDeclImports(), findUsingDirectives(), generateClassOrGlobalLink(), generateFunctionLink(), generateFunctionLink(), generateMemberLink(), PlantumlManager::generatePlantUmlFileNames(), PlantumlManager::generatePlantUMLOutput(), generateXMLForMember(), getBaseNameOfOutput(), getCanonicalTypeForIdentifier(), getDefsOld(), getFileNameExtension(), getParserForFile(), getScopeDefs(), guessSection(), FileDefImpl::isDocumentationFile(), NamespaceDefImpl::isLinkableInProject(), linkifyText(), Htags::loadFilemap(), makeBaseName(), makeShortName(), makeShortName(), makeShortName(), makeTemplateInstanceRelation(), markdownFileNameToId(), mergeScopes(), SymbolResolver::Private::newResolveTypedef(), PerlModDocVisitor::operator()(), parseFile(), VhdlDocGen::parseForBinding(), VhdlDocGen::parseForConfig(), parseFuncDecl(), VhdlDocGen::parseFuncProto(), VHDLOutlineParser::popLabel(), readCodeFragment(), relativePathToRoot(), resolveModuleProcedures(), resolveRef(), resolveTypeDef(), MemberList::setAnonymousEnumType(), setCallContextForVar(), setClassScope(), showFileDefMatches(), ManGenerator::startDoxyAnchor(), stripPath(), NamespaceDefImpl::updateLocalName(), version(), writeDefArgumentList(), MemberDefImpl::writeDocumentation(), MemberDefImpl::writeEnumDeclaration(), writeMscGraphFromFile(), PlantumlManager::writePlantUMLSource(), FlowChart::writeShape(), and DotNode::writeUrl().

◆ findRev() [2/2]

int QCString::findRev ( const char * str,
int index = -1,
bool cs = TRUE ) const

Definition at line 128 of file qcstring.cpp.

129{
130 int slen = static_cast<int>(qstrlen(str));
131 int len = static_cast<int>(length());
132 if (index<0) index = len-slen; // start from end
133 else if (index>len) return -1; // bad index
134 else if (index+slen>len) index=len-slen; // str would be too long
135 if (index<0) return -1; // no match possible
136 const char *pos = data()+index;
137 if (cs) // case sensitive
138 {
139 for (int i=index; i>=0; i--) if (qstrncmp(pos--,str,slen)==0) return i;
140 }
141 else // case insensitive
142 {
143 for (int i=index; i>=0; i--) if (qstrnicmp(pos,str,slen)==0) return i;
144 }
145 return -1;
146}

References data(), length(), qstrlen(), qstrncmp(), qstrnicmp(), and str().

◆ insert() [1/4]

QCString & QCString::insert ( size_t index,
char c )
inline

Definition at line 390 of file qcstring.h.

391 {
392 char s[2] = { c, '\0' };
393 return insert(index,s);
394 }
QCString & insert(size_t index, const QCString &s)
Definition qcstring.h:332

References insert(), and QCString().

◆ insert() [2/4]

QCString & QCString::insert ( size_t index,
const char * s )
inline

Definition at line 370 of file qcstring.h.

371 {
372 size_t len = s ? qstrlen(s) : 0;
373 if (len>0)
374 {
375 size_t ol = m_rep.size();
376 if (index>ol) // insert beyond end of string and fill gap with spaces
377 {
378 m_rep.resize(index+len);
379 std::memset(&m_rep[ol],' ',index-ol);
380 std::memcpy(&m_rep[index],s,len+1);
381 }
382 else // insert inside the string
383 {
384 m_rep.insert(index,s);
385 }
386 }
387 return *this;
388 }

References m_rep, QCString(), and qstrlen().

◆ insert() [3/4]

QCString & QCString::insert ( size_t index,
const QCString & s )
inline

Definition at line 332 of file qcstring.h.

333 {
334 if (s.length()>0)
335 {
336 size_t ol = m_rep.size();
337 if (index>ol) // insert beyond end of string and fill gap with spaces
338 {
339 m_rep.resize(index+s.length());
340 std::memset(&m_rep[ol],' ',index-ol);
341 std::memcpy(&m_rep[index],s.data(),s.length()+1);
342 }
343 else // insert inside the string
344 {
345 m_rep.insert(index,s.str());
346 }
347 }
348 return *this;
349 }

References data(), length(), m_rep, QCString(), and str().

Referenced by FileDefImpl::addIncludedUsingDirectives(), insert(), prepend(), prepend(), prepend(), prepend(), and replace().

◆ insert() [4/4]

QCString & QCString::insert ( size_t index,
std::string_view s )
inline

Definition at line 351 of file qcstring.h.

352 {
353 if (s.length()>0)
354 {
355 size_t ol = m_rep.size();
356 if (index>ol) // insert beyond end of string and fill gap with spaces
357 {
358 m_rep.resize(index+s.length());
359 std::memset(&m_rep[ol],' ',index-ol);
360 std::memcpy(&m_rep[index],s.data(),s.length()+1);
361 }
362 else // insert inside the string
363 {
364 m_rep.insert(index,s);
365 }
366 }
367 return *this;
368 }

References m_rep, and QCString().

◆ isEmpty()

bool QCString::isEmpty ( ) const
inline

Returns TRUE iff the string is empty.

Definition at line 163 of file qcstring.h.

163{ return m_rep.empty(); }

References m_rep.

Referenced by DefinitionImpl::_setBriefDescription(), DefinitionImpl::_setDocumentation(), DefinitionImpl::_setInbodyDocumentation(), HtmlCodeGenerator::_writeCodeLink(), MemberDefImpl::_writeGroupInclude(), DefinitionImpl::_writeSourceRefList(), MemberDefImpl::_writeTemplatePrefix(), abbreviate(), SymbolResolver::Private::accessibleViaUsingDefinition(), SymbolResolver::Private::accessibleViaUsingNamespace(), FileDefImpl::acquireFileVersion(), addAnchor(), DotClassGraph::addClass(), addClassToContext(), addClassToGroups(), addConceptToContext(), Crawlmap::addContentsItem(), DocSets::addContentsItem(), EclipseHelp::addContentsItem(), HtmlHelp::addContentsItem(), Qhp::addContentsItem(), addDefine(), addDefineDoc(), DocGroup::addDocs(), ModuleManager::addDocs(), DotGroupCollaboration::addEdge(), addEnumDocs(), addEnumValuesToEnums(), addGlobalFunction(), DotGfxHierarchyTable::addHierarchy(), addHtmlExtensionIfMissing(), ModuleManager::addImport(), FileDefImpl::addIncludedByDependency(), FileDefImpl::addIncludeDependency(), addIncludeFile(), PerlModGenerator::addIncludeInfo(), Crawlmap::addIndexItem(), HtmlHelp::addIndexItem(), LatexGenerator::addIndexItem(), Qhp::addIndexItem(), RTFGenerator::addIndexItem(), addInstance(), addInterfaceOrServiceToServiceOrSingleton(), HtmlHelpIndex::addItem(), addKnRArgInfo(), LatexGenerator::addLabel(), PerlModDocVisitor::addLink(), addMemberDocs(), addMemberFunction(), addMemberToGroups(), addMemberToSearchIndex(), addMethodToClass(), addModule(), addNamespaceToGroups(), addPerlModDocBlock(), VHDLOutlineParser::addProto(), addRefItem(), addRelatedPage(), addRelatedPage(), addSection(), addSeparatorsIfNeeded(), GrowBuf::addStr(), addToMap(), TooltipManager::addTooltip(), ClassDefImpl::addTypeConstraint(), addUsingDirective(), addVariable(), addVariable(), addVariableToClass(), addVariableToFile(), SearchIndexExternal::addWord(), SearchIndex::addWordRec(), addXRefItem(), adjustConfiguration(), applyModifiers(), argListToString(), buildClassDocList(), buildClassList(), buildDictionaryList(), buildExampleList(), buildFileList(), buildFileName(), buildFunctionList(), buildGroupListFiltered(), buildInterfaceAndServiceList(), buildNamespaceList(), buildPageList(), buildScopeFromQualifiedName(), buildSequenceList(), buildTypedefList(), buildVarList(), Config::checkAndCorrect(), DocParser::checkArgumentName(), checkBlocks(), checkForKnRstyleC(), VHDLOutlineParser::checkInlineCode(), checkList(), checkMarkdownMainfile(), DocParser::checkRetvalName(), DocParser::checkUnOrMultipleDocumentedParams(), checkVhdlString(), ClassDefImpl::ClassDefImpl(), FlowChart::codify(), HtmlCodeGenerator::codify(), LatexCodeGenerator::codify(), ManCodeGenerator::codify(), RTFCodeGenerator::codify(), codifyLines(), codifyLines(), codifyLines(), codifyLines(), codifyLines(), codifyMapLines(), combineArgsAndException(), combineDeclarationAndDefinition(), computeClassRelations(), computeExpression(), DotGraph::computeGraph(), computePageRelations(), computeVerifiedDotPath(), ConceptDefImpl::ConceptDefImpl(), configFileToString(), configStringRecode(), containsWord(), convertCharEntitiesToUTF8(), DotNode::convertLabel(), convertMapFile(), convertNameToFile(), convertStringToBool(), convertToComment(), convertToDocBook(), convertToHtml(), convertToId(), convertToJSString(), convertToPSString(), convertToXML(), copyIcon(), copyLogo(), copyStyleSheet(), correctId(), Portable::correctPath(), correctURL(), createDVIFile(), VHDLOutlineParser::createFunction(), createHtmlUrl(), FormulaManager::createLatexFile(), createOutputDirectory(), createRef(), createUsingMemberImportForClass(), dateTimeFromString(), deliverablesPresent(), MemberDefImpl::detectUndocumentedParams(), MemberGroup::distributeMemberGroupDocumentation(), DocCite::DocCite(), DocFormula::DocFormula(), ManGenerator::docify(), RTFGenerator::docify(), HtmlGenerator::docify_(), docifyToString(), docifyToString(), DocRef::DocRef(), DotClassGraph::DotClassGraph(), elemIsVisible(), encodeForOutput(), HtmlGenerator::endDotGraph(), RTFGenerator::endDoxyAnchor(), HtmlGenerator::endIndexItem(), LatexGenerator::endIndexItem(), RTFGenerator::endIndexItem(), RTFGenerator::endIndexValue(), LatexDocVisitor::endLink(), RTFDocVisitor::endLink(), HtmlGenerator::endMemberTemplateParams(), LatexGenerator::endPageRef(), RTFGenerator::endPageRef(), endQuickIndexItem(), DocbookGenerator::endTitleHead(), LatexGenerator::endTitleHead(), RTFGenerator::endTitleHead(), escapeAt(), escapeCharsInString(), escapeDoubleQuotes(), escapeSpecialChars(), escapeTooltip(), Htags::execute(), ExistsOnPath(), expandExpression(), externalRef(), DefinitionImpl::externalReference(), extractCanonicalArgType(), extractCanonicalType(), extractClassNameFromType(), extractNamespaceName(), extractTrailingComment(), field2URL(), MemberDefImpl::fieldType(), FileDefImpl::FileDefImpl(), fileToString(), HtmlDocVisitor::filter(), ManDocVisitor::filter(), RTFDocVisitor::filter(), TextDocVisitor::filter(), filterId(), filterLatexString(), filterMemberDocumentation(), HtmlDocVisitor::filterQuotedCdataAttr(), findClassRelation(), findDefineDocumentation(), DocParser::findDocsForMemberOrCompound(), Markdown::Private::findEmphasisChar(), Markdown::Private::findEndOfLine(), findEnumDocumentation(), findEnums(), findFile(), findFileDef(), findFriends(), findGlobalMember(), findGroupScope(), FlowChart::findLabel(), findMainPage(), findMember(), findMemberDocumentation(), findMembersWithSpecificName(), findPackageScope(), findPackageScopeFromPath(), DocTokenizer::findSections(), findTemplateSpecializationPosition(), findUsedClassesForClass(), findUsingDeclarations(), findUsingDeclImports(), findUsingDirectives(), VariableContext::findVariable(), fixArgumentListForJavaScript(), format_warn(), generateBriefDoc(), generateClassOrGlobalLink(), generateClassOrGlobalLink(), generateClassOrGlobalLink(), generateDEFForMember(), OutputList::generateDoc(), generateFileRef(), generateFunctionLink(), generateFunctionLink(), FormulaManager::generateImages(), generateJSNavTree(), generateMemberLink(), generateMemLink(), generateOutput(), CitationManager::generatePage(), PerlModGenerator::generatePerlModForMember(), PerlModGenerator::generatePerlModSection(), PlantumlManager::generatePlantUmlFileNames(), generateSqlite3ForClass(), generateSqlite3ForMember(), generateSqlite3ForPage(), generateXMLForClass(), generateXMLForMember(), generateXMLForPage(), genericCompareMembers(), getBibFile(), getCanonicalTemplateSpec(), getCanonicalTypeForIdentifier(), getClass(), VhdlDocGen::getClass(), MemberDefImpl::getClassDefOfAnonymousType(), getConcept(), getConvertLatexMacro(), getCurrentChar(), getCurrentDateTime(), getDefsNew(), getDefsOld(), getExtension(), FilterCache::getFileContents(), getFileFilter(), getFileNameExtension(), CitationManager::getFormulas(), getFortranDefs(), getFortranNamespaceDefs(), getFortranTypeDefs(), getFullProjectName(), getLanguageFromFileName(), getLink(), getLink(), getLink(), getLinkInScope(), getLinkInScope(), getMemberFromSymbol(), getNextChar(), MemberDefImpl::getOutputFileBase(), ParserManager::getParsers(), getPrefixIndex(), getProjectId(), Qhp::getQchFileName(), MemberDefImpl::getReference(), getResolvedNamespace(), SymbolResolver::Private::getResolvedSymbol(), SymbolResolver::Private::getResolvedSymbolRec(), SymbolResolver::Private::getResolvedType(), SymbolResolver::Private::getResolvedTypeRec(), getScopeDefs(), getSQLDocBlock(), getSubdir(), GroupDefImpl::GroupDefImpl(), DocPara::handleCommand(), VHDLOutlineParser::handleCommentBlock(), DocPara::handleDoxyConfig(), handleGuard(), DocPara::handleHtmlStartTag(), DocParser::handleImage(), handleInheritanceGraph(), DocPara::handleLink(), handleParametersCommentBlocks(), DocPara::handleShowDate(), DocPara::handleStartCode(), handleToc(), DefinitionImpl::hasBriefDescription(), DirDefImpl::hasDetailedDescription(), MemberDefImpl::hasDetailedDescription(), ModuleDefImpl::hasDetailedDescription(), PerlModOutput::iaddQuoted(), inheritDocumentation(), ConfigImpl::init(), RTFGenerator::init(), initDoxygen(), DocSets::initialize(), EclipseHelp::initialize(), HtmlHelpRecoder::initialize(), Qhp::initialize(), initPredefined(), initTracing(), initUCF(), CitationManager::insertCrossReferencesForBibFile(), insertMemberFunctionParams(), insertRefid(), insertTemplateSpecifierInScope(), DocParser::internalValidatingParseDoc(), SymbolResolver::Private::isAccessibleFromWithExpScope(), ClassDefImpl::isBaseClass(), MemberDefImpl::isBriefSectionVisible(), isClassSection(), ClassDefImpl::isExtension(), NamespaceDefImpl::isLinkableInProject(), isLinkRef(), isLowerCase(), isVarWithConstructor(), CitationManager::latexBibFiles(), latexEscapeIndexChars(), latexEscapeLabelName(), latexEscapePDFString(), latexFilterURL(), letterToLabel(), HtmlGenerator::lineBreak(), VHDLOutlineParser::lineCount(), linkifyText(), linkToText(), mainPageHasOwnTitle(), makeFileName(), makeFileName(), makeIndex(), makeQualifiedNameWithTemplateParameters(), makeRef(), makeRef(), makeURL(), Mapper< T >::map(), matchArgument2(), matchExcludedSymbols(), mergeArguments(), mergeScopes(), NamespaceDefImpl::NamespaceDefImpl(), node2URL(), objectLinkToString(), objectLinkToString(), objectLinkToString(), DocbookGenerator::openSection(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), HtmlDocVisitor::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()(), LatexDocVisitor::operator()(), ManDocVisitor::operator()(), ManDocVisitor::operator()(), ManDocVisitor::operator()(), ManDocVisitor::operator()(), PerlModDocVisitor::operator()(), PerlModDocVisitor::operator()(), PerlModDocVisitor::operator()(), PrintDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), TextDocVisitor::operator()(), XmlDocVisitor::operator()(), XmlDocVisitor::operator()(), XmlDocVisitor::operator()(), XmlDocVisitor::operator()(), XmlDocVisitor::operator()(), XmlDocVisitor::operator()(), XmlDocVisitor::operator()(), XmlDocVisitor::operator()(), XmlDocVisitor::operator()(), SymbolModifiers::operator|=(), organizeSubGroupsFiltered(), Translator::p_latexCommandName(), CondParser::parse(), DocSection::parse(), DocXRefItem::parse(), CCodeParser::parseCode(), FileCodeParser::parseCode(), FortranCodeParser::parseCode(), LexCodeParser::parseCode(), PythonCodeParser::parseCode(), SQLCodeParser::parseCode(), VHDLCodeParser::parseCode(), XMLCodeParser::parseCode(), CodeFragmentManager::parseCodeFragment(), parseCommentAsText(), CommentScanner::parseCommentBlock(), parseFuncDecl(), MarkdownOutlineParser::parseInput(), parseInput(), VHDLOutlineParser::parseInput(), parsePrototype(), parsePrototype(), VhdlDocGen::parseUCF(), Htags::path2URL(), DefinitionImpl::pathFragment(), VhdlDocGen::prepareComment(), printNavTree(), Markdown::process(), Markdown::Private::processBlocks(), processConcatOperators(), Markdown::Private::processLink(), processList(), Markdown::Private::processSpecialCommand(), projectLogoFile(), projectLogoSize(), qPrint(), readCodeFragment(), readConfiguration(), readFileOrDirectory(), readIncludeFile(), readInputFile(), readTagFile(), DocParser::readTextFileByName(), Portable::recodeUtf8StringToW(), ParserManager::registerExtension(), relativePathToRoot(), removeAnonymousScopes(), removeIdsAndMarkers(), removeMarkers(), removeRedundantWhiteSpace(), replaceAnonymousScopes(), replaceColorMarkers(), CitationManager::replaceFormulas(), replaceFunctionMacro(), replaceRef(), resolveClassNestingRelations(), resolveLink(), ModuleManager::resolvePartitionsRecursively(), resolveRef(), resolveTypeDef(), MemberDefImpl::resolveUnnamedParameters(), runPlantumlContent(), searchTemplateSpecs(), selectBlocks(), DefinitionImpl::setBriefDescription(), setCallContextForVar(), SearchIndex::setCurrentDoc(), SearchIndexExternal::setCurrentDoc(), DefinitionImpl::Private::setDefFileName(), DefinitionImpl::setDocumentation(), setDotFontPath(), Portable::setenv(), GroupDefImpl::setGroupTitleLocal(), DefinitionImpl::setInbodyDocumentation(), ClassDefImpl::setIncludeFile(), ConceptDefImpl::setIncludeFile(), showFileDefMatches(), simplifyWhiteSpace(), MemberDefImpl::sourceRefName(), splitSearchTokens(), DocbookGenerator::startDescTable(), DocbookGenerator::startDoxyAnchor(), LatexGenerator::startDoxyAnchor(), DocbookGenerator::startFile(), startFile(), HtmlGenerator::startIndexItem(), LatexGenerator::startIndexItem(), DocbookDocVisitor::startLink(), HtmlDocVisitor::startLink(), LatexDocVisitor::startLink(), RTFDocVisitor::startLink(), XmlDocVisitor::startLink(), LayoutParser::startMemberDeclEntry(), LayoutParser::startMemberDefEntry(), HtmlGenerator::startMemberDescription(), DocbookGenerator::startMemberDoc(), LatexGenerator::startMemberDoc(), RTFGenerator::startMemberDoc(), DocbookGenerator::startMemberDocSimple(), HtmlGenerator::startMemberHeader(), HtmlGenerator::startMemberItem(), LayoutParser::startNavEntry(), startOfRequiresExpression(), HtmlGenerator::startParagraph(), LatexGenerator::startParameterType(), RTFGenerator::startParameterType(), startQuickIndexItem(), LayoutParser::startSectionEntry(), startsWith(), LatexGenerator::startTextLink(), RTFGenerator::startTextLink(), Image::stringLength, stringToArgumentList(), stripAnonymousNamespaceScope(), stripIndentation(), stripIndentationVerbatim(), stripLeadingAndTrailingEmptyLines(), stripLeadingAndTrailingEmptyLines(), stripProtectionPrefix(), subrHandleCommentBlock(), subrHandleCommentBlockResult(), substEnvVarsInString(), substEnvVarsInStrList(), substitute(), substitute(), substituteHtmlKeywords(), substituteKeywords(), substituteLatexKeywords(), substituteTemplateArgumentsInString(), substituteTemplatesInString(), SymbolResolver::Private::substTypedef(), Portable::system(), transcodeCharacterBuffer(), transferArgumentDocumentation(), TranslatorAfrikaans::trDocumentation(), TranslatorArabic::trDocumentation(), TranslatorArmenian::trDocumentation(), TranslatorBrazilian::trDocumentation(), TranslatorBulgarian::trDocumentation(), TranslatorCatalan::trDocumentation(), TranslatorChinese::trDocumentation(), TranslatorChinesetraditional::trDocumentation(), TranslatorCroatian::trDocumentation(), TranslatorCzech::trDocumentation(), TranslatorDanish::trDocumentation(), TranslatorDutch::trDocumentation(), TranslatorEnglish::trDocumentation(), TranslatorEsperanto::trDocumentation(), TranslatorFinnish::trDocumentation(), TranslatorFrench::trDocumentation(), TranslatorGerman::trDocumentation(), TranslatorGreek::trDocumentation(), TranslatorHindi::trDocumentation(), TranslatorHungarian::trDocumentation(), TranslatorIndonesian::trDocumentation(), TranslatorItalian::trDocumentation(), TranslatorJapanese::trDocumentation(), TranslatorKorean::trDocumentation(), TranslatorLatvian::trDocumentation(), TranslatorLithuanian::trDocumentation(), TranslatorMacedonian::trDocumentation(), TranslatorNorwegian::trDocumentation(), TranslatorPersian::trDocumentation(), TranslatorPolish::trDocumentation(), TranslatorPortuguese::trDocumentation(), TranslatorRomanian::trDocumentation(), TranslatorRussian::trDocumentation(), TranslatorSerbian::trDocumentation(), TranslatorSerbianCyrillic::trDocumentation(), TranslatorSlovak::trDocumentation(), TranslatorSlovene::trDocumentation(), TranslatorSpanish::trDocumentation(), TranslatorSwedish::trDocumentation(), TranslatorTurkish::trDocumentation(), TranslatorUkrainian::trDocumentation(), TranslatorVietnamese::trDocumentation(), TranslatorAfrikaans::trGeneratedAt(), TranslatorArabic::trGeneratedAt(), TranslatorArmenian::trGeneratedAt(), TranslatorBrazilian::trGeneratedAt(), TranslatorBulgarian::trGeneratedAt(), TranslatorCatalan::trGeneratedAt(), TranslatorChinese::trGeneratedAt(), TranslatorChinesetraditional::trGeneratedAt(), TranslatorCroatian::trGeneratedAt(), TranslatorCzech::trGeneratedAt(), TranslatorDanish::trGeneratedAt(), TranslatorDutch::trGeneratedAt(), TranslatorEnglish::trGeneratedAt(), TranslatorEsperanto::trGeneratedAt(), TranslatorFinnish::trGeneratedAt(), TranslatorFrench::trGeneratedAt(), TranslatorGerman::trGeneratedAt(), TranslatorGreek::trGeneratedAt(), TranslatorHindi::trGeneratedAt(), TranslatorHungarian::trGeneratedAt(), TranslatorIndonesian::trGeneratedAt(), TranslatorItalian::trGeneratedAt(), TranslatorJapanese::trGeneratedAt(), TranslatorKorean::trGeneratedAt(), TranslatorLatvian::trGeneratedAt(), TranslatorLithuanian::trGeneratedAt(), TranslatorMacedonian::trGeneratedAt(), TranslatorNorwegian::trGeneratedAt(), TranslatorPersian::trGeneratedAt(), TranslatorPolish::trGeneratedAt(), TranslatorPortuguese::trGeneratedAt(), TranslatorRomanian::trGeneratedAt(), TranslatorRussian::trGeneratedAt(), TranslatorSerbian::trGeneratedAt(), TranslatorSerbianCyrillic::trGeneratedAt(), TranslatorSlovak::trGeneratedAt(), TranslatorSlovene::trGeneratedAt(), TranslatorSpanish::trGeneratedAt(), TranslatorSwedish::trGeneratedAt(), TranslatorTurkish::trGeneratedAt(), TranslatorUkrainian::trGeneratedAt(), TranslatorVietnamese::trGeneratedAt(), TranslatorAfrikaans::trGeneratedAutomatically(), TranslatorArabic::trGeneratedAutomatically(), TranslatorArmenian::trGeneratedAutomatically(), TranslatorBrazilian::trGeneratedAutomatically(), TranslatorBulgarian::trGeneratedAutomatically(), TranslatorCatalan::trGeneratedAutomatically(), TranslatorChinese::trGeneratedAutomatically(), TranslatorChinesetraditional::trGeneratedAutomatically(), TranslatorCroatian::trGeneratedAutomatically(), TranslatorCzech::trGeneratedAutomatically(), TranslatorDanish::trGeneratedAutomatically(), TranslatorDutch::trGeneratedAutomatically(), TranslatorEnglish::trGeneratedAutomatically(), TranslatorEsperanto::trGeneratedAutomatically(), TranslatorFrench::trGeneratedAutomatically(), TranslatorGerman::trGeneratedAutomatically(), TranslatorGreek::trGeneratedAutomatically(), TranslatorHindi::trGeneratedAutomatically(), TranslatorHungarian::trGeneratedAutomatically(), TranslatorIndonesian::trGeneratedAutomatically(), TranslatorItalian::trGeneratedAutomatically(), TranslatorJapanese::trGeneratedAutomatically(), TranslatorKorean::trGeneratedAutomatically(), TranslatorLatvian::trGeneratedAutomatically(), TranslatorLithuanian::trGeneratedAutomatically(), TranslatorMacedonian::trGeneratedAutomatically(), TranslatorNorwegian::trGeneratedAutomatically(), TranslatorPersian::trGeneratedAutomatically(), TranslatorPolish::trGeneratedAutomatically(), TranslatorPortuguese::trGeneratedAutomatically(), TranslatorRomanian::trGeneratedAutomatically(), TranslatorRussian::trGeneratedAutomatically(), TranslatorSerbian::trGeneratedAutomatically(), TranslatorSerbianCyrillic::trGeneratedAutomatically(), TranslatorSlovak::trGeneratedAutomatically(), TranslatorSlovene::trGeneratedAutomatically(), TranslatorSpanish::trGeneratedAutomatically(), TranslatorSwedish::trGeneratedAutomatically(), TranslatorTurkish::trGeneratedAutomatically(), TranslatorUkrainian::trGeneratedAutomatically(), TranslatorVietnamese::trGeneratedAutomatically(), TranslatorBrazilian::trModuleMembersDescriptionTotal(), TranslatorEnglish::trModuleMembersDescriptionTotal(), TranslatorPortuguese::trModuleMembersDescriptionTotal(), TranslatorBrazilian::trNamespaceMembersDescriptionTotal(), TranslatorEnglish::trNamespaceMembersDescriptionTotal(), TranslatorPortuguese::trNamespaceMembersDescriptionTotal(), TranslatorSpanish::trNamespaceMembersDescriptionTotal(), tryPath(), unescapeCharsInString(), Portable::unsetenv(), updateLanguageMapping(), Config::updateObsolete(), DotAttributes::updateValue(), LayoutNavEntry::url(), validatingParseDoc(), validatingParseText(), validatingParseTitle(), version(), DocbookDocVisitor::visitPreStart(), visitPreStart(), visitPreStart(), warn_line(), MemberDefImpl::warnIfUndocumentedParams(), writeAlphabeticalClassList(), LatexGenerator::writeAnchor(), RTFGenerator::writeAnchor(), DotNode::writeArrow(), LatexCodeGenerator::writeCodeLink(), ManCodeGenerator::writeCodeLink(), RTFCodeGenerator::writeCodeLink(), ClassDefImpl::writeDeclaration(), MemberDefImpl::writeDeclaration(), NamespaceLinkedRefMap::writeDeclaration(), ClassDefImpl::writeDeclarationLink(), ConceptDefImpl::writeDeclarationLink(), ModuleDefImpl::writeDeclarationLink(), MemberList::writeDeclarations(), writeDefArgumentList(), writeDEFString(), GroupDefImpl::writeDirs(), DefinitionImpl::writeDocAnchorsToTagFile(), writeDocbookCodeString(), writeDocbookLink(), MemberDefImpl::writeDocumentation(), MemberList::writeDocumentation(), ModuleDefImpl::writeExports(), HtmlGenerator::writeExternalSearchPage(), HtmlHelpIndex::writeFields(), writeFileIndex(), DirDefImpl::writeFileList(), GroupDefImpl::writeFiles(), ModuleDefImpl::writeFiles(), FlowChart::writeFlowLinks(), writeFont(), VhdlDocGen::writeFormatString(), writeFuncProto(), VhdlDocGen::writeFunctionProto(), DotGraph::writeGraphHeader(), ClassDefImpl::writeIncludeFiles(), ConceptDefImpl::writeIncludeFiles(), ClassDefImpl::writeIncludeFilesForSlice(), writeIncludeInfo(), writeIndex(), writeIndexHierarchyEntries(), HtmlGenerator::writeInheritedSectionTitle(), writeJavasScriptSearchDataPage(), DocbookCodeGenerator::writeLineNumber(), HtmlCodeGenerator::writeLineNumber(), LatexCodeGenerator::writeLineNumber(), RTFCodeGenerator::writeLineNumber(), XMLCodeGenerator::writeLineNumber(), TextGeneratorSqlite3Impl::writeLink(), writeMapArea(), Markdown::Private::writeMarkdownImage(), MemberDefImpl::writeMemberDocSimple(), ClassDefImpl::writeMemberList(), writeMemberList(), writeMemberReference(), writeMscImageMapFromFile(), writeMultiLineCodeLink(), writeMultiLineCodeLink(), writeNamespaceTreeElement(), GroupDefImpl::writeNestedGroups(), HtmlDocVisitor::writeObfuscatedMailAddress(), writeObjCMethodCall(), HtmlGenerator::writeObjectLink(), PageDefImpl::writePageDocumentation(), writePages(), PlantumlManager::writePlantUMLSource(), VhdlDocGen::writeRecordUnit(), FlowChart::writeShape(), writeSingleFileIndex(), VhdlDocGen::writeSource(), FileDefImpl::writeSourceBody(), DefinitionImpl::writeSourceDef(), HtmlGenerator::writeStartAnnoItem(), LatexGenerator::writeStartAnnoItem(), RTFGenerator::writeStartAnnoItem(), Image::writeString(), ConfigOption::writeStringValue(), DirDefImpl::writeSubDirList(), HtmlGenerator::writeSummaryLink(), ClassDefImpl::writeTagFile(), ConceptDefImpl::writeTagFile(), MemberDefImpl::writeTagFile(), ModuleDefImpl::writeTagFile(), NamespaceDefImpl::writeTagFile(), writeTagFile(), ClassDefImpl::writeTemplateSpec(), DefinitionImpl::writeToc(), DocSets::writeToken(), HtmlCodeGenerator::writeTooltip(), VhdlDocGen::writeVHDLDeclaration(), VhdlDocGen::writeVHDLDeclarations(), VhdlDocGen::writeVhdlLink(), writeWord(), writeXMLCodeString(), writeXMLDocBlock(), writeXMLLink(), and HtmlEntityMapper::writeXMLSchema().

◆ left()

QCString QCString::left ( size_t len) const
inline

Definition at line 229 of file qcstring.h.

230 {
231 return m_rep.empty() ? QCString() : QCString(m_rep.substr(0,len));
232 }
QCString()=default

References m_rep, and QCString().

Referenced by MemberDefImpl::_computeIsConstructor(), MemberDefImpl::_writeCategoryRelation(), MemberDefImpl::_writeReimplements(), abbreviate(), VhdlDocGen::addBaseClass(), addCite(), addClassToContext(), VHDLOutlineParser::addCompInst(), addEnumValuesToEnums(), DocSets::addIndexItem(), addMacroDefinition(), addMemberFunction(), addMethodToClass(), addRelatedPage(), addTemplateNames(), addVariable(), adjustConfiguration(), alignText(), argListToString(), buildDirectories(), buildFileList(), buildFunctionList(), buildTypedefList(), DocParser::checkArgumentName(), checkList(), DocParser::checkUnOrMultipleDocumentedParams(), codifyLines(), combineArgsAndException(), computeCommonDirPrefix(), DotFilePatcher::convertMapFile(), convertNameToFile(), convertToHtmlAndTruncate(), VhdlDocGen::correctMemberProperties(), createTagLessInstance(), demangleCSharpGenericName(), determineBlockName(), MemberDefImpl::displayDefinition(), DocInternalRef::DocInternalRef(), DocRef::DocRef(), expandExpression(), extractClassName(), extractLanguageSpecificTitle(), extractNamespaceName(), extractNoExcept(), Markdown::Private::extractTitleId(), fillColorStyleMap(), filterMemberDocumentation(), DocParser::findAndCopyImage(), findClassRelation(), findDirDocumentation(), DocParser::findDocsForMemberOrCompound(), findEnumDocumentation(), findEnums(), findFileDef(), findGlobalMember(), findMember(), findPackageScopeFromPath(), findScopeFromQualifiedName(), findUsingDeclImports(), findUsingDirectives(), generateClassOrGlobalLink(), generateClassOrGlobalLink(), generateFunctionLink(), generateFunctionLink(), generateMemberLink(), CitationManager::generatePage(), PlantumlManager::generatePlantUmlFileNames(), generateXMLForMember(), getBaseNameOfOutput(), MemberDefImpl::getClassDefOfAnonymousType(), getDefsOld(), getDotImageExtension(), getFilteredImageAttributes(), getFilterFromList(), getMemberFromSymbol(), ParserManager::getParsers(), SymbolResolver::Private::getResolvedSymbolRec(), SymbolResolver::Private::getResolvedTypeRec(), getScopeDefs(), getTemplateArgumentsFromName(), DocPara::handleCommand(), handleToc(), initUCF(), insertTemplateSpecifierInScope(), Markdown::Private::isAtxHeader(), isCastKeyword(), MemberDefImpl::isDocumentedFriendClass(), isRecursiveBaseClass(), isURL(), isVarWithConstructor(), DiagramItem::label(), leftScopeMatch(), linkifyText(), Htags::loadFilemap(), makeBaseName(), makeBaseName(), makeBaseName(), makeDisplayName(), makeTemplateInstanceRelation(), mangleCSharpGenericName(), markdownFileNameToId(), matchCanonicalTypes(), matchExcludedSymbols(), mergeArguments(), mergeCategories(), DirDefImpl::mergeDirectoryInTree(), ClassDefImpl::mergeMembersFromBaseClasses(), mergeScopes(), SymbolResolver::Private::newResolveTypedef(), normalizeNonTemplateArgumentsInString(), LatexDocVisitor::operator()(), DocLink::parse(), parseCommentAsText(), parseFuncDecl(), VhdlDocGen::parseFuncProto(), MarkdownOutlineParser::parseInput(), parseMain(), VhdlDocGen::parseUCF(), VHDLOutlineParser::popLabel(), FlowChart::printNode(), Markdown::Private::processLink(), projectLogoFile(), readTagFile(), replaceNamespaceAliasesRec(), replaceRef(), resolveRef(), resolveSymlink(), resolveTemplateInstanceInType(), resolveTypeDef(), DotFilePatcher::run(), searchInputFiles(), searchTemplateSpecs(), setCallContextForVar(), setClassScope(), StyleData::setStyle(), showFileDefMatches(), simplifyTypeForTable(), splitKnRArg(), splitString(), stripAnonymousNamespaceScope(), stripComment(), stripDeclKeywords(), stripExtensionGeneral(), stripFromPath(), stripFuncPtr(), stripIrrelevantString(), stripKnownExtensions(), stripWord(), substituteKeywords(), substituteTemplateArgumentsInString(), trimBaseClassScope(), MemberDefImpl::writeDeclaration(), DotNode::writeDEF(), writeDefArgumentList(), FileDefImpl::writeDetailedDescription(), DotNode::writeDocbook(), MemberDefImpl::writeDocumentation(), writeExceptionListImpl(), HtmlGenerator::writeExternalSearchPage(), HtmlHelpIndex::writeFields(), VhdlDocGen::writeFormatString(), writeGraphInfo(), ClassDefImpl::writeIncludeFilesForSlice(), MemberDefImpl::writeMemberDocSimple(), PlantumlManager::writePlantUMLSource(), VhdlDocGen::writeRecordUnit(), VhdlDocGen::writeSource(), DefinitionImpl::writeSourceDef(), DocSets::writeToken(), DotNode::writeUrl(), and DotNode::writeXML().

◆ length()

size_t QCString::length ( ) const
inline

Returns the length of the string, not counting the 0-terminator.

Equivalent to size().

Definition at line 166 of file qcstring.h.

166{ return m_rep.size(); }

References m_rep.

Referenced by DefinitionImpl::_docsAlreadyAdded(), DefinitionImpl::_setBriefDescription(), HtmlCodeGenerator::_writeCodeLink(), MemberDefImpl::_writeReimplements(), abbreviate(), VhdlDocGen::addBaseClass(), VHDLOutlineParser::addCompInst(), addEnumValuesToEnums(), addIncludeFile(), DocSets::addIndexItem(), addMacroDefinition(), addMemberToGroups(), addModule(), addRelatedPage(), addSeparatorsIfNeeded(), GrowBuf::addStr(), addTemplateNames(), addVariable(), FlowChart::alignCommentNode(), FlowChart::alignFuncProc(), alignText(), buildDirectories(), buildFileName(), buildFunctionList(), buildGroupListFiltered(), charsToIndex(), Config::checkAndCorrect(), DocParser::checkArgumentName(), checkExtension(), VHDLOutlineParser::checkInlineCode(), checkList(), DocParser::checkUnOrMultipleDocumentedParams(), checkVhdlString(), checkWarnMessage(), computeCommonDirPrefix(), computeQualifiedIndex(), computeVerifiedDotPath(), configStringRecode(), contains(), contains(), TranslatorPersian::convertDigitsToFarsi(), DotNode::convertLabel(), DotFilePatcher::convertMapFile(), convertNameToFile(), convertToHtmlAndTruncate(), MemberList::countEnumValues(), Translator::createNoun(), createOutputDirectory(), createTagLessInstance(), detab(), DotClassGraph::determineVisibleNodes(), MemberDefImpl::displayDefinition(), DocAnchor::DocAnchor(), DocEmoji::DocEmoji(), docifyToString(), docifyToString(), DocInternalRef::DocInternalRef(), DocRef::DocRef(), elemIsVisible(), encodeDirName(), encodeForOutput(), endsWith(), escapeId(), expandExpression(), externalRef(), DefinitionImpl::externalReference(), extractBeginRawStringDelimiter(), extractBind(), extractBlock(), extractCanonicalType(), extractClassNameFromType(), extractEndRawStringDelimiter(), extractFromParens(), extractLanguageSpecificTitle(), extractNamespaceName(), extractNoExcept(), extractTrailingComment(), filter2008VhdlComment(), filterMemberDocumentation(), find(), find(), DocParser::findAndCopyImage(), findClassRelation(), findDirDocumentation(), DocParser::findDocsForMemberOrCompound(), Markdown::Private::findEmphasisChar(), Markdown::Private::findEndOfLine(), findEndOfTemplate(), findEnumDocumentation(), findEnums(), findFileDef(), findMember(), findRev(), findRev(), findScopeFromQualifiedName(), findTemplateSpecializationPosition(), findUsingDeclImports(), findUsingDirectives(), format_warn(), VhdlDocGen::formatString(), generateAnonymousAnchor(), generateClassOrGlobalLink(), generateClassOrGlobalLink(), generateFunctionLink(), generateFunctionLink(), generateMemberLink(), CitationManager::generatePage(), PerlModGenerator::generatePerlModForMember(), getCanonicalTemplateSpec(), MemberDefImpl::getClassDefOfAnonymousType(), getConvertLatexMacro(), getCurrentChar(), getDefsOld(), getExtension(), getFileFilter(), getNextChar(), getNextId(), getParserForFile(), ParserManager::getParsers(), getProjectId(), SymbolResolver::Private::getResolvedSymbolRec(), SymbolResolver::Private::getResolvedTypeRec(), getScopeDefs(), getScopeFragment(), handle_warn_as_error(), DocPara::handleStartCode(), handleToc(), insert(), insertTemplateSpecifierInScope(), Portable::isAbsolutePath(), Markdown::Private::isAtxHeader(), isConstraintFile(), DocImage::isSVG(), isVarWithConstructor(), DiagramItem::label(), latexEscapeIndexChars(), latexEscapeLabelName(), leftScopeMatch(), linkToText(), makeDisplayName(), matchArgument2(), matchExcludedSymbols(), DirDefImpl::matchPath(), mergeArguments(), ClassDefImpl::mergeMembersFromBaseClasses(), mergeScopes(), nameIsActuallyPartOfType(), SymbolResolver::Private::newResolveTypedef(), VHDLOutlineParser::oneLineComment(), DocbookDocVisitor::operator()(), HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), ManDocVisitor::operator()(), PerlModDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), TextDocVisitor::operator()(), XmlDocVisitor::operator()(), DocLink::parse(), FileCodeParser::parseCode(), parseCommentAsText(), parseFile(), parseFuncDecl(), VhdlDocGen::parseFuncProto(), MarkdownOutlineParser::parseInput(), parseMain(), Htags::path2URL(), Markdown::process(), Markdown::Private::processBlocks(), Markdown::Private::processLink(), processList(), Markdown::Private::processQuotations(), Markdown::Private::processSpecialCommand(), processString(), projectLogoSize(), DocTokenizer::pushBackHtmlTag(), readCodeFragment(), readIncludeFile(), readIncludeFile(), readTagFile(), HtmlHelpRecoder::recode(), Portable::recodeUtf8StringToW(), recognizeFixedForm(), removeEmptyLines(), removeRedundantWhiteSpace(), replaceFunctionMacro(), replaceVariables(), resolveRef(), resolveSymlink(), resolveTypeDef(), resolveUserReferences(), rightScopeMatch(), searchInputFiles(), searchTemplateSpecs(), selectBlocks(), MemberDefImpl::setAnchor(), MemberList::setAnonymousEnumType(), setCallContextForVar(), setClassScope(), showFileDefMatches(), simplifyTypeForTable(), simplifyWhiteSpace(), skipToEndMarker(), splitSearchTokens(), sprintf(), ManGenerator::startDoxyAnchor(), startsWithKeyword(), stringize(), stripAnonymousMarkers(), stripAnonymousNamespaceScope(), stripComment(), stripExtensionGeneral(), stripFromPath(), stripFuncPtr(), stripIrrelevantString(), stripKnownExtensions(), stripLeadingAndTrailingEmptyLines(), stripQuotes(), stripQuotes(), stripScope(), stripTemplateSpecifiers(), stripTemplateSpecifiersFromScope(), stripTrailingWhiteSpace(), stripWord(), subrHandleCommentBlock(), substEnvVarsInStrList(), substitute(), substitute(), substituteKeywords(), SymbolResolver::Private::substTypedef(), toLong(), toUInt64(), toULong(), trimBaseClassScope(), Trace::trunc(), TranslatorJapanese::trWriteList(), unputChar(), DocTokenizer::unputString(), validatingParseDoc(), DocbookCodeGenerator::writeCodeLink(), LatexCodeGenerator::writeCodeLink(), RTFCodeGenerator::writeCodeLink(), XMLCodeGenerator::writeCodeLink(), DocbookCodeGenerator::writeCodeLinkLine(), MemberDefImpl::writeDeclaration(), writeDefArgumentList(), FileDefImpl::writeDetailedDescription(), MemberDefImpl::writeDocumentation(), MemberDefImpl::writeEnumDeclaration(), HtmlGenerator::writeExternalSearchPage(), ClassDefImpl::writeIncludeFilesForSlice(), HtmlGenerator::writeLabel(), writeMscGraphFromFile(), PlantumlManager::writePlantUMLSource(), FlowChart::writeShape(), writeSingleFileIndex(), DefinitionImpl::writeSourceDef(), writeString(), ConfigOption::writeStringList(), ClassDefImpl::writeTemplateSpec(), DocSets::writeToken(), writeUCFLink(), DotNode::writeUrl(), writeWord(), and HtmlEntityMapper::writeXMLSchema().

◆ lower()

QCString QCString::lower ( ) const
inline

Definition at line 249 of file qcstring.h.

250 {
252 }
std::string convertUTF8ToLower(const std::string &input)
Converts the input string into a lower case version, also taking into account non-ASCII characters th...
Definition utf8.cpp:187

References convertUTF8ToLower(), m_rep, and QCString().

Referenced by VHDLOutlineParser::addCompInst(), DocSets::addIndexItem(), VHDLOutlineParser::addLibUseClause(), addLocalVar(), addSubprogram(), SearchIndex::addWordRec(), adjustConfiguration(), DocHtmlCell::alignment(), Config::checkAndCorrect(), DocParser::checkArgumentName(), checkFileName(), checkIfHtmlEndTagEndsAutoList(), DocParser::checkUnOrMultipleDocumentedParams(), codifyMapLines(), convertStringToBool(), VhdlDocGen::correctMemberProperties(), DocRef::DocRef(), elemIsVisible(), endScope(), extractClassNameFromType(), CitationManager::find(), findArgument(), findFileDef(), VhdlDocGen::findKeyWord(), VhdlDocGen::findMember(), generateLink(), CitationManager::generatePage(), genericPatternMatch(), getFilteredImageAttributes(), getFilterFromList(), getFortranDefs(), getLanguageFromCodeLang(), getLanguageFromFileName(), getParameter(), ParserManager::getParsers(), guessSection(), DocPara::handleCommand(), handleFileInfoResult(), handleHtmlTag(), DocParser::handleImage(), handleImage(), handleInheritanceGraph(), DocParser::handleStyleLeave(), handleToc(), MemberDefImpl::init(), CitationManager::insert(), CitationManager::insertCrossReferencesForBibFile(), keyWordsFortranC(), Mapper< T >::map(), COutlineParser::needsPreprocessing(), FortranOutlineParser::needsPreprocessing(), SymbolModifiers::operator|=(), MarkdownOutlineParser::parseInput(), Markdown::Private::processHtmlTagWrite(), Markdown::Private::processLink(), subrHandleCommentBlock(), subrHandleCommentBlockResult(), substituteHtmlKeywords(), updateLanguageMapping(), Config::updateObsolete(), DocHtmlCell::valignment(), Markdown::Private::writeBlockQuote(), writeColoredWord(), and ClassDefImpl::writeTemplateSpec().

◆ mid()

QCString QCString::mid ( size_t index,
size_t len = static_cast<size_t>(-1) ) const
inline

Definition at line 241 of file qcstring.h.

242 {
243 size_t slen = m_rep.size();
244 if (len==static_cast<uint32_t>(-1)) len = slen-index;
245 return m_rep.empty() || index>slen || len==0 ? QCString() :
246 QCString(m_rep.substr(index,len));
247 }

References m_rep, and QCString().

Referenced by MemberDefImpl::_writeCategoryRelation(), MemberDefImpl::_writeEnumValues(), abbreviate(), addClassToContext(), addEnumValuesToEnums(), addIncludeFile(), addMacroDefinition(), addMemberFunction(), addTemplateNames(), addToMap(), ClassDefImpl::addTypeConstraints(), addVariable(), adjustConfiguration(), argListToString(), buildFunctionList(), buildScopeFromQualifiedName(), buildTypedefList(), VHDLOutlineParser::checkInlineCode(), checkVhdlString(), combineArgsAndException(), convertFileId2Var(), createJavaScriptSearchIndex(), Translator::createNoun(), MemberDefImpl::displayDefinition(), elemIsVisible(), ExistsOnPath(), expandExpression(), extractBeginRawStringDelimiter(), extractBind(), extractBlock(), extractCanonicalType(), extractClassNameFromType(), extractEndRawStringDelimiter(), extractLanguageSpecificTitle(), extractNoExcept(), Markdown::extractPageTitle(), extractPartAfterNewLine(), fillColorStyleMap(), VhdlDocGen::findAllArchitectures(), findClassRelation(), findGlobalMember(), findPackageScopeFromPath(), findParameterList(), findScopeFromQualifiedName(), SymbolResolver::Private::followPath(), generateClassOrGlobalLink(), generateFunctionLink(), CitationManager::generatePage(), PerlModGenerator::generatePerlModForMember(), PlantumlManager::generatePlantUMLOutput(), generateSqlite3ForMember(), generateXMLForMember(), getDefsOld(), getExtension(), getFileFilter(), getFileNameExtension(), getFilteredImageAttributes(), getFilterFromList(), getLanguageFromCodeLang(), getLinkInScope(), getMemberFromSymbol(), SymbolResolver::Private::getResolvedSymbolRec(), SymbolResolver::Private::getResolvedTypeRec(), guessSection(), DocPara::handleCommand(), handleHtmlTag(), DocParser::handleImage(), handleImage(), DocParser::handleParameterType(), CitationManager::insertCrossReferencesForBibFile(), ClassDefImpl::isExtension(), DocImage::isSVG(), linkifyText(), Htags::loadFilemap(), makeBaseName(), makeFileName(), makeFileName(), makeShortName(), makeShortName(), makeShortName(), makeTemplateInstanceRelation(), matchCanonicalTypes(), matchExcludedSymbols(), SymbolResolver::Private::newResolveTypedef(), node2URL(), normalizeNonTemplateArgumentsInString(), DocbookDocVisitor::operator()(), HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), TextDocVisitor::operator()(), XmlDocVisitor::operator()(), DocIncOperator::parse(), DocPara::parse(), DocParamList::parse(), FileCodeParser::parseCode(), VhdlDocGen::parseFuncProto(), Htags::path2URL(), VhdlDocGen::prepareComment(), Markdown::process(), Markdown::Private::processLink(), processString(), projectLogoSize(), readIncludeFile(), readIncludeFile(), removeLongPathMarker(), CitationManager::replaceFormulas(), replaceNamespaceAliasesRec(), replaceRef(), replaceVariables(), resolveRef(), resolveSymlink(), resolveTemplateInstanceInType(), resolveTypeDef(), DotFilePatcher::run(), setClassScope(), StyleData::setStyle(), splitKnRArg(), splitSearchTokens(), stripAnonymousNamespaceScope(), stripComment(), stripDeclKeywords(), stripLeadingAndTrailingEmptyLines(), stripPath(), stripProtectionPrefix(), stripQuotes(), stripQuotes(), stripTemplateSpecifiersFromScope(), stripTrailingReturn(), substEnvVarsInStrList(), substituteTemplateArgumentsInString(), substituteTemplatesInString(), TranslatorAfrikaans::trDayOfWeek(), TranslatorBrazilian::trDayOfWeek(), TranslatorCatalan::trDayOfWeek(), TranslatorCzech::trDayOfWeek(), TranslatorDanish::trDayOfWeek(), TranslatorDutch::trDayOfWeek(), TranslatorEsperanto::trDayOfWeek(), TranslatorFinnish::trDayOfWeek(), TranslatorFrench::trDayOfWeek(), TranslatorHungarian::trDayOfWeek(), TranslatorItalian::trDayOfWeek(), TranslatorLatvian::trDayOfWeek(), TranslatorLithuanian::trDayOfWeek(), TranslatorNorwegian::trDayOfWeek(), TranslatorPolish::trDayOfWeek(), TranslatorPortuguese::trDayOfWeek(), TranslatorRomanian::trDayOfWeek(), TranslatorSerbian::trDayOfWeek(), TranslatorSlovak::trDayOfWeek(), TranslatorSlovene::trDayOfWeek(), TranslatorSpanish::trDayOfWeek(), TranslatorSwedish::trDayOfWeek(), TranslatorAfrikaans::trMonth(), TranslatorBrazilian::trMonth(), TranslatorCatalan::trMonth(), TranslatorCzech::trMonth(), TranslatorDanish::trMonth(), TranslatorDutch::trMonth(), TranslatorEsperanto::trMonth(), TranslatorFinnish::trMonth(), TranslatorFrench::trMonth(), TranslatorHungarian::trMonth(), TranslatorItalian::trMonth(), TranslatorLatvian::trMonth(), TranslatorLithuanian::trMonth(), TranslatorNorwegian::trMonth(), TranslatorPolish::trMonth(), TranslatorPortuguese::trMonth(), TranslatorRomanian::trMonth(), TranslatorSerbian::trMonth(), TranslatorSlovak::trMonth(), TranslatorSlovene::trMonth(), TranslatorSpanish::trMonth(), TranslatorSwedish::trMonth(), NamespaceDefImpl::updateLocalName(), DotNode::writeDEF(), writeDefArgumentList(), DotNode::writeDocbook(), MemberDefImpl::writeDocumentation(), writeExceptionList(), writeExceptionListImpl(), writeGraphInfo(), Markdown::Private::writeMarkdownImage(), MemberDefImpl::writeMemberDocSimple(), writeObjCMethodCall(), DefinitionImpl::writeSourceDef(), ConfigOption::writeStringList(), DotNode::writeXML(), and HtmlEntityMapper::writeXMLSchema().

◆ operator+=() [1/4]

QCString & QCString::operator+= ( const char * s)
inline

Appends string str to this string and returns a reference to the result.

Definition at line 576 of file qcstring.h.

577 {
578 if (s) m_rep+=s;
579 return *this;
580 }

References m_rep, and QCString().

◆ operator+=() [2/4]

QCString & QCString::operator+= ( const QCString & s)
inline

Definition at line 557 of file qcstring.h.

558 {
559 m_rep+=s.str();
560 return *this;
561 }

References m_rep, QCString(), and str().

Referenced by append(), append(), append(), and append().

◆ operator+=() [3/4]

QCString & QCString::operator+= ( const std::string & s)
inline

Definition at line 563 of file qcstring.h.

564 {
565 m_rep+=s;
566 return *this;
567 }

References m_rep, and QCString().

◆ operator+=() [4/4]

QCString & QCString::operator+= ( std::string_view s)
inline

Definition at line 569 of file qcstring.h.

570 {
571 m_rep+=s;
572 return *this;
573 }

References m_rep, and QCString().

◆ operator=() [1/7]

QCString & QCString::operator= ( const char * str)
inline

replaces the contents by that of C string str.

Definition at line 158 of file qcstring.h.

158{ m_rep = str?str:""; return *this; }

References m_rep, QCString(), and str().

◆ operator=() [2/7]

QCString & QCString::operator= ( const JavaCCString & s)
inline

Definition at line 136 of file qcstring.h.

137 {
138 m_rep.resize(s.size());
139 memcpy(m_rep.data(),s.data(),s.size());
140 return *this;
141 }

References m_rep, and QCString().

◆ operator=() [3/7]

QCString & QCString::operator= ( const QCString & )
default

References QCString().

◆ operator=() [4/7]

QCString & QCString::operator= ( const std::string & s)
inline

Definition at line 160 of file qcstring.h.

160{ m_rep = s; return *this; }

References m_rep, and QCString().

◆ operator=() [5/7]

QCString & QCString::operator= ( QCString && )
default

References QCString().

◆ operator=() [6/7]

QCString & QCString::operator= ( std::string && s)
inline

Definition at line 114 of file qcstring.h.

115 {
116 m_rep=std::move(s);
117 return *this;
118 }

References m_rep, and QCString().

◆ operator=() [7/7]

QCString & QCString::operator= ( std::string_view sv)
inline

Definition at line 122 of file qcstring.h.

123 {
124 m_rep=sv;
125 return *this;
126 }

References m_rep, and QCString().

◆ operator[]() [1/2]

char & QCString::operator[] ( size_t i)
inline

Indexing operator.

Equivalent to at().

Definition at line 604 of file qcstring.h.

605 {
606 return m_rep[i];
607 }

References m_rep.

◆ operator[]() [2/2]

const char & QCString::operator[] ( size_t i) const
inline

Definition at line 609 of file qcstring.h.

610 {
611 return m_rep[i];
612 }

References m_rep.

◆ prepend() [1/4]

QCString & QCString::prepend ( const char * s)
inline

Definition at line 422 of file qcstring.h.

423 {
424 return insert(0,s);
425 }

References insert(), and QCString().

Referenced by addClassToContext(), addConceptToContext(), MemberDefImpl::addListReference(), addMemberFunction(), addModule(), addSTLClass(), ClassDefImpl::addUsedByClass(), ClassDefImpl::addUsedClass(), addVariable(), FlowChart::alignFuncProc(), MemberDefImpl::anchor(), buildFunctionList(), convertNameToFile(), correctURL(), VHDLOutlineParser::createFlow(), createOutputDirectory(), MemberDefImpl::displayDefinition(), DocEmoji::DocEmoji(), externalRef(), DefinitionImpl::externalReference(), MemberDefImpl::fieldType(), filterMemberDocumentation(), findClassRelation(), DocParser::findDocsForMemberOrCompound(), findEnumDocumentation(), findEnums(), findMember(), generateDEFForMember(), generateOutput(), generatePHPVariableLink(), PlantumlManager::generatePlantUmlFileNames(), MemberDefImpl::getDeclType(), getExtension(), getLanguageFromFileName(), getLink(), getLink(), FlowChart::getNodeName(), getScopeDefs(), SymbolResolver::Private::newResolveTypedef(), HtmlDocVisitor::operator()(), parseFuncDecl(), MarkdownOutlineParser::parseInput(), processTagLessClasses(), projectLogoSize(), quoted(), replaceRef(), MemberDefImpl::setAnchor(), SearchIndex::setCurrentDoc(), setDotFontPath(), MemberDefImpl::sourceRefName(), LatexDocVisitor::startDiaFile(), LatexDocVisitor::startDotFile(), LatexDocVisitor::startMscFile(), substituteHtmlKeywords(), unputChar(), updateLanguageMapping(), MemberDefImpl::writeDeclaration(), NamespaceLinkedRefMap::writeDeclaration(), ClassDefImpl::writeDeclarationLink(), ConceptDefImpl::writeDeclarationLink(), ModuleDefImpl::writeDeclarationLink(), writeDefArgumentList(), HtmlDocVisitor::writeDiaFile(), GroupDefImpl::writeDirs(), MemberDefImpl::writeDocumentation(), HtmlDocVisitor::writeDotFile(), DirDefImpl::writeFileList(), GroupDefImpl::writeFiles(), ModuleDefImpl::writeFiles(), writeIndexHierarchyEntries(), HtmlGenerator::writeInheritedSectionTitle(), VhdlDocGen::writeInlineClassLink(), LatexCodeGenerator::writeLineNumber(), RTFCodeGenerator::writeLineNumber(), MemberDefImpl::writeLink(), writeMemberReference(), HtmlDocVisitor::writeMscFile(), GroupDefImpl::writeNestedGroups(), writeSingleFileIndex(), VhdlDocGen::writeSource(), DirDefImpl::writeSubDirList(), VhdlDocGen::writeVHDLDeclaration(), and VhdlDocGen::writeVhdlLink().

◆ prepend() [2/4]

QCString & QCString::prepend ( const QCString & s)
inline

Definition at line 427 of file qcstring.h.

428 {
429 return insert(0,s.data());
430 }

References data(), insert(), and QCString().

◆ prepend() [3/4]

QCString & QCString::prepend ( const std::string & s)
inline

Definition at line 432 of file qcstring.h.

433 {
434 return insert(0,s.c_str());
435 }

References insert(), and QCString().

◆ prepend() [4/4]

QCString & QCString::prepend ( std::string_view s)
inline

Definition at line 437 of file qcstring.h.

438 {
439 return insert(0,s);
440 }

References insert(), and QCString().

◆ quoted()

QCString QCString::quoted ( ) const
inline

Definition at line 275 of file qcstring.h.

276 {
277 size_t start=0, sl=m_rep.size(), end=sl-1;
278 while (start<sl && qisspace(m_rep[start])) start++; // skip over leading whitespace
279 if (start==sl) return QCString(); // only whitespace
280 while (end>start && qisspace(m_rep[end])) end--; // skip over trailing whitespace
281 bool needsQuotes=false;
282 size_t i=start;
283 if (i<end && m_rep[i]!='"') // stripped string has at least non-whitespace unquoted character
284 {
285 while (i<end && !needsQuotes) // check if the to be quoted part has at least one whitespace character
286 {
287 needsQuotes = m_rep[i] =='-';
288 needsQuotes |= qisspace(m_rep[i++]);
289 }
290 }
291 QCString result(m_rep.substr(start,1+end-start));
292 if (needsQuotes)
293 {
294 result.prepend("\"");
295 result.append("\"");
296 }
297 return result;
298 }
DirIterator end(const DirIterator &) noexcept
Definition dir.cpp:175
bool qisspace(char c)
Definition qcstring.h:81

References append(), end(), m_rep, prepend(), QCString(), and qisspace().

Referenced by projectLogoSize(), DotAttributes::updateValue(), writeLatexMakefile(), and writeMakeBat().

◆ rawData()

◆ remove()

QCString & QCString::remove ( size_t index,
size_t len )
inline

◆ removeWhiteSpace()

QCString QCString::removeWhiteSpace ( ) const
inline

returns a copy of this string with all whitespace removed

Definition at line 301 of file qcstring.h.

302 {
303 size_t sl = m_rep.size();
304 if (sl==0) return *this;
305 std::string result = m_rep;
306 size_t src=0,dst=0;
307 while (src<sl)
308 {
309 if (!qisspace(m_rep[src])) result[dst++]=m_rep[src];
310 src++;
311 }
312 if (dst<m_rep.size()) result.resize(dst);
313 return QCString(result);
314 }

References m_rep, QCString(), and qisspace().

◆ repeat()

QCString QCString::repeat ( unsigned int n) const
inline

Definition at line 321 of file qcstring.h.

322 {
323 QCString result(n * size(), ExplicitSize);
324 size_t offset = 0;
325 for (offset = 0; offset < n * size(); offset += size())
326 {
327 memcpy(result.rawData() + offset, data(), size());
328 }
329 return result;
330 }

References data(), ExplicitSize, QCString(), rawData(), and size().

Referenced by LatexGenerator::startGroupHeader(), LatexGenerator::startInlineHeader(), LatexGenerator::startMemberDoc(), LatexGenerator::startMemberHeader(), LatexGenerator::startTitleHead(), and LatexGenerator::writeInheritedSectionTitle().

◆ replace()

QCString & QCString::replace ( size_t index,
size_t len,
const char * s )

Definition at line 217 of file qcstring.cpp.

218{
219 remove( index, len );
220 insert( index, s );
221 return *this;
222}
QCString & remove(size_t index, size_t len)
Definition qcstring.h:442

References insert(), QCString(), and remove().

Referenced by VhdlDocGen::convertFileNameToClassName(), VhdlDocGen::formatString(), version(), writeClassTreeInsideNamespaceElement(), writeNamespaceIndex(), and writeNamespaceTreeElement().

◆ reserve()

void QCString::reserve ( size_t size)
inline

Reserve space for size bytes without changing the string contents.

Definition at line 185 of file qcstring.h.

185{ m_rep.reserve(size); }

References m_rep, and size().

Referenced by docifyToString(), docifyToString(), removeEmptyLines(), selectBlocks(), HtmlGenerator::writeLabel(), and PlantumlManager::writePlantUMLSource().

◆ resize()

◆ right()

QCString QCString::right ( size_t len) const
inline

Definition at line 234 of file qcstring.h.

235 {
236 return m_rep.empty() ? QCString() :
237 len<m_rep.size() ? QCString(m_rep.substr(m_rep.size()-len,len)) :
238 *this;
239 }

References m_rep, and QCString().

Referenced by MemberDefImpl::_writeReimplements(), VhdlDocGen::addBaseClass(), VHDLOutlineParser::addCompInst(), addEnumValuesToEnums(), addMacroDefinition(), addModule(), addRelatedPage(), addTemplateNames(), ClassDefImpl::addTypeConstraints(), addVariable(), buildFileName(), buildFunctionList(), checkExtension(), checkList(), computeCommonDirPrefix(), DotFilePatcher::convertMapFile(), MemberList::countEnumValues(), DocInternalRef::DocInternalRef(), expandExpression(), extractCanonicalType(), extractNamespaceName(), filterMemberDocumentation(), DocParser::findAndCopyImage(), findClassRelation(), DocParser::findDocsForMemberOrCompound(), findEnumDocumentation(), findEnums(), findFileDef(), findMember(), findScopeFromQualifiedName(), findUsingDeclImports(), generateClassOrGlobalLink(), generateClassOrGlobalLink(), generateFunctionLink(), generateFunctionLink(), generateMemberLink(), CitationManager::generatePage(), PerlModGenerator::generatePerlModForMember(), getCanonicalTemplateSpec(), getDefsOld(), getNextChar(), getParserForFile(), getScopeDefs(), handleToc(), insertTemplateSpecifierInScope(), isConstraintFile(), linkToText(), matchArgument2(), mergeArguments(), mergeScopes(), SymbolResolver::Private::newResolveTypedef(), VHDLOutlineParser::oneLineComment(), PerlModDocVisitor::operator()(), RTFDocVisitor::operator()(), DocLink::parse(), parseFile(), parseFuncDecl(), MarkdownOutlineParser::parseInput(), readTagFile(), resolveRef(), resolveTypeDef(), rightScopeMatch(), MemberList::setAnonymousEnumType(), setCallContextForVar(), setClassScope(), showFileDefMatches(), ManGenerator::startDoxyAnchor(), stripAnonymousNamespaceScope(), stripExtensionGeneral(), stripFromPath(), stripIrrelevantString(), stripKnownExtensions(), stripScope(), stripTemplateSpecifiersFromScope(), stripWord(), subrHandleCommentBlock(), substEnvVarsInStrList(), tempArgListToString(), trimBaseClassScope(), MemberDefImpl::writeDeclaration(), FileDefImpl::writeDetailedDescription(), MemberDefImpl::writeEnumDeclaration(), HtmlGenerator::writeExternalSearchPage(), HtmlHelpIndex::writeFields(), ClassDefImpl::writeIncludeFilesForSlice(), writeMscGraphFromFile(), PlantumlManager::writePlantUMLSource(), DefinitionImpl::writeSourceDef(), and DotNode::writeUrl().

◆ setNum() [1/8]

QCString & QCString::setNum ( int n)
inline

Definition at line 471 of file qcstring.h.

472 {
473 m_rep = std::to_string(n);
474 return *this;
475 }

References m_rep, and QCString().

◆ setNum() [2/8]

QCString & QCString::setNum ( long long n)
inline

Definition at line 489 of file qcstring.h.

490 {
491 m_rep = std::to_string(n);
492 return *this;
493 }

References m_rep, and QCString().

◆ setNum() [3/8]

QCString & QCString::setNum ( long n)
inline

Definition at line 483 of file qcstring.h.

484 {
485 m_rep = std::to_string(n);
486 return *this;
487 }

References m_rep, and QCString().

◆ setNum() [4/8]

◆ setNum() [5/8]

QCString & QCString::setNum ( uint16_t n)
inline

Definition at line 465 of file qcstring.h.

466 {
467 m_rep = std::to_string(n);
468 return *this;
469 }

References m_rep, and QCString().

◆ setNum() [6/8]

QCString & QCString::setNum ( uint32_t n)
inline

Definition at line 477 of file qcstring.h.

478 {
479 m_rep = std::to_string(n);
480 return *this;
481 }

References m_rep, and QCString().

◆ setNum() [7/8]

QCString & QCString::setNum ( unsigned long long n)
inline

Definition at line 495 of file qcstring.h.

496 {
497 m_rep = std::to_string(n);
498 return *this;
499 }

References m_rep, and QCString().

◆ setNum() [8/8]

QCString & QCString::setNum ( unsigned long n)
inline

Definition at line 501 of file qcstring.h.

502 {
503 m_rep = std::to_string(n);
504 return *this;
505 }

References m_rep, and QCString().

◆ simplifyWhiteSpace()

QCString QCString::simplifyWhiteSpace ( ) const

return a copy of this string with leading and trailing whitespace removed and multiple whitespace characters replaced by a single space

Definition at line 190 of file qcstring.cpp.

191{
192 if ( isEmpty() ) // nothing to do
193 return *this;
194
195 QCString result( length(), ExplicitSize );
196 const char *from = data();
197 char *to = result.rawData();
198 char *first = to;
199 while ( TRUE )
200 {
201 while ( *from && qisspace(*from) )
202 from++;
203 while ( *from && !qisspace(*from) )
204 *to++ = *from++;
205 if ( *from )
206 *to++ = 0x20; // ' '
207 else
208 break;
209 }
210 if ( to > first && *(to-1) == 0x20 )
211 to--;
212 *to = '\0';
213 result.resize( static_cast<int>(to - result.data()) );
214 return result;
215}
bool isEmpty() const
Returns TRUE iff the string is empty.
Definition qcstring.h:163
#define TRUE
Definition qcstring.h:37

References data(), ExplicitSize, isEmpty(), length(), QCString(), qisspace(), rawData(), resize(), and TRUE.

Referenced by DefinitionImpl::_docsAlreadyAdded(), addVariable(), VHDLOutlineParser::checkInlineCode(), findAndRemoveWord(), Markdown::Private::processLink(), MemberDefImpl::setBitfields(), setClassScope(), substituteTemplateArgumentsInString(), and FlowChart::writeFlowLinks().

◆ size()

size_t QCString::size ( ) const
inline

◆ sprintf()

QCString & QCString::sprintf ( const char * format,
... )

Definition at line 29 of file qcstring.cpp.

30{
31 va_list ap;
32 va_start( ap, format );
33 const size_t minlen=256;
34 size_t l = length();
35 if (l<minlen) { resize(minlen+1); l=minlen; }
36 int n=vsnprintf( rawData(), l+1, format, ap);
37 if (n<0) n=static_cast<int>(l);
38 resize(n);
39 va_end( ap );
40 return *this;
41}
char * rawData()
Returns a writable pointer to the data.
Definition qcstring.h:178
void resize(size_t newlen)
Definition qcstring.h:180

References length(), QCString(), rawData(), and resize().

Referenced by addDependencies(), addFormula(), addIncludeFile(), addXRefItem(), RTFGenerator::beginRTFSection(), buildFileList(), DocParser::checkArgumentName(), clearSubDirs(), convertCppComments(), convertNameToFile(), FormulaManager::createLatexFile(), createSubDirs(), dateTimeFromString(), dateToRTFDateString(), encodeForOutput(), escapeComment(), escapeName(), escapeObject(), escapeWord(), DocParser::findAndCopyImage(), generateClassMemberLink(), generateClassOrGlobalLink(), generateFormula(), DotGfxHierarchyTable::getBaseName(), getLinkInScope(), includeTagFileAttributes(), FormulaManager::initFromRepository(), initPredefined(), DocbookDocVisitor::operator()(), HtmlDocVisitor::operator()(), LatexDocVisitor::operator()(), PerlModDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), Preprocessor::processFile(), readIncludeFile(), replaceFunctionMacro(), runPlantumlContent(), saveObjCContext(), startCodeLine(), startCodeLine(), startCodeLine(), startCodeLine(), startCodeLine(), startCodeLine(), startCodeLine(), RTFGenerator::startCompoundTemplateParams(), RTFGenerator::startMemberDoc(), LayoutParser::startNavEntry(), RTFGenerator::startSection(), RTFGenerator::startTitleHead(), TranslatorArmenian::trDateTime(), TranslatorBrazilian::trDateTime(), TranslatorBulgarian::trDateTime(), TranslatorCatalan::trDateTime(), TranslatorChinese::trDateTime(), TranslatorChinesetraditional::trDateTime(), TranslatorCroatian::trDateTime(), TranslatorCzech::trDateTime(), TranslatorDanish::trDateTime(), TranslatorDutch::trDateTime(), TranslatorEnglish::trDateTime(), TranslatorEsperanto::trDateTime(), TranslatorFrench::trDateTime(), TranslatorGerman::trDateTime(), TranslatorGreek::trDateTime(), TranslatorHindi::trDateTime(), TranslatorHungarian::trDateTime(), TranslatorIndonesian::trDateTime(), TranslatorItalian::trDateTime(), TranslatorJapanese::trDateTime(), TranslatorKorean::trDateTime(), TranslatorLatvian::trDateTime(), TranslatorPersian::trDateTime(), TranslatorPolish::trDateTime(), TranslatorPortuguese::trDateTime(), TranslatorRomanian::trDateTime(), TranslatorRussian::trDateTime(), TranslatorSlovak::trDateTime(), TranslatorSpanish::trDateTime(), TranslatorSwedish::trDateTime(), TranslatorTurkish::trDateTime(), TranslatorUkrainian::trDateTime(), TranslatorJapanese::trWriteList(), DotNode::writeArrow(), DotNode::writeBox(), writeDiaGraphFromFile(), ClassDiagram::writeFigure(), writeJavaScriptSearchIndex(), DocbookCodeGenerator::writeLineNumber(), LatexCodeGenerator::writeLineNumber(), RTFCodeGenerator::writeLineNumber(), writeMscGraphFromFile(), Markdown::Private::writeOneLineHeaderOrRuler(), DocbookGenerator::writePageLink(), and DefinitionImpl::writeSourceDef().

◆ startsWith() [1/3]

bool QCString::startsWith ( const char * s) const
inline

Definition at line 507 of file qcstring.h.

508 {
509 if (m_rep.empty() || s==nullptr) return s==nullptr;
510 return m_rep.rfind(s,0)==0; // looking "backward" starting and ending at index 0
511 }

References m_rep.

Referenced by MemberDefImpl::_isAnonymousBitField(), MemberDefImpl::_writeEnumValues(), addMethodToClass(), addVariable(), DocHtmlCell::alignment(), buildFunctionList(), Config::checkAndCorrect(), computeMemberRelationsForBaseClass(), DotFilePatcher::convertMapFile(), copyStyleSheet(), MemberDefImpl::createTemplateInstanceMember(), extractClassNameFromType(), fillColorStyleMap(), filterMemberDocumentation(), DocParser::findAndCopyImage(), findClassRelation(), DocParser::findDocsForMemberOrCompound(), findMember(), findUsingDeclImports(), SymbolResolver::Private::followPath(), generateFunctionLink(), getCanonicalTypeForIdentifier(), getDefsOld(), DocParser::handleImage(), handleImage(), ClassDefImpl::hideDerivedVariablesInPython(), CitationManager::insertCrossReferencesForBibFile(), SymbolResolver::Private::isAccessibleFrom(), AnchorGenerator::looksGenerated(), HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), RTFDocVisitor::operator()(), SymbolModifiers::operator|=(), parseFuncDecl(), VhdlDocGen::prepareComment(), RTFGenerator::preProcessFileInplace(), removeLongPathMarker(), replaceRef(), SymbolResolver::resolveClass(), resolveClassNestingRelations(), resolveRef(), resolveSymlink(), startsWithKeyword(), stripTrailingReturn(), substituteHtmlKeywords(), substituteTemplateArgumentsInString(), substituteTemplatesInString(), HtmlGenerator::writeStyleInfo(), and writeUserGroupStubPage().

◆ startsWith() [2/3]

bool QCString::startsWith ( const QCString & s) const
inline

Definition at line 518 of file qcstring.h.

519 {
520 if (m_rep.empty() || s.isEmpty()) return s.isEmpty();
521 return m_rep.rfind(s.str(),0)==0; // looking "backward" starting and ending at index 0
522 }

References isEmpty(), m_rep, QCString(), and str().

◆ startsWith() [3/3]

bool QCString::startsWith ( const std::string & s) const
inline

Definition at line 513 of file qcstring.h.

514 {
515 return m_rep.rfind(s,0)==0; // looking "backward" starting and ending at index 0
516 }

References m_rep.

◆ str()

const std::string & QCString::str ( ) const
inline

Definition at line 552 of file qcstring.h.

553 {
554 return m_rep;
555 }

References m_rep.

Referenced by DefinitionImpl::_setBriefDescription(), MemberDefImpl::_writeReimplementedBy(), SymbolResolver::Private::accessibleViaUsingNamespace(), LinkedMap< T, Hash, KeyEqual, Map >::add(), LinkedMap< T, Hash, KeyEqual, Map >::add(), LinkedRefMap< T, Hash, KeyEqual, Map >::add(), SymbolMap< T >::add(), ConstraintClassDef::addAccessor(), UsesClassDef::addAccessor(), VhdlDocGen::addBaseClass(), DotClassGraph::addClass(), Index::addClassMemberNameToIndex(), Crawlmap::addContentsItem(), addDefine(), ModuleManager::addDocs(), ModuleDefImpl::addExportedModule(), Index::addFileMemberNameToIndex(), DotGfxHierarchyTable::addHierarchy(), HtmlHelp::addImageFile(), ModuleDefImpl::addImport(), ModuleManager::addImport(), FileDefImpl::addIncludedByDependency(), FileDefImpl::addIncludeDependency(), Crawlmap::addIndexFile(), HtmlHelp::addIndexFile(), Crawlmap::addIndexItem(), DocSets::addIndexItem(), HtmlHelpIndex::addItem(), addLocalVar(), Index::addModuleMemberNameToIndex(), Index::addNamespaceMemberNameToIndex(), ModuleDefImpl::addPartition(), VHDLOutlineParser::addProto(), Preprocessor::addSearchDir(), DefinitionImpl::addSourceReferencedBy(), DefinitionImpl::addSourceReferences(), HtmlHelp::addStyleSheetFile(), addUsingDirective(), addVariable(), addVariable(), VariableContext::addVariable(), addVariableToFile(), VHDLOutlineParser::addVhdlType(), SearchIndex::addWordRec(), FlowChart::alignCommentNode(), RTFGenerator::beginRTFSection(), DotCallGraph::buildGraph(), DotInclDepGraph::buildGraph(), buildListOfUsingDecls(), anonymous_namespace{tagreader.cpp}::TagFileParser::buildLists(), buildVarList(), Config::checkAndCorrect(), checkAndOpenFile(), DocParser::checkArgumentName(), VHDLOutlineParser::checkInlineCode(), DocParser::checkRetvalName(), DocParser::checkUnOrMultipleDocumentedParams(), checkVhdlString(), DocbookGenerator::cleanup(), HtmlGenerator::cleanup(), LatexGenerator::cleanup(), ManGenerator::cleanup(), RTFGenerator::cleanup(), clearSubDirs(), computeExpression(), computeTemplateClassRelations(), computeVerifiedDotPath(), contains(), containsEnvVar(), containsWord(), convertNameToFile(), copyFile(), copyIcon(), copyLogo(), copyStyleSheet(), DotManager::createFilePatcher(), FormulaManager::createFormulasTexFile(), VHDLOutlineParser::createFunction(), createJavaScriptSearchIndex(), FormulaManager::createLatexFile(), ModuleManager::createModuleDef(), Translator::createNoun(), createOutputDirectory(), DotManager::createRunner(), createSubDirs(), dateTimeFromString(), LinkedMap< T, Hash, KeyEqual, Map >::del(), LinkedRefMap< T, Hash, KeyEqual, Map >::del(), deliverablesPresent(), determineAbsoluteIncludeName(), determineInkscapeVersion(), MemberDefImpl::displayDefinition(), DotCallGraph::DotCallGraph(), DotClassGraph::DotClassGraph(), DotGroupCollaboration::DotGroupCollaboration(), DotInclDepGraph::DotInclDepGraph(), drawClusterOpening(), drawDirectory(), anonymous_namespace{tagreader.cpp}::TagFileParser::endElement(), anonymous_namespace{tagreader.cpp}::TagFileParser::endEnumValue(), endScope(), endsWith(), CondParser::evalVariable(), ExistsOnPath(), expandExpression(), externalRef(), DefinitionImpl::externalReference(), extractCanonicalType(), extractClassNameFromType(), extractDirection(), Markdown::extractPageTitle(), Markdown::Private::extractTitleId(), fileToString(), fillColorStyleMap(), filterMemberDocumentation(), filterTitle(), CitationManager::find(), LinkedMap< T, Hash, KeyEqual, Map >::find(), LinkedRefMap< T, Hash, KeyEqual, Map >::find(), find(), find(), find(), SectionRefs::find(), SymbolMap< T >::find(), DocParser::findAndCopyImage(), findAndRemoveWord(), VhdlDocGen::findArchitecture(), findBaseClassesForClass(), findClassEntries(), findClassRelation(), findFileDef(), findFilePath(), VhdlDocGen::findKeyWord(), VhdlDocGen::findMemberDef(), findPackageScope(), findPackageScopeFromPath(), findRev(), findTemplateInstanceRelation(), findUsedClassesForClass(), findUsingDeclImports(), VariableContext::findVariable(), fmt::formatter< QCString >::format(), generateDEF(), generateFileSources(), generateFormula(), generateFunctionLink(), generateFunctionLink(), FormulaManager::generateImages(), generateOutput(), CitationManager::generatePage(), generateXML(), genericPatternMatch(), ConfigImpl::get(), ResourceMgr::get(), MemberDefImpl::getClassDefOfAnonymousType(), DocVisitor::getCodeParser(), getConvertLatexMacro(), Portable::getenv(), FilterCache::getFileContentsDisk(), FilterCache::getFileContentsPipe(), getFilteredImageAttributes(), getFilterFromList(), getFortranDefs(), VhdlDocGen::getIndexWord(), getLanguageFromFileName(), getLinkInScope(), getMscImageMapFromFile(), ModuleManager::getPrimaryInterface(), getResolvedNamespace(), SymbolResolver::Private::getResolvedSymbolRec(), SymbolResolver::Private::getResolvedTypeRec(), RTFDocVisitor::getStyle(), guessSection(), DocPara::handleCommand(), handleFileInfoResult(), HtmlGenerator::init(), LatexGenerator::init(), ManGenerator::init(), FormulaManager::initFromRepository(), initPredefined(), initTracing(), initUCF(), CitationManager::insert(), insert(), CitationManager::insertCrossReferencesForBibFile(), insertDimension(), insertMapFile(), SymbolResolver::Private::isAccessibleFromWithExpScope(), isDefined(), isExplicitPage(), isURL(), isVarWithConstructor(), keyWordsFortranC(), labelToEnumValue(), CitationManager::latexBibFiles(), loadExtensions(), Htags::loadFilemap(), loadStylesheet(), Mapper< T >::map(), markdownFileNameToId(), matchExcludedSymbols(), HtmlEntityMapper::name2sym(), SymbolResolver::Private::newResolveTypedef(), normalizeNonTemplateArgumentsInString(), openDbConnection(), Portable::openInputStream(), openOutputFile(), Portable::openOutputStream(), operator!=(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), DocbookDocVisitor::operator()(), HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), ManDocVisitor::operator()(), ManDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), XmlDocVisitor::operator()(), XmlDocVisitor::operator()(), operator+(), operator+=(), operator<<(), TextStream::operator<<(), operator=(), operator==(), outputString(), CodeFragmentManager::parseCodeFragment(), parseCommentAsHtml(), parseFile(), VhdlDocGen::parseForBinding(), VhdlDocGen::parseForConfig(), MarkdownOutlineParser::parseInput(), parseInput(), parseMain(), VhdlDocGen::parseUCF(), Htags::path2URL(), VhdlDocGen::prepareComment(), LinkedMap< T, Hash, KeyEqual, Map >::prepend(), LinkedRefMap< T, Hash, KeyEqual, Map >::prepend(), preProcessFile(), RTFGenerator::preProcessFileInplace(), FlowChart::printNode(), processConcatOperators(), Markdown::Private::processLink(), processList(), QCString(), QCString(), readCodeFragment(), readConfiguration(), readFileOrDirectory(), readIncludeFile(), readIncludeFile(), readInputFile(), readTagFile(), readTextFileByName(), ParserManager::registerExtension(), ParserManager::registerParser(), SymbolMap< T >::remove(), removeAnonymousScopes(), replaceAnonymousScopes(), replaceColorMarkers(), replaceFunctionMacro(), replaceNamespaceAliasesRec(), replaceVariables(), resetPDFSize(), resolveLink(), resolveModuleProcedures(), resolveSymlink(), resolveTemplateInstanceInType(), resolveTypeBoundProcedures(), RTFGenerator::rtf_BList_DepthStyle(), RTFGenerator::rtf_CList_DepthStyle(), RTFCodeGenerator::rtf_Code_DepthStyle(), RTFGenerator::rtf_DList_DepthStyle(), RTFGenerator::rtf_EList_DepthStyle(), RTFGenerator::rtf_LCList_DepthStyle(), DotFilePatcher::run(), runPlantumlContent(), SearchIndex::setCurrentDoc(), SearchIndexExternal::setCurrentDoc(), Portable::setenv(), setFileName(), StyleData::setStyle(), FilterCache::shrinkBuffer(), simplifyTypeForTable(), splitSearchTokens(), RTFGenerator::startCompoundTemplateParams(), anonymous_namespace{tagreader.cpp}::TagFileParser::startElement(), RTFCodeGenerator::startFontClass(), RTFGenerator::startMemberDoc(), RTFGenerator::startSection(), startsWith(), RTFGenerator::startTitleHead(), substEnvVarsInString(), substEnvVarsInStrList(), substitute(), substituteHtmlKeywords(), substituteLatexKeywords(), substituteTemplateArgumentsInString(), substituteTemplatesInArgList(), substituteTemplatesInString(), SymbolResolver::Private::substTypedef(), toStdString(), transcodeCharacterStringToUTF8(), transferStaticInstanceInitializers(), tryPath(), Portable::unsetenv(), updateLanguageMapping(), DotAttributes::updateValue(), writeAlphabeticalClassList(), Markdown::Private::writeBlockQuote(), MemberDefImpl::writeDeclaration(), writeDiaGraphFromFile(), DefinitionImpl::writeDocAnchorsToTagFile(), MemberDefImpl::writeDocumentation(), MemberList::writeDocumentationPage(), writeDotDirDepGraph(), writeDotGraphFromFile(), writeDotImageMapFromFile(), FlowChart::writeEdge(), ClassDiagram::writeFigure(), writeFileIndex(), VhdlDocGen::writeFormatString(), writeFuncProto(), DotGfxHierarchyTable::writeGraph(), DotGraph::writeGraph(), VhdlDocGen::writeInlineClassLink(), DotNode::writeLabel(), HtmlGenerator::writeLabel(), TextGeneratorSqlite3Impl::writeLink(), VhdlDocGen::writePlainVHDLDeclarations(), PlantumlManager::writePlantUMLSource(), VhdlDocGen::writeRecUnitDocu(), FlowChart::writeShape(), HtmlGenerator::writeStyleInfo(), and writeWord().

◆ stripLeadingAndTrailingEmptyLines()

QCString QCString::stripLeadingAndTrailingEmptyLines ( ) const

Definition at line 578 of file qcstring.cpp.

579{
580 if (isEmpty()) return QCString();
581 const std::string &s = m_rep;
582 int end=static_cast<int>(s.length());
583 int start=0,p=0;
584 // skip leading empty lines
585 for (;;)
586 {
587 int c;
588 while ((c=s[p]) && (c==' ' || c=='\t')) p++;
589 if (s[p]=='\n')
590 {
591 start=++p;
592 }
593 else
594 {
595 break;
596 }
597 }
598 // skip trailing empty lines
599 p=end-1;
600 if (p>=start && s.at(p)=='\n') p--;
601 while (p>=start)
602 {
603 int c;
604 while ((c=s[p]) && (c==' ' || c=='\t')) p--;
605 if (s[p]=='\n')
606 {
607 end=p+1;
608 }
609 else
610 {
611 break;
612 }
613 p--;
614 }
615 //printf("stripLeadingAndTrailingEmptyLines(%d-%d)\n",start,end);
616 return s.substr(start,end-start);
617}

References end(), isEmpty(), m_rep, and QCString().

◆ stripPrefix() [1/2]

bool QCString::stripPrefix ( const char * prefix)
inline

Definition at line 224 of file qcstring.h.

225 {
226 return stripPrefix(QCString(prefix));
227 }
constexpr auto prefix
Definition anchor.cpp:44
bool stripPrefix(const QCString &prefix)
Definition qcstring.h:213

References prefix, QCString(), and stripPrefix().

◆ stripPrefix() [2/2]

bool QCString::stripPrefix ( const QCString & prefix)
inline

Definition at line 213 of file qcstring.h.

214 {
215 if (prefix.isEmpty() || m_rep.empty()) return FALSE;
216 if (m_rep.rfind(prefix.data(),0)==0) // string starts with prefix
217 {
218 m_rep.erase(0,prefix.length());
219 return TRUE;
220 }
221 return FALSE;
222 }
#define FALSE
Definition qcstring.h:34

References FALSE, m_rep, prefix, QCString(), and TRUE.

Referenced by addKnRArgInfo(), VHDLOutlineParser::addLibUseClause(), addMemberDocs(), addMemberFunction(), addMethodToClass(), addVariable(), addVariableToClass(), addVariableToFile(), buildScopeFromQualifiedName(), buildTypedefList(), VhdlDocGen::correctMemberProperties(), extractCanonicalType(), findMember(), VhdlDocGen::formatString(), generateClassOrGlobalLink(), generateMemLink(), generateSqlite3ForFile(), generateXMLForMember(), getCanonicalTypeForIdentifier(), MemberDefImpl::getClassDefOfAnonymousType(), VhdlDocGen::getClassName(), MemberDefImpl::getDeclType(), VHDLOutlineParser::handleFlowComment(), initUCF(), inlineTemplateArgListToDoc(), SymbolResolver::Private::newResolveTypedef(), VhdlDocGen::parseUCF(), resolveTemplateInstanceInType(), stripPrefix(), stripQualifiers(), stripQualifiers(), subrHandleCommentBlock(), subrHandleCommentBlockResult(), MemberDefImpl::writeDeclaration(), MemberDefImpl::writeDocumentation(), writeFuncProto(), VhdlDocGen::writeFunctionProto(), VhdlDocGen::writeInlineClassLink(), VhdlDocGen::writeVHDLDeclaration(), VhdlDocGen::writeVhdlLink(), and VhdlDocGen::writeVHDLTypeDocumentation().

◆ stripWhiteSpace()

QCString QCString::stripWhiteSpace ( ) const
inline

returns a copy of this string with leading and trailing whitespace removed

Definition at line 260 of file qcstring.h.

261 {
262 size_t sl = m_rep.size();
263 if (sl==0 || (!qisspace(m_rep[0]) && !qisspace(m_rep[sl-1]))) return *this;
264 size_t start=0,end=sl-1;
265 while (start<sl && qisspace(m_rep[start])) start++;
266 if (start==sl) return QCString(); // only whitespace
267 while (end>start && qisspace(m_rep[end])) end--;
268 return QCString(m_rep.substr(start,1+end-start));
269 }

References end(), m_rep, QCString(), and qisspace().

Referenced by DefinitionImpl::_setBriefDescription(), MemberDefImpl::_writeEnumValues(), abbreviate(), FileDefImpl::acquireFileVersion(), addDefine(), DocGroup::addDocs(), addFormula(), addIncludeFile(), addKnRArgInfo(), addMacroDefinition(), addPerlModDocBlock(), addRelatedPage(), addSeparatorsIfNeeded(), addSubprogram(), ClassDefImpl::addTypeConstraints(), addVariable(), adjustConfiguration(), appStringLower(), buildPageList(), Config::checkAndCorrect(), DocParser::checkArgumentName(), checkFileName(), checkList(), DocParser::checkUnOrMultipleDocumentedParams(), compareString(), convertCppComments(), DotNode::convertLabel(), convertStringToBool(), convertToComment(), determineBlockName(), anonymous_namespace{tagreader.cpp}::TagFileParser::endEnumValue(), expandExpression(), extractBind(), extractCanonicalArgType(), extractCanonicalType(), extractFromParens(), extractNoExcept(), fillColorStyleMap(), findMainPage(), findMember(), VhdlDocGen::formatString(), generateFunctionLink(), generateFunctionLink(), CitationManager::generatePage(), generateSqlite3ForMember(), generateXMLForMember(), getCanonicalTemplateSpec(), getFilteredImageAttributes(), DocPara::handleCommand(), handleFileInfoResult(), VHDLOutlineParser::handleFlowComment(), handleGuard(), DocParser::handleImage(), handleImage(), DocPara::handleInclude(), handleInheritanceGraph(), DocPara::handleShowDate(), handleToc(), initUCF(), inlineTemplateArgListToDoc(), CitationManager::insertCrossReferencesForBibFile(), isCastKeyword(), ConfigList::isDefault(), ClassDefImpl::isExtension(), isURL(), Htags::loadFilemap(), mergeArguments(), parseCommentAsText(), VhdlDocGen::parseFuncProto(), MarkdownOutlineParser::parseInput(), VhdlDocGen::parseUCF(), VhdlDocGen::prepareComment(), FlowChart::printNode(), FlowChart::printPlantUmlNode(), Markdown::Private::processLink(), processStoreRepl(), projectLogoSize(), readIncludeFile(), readIncludeFile(), readTagFile(), replaceFunctionMacro(), SymbolResolver::resolveClass(), splitKnRArg(), startOfRequiresExpression(), stripComment(), stripIrrelevantString(), stripTrailingReturn(), subrHandleCommentBlock(), subrHandleCommentBlockResult(), substEnvVarsInString(), substituteTemplateArgumentsInString(), Portable::system(), LayoutNavEntry::url(), MemberDefImpl::writeDeclaration(), MemberList::writeDeclarations(), writeExceptionList(), HtmlGenerator::writeExternalSearchPage(), VhdlDocGen::writeFunctionProto(), HtmlGenerator::writeLabel(), writeObjCMethodCall(), VhdlDocGen::writeVHDLTypeDocumentation(), and writeXMLDocBlock().

◆ toInt()

int QCString::toInt ( bool * ok = nullptr,
int base = 10 ) const

Definition at line 254 of file qcstring.cpp.

255{
256 return static_cast<int>(toLong( ok, base ));
257}
long toLong(bool *ok=nullptr, int base=10) const
Definition qcstring.cpp:265

References toLong().

Referenced by VhdlDocGen::addBaseClass(), insertDimension(), runQHelpGenerator(), TranslatorSlovak::trAndMore(), and writeObjCMethodCall().

◆ toLong()

long QCString::toLong ( bool * ok = nullptr,
int base = 10 ) const

Definition at line 265 of file qcstring.cpp.

266{
267 const char *p = data();
268 long val=0;
269 int l = static_cast<int>(length());
270 const long max_mult = INT_MAX / base;
271 bool is_ok = FALSE;
272 int neg = 0;
273 if ( !p )
274 goto bye;
275 while ( l && qisspace(*p) ) // skip leading space
276 l--,p++;
277 if ( l && *p == '-' ) {
278 l--;
279 p++;
280 neg = 1;
281 } else if ( *p == '+' ) {
282 l--;
283 p++;
284 }
285
286 // NOTE: toULong() code is similar
287 if ( !l || !ok_in_base(*p,base) )
288 goto bye;
289 while ( l && ok_in_base(*p,base) ) {
290 l--;
291 int dv = 0;
292 if ( *p>='0' && *p<='9' ) {
293 dv = *p-'0';
294 } else {
295 if ( *p >= 'a' && *p <= 'z' )
296 dv = *p - 'a' + 10;
297 else
298 dv = *p - 'A' + 10;
299 }
300 if ( val > max_mult || (val == max_mult && dv > (INT_MAX%base)+neg) )
301 goto bye;
302 val = base*val + dv;
303 p++;
304 }
305 if ( neg )
306 val = -val;
307 while ( l && qisspace(*p) ) // skip trailing space
308 l--,p++;
309 if ( !l )
310 is_ok = TRUE;
311bye:
312 if ( ok )
313 *ok = is_ok;
314 return is_ok ? val : 0;
315}
static bool ok_in_base(char c, int base)
Definition qcstring.cpp:224

References data(), FALSE, length(), ok_in_base(), qisspace(), and TRUE.

Referenced by toInt(), and toShort().

◆ toShort()

short QCString::toShort ( bool * ok = nullptr,
int base = 10 ) const

Definition at line 234 of file qcstring.cpp.

235{
236 long v = toLong( ok, base );
237 if ( ok && *ok && (v < -32768 || v > 32767) ) {
238 *ok = FALSE;
239 v = 0;
240 }
241 return static_cast<short>(v);
242}

References FALSE, and toLong().

◆ toUInt()

uint32_t QCString::toUInt ( bool * ok = nullptr,
int base = 10 ) const

Definition at line 259 of file qcstring.cpp.

260{
261 return static_cast<uint32_t>(toULong( ok, base ));
262}
unsigned long toULong(bool *ok=nullptr, int base=10) const
Definition qcstring.cpp:317

References toULong().

◆ toUInt64()

uint64_t QCString::toUInt64 ( bool * ok = nullptr,
int base = 10 ) const

Definition at line 361 of file qcstring.cpp.

362{
363 const char *p = data();
364 uint64_t val=0;
365 int l = static_cast<int>(length());
366 const uint64_t max_mult = 1844674407370955161ULL; // ULLONG_MAX/10, rounded down
367 bool is_ok = FALSE;
368 if ( !p )
369 goto bye;
370 while ( l && qisspace(*p) ) // skip leading space
371 l--,p++;
372 if ( *p == '+' )
373 l--,p++;
374
375 // NOTE: toULong() code is similar
376 if ( !l || !ok_in_base(*p,base) )
377 goto bye;
378 while ( l && ok_in_base(*p,base) ) {
379 l--;
380 uint32_t dv = 0;
381 if ( *p>='0' && *p<='9' ) {
382 dv = *p-'0';
383 } else {
384 if ( *p >= 'a' && *p <= 'z' )
385 dv = *p - 'a' + 10;
386 else
387 dv = *p - 'A' + 10;
388 }
389 if ( val > max_mult || (val == max_mult && dv > (ULLONG_MAX%base)) )
390 goto bye;
391 val = base*val + dv;
392 p++;
393 }
394
395 while ( l && qisspace(*p) ) // skip trailing space
396 l--,p++;
397 if ( !l )
398 is_ok = TRUE;
399bye:
400 if ( ok )
401 *ok = is_ok;
402 return is_ok ? val : 0;
403}

References data(), FALSE, length(), ok_in_base(), qisspace(), and TRUE.

Referenced by getCurrentDateTime().

◆ toULong()

unsigned long QCString::toULong ( bool * ok = nullptr,
int base = 10 ) const

Definition at line 317 of file qcstring.cpp.

318{
319 const char *p = data();
320 unsigned long val=0;
321 int l = static_cast<int>(length());
322 const unsigned long max_mult = 429496729; // UINT_MAX/10, rounded down
323 bool is_ok = FALSE;
324 if ( !p )
325 goto bye;
326 while ( l && qisspace(*p) ) // skip leading space
327 l--,p++;
328 if ( *p == '+' )
329 l--,p++;
330
331 // NOTE: toLong() code is similar
332 if ( !l || !ok_in_base(*p,base) )
333 goto bye;
334 while ( l && ok_in_base(*p,base) ) {
335 l--;
336 uint32_t dv = 0;
337 if ( *p>='0' && *p<='9' ) {
338 dv = *p-'0';
339 } else {
340 if ( *p >= 'a' && *p <= 'z' )
341 dv = *p - 'a' + 10;
342 else
343 dv = *p - 'A' + 10;
344 }
345 if ( val > max_mult || (val == max_mult && dv > (UINT_MAX%base)) )
346 goto bye;
347 val = base*val + dv;
348 p++;
349 }
350
351 while ( l && qisspace(*p) ) // skip trailing space
352 l--,p++;
353 if ( !l )
354 is_ok = TRUE;
355bye:
356 if ( ok )
357 *ok = is_ok;
358 return is_ok ? val : 0;
359}

References data(), FALSE, length(), ok_in_base(), qisspace(), and TRUE.

Referenced by toUInt(), and toUShort().

◆ toUShort()

uint16_t QCString::toUShort ( bool * ok = nullptr,
int base = 10 ) const

Definition at line 244 of file qcstring.cpp.

245{
246 unsigned long v = toULong( ok, base );
247 if ( ok && *ok && (v > 65535) ) {
248 *ok = FALSE;
249 v = 0;
250 }
251 return static_cast<uint16_t>(v);
252}

References FALSE, and toULong().

◆ upper()

QCString QCString::upper ( ) const
inline

Definition at line 254 of file qcstring.h.

255 {
257 }
std::string convertUTF8ToUpper(const std::string &input)
Converts the input string into a upper case version, also taking into account non-ASCII characters th...
Definition utf8.cpp:192

References convertUTF8ToUpper(), m_rep, and QCString().

Referenced by VhdlDocGen::findMember(), TranslatorAfrikaans::trDayOfWeek(), TranslatorBrazilian::trDayOfWeek(), TranslatorCatalan::trDayOfWeek(), TranslatorCzech::trDayOfWeek(), TranslatorDanish::trDayOfWeek(), TranslatorDutch::trDayOfWeek(), TranslatorEsperanto::trDayOfWeek(), TranslatorFinnish::trDayOfWeek(), TranslatorFrench::trDayOfWeek(), TranslatorHungarian::trDayOfWeek(), TranslatorItalian::trDayOfWeek(), TranslatorLatvian::trDayOfWeek(), TranslatorLithuanian::trDayOfWeek(), TranslatorNorwegian::trDayOfWeek(), TranslatorPolish::trDayOfWeek(), TranslatorPortuguese::trDayOfWeek(), TranslatorRomanian::trDayOfWeek(), TranslatorSerbian::trDayOfWeek(), TranslatorSlovak::trDayOfWeek(), TranslatorSlovene::trDayOfWeek(), TranslatorSpanish::trDayOfWeek(), TranslatorSwedish::trDayOfWeek(), TranslatorAfrikaans::trMonth(), TranslatorBrazilian::trMonth(), TranslatorCatalan::trMonth(), TranslatorCzech::trMonth(), TranslatorDanish::trMonth(), TranslatorDutch::trMonth(), TranslatorEsperanto::trMonth(), TranslatorFinnish::trMonth(), TranslatorFrench::trMonth(), TranslatorHungarian::trMonth(), TranslatorItalian::trMonth(), TranslatorLatvian::trMonth(), TranslatorLithuanian::trMonth(), TranslatorNorwegian::trMonth(), TranslatorPolish::trMonth(), TranslatorPortuguese::trMonth(), TranslatorRomanian::trMonth(), TranslatorSerbian::trMonth(), TranslatorSlovak::trMonth(), TranslatorSlovene::trMonth(), TranslatorSpanish::trMonth(), and TranslatorSwedish::trMonth().

◆ view()

std::string_view QCString::view ( ) const
inline

Member Data Documentation

◆ m_rep


The documentation for this class was generated from the following files: