describeNode feedback

This commit is contained in:
sjorsdonkers
2025-04-22 13:48:13 +02:00
parent 5026c48805
commit a698ff8309
3 changed files with 11 additions and 35 deletions

View File

@@ -170,15 +170,11 @@ fn describeNode(cmd: anytype) !void {
if (params.nodeId != null) {
const node = bc.node_registry.lookup_by_id.get(params.nodeId.?) orelse return error.NodeNotFound;
return cmd.sendResult(.{ .node = bc.nodeWriter(node, .{}) }, .{});
} else if (params.objectId != null) {
}
if (params.objectId != null) {
// Retrieve the object from which ever context it is in.
const js_value = try bc.session.inspector.getValueByObjectId(cmd.arena, bc.session.executor, params.objectId.?);
const entry = js_value.taggedAnyOpaque() orelse return error.ObjectIdIsNotANode;
const subtype = entry.subtype orelse return error.ObjectIdIsNotANode;
if (subtype != .node) return error.ObjectIdIsNotANode;
const node = try bc.node_registry.register(@ptrCast(entry.ptr));
const parser_node = try bc.session.inspector.getNodePtr(cmd.arena, params.objectId.?);
const node = try bc.node_registry.register(@ptrCast(parser_node));
return cmd.sendResult(.{ .node = bc.nodeWriter(node, .{}) }, .{});
}
return error.MissingParams;