public T evaluate() throws EvaluateException {
    myProgressIndicator.setText(JavaDebuggerBundle.message("progress.evaluating", ReadAction.compute(myElement::getText)));

    try {
      T result = evaluate(getDebuggerContext().createEvaluationContext());

      ProgressIndicatorUtils.checkCancelledEvenWithPCEDisabled(myProgressIndicator);

      return result;
    }
    catch (final EvaluateException e) {
      if (myEditor != null) {
        DebuggerInvocationUtil.invokeLater(getDebuggerContext().getProject(),
                                           () -> showEvaluationHint(myEditor, myElement, e),
                                           myProgressIndicator.getModalityState());
      }
      throw e;
    }
  }
public T evaluate()