Index: tools/json_schema_compiler/cpp_type_generator.py |
diff --git a/tools/json_schema_compiler/cpp_type_generator.py b/tools/json_schema_compiler/cpp_type_generator.py |
index cad64ae37d3cb64150c8d645c108fd3fde90d687..44e7b59b0b2cfea489f6ae30ecb80c5b0292a0ff 100644 |
--- a/tools/json_schema_compiler/cpp_type_generator.py |
+++ b/tools/json_schema_compiler/cpp_type_generator.py |
@@ -4,6 +4,7 @@ |
from code import Code |
from model import PropertyType |
+import any_helper |
import cpp_util |
class CppTypeGenerator(object): |
@@ -134,8 +135,12 @@ class CppTypeGenerator(object): |
cpp_type = 'std::string' |
elif prop.type_ == PropertyType.ENUM: |
cpp_type = cpp_util.Classname(prop.name) |
- elif prop.type_ == PropertyType.ANY: |
+ elif prop.type_ == PropertyType.ADDITIONAL_PROPERTIES: |
cpp_type = 'DictionaryValue' |
+ elif prop.type_ == PropertyType.ANY: |
+ cpp_type = any_helper.ANY_CLASS |
+ elif prop.type_ == PropertyType.OBJECT: |
+ cpp_type = cpp_util.Classname(prop.name) |
elif prop.type_ == PropertyType.ARRAY: |
if prop.item_type.type_ in ( |
PropertyType.REF, PropertyType.ANY, PropertyType.OBJECT): |
@@ -144,8 +149,6 @@ class CppTypeGenerator(object): |
cpp_type = 'std::vector<%s> ' |
cpp_type = cpp_type % self.GetType( |
prop.item_type, pad_for_generics=True) |
- elif prop.type_ == PropertyType.OBJECT: |
- cpp_type = cpp_util.Classname(prop.name) |
else: |
raise NotImplementedError(prop.type_) |