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

A String class for use with Doxygen wrapping std::string and adding some additional functionality offered by QCString. More...

#include <src/dstring.h>

Public Types

enum  SizeTag { ExplicitSize }
 creates a string with room for size characters More...
using value_type = std::string::value_type
using size_type = std::string::size_type
using reference = std::string::reference
using const_reference = std::string::const_reference
using iterator = std::string::iterator
using const_iterator = std::string::const_iterator
using reverse_iterator = std::string::reverse_iterator
using const_reverse_iterator = std::string::const_reverse_iterator

Public Member Functions

 DString ()=default
 DString (const DString &)=default
DStringoperator= (const DString &)=default
 DString (DString &&)=default
DStringoperator= (DString &&)=default
 ~DString ()=default
 DString (const std::string &s)
 DString (std::string &&s)
DStringoperator= (std::string &&s)
 DString (std::string_view sv)
DStringoperator= (std::string_view sv)
 DString (int)=delete
 DString (const JavaCCString &s)
 For converting a JavaCC string.
DStringoperator= (const JavaCCString &s)
 DString (size_t size, SizeTag t)
 DString (const char *str)
 creates a string from a plain C string.
 DString (const char *str, size_t maxlen)
 creates a string from str and copies over the first maxlen characters.
DStringoperator= (const char *str)
 replaces the contents by that of C string str.
DStringoperator= (const std::string &s)
bool empty () const
 Returns true iff the string is empty (std::string compatible alias for isEmpty()).
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.
const char * c_str () 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.
iterator begin ()
const_iterator begin () const
const_iterator cbegin () const
iterator end ()
const_iterator end () const
const_iterator cend () const
reverse_iterator rbegin ()
const_reverse_iterator rbegin () const
const_reverse_iterator crbegin () const
reverse_iterator rend ()
const_reverse_iterator rend () const
const_reverse_iterator crend () const
char & front ()
 Returns a reference to the first character.
const char & front () const
char & back ()
 Returns a reference to the last character.
const char & back () const
void push_back (char c)
void pop_back ()
size_t capacity () const
size_t max_size () const
void shrink_to_fit ()
void resize (size_t newlen)
void resize (size_t newlen, char c)
 Resizes the string to newlen characters, filling any new characters with c.
void clear ()
void reserve (size_t size)
 Reserve space for size bytes without changing the string contents.
void swap (DString &other)
 Swaps the contents of this string with other.
DString substr (size_t pos=0, size_t count=npos) const
 Returns a substring of length count starting at pos.
size_t copy (char *dest, size_t count, size_t pos=0) const
 Copies (up to) count characters into dest, starting at pos.
int compare (const DString &s) const
int compare (const char *s) const
int compare (const std::string &s) const
DStringerase (size_t index=0, size_t count=npos)
DStringassign (const char *s)
DStringassign (const DString &s)
DStringassign (const std::string &s)
DStringassign (std::string_view s)
size_t find (char c, size_t pos=0) const
size_t find (const char *s, size_t pos=0) const
size_t find (const DString &s, size_t pos=0) const
size_t find (const std::string &s, size_t pos=0) const
size_t rfind (char c, size_t pos=npos) const
size_t rfind (const char *s, size_t pos=npos) const
size_t rfind (const DString &s, size_t pos=npos) const
size_t rfind (const std::string &s, size_t pos=npos) const
size_t rfind_insensitive (char c, size_t pos=npos) const
size_t rfind_insensitive (const char *str, size_t pos=npos) const
size_t find_first_of (char c, size_t pos=0) const
size_t find_first_of (const char *s, size_t pos=0) const
size_t find_first_of (const DString &s, size_t pos=0) const
size_t find_first_of (const std::string &s, size_t pos=0) const
size_t find_last_of (char c, size_t pos=npos) const
size_t find_last_of (const char *s, size_t pos=npos) const
size_t find_last_of (const DString &s, size_t pos=npos) const
size_t find_last_of (const std::string &s, size_t pos=npos) const
size_t find_first_not_of (char c, size_t pos=0) const
size_t find_first_not_of (const char *s, size_t pos=0) const
size_t find_first_not_of (const DString &s, size_t pos=0) const
size_t find_first_not_of (const std::string &s, size_t pos=0) const
size_t find_last_not_of (char c, size_t pos=npos) const
size_t find_last_not_of (const char *s, size_t pos=npos) const
size_t find_last_not_of (const DString &s, size_t pos=npos) const
size_t find_last_not_of (const std::string &s, size_t pos=npos) const
DString fill (char c, size_t len)
 Fills a string with a predefined character.
DStringsprintf (const char *format,...)
int contains (char c, bool cs=true) const
int contains (const char *str, bool cs=true) const
bool stripPrefix (const DString &prefix)
bool stripPrefix (const char *prefix)
DString left (size_t len) const
DString right (size_t len) const
DString mid (size_t index, size_t len=npos) const
DString lower () const
DString upper () const
DString stripWhiteSpace () const
 returns a copy of this string with leading and trailing whitespace removed
DString stripLeadingAndTrailingEmptyLines () const
DString quoted () const
DString removeWhiteSpace () const
 returns a copy of this string with all whitespace removed
DString simplifyWhiteSpace () const
 return a copy of this string with leading and trailing whitespace removed and multiple internal whitespace characters replaced by a single space
bool findAndRemoveWord (const char *word)
 removes occurrences of whole word from this string, while keeping internal spaces and reducing multiple sequences of spaces.
bool containsWord (const char *word) const
 returns true if this string contains word as a whole word, false otherwise.
