Index: tools/json_schema_compiler/model.py |
diff --git a/tools/json_schema_compiler/model.py b/tools/json_schema_compiler/model.py |
index e0147b5b4889fb2a86b59a74648a4deb24316051..6dc87a964ecf9644b3e6c588dc40732d2130ce67 100644 |
--- a/tools/json_schema_compiler/model.py |
+++ b/tools/json_schema_compiler/model.py |
@@ -183,6 +183,7 @@ class Type(object): |
self.simple_name = _StripNamespace(self.name, namespace) |
self.unix_name = UnixName(self.name) |
self.description = json.get('description', None) |
+ self.jsexterns = json.get('jsexterns', None) |
self.origin = origin |
self.parent = parent |
self.instance_of = json.get('isInstanceOf', None) |
@@ -317,8 +318,9 @@ class Function(object): |
self.filters = [GeneratePropertyFromParam(filter_instance) |
for filter_instance in json.get('filters', [])] |
callback_param = None |
- for param in json.get('parameters', []): |
- if param.get('type') == 'function': |
+ params = json.get('parameters', []) |
+ for i, param in enumerate(params): |
+ if param.get('type') == 'function' and i == len(params) - 1: |
if callback_param: |
# No ParseException because the webstore has this. |
# Instead, pretend all intermediate callbacks are properties. |