#ifndef BASE_STRINGS_STRING_SPLIT_INTERNAL_H_
#define BASE_STRINGS_STRING_SPLIT_INTERNAL_H_
#include <string_view>
#include <vector>
#include "base/strings/string_util.h"
namespace base {
namespace internal {
template <typename CharT>
std::basic_string_view<CharT> WhitespaceForType();
template <>
inline std::u16string_view WhitespaceForType<char16_t>() { … }
template <>
inline std::string_view WhitespaceForType<char>() { … }
template <typename OutputStringType,
typename T,
typename CharT = typename T::value_type>
static std::vector<OutputStringType> SplitStringT(T str,
T delimiter,
WhitespaceHandling whitespace,
SplitResult result_type) { … }
template <typename OutputStringType,
typename T,
typename CharT = typename T::value_type>
std::vector<OutputStringType> SplitStringUsingSubstrT(
T input,
T delimiter,
WhitespaceHandling whitespace,
SplitResult result_type) { … }
}
}
#endif