21inline namespace util {
25constexpr char Space[] =
" \t\n\v\f\r";
30 const auto pos =
s.find_first_not_of(
Space);
31 s.remove_prefix(
pos != string_view::npos ?
pos :
s.size());
36 const auto pos =
s.find_first_not_of(
Space);
37 s.erase(0,
pos != string_view::npos ?
pos :
s.size());
42 const auto pos =
s.find_last_not_of(
Space);
43 s.remove_suffix(
s.size() - (
pos != string_view::npos ?
pos + 1 : 0));
48 const auto pos =
s.find_last_not_of(
Space);
49 s.erase(
pos != string_view::npos ?
pos + 1 : 0);
56 if (
pos == string_view::npos) {