[pypy-svn] r65524 - pypy/branch/js-refactoring/pypy/lang/js
santagada at codespeak.net
santagada at codespeak.net
Mon Jun 1 04:27:23 CEST 2009
Author: santagada
Date: Mon Jun 1 04:27:20 2009
New Revision: 65524
Modified:
pypy/branch/js-refactoring/pypy/lang/js/js_interactive.py
Log:
better debug info on interpreter
Modified: pypy/branch/js-refactoring/pypy/lang/js/js_interactive.py
==============================================================================
--- pypy/branch/js-refactoring/pypy/lang/js/js_interactive.py (original)
+++ pypy/branch/js-refactoring/pypy/lang/js/js_interactive.py Mon Jun 1 04:27:20 2009
@@ -9,9 +9,9 @@
import getopt
from pypy.lang.js.interpreter import load_source, Interpreter, load_file
from pypy.lang.js.jsparser import parse, ParseError
-from pypy.lang.js.jsobj import W_Builtin, W_String, ThrowException, w_Undefined
+from pypy.lang.js.jsobj import W_Builtin, W_String, ThrowException, \
+ w_Undefined, W_Boolean
from pypy.rlib.streamio import open_file_as_stream
-from pypy.lang.js.jscode import JsCode
import code
sys.ps1 = 'js> '
@@ -36,7 +36,8 @@
def debugjs(ctx, args, this):
global DEBUG
- DEBUG = True
+ DEBUG = not DEBUG
+ return W_Boolean(DEBUG)
def loadjs(ctx, args, this):
filename = args[0].ToString()
@@ -47,6 +48,7 @@
arguments = args
import pdb
pdb.set_trace()
+ return w_Undefined
def quitjs(ctx, args, this):
sys.exit(0)
@@ -73,13 +75,13 @@
traceback.
"""
try:
- if DEBUG:
- bytecode = JsCode()
- ast.emit(bytecode)
- print bytecode
res = self.interpreter.run(ast, interactive=True)
+ if DEBUG:
+ print self.interpreter._code
if res not in (None, w_Undefined):
try:
+ if DEBUG:
+ print repr(res)
print res.ToString(self.interpreter.w_Global)
except ThrowException, exc:
print exc.exception.ToString(self.interpreter.w_Global)
More information about the Pypy-commit
mailing list