DString repeat (unsigned int n) const
DStringinsert (size_t index, const DString &s)
DStringinsert (size_t index, std::string_view s)
DStringinsert (size_t index, const char *s)
DStringinsert (size_t index, char c)
DStringappend (char c)
DStringappend (const char *s)
DStringappend (const DString &s)
DStringappend (const std::string &s)
DStringappend (std::string_view s)
DStringprepend (const char *s)
DStringprepend (const DString &s)
DStringprepend (const std::string &s)
DStringprepend (std::string_view s)
DStringremove (size_t index, size_t len)
DStringreplace (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
DStringsetNum (short n)
DStringsetNum (uint16_t n)
DStringsetNum (int n)
DStringsetNum (uint32_t n)
DStringsetNum (long n)
DStringsetNum (long long n)
DStringsetNum (unsigned long long n)
DStringsetNum (unsigned long n)
bool startsWith (const char *s) const
bool startsWith (const std::string &s) const
bool startsWith (const DString &s) const
bool endsWith (const char *s) const
bool endsWith (const std::string &s) const
bool endsWith (const DString &s) const
const std::string & str () const
DStringoperator+= (const DString &s)
DStringoperator+= (const std::string &s)
DStringoperator+= (std::string_view s)
DStringoperator+= (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

Static Public Member Functions

static DString integerToAlpha (int n, bool upper=true)
static DString integerToRoman (int n, bool upper=true)

Static Public Attributes

static constexpr size_t npos = std::string::npos
 value used to indicate 'not found' or 'to the end of the string', matching std::string::npos

Private Attributes

std::string m_rep

Detailed Description

A String class for use with Doxygen wrapping std::string and adding some additional functionality offered by QCString.

QCString is part of qtools which was used as a portability layer in the past.

Definition at line 87 of file dstring.h.

Member Typedef Documentation

◆ const_iterator

using DString::const_iterator = std::string::const_iterator

Definition at line 177 of file dstring.h.

◆ const_reference

using DString::const_reference = std::string::const_reference

Definition at line 175 of file dstring.h.

◆ const_reverse_iterator

using DString::const_reverse_iterator = std::string::const_reverse_iterator

Definition at line 179 of file dstring.h.

◆ iterator

using DString::iterator = std::string::iterator

Definition at line 176 of file dstring.h.

◆ reference

using DString::reference = std::string::reference

Definition at line 174 of file dstring.h.

◆ reverse_iterator

using DString::reverse_iterator = std::string::reverse_iterator

Definition at line 178 of file dstring.h.

◆ size_type

using DString::size_type = std::string::size_type

Definition at line 173 of file dstring.h.

◆ value_type

using DString::value_type = std::string::value_type

Definition at line 172 of file dstring.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 135 of file dstring.h.

135{ ExplicitSize };
@ ExplicitSize
Definition dstring.h:135

Constructor & Destructor Documentation

◆ DString() [1/11]

◆ DString() [2/11]

DString::DString ( const DString & )
default

References DString().

◆ DString() [3/11]

DString::DString ( DString && )
default

References DString().

◆ ~DString()

DString::~DString ( )
default

◆ DString() [4/11]

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

Definition at line 97 of file dstring.h.

97: m_rep(s) {}
std::string m_rep
Definition dstring.h:715

References m_rep.

◆ DString() [5/11]

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

Definition at line 99 of file dstring.h.

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

References m_rep.

◆ DString() [6/11]

DString::DString ( std::string_view sv)
inline

Definition at line 107 of file dstring.h.

107: m_rep(sv) {}

References m_rep.

◆ DString() [7/11]

DString::DString ( int )
delete

◆ DString() [8/11]

DString::DString ( const JavaCCString & s)
inline

For converting a JavaCC string.

Definition at line 119 of file dstring.h.

120 {
121 m_rep.resize(s.size());
122 std::memcpy(m_rep.data(),s.data(),s.size());
123 }

References m_rep.

◆ DString() [9/11]

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

Definition at line 136 of file dstring.h.

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

References m_rep, and size().

◆ DString() [10/11]

DString::DString ( 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 141 of file dstring.h.

141: m_rep(str?str:"") {}
const std::string & str() const
Definition dstring.h:649

References m_rep, and str().

◆ DString() [11/11]

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

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

Definition at line 144 of file dstring.h.

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

References m_rep, and str().

Member Function Documentation

◆ append() [1/5]

◆ append() [2/5]

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

Definition at line 499 of file dstring.h.

500 {
501 return operator+=(s);
502 }
DString & operator+=(const DString &s)
Definition dstring.h:654

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

◆ append() [3/5]

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

Definition at line 504 of file dstring.h.

505 {
506 return operator+=(s);
507 }

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

◆ append() [4/5]

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

Definition at line 509 of file dstring.h.

510 {
511 return operator+=(s);
512 }

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

◆ append() [5/5]

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

Definition at line 514 of file dstring.h.

515 {
516 return operator+=(s);
517 }

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

◆ assign() [1/4]

DString & DString::assign ( const char * s)
inline

Definition at line 238 of file dstring.h.

238{ return operator=(s); }
DString & operator=(const DString &)=default

References DString(), and operator=().

◆ assign() [2/4]

DString & DString::assign ( const DString & s)
inline

Definition at line 239 of file dstring.h.

239{ m_rep = s.str(); return *this; }

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

◆ assign() [3/4]

DString & DString::assign ( const std::string & s)
inline

Definition at line 240 of file dstring.h.

240{ return operator=(s); }

References DString(), and operator=().

◆ assign() [4/4]

DString & DString::assign ( std::string_view s)
inline

Definition at line 241 of file dstring.h.

241{ return operator=(s); }

References DString(), and operator=().

◆ at() [1/2]

char & DString::at ( size_t i)
inline

Returns a reference to the character at index i.

Definition at line 690 of file dstring.h.

691 {
692 return m_rep[i];
693 }

References m_rep.

Referenced by DefinitionImpl::_setBriefDescription(), abbreviate(), Qhp::addContentsItem(), addGlobalFunction(), addIncludeFile(), addMethodToClass(), addSeparatorsIfNeeded(), addTemplateNames(), addVariableToFile(), adjustConfiguration(), Config::checkAndCorrect(), checkVhdlString(), computeVerifiedDotPath(), configStringRecode(), TranslatorPersian::convertDigitsToFarsi(), DirDefImpl::DirDefImpl(), MemberDefImpl::displayDefinition(), DocEmoji::DocEmoji(), DocLink::DocLink(), elemIsVisible(), expandExpression(), expandVAOpt(), externalRef(), DefinitionImpl::externalReference(), extractPartAfterNewLine(), findDirDocumentation(), findEndOfTemplate(), findEnumDocumentation(), VhdlDocGen::formatString(), PerlModGenerator::generatePerlModForMember(), generateSqlite3ForMember(), generateXMLForMember(), getCanonicalTemplateSpec(), getCurrentChar(), getExtension(), getLanguageFromCodeLang(), getLanguageFromFileName(), getNextChar(), getNextId(), getPrefixIndex(), getScopeDefs(), getScopeFragment(), handleHtmlTag(), DocParser::handleLinkedWord(), DocPara::handleStartCode(), Markdown::Private::isAtxHeader(), DocFormula::isInline(), 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(), runMermaid(), searchInputFiles(), MemberDefImpl::setInitializer(), splitSearchTokens(), startsWithKeyword(), stringize(), stripAnonymousNamespaceScope(), stripComment(), stripIrrelevantString(), stripQuotes(), stripQuotes(), stripScope(), stripTemplateSpecifiers(), stripTemplateSpecifiersFromScope(), stripTrailingWhiteSpace(), substEnvVarsInStrList(), Portable::system(), SearchTerm::termEncoded(), transcodeCharacterStringToUTF8(), Trace::trunc(), updateLanguageMapping(), validatingParseDoc(), MemberDefImpl::writeDocumentation(), writeExceptionList(), VhdlDocGen::writeFormatString(), HtmlGenerator::writeLabel(), MemberDefImpl::writeMemberDocSimple(), writeMemberList(), MermaidManager::writeMermaidSource(), writeObjCMethodCall(), PlantumlManager::writePlantUMLSource(), writeSingleFileIndex(), ConfigOption::writeStringList(), writeWord(), and HtmlEntityMapper::writeXMLSchema().

◆ at() [2/2]

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

Definition at line 695 of file dstring.h.

696 {
697 return m_rep[i];
698 }

References m_rep.

◆ back() [1/2]

char & DString::back ( )
inline

Returns a reference to the last character.

Undefined behavior if the string is empty.

Definition at line 203 of file dstring.h.

203{ return m_rep.back(); }

References m_rep.

Referenced by subrHandleCommentBlock(), and subrHandleCommentBlockResult().

◆ back() [2/2]

const char & DString::back ( ) const
inline

Definition at line 204 of file dstring.h.

204{ return m_rep.back(); }

References m_rep.

◆ begin() [1/2]

iterator DString::begin ( )
inline

Definition at line 184 of file dstring.h.

184{ return m_rep.begin(); }

References m_rep.

◆ begin() [2/2]

const_iterator DString::begin ( ) const
inline

Definition at line 185 of file dstring.h.

185{ return m_rep.begin(); }

References m_rep.

◆ c_str()

const char * DString::c_str ( ) const
inline

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

Definition at line 164 of file dstring.h.

164{ return m_rep.c_str(); }

References m_rep.

Referenced by vhdl::parser::VhdlErrorHandler::handleOtherError(), vhdl::parser::VhdlTokenManagerErrorHandler::lexicalError(), and runPlantumlContent().

◆ capacity()

size_t DString::capacity ( ) const
inline

Definition at line 209 of file dstring.h.

209{ return m_rep.capacity(); }

References m_rep.

◆ cbegin()

const_iterator DString::cbegin ( ) const
inline

Definition at line 186 of file dstring.h.

186{ return m_rep.cbegin(); }

References m_rep.

◆ cend()

const_iterator DString::cend ( ) const
inline

Definition at line 189 of file dstring.h.

189{ return m_rep.cend(); }

References m_rep.

◆ clear()

◆ compare() [1/3]

int DString::compare ( const char * s) const
inline

Definition at line 233 of file dstring.h.

233{ return m_rep.compare(s?s:""); }

References m_rep.

◆ compare() [2/3]

int DString::compare ( const DString & s) const
inline

Definition at line 232 of file dstring.h.

232{ return m_rep.compare(s.str()); }

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

◆ compare() [3/3]

int DString::compare ( const std::string & s) const
inline

Definition at line 234 of file dstring.h.

234{ return m_rep.compare(s); }

References m_rep.

◆ contains() [1/2]

int DString::contains ( char c,
bool cs = true ) const

Definition at line 81 of file dstring.cpp.

82{
83 if (length()==0) return 0;
84 int count=0;
85 const char *pos = data();
86 if (cs)
87 {
88 while (*pos) if (*pos++ == c) count++;
89 }
90 else
91 {
92 c = toLowerChar(c);
93 while (*pos)
94 {
95 if (toLowerChar(*pos)==c) count++;
96 pos++;
97 }
98 }
99 return count;
100}
const char * data() const
Returns a pointer to the contents of the string in the form of a 0-terminated C string.
Definition dstring.h:161
size_t length() const
Returns the length of the string, not counting the 0-terminator.
Definition dstring.h:155
char toLowerChar(char c)
Definition dstring.cpp:25

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

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

◆ contains() [2/2]

int DString::contains ( const char * str,
bool cs = true ) const

Definition at line 102 of file dstring.cpp.

103{
104 if (str==nullptr || length()==0) return 0;
105 int count=0;
106 const char *pos = data();
107 int len = dstrlen(str);
108 while (*pos)
109 {
110 if (cs)
111 {
112 if (dstrncmp(pos,str,len)==0) count++;
113 }
114 else
115 {
116 if (dstrnicmp(pos,str,len)==0) count++;
117 }
118 pos++;
119 }
120 return count;
121}
int dstrnicmp(const char *str1, const char *str2, size_t len)
Definition dstring.cpp:458
int dstrncmp(const char *str1, const char *str2, size_t len)
Definition dstring.h:60
uint32_t dstrlen(const char *str)
Returns the length of string str, or 0 if a null pointer is passed.
Definition dstring.h:43

References data(), dstrlen(), dstrncmp(), dstrnicmp(), length(), and str().

◆ containsWord()

bool DString::containsWord ( const char * word) const

returns true if this string contains word as a whole word, false otherwise.

A whole word is defined as a sequence of characters that is not preceded or followed by an identifier character (see isId()).

Definition at line 691 of file dstring.cpp.

692{
693 if (m_rep.empty() || word==nullptr) return false;
694 static const reg::Ex re(R"(\a+)");
695 for (reg::Iterator it(m_rep,re) ; it!=reg::Iterator() ; ++it)
696 {
697 if (it->str()==word) return true;
698 }
699 return false;
700}

References m_rep.

◆ copy()

size_t DString::copy ( char * dest,
size_t count,
size_t pos = 0 ) const
inline

Copies (up to) count characters into dest, starting at pos.

Returns the number of characters copied.

Definition at line 230 of file dstring.h.

230{ return m_rep.copy(dest,count,pos); }

References m_rep.

◆ crbegin()

const_reverse_iterator DString::crbegin ( ) const
inline

Definition at line 193 of file dstring.h.

193{ return m_rep.crbegin(); }

References m_rep.

◆ crend()

const_reverse_iterator DString::crend ( ) const
inline

Definition at line 196 of file dstring.h.

196{ return m_rep.crend(); }

References m_rep.

◆ data()

const char * DString::data ( ) const
inline

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

Definition at line 161 of file dstring.h.

161{ return m_rep.c_str(); }

References m_rep.

Referenced by SectionManager::add(), Crawlmap::addContentsItem(), addMacroDefinition(), SearchIndex::addWordRec(), addXRefItemToEntry(), adjustConfiguration(), bindTextParameter(), buildFileName(), DocParser::checkArgumentName(), checkBlocks(), checkMarkdownMainfile(), FlowChart::codify(), HtmlCodeGenerator::codify(), LatexCodeGenerator::codify(), ManCodeGenerator::codify(), RTFCodeGenerator::codify(), codifyLines(), codifyLines(), codifyLines(), codifyLines(), codifyLines(), codifyMapLines(), FilterCache::compileLineOffsets(), computeQualifiedIndex(), configStringRecode(), contains(), contains(), HtmlEntityMapper::convertCharEntitiesToUTF8(), convertCppComments(), convertIndexWordToAnchor(), convertToComment(), DocbookGenerator::convertToDocbook(), convertToHtml(), convertToId(), convertToJSString(), convertToPSString(), convertToXML(), Portable::correctPath(), VhdlDocGen::createFlowChart(), createTagLessInstance(), detab(), do_mscgen_generate(), ManGenerator::docify(), HtmlGenerator::docify_(), docifyToString(), docifyToString(), dstrcmp(), dstrcmp(), dstrcmp(), dstricmp(), dstricmp(), dstricmp(), dstricmp_sort(), dstricmp_sort(), dstricmp_sort(), dstrnicmp(), dstrnicmp(), dstrnicmp(), encodeForOutput(), escapeAt(), escapeCharsInString(), escapeDoubleQuotes(), escapeSpecialChars(), escapeTooltip(), extractBoundingBox(), HtmlDocVisitor::filter(), ManDocVisitor::filter(), RTFDocVisitor::filter(), TextDocVisitor::filter(), filter2008VhdlComment(), filterId(), filterLatexString(), HtmlDocVisitor::filterQuotedCdataAttr(), CodeFragmentManager::Private::FragmentInfo::findBlockMarkers(), Markdown::Private::findEmphasisChar(), Markdown::Private::findEndOfLine(), DocTokenizer::findSections(), VhdlDocGen::findVhdlClass(), Portable::fopen(), format_warn(), formatDateTime(), generateOutput(), generateXML(), getConvertLatexMacro(), Portable::getenv(), CitationManager::getFormulas(), ParserManager::getParsers(), getPrefixIndex(), 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(), linkifyText(), nameIsActuallyPartOfType(), operator!=(), operator!=(), DocbookDocVisitor::operator()(), HtmlDocVisitor::operator()(), LatexDocVisitor::operator()(), operator<(), operator<(), operator<(), operator<=(), operator<=(), operator==(), operator==(), operator>(), operator>(), operator>=(), operator>=(), CondParser::parse(), DocInclude::parse(), 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(), readCodeFragment(), readConfiguration(), readIncludeFile(), HtmlHelpRecoder::recode(), Portable::recodeUtf8StringToW(), recognizeFixedForm(), removeIdsAndMarkers(), removeMarkers(), removeRedundantWhiteSpace(), repeat(), SectionManager::replace(), replaceAnonymousScopes(), CitationManager::replaceFormulas(), resolveConfig(), rfind_insensitive(), rfind_insensitive(), DotFilePatcher::run(), runPlantumlContent(), ColoredImage::save(), Image::save(), selectBlocks(), DefinitionImpl::Private::setDefFileName(), Portable::setenv(), simplifyWhiteSpace(), skipToEndMarker(), startCondSection(), OutputGenerator::startPlainFile(), 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(), writeInlineGraph(), writeMemberList(), MermaidManager::writeMermaidSource(), writeMultiLineCodeLink(), writeMultiLineCodeLink(), writeMultiLineCodeLink(), writeMultiLineCodeLink(), HtmlDocVisitor::writeObfuscatedMailAddress(), writeObjCMethodCall(), DocbookGenerator::writePageLink(), PlantumlManager::writePlantUMLSource(), Image::writeString(), ConfigOption::writeStringValue(), and writeXMLCodeString().

◆ empty()

bool DString::empty ( ) const
inline

Returns true iff the string is empty (std::string compatible alias for isEmpty()).

Definition at line 152 of file dstring.h.

152{ return m_rep.empty(); }

References m_rep.

Referenced by MemberDefImpl::_isAnonymousBitField(), DefinitionImpl::_setBriefDescription(), DefinitionImpl::_setDocumentation(), DefinitionImpl::_setInbodyDocumentation(), MemberDefImpl::_writeCategoryRelation(), 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(), CommentScanner::addDeprecatedDocs(), DocGroup::addDocs(), ModuleManager::addDocs(), DotGroupCollaboration::addEdge(), addEnumDocs(), addEnumValuesToEnums(), FlowChart::addFlowChart(), 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(), addMembersToIndex(), addMemberToGroups(), addMemberToSearchIndex(), addMethodToClass(), addModule(), addNamespaceToGroups(), addPerlModDocBlock(), VHDLOutlineParser::addProto(), addRefItem(), addRelatedPage(), addRelatedPage(), RequirementManager::addRequirement(), addSection(), PageDefImpl::addSectionsToIndex(), addSeparatorsIfNeeded(), addToMap(), TooltipManager::addTooltip(), ClassDefImpl::addTypeConstraint(), addUsingDirective(), addVariable(), addVariable(), addVariableToClass(), addVariableToFile(), SearchIndexExternal::addWord(), SearchIndex::addWordRec(), addXRefItemToEntry(), 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(), ClassDefImpl::className(), FlowChart::codify(), HtmlCodeGenerator::codify(), LatexCodeGenerator::codify(), ManCodeGenerator::codify(), RTFCodeGenerator::codify(), codifyLines(), codifyLines(), codifyLines(), codifyLines(), codifyLines(), codifyMapLines(), combineArgsAndException(), combineDeclarationAndDefinition(), ConfigImpl::compareDoxyfile(), computeClassRelations(), computeExpression(), DotGraph::computeGraph(), computePageRelations(), computeVerifiedDotPath(), ConceptDefImpl::ConceptDefImpl(), configFileToString(), configStringRecode(), HtmlEntityMapper::convertCharEntitiesToUTF8(), DotNode::convertLabel(), convertMapFile(), convertNameToFile(), convertStringToBool(), ConfigBool::convertStrToVal(), ConfigEnum::convertStrToVal(), ConfigInt::convertStrToVal(), convertToComment(), DocbookGenerator::convertToDocbook(), convertToHtml(), convertToId(), convertToJSString(), convertToPSString(), convertToXML(), MemberDefImpl::copyArgumentNames(), copyIcon(), copyLogo(), copyStyleSheet(), Portable::correctPath(), correctURL(), createDVIFile(), VHDLOutlineParser::createFunction(), createHtmlUrl(), FormulaManager::createLatexFile(), createOutputDirectory(), createRef(), createUsingMemberImportForClass(), dateTimeFromString(), deliverablesPresent(), MemberDefImpl::detectUndocumentedParams(), MemberDefImpl::displayDefinition(), MemberGroup::distributeMemberGroupDocumentation(), DocCite::DocCite(), DocFormula::DocFormula(), ManGenerator::docify(), RTFGenerator::docify(), HtmlGenerator::docify_(), docifyToString(), docifyToString(), DocLink::DocLink(), DocLinkedWord::DocLinkedWord(), DocRef::DocRef(), DocWord::DocWord(), DotClassGraph::DotClassGraph(), elemIsVisible(), ConfigString::emptyValueToDefault(), encodeForOutput(), HtmlGenerator::endDotGraph(), RTFGenerator::endDoxyAnchor(), LayoutParser::endElement(), HtmlGenerator::endIndexItem(), LatexGenerator::endIndexItem(), RTFGenerator::endIndexItem(), RTFGenerator::endIndexSection(), RTFGenerator::endIndexValue(), LatexDocVisitor::endLink(), RTFDocVisitor::endLink(), HtmlGenerator::endMemberTemplateParams(), LatexGenerator::endPageRef(), RTFGenerator::endPageRef(), endQuickIndexItem(), DocbookGenerator::endTitleHead(), LatexGenerator::endTitleHead(), RTFGenerator::endTitleHead(), DocGroup::enterCompound(), escapeAt(), escapeCharsInString(), escapeDoubleQuotes(), escapeLabel(), escapeSpecialChars(), escapeTooltip(), Htags::execute(), ExistsOnPath(), expandExpression(), externalRef(), DefinitionImpl::externalReference(), extractCanonicalArgType(), extractCanonicalType(), extractClassNameFromType(), extractNamespaceName(), extractTrailingComment(), field2URL(), FileDefImpl::FileDefImpl(), fileToString(), HtmlDocVisitor::filter(), ManDocVisitor::filter(), RTFDocVisitor::filter(), TextDocVisitor::filter(), filterId(), filterLatexString(), filterMemberDocumentation(), HtmlDocVisitor::filterQuotedCdataAttr(), CodeFragmentManager::Private::FragmentInfo::findBlockMarkers(), findClassRelation(), findDefineDocumentation(), DocParser::findDocsForMemberOrCompound(), Markdown::Private::findEmphasisChar(), Markdown::Private::findEndOfLine(), findEnumDocumentation(), findEnums(), DocGroup::findExistingGroup(), findFile(), FileNameLinkedMap::findFileDef(), findFriends(), findGlobalMember(), findGroupScope(), FlowChart::findLabel(), findMainPage(), findMember(), findMemberDocumentation(), findPackageScope(), findPackageScopeFromPath(), DocTokenizer::findSections(), findTemplateSpecializationPosition(), findUsedClassesForClass(), findUsingDeclarations(), findUsingDeclImports(), findUsingDirectives(), VariableContext::findVariable(), ArgumentList::finishTrailingReturnType(), fixArgumentListForJavaScript(), format_warn(), generateBriefDoc(), generateClassOrGlobalLink(), generateClassOrGlobalLink(), generateClassOrGlobalLink(), generateDEFForMember(), OutputList::generateDoc(), generateFunctionLink(), generateFunctionLink(), FormulaManager::generateImages(), generateJSNavTree(), generateMemberLink(), generateMemLink(), generateOutput(), CitationManager::generatePage(), RequirementManager::generatePage(), PerlModGenerator::generatePerlModForMember(), PerlModGenerator::generatePerlModSection(), PlantumlManager::generatePlantUmlFileNames(), generateSqlite3ForClass(), generateSqlite3ForMember(), generateSqlite3ForPage(), generateXMLForClass(), generateXMLForMember(), generateXMLForPage(), genericCompareMembers(), DotGfxHierarchyTable::getBaseName(), getBibFile(), getCanonicalTemplateSpec(), getCanonicalTypeForIdentifier(), getClass(), VhdlDocGen::getClass(), getConcept(), getConfig(), getConvertLatexMacro(), getCurrentChar(), getCurrentDateTime(), getDefs(), 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(), handleFileInfoResult(), handleGuard(), DocPara::handleHtmlStartTag(), DocParser::handleImage(), handleInheritanceGraph(), DocPara::handleLink(), DocParser::handleLinkedWord(), handleParametersCommentBlocks(), DocPara::handleShowDate(), DocPara::handleStartCode(), handleToc(), DefinitionImpl::hasBriefDescription(), DirDefImpl::hasDetailedDescription(), MemberDefImpl::hasDetailedDescription(), ModuleDefImpl::hasDetailedDescription(), Argument::hasDocumentation(), MemberDefImpl::hasMultiLineInitializer(), MemberDefImpl::hasOneLineInitializer(), Argument::hasTemplateDocumentation(), PageDefImpl::hasTitle(), PerlModOutput::iaddQuoted(), inheritDocumentation(), ConfigImpl::init(), MemberDefImpl::init(), RTFGenerator::init(), initDoxygen(), DocSets::initialize(), EclipseHelp::initialize(), HtmlHelpRecoder::initialize(), Qhp::initialize(), initPredefined(), initTracing(), initUCF(), initWarningFormat(), inlineArgListToDoc(), CitationManager::insertCrossReferencesForBibFile(), insertMemberFunctionParams(), insertRefid(), insertTemplateSpecifierInScope(), DocParser::internalValidatingParseDoc(), SymbolResolver::Private::isAccessibleFromWithExpScope(), ClassDefImpl::isBaseClass(), MemberDefImpl::isBriefSectionVisible(), isClassSection(), ClassDefImpl::isExtension(), FileDefImpl::isIncluded(), NamespaceDefImpl::isLinkableInProject(), isLinkRef(), isLowerCase(), ModuleDefImpl::isPrimaryInterface(), isVarWithConstructor(), javaExecutable(), DiagramItem::label(), CitationManager::latexBibFiles(), latexEscapeIndexChars(), latexEscapeLabelName(), latexEscapePDFString(), latexFilterURL(), latexWriteIndexItem(), letterToLabel(), HtmlGenerator::lineBreak(), VHDLOutlineParser::lineCount(), linkifyText(), linkToText(), makeFileName(), makeFileName(), makeIndex(), makeQualifiedNameWithTemplateParameters(), makeRef(), makeRef(), makeURL(), Mapper< T >::map(), DotFilePatcher::mapLabelToId(), matchArgument2(), matchExcludedSymbols(), mergeArguments(), mergeScopes(), NamespaceDefImpl::NamespaceDefImpl(), DefinitionImpl::navigationPathAsString(), needsSorting(), 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(), DocInclude::parse(), DocIncOperator::parse(), DocRef::parse(), DocSecRefItem::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(), CondParser::parseVar(), Htags::path2URL(), DefinitionImpl::pathFragment(), VhdlDocGen::prepareComment(), printNavTree(), Markdown::process(), Markdown::Private::processBlocks(), processConcatOperators(), Markdown::Private::processLink(), processList(), Markdown::Private::processSpecialCommand(), projectLogoFile(), projectLogoSize(), qPrint(), ImportInfo::qualifiedName(), ModuleDefImpl::qualifiedName(), readCodeFragment(), readConfiguration(), readFileOrDirectory(), readIncludeFile(), readInputFile(), readTagFile(), DocParser::readTextFileByName(), Portable::recodeUtf8StringToW(), ParserManager::registerExtension(), relativePathToRoot(), removeAnonymousScopes(), removeIdsAndMarkers(), removeMarkers(), removeRedundantWhiteSpace(), replaceAnonymousScopes(), replaceColorMarkers(), CitationManager::replaceFormulas(), replaceFunctionMacro(), replaceRef(), resolveClassNestingRelations(), resolveConfig(), resolveLink(), ModuleManager::resolvePartitionsRecursively(), resolveRef(), resolveSymlink(), resolveTypeDef(), MemberDefImpl::resolveUnnamedParameters(), runMermaid(), runPlantumlContent(), searchTemplateSpecs(), selectBlocks(), MemberDefImpl::setAnchor(), DefinitionImpl::setBriefDescription(), setCallContextForVar(), SearchIndex::setCurrentDoc(), SearchIndexExternal::setCurrentDoc(), DefinitionImpl::Private::setDefFileName(), DefinitionImpl::setDocumentation(), setDotFontPath(), Portable::setenv(), DocOptions::setExample(), GroupDefImpl::setGroupTitleLocal(), DefinitionImpl::setInbodyDocumentation(), ClassDefImpl::setIncludeFile(), ConceptDefImpl::setIncludeFile(), DefinitionImpl::setName(), PageDefImpl::setTitle(), FileNameLinkedMap::showFileDefMatches(), simplifyWhiteSpace(), MemberDefImpl::sourceRefName(), splitSearchTokens(), XMLCodeGenerator::startCodeLine(), DocbookGenerator::startDescTable(), DocbookGenerator::startDoxyAnchor(), LatexGenerator::startDoxyAnchor(), DocbookGenerator::startFile(), startFile(), HtmlGenerator::startIndexItem(), LatexGenerator::startIndexItem(), RTFGenerator::startIndexSection(), DocbookDocVisitor::startLink(), HtmlDocVisitor::startLink(), LatexDocVisitor::startLink(), RTFDocVisitor::startLink(), XmlDocVisitor::startLink(), anonymous_namespace{tagreader.cpp}::TagFileParser::startMember(), 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(), 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(), TranslatorLatvian::trModuleMembersDescriptionTotal(), TranslatorPortuguese::trModuleMembersDescriptionTotal(), TranslatorSpanish::trModuleMembersDescriptionTotal(), TranslatorBrazilian::trNamespaceMembersDescriptionTotal(), TranslatorEnglish::trNamespaceMembersDescriptionTotal(), TranslatorPortuguese::trNamespaceMembersDescriptionTotal(), TranslatorSpanish::trNamespaceMembersDescriptionTotal(), tryPath(), unescapeCharsInString(), unsetDotFontPath(), 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(), DotNode::writeBox(), NamespaceDefImpl::writeBriefDescription(), LatexCodeGenerator::writeCodeLink(), ManCodeGenerator::writeCodeLink(), RTFCodeGenerator::writeCodeLink(), MemberDefImpl::writeDeclaration(), NamespaceLinkedRefMap::writeDeclaration(), ClassDefImpl::writeDeclarationLink(), ConceptDefImpl::writeDeclarationLink(), ModuleDefImpl::writeDeclarationLink(), MemberList::writeDeclarations(), DotNode::writeDEF(), writeDefArgumentList(), writeDEFString(), ClassDefImpl::writeDetailedDescription(), GroupDefImpl::writeDirs(), DefinitionImpl::writeDocAnchorsToTagFile(), DotNode::writeDocbook(), writeDocbookCodeString(), writeDocbookLink(), FileDefImpl::writeDocumentation(), GroupDefImpl::writeDocumentation(), MemberDefImpl::writeDocumentation(), MemberList::writeDocumentation(), PageDefImpl::writeDocumentation(), MemberDefImpl::writeEnumDeclaration(), 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(), HtmlGenerator::writeInheritedSectionTitle(), DefinitionImpl::writeInlineCode(), writeJavasScriptSearchDataPage(), DocbookCodeGenerator::writeLineNumber(), HtmlCodeGenerator::writeLineNumber(), LatexCodeGenerator::writeLineNumber(), RTFCodeGenerator::writeLineNumber(), XMLCodeGenerator::writeLineNumber(), TextGeneratorSqlite3Impl::writeLink(), writeMapArea(), Markdown::Private::writeMarkdownImage(), MemberDefImpl::writeMemberDocSimple(), ClassDefImpl::writeMemberList(), writeMemberList(), writeMemberReference(), MermaidManager::writeMermaidSource(), ClassDefImpl::writeMoreLink(), writeMscImageMapFromFile(), writeMultiLineCodeLink(), writeMultiLineCodeLink(), writeNamespaceTreeElement(), GroupDefImpl::writeNestedGroups(), HtmlDocVisitor::writeObfuscatedMailAddress(), writeObjCMethodCall(), HtmlGenerator::writeObjectLink(), PageDefImpl::writePageDocumentation(), PlantumlManager::writePlantUMLSource(), VhdlDocGen::writeRecordUnit(), RequirementManager::writeRef(), FlowChart::writeShape(), writeSingleFileIndex(), VhdlDocGen::writeSource(), FileDefImpl::writeSourceBody(), DefinitionImpl::writeSourceDef(), FileDefImpl::writeSourceHeader(), HtmlGenerator::writeStartAnnoItem(), LatexGenerator::writeStartAnnoItem(), RTFGenerator::writeStartAnnoItem(), Image::writeString(), ConfigOption::writeStringValue(), HtmlGenerator::writeStyleInfo(), DirDefImpl::writeSubDirList(), HtmlGenerator::writeSummaryLink(), ClassDefImpl::writeTagFile(), ConceptDefImpl::writeTagFile(), MemberDefImpl::writeTagFile(), ModuleDefImpl::writeTagFile(), NamespaceDefImpl::writeTagFile(), writeTagFile(), ConfigBool::writeTemplate(), ConfigEnum::writeTemplate(), ConfigImpl::writeTemplate(), ConfigInt::writeTemplate(), ConfigList::writeTemplate(), ConfigString::writeTemplate(), ClassDefImpl::writeTemplateSpec(), DefinitionImpl::writeToc(), DocSets::writeToken(), HtmlCodeGenerator::writeTooltip(), DotNode::writeUrl(), VhdlDocGen::writeVHDLDeclaration(), VhdlDocGen::writeVHDLDeclarations(), VhdlDocGen::writeVhdlLink(), writeWord(), DotNode::writeXML(), writeXMLCodeString(), writeXMLDocBlock(), writeXMLLink(), and HtmlEntityMapper::writeXMLSchema().

◆ end() [1/2]

iterator DString::end ( )
inline

Definition at line 187 of file dstring.h.

187{ return m_rep.end(); }

References m_rep.

Referenced by findAndRemoveWord(), quoted(), stripLeadingAndTrailingEmptyLines(), and stripWhiteSpace().

◆ end() [2/2]

const_iterator DString::end ( ) const
inline

Definition at line 188 of file dstring.h.

188{ return m_rep.end(); }

References m_rep.

◆ endsWith() [1/3]

◆ endsWith() [2/3]

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

Definition at line 634 of file dstring.h.

635 {
636 size_t l = s.length();
637 return m_rep.length()>=l && m_rep.compare(m_rep.length()-l, l, s.str())==0;
638 }

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

◆ endsWith() [3/3]

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

Definition at line 628 of file dstring.h.

629 {
630 size_t l = s.length();
631 return m_rep.length()>=l && m_rep.compare(m_rep.length()-l, l, s)==0;
632 }

References m_rep.

◆ erase()

DString & DString::erase ( size_t index = 0,
size_t count = npos )
inline

Definition at line 236 of file dstring.h.

236{ m_rep.erase(index,count); return *this; }

References DString(), m_rep, and npos.

◆ fill()

DString DString::fill ( char c,
size_t len )
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 282 of file dstring.h.

283 {
284 //int l = len==-1 ? static_cast<int>(m_rep.size()) : len;
285 m_rep = std::string(len,c);
286 return *this;
287 }

References DString(), and m_rep.

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

◆ find() [1/4]

size_t DString::find ( char c,
size_t pos = 0 ) const
inline

Definition at line 243 of file dstring.h.

243{ return m_rep.find(c,pos); }

References m_rep.

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(), associateVariableWithAnonymousEnumType(), buildDictionaryList(), buildFunctionList(), buildScopeFromQualifiedName(), buildSequenceList(), buildTypedefList(), buildVarList(), Config::checkAndCorrect(), VHDLOutlineParser::checkInlineCode(), checkList(), combineArgsAndException(), computeClassRelations(), VhdlDocGen::convertFileNameToClassName(), DotFilePatcher::convertMapFile(), MemberList::countEnumValues(), createDVIFile(), createTagLessInstance(), demangleCSharpGenericName(), determineBlockName(), MemberDefImpl::displayDefinition(), DocInternalRef::DocInternalRef(), DocRef::DocRef(), DocGroup::enterCompound(), ExistsOnPath(), expandVAOpt(), extractBeginRawStringDelimiter(), extractBlock(), extractBoundingBox(), extractClassName(), extractFromParens(), extractLanguageSpecificTitle(), extractNoExcept(), extractPartAfterNewLine(), fileInfoLookup(), fillColorStyleMap(), filterMemberDocumentation(), VhdlDocGen::findAllArchitectures(), DocParser::findDocsForMemberOrCompound(), findGlobalMember(), findMember(), findPackageScopeFromPath(), generateClassOrGlobalLink(), generateDEFForClass(), generateFileSources(), generateFunctionLink(), CitationManager::generatePage(), generateXML(), generateXMLForMember(), getDotImageExtension(), getFilteredImageAttributes(), getFilterFromList(), getLinkInScope(), ParserManager::getParsers(), 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(), makeQualifiedNameWithTemplateParameters(), makeTemplateInstanceRelation(), mangleCSharpGenericName(), matchCanonicalTypes(), matchExcludedSymbols(), mergeArguments(), DirDefImpl::mergeDirectoryInTree(), nameIsOperator(), SymbolResolver::Private::newResolveTypedef(), normalizeNonTemplateArgumentsInString(), VHDLOutlineParser::oneLineComment(), SymbolModifiers::operator|=(), DocIncOperator::parse(), 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(), SearchIndexExternal::setCurrentDoc(), 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(), writeFileIndex(), VhdlDocGen::writeFormatString(), LatexDocVisitor::writePlantUMLFile(), VhdlDocGen::writeRecordUnit(), VhdlDocGen::writeSource(), DefinitionImpl::writeSourceDef(), and DotNode::writeXML().

◆ find() [2/4]

size_t DString::find ( const char * s,
size_t pos = 0 ) const
inline

Definition at line 244 of file dstring.h.

244{ return s?m_rep.find(s,pos):npos; }
static constexpr size_t npos
value used to indicate 'not found' or 'to the end of the string', matching std::string::npos
Definition dstring.h:182

References m_rep, and npos.

◆ find() [3/4]

size_t DString::find ( const DString & s,
size_t pos = 0 ) const
inline

Definition at line 245 of file dstring.h.

245{ return m_rep.find(s.str(),pos); }

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

◆ find() [4/4]

size_t DString::find ( const std::string & s,
size_t pos = 0 ) const
inline

Definition at line 246 of file dstring.h.

246{ return m_rep.find(s,pos); }

References m_rep.

◆ find_first_not_of() [1/4]

size_t DString::find_first_not_of ( char c,
size_t pos = 0 ) const
inline

Definition at line 266 of file dstring.h.

266{ return m_rep.find_first_not_of(c,pos); }

References m_rep.

◆ find_first_not_of() [2/4]

size_t DString::find_first_not_of ( const char * s,
size_t pos = 0 ) const
inline

Definition at line 267 of file dstring.h.

267{ return s?m_rep.find_first_not_of(s,pos):npos; }

References m_rep, and npos.

◆ find_first_not_of() [3/4]

size_t DString::find_first_not_of ( const DString & s,
size_t pos = 0 ) const
inline

Definition at line 268 of file dstring.h.

268{ return m_rep.find_first_not_of(s.str(),pos); }

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

◆ find_first_not_of() [4/4]

size_t DString::find_first_not_of ( const std::string & s,
size_t pos = 0 ) const
inline

Definition at line 269 of file dstring.h.

269{ return m_rep.find_first_not_of(s,pos); }

References m_rep.

◆ find_first_of() [1/4]

size_t DString::find_first_of ( char c,
size_t pos = 0 ) const
inline

Definition at line 256 of file dstring.h.

256{ return m_rep.find_first_of(c,pos); }

References m_rep.

◆ find_first_of() [2/4]

size_t DString::find_first_of ( const char * s,
size_t pos = 0 ) const
inline

Definition at line 257 of file dstring.h.

257{ return s?m_rep.find_first_of(s,pos):npos; }

References m_rep, and npos.

◆ find_first_of() [3/4]

size_t DString::find_first_of ( const DString & s,
size_t pos = 0 ) const
inline

Definition at line 258 of file dstring.h.

258{ return m_rep.find_first_of(s.str(),pos); }

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

◆ find_first_of() [4/4]

size_t DString::find_first_of ( const std::string & s,
size_t pos = 0 ) const
inline

Definition at line 259 of file dstring.h.

259{ return m_rep.find_first_of(s,pos); }

References m_rep.

◆ find_last_not_of() [1/4]

size_t DString::find_last_not_of ( char c,
size_t pos = npos ) const
inline

Definition at line 271 of file dstring.h.

271{ return m_rep.find_last_not_of(c,pos); }

References m_rep, and npos.

◆ find_last_not_of() [2/4]

size_t DString::find_last_not_of ( const char * s,
size_t pos = npos ) const
inline

Definition at line 272 of file dstring.h.

272{ return s?m_rep.find_last_not_of(s,pos):npos; }

References m_rep, and npos.

◆ find_last_not_of() [3/4]

size_t DString::find_last_not_of ( const DString & s,
size_t pos = npos ) const
inline

Definition at line 273 of file dstring.h.

273{ return m_rep.find_last_not_of(s.str(),pos); }

References DString(), m_rep, npos, and str().

◆ find_last_not_of() [4/4]

size_t DString::find_last_not_of ( const std::string & s,
size_t pos = npos ) const
inline

Definition at line 274 of file dstring.h.

274{ return m_rep.find_last_not_of(s,pos); }

References m_rep, and npos.

◆ find_last_of() [1/4]

size_t DString::find_last_of ( char c,
size_t pos = npos ) const
inline

Definition at line 261 of file dstring.h.

261{ return m_rep.find_last_of(c,pos); }

References m_rep, and npos.

◆ find_last_of() [2/4]

size_t DString::find_last_of ( const char * s,
size_t pos = npos ) const
inline

Definition at line 262 of file dstring.h.

262{ return s?m_rep.find_last_of(s,pos):npos; }

References m_rep, and npos.

◆ find_last_of() [3/4]

size_t DString::find_last_of ( const DString & s,
size_t pos = npos ) const
inline

Definition at line 263 of file dstring.h.

263{ return m_rep.find_last_of(s.str(),pos); }

References DString(), m_rep, npos, and str().

◆ find_last_of() [4/4]

size_t DString::find_last_of ( const std::string & s,
size_t pos = npos ) const
inline

Definition at line 264 of file dstring.h.

264{ return m_rep.find_last_of(s,pos); }

References m_rep, and npos.

◆ findAndRemoveWord()

bool DString::findAndRemoveWord ( const char * word)

removes occurrences of whole word from this string, while keeping internal spaces and reducing multiple sequences of spaces.

Example: cat+ catfish cat cat concat cat, word=cat returns: + catfish concat

Parameters
wordThe word to search for and remove from this string.
Returns
true if at least one occurrence of word was found and removed, false otherwise

Definition at line 656 of file dstring.cpp.

657{
658 static reg::Ex re(R"(\s*(<\a+>)\s*)");
659 std::string s = m_rep;
660 reg::Iterator it(s,re);
661 reg::Iterator end;
662 std::string result;
663 bool found=false;
664 size_t p=0;
665 for ( ; it!=end ; ++it)
666 {
667 const auto &match = *it;
668 std::string part = match[1].str();
669 if (part!=word)
670 {
671 size_t i = match.position();
672 size_t l = match.length();
673 result+=s.substr(p,i-p);
674 result+=match.str();
675 p=i+l;
676 }
677 else
678 {
679 found=true;
680 size_t i = match[1].position();
681 size_t l = match[1].length();
682 result+=s.substr(p,i-p);
683 p=i+l;
684 }
685 }
686 result+=s.substr(p);
687 m_rep = DString(result).simplifyWhiteSpace().str();
688 return found;
689}
DString()=default
iterator end()
Definition dstring.h:187
bool match(std::string_view str, Match &match, const Ex &re)
Matches a given string str for a match against regular expression re.
Definition regex.cpp:858

References DString(), end(), and m_rep.

Referenced by isVarWithConstructor().

◆ front() [1/2]

char & DString::front ( )
inline

Returns a reference to the first character.

Undefined behavior if the string is empty.

Definition at line 199 of file dstring.h.

199{ return m_rep.front(); }

References m_rep.

◆ front() [2/2]

const char & DString::front ( ) const
inline

Definition at line 200 of file dstring.h.

200{ return m_rep.front(); }

References m_rep.

◆ insert() [1/4]

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

Definition at line 487 of file dstring.h.

488 {
489 char s[2] = { c, '\0' };
490 return insert(index,s);
491 }
DString & insert(size_t index, const DString &s)
Definition dstring.h:429

References DString(), and insert().

◆ insert() [2/4]

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

Definition at line 467 of file dstring.h.

468 {
469 size_t len = s ? dstrlen(s) : 0;
470 if (len>0)
471 {
472 size_t ol = m_rep.size();
473 if (index>ol) // insert beyond end of string and fill gap with spaces
474 {
475 m_rep.resize(index+len);
476 std::memset(&m_rep[ol],' ',index-ol);
477 std::memcpy(&m_rep[index],s,len+1);
478 }
479 else // insert inside the string
480 {
481 m_rep.insert(index,s);
482 }
483 }
484 return *this;
485 }

References DString(), dstrlen(), and m_rep.

◆ insert() [3/4]

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

Definition at line 429 of file dstring.h.

430 {
431 if (s.length()>0)
432 {
433 size_t ol = m_rep.size();
434 if (index>ol) // insert beyond end of string and fill gap with spaces
435 {
436 m_rep.resize(index+s.length());
437 std::memset(&m_rep[ol],' ',index-ol);
438 std::memcpy(&m_rep[index],s.data(),s.length()+1);
439 }
440 else // insert inside the string
441 {
442 m_rep.insert(index,s.str());
443 }
444 }
445 return *this;
446 }

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

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

◆ insert() [4/4]

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

Definition at line 448 of file dstring.h.

449 {
450 if (s.length()>0)
451 {
452 size_t ol = m_rep.size();
453 if (index>ol) // insert beyond end of string and fill gap with spaces
454 {
455 m_rep.resize(index+s.length());
456 std::memset(&m_rep[ol],' ',index-ol);
457 std::memcpy(&m_rep[index],s.data(),s.length()+1);
458 }
459 else // insert inside the string
460 {
461 m_rep.insert(index,s);
462 }
463 }
464 return *this;
465 }

References DString(), and m_rep.

◆ integerToAlpha()

DString DString::integerToAlpha ( int n,
bool upper = true )
static

Definition at line 618 of file dstring.cpp.

619{
620 DString result;
621 int residual = n;
622
623 char modVal[2];
624 modVal[1] = 0;
625 while (residual > 0)
626 {
627 modVal[0] = (upper ? 'A': 'a') + (residual-1)%26;
628 result = modVal + result;
629 residual = (residual-1) / 26;
630 }
631 return result;
632}
DString upper() const
Definition dstring.h:335

References DString(), and upper().

Referenced by ManDocVisitor::operator()(), and RTFDocVisitor::operator()().

◆ integerToRoman()

DString DString::integerToRoman ( int n,
bool upper = true )
static

Definition at line 634 of file dstring.cpp.

635{
636 static const char *str_romans_upper[] = { "M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I" };
637 static const char *str_romans_lower[] = { "m", "cm", "d", "cd", "c", "xc", "l", "xl", "x", "ix", "v", "iv", "i" };
638 static const int values[] = { 1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1 };
639 static const char **str_romans = upper ? str_romans_upper : str_romans_lower;
640
641 DString result;
642 int residual = n;
643
644 for (int i = 0; i < 13; ++i)
645 {
646 while (residual - values[i] >= 0)
647 {
648 result += str_romans[i];
649 residual -= values[i];
650 }
651 }
652
653 return result;
654}

References DString(), and upper().

Referenced by LatexDocVisitor::operator()(), ManDocVisitor::operator()(), and RTFDocVisitor::operator()().

◆ left()

DString DString::left ( size_t len) const
inline

Definition at line 310 of file dstring.h.

311 {
312 return m_rep.empty() ? DString() : DString(m_rep.substr(0,len));
313 }
DString substr(size_t pos=0, size_t count=npos) const
Returns a substring of length count starting at pos.
Definition dstring.h:227

References DString(), and m_rep.

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(), DocParser::defaultHandleTitleAndSize(), demangleCSharpGenericName(), determineBlockName(), DirDefImpl::DirDefImpl(), MemberDefImpl::displayDefinition(), DocInternalRef::DocInternalRef(), DocRef::DocRef(), LayoutParser::endElement(), LayoutParser::endMemberDecl(), LayoutParser::endMemberDef(), DocGroup::enterCompound(), expandExpression(), extractClassName(), extractLanguageSpecificTitle(), extractNamespaceName(), extractNoExcept(), Markdown::Private::extractTitleId(), fillColorStyleMap(), filterMemberDocumentation(), DocParser::findAndCopyImage(), findClassRelation(), findDirDocumentation(), DocParser::findDocsForMemberOrCompound(), findEnumDocumentation(), findEnums(), FileNameLinkedMap::findFileDef(), findGlobalMember(), findMember(), findPackageScopeFromPath(), findScopeFromQualifiedName(), findUsingDeclImports(), findUsingDirectives(), generateClassOrGlobalLink(), generateClassOrGlobalLink(), generateFunctionLink(), generateFunctionLink(), generateMemberLink(), CitationManager::generatePage(), PlantumlManager::generatePlantUmlFileNames(), generateXMLForMember(), getBaseNameOfOutput(), getDotImageExtension(), getFilteredImageAttributes(), getFilterFromList(), getMemberFromSymbol(), ParserManager::getParsers(), SymbolResolver::Private::getResolvedSymbolRec(), SymbolResolver::Private::getResolvedTypeRec(), getScopeDefs(), getTemplateArgumentsFromName(), DocPara::handleCommand(), DocParser::handleLinkedWord(), handleToc(), initUCF(), insertTemplateSpecifierInScope(), Markdown::Private::isAtxHeader(), isCastKeyword(), MemberDefImpl::isDocumentedFriendClass(), isRecursiveBaseClass(), isURL(), isVarWithConstructor(), DiagramItem::label(), leftScopeMatch(), linkifyText(), Htags::loadFilemap(), makeDisplayName(), makeTemplateInstanceRelation(), mangleCSharpGenericName(), markdownFileNameToId(), matchCanonicalTypes(), matchExcludedSymbols(), mergeArguments(), mergeCategories(), DirDefImpl::mergeDirectoryInTree(), ClassDefImpl::mergeMembersFromBaseClasses(), mergeScopes(), DefinitionImpl::navigationPathAsString(), SymbolResolver::Private::newResolveTypedef(), normalizeNonTemplateArgumentsInString(), LatexDocVisitor::operator()(), DocLink::parse(), DocParamList::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(), MemberDefImpl::setInitializer(), StyleData::setStyle(), FileNameLinkedMap::showFileDefMatches(), simplifyTypeForTable(), splitKnRArg(), splitString(), stripAnonymousNamespaceScope(), stripComment(), stripDeclKeywords(), stripExtensionGeneral(), stripFromPath(), stripFuncPtr(), stripIrrelevantString(), stripKnownExtensions(), stripWord(), substituteKeywords(), substituteTemplateArgumentsInString(), trimBaseClassScope(), DotAttributes::updateValue(), MemberDefImpl::writeDeclaration(), DotNode::writeDEF(), writeDefArgumentList(), FileDefImpl::writeDetailedDescription(), DotNode::writeDocbook(), MemberDefImpl::writeDocumentation(), writeExceptionListImpl(), HtmlGenerator::writeExternalSearchPage(), HtmlHelpIndex::writeFields(), VhdlDocGen::writeFormatString(), writeGroupTreeNode(), ClassDefImpl::writeIncludeFilesForSlice(), MemberDefImpl::writeMemberDocSimple(), MermaidManager::writeMermaidSource(), PlantumlManager::writePlantUMLSource(), VhdlDocGen::writeRecordUnit(), VhdlDocGen::writeSource(), DefinitionImpl::writeSourceDef(), ConfigBool::writeTemplate(), ConfigEnum::writeTemplate(), ConfigInt::writeTemplate(), ConfigList::writeTemplate(), ConfigString::writeTemplate(), DocSets::writeToken(), DotNode::writeUrl(), and DotNode::writeXML().

◆ length()

size_t DString::length ( ) const
inline

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

Equivalent to size().

Definition at line 155 of file dstring.h.

155{ return m_rep.size(); }

References m_rep.

Referenced by DefinitionImpl::_setBriefDescription(), HtmlCodeGenerator::_writeCodeLink(), MemberDefImpl::_writeReimplements(), abbreviate(), addEnumValuesToEnums(), addIncludeFile(), DocSets::addIndexItem(), addMemberToGroups(), addRelatedPage(), addSeparatorsIfNeeded(), addTemplateNames(), addVariable(), FlowChart::alignCommentNode(), FlowChart::alignFuncProc(), alignText(), buildDirectories(), buildFileName(), buildFunctionList(), buildGroupListFiltered(), charsToIndex(), Config::checkAndCorrect(), DocParser::checkArgumentName(), checkExtension(), VHDLOutlineParser::checkInlineCode(), DocParser::checkUnOrMultipleDocumentedParams(), checkVhdlString(), computeCommonDirPrefix(), computeQualifiedIndex(), computeVerifiedDotPath(), configStringRecode(), contains(), contains(), HtmlEntityMapper::convertCharEntitiesToUTF8(), TranslatorPersian::convertDigitsToFarsi(), DotNode::convertLabel(), convertNameToFile(), DocbookGenerator::convertToDocbook(), convertToHtml(), convertToHtmlAndTruncate(), convertToId(), convertToJSString(), convertToPSString(), convertToXML(), Translator::createNoun(), createOutputDirectory(), DocParser::defaultHandleTitleAndSize(), detab(), DotClassGraph::determineVisibleNodes(), DirDefImpl::DirDefImpl(), MemberDefImpl::displayDefinition(), DocAnchor::DocAnchor(), DocEmoji::DocEmoji(), docifyToString(), docifyToString(), DocRef::DocRef(), elemIsVisible(), encodeForOutput(), LayoutParser::endElement(), endsWith(), escapeCharsInString(), escapeId(), expandVAOpt(), externalRef(), DefinitionImpl::externalReference(), extractBeginRawStringDelimiter(), extractBind(), extractBlock(), extractClassNameFromType(), extractEndRawStringDelimiter(), extractFromParens(), extractLanguageSpecificTitle(), extractNamespaceName(), extractNoExcept(), extractTrailingComment(), filter2008VhdlComment(), filterId(), HtmlDocVisitor::filterQuotedCdataAttr(), DocParser::findAndCopyImage(), findClassRelation(), findDirDocumentation(), DocParser::findDocsForMemberOrCompound(), Markdown::Private::findEmphasisChar(), Markdown::Private::findEndOfLine(), findEndOfTemplate(), findEnums(), FileNameLinkedMap::findFileDef(), findTemplateSpecializationPosition(), findUsingDeclImports(), findUsingDirectives(), format_warn(), VhdlDocGen::formatString(), generateClassOrGlobalLink(), getConvertLatexMacro(), getCurrentChar(), getExtension(), getFileFilter(), CitationManager::getFormulas(), getNextChar(), getNextId(), ParserManager::getParsers(), getPrefixIndex(), SymbolResolver::Private::getResolvedSymbolRec(), SymbolResolver::Private::getResolvedTypeRec(), getScopeDefs(), getScopeFragment(), handle_warn_as_error(), DocParser::handleLinkedWord(), DocPara::handleStartCode(), DocParser::handleStyleArgument(), insert(), ClassDefImpl::internalInsertMember(), Portable::isAbsolutePath(), Markdown::Private::isAtxHeader(), isConstraintFile(), DocFormula::isInline(), DocImage::isSVG(), isVarWithConstructor(), DiagramItem::label(), latexEscapeIndexChars(), latexEscapeLabelName(), leftScopeMatch(), makeDisplayName(), matchArgument2(), matchExcludedSymbols(), DirDefImpl::matchPath(), mergeArguments(), ClassDefImpl::mergeMembersFromBaseClasses(), mergeScopes(), nameIsActuallyPartOfType(), DefinitionImpl::navigationPathAsString(), SymbolResolver::Private::newResolveTypedef(), HtmlDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), ManDocVisitor::operator()(), RTFDocVisitor::operator()(), TextDocVisitor::operator()(), XmlDocVisitor::operator()(), DocInclude::parse(), DocLink::parse(), FileCodeParser::parseCode(), parseCommentAsText(), parseFuncDecl(), VhdlDocGen::parseFuncProto(), parseMain(), Htags::path2URL(), Markdown::process(), Markdown::Private::processBlocks(), DocParser::processCopyDoc(), Markdown::Private::processLink(), processList(), Markdown::Private::processQuotations(), Markdown::Private::processSpecialCommand(), processString(), projectLogoSize(), DocTokenizer::pushBackHtmlTag(), readCodeFragment(), readIncludeFile(), readIncludeFile(), HtmlHelpRecoder::recode(), Portable::recodeUtf8StringToW(), recognizeFixedForm(), removeRedundantWhiteSpace(), replaceFunctionMacro(), replaceVariables(), resolveRef(), resolveSymlink(), resolveUserReferences(), rfind_insensitive(), rfind_insensitive(), rightScopeMatch(), rtfFormatBmkStr(), DotFilePatcher::run(), DotRunner::run(), runMermaid(), searchInputFiles(), searchTemplateSpecs(), selectBlocks(), MemberDefImpl::setInitializer(), simplifyTypeForTable(), simplifyWhiteSpace(), skipToEndMarker(), splitSearchTokens(), sprintf(), startsWithKeyword(), stringize(), stripAnonymousNamespaceScope(), stripComment(), stripExtensionGeneral(), stripFuncPtr(), stripIrrelevantString(), stripKnownExtensions(), stripLeadingAndTrailingEmptyLines(), stripQuotes(), stripQuotes(), stripScope(), stripTemplateSpecifiers(), stripTemplateSpecifiersFromScope(), stripTrailingWhiteSpace(), stripWord(), substEnvVarsInStrList(), substitute(), substitute(), substituteKeywords(), SymbolResolver::Private::substTypedef(), SearchTerm::termEncoded(), toLong(), toUInt64(), toULong(), trimBaseClassScope(), Trace::trunc(), TranslatorJapanese::trWriteList(), unescapeCharsInString(), unputChar(), DocTokenizer::unputString(), validatingParseDoc(), DocbookCodeGenerator::writeCodeLink(), LatexCodeGenerator::writeCodeLink(), RTFCodeGenerator::writeCodeLink(), XMLCodeGenerator::writeCodeLink(), DocbookCodeGenerator::writeCodeLinkLine(), writeDefArgumentList(), FileDefImpl::writeDetailedDescription(), MemberDefImpl::writeDocumentation(), writeInlineGraph(), HtmlGenerator::writeLabel(), MermaidManager::writeMermaidSource(), PlantumlManager::writePlantUMLSource(), FlowChart::writeShape(), writeSingleFileIndex(), writeString(), ConfigOption::writeStringList(), ConfigBool::writeTemplate(), ConfigEnum::writeTemplate(), ConfigInt::writeTemplate(), ConfigList::writeTemplate(), ConfigString::writeTemplate(), ClassDefImpl::writeTemplateSpec(), DocSets::writeToken(), writeUCFLink(), writeWord(), DotNode::writeXML(), and HtmlEntityMapper::writeXMLSchema().

◆ lower()

DString DString::lower ( ) const
inline

Definition at line 330 of file dstring.h.

331 {
333 }
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:188

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

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(), ConfigEnum::convertStrToVal(), VhdlDocGen::correctMemberProperties(), DocRef::DocRef(), DocStyleChange::DocStyleChange(), DocStyleChange::DocStyleChange(), elemIsVisible(), endScope(), extractClassNameFromType(), CitationManager::find(), findArgument(), FileNameLinkedMap::findFileDef(), VhdlDocGen::findKeyWord(), VhdlDocGen::findMember(), generateLink(), CitationManager::generatePage(), getFilteredImageAttributes(), getFilterFromList(), getFortranDefs(), getLanguageFromCodeLang(), getLanguageFromFileName(), getParameter(), ParserManager::getParsers(), EntryType::guessSection(), DocPara::handleCommand(), handleFileInfoResult(), handleHtmlTag(), DocParser::handleImage(), handleImage(), handleInheritanceGraph(), DocParser::handleStyleLeave(), handleToc(), PageDefImpl::hasTitle(), 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(), VhdlConfNode::VhdlConfNode(), Markdown::Private::writeBlockQuote(), writeColoredWord(), and ClassDefImpl::writeTemplateSpec().

◆ max_size()

size_t DString::max_size ( ) const
inline

Definition at line 210 of file dstring.h.

210{ return m_rep.max_size(); }

References m_rep.

◆ mid()

DString DString::mid ( size_t index,
size_t len = npos ) const
inline

Definition at line 322 of file dstring.h.

323 {
324 size_t slen = m_rep.size();
325 if (len==npos) len = slen-index;
326 return m_rep.empty() || index>slen || len==0 ? DString() :
327 DString(m_rep.substr(index,len));
328 }

References DString(), m_rep, and npos.

Referenced by MemberDefImpl::_writeCategoryRelation(), MemberDefImpl::_writeEnumValues(), abbreviate(), VhdlDocGen::addBaseClass(), addClassToContext(), VHDLOutlineParser::addCompInst(), addEnumValuesToEnums(), addIncludeFile(), addMacroDefinition(), addMemberFunction(), addModule(), addTemplateNames(), addToMap(), ClassDefImpl::addTypeConstraints(), addVariable(), adjustConfiguration(), argListToString(), buildFunctionList(), buildScopeFromQualifiedName(), buildTypedefList(), VHDLOutlineParser::checkInlineCode(), checkList(), checkVhdlString(), combineArgsAndException(), convertFileId2Var(), DotFilePatcher::convertMapFile(), MemberList::countEnumValues(), createJavaScriptSearchIndex(), Translator::createNoun(), DirDefImpl::DirDefImpl(), MemberDefImpl::displayDefinition(), DocInternalRef::DocInternalRef(), DocRef::DocRef(), elemIsVisible(), ExistsOnPath(), expandExpression(), expandVAOpt(), DocInclude::extension(), extractBeginRawStringDelimiter(), extractBind(), extractBlock(), extractCanonicalType(), extractClassNameFromType(), extractEndRawStringDelimiter(), extractLanguageSpecificTitle(), extractNamespaceName(), extractNoExcept(), Markdown::extractPageTitle(), extractPartAfterNewLine(), fillColorStyleMap(), filterMemberDocumentation(), VhdlDocGen::findAllArchitectures(), DocParser::findAndCopyImage(), findClassRelation(), DocParser::findDocsForMemberOrCompound(), findEnumDocumentation(), FileNameLinkedMap::findFileDef(), findGlobalMember(), findMember(), findPackageScopeFromPath(), findParameterList(), findScopeFromQualifiedName(), findUsingDeclImports(), SymbolResolver::Private::followPath(), generateClassOrGlobalLink(), generateClassOrGlobalLink(), generateFunctionLink(), generateFunctionLink(), generateMemberLink(), MermaidManager::generateMermaidOutput(), CitationManager::generatePage(), PerlModGenerator::generatePerlModForMember(), PlantumlManager::generatePlantUMLOutput(), generateSqlite3ForMember(), generateXMLForMember(), getCanonicalTemplateSpec(), getExtension(), getFileFilter(), getFileNameExtension(), getFilteredImageAttributes(), getFilterFromList(), getLanguageFromCodeLang(), getLinkInScope(), getMemberFromSymbol(), getParserForFile(), SymbolResolver::Private::getResolvedSymbolRec(), SymbolResolver::Private::getResolvedTypeRec(), getScopeDefs(), EntryType::guessSection(), DocPara::handleCommand(), handleHtmlTag(), DocParser::handleImage(), handleImage(), DocParser::handleParameterType(), handleToc(), CitationManager::insertCrossReferencesForBibFile(), insertTemplateSpecifierInScope(), ClassDefImpl::isExtension(), DocImage::isSVG(), linkifyText(), linkToText(), Htags::loadFilemap(), makeDisplayName(), makeFileName(), makeFileName(), makeTemplateInstanceRelation(), matchCanonicalTypes(), matchExcludedSymbols(), mergeScopes(), SymbolResolver::Private::newResolveTypedef(), node2URL(), normalizeNonTemplateArgumentsInString(), VHDLOutlineParser::oneLineComment(), DocbookDocVisitor::operator()(), HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), PerlModDocVisitor::operator()(), TextDocVisitor::operator()(), XmlDocVisitor::operator()(), DocIncOperator::parse(), DocPara::parse(), DocParamList::parse(), FileCodeParser::parseCode(), parseFile(), parseFuncDecl(), VhdlDocGen::parseFuncProto(), MarkdownOutlineParser::parseInput(), Htags::path2URL(), VhdlDocGen::prepareComment(), Markdown::process(), Markdown::Private::processLink(), processString(), projectLogoSize(), readIncludeFile(), readIncludeFile(), readTagFile(), Portable::removeLongPathMarker(), CitationManager::replaceFormulas(), replaceNamespaceAliasesRec(), replaceRef(), replaceVariables(), resolveRef(), resolveSymlink(), resolveTemplateInstanceInType(), resolveTypeDef(), DotFilePatcher::run(), MemberList::setAnonymousEnumType(), setCallContextForVar(), setClassScope(), StyleData::setStyle(), FileNameLinkedMap::showFileDefMatches(), splitKnRArg(), splitSearchTokens(), ManGenerator::startDoxyAnchor(), stripAnonymousNamespaceScope(), stripComment(), stripDeclKeywords(), stripFromPath(), stripIrrelevantString(), stripLeadingAndTrailingEmptyLines(), stripPath(), stripProtectionPrefix(), stripQuotes(), stripQuotes(), stripTemplateSpecifiersFromScope(), stripTrailingReturn(), stripWord(), subrHandleCommentBlock(), 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(), DotAttributes::updateValue(), LayoutNavEntry::url(), MemberDefImpl::writeDeclaration(), DotNode::writeDEF(), writeDefArgumentList(), DotNode::writeDocbook(), MemberDefImpl::writeDocumentation(), MemberDefImpl::writeEnumDeclaration(), writeExceptionList(), writeExceptionListImpl(), HtmlGenerator::writeExternalSearchPage(), HtmlHelpIndex::writeFields(), writeGroupTreeNode(), ClassDefImpl::writeIncludeFilesForSlice(), Markdown::Private::writeMarkdownImage(), MemberDefImpl::writeMemberDocSimple(), writeMscGraphFromFile(), writeObjCMethodCall(), PlantumlManager::writePlantUMLSource(), DefinitionImpl::writeSourceDef(), ConfigOption::writeStringList(), DotNode::writeUrl(), DotNode::writeXML(), and HtmlEntityMapper::writeXMLSchema().

◆ operator+=() [1/4]

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

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

Definition at line 673 of file dstring.h.

674 {
675 if (s) m_rep+=s;
676 return *this;
677 }

References DString(), and m_rep.

◆ operator+=() [2/4]

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

Definition at line 654 of file dstring.h.

655 {
656 m_rep+=s.str();
657 return *this;
658 }

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

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

◆ operator+=() [3/4]

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

Definition at line 660 of file dstring.h.

661 {
662 m_rep+=s;
663 return *this;
664 }

References DString(), and m_rep.

◆ operator+=() [4/4]

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

Definition at line 666 of file dstring.h.

667 {
668 m_rep+=s;
669 return *this;
670 }

References DString(), and m_rep.

◆ operator=() [1/7]

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

replaces the contents by that of C string str.

Definition at line 147 of file dstring.h.

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

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

◆ operator=() [2/7]

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

References DString().

Referenced by assign(), assign(), and assign().

◆ operator=() [3/7]

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

Definition at line 124 of file dstring.h.

125 {
126 m_rep.resize(s.size());
127 std::memcpy(m_rep.data(),s.data(),s.size());
128 return *this;
129 }

References DString(), and m_rep.

◆ operator=() [4/7]

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

Definition at line 149 of file dstring.h.

149{ m_rep = s; return *this; }

References DString(), and m_rep.

◆ operator=() [5/7]

DString & DString::operator= ( DString && )
default

References DString().

◆ operator=() [6/7]

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

Definition at line 101 of file dstring.h.

102 {
103 m_rep=std::move(s);
104 return *this;
105 }

References DString(), and m_rep.

◆ operator=() [7/7]

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

Definition at line 109 of file dstring.h.

110 {
111 m_rep=sv;
112 return *this;
113 }

References DString(), and m_rep.

◆ operator[]() [1/2]

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

Indexing operator.

Equivalent to at().

Definition at line 701 of file dstring.h.

702 {
703 return m_rep[i];
704 }

References m_rep.

◆ operator[]() [2/2]

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

Definition at line 706 of file dstring.h.

707 {
708 return m_rep[i];
709 }

References m_rep.

◆ pop_back()

void DString::pop_back ( )
inline

Definition at line 207 of file dstring.h.

207{ m_rep.pop_back(); }

References m_rep.

◆ prepend() [1/4]

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

Definition at line 519 of file dstring.h.

520 {
521 return insert(0,s);
522 }

References DString(), and insert().

Referenced by DefinitionImpl::_writeSourceRefList(), addClassToContext(), addConceptToContext(), MemberDefImpl::addListReference(), addMemberFunction(), addModule(), RequirementManager::addRequirement(), addSTLClass(), ClassDefImpl::addUsedByClass(), ClassDefImpl::addUsedClass(), addVariable(), FlowChart::alignFuncProc(), MemberDefImpl::anchor(), buildFunctionList(), convertFileId2Var(), convertNameToFile(), correctURL(), VHDLOutlineParser::createFlow(), createOutputDirectory(), MemberDefImpl::displayDefinition(), DocEmoji::DocEmoji(), externalRef(), DefinitionImpl::externalReference(), MemberDefImpl::fieldType(), FileDefImpl::FileDefImpl(), 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(), 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(), HtmlGenerator::writeInheritedSectionTitle(), VhdlDocGen::writeInlineClassLink(), LatexCodeGenerator::writeLineNumber(), RTFCodeGenerator::writeLineNumber(), MemberDefImpl::writeLink(), writeMemberReference(), MermaidManager::writeMermaidSource(), HtmlDocVisitor::writeMscFile(), GroupDefImpl::writeNestedGroups(), writeSingleFileIndex(), VhdlDocGen::writeSource(), DirDefImpl::writeSubDirList(), VhdlDocGen::writeVHDLDeclaration(), and VhdlDocGen::writeVhdlLink().

◆ prepend() [2/4]

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

Definition at line 524 of file dstring.h.

525 {
526 return insert(0,s.data());
527 }

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

◆ prepend() [3/4]

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

Definition at line 529 of file dstring.h.

530 {
531 return insert(0,s.c_str());
532 }

References DString(), and insert().

◆ prepend() [4/4]

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

Definition at line 534 of file dstring.h.

535 {
536 return insert(0,s);
537 }

References DString(), and insert().

◆ push_back()

void DString::push_back ( char c)
inline

Definition at line 206 of file dstring.h.

206{ m_rep.push_back(c); }

References m_rep.

Referenced by Config::checkAndCorrect(), and readIncludeFile().

◆ quoted()

DString DString::quoted ( ) const
inline

Definition at line 356 of file dstring.h.

357 {
358 size_t start=0, sl=m_rep.size(), end=sl-1;
359 while (start<sl && disspace(m_rep[start])) start++; // skip over leading whitespace
360 if (start==sl) return DString(); // only whitespace
361 while (end>start && disspace(m_rep[end])) end--; // skip over trailing whitespace
362 bool needsQuotes=false;
363 size_t i=start;
364 if (i<end && m_rep[i]!='"') // stripped string has at least non-whitespace unquoted character
365 {
366 while (i<end && !needsQuotes) // check if the to be quoted part has at least one whitespace character
367 {
368 needsQuotes = m_rep[i] =='-';
369 needsQuotes |= disspace(m_rep[i++]);
370 }
371 }
372 DString result(m_rep.substr(start,1+end-start));
373 if (needsQuotes)
374 {
375 result.prepend("\"");
376 result.append("\"");
377 }
378 return result;
379 }
bool disspace(char c)
Definition dstring.h:66

References append(), disspace(), DString(), end(), m_rep, and prepend().

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

◆ rawData()

◆ rbegin() [1/2]

reverse_iterator DString::rbegin ( )
inline

Definition at line 191 of file dstring.h.

191{ return m_rep.rbegin(); }

References m_rep.

◆ rbegin() [2/2]

const_reverse_iterator DString::rbegin ( ) const
inline

Definition at line 192 of file dstring.h.

192{ return m_rep.rbegin(); }

References m_rep.

◆ remove()

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

◆ removeWhiteSpace()

DString DString::removeWhiteSpace ( ) const
inline

returns a copy of this string with all whitespace removed

Definition at line 382 of file dstring.h.

383 {
384 size_t sl = m_rep.size();
385 if (sl==0) return *this;
386 std::string result = m_rep;
387 size_t src=0,dst=0;
388 while (src<sl)
389 {
390 if (!disspace(m_rep[src])) result[dst++]=m_rep[src];
391 src++;
392 }
393 if (dst<m_rep.size()) result.resize(dst);
394 return DString(result);
395 }

References disspace(), DString(), and m_rep.

◆ rend() [1/2]

reverse_iterator DString::rend ( )
inline

Definition at line 194 of file dstring.h.

194{ return m_rep.rend(); }

References m_rep.

◆ rend() [2/2]

const_reverse_iterator DString::rend ( ) const
inline

Definition at line 195 of file dstring.h.

195{ return m_rep.rend(); }

References m_rep.

◆ repeat()

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

Definition at line 418 of file dstring.h.

419 {
420 DString result(n * size(), ExplicitSize);
421 size_t offset = 0;
422 for (offset = 0; offset < n * size(); offset += size())
423 {
424 memcpy(result.rawData() + offset, data(), size());
425 }
426 return result;
427 }

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

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

◆ replace()

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

Definition at line 150 of file dstring.cpp.

151{
152 remove( index, len );
153 insert( index, s );
154 return *this;
155}
DString & remove(size_t index, size_t len)
Definition dstring.h:539

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

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

◆ reserve()

◆ resize() [1/2]

◆ resize() [2/2]

void DString::resize ( size_t newlen,
char c )
inline

Resizes the string to newlen characters, filling any new characters with c.

Definition at line 216 of file dstring.h.

216{ m_rep.resize(newlen,c); }

References m_rep.

◆ rfind() [1/4]

size_t DString::rfind ( char c,
size_t pos = npos ) const
inline

Definition at line 248 of file dstring.h.

248{ return m_rep.rfind(c,pos); }

References m_rep, and npos.

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

◆ rfind() [2/4]

size_t DString::rfind ( const char * s,
size_t pos = npos ) const
inline

Definition at line 249 of file dstring.h.

249{ return s?m_rep.rfind(s,pos):npos; }

References m_rep, and npos.

◆ rfind() [3/4]

size_t DString::rfind ( const DString & s,
size_t pos = npos ) const
inline

Definition at line 250 of file dstring.h.

250{ return m_rep.rfind(s.str(),pos); }

References DString(), m_rep, npos, and str().

◆ rfind() [4/4]

size_t DString::rfind ( const std::string & s,
size_t pos = npos ) const
inline

Definition at line 251 of file dstring.h.

251{ return m_rep.rfind(s,pos); }

References m_rep, and npos.

◆ rfind_insensitive() [1/2]

size_t DString::rfind_insensitive ( char c,
size_t pos = npos ) const

Definition at line 44 of file dstring.cpp.

45{
46 const char *b = data();
47 const char *pos = nullptr;
48 size_t len = length();
49 if (len==0) return -1; // empty string
50 if (index==npos) // start from end
51 {
52 index=len;
53 }
54 else if (index>len) // bad index
55 {
56 return DString::npos;
57 }
58 pos = b+index;
59 c = toLowerChar(c);
60 while ( pos>=b && toLowerChar(*pos)!=c) pos--;
61 return pos>=b ? static_cast<size_t>(pos-b) : DString::npos;
62}

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

Referenced by VhdlDocGen::deleteAllChars(), VhdlDocGen::deleteCharRev(), and VhdlDocGen::parseFuncProto().

◆ rfind_insensitive() [2/2]

size_t DString::rfind_insensitive ( const char * str,
size_t pos = npos ) const

Definition at line 64 of file dstring.cpp.

65{
66 size_t slen = dstrlen(str);
67 size_t len = length();
68 if (slen>len) return DString::npos; // length of search string is longer than this string
69 if (index==DString::npos) index = len-slen; // start from end
70 else if (index>len) return DString::npos; // bad index
71 else if (index+slen>len) index = len-slen; // str would be too long
72 const char *pos = data()+index;
73 for (size_t i=index+1; i>0; )
74 {
75 --i;
76 if (dstrnicmp(pos--,str,slen)==0) return i;
77 }
78 return DString::npos;
79}

References data(), dstrlen(), dstrnicmp(), length(), npos, and str().

◆ right()

◆ setNum() [1/8]

DString & DString::setNum ( int n)
inline

Definition at line 568 of file dstring.h.

569 {
570 m_rep = std::to_string(n);
571 return *this;
572 }

References DString(), and m_rep.

◆ setNum() [2/8]

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

Definition at line 586 of file dstring.h.

587 {
588 m_rep = std::to_string(n);
589 return *this;
590 }

References DString(), and m_rep.

◆ setNum() [3/8]

DString & DString::setNum ( long n)
inline

Definition at line 580 of file dstring.h.

581 {
582 m_rep = std::to_string(n);
583 return *this;
584 }

References DString(), and m_rep.

◆ setNum() [4/8]

◆ setNum() [5/8]

DString & DString::setNum ( uint16_t n)
inline

Definition at line 562 of file dstring.h.

563 {
564 m_rep = std::to_string(n);
565 return *this;
566 }

References DString(), and m_rep.

◆ setNum() [6/8]

DString & DString::setNum ( uint32_t n)
inline

Definition at line 574 of file dstring.h.

575 {
576 m_rep = std::to_string(n);
577 return *this;
578 }

References DString(), and m_rep.

◆ setNum() [7/8]

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

Definition at line 592 of file dstring.h.

593 {
594 m_rep = std::to_string(n);
595 return *this;
596 }

References DString(), and m_rep.

◆ setNum() [8/8]

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

Definition at line 598 of file dstring.h.

599 {
600 m_rep = std::to_string(n);
601 return *this;
602 }

References DString(), and m_rep.

◆ shrink_to_fit()

void DString::shrink_to_fit ( )
inline

Definition at line 211 of file dstring.h.

211{ m_rep.shrink_to_fit(); }

References m_rep.

◆ simplifyWhiteSpace()

DString DString::simplifyWhiteSpace ( ) const

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

Definition at line 123 of file dstring.cpp.

124{
125 if ( empty() ) // nothing to do
126 return *this;
127
128 DString result( length(), ExplicitSize );
129 const char *from = data();
130 char *to = result.rawData();
131 char *first = to;
132 while ( true )
133 {
134 while ( *from && disspace(*from) )
135 from++;
136 while ( *from && !disspace(*from) )
137 *to++ = *from++;
138 if ( *from )
139 *to++ = 0x20; // ' '
140 else
141 break;
142 }
143 if ( to > first && *(to-1) == 0x20 )
144 to--;
145 *to = '\0';
146 result.resize( static_cast<int>(to - result.data()) );
147 return result;
148}
bool empty() const
Returns true iff the string is empty (std::string compatible alias for isEmpty()).
Definition dstring.h:152

References data(), disspace(), DString(), empty(), ExplicitSize, length(), rawData(), and resize().

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

◆ size()

◆ sprintf()

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

Definition at line 30 of file dstring.cpp.

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

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

Referenced by addDependencies(), addFormula(), addIncludeFile(), addXRefItemToEntry(), RTFGenerator::beginRTFSection(), buildFileList(), DocParser::checkArgumentName(), clearSubDirs(), convertCppComments(), convertNameToFile(), FormulaManager::createLatexFile(), createSubDirs(), dateTimeFromString(), dateToRTFDateString(), DocFormula::DocFormula(), encodeForOutput(), escapeComment(), escapeName(), escapeObject(), escapeWord(), DocParser::findAndCopyImage(), generateClassMemberLink(), generateClassOrGlobalLink(), generateFormula(), DotGfxHierarchyTable::getBaseName(), getLinkInScope(), includeTagFileAttributes(), FormulaManager::initFromRepository(), initPredefined(), initWarningFormat(), PerlModDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), parseInput(), 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 DString::startsWith ( const char * s) const
inline

