summaryrefslogtreecommitdiffstats
path: root/base
diff options
context:
space:
mode:
authorkalman@chromium.org <kalman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-01-26 00:27:29 +0000
committerkalman@chromium.org <kalman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-01-26 00:27:29 +0000
commitd2d0b6bd112621a26e2772ddc8bede57dde9cf17 (patch)
treee594f105441732e4528b5fd1f28f9b33d6c29390 /base
parent9b52c077ea9f3dff1b8ef7bac0f64febd1abd63e (diff)
downloadchromium_src-d2d0b6bd112621a26e2772ddc8bede57dde9cf17.zip
chromium_src-d2d0b6bd112621a26e2772ddc8bede57dde9cf17.tar.gz
chromium_src-d2d0b6bd112621a26e2772ddc8bede57dde9cf17.tar.bz2
Add StringToUint and StringToUint64 methods to base/string_number_conversions.h.
BUG= TEST= Review URL: http://codereview.chromium.org/9288012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@119150 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base')
-rw-r--r--base/string_number_conversions.cc18
-rw-r--r--base/string_number_conversions.h9
2 files changed, 25 insertions, 2 deletions
diff --git a/base/string_number_conversions.cc b/base/string_number_conversions.cc
index 1d82c5d..41319b3 100644
--- a/base/string_number_conversions.cc
+++ b/base/string_number_conversions.cc
@@ -1,4 +1,4 @@
-// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Copyright (c) 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -402,6 +402,14 @@ bool StringToInt(const StringPiece16& input, int* output) {
return String16ToIntImpl(input, output);
}
+bool StringToUint(const StringPiece& input, unsigned* output) {
+ return StringToIntImpl(input, output);
+}
+
+bool StringToUint(const StringPiece16& input, unsigned* output) {
+ return String16ToIntImpl(input, output);
+}
+
bool StringToInt64(const StringPiece& input, int64* output) {
return StringToIntImpl(input, output);
}
@@ -410,6 +418,14 @@ bool StringToInt64(const StringPiece16& input, int64* output) {
return String16ToIntImpl(input, output);
}
+bool StringToUint64(const StringPiece& input, uint64* output) {
+ return StringToIntImpl(input, output);
+}
+
+bool StringToUint64(const StringPiece16& input, uint64* output) {
+ return String16ToIntImpl(input, output);
+}
+
bool StringToDouble(const std::string& input, double* output) {
errno = 0; // Thread-safe? It is on at least Mac, Linux, and Windows.
char* endptr = NULL;
diff --git a/base/string_number_conversions.h b/base/string_number_conversions.h
index 8dc7942..b002faa 100644
--- a/base/string_number_conversions.h
+++ b/base/string_number_conversions.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Copyright (c) 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -61,9 +61,16 @@ BASE_EXPORT std::string DoubleToString(double value);
// - Empty string. |*output| will be set to 0.
BASE_EXPORT bool StringToInt(const StringPiece& input, int* output);
BASE_EXPORT bool StringToInt(const StringPiece16& input, int* output);
+
+BASE_EXPORT bool StringToUint(const StringPiece& input, unsigned* output);
+BASE_EXPORT bool StringToUint(const StringPiece16& input, unsigned* output);
+
BASE_EXPORT bool StringToInt64(const StringPiece& input, int64* output);
BASE_EXPORT bool StringToInt64(const StringPiece16& input, int64* output);
+BASE_EXPORT bool StringToUint64(const StringPiece& input, uint64* output);
+BASE_EXPORT bool StringToUint64(const StringPiece16& input, uint64* output);
+
// For floating-point conversions, only conversions of input strings in decimal
// form are defined to work. Behavior with strings representing floating-point
// numbers in hexadecimal, and strings representing non-fininte values (such as