CommonLib
Loading...
Searching...
No Matches
string.h File Reference
#include <optional>
#include <string>
#include <type_traits>
#include <vector>
#include "expr/string_expr.h"
#include "string.inl"

Go to the source code of this file.

Namespaces

namespace  hedgedev
namespace  hedgedev::csl
namespace  hedgedev::csl::ut
namespace  hedgedev::csl::ut::string

Functions

template<expr::any_string T_left, expr::any_string T_right>
bool hedgedev::csl::ut::string::compare (const T_left &in_left, const T_right &in_right, bool in_case_sensitive=true)
template<expr::any_string T_str, expr::any_string T_substr>
bool hedgedev::csl::ut::string::contains (const T_str &in_str, const T_substr &in_substr, bool in_case_sensitive=true)
template<expr::any_string T_str, typename T_str_char = expr::get_char_type_t<T_str>>
expr::inferred_string_t< T_str > hedgedev::csl::ut::string::escape (const T_str &in_str, T_str_char in_search_char, T_str_char in_escape_char=T_str_char('\\'))
template<expr::any_string T>
expr::inferred_string_t< T > hedgedev::csl::ut::string::format (const T in_str,...)
template<expr::any_string T>
size_t hedgedev::csl::ut::string::get_width (const T &in_str)
template<expr::any_string T_str, expr::any_string T_url, typename T_result = expr::pi_string_t<T_str, T_url>>
T_result hedgedev::csl::ut::string::hyperlink (const T_str &in_str, const T_url &in_url)
template<expr::any_string T>
bool hedgedev::csl::ut::string::is_null_or_empty (const T &in_str)
template<expr::any_string T>
bool hedgedev::csl::ut::string::is_null_or_whitespace (const T &in_str)
template<expr::any_string T_delimiter, expr::any_string T_strings>
expr::inferred_string_t< T_strings > hedgedev::csl::ut::string::join (const T_delimiter &in_delimiter, const std::vector< T_strings > &in_strings)
template<expr::any_string T_delimiter, expr::any_string... T_args, typename T_result = expr::pi_string_t<T_delimiter, T_args...>>
T_result hedgedev::csl::ut::string::join (const T_delimiter &in_delimiter, const T_args &... in_args)
template<expr::any_string T_str, expr::any_string T_pad_str, typename T_result = expr::pi_string_t<T_str, T_pad_str>>
T_result hedgedev::csl::ut::string::pad (const T_str &in_str, const T_pad_str &in_pad_str)
template<typename T_result, expr::any_string T_str>
T_result hedgedev::csl::ut::string::parse (const T_str &in_str)
template<expr::any_string T_str>
expr::inferred_string_t< T_str > hedgedev::csl::ut::string::remove_xml_tags (const T_str &in_str)
template<expr::any_string T_str, expr::any_string T_delimiter, typename T_result = expr::pi_string_t<T_str, T_delimiter>>
std::vector< T_result > hedgedev::csl::ut::string::split (const T_str &in_str, const T_delimiter &in_delimiter)
template<expr::any_string T>
expr::inferred_string_t< T > hedgedev::csl::ut::string::lower (const T &in_str)
template<expr::any_string T>
expr::inferred_string_t< T > hedgedev::csl::ut::string::upper (const T &in_str)
template<expr::any_string T_str, typename T_trim_chars = expr::get_char_type_t<T_str>>
expr::inferred_string_t< T_str > hedgedev::csl::ut::string::trim_start (const T_str &in_str, std::optional< std::vector< T_trim_chars > > in_trim_chars={})
template<expr::any_string T_str, typename T_trim_chars = expr::get_char_type_t<T_str>>
expr::inferred_string_t< T_str > hedgedev::csl::ut::string::trim_end (const T_str &in_str, std::optional< std::vector< T_trim_chars > > in_trim_chars={})
template<expr::any_string T_str, typename T_trim_chars = expr::get_char_type_t<T_str>>
expr::inferred_string_t< T_str > hedgedev::csl::ut::string::trim (const T_str &in_str, std::optional< std::vector< T_trim_chars > > in_trim_chars={})
template<expr::any_string T>
expr::inferred_string_t< T > hedgedev::csl::ut::string::truncate (const T &in_str, size_t in_max_length, bool in_truncate_end=true, bool in_ellipsis=true)
template<expr::basic_string T_result, typename T_value>
T_result hedgedev::csl::ut::string::hex (T_value in_value, size_t in_max_length=sizeof(size_t) *2, bool in_prefix=true)
template<typename T_result, expr::any_string T_str>
bool hedgedev::csl::ut::string::try_parse (const T_str &in_str, T_result &out_result)
template<expr::any_string T_str>
expr::inferred_string_t< T_str > hedgedev::csl::ut::string::wrap (const T_str &in_str, size_t in_max_width)