void (final Project project, final JavaStackFrame stackFrame, final DebugProcessImpl debugProcess, XExpression expression, final DialogWrapper dialog) { XDebuggerEvaluator evaluator = stackFrame.getEvaluator(); if (evaluator != null) { evaluator.evaluate(expression, new XDebuggerEvaluator.XEvaluationCallback() { @Override public void evaluated(@NotNull XValue result) { if (result instanceof JavaValue) { forceEarlyReturnWithFinally(((JavaValue)result).getDescriptor().getValue(), stackFrame, debugProcess, dialog); } } @Override public void errorOccurred(@NotNull final @NlsContexts.DialogMessage String errorMessage) { showError(project, JavaDebuggerBundle.message("error.unable.to.evaluate.expression") + ": " + errorMessage); } }, stackFrame.getSourcePosition()); } else { showError(project, XDebuggerBundle.message("xdebugger.evaluate.stack.frame.has.not.evaluator")); } }