@@ -825,11 +825,8 @@ def spilldata(msg, attrs, predicate):
825
825
push (msg )
826
826
for name , kind , homecls , value in ok :
827
827
base = self .docother (getattr (object , name ), name , mod )
828
- if callable (value ) or inspect .isdatadescriptor (value ):
829
- doc = getattr (value , "__doc__" , None )
830
- else :
831
- doc = None
832
- if doc is None :
828
+ doc = getdoc (value )
829
+ if not doc :
833
830
push ('<dl><dt>%s</dl>\n ' % base )
834
831
else :
835
832
doc = self .markup (getdoc (value ), self .preformat ,
@@ -1309,10 +1306,7 @@ def spilldata(msg, attrs, predicate):
1309
1306
hr .maybe ()
1310
1307
push (msg )
1311
1308
for name , kind , homecls , value in ok :
1312
- if callable (value ) or inspect .isdatadescriptor (value ):
1313
- doc = getdoc (value )
1314
- else :
1315
- doc = None
1309
+ doc = getdoc (value )
1316
1310
try :
1317
1311
obj = getattr (object , name )
1318
1312
except AttributeError :
@@ -1448,7 +1442,9 @@ def docother(self, object, name=None, mod=None, parent=None, maxlen=None, doc=No
1448
1442
chop = maxlen - len (line )
1449
1443
if chop < 0 : repr = repr [:chop ] + '...'
1450
1444
line = (name and self .bold (name ) + ' = ' or '' ) + repr
1451
- if doc is not None :
1445
+ if not doc :
1446
+ doc = getdoc (object )
1447
+ if doc :
1452
1448
line += '\n ' + self .indent (str (doc ))
1453
1449
return line
1454
1450
@@ -1672,7 +1668,8 @@ def render_doc(thing, title='Python Library Documentation: %s', forceload=0,
1672
1668
if not (inspect .ismodule (object ) or
1673
1669
inspect .isclass (object ) or
1674
1670
inspect .isroutine (object ) or
1675
- inspect .isdatadescriptor (object )):
1671
+ inspect .isdatadescriptor (object ) or
1672
+ inspect .getdoc (object )):
1676
1673
# If the passed object is a piece of data or an instance,
1677
1674
# document its available methods instead of its value.
1678
1675
object = type (object )
0 commit comments