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 TypeClassDescriptionclassCustomEaseDebugFrameparsing the data fromIPyFrameto more usable format.Nested classes/interfaces inherited from class org.eclipse.ease.debugging.AbstractEaseDebugger
AbstractEaseDebugger.ThreadState -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringVariable name forPythonDebuggerin 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 givenScriptusing theICodeTracer.Returns theIPythonScriptRegistryused by the debugger.voidsetCodeTracer(ICodeTracer tracer) Sets theICodeTracerfrom the Python implementation.voidtraceDispatch(IPyFrame frame, String type) Function called fromICodeTracerwhenever a new frame in Python is hit.Methods inherited from class org.eclipse.ease.debugging.AbstractEaseDebugger
fireDispatchEvent, getExceptionStacktrace, getExceptionStacktrace, getStacktrace, handleEvent, isTrackedScript, notify, setDispatcher, setScriptRegistryMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.eclipse.ease.debugging.dispatcher.IEventProcessor
handleEvent, setDispatcherMethods inherited from interface org.eclipse.ease.IExecutionListener
notify
-
Field Details
-
PYTHON_DEBUGGER_VARIABLE
Variable name forPythonDebuggerin Python engine. During setup phase set this variable BEFORE calling edb.py.- See Also:
-
-
Constructor Details
-
PythonDebugger
-
-
Method Details
-
setCodeTracer
Sets theICodeTracerfrom the Python implementation.This method will be called by edb.py on "_pyease_debugger".
- Parameters:
tracer-ICodeTracerfor the connection between Eclipse and Python.
-
traceDispatch
Function called fromICodeTracerwhenever a new frame in Python is hit. Effectively checks if debugger should suspend or continue.- Parameters:
frame-IPyFramefor current execution point.type- Type of trace step that occurred (ignored).
-
execute
- Parameters:
script- Script to be executed.- Returns:
- Always
null
-
getScriptRegistry
Returns theIPythonScriptRegistryused by the debugger. If debugger has been set up incorrectly (e.g. script registry not tailored for python) this will returnnull.- Returns:
IPythonScriptRegistryornull.
-