fix dis on new style classes #8310

This commit is contained in:
Benjamin Peterson 2010-04-04 23:23:22 +00:00
parent 6f65d2dd1b
commit 76a23c17bc
2 changed files with 6 additions and 4 deletions

View File

@ -10,6 +10,9 @@ __all__ = ["dis", "disassemble", "distb", "disco",
"findlinestarts", "findlabels"] + _opcodes_all
del _opcodes_all
_have_code = (types.MethodType, types.FunctionType, types.CodeType,
types.ClassType, type)
def dis(x=None):
"""Disassemble classes, methods, functions, or code.
@ -29,10 +32,7 @@ def dis(x=None):
items = x.__dict__.items()
items.sort()
for name, x1 in items:
if isinstance(x1, (types.MethodType,
types.FunctionType,
types.CodeType,
types.ClassType)):
if isinstance(x1, _have_code):
print "Disassembly of %s:" % name
try:
dis(x1)

View File

@ -49,6 +49,8 @@ Core and Builtins
Library
-------
- Issue #8310: Allow dis to examine new style classes.
- Issue #8257: The Decimal construct now accepts a float instance
directly, converting that float to a Decimal of equal value: