From 4808dcb5645d88f185c22a4fdff489dc8816240c Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Tue, 15 Oct 1996 14:40:21 +0000 Subject: Allow code objects to be passed to run() and eval(). --- Lib/bdb.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/Lib/bdb.py b/Lib/bdb.py index 6d0536d..b2c827c 100644 --- a/Lib/bdb.py +++ b/Lib/bdb.py @@ -7,6 +7,7 @@ # And of course... you can roll your own! import sys +import types BdbQuit = 'bdb.BdbQuit' # Exception to give up completely @@ -278,9 +279,11 @@ class Bdb: # Basic Debugger locals = globals self.reset() sys.settrace(self.trace_dispatch) + if type(cmd) <> types.CodeType: + cmd = cmd+'\n' try: try: - exec cmd + '\n' in globals, locals + exec cmd in globals, locals except BdbQuit: pass finally: @@ -295,9 +298,11 @@ class Bdb: # Basic Debugger locals = globals self.reset() sys.settrace(self.trace_dispatch) + if type(expr) <> types.CodeType: + expr = expr+'\n' try: try: - return eval(expr + '\n', globals, locals) + return eval(expr, globals, locals) except BdbQuit: pass finally: -- cgit v0.12