mirror of https://github.com/python/cpython
Checking in a slight variation of Barry's patch 103303.
This commit is contained in:
parent
8dabbf149e
commit
fc53c13dd5
19
Lib/dis.py
19
Lib/dis.py
|
@ -15,6 +15,10 @@ def dis(x=None):
|
||||||
return
|
return
|
||||||
if type(x) is types.InstanceType:
|
if type(x) is types.InstanceType:
|
||||||
x = x.__class__
|
x = x.__class__
|
||||||
|
if hasattr(x, 'im_func'):
|
||||||
|
x = x.im_func
|
||||||
|
if hasattr(x, 'func_code'):
|
||||||
|
x = x.func_code
|
||||||
if hasattr(x, '__dict__'):
|
if hasattr(x, '__dict__'):
|
||||||
items = x.__dict__.items()
|
items = x.__dict__.items()
|
||||||
items.sort()
|
items.sort()
|
||||||
|
@ -28,17 +32,12 @@ def dis(x=None):
|
||||||
except TypeError, msg:
|
except TypeError, msg:
|
||||||
print "Sorry:", msg
|
print "Sorry:", msg
|
||||||
print
|
print
|
||||||
|
elif hasattr(x, 'co_code'):
|
||||||
|
disassemble(x)
|
||||||
else:
|
else:
|
||||||
if hasattr(x, 'im_func'):
|
raise TypeError, \
|
||||||
x = x.im_func
|
"don't know how to disassemble %s objects" % \
|
||||||
if hasattr(x, 'func_code'):
|
type(x).__name__
|
||||||
x = x.func_code
|
|
||||||
if hasattr(x, 'co_code'):
|
|
||||||
disassemble(x)
|
|
||||||
else:
|
|
||||||
raise TypeError, \
|
|
||||||
"don't know how to disassemble %s objects" % \
|
|
||||||
type(x).__name__
|
|
||||||
|
|
||||||
def distb(tb=None):
|
def distb(tb=None):
|
||||||
"""Disassemble a traceback (default: last traceback)."""
|
"""Disassemble a traceback (default: last traceback)."""
|
||||||
|
|
Loading…
Reference in New Issue