[Python-checkins] r62642 - in doctools/trunk: CHANGES sphinx/ext/autodoc.py
armin.ronacher
python-checkins at python.org
Fri May 2 20:19:55 CEST 2008
Author: armin.ronacher
Date: Fri May 2 20:19:54 2008
New Revision: 62642
Log:
autodoc detects descriptors properly now
Modified:
doctools/trunk/CHANGES
doctools/trunk/sphinx/ext/autodoc.py
Modified: doctools/trunk/CHANGES
==============================================================================
--- doctools/trunk/CHANGES (original)
+++ doctools/trunk/CHANGES Fri May 2 20:19:54 2008
@@ -6,6 +6,7 @@
* If the `pygments_style` config value contains a dot it's treated as the
import path of a custom Pygments style class.
+* autodoc detects descriptors properly now
* A new config value, `exclude_dirs`, can be used to exclude whole
directories from the search for source files.
Modified: doctools/trunk/sphinx/ext/autodoc.py
==============================================================================
--- doctools/trunk/sphinx/ext/autodoc.py (original)
+++ doctools/trunk/sphinx/ext/autodoc.py Fri May 2 20:19:54 2008
@@ -32,6 +32,14 @@
_module_charsets = {}
+def isdescriptor(x):
+ """Check if the object is some kind of descriptor."""
+ for item in '__get__', '__set__', '__delete__':
+ if callable(getattr(x, item, None)):
+ return True
+ return False
+
+
def prepare_docstring(s):
"""
Convert a docstring into lines of parseable reST. Return it as a list of
@@ -217,7 +225,7 @@
else:
if callable(member):
memberwhat = 'method'
- elif isinstance(member, property):
+ elif isdescriptor(member):
memberwhat = 'attribute'
else:
# XXX: todo -- attribute docs
More information about the Python-checkins
mailing list