bpo-36401: Have help() show readonly properties separately (GH-12517)
This commit is contained in:
parent
113d735e20
commit
62be33870e
|
@ -203,6 +203,8 @@ def classify_class_attrs(object):
|
||||||
for (name, kind, cls, value) in inspect.classify_class_attrs(object):
|
for (name, kind, cls, value) in inspect.classify_class_attrs(object):
|
||||||
if inspect.isdatadescriptor(value):
|
if inspect.isdatadescriptor(value):
|
||||||
kind = 'data descriptor'
|
kind = 'data descriptor'
|
||||||
|
if isinstance(value, property) and value.fset is None:
|
||||||
|
kind = 'readonly property'
|
||||||
results.append((name, kind, cls, value))
|
results.append((name, kind, cls, value))
|
||||||
return results
|
return results
|
||||||
|
|
||||||
|
@ -884,6 +886,8 @@ class HTMLDoc(Doc):
|
||||||
lambda t: t[1] == 'class method')
|
lambda t: t[1] == 'class method')
|
||||||
attrs = spill('Static methods %s' % tag, attrs,
|
attrs = spill('Static methods %s' % tag, attrs,
|
||||||
lambda t: t[1] == 'static method')
|
lambda t: t[1] == 'static method')
|
||||||
|
attrs = spilldescriptors("Readonly properties %s:\n" % tag, attrs,
|
||||||
|
lambda t: t[1] == 'readonly property')
|
||||||
attrs = spilldescriptors('Data descriptors %s' % tag, attrs,
|
attrs = spilldescriptors('Data descriptors %s' % tag, attrs,
|
||||||
lambda t: t[1] == 'data descriptor')
|
lambda t: t[1] == 'data descriptor')
|
||||||
attrs = spilldata('Data and other attributes %s' % tag, attrs,
|
attrs = spilldata('Data and other attributes %s' % tag, attrs,
|
||||||
|
@ -1341,6 +1345,8 @@ location listed above.
|
||||||
lambda t: t[1] == 'class method')
|
lambda t: t[1] == 'class method')
|
||||||
attrs = spill("Static methods %s:\n" % tag, attrs,
|
attrs = spill("Static methods %s:\n" % tag, attrs,
|
||||||
lambda t: t[1] == 'static method')
|
lambda t: t[1] == 'static method')
|
||||||
|
attrs = spilldescriptors("Readonly properties %s:\n" % tag, attrs,
|
||||||
|
lambda t: t[1] == 'readonly property')
|
||||||
attrs = spilldescriptors("Data descriptors %s:\n" % tag, attrs,
|
attrs = spilldescriptors("Data descriptors %s:\n" % tag, attrs,
|
||||||
lambda t: t[1] == 'data descriptor')
|
lambda t: t[1] == 'data descriptor')
|
||||||
attrs = spilldata("Data and other attributes %s:\n" % tag, attrs,
|
attrs = spilldata("Data and other attributes %s:\n" % tag, attrs,
|
||||||
|
|
|
@ -2825,7 +2825,7 @@ class Color(enum.Enum)
|
||||||
| The value of the Enum member.
|
| The value of the Enum member.
|
||||||
|\x20\x20
|
|\x20\x20
|
||||||
| ----------------------------------------------------------------------
|
| ----------------------------------------------------------------------
|
||||||
| Data descriptors inherited from enum.EnumMeta:
|
| Readonly properties inherited from enum.EnumMeta:
|
||||||
|\x20\x20
|
|\x20\x20
|
||||||
| __members__
|
| __members__
|
||||||
| Returns a mapping of member name->value.
|
| Returns a mapping of member name->value.
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
The class documentation created by pydoc now has a separate section for
|
||||||
|
readonly properties.
|
Loading…
Reference in New Issue