Definition at line 604 of file dstring.h.

605 {
606 if (m_rep.empty() || s==nullptr) return s==nullptr;
607 return m_rep.rfind(s,0)==0; // looking "backward" starting and ending at index 0
608 }

References m_rep.

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

◆ startsWith() [2/3]

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

Definition at line 615 of file dstring.h.

616 {
617 if (m_rep.empty() || s.empty()) return s.empty();
618 return m_rep.rfind(s.str(),0)==0; // looking "backward" starting and ending at index 0
619 }

References DString(), empty(), m_rep, and str().

◆ startsWith() [3/3]

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

Definition at line 610 of file dstring.h.

611 {
612 return m_rep.rfind(s,0)==0; // looking "backward" starting and ending at index 0
613 }

References m_rep.

◆ str()

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

Definition at line 649 of file dstring.h.

650 {
651 return m_rep;
652 }

References m_rep.

Referenced by DefinitionImpl::_setBriefDescription(), MemberDefImpl::_writeReimplementedBy(), DefinitionImpl::_writeSourceRefList(), 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(), CommentScanner::addDeprecatedDocs(), 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(), assign(), 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(), compare(), computeExpression(), computeTemplateClassRelations(), computeVerifiedDotPath(), contains(), containsEnvVar(), convertNameToFile(), copyFile(), copyIcon(), copyLogo(), copyStyleSheet(), DotManager::createFilePatcher(), FormulaManager::createFormulasTexFile(), VHDLOutlineParser::createFunction(), createJavaScriptSearchIndex(), FormulaManager::createLatexFile(), ModuleManager::createModuleDef(), Translator::createNoun(), createOutputDirectory(), createSubDirs(), createTagLessInstance(), dateTimeFromString(), LinkedMap< T, Hash, KeyEqual, Map >::del(), LinkedRefMap< T, Hash, KeyEqual, Map >::del(), deliverablesPresent(), determineAbsoluteIncludeName(), determineInkscapeVersion(), MemberDefImpl::displayDefinition(), DocEmoji::DocEmoji(), DotCallGraph::DotCallGraph(), DotClassGraph::DotClassGraph(), DotGroupCollaboration::DotGroupCollaboration(), DotInclDepGraph::DotInclDepGraph(), drawClusterOpening(), drawDirectory(), DString(), DString(), anonymous_namespace{tagreader.cpp}::TagFileParser::endElement(), LayoutParser::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(), find(), LinkedMap< T, Hash, KeyEqual, Map >::find(), LinkedRefMap< T, Hash, KeyEqual, Map >::find(), SectionRefs::find(), SymbolMap< T >::find(), find_first_not_of(), find_first_of(), find_last_not_of(), find_last_of(), DocParser::findAndCopyImage(), VhdlDocGen::findArchitecture(), findBaseClassesForClass(), findClassEntries(), findClassRelation(), findExampleFilePath(), FileNameLinkedMap::findFileDef(), VhdlDocGen::findKeyWord(), VhdlDocGen::findMemberDef(), findPackageScope(), findPackageScopeFromPath(), findTemplateInstanceRelation(), findUsedClassesForClass(), findUsingDeclImports(), VariableContext::findVariable(), fmt::formatter< DString >::format(), generateDEF(), generateFileSources(), generateFormula(), generateFunctionLink(), generateFunctionLink(), FormulaManager::generateImages(), generateOutput(), CitationManager::generatePage(), RequirementManager::generatePage(), generateXML(), ConfigImpl::get(), ResourceMgr::get(), DocVisitor::getCodeParser(), getConvertLatexMacro(), Portable::getenv(), FilterCache::getFileContentsDisk(), FilterCache::getFileContentsPipe(), getFilteredImageAttributes(), getFilterFromList(), CitationManager::getFormulas(), getFortranDefs(), VhdlDocGen::getIndexWord(), getLanguageFromFileName(), getLinkInScope(), getMscImageMapFromFile(), ModuleManager::getPrimaryInterface(), getResolvedNamespace(), SymbolResolver::Private::getResolvedSymbolRec(), SymbolResolver::Private::getResolvedTypeRec(), RTFDocVisitor::getStyle(), EntryType::guessSection(), DocParser::handleCite(), DocPara::handleCommand(), DocPara::handleDoxyConfig(), handleFileInfoResult(), DocParser::handleImage(), DocParser::handleStyleArgument(), LayoutNavEntry::id(), DocbookGenerator::init(), HtmlGenerator::init(), LatexGenerator::init(), ManGenerator::init(), RTFGenerator::init(), FormulaManager::initFromRepository(), initPredefined(), initTracing(), initUCF(), initWarningFormat(), CitationManager::insert(), insert(), CitationManager::insertCrossReferencesForBibFile(), insertDimension(), insertMapFile(), ClassDefImpl::internalInsertMember(), SymbolResolver::Private::isAccessibleFromWithExpScope(), CommentScanner::isCommand(), isDefined(), isExplicitPage(), FileDefImpl::isIncluded(), isURL(), isVarWithConstructor(), javaExecutable(), 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()(), HtmlDocVisitor::operator()(), HtmlDocVisitor::operator()(), LatexDocVisitor::operator()(), LatexDocVisitor::operator()(), ManDocVisitor::operator()(), ManDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), RTFDocVisitor::operator()(), std::hash< DString >::operator()(), XmlDocVisitor::operator()(), XmlDocVisitor::operator()(), operator+(), operator+=(), operator<<(), TextStream::operator<<(), operator=(), operator==(), outputString(), CodeFragmentManager::parseCodeFragment(), parseCommentAsHtml(), parseCommentAsText(), parseConcepts(), 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(), readCodeFragment(), readConfiguration(), readFileOrDirectory(), readIncludeFile(), readIncludeFile(), readInputFile(), readTagFile(), readTextFileByName(), ParserManager::registerExtension(), ParserManager::registerParser(), SymbolMap< T >::remove(), removeAnonymousScopes(), replaceAnonymousScopes(), replaceColorMarkers(), replaceFunctionMacro(), replaceNamespaceAliasesRec(), replaceVariables(), resetPDFSize(), resolveDirLink(), resolveModuleProcedures(), resolveSymlink(), resolveTemplateInstanceInType(), resolveTypeBoundProcedures(), rfind(), rfind_insensitive(), RTFGenerator::rtf_BList_DepthStyle(), RTFGenerator::rtf_CList_DepthStyle(), RTFCodeGenerator::rtf_Code_DepthStyle(), RTFGenerator::rtf_DList_DepthStyle(), RTFGenerator::rtf_EList_DepthStyle(), RTFGenerator::rtf_LCList_DepthStyle(), rtfFormatBmkStr(), DotFilePatcher::run(), DotRunner::run(), runMermaid(), runPlantumlContent(), SearchIndex::setCurrentDoc(), SearchIndexExternal::setCurrentDoc(), Portable::setenv(), setFileName(), StyleData::setStyle(), FileNameLinkedMap::showFileDefMatches(), FilterCache::shrinkBuffer(), simplifyTypeForTable(), splitSearchTokens(), RTFGenerator::startCompoundTemplateParams(), ManGenerator::startDoxyAnchor(), anonymous_namespace{tagreader.cpp}::TagFileParser::startElement(), LayoutParser::startElement(), RTFCodeGenerator::startFontClass(), RTFGenerator::startMemberDoc(), RTFGenerator::startSection(), startsWith(), RTFGenerator::startTitleHead(), StyleData::StyleData(), 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(), writeExamples(), ClassDiagram::writeFigure(), writeFileIndex(), VhdlDocGen::writeFormatString(), writeFuncProto(), DotGfxHierarchyTable::writeGraph(), DotGraph::writeGraph(), ClassDefImpl::writeInheritanceGraph(), VhdlDocGen::writeInlineClassLink(), writeInlineGraph(), DotNode::writeLabel(), HtmlGenerator::writeLabel(), TextGeneratorSqlite3Impl::writeLink(), MemberDefImpl::writeMemberDocSimple(), ClassDefImpl::writeMemberList(), VhdlDocGen::writePlainVHDLDeclarations(), PlantumlManager::writePlantUMLSource(), VhdlDocGen::writeRecUnitDocu(), DefinitionImpl::writeRequirementRefs(), FlowChart::writeShape(), HtmlGenerator::writeStyleInfo(), and writeWord().

