use of com.intellij.xdebugger.frame.XValueChildrenList in project intellij-community by JetBrains.
the class PydevConsoleCommunication method parseVars.
private XValueChildrenList parseVars(String ret, PyDebugValue parent) throws PyDebuggerException {
final List<PyDebugValue> values = ProtocolParser.parseValues(ret, this);
XValueChildrenList list = new XValueChildrenList(values.size());
for (PyDebugValue v : values) {
list.add(v.getName(), parent != null ? v.setParent(parent) : v);
}
return list;
}
use of com.intellij.xdebugger.frame.XValueChildrenList in project intellij-community by JetBrains.
the class PyDebugProcess method loadFrame.
@Override
@Nullable
public XValueChildrenList loadFrame() throws PyDebuggerException {
final PyStackFrame frame = currentFrame();
//do not reload frame every time it is needed, because due to bug in pdb, reloading frame clears all variable changes
if (!myStackFrameCache.containsKey(frame.getThreadFrameId())) {
XValueChildrenList values = myDebugger.loadFrame(frame.getThreadId(), frame.getFrameId());
myStackFrameCache.put(frame.getThreadFrameId(), values);
}
return applyNewValue(myStackFrameCache.get(frame.getThreadFrameId()), frame.getThreadFrameId());
}
use of com.intellij.xdebugger.frame.XValueChildrenList in project intellij-community by JetBrains.
the class RemoteDebugger method loadReferrers.
@Override
public void loadReferrers(final String threadId, final String frameId, final PyReferringObjectsValue var, final PyDebugCallback<XValueChildrenList> callback) {
RunCustomOperationCommand cmd = new GetReferrersCommand(this, threadId, frameId, var);
cmd.execute(new PyDebugCallback<List<PyDebugValue>>() {
@Override
public void ok(List<PyDebugValue> value) {
XValueChildrenList list = new XValueChildrenList();
for (PyDebugValue v : value) {
list.add(v);
}
callback.ok(list);
}
@Override
public void error(PyDebuggerException exception) {
callback.error(exception);
}
});
}
use of com.intellij.xdebugger.frame.XValueChildrenList in project intellij-elixir by KronicDeth.
the class ElixirPortXValue method computeChildren.
@Override
public void computeChildren(@NotNull XCompositeNode node) {
XValueChildrenList childrenList = new XValueChildrenList(2);
addNamedChild(childrenList, getValue().node(), "node");
addNamedChild(childrenList, getValue().id(), "id");
node.addChildren(childrenList, true);
}
use of com.intellij.xdebugger.frame.XValueChildrenList in project intellij-elixir by KronicDeth.
the class ElixirRefXValue method computeChildren.
@Override
public void computeChildren(@NotNull XCompositeNode node) {
int[] ids = getValue().ids();
XValueChildrenList children = new XValueChildrenList(1 + ids.length);
addNamedChild(children, getValue().node(), "node");
for (int i = 0; i < ids.length; i++) {
addNamedChild(children, ids[i], "id" + i);
}
node.addChildren(children, true);
}
Aggregations