#include <wibble/operators.h>
#include <wibble/sfinae.h>
#include <cstdarg>
#include <string>
#include <set>
#include <vector>
#include <sstream>
#include <cctype>
#include <cstdio>
Go to the source code of this file.
Classes | |
class | wibble::str::Split |
Split a string where a given substring is found. More... | |
class | wibble::str::Split::const_iterator |
class | wibble::str::YamlStream |
Parse a record of Yaml-style field: value couples. More... | |
class | wibble::str::YamlStream::const_iterator |
Namespaces | |
namespace | wibble |
namespace | wibble::str |
Functions | |
template<typename X > | |
TPair< std::ostream, typename X::Type >::First & | wibble::str::operator<< (std::ostream &o, X list) |
template<typename T > | |
std::string | wibble::str::fmt (const T &val) |
Format any value into a string using a std::stringstream. | |
template<> | |
std::string | wibble::str::fmt< std::string > (const std::string &val) |
template<> | |
std::string | wibble::str::fmt< char * > (char *const &val) |
template<typename C > | |
std::string | wibble::str::fmt_container (const C &c, char f, char l) |
template<typename X > | |
std::string | wibble::str::fmt (const std::set< X > &val) |
template<typename X > | |
std::string | wibble::str::fmt (const std::vector< X > &val) |
std::string | wibble::str::basename (const std::string &pathname) |
Given a pathname, return the file name without its path. | |
std::string | wibble::str::dirname (const std::string &pathname) |
Given a pathname, return the directory name without the file name. | |
std::string | wibble::str::normpath (const std::string &pathname) |
Normalise a pathname. | |
bool | wibble::str::startsWith (const std::string &str, const std::string &part) |
Check if a string starts with the given substring. | |
bool | wibble::str::endsWith (const std::string &str, const std::string &part) |
Check if a string ends with the given substring. | |
template<typename FUN > | |
std::string | wibble::str::trim (const std::string &str, const FUN &classifier) |
Return the substring of 'str' without all leading and trailing characters for which 'classifier' returns true. | |
std::string | wibble::str::trim (const std::string &str) |
Return the substring of 'str' without all leading and trailing spaces. | |
std::string | wibble::str::toupper (const std::string &str) |
Convert a string to uppercase. | |
std::string | wibble::str::tolower (const std::string &str) |
Convert a string to lowercase. | |
std::string | wibble::str::ucfirst (const std::string &str) |
Return the same string, with the first character uppercased. | |
std::string | wibble::str::joinpath (const std::string &path1, const std::string &path2) |
Join two paths, adding slashes when appropriate. | |
std::string | wibble::str::urlencode (const std::string &str) |
Urlencode a string. | |
std::string | wibble::str::urldecode (const std::string &str) |
Decode an urlencoded string. | |
std::string | wibble::str::encodeBase64 (const std::string &str) |
Encode a string in Base64. | |
std::string | wibble::str::decodeBase64 (const std::string &str) |
Decode a string encoded in Base64. | |
template<typename ITER > | |
std::string | wibble::str::join (const ITER &begin, const ITER &end, const std::string &sep=", ") |