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_number_conversions_win.h"
6
7 #include <string>
8 #include <string_view>
9
10 #include "base/strings/string_number_conversions_internal.h"
11
12 namespace base {
13
NumberToWString(int value)14 std::wstring NumberToWString(int value) {
15 return internal::IntToStringT<std::wstring>(value);
16 }
17
NumberToWString(unsigned value)18 std::wstring NumberToWString(unsigned value) {
19 return internal::IntToStringT<std::wstring>(value);
20 }
21
NumberToWString(long value)22 std::wstring NumberToWString(long value) {
23 return internal::IntToStringT<std::wstring>(value);
24 }
25
NumberToWString(unsigned long value)26 std::wstring NumberToWString(unsigned long value) {
27 return internal::IntToStringT<std::wstring>(value);
28 }
29
NumberToWString(long long value)30 std::wstring NumberToWString(long long value) {
31 return internal::IntToStringT<std::wstring>(value);
32 }
33
NumberToWString(unsigned long long value)34 std::wstring NumberToWString(unsigned long long value) {
35 return internal::IntToStringT<std::wstring>(value);
36 }
37
NumberToWString(double value)38 std::wstring NumberToWString(double value) {
39 return internal::DoubleToStringT<std::wstring>(value);
40 }
41
StringToInt(std::wstring_view input,int * output)42 bool StringToInt(std::wstring_view input, int* output) {
43 return internal::StringToIntImpl(input, *output);
44 }
45
StringToUint(std::wstring_view input,unsigned * output)46 bool StringToUint(std::wstring_view input, unsigned* output) {
47 return internal::StringToIntImpl(input, *output);
48 }
49
StringToInt64(std::wstring_view input,int64_t * output)50 bool StringToInt64(std::wstring_view input, int64_t* output) {
51 return internal::StringToIntImpl(input, *output);
52 }
53
StringToUint64(std::wstring_view input,uint64_t * output)54 bool StringToUint64(std::wstring_view input, uint64_t* output) {
55 return internal::StringToIntImpl(input, *output);
56 }
57
StringToSizeT(std::wstring_view input,size_t * output)58 bool StringToSizeT(std::wstring_view input, size_t* output) {
59 return internal::StringToIntImpl(input, *output);
60 }
61
StringToDouble(std::wstring_view input,double * output)62 bool StringToDouble(std::wstring_view input, double* output) {
63 return internal::StringToDoubleImpl(
64 input, reinterpret_cast<const uint16_t*>(input.data()), *output);
65 }
66
67 } // namespace base
68