◆ stripLeadingAndTrailingEmptyLines()

DString DString::stripLeadingAndTrailingEmptyLines ( ) const

Definition at line 577 of file dstring.cpp.

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

References DString(), empty(), end(), and m_rep.

◆ stripPrefix() [1/2]

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

Definition at line 305 of file dstring.h.

306 {
307 return stripPrefix(DString(prefix));
308 }
constexpr auto prefix
Definition anchor.cpp:44
bool stripPrefix(const DString &prefix)
Definition dstring.h:294

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

◆ stripPrefix() [2/2]

◆ stripWhiteSpace()

DString DString::stripWhiteSpace ( ) const
inline

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

Definition at line 341 of file dstring.h.

342 {
343 size_t sl = m_rep.size();
344 if (sl==0 || (!disspace(m_rep[0]) && !disspace(m_rep[sl-1]))) return *this;
345 size_t start=0,end=sl-1;
346 while (start<sl && disspace(m_rep[start])) start++;
347 if (start==sl) return DString(); // only whitespace
348 while (end>start && disspace(m_rep[end])) end--;
349 return DString(m_rep.substr(start,1+end-start));
350 }

References disspace(), DString(), end(), and m_rep.

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(), ConfigBool::convertStrToVal(), ConfigEnum::convertStrToVal(), 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(), ConfigString::isDefault(), ClassDefImpl::isExtension(), isURL(), Htags::loadFilemap(), mergeArguments(), DocGroup::open(), DocIndexEntry::parse(), parseCommentAsText(), VhdlDocGen::parseFuncProto(), MarkdownOutlineParser::parseInput(), VhdlDocGen::parseUCF(), VhdlDocGen::prepareComment(), FlowChart::printNode(), FlowChart::printPlantUmlNode(), Markdown::Private::processLink(), processList(), processStoreRepl(), processString(), projectLogoSize(), readIncludeFile(), readIncludeFile(), readTagFile(), replaceFunctionMacro(), SymbolResolver::resolveClass(), splitKnRArg(), startOfRequiresExpression(), stripComment(), stripIrrelevantString(), stripTrailingReturn(), subrHandleCommentBlock(), subrHandleCommentBlockResult(), substEnvVarsInString(), substituteTemplateArgumentsInString(), Portable::system(), LayoutNavEntry::url(), MemberList::writeDeclarations(), writeExceptionList(), HtmlGenerator::writeExternalSearchPage(), VhdlDocGen::writeFunctionProto(), HtmlGenerator::writeLabel(), writeObjCMethodCall(), VhdlDocGen::writeVHDLTypeDocumentation(), and writeXMLDocBlock().

