adjust block tree building from being on expr -> being on eval

This commit is contained in:
Ryan Fleury
2025-04-23 14:45:15 -07:00
parent a27b90a3f9
commit c9a05bc76f
9 changed files with 49 additions and 40 deletions
@@ -512,7 +512,7 @@ ev_resolved_from_expr(Arena *arena, E_Expr *expr)
//~ rjf: Block Building
internal EV_BlockTree
ev_block_tree_from_expr(Arena *arena, EV_View *view, String8 filter, E_Expr *expr)
ev_block_tree_from_eval(Arena *arena, EV_View *view, String8 filter, E_Eval eval)
{
ProfBeginFunction();
EV_BlockTree tree = {&ev_nil_block};
@@ -522,14 +522,13 @@ ev_block_tree_from_expr(Arena *arena, EV_View *view, String8 filter, E_Expr *exp
//- rjf: generate root expression
EV_Key root_key = ev_key_root();
EV_Key root_row_key = ev_key_make(ev_hash_from_key(root_key), 1);
E_Expr *root_expr = e_expr_copy(arena, expr);
//- rjf: generate root block
tree.root = push_array(arena, EV_Block, 1);
MemoryCopyStruct(tree.root, &ev_nil_block);
tree.root->key = root_key;
tree.root->string = str8_zero();
tree.root->eval = e_eval_from_expr(arena, root_expr);
tree.root->eval = eval;
tree.root->type_expand_rule = &e_type_expand_rule__default;
tree.root->viz_expand_rule = &ev_nil_expand_rule;
tree.root->row_count = 1;