fix value explorer for destructuring

This commit is contained in:
Dmitry Vasilev
2023-12-30 17:27:59 +08:00
parent 212179b788
commit acd24fe5b7
4 changed files with 22 additions and 6 deletions

View File

@@ -1,3 +1,4 @@
import {update_children} from './parse_js.js'
import {map_accum, map_find, map_object, stringify, findLast} from './utils.js'
import {is_eq, find_error_origin_node} from './ast_utils.js'
import {find_node, find_leaf, ancestry_inc} from './ast_utils.js'
@@ -147,7 +148,7 @@ export const add_frame = (
let frame
frame = state.frames?.[active_calltree_node.id]
if(frame == null) {
frame = eval_frame(active_calltree_node, state.modules)
frame = update_children(eval_frame(active_calltree_node, state.modules))
const execution_paths = active_calltree_node.toplevel
? null
: get_execution_paths(frame)

View File

@@ -1029,9 +1029,12 @@ const eval_decl_pair = (s, eval_cxt, frame_cxt) => {
}
})
),
n => n.result == null
? {...n, result: {ok}}
: n
n =>
// TODO this should set result for default values in destructuring
// Currently not implemented
n.result == null
? {...n, result: {ok}}
: n
)
const s_evaled = {...s_expr_evaled, children: [

View File

@@ -1561,7 +1561,7 @@ const update_children_not_rec = (node, children = node.children) => {
}
}
const update_children = node => {
export const update_children = node => {
if(Array.isArray(node)) {
return node.map(update_children)
} else {