diff options
author | Guido van Rossum <guido@python.org> | 2001-01-19 02:41:41 +0000 |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 2001-01-19 02:41:41 +0000 |
commit | 9d8717655b34b51a3140ec5ddd0087755d7573ce (patch) | |
tree | 6c3c32b45b19752ebb39ad1a28bf0395c5998e0f /Lib/dis.py | |
parent | 1b82b16a8281e830938ce230163fe08f0c8ec591 (diff) | |
download | cpython-9d8717655b34b51a3140ec5ddd0087755d7573ce.tar.gz |
Checking in a slight variation of Barry's patch 103303.
Diffstat (limited to 'Lib/dis.py')
-rw-r--r-- | Lib/dis.py | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/Lib/dis.py b/Lib/dis.py index 8c15919a0e..6ecefd34a4 100644 --- a/Lib/dis.py +++ b/Lib/dis.py @@ -15,6 +15,10 @@ def dis(x=None): return if type(x) is types.InstanceType: 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__'): items = x.__dict__.items() items.sort() @@ -28,17 +32,12 @@ def dis(x=None): except TypeError, msg: print "Sorry:", msg print + elif hasattr(x, 'co_code'): + disassemble(x) else: - if hasattr(x, 'im_func'): - x = x.im_func - if hasattr(x, 'func_code'): - 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__ + raise TypeError, \ + "don't know how to disassemble %s objects" % \ + type(x).__name__ def distb(tb=None): """Disassemble a traceback (default: last traceback).""" |