[Epydoc-commits] SF.net SVN: epydoc: [1722] trunk/epydoc/src/epydoc
Brought to you by:
edloper
From: <ed...@us...> - 2008-02-15 01:11:20
|
Revision: 1722 http://epydoc.svn.sourceforge.net/epydoc/?rev=1722&view=rev Author: edloper Date: 2008-02-14 17:11:18 -0800 (Thu, 14 Feb 2008) Log Message: ----------- - Added 'metaclass' var to ClassDoc, to record the metaclass (when defined) Modified Paths: -------------- trunk/epydoc/src/epydoc/apidoc.py trunk/epydoc/src/epydoc/docintrospecter.py trunk/epydoc/src/epydoc/docparser.py Modified: trunk/epydoc/src/epydoc/apidoc.py =================================================================== --- trunk/epydoc/src/epydoc/apidoc.py 2008-02-15 01:02:30 UTC (rev 1721) +++ trunk/epydoc/src/epydoc/apidoc.py 2008-02-15 01:11:18 UTC (rev 1722) @@ -1257,6 +1257,9 @@ """@ivar: API documentation for the class's known subclasses. @type: C{list} of L{ClassDoc}""" #} + #{ Information about Metaclasses + metaclass = UNKNOWN + #} def apidoc_links(self, **filters): val_docs = NamespaceDoc.apidoc_links(self, **filters) Modified: trunk/epydoc/src/epydoc/docintrospecter.py =================================================================== --- trunk/epydoc/src/epydoc/docintrospecter.py 2008-02-15 01:02:30 UTC (rev 1721) +++ trunk/epydoc/src/epydoc/docintrospecter.py 2008-02-15 01:11:18 UTC (rev 1722) @@ -321,7 +321,7 @@ #: class's API documentation. UNDOCUMENTED_CLASS_VARS = ( '__doc__', '__module__', '__dict__', '__weakref__', '__slots__', - '__pyx_vtable__') + '__pyx_vtable__', '__metaclass__') def introspect_class(cls, class_doc, module_name=None): """ @@ -341,6 +341,9 @@ except KeyboardInterrupt: raise except: pass + # Record the class's metaclass + class_doc.metaclass = introspect_docs(type(cls)) + # Start a list of subclasses. class_doc.subclasses = [] Modified: trunk/epydoc/src/epydoc/docparser.py =================================================================== --- trunk/epydoc/src/epydoc/docparser.py 2008-02-15 01:02:30 UTC (rev 1721) +++ trunk/epydoc/src/epydoc/docparser.py 2008-02-15 01:11:18 UTC (rev 1722) @@ -1128,6 +1128,12 @@ if lhs_name[-1] == '__slots__': continue + # Handle metaclass assignment + if (lhs_name[-1] == '__metaclass__' and + isinstance(parent_docs[-1], ClassDoc)): + parent_docs[-1].metaclass = rhs_val + continue + # Create the VariableDoc. var_doc = VariableDoc(name=lhs_name[-1], value=rhs_val, is_imported=False, is_alias=is_alias, This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |