I passed in the XEvaluationCallback into "evaluate" method, then in the "evaluated" method of the callback, how to get value of the XValue object (XdebugValue)? XdebugValue.getValue is a private method, and also doesn't return meaningful result.
Call computePresentation() passing your own implementation of XValueNode. Unfortunately it's the only API that we have; there is no real concept of a "value" that can be manipulated in the debugger API.
Try XDebuggerManager().getInstance(project).getCurrentSession().getCurrentStackFrame().getEvaluator().evaluate() (with null checks added as appropriate).
IntelliJ doesn't recognize XDebuggerManager, and doesn't suggest any import.
---------------
Nevermind, removed the parenthesis and it recognizes.
Message was edited by: Alan Ng
I passed in the XEvaluationCallback into "evaluate" method, then in the "evaluated" method of the callback, how to get value of the XValue object (XdebugValue)? XdebugValue.getValue is a private method, and also doesn't return meaningful result.
Call computePresentation() passing your own implementation of XValueNode. Unfortunately it's the only API that we have; there is no real concept of a "value" that can be manipulated in the debugger API.