8 #include <hilti/rt/extension-points.h> 9 #include <hilti/rt/util.h> 21 size_t size(
const std::string& s);
28 std::string lower(
const std::string& s);
35 std::string upper(
const std::string& s);
39 namespace detail::adl {
40 inline std::string
to_string(
const std::string& x, adl::tag ) {
41 return fmt(
"\"%s\"", escapeUTF8(x,
true,
true,
true));
44 inline std::string
to_string(std::string_view x, adl::tag ) {
45 return fmt(
"\"%s\"", escapeUTF8(x,
true,
true,
true));
48 template<
typename CharT,
size_t N>
49 inline std::string
to_string(
const CharT (&x)[N], adl::tag ) {
50 return fmt(
"\"%s\"", escapeUTF8(x,
true,
true,
true));
56 inline std::string detail::to_string_for_print<std::string>(
const std::string& x) {
57 return escapeUTF8(x,
false,
false,
true);
61 inline std::string detail::to_string_for_print<std::string_view>(
const std::string_view& x) {
62 return escapeUTF8(x,
false,
false,
true);
std::string to_string(T &&x)
Definition: extension-points.h:26
std::string fmt(const char *fmt, const Args &... args)
Definition: fmt.h:13