Chromium Code Reviews| Index: tools/json_schema_compiler/schema_bundle_generator.py |
| diff --git a/tools/json_schema_compiler/schema_bundle_generator.py b/tools/json_schema_compiler/schema_bundle_generator.py |
| index 3272be1964fbca85eae41d4f66c25fdc718a8cf4..5288b9d0e8dba634f9544a328b5b220db2b23240 100644 |
| --- a/tools/json_schema_compiler/schema_bundle_generator.py |
| +++ b/tools/json_schema_compiler/schema_bundle_generator.py |
| @@ -19,7 +19,8 @@ class SchemaBundleGenerator(object): |
| """This class contains methods to generate code based on multiple schemas. |
| """ |
| - def __init__(self, model, api_defs, cpp_type_generator): |
| + def __init__(self, root, model, api_defs, cpp_type_generator): |
| + self._root = root; |
| self._model = model |
| self._api_defs = api_defs |
| self._cpp_type_generator = cpp_type_generator |
| @@ -68,19 +69,21 @@ class SchemaBundleGenerator(object): |
| c.Append('#include "base/basictypes.h"') |
| for namespace in self._model.namespaces.values(): |
| - ifdefs = self._GetPlatformIfdefs(namespace) |
| - if ifdefs is not None: |
| - c.Append("#if %s" % ifdefs, indent_level=0) |
| - |
| namespace_name = namespace.unix_name.replace("experimental_", "") |
| implementation_header = namespace.compiler_options.get( |
| "implemented_in", |
| "chrome/browser/extensions/api/%s/%s_api.h" % (namespace_name, |
| namespace_name)) |
| - c.Append('#include "%s"' % implementation_header) |
| + if os.path.exists( |
| + os.path.join(self._root, os.path.normpath(implementation_header))): |
|
not at google - send to devlin
2013/01/24 06:44:24
prefer to invert condition and continue here inste
not at google - send to devlin
2013/01/24 22:36:26
Another thing - we should throw an error if the pa
calamity
2013/01/24 23:25:55
Done.
|
| + ifdefs = self._GetPlatformIfdefs(namespace) |
| + if ifdefs is not None: |
| + c.Append("#if %s" % ifdefs, indent_level=0) |
| + |
| + c.Append('#include "%s"' % implementation_header) |
| - if ifdefs is not None: |
| - c.Append("#endif // %s" % ifdefs, indent_level=0) |
| + if ifdefs is not None: |
| + c.Append("#endif // %s" % ifdefs, indent_level=0) |
| c.Append() |
| c.Append("class ExtensionFunctionRegistry;") |