Class PythonDebugger
java.lang.Object
org.eclipse.ease.debugging.AbstractEaseDebugger
org.eclipse.ease.lang.python.debugger.PythonDebugger
- All Implemented Interfaces:
IEventProcessor
,IExecutionListener
- Direct Known Subclasses:
Py4jDebugger
public class PythonDebugger
extends AbstractEaseDebugger
implements IEventProcessor, IExecutionListener
Debugger class handling communication between Python and Eclipse.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionclass
CustomEaseDebugFrame
parsing the data fromIPyFrame
to more usable format.Nested classes/interfaces inherited from class org.eclipse.ease.debugging.AbstractEaseDebugger
AbstractEaseDebugger.ThreadState
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
Variable name forPythonDebugger
in Python engine.Fields inherited from interface org.eclipse.ease.IExecutionListener
ENGINE_END, ENGINE_START, SCRIPT_END, SCRIPT_INJECTION_END, SCRIPT_INJECTION_START, SCRIPT_START
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionRuns the givenScript
using theICodeTracer
.Returns theIPythonScriptRegistry
used by the debugger.void
setCodeTracer
(ICodeTracer tracer) Sets theICodeTracer
from the Python implementation.void
traceDispatch
(IPyFrame frame, String type) Function called fromICodeTracer
whenever a new frame in Python is hit.Methods inherited from class org.eclipse.ease.debugging.AbstractEaseDebugger
fireDispatchEvent, getExceptionStacktrace, getExceptionStacktrace, getStacktrace, handleEvent, isTrackedScript, notify, setDispatcher, setScriptRegistry
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.eclipse.ease.debugging.dispatcher.IEventProcessor
handleEvent, setDispatcher
Methods inherited from interface org.eclipse.ease.IExecutionListener
notify
-
Field Details
-
PYTHON_DEBUGGER_VARIABLE
Variable name forPythonDebugger
in Python engine. During setup phase set this variable BEFORE calling edb.py.- See Also:
-
-
Constructor Details
-
PythonDebugger
-
-
Method Details
-
setCodeTracer
Sets theICodeTracer
from the Python implementation.This method will be called by edb.py on "_pyease_debugger".
- Parameters:
tracer
-ICodeTracer
for the connection between Eclipse and Python.
-
traceDispatch
Function called fromICodeTracer
whenever a new frame in Python is hit. Effectively checks if debugger should suspend or continue.- Parameters:
frame
-IPyFrame
for current execution point.type
- Type of trace step that occurred (ignored).
-
execute
- Parameters:
script
- Script to be executed.- Returns:
- Always
null
-
getScriptRegistry
Returns theIPythonScriptRegistry
used by the debugger. If debugger has been set up incorrectly (e.g. script registry not tailored for python) this will returnnull
.- Returns:
IPythonScriptRegistry
ornull
.
-