summaryrefslogtreecommitdiff
path: root/sphinx/ext/autodoc.py
diff options
context:
space:
mode:
Diffstat (limited to 'sphinx/ext/autodoc.py')
-rw-r--r--sphinx/ext/autodoc.py18
1 files changed, 9 insertions, 9 deletions
diff --git a/sphinx/ext/autodoc.py b/sphinx/ext/autodoc.py
index 2597c03b1..731c5f103 100644
--- a/sphinx/ext/autodoc.py
+++ b/sphinx/ext/autodoc.py
@@ -597,26 +597,26 @@ class Documenter(object):
# of inner classes can be documented
full_mname = self.modname + '::' + \
'.'.join(self.objpath + [mname])
- memberdocumenters.append(
- classes[-1](self.directive, full_mname, self.indent))
+ documenter = classes[-1](self.directive, full_mname, self.indent)
+ memberdocumenters.append((documenter, isattr))
member_order = self.options.member_order or \
self.env.config.autodoc_member_order
if member_order == 'groupwise':
# sort by group; relies on stable sort to keep items in the
# same group sorted alphabetically
- memberdocumenters.sort(key=lambda d: d.member_order)
+ memberdocumenters.sort(key=lambda e: e[0].member_order)
elif member_order == 'bysource' and self.analyzer:
# sort by source order, by virtue of the module analyzer
tagorder = self.analyzer.tagorder
- def keyfunc(documenter):
- fullname = documenter.name.split('::')[1]
+ def keyfunc(entry):
+ fullname = entry[0].name.split('::')[1]
return tagorder.get(fullname, len(tagorder))
memberdocumenters.sort(key=keyfunc)
- for documenter in memberdocumenters:
- documenter.generate(all_members=True,
- real_modname=self.real_modname,
- check_module=members_check_module)
+ for documenter, isattr in memberdocumenters:
+ documenter.generate(
+ all_members=True, real_modname=self.real_modname,
+ check_module=members_check_module and not isattr)
# reset current objects
self.env.temp_data['autodoc:module'] = None