mirror of
https://github.com/sphinx-doc/sphinx.git
synced 2025-02-25 18:55:22 -06:00
autodoc detects descriptors properly now
This commit is contained in:
parent
3a84835f9e
commit
72276a2dc2
1
CHANGES
1
CHANGES
@ -6,6 +6,7 @@ New features added
|
|||||||
|
|
||||||
* If the `pygments_style` config value contains a dot it's treated as the
|
* If the `pygments_style` config value contains a dot it's treated as the
|
||||||
import path of a custom Pygments style class.
|
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
|
* A new config value, `exclude_dirs`, can be used to exclude whole
|
||||||
directories from the search for source files.
|
directories from the search for source files.
|
||||||
|
@ -32,6 +32,14 @@ _charset_re = re.compile(r'coding[:=]\s*([-\w.]+)')
|
|||||||
_module_charsets = {}
|
_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):
|
def prepare_docstring(s):
|
||||||
"""
|
"""
|
||||||
Convert a docstring into lines of parseable reST. Return it as a list of
|
Convert a docstring into lines of parseable reST. Return it as a list of
|
||||||
@ -217,7 +225,7 @@ def generate_rst(what, name, members, undoc, add_content, document, lineno,
|
|||||||
else:
|
else:
|
||||||
if callable(member):
|
if callable(member):
|
||||||
memberwhat = 'method'
|
memberwhat = 'method'
|
||||||
elif isinstance(member, property):
|
elif isdescriptor(member):
|
||||||
memberwhat = 'attribute'
|
memberwhat = 'attribute'
|
||||||
else:
|
else:
|
||||||
# XXX: todo -- attribute docs
|
# XXX: todo -- attribute docs
|
||||||
|
Loading…
Reference in New Issue
Block a user