From 93b269ca82242845b00de4688e317dd75dce47bc Mon Sep 17 00:00:00 2001 From: Robin Dunn Date: Wed, 7 Sep 2016 13:33:54 -0700 Subject: [PATCH] If the memberVar has a docstring, use it. --- etgtools/sphinx_generator.py | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/etgtools/sphinx_generator.py b/etgtools/sphinx_generator.py index 4650ac81..ab9d46f7 100644 --- a/etgtools/sphinx_generator.py +++ b/etgtools/sphinx_generator.py @@ -1973,6 +1973,8 @@ class XMLDocString(object): self.isInner = getattr(xml_item, 'isInner', False) elif isinstance(xml_item, extractors.EnumDef): self.kind = 'enum' + elif isinstance(xml_item, extractors.MemberVarDef): + self.kind = 'memberVar' else: raise Exception('Unhandled docstring kind for %s'%xml_item.__class__.__name__) @@ -3367,7 +3369,22 @@ class SphinxGenerator(generators.DocsGeneratorBase): varType = ':ref:`~%s`' % varType else: varType = '``%s``' % varType - return 'A public C++ attribute of type %s' % varType + + description = 'A public C++ attribute of type %s.' % varType + + brief = memberVar.briefDoc + briefDoc = None + if not isinstance(brief, string_base): + docstring = XMLDocString(memberVar) + #docstring.current_module = self.current_module + briefDoc = docstring.GetBrief() + elif brief is not None: + briefDoc = convertToPython(brief) + + if briefDoc: + description += ' ' + briefDoc + + return description # -----------------------------------------------------------------------