1 package com.jetbrains.python.debugger;
3 import com.intellij.xdebugger.frame.XFullValueEvaluator;
4 import org.jetbrains.annotations.NotNull;
9 public class PyFullValueEvaluator extends XFullValueEvaluator {
10 private final PyFrameAccessor myDebugProcess;
11 private final String myExpression;
14 * @param linkText text of the link what will be appended to a variables tree node text
18 protected PyFullValueEvaluator(PyFrameAccessor debugProcess, String expression) {
19 myDebugProcess = debugProcess;
20 myExpression = expression;
25 public void startEvaluation(@NotNull XFullValueEvaluationCallback callback) {
26 String expression = myExpression.trim();
27 if ("".equals(expression)) {
28 callback.evaluated("");
33 final PyDebugValue value = myDebugProcess.evaluate(expression, false, false);
34 callback.evaluated(value.getValue());
36 catch (PyDebuggerException e) {
37 callback.errorOccurred(e.getTracebackError());