E-MailRelay
|
An implementation namespace for G::Str. More...
Classes | |
struct | InPlaceBackInserter |
A character appender used by G::Str. More... | |
struct | Joiner |
A sub-string joiner used by G::Str. More... | |
struct | PrintableAppender |
A character appender used by G::Str. More... | |
Functions | |
bool | isDigit (char c) |
bool | isHex (char c) |
bool | isPrintableAscii (char c) |
char | toLower (char c) |
char | toUpper (char c) |
unsigned short | toUShort (const std::string &s, bool &overflow, bool &invalid) |
unsigned long | toULong (const std::string &s, bool &overflow, bool &invalid) |
unsigned long | toULongHex (const std::string &s, bool limited) |
unsigned int | toUInt (const std::string &s, bool &overflow, bool &invalid) |
short | toShort (const std::string &s, bool &overflow, bool &invalid) |
long | toLong (const std::string &s, bool &overflow, bool &invalid) |
int | toInt (const std::string &s, bool &overflow, bool &invalid) |
void | strncpy (char *, const char *, std::size_t) noexcept |
void | escape (std::string &s, char c_escape, const char *specials_in, const char *specials_out, bool with_nul) |
void | readLineFrom (std::istream &stream, const std::string &eol, std::string &line) |
template<typename S , typename T , typename SV > | |
void | splitIntoTokens (const S &in, T &out, const SV &ws) |
template<typename S , typename T > | |
void | splitIntoTokens (const S &in, T &out, const S &ws, typename S::value_type esc) |
template<typename T > | |
void | splitIntoFields (const std::string &in, T &out, string_view ws) |
template<typename T > | |
void | splitIntoFields (const std::string &in_in, T &out, string_view ws, char escape, bool remove_escapes) |
template<typename T1 , typename T2 , typename P > | |
bool | equal4 (T1 p1, T1 end1, T2 p2, T2 end2, P p) |
bool | ilessc (char c1, char c2) |
bool | iless (const std::string &a, const std::string &b) |
bool | imatchc (char c1, char c2) |
bool | imatch (const std::string &a, const std::string &b) |
bool | match (const std::string &a, const std::string &b, bool ignore_case) |
template<typename T , typename V > | |
T | unique (T in, T end, V repeat, V replacement) |
bool | inList (StringArray::const_iterator begin, StringArray::const_iterator end, const std::string &s, bool i) |
bool | notInList (StringArray::const_iterator begin, StringArray::const_iterator end, const std::string &s, bool i) |
void | join (const std::string &, std::string &, const std::string &) |
template<typename Tout > | |
std::size_t | outputHex (Tout out, char c) |
template<typename Tout > | |
std::size_t | outputHex (Tout out, wchar_t c) |
template<typename Tout , typename Tchar > | |
std::size_t | outputPrintable (Tout, Tchar, Tchar, char, bool) |
An implementation namespace for G::Str.
bool G::StrImp::equal4 | ( | T1 | p1, |
T1 | end1, | ||
T2 | p2, | ||
T2 | end2, | ||
P | p | ||
) |
void G::StrImp::escape | ( | std::string & | s, |
char | c_escape, | ||
const char * | specials_in, | ||
const char * | specials_out, | ||
bool | with_nul | ||
) |
bool G::StrImp::iless | ( | const std::string & | a, |
const std::string & | b | ||
) |
bool G::StrImp::imatch | ( | const std::string & | a, |
const std::string & | b | ||
) |
bool G::StrImp::inList | ( | StringArray::const_iterator | begin, |
StringArray::const_iterator | end, | ||
const std::string & | s, | ||
bool | i | ||
) |
void G::StrImp::join | ( | const std::string & | sep, |
std::string & | result, | ||
const std::string & | s | ||
) |
bool G::StrImp::match | ( | const std::string & | a, |
const std::string & | b, | ||
bool | ignore_case | ||
) |
bool G::StrImp::notInList | ( | StringArray::const_iterator | begin, |
StringArray::const_iterator | end, | ||
const std::string & | s, | ||
bool | i | ||
) |
std::size_t G::StrImp::outputHex | ( | Tout | out, |
char | c | ||
) |
std::size_t G::StrImp::outputHex | ( | Tout | out, |
wchar_t | c | ||
) |
std::size_t G::StrImp::outputPrintable | ( | Tout | out, |
Tchar | c, | ||
Tchar | escape_in, | ||
char | escape_out, | ||
bool | eight_bit | ||
) |
void G::StrImp::readLineFrom | ( | std::istream & | stream, |
const std::string & | eol, | ||
std::string & | line | ||
) |
void G::StrImp::splitIntoFields | ( | const std::string & | in, |
T & | out, | ||
string_view | ws | ||
) |
void G::StrImp::splitIntoFields | ( | const std::string & | in_in, |
T & | out, | ||
string_view | ws, | ||
char | escape, | ||
bool | remove_escapes | ||
) |
void G::StrImp::splitIntoTokens | ( | const S & | in, |
T & | out, | ||
const S & | ws, | ||
typename S::value_type | esc | ||
) |
void G::StrImp::splitIntoTokens | ( | const S & | in, |
T & | out, | ||
const SV & | ws | ||
) |
|
noexcept |
int G::StrImp::toInt | ( | const std::string & | s, |
bool & | overflow, | ||
bool & | invalid | ||
) |
long G::StrImp::toLong | ( | const std::string & | s, |
bool & | overflow, | ||
bool & | invalid | ||
) |
short G::StrImp::toShort | ( | const std::string & | s, |
bool & | overflow, | ||
bool & | invalid | ||
) |
unsigned int G::StrImp::toUInt | ( | const std::string & | s, |
bool & | overflow, | ||
bool & | invalid | ||
) |
unsigned long G::StrImp::toULong | ( | const std::string & | s, |
bool & | overflow, | ||
bool & | invalid | ||
) |
unsigned long G::StrImp::toULongHex | ( | const std::string & | s, |
bool | limited | ||
) |
unsigned short G::StrImp::toUShort | ( | const std::string & | s, |
bool & | overflow, | ||
bool & | invalid | ||
) |