Bitcoin Core 31.0.0
P2P Digital Currency
Loading...
Searching...
No Matches
string.h File Reference
#include <span.h>
#include <array>
#include <cstdint>
#include <cstring>
#include <locale>
#include <optional>
#include <sstream>
#include <string>
#include <string_view>
#include <vector>
Include dependency graph for string.h:

Go to the source code of this file.

Classes

struct  util::ConstevalFormatString< num_params >
 A wrapper for a compile-time partially validated format string. More...
struct  util::LineReader

Namespaces

namespace  util
namespace  util::detail

Functions

template<unsigned num_params>
static constexpr void util::detail::CheckNumFormatSpecifiers (const char *str)
void util::ReplaceAll (std::string &in_out, const std::string &search, const std::string &substitute)
template<typename T = std::span<const char>>
std::vector< Tutil::Split (const std::span< const char > &sp, std::string_view separators, bool include_sep=false)
 Split a string on any char found in separators, returning a vector.
template<typename T = std::span<const char>>
std::vector< Tutil::Split (const std::span< const char > &sp, char sep, bool include_sep=false)
 Split a string on every instance of sep, returning a vector.
std::vector< std::string > util::SplitString (std::string_view str, char sep)
std::vector< std::string > util::SplitString (std::string_view str, std::string_view separators)
std::string_view util::TrimStringView (std::string_view str, std::string_view pattern=" \f\n\r\t\v")
std::string util::TrimString (std::string_view str, std::string_view pattern=" \f\n\r\t\v")
std::string_view util::RemoveSuffixView (std::string_view str, std::string_view suffix)
std::string_view util::RemovePrefixView (std::string_view str, std::string_view prefix)
std::string util::RemovePrefix (std::string_view str, std::string_view prefix)
template<typename C, typename S, typename UnaryOp>
auto util::Join (const C &container, const S &separator, UnaryOp unary_op)
 Join all container items.
template<typename C, typename S>
auto util::Join (const C &container, const S &separator)
std::string util::MakeUnorderedList (const std::vector< std::string > &items)
 Create an unordered multi-line list of items.
bool util::ContainsNoNUL (std::string_view str) noexcept
 Check if a string does not contain any embedded NUL (\0) characters.
template<typename T>
std::string util::ToString (const T &t)
 Locale-independent version of std::to_string.
template<typename T1, size_t PREFIX_LEN>
bool util::HasPrefix (const T1 &obj, const std::array< uint8_t, PREFIX_LEN > &prefix)
 Check whether a container begins with the given prefix.