◆ substr()

◆ swap()

void DString::swap ( DString & other)
inline

Swaps the contents of this string with other.

Definition at line 224 of file dstring.h.

224{ m_rep.swap(other.m_rep); }

References DString(), and m_rep.

Referenced by swap().

◆ toInt()

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

Definition at line 187 of file dstring.cpp.

188{
189 return static_cast<int>(toLong( ok, base ));
190}
long toLong(bool *ok=nullptr, int base=10) const
Definition dstring.cpp:198

References toLong().

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

◆ toLong()

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

Definition at line 198 of file dstring.cpp.

199{
200 const char *p = data();
201 long val=0;
202 int l = static_cast<int>(length());
203 const long max_mult = INT_MAX / base;
204 bool is_ok = false;
205 int neg = 0;
206 if ( !p )
207 goto bye;
208 while ( l && disspace(*p) ) // skip leading space
209 {
210 l--;
211 p++;
212 }
213 if ( l && *p == '-' )
214 {
215 l--;
216 p++;
217 neg = 1;
218 } else if ( *p == '+' )
219 {
220 l--;
221 p++;
222 }
223
224 // NOTE: toULong() code is similar
225 if ( !l || !ok_in_base(*p,base) )
226 {
227 goto bye;
228 }
229 while ( l && ok_in_base(*p,base) )
230 {
231 l--;
232 int dv = 0;
233 if ( *p>='0' && *p<='9' )
234 {
235 dv = *p-'0';
236 }
237 else
238 {
239 if ( *p >= 'a' && *p <= 'z' )
240 {
241 dv = *p - 'a' + 10;
242 }
243 else
244 {
245 dv = *p - 'A' + 10;
246 }
247 }
248 if ( val > max_mult || (val == max_mult && dv > (INT_MAX%base)+neg) )
249 {
250 goto bye;
251 }
252 val = base*val + dv;
253 p++;
254 }
255 if ( neg )
256 {
257 val = -val;
258 }
259 while ( l && disspace(*p) ) // skip trailing space
260 {
261 l--;
262 p++;
263 }
264 if ( !l )
265 {
266 is_ok = true;
267 }
268bye:
269 if ( ok )
270 {
271 *ok = is_ok;
272 }
273 return is_ok ? val : 0;
274}
static bool ok_in_base(char c, int base)
Definition dstring.cpp:157

