diff options
author | DHNishi@gmail.com <DHNishi@gmail.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-08-12 23:45:38 +0000 |
---|---|---|
committer | DHNishi@gmail.com <DHNishi@gmail.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-08-12 23:45:38 +0000 |
commit | bee7a793dee719a5edac218149ddccfda9d07eb3 (patch) | |
tree | 35df7a832a981069c0cd6a778ee81c0a3a436f22 /tools/json_schema_compiler/util.cc | |
parent | a176567bf59ee074eb4c404c989baf4e25e2e2cc (diff) | |
download | chromium_src-bee7a793dee719a5edac218149ddccfda9d07eb3.zip chromium_src-bee7a793dee719a5edac218149ddccfda9d07eb3.tar.gz chromium_src-bee7a793dee719a5edac218149ddccfda9d07eb3.tar.bz2 |
Add optional schema compiler error messages and unit tests.
Provides the ability to generate error messages within schema-compiled code for ease of debugging.
Error messages may be disabled by adding a 'generate_error_messages' property to json schema, e.g. "generate_error_messages": false
Error generation mostly written by Aaron Jacobs (https://codereview.chromium.org/16462004/).
BUG=234834
Review URL: https://chromiumcodereview.appspot.com/22228002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@217118 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'tools/json_schema_compiler/util.cc')
-rw-r--r-- | tools/json_schema_compiler/util.cc | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/tools/json_schema_compiler/util.cc b/tools/json_schema_compiler/util.cc index a449509..c03d076 100644 --- a/tools/json_schema_compiler/util.cc +++ b/tools/json_schema_compiler/util.cc @@ -70,5 +70,28 @@ void AddItemToList(const linked_ptr<base::DictionaryValue>& from, out->Append(static_cast<base::Value*>(from->DeepCopy())); } +std::string ValueTypeToString(Value::Type type) { + switch(type) { + case Value::TYPE_NULL: + return "null"; + case Value::TYPE_BOOLEAN: + return "boolean"; + case Value::TYPE_INTEGER: + return "integer"; + case Value::TYPE_DOUBLE: + return "number"; + case Value::TYPE_STRING: + return "string"; + case Value::TYPE_BINARY: + return "binary"; + case Value::TYPE_DICTIONARY: + return "dictionary"; + case Value::TYPE_LIST: + return "list"; + } + NOTREACHED(); + return ""; +} + } // namespace api_util } // namespace extensions |