Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1923)

Unified Diff: tools/json_schema_compiler/util.cc

Issue 2149253003: Switch various ValueTypeToString()s to base::Value::GetTypeName(). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@value
Patch Set: rebase Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « tools/json_schema_compiler/util.h ('k') | tools/json_schema_compiler/util_cc_helper.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/json_schema_compiler/util.cc
diff --git a/tools/json_schema_compiler/util.cc b/tools/json_schema_compiler/util.cc
index a5e1668c1ff2aef628e005e8ab1e9d19962bd430..a15c9f514f242c697c1f921d01d4a6018d8a7f55 100644
--- a/tools/json_schema_compiler/util.cc
+++ b/tools/json_schema_compiler/util.cc
@@ -4,25 +4,35 @@
#include "tools/json_schema_compiler/util.h"
+#include "base/strings/stringprintf.h"
#include "base/strings/utf_string_conversions.h"
#include "base/values.h"
namespace json_schema_compiler {
namespace util {
+namespace {
+
+bool ReportError(const base::Value& from,
+ base::Value::Type expected,
+ base::string16* error) {
+ if (!error->empty())
+ error->append(base::ASCIIToUTF16("; "));
+ error->append(base::ASCIIToUTF16(base::StringPrintf(
+ "expected %s, got %s", base::Value::GetTypeName(expected),
+ base::Value::GetTypeName(from.GetType()))));
+ return false; // Always false on purpose.
+}
+
+} // namespace
+
bool PopulateItem(const base::Value& from, int* out) {
return from.GetAsInteger(out);
}
bool PopulateItem(const base::Value& from, int* out, base::string16* error) {
- if (!from.GetAsInteger(out)) {
- if (error->length()) {
- error->append(base::UTF8ToUTF16("; "));
- }
- error->append(base::UTF8ToUTF16("expected integer, got " +
- ValueTypeToString(from.GetType())));
- return false;
- }
+ if (!from.GetAsInteger(out))
+ return ReportError(from, base::Value::TYPE_INTEGER, error);
return true;
}
@@ -31,14 +41,8 @@ bool PopulateItem(const base::Value& from, bool* out) {
}
bool PopulateItem(const base::Value& from, bool* out, base::string16* error) {
- if (!from.GetAsBoolean(out)) {
- if (error->length()) {
- error->append(base::UTF8ToUTF16("; "));
- }
- error->append(base::UTF8ToUTF16("expected boolean, got " +
- ValueTypeToString(from.GetType())));
- return false;
- }
+ if (!from.GetAsBoolean(out))
+ return ReportError(from, base::Value::TYPE_BOOLEAN, error);
return true;
}
@@ -47,14 +51,8 @@ bool PopulateItem(const base::Value& from, double* out) {
}
bool PopulateItem(const base::Value& from, double* out, base::string16* error) {
- if (!from.GetAsDouble(out)) {
- if (error->length()) {
- error->append(base::UTF8ToUTF16("; "));
- }
- error->append(base::UTF8ToUTF16("expected double, got " +
- ValueTypeToString(from.GetType())));
- return false;
- }
+ if (!from.GetAsDouble(out))
+ return ReportError(from, base::Value::TYPE_DOUBLE, error);
return true;
}
@@ -65,14 +63,8 @@ bool PopulateItem(const base::Value& from, std::string* out) {
bool PopulateItem(const base::Value& from,
std::string* out,
base::string16* error) {
- if (!from.GetAsString(out)) {
- if (error->length()) {
- error->append(base::UTF8ToUTF16("; "));
- }
- error->append(base::UTF8ToUTF16("expected string, got " +
- ValueTypeToString(from.GetType())));
- return false;
- }
+ if (!from.GetAsString(out))
+ return ReportError(from, base::Value::TYPE_STRING, error);
return true;
}
@@ -88,14 +80,8 @@ bool PopulateItem(const base::Value& from,
std::vector<char>* out,
base::string16* error) {
const base::BinaryValue* binary = nullptr;
- if (!from.GetAsBinary(&binary)) {
- if (error->length()) {
- error->append(base::UTF8ToUTF16("; "));
- }
- error->append(base::UTF8ToUTF16("expected binary, got " +
- ValueTypeToString(from.GetType())));
- return false;
- }
+ if (!from.GetAsBinary(&binary))
+ return ReportError(from, base::Value::TYPE_BINARY, error);
out->assign(binary->GetBuffer(), binary->GetBuffer() + binary->GetSize());
return true;
}
@@ -125,14 +111,8 @@ bool PopulateItem(const base::Value& from,
std::unique_ptr<base::DictionaryValue>* out,
base::string16* error) {
const base::DictionaryValue* dict = nullptr;
- if (!from.GetAsDictionary(&dict)) {
- if (error->length()) {
- error->append(base::UTF8ToUTF16("; "));
- }
- error->append(base::UTF8ToUTF16("expected dictionary, got " +
- ValueTypeToString(from.GetType())));
- return false;
- }
+ if (!from.GetAsDictionary(&dict))
+ return ReportError(from, base::Value::TYPE_DICTIONARY, error);
*out = dict->CreateDeepCopy();
return true;
}
@@ -168,28 +148,5 @@ void AddItemToList(const std::unique_ptr<base::DictionaryValue>& from,
out->Append(from->CreateDeepCopy());
}
-std::string ValueTypeToString(base::Value::Type type) {
- switch (type) {
- case base::Value::TYPE_NULL:
- return "null";
- case base::Value::TYPE_BOOLEAN:
- return "boolean";
- case base::Value::TYPE_INTEGER:
- return "integer";
- case base::Value::TYPE_DOUBLE:
- return "number";
- case base::Value::TYPE_STRING:
- return "string";
- case base::Value::TYPE_BINARY:
- return "binary";
- case base::Value::TYPE_DICTIONARY:
- return "dictionary";
- case base::Value::TYPE_LIST:
- return "list";
- }
- NOTREACHED();
- return "";
-}
-
} // namespace util
} // namespace json_schema_compiler
« no previous file with comments | « tools/json_schema_compiler/util.h ('k') | tools/json_schema_compiler/util_cc_helper.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698