json_schema_compiler: Added wider support for OBJECTs and ENUMs. Used the new 'dependencies' property in the jsons. Refactored to avoid code duplication. Added tests for new features and where tests were lacking.

BUG=
TEST=unit_tests --gtest_filter=JsonSchemaCompiler*


Review URL: http://codereview.chromium.org/9456007

git-svn-id: http://src.chromium.org/svn/trunk/src/build@123909 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This commit is contained in:
calamity@chromium.org 2012-02-28 05:51:44 +00:00
Родитель be90732962
Коммит 69690e98d6
1 изменённых файлов: 4 добавлений и 1 удалений

Просмотреть файл

@ -27,6 +27,10 @@
'<(api_gen_dir)/util.cc',
'<(api_gen_dir)/util.h',
'<(api_gen_dir)/util_cc_helper.py',
# TODO(calamity): uncomment this when gyp on windows behaves like other
# platforms. List expansions of filepaths in inputs expand to different
# things.
# '<@(json_schema_files)',
],
'outputs': [
'<(SHARED_INTERMEDIATE_DIR)/<(cc_dir)/<(RULE_INPUT_ROOT).cc',
@ -39,7 +43,6 @@
'--root=<(DEPTH)',
'--destdir=<(SHARED_INTERMEDIATE_DIR)',
'--namespace=<(root_namespace)',
'<@(json_schema_files)',
],
'message': 'Generating C++ code from <(RULE_INPUT_PATH) jsons',
'process_outputs_as_sources': 1,