|
template<typename CharT > |
constexpr separator_t< CharT > | utils::separator (const CharT *s) |
|
template<typename CharT = char, typename... Args> |
std::basic_string< CharT > | utils::concat (const separator_t< CharT > &sep, Args &&... seq) |
|
template<char head, char... tail, typename F , typename... Args, typename = enable_if_t<!std::is_same<F, separator_t<char>>::value, F>> |
std::basic_string< char > | utils::concat (F &&first, Args &&... rest) |
|
template<const char * sep, typename F , typename... Args, typename = enable_if_t<!std::is_same<F, separator_t<char>>::value, F>> |
std::basic_string< char > | utils::concat (F &&first, Args &&... rest) |
|
template<typename CharT = char, typename F , typename... Args, typename = enable_if_t<!std::is_same<F, separator_t<CharT>>::value, F>> |
std::basic_string< CharT > | utils::concat (F &&first, Args &&... rest) |
|
template<std::ostream & sep, typename CharT = char, typename F , typename... Args, typename = enable_if_t<!std::is_same<F, separator_t<CharT>>::value, F>> |
std::basic_string< CharT > | utils::concat (F &&first, Args &&... rest) |
|