awips2/pythonPackages/nose/doc/docstring.py
root 06a8b51d6d Initial revision of AWIPS2 11.9.0-7p5
Former-commit-id: 64fa9254b946eae7e61bbc3f513b7c3696c4f54f
2012-01-06 08:55:05 -06:00

25 lines
899 B
Python
Executable file

from docutils import nodes
from docutils.statemachine import ViewList
from nose.util import resolve_name
def docstring_directive(dirname, arguments, options, content, lineno,
content_offset, block_text, state, state_machine):
obj_name = arguments[0]
obj = resolve_name(obj_name)
rst = ViewList()
rst.append(obj.__doc__, '<docstring>')
print "CALLED", obj_name, obj, rst
node = nodes.section()
surrounding_title_styles = state.memo.title_styles
surrounding_section_level = state.memo.section_level
state.memo.title_styles = []
state.memo.section_level = 0
state.nested_parse(rst, 0, node, match_titles=1)
state.memo.title_styles = surrounding_title_styles
state.memo.section_level = surrounding_section_level
return node.children
def setup(app):
app.add_directive('docstring', docstring_directive, 1, (1, 0, 1))