References data(), disspace(), length(), and ok_in_base().

Referenced by toInt(), and toShort().

◆ toShort()

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

Definition at line 167 of file dstring.cpp.

168{
169 long v = toLong( ok, base );
170 if ( ok && *ok && (v < -32768 || v > 32767) ) {
171 *ok = false;
172 v = 0;
173 }
174 return static_cast<short>(v);
175}

References toLong().

◆ toUInt()

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

Definition at line 192 of file dstring.cpp.

193{
194 return static_cast<uint32_t>(toULong( ok, base ));
195}
unsigned long toULong(bool *ok=nullptr, int base=10) const
Definition dstring.cpp:276

References toULong().

◆ toUInt64()

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

Definition at line 347 of file dstring.cpp.

348{
349 const char *p = data();
350 uint64_t val=0;
351 int l = static_cast<int>(length());
352 const uint64_t max_mult = 1844674407370955161ULL; // ULLONG_MAX/10, rounded down
353 bool is_ok = false;
354 if ( !p )
355 {
356 goto bye;
357 }
358 while ( l && disspace(*p) ) // skip leading space
359 {
360 l--;
361 p++;
362 }
363 if ( *p == '+' )
364 {
365 l--;
366 p++;
367 }
368
369 // NOTE: toULong() code is similar
370 if ( !l || !ok_in_base(*p,base) )
371 {
372 goto bye;
373 }
374 while ( l && ok_in_base(*p,base) )
375 {
376 l--;
377 uint32_t dv = 0;
378 if ( *p>='0' && *p<='9' )
379 {
380 dv = *p-'0';
381 }
382 else
383 {
384 if ( *p >= 'a' && *p <= 'z' )
385 {
386 dv = *p - 'a' + 10;
387 }
388 else
389 {
390 dv = *p - 'A' + 10;
391 }
392 }
393 if ( val > max_mult || (val == max_mult && dv > (ULLONG_MAX%base)) )
394 {
395 goto bye;
396 }
397 val = base*val + dv;
398 p++;
399 }
400
401 while ( l && disspace(*p) ) // skip trailing space
402 {
403 l--;
404 p++;
405 }
406 if ( !l )
407 {
408 is_ok = true;
409 }
410bye:
411 if ( ok )
412 {
413 *ok = is_ok;
414 }
415 return is_ok ? val : 0;
416}

