From fc53c13dd5de26fa862c812a18b6f36bbee60ea0 Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Fri, 19 Jan 2001 02:41:41 +0000 Subject: [PATCH] Checking in a slight variation of Barry's patch 103303. --- Lib/dis.py | 19 +++++++++---------- 1 file 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).""" -- 2.50.1