org.python.util
Class InteractiveInterpreter
java.lang.Object
org.python.util.PythonInterpreter
org.python.util.InteractiveInterpreter
- Direct Known Subclasses:
- InteractiveConsole
- public class InteractiveInterpreter
- extends PythonInterpreter
Method Summary |
void |
interrupt(ThreadState ts)
Pause the current code, sneak an exception raiser into
sys.trace_func, and then continue the code hoping that JPython will
get control to do the break; |
void |
resetbuffer()
|
void |
runcode(PyObject code)
execute a code object.
|
boolean |
runsource(java.lang.String source)
Compile and run some source in the interpreter.
|
boolean |
runsource(java.lang.String source,
java.lang.String filename)
|
boolean |
runsource(java.lang.String source,
java.lang.String filename,
java.lang.String symbol)
|
void |
showexception(PyException exc)
|
void |
write(java.lang.String data)
|
Methods inherited from class org.python.util.PythonInterpreter |
cleanup, eval, exec, exec, execfile, execfile, execfile, get, get, getLocals, initialize, set, set, setErr, setErr, setErr, setLocals, setOut, setOut, setOut |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
buffer
public java.lang.StringBuffer buffer
filename
public java.lang.String filename
InteractiveInterpreter
public InteractiveInterpreter()
InteractiveInterpreter
public InteractiveInterpreter(PyObject locals)
runsource
public boolean runsource(java.lang.String source)
- Compile and run some source in the interpreter.
Arguments are as for compile_command().
One several things can happen:
1) The input is incorrect; compile_command() raised an exception
(SyntaxError or OverflowError). A syntax traceback will be printed
by calling the showsyntaxerror() method.
2) The input is incomplete, and more input is required;
compile_command() returned None. Nothing happens.
3) The input is complete; compile_command() returned a code object.
The code is executed by calling self.runcode() (which also handles
run-time exceptions, except for SystemExit).
The return value is 1 in case 2, 0 in the other cases (unless an
exception is raised). The return value can be used to decide
whether to use sys.ps1 or sys.ps2 to prompt the next line.
runsource
public boolean runsource(java.lang.String source,
java.lang.String filename)
runsource
public boolean runsource(java.lang.String source,
java.lang.String filename,
java.lang.String symbol)
runcode
public void runcode(PyObject code)
- execute a code object.
When an exception occurs, self.showtraceback() is called to display
a traceback. All exceptions are caught except SystemExit, which is
reraised.
A note about KeyboardInterrupt: this exception may occur elsewhere
in this code, and may not always be caught. The caller should be
prepared to deal with it.
showexception
public void showexception(PyException exc)
write
public void write(java.lang.String data)
resetbuffer
public void resetbuffer()
interrupt
public void interrupt(ThreadState ts)
- Pause the current code, sneak an exception raiser into
sys.trace_func, and then continue the code hoping that JPython will
get control to do the break;
Jython homepage