Bitcoin ABC  0.26.3
P2P Digital Currency
Functions
string.h File Reference
#include <util/spanparsing.h>
#include <algorithm>
#include <array>
#include <cstdint>
#include <cstring>
#include <locale>
#include <sstream>
#include <string>
#include <string_view>
#include <vector>
Include dependency graph for string.h:

Go to the source code of this file.

Functions

void ReplaceAll (std::string &in_out, const std::string &search, const std::string &substitute)
 
std::vector< std::string > SplitString (std::string_view str, char sep)
 
std::string TrimString (const std::string &str, const std::string &pattern=" \f\n\r\t\v")
 
std::string RemovePrefix (const std::string &str, const std::string &prefix)
 
template<typename T , typename BaseType , typename UnaryOp >
auto Join (const std::vector< T > &list, const BaseType &separator, UnaryOp unary_op) -> decltype(unary_op(list.at(0)))
 Join a list of items. More...
 
template<typename T >
Join (const std::vector< T > &list, const T &separator)
 
std::string Join (const std::vector< std::string > &list, const std::string &separator)
 
bool ValidAsCString (const std::string &str) noexcept
 Check if a string does not contain any embedded NUL (\0) characters. More...
 
template<typename T >
std::string ToString (const T &t)
 Locale-independent version of std::to_string. More...
 
template<typename T1 , size_t PREFIX_LEN>
bool HasPrefix (const T1 &obj, const std::array< uint8_t, PREFIX_LEN > &prefix)
 Check whether a container begins with the given prefix. More...
 

Function Documentation

◆ HasPrefix()

template<typename T1 , size_t PREFIX_LEN>
bool HasPrefix ( const T1 &  obj,
const std::array< uint8_t, PREFIX_LEN > &  prefix 
)
inline

Check whether a container begins with the given prefix.

Definition at line 99 of file string.h.

Here is the caller graph for this function:

◆ Join() [1/3]

std::string Join ( const std::vector< std::string > &  list,
const std::string &  separator 
)
inline

Definition at line 72 of file string.h.

◆ Join() [2/3]

template<typename T , typename BaseType , typename UnaryOp >
auto Join ( const std::vector< T > &  list,
const BaseType &  separator,
UnaryOp  unary_op 
) -> decltype(unary_op(list.at(0)))

Join a list of items.

Parameters
listThe list to join
separatorThe separator
unary_opApply this operator to each item in the list

Definition at line 54 of file string.h.

Here is the caller graph for this function:

◆ Join() [3/3]

template<typename T >
T Join ( const std::vector< T > &  list,
const T &  separator 
)

Definition at line 66 of file string.h.

Here is the call graph for this function:

◆ RemovePrefix()

std::string RemovePrefix ( const std::string &  str,
const std::string &  prefix 
)
inline

Definition at line 38 of file string.h.

Here is the caller graph for this function:

◆ ReplaceAll()

void ReplaceAll ( std::string &  in_out,
const std::string &  search,
const std::string &  substitute 
)

Definition at line 10 of file string.cpp.

Here is the caller graph for this function:

◆ SplitString()

std::vector<std::string> SplitString ( std::string_view  str,
char  sep 
)
inline

Definition at line 23 of file string.h.

Here is the caller graph for this function:

◆ ToString()

template<typename T >
std::string ToString ( const T &  t)

Locale-independent version of std::to_string.

Definition at line 87 of file string.h.

Here is the caller graph for this function:

◆ TrimString()

std::string TrimString ( const std::string &  str,
const std::string &  pattern = " \f\n\r\t\v" 
)
inline

Definition at line 29 of file string.h.

Here is the caller graph for this function:

◆ ValidAsCString()

bool ValidAsCString ( const std::string &  str)
inlinenoexcept

Check if a string does not contain any embedded NUL (\0) characters.

Definition at line 80 of file string.h.

Here is the caller graph for this function: