open continueVm method — go debugger doesnt' want to implement suspend context manager and we don't want to complicate debugger sdk

This commit is contained in:
Vladimir Krivosheev
2015-10-16 12:50:42 +02:00
parent c7cd15b9e5
commit 8ccb27c134
@@ -136,7 +136,10 @@ abstract class DebugProcessImpl<C : VmConnection<*>>(session: XDebugSession,
continueVm(StepAction.CONTINUE)
}
protected final fun continueVm(stepAction: StepAction) {
/**
* You can override this method to avoid SuspendContextManager implementation, but it is not recommended.
*/
protected open fun continueVm(stepAction: StepAction) {
val suspendContextManager = vm!!.suspendContextManager
if (stepAction === StepAction.CONTINUE) {
if (suspendContextManager.context == null) {
@@ -155,11 +158,11 @@ abstract class DebugProcessImpl<C : VmConnection<*>>(session: XDebugSession,
suspendContextManager.continueVm(stepAction, 1)
}
protected final fun setOverlay() {
protected fun setOverlay() {
vm!!.suspendContextManager.setOverlayMessage("Paused in debugger")
}
protected final fun processBreakpoint(suspendContext: SuspendContext, breakpoint: XBreakpoint<*>, xSuspendContext: SuspendContextImpl) {
protected fun processBreakpoint(suspendContext: SuspendContext, breakpoint: XBreakpoint<*>, xSuspendContext: SuspendContextImpl) {
val condition = breakpoint.conditionExpression?.expression
if (!processBreakpointConditionsAtIdeSide || condition == null) {
processBreakpointLogExpressionAndSuspend(breakpoint, xSuspendContext, suspendContext)