7 #include "arg_router/basic_types.hpp"
24 template <
typename CharT,
25 typename Traits = std::char_traits<CharT>,
27 [[nodiscard]] constexpr std::basic_string<CharT, Traits, Allocator>
operator+(
28 std::basic_string<CharT, Traits, Allocator> lhs,
29 std::basic_string_view<CharT, Traits> rhs)
44 template <
typename CharT,
45 typename Traits = std::char_traits<CharT>,
47 [[nodiscard]] constexpr std::basic_string<CharT, Traits, Allocator>
operator+(
48 std::basic_string_view<CharT, Traits> lhs,
49 std::basic_string<CharT, Traits, Allocator> rhs)
51 rhs.insert(rhs.begin(), lhs.begin(), lhs.end());
64 template <
typename CharT,
typename Traits = std::
char_traits<CharT>>
65 [[nodiscard]] constexpr std::basic_string<CharT, Traits, config::allocator<CharT>>
operator+(
66 std::basic_string_view<CharT, Traits> lhs,
67 std::basic_string_view<CharT, Traits> rhs)
69 return std::basic_string<CharT, Traits, config::allocator<CharT>>{lhs} += rhs;
std::allocator< T > allocator
constexpr std::basic_string< CharT, Traits, Allocator > operator+(std::basic_string< CharT, Traits, Allocator > lhs, std::basic_string_view< CharT, Traits > rhs)