libzypp
13.10.6
|
#include <cstring>
#include <iosfwd>
#include <vector>
#include <string>
#include <sstream>
#include "zypp/base/Easy.h"
#include "zypp/base/PtrTypes.h"
#include "zypp/base/Function.h"
Go to the source code of this file.
Classes | |
class | zypp::C_Str |
Convenience char* constructible from std::string and char* , it maps (char*)0 to an empty string. More... | |
struct | zypp::str::SafeBuf |
Assert free called for allocated char * . More... | |
struct | zypp::str::Str |
Convenient building of std::string via std::ostream::operator<<. More... | |
Namespaces | |
zypp | |
Easy-to use interface to the ZYPP dependency resolver. | |
zypp::str | |
String related utilities and Regular expression matching. | |
Functions | |
template<class _Tp > | |
std::string | zypp::asUserString (const _Tp &val_r) |
Request a human readable (translated) string representation of _Tp [_Tp.asUserString()] Classes may implement a default as member function. More... | |
std::string | zypp::str::asString (const std::string &t) |
Global asString() that works with std::string too. More... | |
std::string | zypp::str::asString (const char *t) |
std::string | zypp::str::asString (char *t) |
template<class _T > | |
std::string | zypp::str::asString (const _T &t) |
template<class _T > | |
std::string | zypp::str::asString (const intrusive_ptr< _T > &p) |
template<class _T > | |
std::string | zypp::str::asString (const weak_ptr< _T > &p) |
template<> | |
std::string | zypp::str::asString (const bool &t) |
std::string | zypp::str::form (const char *format,...) __attribute__((format(printf |
Printf style construction of std::string. More... | |
std::string | zypp::str::strerror (int errno_r) |
Return string describing the error_r code. More... | |
std::string | zypp::str::gsub (const std::string &str_r, const std::string &from_r, const std::string &to_r) |
Return a string with all occurrences of from_r replaced with to_r . More... | |
std::string | zypp::str::gsubFun (const std::string &str_r, const std::string &from_r, function< std::string()> to_r) |
std::string & | zypp::str::replaceAll (std::string &str_r, const std::string &from_r, const std::string &to_r) |
Replace all occurrences of from_r with to_r in str_r (inplace). More... | |
std::string & | zypp::str::replaceAllFun (std::string &str_r, const std::string &from_r, function< std::string()> to_r) |
std::string | zypp::str::stripFirstWord (std::string &line, const bool ltrim_first) |
std::string | zypp::str::stripLastWord (std::string &line, const bool rtrim_first) |
std::string | zypp::str::getline (std::istream &str, bool trim=false) |
Return stream content up to (but not returning) the next newline. More... | |
std::string | zypp::str::getline (std::istream &str, const Trim trim_r) |
Return stream content up to (but not returning) the next newline. More... | |
std::string | zypp::str::receiveUpTo (std::istream &str, const char delim_r, bool returnDelim_r=false) |
Return stream content up to the next ocurrence of delim_r or EOF delim_r , if found, is always read from the stream. More... | |
String representation of number. | |
std::string | zypp::str::numstring (char n, int w=0) |
std::string | zypp::str::numstring (unsigned char n, int w=0) |
std::string | zypp::str::numstring (short n, int w=0) |
std::string | zypp::str::numstring (unsigned short n, int w=0) |
std::string | zypp::str::numstring (int n, int w=0) |
std::string | zypp::str::numstring (unsigned n, int w=0) |
std::string | zypp::str::numstring (long n, int w=0) |
std::string | zypp::str::numstring (unsigned long n, int w=0) |
std::string | zypp::str::numstring (long long n, int w=0) |
std::string | zypp::str::numstring (unsigned long long n, int w=0) |
template<> | |
std::string | zypp::str::asString (const char &t) |
template<> | |
std::string | zypp::str::asString (const unsigned char &t) |
template<> | |
std::string | zypp::str::asString (const short &t) |
template<> | |
std::string | zypp::str::asString (const unsigned short &t) |
template<> | |
std::string | zypp::str::asString (const int &t) |
template<> | |
std::string | zypp::str::asString (const unsigned &t) |
template<> | |
std::string | zypp::str::asString (const long &t) |
template<> | |
std::string | zypp::str::asString (const unsigned long &t) |
template<> | |
std::string | zypp::str::asString (const long long &t) |
template<> | |
std::string | zypp::str::asString (const unsigned long long &t) |
String representation of number as hex value with leading '0x'. | |
Optional second argument sets the minimal string width (0 padded). Negative values will cause the number to be left adjusted within the string. Default width is 10 (4 for char). hexstring(42) -> "0x0000002a" hexstring(42, 4) -> "0x2a" hexstring(42,-4) -> "0x2a" | |
std::string | zypp::str::hexstring (char n, int w=4) |
std::string | zypp::str::hexstring (unsigned char n, int w=4) |
std::string | zypp::str::hexstring (short n, int w=10) |
std::string | zypp::str::hexstring (unsigned short n, int w=10) |
std::string | zypp::str::hexstring (int n, int w=10) |
std::string | zypp::str::hexstring (unsigned n, int w=10) |
std::string | zypp::str::hexstring (long n, int w=10) |
std::string | zypp::str::hexstring (unsigned long n, int w=10) |
std::string | zypp::str::hexstring (long long n, int w=0) |
std::string | zypp::str::hexstring (unsigned long long n, int w=0) |
String representation of number as octal value with leading '0'. | |
Optional second argument sets the minimal string width (0 padded). Negative values will cause the number to be left adjusted within the string. Default width is 5 (4 for char). octstring(42) -> "00052" octstring(42, 4) -> "0052" octstring(42,-4) -> "052 " | |
std::string | zypp::str::octstring (char n, int w=4) |
std::string | zypp::str::octstring (unsigned char n, int w=4) |
std::string | zypp::str::octstring (short n, int w=5) |
std::string | zypp::str::octstring (unsigned short n, int w=5) |
std::string | zypp::str::octstring (int n, int w=5) |
std::string | zypp::str::octstring (unsigned n, int w=5) |
std::string | zypp::str::octstring (long n, int w=5) |
std::string | zypp::str::octstring (unsigned long n, int w=5) |
std::string | zypp::str::octstring (long long n, int w=0) |
std::string | zypp::str::octstring (unsigned long long n, int w=0) |
template<typename _It > | |
_It | zypp::str::strtonum (const C_Str &str) |
Parsing numbers from string. More... | |
template<> | |
short | zypp::str::strtonum (const C_Str &str) |
Parsing numbers from string. More... | |
template<> | |
int | zypp::str::strtonum (const C_Str &str) |
Parsing numbers from string. More... | |
template<> | |
long | zypp::str::strtonum (const C_Str &str) |
Parsing numbers from string. More... | |
template<> | |
long long | zypp::str::strtonum (const C_Str &str) |
Parsing numbers from string. More... | |
template<> | |
unsigned short | zypp::str::strtonum (const C_Str &str) |
Parsing numbers from string. More... | |
template<> | |
unsigned | zypp::str::strtonum (const C_Str &str) |
Parsing numbers from string. More... | |
template<> | |
unsigned long | zypp::str::strtonum (const C_Str &str) |
Parsing numbers from string. More... | |
template<> | |
unsigned long long | zypp::str::strtonum (const C_Str &str) |
Parsing numbers from string. More... | |
template<typename _It > | |
_It | zypp::str::strtonum (const C_Str &str, _It &i) |
String to integer type detemined 2nd function arg i. More... | |
bool | zypp::str::strToTrue (const C_Str &str) |
Parsing boolean from string. More... | |
bool | zypp::str::strToFalse (const C_Str &str) |
Return false if str is 0, false, no, off . More... | |
bool | zypp::str::strToBool (const C_Str &str, bool default_r) |
Parse str into a bool depending on the default value. More... | |
bool | zypp::str::strToBoolNodefault (const C_Str &str, bool &return_r) |
Parse str into a bool if it's a legal true or false string. More... | |
Split. | |
template<class _OutputIterator > | |
unsigned | zypp::str::split (const C_Str &line_r, _OutputIterator result_r, const C_Str &sepchars_r=" \t") |
Split line_r into words. More... | |
template<class _OutputIterator > | |
unsigned | zypp::str::splitEscaped (const C_Str &line_r, _OutputIterator result_r, const C_Str &sepchars_r=" \t", bool withEmpty=false) |
Split line_r into words with respect to escape delimeters. More... | |
template<class _OutputIterator > | |
unsigned | zypp::str::splitFields (const C_Str &line_r, _OutputIterator result_r, const C_Str &sepchars_r=":") |
Split line_r into fields. More... | |
template<class _OutputIterator > | |
unsigned | zypp::str::splitFieldsEscaped (const C_Str &line_r, _OutputIterator result_r, const C_Str &sepchars_r=":") |
Split line_r into fields handling also escaped separators. More... | |
Join. | |
template<class _Iterator > | |
std::string | zypp::str::join (_Iterator begin, _Iterator end, const C_Str &sep_r=" ") |
Join strings using separator sep_r (defaults to BLANK). More... | |
template<class _Container > | |
std::string | zypp::str::join (const _Container &cont_r, const C_Str &sep_r=" ") |
Join strings using separator sep_r (defaults to BLANK). More... | |
template<class _Iterator > | |
std::string | zypp::str::joinEscaped (_Iterator begin, _Iterator end, const char sep_r= ' ') |
Join strings using separator sep_r, quoting or escaping the values. More... | |
Escape. | |
std::string | zypp::str::escape (const C_Str &str_r, const char c= ' ') |
Escape desired character c using a backslash. More... | |
void | zypp::str::appendEscaped (std::string &str_r, const C_Str &next_r, const char sep_r= ' ') |
Escape next_r and append it to str_r using separator sep_r. More... | |
Hexencode. | |
Encode all characters other than [a-zA-Z0-9] as XX.
This includes the % character itself, which becomes %25. | |
std::string | zypp::str::hexencode (const C_Str &str_r) |
Encode all characters other than [a-zA-Z0-9] as XX. More... | |
std::string | zypp::str::hexdecode (const C_Str &str_r) |
Decode hexencoded XX sequences. More... | |
Case conversion. | |
std::string | zypp::str::toLower (const std::string &s) |
Return lowercase version of s. More... | |
std::string | zypp::str::toLower (const char *s) |
std::string | zypp::str::toUpper (const std::string &s) |
Return uppercase version of s. More... | |
std::string | zypp::str::toUpper (const char *s) |
Case insensitive comparison. | |
int | zypp::str::compareCI (const C_Str &lhs, const C_Str &rhs) |
Locate substring. | |
bool | zypp::str::contains (const C_Str &str_r, const C_Str &val_r) |
Locate substring case sensitive. More... | |
bool | zypp::str::containsCI (const C_Str &str_r, const C_Str &val_r) |
Locate substring case insensitive. More... | |
String prefix/suffix handling. | |
bool | zypp::str::hasPrefix (const C_Str &str_r, const C_Str &prefix_r) |
Return whether str_r has prefix prefix_r. More... | |
std::string | zypp::str::stripPrefix (const C_Str &str_r, const C_Str &prefix_r) |
Strip a prefix_r from str_r and return the resulting string. More... | |
bool | zypp::str::hasSuffix (const C_Str &str_r, const C_Str &suffix_r) |
Return whether str_r has suffix suffix_r. More... | |
std::string | zypp::str::stripSuffix (const C_Str &str_r, const C_Str &suffix_r) |
Strip a suffix_r from str_r and return the resulting string. More... | |
std::string::size_type | zypp::str::commonPrefix (const C_Str &lhs, const C_Str &rhs) |
Return size of the common prefix of lhs and rhs. More... | |
bool | zypp::str::startsWith (const C_Str &str_r, const C_Str &prefix_r) |
alias for hasPrefix More... | |
bool | zypp::str::endsWith (const C_Str &str_r, const C_Str &prefix_r) |
alias for hasSuffix More... | |
Trimming whitepace. | |
| |
enum | zypp::str::Trim { zypp::str::NO_TRIM = 0x00, zypp::str::L_TRIM = 0x01, zypp::str::R_TRIM = 0x02, zypp::str::TRIM = (L_TRIM|R_TRIM) } |
To define how to trim. More... | |
std::string | zypp::str::trim (const std::string &s, const Trim trim_r) |
std::string | zypp::str::ltrim (const std::string &s) |
std::string | zypp::str::rtrim (const std::string &s) |