References data(), disspace(), length(), and ok_in_base().

Referenced by getCurrentDateTime().

◆ toULong()

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

Definition at line 276 of file dstring.cpp.

277{
278 const char *p = data();
279 unsigned long val=0;
280 int l = static_cast<int>(length());
281 const unsigned long max_mult = 429496729; // UINT_MAX/10, rounded down
282 bool is_ok = false;
283 if ( !p )
284 {
285 goto bye;
286 }
287 while ( l && disspace(*p) ) // skip leading space
288 {
289 l--;
290 p++;
291 }
292 if ( *p == '+' )
293 {
294 l--;
295 p++;
296 }
297
298 // NOTE: toLong() code is similar
299 if ( !l || !ok_in_base(*p,base) )
300 {
301 goto bye;
302 }
303 while ( l && ok_in_base(*p,base) )
304 {
305 l--;
306 uint32_t dv = 0;
307 if ( *p>='0' && *p<='9' )
308 {
309 dv = *p-'0';
310 }
311 else
312 {
313 if ( *p >= 'a' && *p <= 'z' )
314 {
315 dv = *p - 'a' + 10;
316 }
317 else
318 {
319 dv = *p - 'A' + 10;
320 }
321 }
322 if ( val > max_mult || (val == max_mult && dv > (UINT_MAX%base)) )
323 {
324 goto bye;
325 }
326 val = base*val + dv;
327 p++;
328 }
329
330 while ( l && disspace(*p) ) // skip trailing space
331 {
332 l--;
333 p++;
334 }
335 if ( !l )
336 {
337 is_ok = true;
338 }
339bye:
340 if ( ok )
341 {
342 *ok = is_ok;
343 }
344 return is_ok ? val : 0;
345}

