| Index: tools/json_schema_compiler/idl_schema.py
|
| diff --git a/tools/json_schema_compiler/idl_schema.py b/tools/json_schema_compiler/idl_schema.py
|
| index 58efe28598f1660e9f4481e412f30fa715195668..fcad49bef4e2fde5eb75f8fa359c5ee2d97e3266 100755
|
| --- a/tools/json_schema_compiler/idl_schema.py
|
| +++ b/tools/json_schema_compiler/idl_schema.py
|
| @@ -50,13 +50,20 @@ def ProcessComment(comment):
|
|
|
| Returns: A tuple that looks like:
|
| (
|
| - "The processed comment, minus all |parameter| mentions.",
|
| + "The processed comment, minus all |parameter| mentions and jsexterns.",
|
| + "Any block wrapped in <jsexterns></jsexterns>.",
|
| {
|
| 'parameter_name_1': "The comment that followed |parameter_name_1|:",
|
| ...
|
| }
|
| )
|
| '''
|
| + jsexterns = None
|
| + match = re.search('<jsexterns>(.*)</jsexterns>', comment, re.DOTALL)
|
| + if match:
|
| + jsexterns = match.group(1).strip()
|
| + comment = comment[:match.start()] + comment[match.end():]
|
| +
|
| def add_paragraphs(content):
|
| paragraphs = content.split('\n\n')
|
| if len(paragraphs) < 2:
|
| @@ -85,7 +92,7 @@ def ProcessComment(comment):
|
| add_paragraphs(comment[param_comment_start:param_comment_end].strip())
|
| .replace('\n', ''))
|
|
|
| - return (parent_comment, params)
|
| + return (parent_comment, jsexterns, params)
|
|
|
|
|
| class Callspec(object):
|
| @@ -195,8 +202,10 @@ class Member(object):
|
| parameter_comments = OrderedDict()
|
| for node in self.node.GetChildren():
|
| if node.cls == 'Comment':
|
| - (parent_comment, parameter_comments) = ProcessComment(node.GetName())
|
| + (parent_comment, jsexterns, parameter_comments) = ProcessComment(
|
| + node.GetName())
|
| properties['description'] = parent_comment
|
| + properties['jsexterns'] = jsexterns
|
| elif node.cls == 'Callspec':
|
| name, parameters, return_type = (Callspec(node, parameter_comments)
|
| .process(callbacks))
|
|
|