1 // Copyright 2020 The Chromium Authors
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "base/strings/string_split_win.h"
6
7 #include <string>
8 #include <string_view>
9 #include <vector>
10
11 #include "base/strings/string_split_internal.h"
12
13 namespace base {
14
15 namespace internal {
16
17 template <>
WhitespaceForType()18 inline std::wstring_view WhitespaceForType<wchar_t>() {
19 return kWhitespaceWide;
20 }
21
22 } // namespace internal
23
SplitString(std::wstring_view input,std::wstring_view separators,WhitespaceHandling whitespace,SplitResult result_type)24 std::vector<std::wstring> SplitString(std::wstring_view input,
25 std::wstring_view separators,
26 WhitespaceHandling whitespace,
27 SplitResult result_type) {
28 return internal::SplitStringT<std::wstring>(input, separators, whitespace,
29 result_type);
30 }
31
SplitStringPiece(std::wstring_view input,std::wstring_view separators,WhitespaceHandling whitespace,SplitResult result_type)32 std::vector<std::wstring_view> SplitStringPiece(std::wstring_view input,
33 std::wstring_view separators,
34 WhitespaceHandling whitespace,
35 SplitResult result_type) {
36 return internal::SplitStringT<std::wstring_view>(input, separators,
37 whitespace, result_type);
38 }
39
SplitStringUsingSubstr(std::wstring_view input,std::wstring_view delimiter,WhitespaceHandling whitespace,SplitResult result_type)40 std::vector<std::wstring> SplitStringUsingSubstr(std::wstring_view input,
41 std::wstring_view delimiter,
42 WhitespaceHandling whitespace,
43 SplitResult result_type) {
44 return internal::SplitStringUsingSubstrT<std::wstring>(
45 input, delimiter, whitespace, result_type);
46 }
47
SplitStringPieceUsingSubstr(std::wstring_view input,std::wstring_view delimiter,WhitespaceHandling whitespace,SplitResult result_type)48 std::vector<std::wstring_view> SplitStringPieceUsingSubstr(
49 std::wstring_view input,
50 std::wstring_view delimiter,
51 WhitespaceHandling whitespace,
52 SplitResult result_type) {
53 return internal::SplitStringUsingSubstrT<std::wstring_view>(
54 input, delimiter, whitespace, result_type);
55 }
56
57 } // namespace base
58