References data(), disspace(), length(), and ok_in_base().

Referenced by toUInt(), and toUShort().

◆ toUShort()

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

Definition at line 177 of file dstring.cpp.

178{
179 unsigned long v = toULong( ok, base );
180 if ( ok && *ok && (v > 65535) ) {
181 *ok = false;
182 v = 0;
183 }
184 return static_cast<uint16_t>(v);
185}

References toULong().

◆ upper()

DString DString::upper ( ) const
inline

Definition at line 335 of file dstring.h.

336 {
338 }
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:193

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

Referenced by VhdlDocGen::findMember(), integerToAlpha(), integerToRoman(), 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()

Member Data Documentation

◆ m_rep

◆ npos

size_t DString::npos = std::string::npos
staticconstexpr

value used to indicate 'not found' or 'to the end of the string', matching std::string::npos

Definition at line 182 of file dstring.h.

Referenced by MemberDefImpl::_computeIsConstructor(), MemberDefImpl::_computeIsDestructor(), DefinitionImpl::_docsAlreadyAdded(), MemberDefImpl::_writeCategoryRelation(), MemberDefImpl::_writeReimplements(), abbreviate(), VhdlDocGen::addBaseClass(), addClassToContext(), VHDLOutlineParser::addCompInst(), addConceptToContext(), ModuleManager::addDocs(), addEnumValuesToEnums(), addHtmlExtensionIfMissing(), addMacroDefinition(), addMemberFunction(), addMethodToClass(), addModule(), addSubprogram(), addTemplateNames(), TooltipManager::addTooltip(), ClassDefImpl::addTypeConstraints(), addVariable(), addVariable(), addVariableToFile(), adjustConfiguration(), alignText(), argListToString(), associateVariableWithAnonymousEnumType(), buildDictionaryList(), buildDirectories(), buildFileList(), buildFunctionList(), buildScopeFromQualifiedName(), buildSequenceList(), buildTypedefList(), buildVarList(), Config::checkAndCorrect(), VHDLOutlineParser::checkInlineCode(), checkList(), combineArgsAndException(), computeClassRelations(), computeCommonDirPrefix(), convertFileId2Var(), VhdlDocGen::convertFileNameToClassName(), DotFilePatcher::convertMapFile(), VhdlDocGen::correctMemberProperties(), MemberList::countEnumValues(), createDVIFile(), createTagLessInstance(), VhdlDocGen::deleteAllChars(), VhdlDocGen::deleteCharRev(), determineBlockName(), DirDefImpl::DirDefImpl(), MemberDefImpl::displayDefinition(), DocInternalRef::DocInternalRef(), DocRef::DocRef(), LayoutParser::endMemberDecl(), LayoutParser::endMemberDef(), endScope(), DocGroup::enterCompound(), erase(), ExistsOnPath(), expandVAOpt(), DocInclude::extension(), extractBeginRawStringDelimiter(), extractBlock(), extractBoundingBox(), extractClassName(), extractFromParens(), extractLanguageSpecificTitle(), extractNamespaceName(), extractNoExcept(), extractPartAfterNewLine(), fillColorStyleMap(), filterMemberDocumentation(), find(), find_first_not_of(), find_first_of(), find_last_not_of(), find_last_not_of(), find_last_not_of(), find_last_not_of(), find_last_of(), find_last_of(), find_last_of(), find_last_of(), VhdlDocGen::findAllArchitectures(), DocParser::findAndCopyImage(), findClassRelation(), findDirDocumentation(), DocParser::findDocsForMemberOrCompound(), findEnumDocumentation(), findEnums(), FileNameLinkedMap::findFileDef(), findGlobalMember(), findMember(), findPackageScopeFromPath(), findParameterList(), findTagLessClasses(), findUsingDeclImports(), findUsingDirectives(), generateClassOrGlobalLink(), generateClassOrGlobalLink(), generateDEFForClass(), generateFunctionLink(), generateFunctionLink(), generateMemberLink(), MermaidManager::generateMermaidOutput(), CitationManager::generatePage(), PlantumlManager::generatePlantUmlFileNames(), PlantumlManager::generatePlantUMLOutput(), generateXML(), generateXMLForMember(), getBaseNameOfOutput(), getCanonicalTypeForIdentifier(), getDotImageExtension(), getFileNameExtension(), getFilteredImageAttributes(), getFilterFromList(), getParserForFile(), SymbolResolver::Private::getResolvedSymbolRec(), getScopeDefs(), getTemplateArgumentsFromName(), EntryType::guessSection(), DocPara::handleCommand(), VHDLOutlineParser::handleCommentBlock(), DocParser::handleParameterType(), handleToc(), CitationManager::insertCrossReferencesForBibFile(), insertTemplateSpecifierInScope(), ClassDefImpl::internalInsertMember(), isCastKeyword(), FileDefImpl::isDocumentationFile(), MemberDefImpl::isDocumentedFriendClass(), ClassDefImpl::isExtension(), MemberDefImpl::isFunctionPtr(), NamespaceDefImpl::isLinkableInProject(), isRecursiveBaseClass(), DocImage::isSVG(), isURL(), isVarWithConstructor(), lineBlock(), linkifyText(), linkToText(), Htags::loadFilemap(), makeDisplayName(), makeQualifiedNameWithTemplateParameters(), makeTemplateInstanceRelation(), mangleCSharpGenericName(), markdownFileNameToId(), matchCanonicalTypes(), matchExcludedSymbols(), mergeArguments(), mergeCategories(), DirDefImpl::mergeDirectoryInTree(), ClassDefImpl::mergeMembersFromBaseClasses(), mergeScopes(), mid(), nameIsOperator(), SymbolResolver::Private::newResolveTypedef(), normalizeNonTemplateArgumentsInString(), VHDLOutlineParser::oneLineComment(), SymbolModifiers::operator|=(), DocIncOperator::parse(), DocLink::parse(), DocParamList::parse(), parseCompounds(), parseFile(), VhdlDocGen::parseForBinding(), VhdlDocGen::parseForConfig(), parseFuncDecl(), VhdlDocGen::parseFuncProto(), parseMain(), VhdlDocGen::parseUCF(), VHDLOutlineParser::popLabel(), Markdown::Private::processLink(), processTagLessClasses(), projectLogoFile(), projectLogoSize(), readCodeFragment(), readTagFile(), relativePathToRoot(), CitationManager::replaceFormulas(), replaceRef(), replaceVariables(), SymbolResolver::resolveClass(), resolveModuleProcedures(), resolveRef(), resolveSymlink(), resolveTemplateInstanceInType(), resolveTypeDef(), rfind(), rfind(), rfind(), rfind(), rfind_insensitive(), rfind_insensitive(), DotFilePatcher::run(), searchTemplateSpecs(), MemberList::setAnonymousEnumType(), setCallContextForVar(), setClassScope(), setJavaProtection(), DefinitionImpl::setName(), setParameterList(), StyleData::setStyle(), FileNameLinkedMap::showFileDefMatches(), splitSearchTokens(), splitString(), ManGenerator::startDoxyAnchor(), LatexDocVisitor::startMermaidFile(), LatexDocVisitor::startPlantUmlFile(), stripDeclKeywords(), stripIrrelevantString(), stripKeyword(), stripPath(), stripTemplateSpecifiersFromScope(), substEnvVarsInStrList(), substituteTemplateArgumentsInString(), substr(), Portable::system(), tempArgListToString(), trimBaseClassScope(), Portable::unsetenv(), NamespaceDefImpl::updateLocalName(), version(), MemberDefImpl::warnIfUndocumented(), MemberDefImpl::warnIfUndocumentedParams(), DotNode::writeDEF(), writeDefArgumentList(), FileDefImpl::writeDetailedDescription(), DotNode::writeDocbook(), MemberDefImpl::writeDocumentation(), MemberDefImpl::writeEnumDeclaration(), writeExceptionList(), writeExceptionListImpl(), HtmlGenerator::writeExternalSearchPage(), HtmlHelpIndex::writeFields(), VhdlDocGen::writeFormatString(), writeGroupTreeNode(), DotNode::writeLabel(), LatexDocVisitor::writeMermaidFile(), MermaidManager::writeMermaidSource(), writeMscGraphFromFile(), writeObjCMethodCall(), LatexDocVisitor::writePlantUMLFile(), PlantumlManager::writePlantUMLSource(), VhdlDocGen::writeRecordUnit(), FlowChart::writeShape(), VhdlDocGen::writeSource(), DefinitionImpl::writeSourceDef(), DotNode::writeUrl(), and DotNode::writeXML().


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