8#if !defined(ALIB_C20_MODULES) || ((ALIB_C20_MODULES != 0) && (ALIB_C20_MODULES != 1))
9# error "Symbol ALIB_C20_MODULES has to be given to the compiler as either 0 or 1"
41 return int(result.
Size() - oldSize);
57 bool lastWasSlash=
false;
118 case '"' : dest.
_<
NC>(needsQuotes ?
"\\\"" :
"\"");
120 case '\\' : dest.
_<
NC>(
"\\\\");
break;
121 case '\r' : dest.
_<
NC>(
"\\r" );
break;
122 case '\n' : dest.
_<
NC>(
"\\n" );
break;
123 case '\t' : dest.
_<
NC>(
"\\t" );
break;
124 case '\a' : dest.
_<
NC>(
"\\a" );
break;
125 case '\b' : dest.
_<
NC>(
"\\b" );
break;
126 case '\v' : dest.
_<
NC>(
"\\v" );
break;
127 case '\f' : dest.
_<
NC>(
"\\f" );
break;
128 case '\033' : dest.
_<
NC>(
"\\e" );
break;
129 default : dest.
_<
NC>(c);
break;
152 return int(result.
Size() - oldSize);
163 bool lastWasSlash=
false;
165 while( idx < src.
Length() )
181 if( c==
'"' && (idx==1 || inQuote) )
187 if( !inQuote && delimiters.
IndexOf(c) >= 0 )
191 result.
Add( tempBuf );
202 result.
Add( tempBuf );
205 return int (result.
Size() - oldSize);
TAString & _(const TAppendable &src)
void DbgDisableBufferReplacementWarning()
constexpr integer Length() const
TChar CharAtStart() const
integer IndexOf(TChar needle, integer startIdx=0) const
TChar CharAt(integer idx) const
constexpr bool IsNotEmpty() const
TString< TChar > Substring(integer regionStart, integer regionLength=MAX_LEN) const
TSubstring & TrimStart(const TCString< TChar > &whiteSpaces=CStringConstantsTraits< TChar >::DefaultWhitespaces())
bool ConsumeCharFromEnd(TChar consumable)
integer ConsumeChars(integer regionLength, TSubstring *target=nullptr)
TSubstring & Trim(const TCString< TChar > &whiteSpaces=CStringConstantsTraits< TChar >::DefaultWhitespaces())
integer Add(const strings::TString< TChar > &src)
integer Size() const noexcept
ALIB_DLL TSubstring< TChar > & Next(lang::Whitespaces trimming=lang::Whitespaces::Trim, TChar newDelim='\0')
TLocalString< TChar, 8 > TrimChars
strings::TEscape< character > Escape
Type alias in namespace alib.
LocalString< 512 > String512
Type alias name for TLocalString<character,512>.
strings::TAString< character, lang::HeapAllocator > AString
Type alias in namespace alib.
strings::util::TTokenizer< character > Tokenizer
Type alias in namespace alib.
strings::util::TStringVector< character, MonoAllocator > StringVectorMA
Type alias in namespace alib.
lang::integer integer
Type alias in namespace alib.
strings::TString< character > String
Type alias in namespace alib.
characters::character character
Type alias in namespace alib.
LocalString< 2048 > String2K
Type alias name for TLocalString<character,2048>.
strings::TSubstring< character > Substring
Type alias in namespace alib.
virtual ALIB_DLL AString & Unescape(const String &src, AString &dest) const override
virtual ALIB_DLL int UnescapeTokens(StringVectorMA &result, const String &src, const String &delimiters) const override
virtual ALIB_DLL AString & Escape(const String &src, AString &dest, const String &delimiters) const override
virtual ALIB_DLL int EscapeTokens(StringVectorMA &result, const String &src, const String &delimiters) const override
virtual ALIB_DLL int EscapeTokens(StringVectorMA &result, const String &src, const String &delimiters) const