Yate
|
A C-style string handling class. More...
#include <yateclass.h>
Public Types | |
enum | Align { Left = 0, Center, Right } |
Public Member Functions | |
String () | |
String (const char *value, int len=-1) | |
String (char value, unsigned int repeat=1) | |
String (int32_t value) | |
String (uint32_t value) | |
String (int64_t value) | |
String (uint64_t value) | |
String (bool value) | |
String (double value) | |
String (const String &value) | |
String (const String *value) | |
virtual | ~String () |
virtual void * | getObject (const String &name) const |
const char * | c_str () const |
const char * | safe () const |
const char * | safe (const char *defStr) const |
unsigned int | length () const |
bool | null () const |
int | lenUtf8 (uint32_t maxChar=0x10ffff, bool overlong=false) const |
int | fixUtf8 (const char *replace=0, uint32_t maxChar=0x10ffff, bool overlong=false) |
bool | checkBOM () const |
bool | stripBOM () |
unsigned int | hash () const |
void | clear () |
char | at (int index) const |
String | substr (int offs, int len=-1) const |
String & | trimBlanks () |
String & | trimSpaces () |
virtual const String & | toString () const |
int | toInteger (int defvalue=0, int base=0, int minvalue=INT_MIN, int maxvalue=INT_MAX, bool clamp=true) const |
int | toInteger (const TokenDict *tokens, int defvalue=0, int base=0) const |
long int | toLong (long int defvalue=0, int base=0, long int minvalue=LONG_MIN, long int maxvalue=LONG_MAX, bool clamp=true) const |
int64_t | toInt64 (int64_t defvalue=0, int base=0, int64_t minvalue=LLONG_MIN, int64_t maxvalue=LLONG_MAX, bool clamp=true) const |
double | toDouble (double defvalue=0.0) const |
bool | toBoolean (bool defvalue=false) const |
bool | isBoolean () const |
String & | toUpper () |
String & | toLower () |
char | operator[] (signed int index) const |
char | operator[] (unsigned int index) const |
operator const char * () const | |
String & | assign (const char *value, int len=-1) |
String & | assign (char value, unsigned int repeat=1) |
String & | hexify (void *data, unsigned int len, char sep=0, bool upCase=false) |
String & | operator= (const String &value) |
String & | operator= (const String *value) |
String & | operator= (const char *value) |
String & | operator= (char value) |
String & | operator= (int32_t value) |
String & | operator= (uint32_t value) |
String & | operator= (int64_t value) |
String & | operator= (uint64_t value) |
String & | operator= (bool value) |
String & | operator= (double value) |
String & | operator+= (const char *value) |
String & | operator+= (char value) |
String & | operator+= (int32_t value) |
String & | operator+= (uint32_t value) |
String & | operator+= (int64_t value) |
String & | operator+= (uint64_t value) |
String & | operator+= (bool value) |
String & | operator+= (double value) |
bool | operator== (const char *value) const |
bool | operator!= (const char *value) const |
bool | operator== (const String &value) const |
bool | operator!= (const String &value) const |
bool | operator&= (const char *value) const |
bool | operator|= (const char *value) const |
String & | operator<< (const char *value) |
String & | operator<< (char value) |
String & | operator<< (int32_t value) |
String & | operator<< (uint32_t value) |
String & | operator<< (int64_t value) |
String & | operator<< (uint64_t value) |
String & | operator<< (bool value) |
String & | operator<< (double value) |
String & | operator>> (const char *skip) |
String & | operator>> (char &store) |
String & | operator>> (UChar &store) |
String & | operator>> (int &store) |
String & | operator>> (unsigned int &store) |
String & | operator>> (bool &store) |
String & | append (const char *value, int len) |
String & | append (const char *value, const char *separator=0, bool force=false) |
String & | append (const ObjList *list, const char *separator=0, bool force=false) |
String & | append (const ObjList &list, const char *separator=0, bool force=false) |
String & | append (double value, unsigned int decimals=3) |
String & | printf (const char *format,...) |
String & | printf (unsigned int length, const char *format,...) |
String & | appendFixed (unsigned int fixedLength, const char *str, unsigned int len=-1, char fill= ' ', int align=Left) |
String & | appendFixed (unsigned int fixedLength, const String &str, char fill= ' ', int align=Left) |
int | find (char what, unsigned int offs=0) const |
int | find (const char *what, unsigned int offs=0) const |
int | rfind (char what) const |
int | rfind (const char *what) const |
bool | startsWith (const char *what, bool wordBreak=false, bool caseInsensitive=false) const |
bool | endsWith (const char *what, bool wordBreak=false, bool caseInsensitive=false) const |
bool | startSkip (const char *what, bool wordBreak=true, bool caseInsensitive=false) |
String & | extractTo (const char *sep, String &store) |
String & | extractTo (const char *sep, bool &store) |
String & | extractTo (const char *sep, int &store, int base=0) |
String & | extractTo (const char *sep, int &store, const TokenDict *tokens, int base=0) |
String & | extractTo (const char *sep, double &store) |
virtual bool | matches (const String &value) const |
bool | matches (const Regexp &rexp) |
int | matchOffset (int index=0) const |
int | matchLength (int index=0) const |
String | matchString (int index=0) const |
String | replaceMatches (const String &templ) const |
int | matchCount () const |
ObjList * | split (char separator, bool emptyOK=true) const |
String | msgEscape (char extraEsc=0) const |
String | msgUnescape (int *errptr=0, char extraEsc=0) const |
String | sqlEscape (char extraEsc=0) const |
String | uriEscape (char extraEsc=0, const char *noEsc=0) const |
String | uriUnescape (int *errptr=0) const |
Public Member Functions inherited from GenObject | |
GenObject () | |
virtual | ~GenObject () |
virtual bool | alive () const |
virtual void | destruct () |
NamedCounter * | getObjCounter () const |
NamedCounter * | setObjCounter (NamedCounter *counter) |
Static Public Member Functions | |
static const String & | empty () |
static const char * | boolText (bool value) |
static int | lenUtf8 (const char *value, uint32_t maxChar=0x10ffff, bool overlong=false) |
static bool | checkBOM (const char *str) |
static bool | stripBOM (const char *&str) |
static bool | stripBOM (char *&str) |
static unsigned int | hash (const char *value, unsigned int h=0) |
static String | msgEscape (const char *str, char extraEsc=0) |
static String | msgUnescape (const char *str, int *errptr=0, char extraEsc=0) |
static String | sqlEscape (const char *str, char extraEsc=0) |
static String | uriEscape (const char *str, char extraEsc=0, const char *noEsc=0) |
static String | uriEscape (const char *str, const char *extraEsc, const char *noEsc=0) |
static String | uriUnescape (const char *str, int *errptr=0) |
static const String * | atom (const String *&str, const char *val) |
Static Public Member Functions inherited from GenObject | |
static void * | getObject (const String &name, const GenObject *obj) |
static bool | getObjCounting () |
static void | setObjCounting (bool enable) |
static NamedCounter * | getObjCounter (const String &name, bool create=true) |
static ObjList & | getObjCounters () |
Protected Member Functions | |
virtual void | changed () |
A C-style string handling class.
A simple string handling class for C style (one byte) strings. For simplicity and read speed no copy-on-write is performed. Strings have hash capabilities and comparations are using the hash for fast inequality check.
String | ( | ) |
Creates a new, empty string.
String | ( | const char * | value, |
int | len = -1 |
||
) |
Creates a new initialized string.
value | Initial value of the string |
len | Length of the data to copy, -1 for full string |
|
explicit |
Creates a new initialized string.
value | Character to fill the string |
repeat | How many copies of the character to use |
|
explicit |
Creates a new initialized string from a 32 bit integer.
value | Value to convert to string |
|
explicit |
Creates a new initialized string from a 32 bit unsigned int.
value | Value to convert to string |
|
explicit |
Creates a new initialized string from a 64 bit integer.
value | Value to convert to string |
|
explicit |
Creates a new initialized string from a 64 bit unsigned int.
value | Value to convert to string |
|
explicit |
Creates a new initialized string from a boolean.
value | Value to convert to string |
|
explicit |
Creates a new initialized string from a double value.
value | Value to convert to string |
Constructor from String pointer.
value | Initial value of the string |
|
virtual |
Destroys the string, disposes the memory.
String& append | ( | const char * | value, |
int | len | ||
) |
Append a string to the current string
value | String from which to append |
len | Length of the data to copy, -1 for full string |
Referenced by String::append(), SliceVector< Obj >::dump(), and String::operator+=().
String& append | ( | const char * | value, |
const char * | separator = 0 , |
||
bool | force = false |
||
) |
Conditional appending with a separator
value | String to append |
separator | Separator to insert before the value |
force | True to allow appending empty strings |
List members appending with a separator
list | Pointer to ObjList whose GenObject::toString() of the items will be appended |
separator | Separator to insert before each item in list |
force | True to allow appending empty strings |
List members appending with a separator
list | Reference of ObjList whose GenObject::toString() of the items will be appended |
separator | Separator to insert before each item in list |
force | True to allow appending empty strings |
References String::append().
String& append | ( | double | value, |
unsigned int | decimals = 3 |
||
) |
Explicit double append
value | Value to append |
decimals | Number of decimals |
String& appendFixed | ( | unsigned int | fixedLength, |
const char * | str, | ||
unsigned int | len = -1 , |
||
char | fill = ' ' , |
||
int | align = Left |
||
) |
Build a fixed aligned string from str and append it.
fixedLength | The fixed length in which the 'str' will be aligned. |
str | The string to align |
len | The number of characters to use from str. |
fill | Character to fill the empty space. |
align | The alignment mode. |
Referenced by String::appendFixed().
|
inline |
Build a fixed aligned string from str and append it.
fixedLength | The fixed length in which the 'str' will be aligned. |
str | The string to align |
fill | Character to fill the empty space. |
align | The alignment mode. |
References String::appendFixed(), String::c_str(), and String::length().
String& assign | ( | const char * | value, |
int | len = -1 |
||
) |
Assigns a new value to the string from a character block.
value | New value of the string |
len | Length of the data to copy, -1 for full string |
String& assign | ( | char | value, |
unsigned int | repeat = 1 |
||
) |
Assigns a new value by filling with a repeated character
value | Character to fill the string |
repeat | How many copies of the character to use |
char at | ( | int | index | ) | const |
Extract the caracter at a given index
index | Index of character in string |
Referenced by String::operator[]().
Atom string support helper
str | Reference to variable to hold the atom string |
val | String value to allocate to the atom |
Referenced by Atom::Atom().
|
inlinestatic |
A standard text representation of boolean values
value | Boolean value to convert |
Referenced by String::operator+=(), String::operator=(), ClientContact::setLocal(), ClientContact::setRemote(), and ClientAccount::startup().
|
inline |
Get the value of the stored string.
Referenced by String::appendFixed(), TelEngine::c_str(), String::checkBOM(), Hasher::hmac(), Hasher::hmacStart(), String::msgEscape(), String::msgUnescape(), String::operator!=(), String::operator=(), String::operator==(), String::sqlEscape(), TelEngine::strcat(), TelEngine::strcpy(), String::stripBOM(), ClientResource::text(), SliceVector< Obj >::unHexify(), DataBlock::unHexify(), Hasher::update(), String::uriEscape(), String::uriUnescape(), Compressor::writeComp(), Stream::writeData(), and Compressor::writeDecomp().
|
protectedvirtual |
Called whenever the value changed (except in constructors).
Reimplemented in URI, NamedPointer, Regexp, and DataFormat.
|
inlinestatic |
Check if a string starts with UTF-8 Byte Order Mark
str | String to check for BOM |
|
inline |
Check if this string starts with UTF-8 Byte Order Mark
References String::c_str().
Referenced by String::stripBOM().
void clear | ( | ) |
Clear the string and free the memory
Referenced by XmlSaxParser::resetParsed().
|
static |
A static null String
Referenced by ClientContact::accountName(), ClientLogic::cdrRemoteParty(), ClientContact::getContactSection(), and Engine::trackParam().
bool endsWith | ( | const char * | what, |
bool | wordBreak = false , |
||
bool | caseInsensitive = false |
||
) | const |
Checks if the string ends with a substring
what | Substring to search for |
wordBreak | Check if a word boundary precedes the substring |
caseInsensitive | Compare case-insensitive if set |
Extract a substring up to a separator
sep | Separator string to match after extracted fragment |
store | Reference to String variable to store extracted fragment |
String& extractTo | ( | const char * | sep, |
bool & | store | ||
) |
Extract a boolean substring up to a separator
sep | Separator string to match after extracted fragment |
store | Reference to boolean variable to store extracted fragment |
String& extractTo | ( | const char * | sep, |
int & | store, | ||
int | base = 0 |
||
) |
Extract an integer value substring up to a separator
sep | Separator string to match after extracted fragment |
store | Reference to integer variable to store extracted fragment |
base | Numeration base, 0 to autodetect |
Extract an integer or token value substring up to a separator
sep | Separator string to match after extracted fragment |
store | Reference to integer variable to store extracted fragment |
tokens | Pointer to an array of tokens to lookup first |
base | Numeration base, 0 to autodetect |
String& extractTo | ( | const char * | sep, |
double & | store | ||
) |
Extract a double value substring up to a separator
sep | Separator string to match after extracted fragment |
store | Reference to double variable to store extracted fragment |
int find | ( | char | what, |
unsigned int | offs = 0 |
||
) | const |
Locate the first instance of a character in the string
what | Character to search for |
offs | Offset in string to start searching from |
Referenced by ClientContact::splitContactId().
int find | ( | const char * | what, |
unsigned int | offs = 0 |
||
) | const |
Locate the first instance of a substring in the string
what | Substring to search for |
offs | Offset in string to start searching from |
int fixUtf8 | ( | const char * | replace = 0 , |
uint32_t | maxChar = 0x10ffff , |
||
bool | overlong = false |
||
) |
Fix an UTF-8 encoded string by replacing invalid sequences
replace | String to replace invalid sequences, use U+FFFD if null |
maxChar | Maximum accepted Unicode character code |
overlong | Accept overlong UTF-8 sequences (dangerous!) |
|
virtual |
Get a pointer to a derived class given that class name
name | Name of the class we are asking for |
Reimplemented from GenObject.
Reimplemented in NamedList, NamedPointer, NamedString, Message, MimeAuthLine, and MimeHeaderLine.
|
inline |
Get the hash of the contained string.
Referenced by HashList::getHashList(), String::operator!=(), and String::operator==().
|
static |
Get the hash of an arbitrary string.
value | C string to hash |
h | Old hash value for incremental hashing |
String& hexify | ( | void * | data, |
unsigned int | len, | ||
char | sep = 0 , |
||
bool | upCase = false |
||
) |
Build a hexadecimal representation of a buffer of data
data | Pointer to data to dump |
len | Length of the data buffer |
sep | Separator character to use between octets |
upCase | Set to true to use upper case characters in hexa |
Referenced by SliceVector< Obj >::hexify().
bool isBoolean | ( | ) | const |
Check if the string can be converted to a boolean value.
|
inline |
Get the length of the stored string.
Referenced by String::appendFixed(), SliceVector< Obj >::dump(), Hasher::hmac(), Hasher::hmacStart(), SliceVector< Obj >::unHexify(), DataBlock::unHexify(), Hasher::update(), Compressor::writeComp(), Stream::writeData(), and Compressor::writeDecomp().
|
static |
Get the number of characters in a string assuming UTF-8 encoding
value | C string to compute Unicode length |
maxChar | Maximum accepted Unicode character code |
overlong | Accept overlong UTF-8 sequences (dangerous!) |
Referenced by String::lenUtf8().
|
inline |
Get the number of characters in the string assuming UTF-8 encoding
maxChar | Maximum accepted Unicode character code |
overlong | Accept overlong UTF-8 sequences (dangerous!) |
References String::lenUtf8().
int matchCount | ( | ) | const |
Get the total number of submatches from the last match, 0 if no match
|
inlinevirtual |
Checks if matches another string
value | String to check for match |
Reimplemented in Regexp.
References String::operator==().
bool matches | ( | const Regexp & | rexp | ) |
Checks if matches a regular expression and fill the match substrings
rexp | Regular expression to check for match |
int matchLength | ( | int | index = 0 | ) | const |
Get the length of the last match
index | Index of the submatch to return, 0 for full match |
Referenced by String::matchString().
int matchOffset | ( | int | index = 0 | ) | const |
Get the offset of the last match
index | Index of the submatch to return, 0 for full match |
Referenced by String::matchString().
|
inline |
Get a copy of a matched (sub)string
index | Index of the submatch to return, 0 for full match |
References String::matchLength(), String::matchOffset(), and String::substr().
|
static |
Create an escaped string suitable for use in messages
str | String to convert to escaped format |
extraEsc | Character to escape other than the default ones |
Referenced by String::msgEscape().
|
inline |
Create an escaped string suitable for use in messages
extraEsc | Character to escape other than the default ones |
References String::c_str(), and String::msgEscape().
|
static |
Decode an escaped string back to its raw form
str | String to convert to unescaped format |
errptr | Pointer to an integer to receive the place of 1st error |
extraEsc | Character to unescape other than the default ones |
Referenced by String::msgUnescape().
|
inline |
Decode an escaped string back to its raw form
errptr | Pointer to an integer to receive the place of 1st error |
extraEsc | Character to unescape other than the default ones |
References String::c_str(), and String::msgUnescape().
|
inline |
Checks if the string holds a NULL pointer.
Referenced by Module::filterInstalled(), and TelEngine::null().
|
inline |
Conversion to "const char *" operator.
bool operator!= | ( | const char * | value | ) | const |
Inequality operator.
|
inline |
Fast inequality operator.
References String::c_str(), and String::hash().
bool operator&= | ( | const char * | value | ) | const |
Case-insensitive equality operator.
|
inline |
Appending operator for strings.
value | Value to assign to the string |
References String::append().
Referenced by String::operator+=(), and String::operator<<().
String& operator+= | ( | char | value | ) |
Appending operator for single characters.
value | Value to append to the string |
String& operator+= | ( | int32_t | value | ) |
Appending operator for 32 bit integers.
value | Value to append to the string |
String& operator+= | ( | uint32_t | value | ) |
Appending operator for 32 bit unsigned integers.
value | Value to append to the string |
String& operator+= | ( | int64_t | value | ) |
Appending operator for 64 bit integers.
value | Value to append to the string |
String& operator+= | ( | uint64_t | value | ) |
Appending operator for 64 bit unsigned integers.
value | Value to append to the string |
|
inline |
Appending operator for booleans.
value | Value to append to the string |
References String::boolText(), and String::operator+=().
String& operator+= | ( | double | value | ) |
Appending operator for double.
value | Value to append to the string |
|
inline |
Stream style appending operator for C strings
References String::operator+=().
|
inline |
Stream style appending operator for single characters
References String::operator+=().
|
inline |
Stream style appending operator for 32 bit integers
References String::operator+=().
|
inline |
Stream style appending operator for 32 bit unsigned integers
References String::operator+=().
|
inline |
Stream style appending operator for 64 bit integers
References String::operator+=().
|
inline |
Stream style appending operator for 64 bit unsigned integers
References String::operator+=().
|
inline |
Stream style appending operator for booleans
References String::operator+=().
|
inline |
Stream style appending operator for double
References String::operator+=().
Assignment operator.
value | Value to assign to the string |
References String::c_str().
Referenced by Configuration::operator=(), Message::operator=(), String::operator=(), Regexp::operator=(), NamedString::operator=(), and URI::operator=().
Assignment from String* operator.
value | Value to assign to the string |
References String::c_str(), and String::operator=().
String& operator= | ( | const char * | value | ) |
Assignment from char* operator.
value | Value to assign to the string |
String& operator= | ( | char | value | ) |
Assignment operator for single characters.
value | Value to assign to the string |
String& operator= | ( | int32_t | value | ) |
Assignment operator for 32 bit integers.
value | Value to assign to the string |
String& operator= | ( | uint32_t | value | ) |
Assignment operator for 32 bit unsigned integers.
value | Value to assign to the string |
String& operator= | ( | int64_t | value | ) |
Assignment operator for 64 bit integers.
value | Value to assign to the string |
String& operator= | ( | uint64_t | value | ) |
Assignment operator for 64 bit unsigned integers.
value | Value to assign to the string |
|
inline |
Assignment operator for booleans.
value | Value to assign to the string |
References String::boolText(), and String::operator=().
String& operator= | ( | double | value | ) |
Assignment operator for double.
value | Value to assign to the string |
bool operator== | ( | const char * | value | ) | const |
Equality operator.
Referenced by String::matches().
|
inline |
Fast equality operator.
References String::c_str(), and String::hash().
String& operator>> | ( | const char * | skip | ) |
Stream style substring skipping operator. It eats all characters up to and including the skip string
|
inline |
Indexing operator with signed int
index | Index of character in string |
References String::at().
|
inline |
Indexing operator with unsigned int
index | Index of character in string |
References String::at().
bool operator|= | ( | const char * | value | ) | const |
Case-insensitive inequality operator.
String& printf | ( | const char * | format, |
... | |||
) |
Build a String in a printf style.
format | The output format. NOTE: The length of the resulting string will be at most 128 + length of format |
String& printf | ( | unsigned int | length, |
const char * | format, | ||
... | |||
) |
Build a String in a printf style.
length | maximum length of the resulting string |
format | The output format. |
Create a string by replacing matched strings in a template
templ | Template of the string to generate |
int rfind | ( | char | what | ) | const |
Locate the last instance of a character in the string
what | Character to search for |
int rfind | ( | const char * | what | ) | const |
Locate the last instance of a substring in the string
what | Substring to search for |
|
inline |
Get a valid non-NULL C string.
Referenced by TelEngine::c_safe(), and Regexp::matches().
|
inline |
Get a valid non-NULL C string with a provided default.
defStr | Default C string to return if stored is NULL |
ObjList* split | ( | char | separator, |
bool | emptyOK = true |
||
) | const |
Splits the string at a delimiter character
separator | Character where to split the string |
emptyOK | True if empty strings should be inserted in list |
|
static |
Create an escaped string suitable for use in SQL queries
str | String to convert to escaped format |
extraEsc | Character to escape other than the default ones |
Referenced by String::sqlEscape().
|
inline |
Create an escaped string suitable for use in SQL queries
extraEsc | Character to escape other than the default ones |
References String::c_str(), and String::sqlEscape().
bool startSkip | ( | const char * | what, |
bool | wordBreak = true , |
||
bool | caseInsensitive = false |
||
) |
Checks if the string starts with a substring and removes it
what | Substring to search for |
wordBreak | Check if a word boundary follows the substring; this parameter defaults to True because the intended use of this method is to separate commands from their parameters |
caseInsensitive | Compare case-insensitive if set |
Referenced by ClientContact::getContactSection().
bool startsWith | ( | const char * | what, |
bool | wordBreak = false , |
||
bool | caseInsensitive = false |
||
) | const |
Checks if the string starts with a substring
what | Substring to search for |
wordBreak | Check if a word boundary follows the substring |
caseInsensitive | Compare case-insensitive if set |
Referenced by XmlElement::isXmlns().
|
inlinestatic |
Advance a const string past an UTF-8 Byte Order Mark
str | String to check for and strip BOM |
References String::checkBOM().
|
inlinestatic |
Advance a string past an UTF-8 Byte Order Mark
str | String to check for and strip BOM |
References String::checkBOM().
|
inline |
Strip an UTF-8 Byte Order Mark from the start of this string
References String::c_str(), and String::checkBOM().
String substr | ( | int | offs, |
int | len = -1 |
||
) | const |
Substring extraction
offs | Offset of the substring, negative to count from end |
len | Length of the substring, -1 for everything possible |
Referenced by String::matchString(), and ClientContact::splitContactId().
bool toBoolean | ( | bool | defvalue = false | ) | const |
Convert the string to a boolean value.
defvalue | Default to return if the string is not a bool |
double toDouble | ( | double | defvalue = 0.0 | ) | const |
Convert the string to a floating point value.
defvalue | Default to return if the string is not a number |
int64_t toInt64 | ( | int64_t | defvalue = 0 , |
int | base = 0 , |
||
int64_t | minvalue = LLONG_MIN , |
||
int64_t | maxvalue = LLONG_MAX , |
||
bool | clamp = true |
||
) | const |
Convert the string to an 64 bit integer value.
defvalue | Default to return if the string is not a number |
base | Numeration base, 0 to autodetect |
minvalue | Minimum value allowed |
maxvalue | Maximum value allowed |
clamp | Control the out of bound values: true to adjust to the nearest bound, false to return the default value |
int toInteger | ( | int | defvalue = 0 , |
int | base = 0 , |
||
int | minvalue = INT_MIN , |
||
int | maxvalue = INT_MAX , |
||
bool | clamp = true |
||
) | const |
Convert the string to an integer value.
defvalue | Default to return if the string is not a number |
base | Numeration base, 0 to autodetect |
minvalue | Minimum value allowed |
maxvalue | Maximum value allowed |
clamp | Control the out of bound values: true to adjust to the nearest bound, false to return the default value |
int toInteger | ( | const TokenDict * | tokens, |
int | defvalue = 0 , |
||
int | base = 0 |
||
) | const |
Convert the string to an integer value looking up first a token table.
tokens | Pointer to an array of tokens to lookup first |
defvalue | Default to return if the string is not a token or number |
base | Numeration base, 0 to autodetect |
long int toLong | ( | long int | defvalue = 0 , |
int | base = 0 , |
||
long int | minvalue = LONG_MIN , |
||
long int | maxvalue = LONG_MAX , |
||
bool | clamp = true |
||
) | const |
Convert the string to an long integer value.
defvalue | Default to return if the string is not a number |
base | Numeration base, 0 to autodetect |
minvalue | Minimum value allowed |
maxvalue | Maximum value allowed |
clamp | Control the out of bound values: true to adjust to the nearest bound, false to return the default value |
String& toLower | ( | ) |
Turn the string to an all-lowercase string
Referenced by ClientContact::buildContactId().
|
virtual |
Override GenObject's method to return this String
Reimplemented from GenObject.
Reimplemented in NamedString.
Referenced by UIWidget::name().
String& trimBlanks | ( | ) |
Strip off leading and trailing blank characters
String& trimSpaces | ( | ) |
Strip off leading and trailing whitespace characters (blank, tabs, form-feed, newlines)
|
static |
Create an escaped string suitable for use in URIs
str | String to convert to escaped format |
extraEsc | Character to escape other than the default ones |
noEsc | Optional pointer to string of characters that shouldn't be escaped |
Referenced by ClientContact::buildContactId(), ClientContact::buildContactInstanceId(), and String::uriEscape().
|
static |
Create an escaped string suitable for use in URIs
str | String to convert to escaped format |
extraEsc | Pointer to string of characters to escape other than the defaults |
noEsc | Optional pointer to string of characters that shouldn't be escaped |
|
inline |
Create an escaped string suitable for use in URI
extraEsc | Character to escape other than the default ones |
noEsc | Optional pointer to string of characters that shouldn't be escaped |
References String::c_str(), and String::uriEscape().
|
static |
Decode an URI escaped string back to its raw form
str | String to convert to unescaped format |
errptr | Pointer to an integer to receive the place of 1st error |
Referenced by ClientContact::getContactSection(), ClientContact::splitContactId(), and String::uriUnescape().
|
inline |
Decode an URI escaped string back to its raw form
errptr | Pointer to an integer to receive the place of 1st error |
References String::c_str(), and String::uriUnescape().