dead code elimination / small fixes in collection query eval

This commit is contained in:
Ryan Fleury
2025-03-19 06:31:18 -07:00
parent 6a44f6485d
commit eaa3711405
3 changed files with 20 additions and 29 deletions
+4 -4
View File
@@ -13676,7 +13676,7 @@ rd_frame(void)
String8 collection_name = str8_lit("watches");
E_Expr *expr = e_push_expr(scratch.arena, E_ExprKind_LeafOffset, 0);
expr->type_key = e_type_key_cons(.kind = E_TypeKind_Set, .name = collection_name, .flags = E_TypeFlag_EditableChildren);
expr->space = e_space_make(RD_EvalSpaceKind_MetaCfg);
expr->space = e_space_make(RD_EvalSpaceKind_MetaQuery);
e_string2expr_map_insert(scratch.arena, ctx->macro_map, collection_name, expr);
e_lookup_rule_map_insert_new(scratch.arena, ctx->lookup_rule_map, collection_name,
.info = E_LOOKUP_INFO_FUNCTION_NAME(watches),
@@ -13754,7 +13754,7 @@ rd_frame(void)
E_TypeKey collection_type_key = e_type_key_cons(.kind = E_TypeKind_Set, .name = collection_name);
E_Expr *expr = e_push_expr(scratch.arena, E_ExprKind_LeafOffset, 0);
expr->type_key = collection_type_key;
expr->space = e_space_make(RD_EvalSpaceKind_MetaCfg);
expr->space = e_space_make(RD_EvalSpaceKind_MetaQuery);
e_string2expr_map_insert(scratch.arena, ctx->macro_map, collection_name, expr);
e_lookup_rule_map_insert_new(scratch.arena, ctx->lookup_rule_map, collection_name,
.info = E_LOOKUP_INFO_FUNCTION_NAME(cfg),
@@ -13772,7 +13772,7 @@ rd_frame(void)
E_TypeKey collection_type_key = e_type_key_cons(.kind = E_TypeKind_Set, .name = collection_name);
E_Expr *expr = e_push_expr(scratch.arena, E_ExprKind_LeafOffset, 0);
expr->type_key = collection_type_key;
expr->space = e_space_make(RD_EvalSpaceKind_MetaCtrlEntity);
expr->space = e_space_make(RD_EvalSpaceKind_MetaQuery);
e_string2expr_map_insert(scratch.arena, ctx->macro_map, collection_name, expr);
e_lookup_rule_map_insert_new(scratch.arena, ctx->lookup_rule_map, collection_name,
.info = E_LOOKUP_INFO_FUNCTION_NAME(ctrl_entities),
@@ -13799,7 +13799,7 @@ rd_frame(void)
E_TypeKey type_key = e_type_key_cons(.kind = E_TypeKind_Set, .name = name);
E_Expr *expr = e_push_expr(scratch.arena, E_ExprKind_LeafOffset, 0);
expr->type_key = type_key;
expr->space = e_space_make(RD_EvalSpaceKind_MetaCmd);
expr->space = e_space_make(RD_EvalSpaceKind_MetaQuery);
e_string2expr_map_insert(scratch.arena, ctx->macro_map, name, expr);
e_lookup_rule_map_insert_new(scratch.arena, ctx->lookup_rule_map, name,
.info = E_LOOKUP_INFO_FUNCTION_NAME(commands),
+1 -23
View File
@@ -82,6 +82,7 @@ typedef U64 RD_EvalSpaceKind;
enum
{
RD_EvalSpaceKind_CtrlEntity = E_SpaceKind_FirstUserDefined,
RD_EvalSpaceKind_MetaQuery,
RD_EvalSpaceKind_MetaCfg,
RD_EvalSpaceKind_MetaCmd,
RD_EvalSpaceKind_MetaCtrlEntity,
@@ -437,21 +438,6 @@ typedef enum RD_FontSlot
}
RD_FontSlot;
typedef enum RD_PaletteCode
{
RD_PaletteCode_Base,
RD_PaletteCode_MenuBar,
RD_PaletteCode_Good,
RD_PaletteCode_Bad,
RD_PaletteCode_Pop,
RD_PaletteCode_ScrollBar,
RD_PaletteCode_Tab,
RD_PaletteCode_TabInactive,
RD_PaletteCode_DropSite,
RD_PaletteCode_COUNT
}
RD_PaletteCode;
////////////////////////////////
//~ rjf: Lister Types
@@ -579,14 +565,6 @@ struct RD_WindowState
String8 query_cmd_name;
RD_Regs *query_regs;
// rjf: query view stack
#if 0
Arena *query_cmd_arena;
String8 query_cmd_name;
RD_Regs *query_cmd_regs;
U64 query_cmd_regs_mask[(RD_RegSlot_COUNT + 63) / 64];
#endif
// rjf: hover eval state
B32 hover_eval_focused;
Arena *hover_eval_arena;
+15 -2
View File
@@ -993,15 +993,22 @@ rd_watch_row_info_from_row(Arena *arena, EV_Row *row)
}
// rjf: determine ctrl entity
if(block_type_kind == E_TypeKind_Set && block_eval.space.kind == RD_EvalSpaceKind_MetaCtrlEntity)
if(block_type_kind == E_TypeKind_Set && (block_eval.space.kind == RD_EvalSpaceKind_MetaQuery ||
block_eval.space.kind == RD_EvalSpaceKind_MetaCtrlEntity))
{
info.group_entity = rd_ctrl_entity_from_eval_space(info.eval.space);
}
// rjf: determine cfg group name / parent
if(block_type_kind == E_TypeKind_Set && block_eval.space.kind == RD_EvalSpaceKind_MetaCfg)
if(block_type_kind == E_TypeKind_Set && (block_eval.space.kind == RD_EvalSpaceKind_MetaQuery ||
block_eval.space.kind == RD_EvalSpaceKind_MetaCfg))
{
info.group_cfg_parent = rd_cfg_from_eval_space(block_eval.space);
}
// rjf: determine group cfg name
if(block_type_kind == E_TypeKind_Set)
{
String8 singular_name = rd_singular_from_code_name_plural(block_type->name);
if(singular_name.size != 0)
{
@@ -1134,6 +1141,12 @@ rd_watch_row_info_from_row(Arena *arena, EV_Row *row)
}
}
// rjf: singular row for queries
else if(info.eval.space.kind == RD_EvalSpaceKind_MetaQuery)
{
rd_watch_cell_list_push_new(arena, &info.cells, RD_WatchCellKind_Expr, .pct = 1.f);
}
// rjf: singular button for unattached processes
else if(info.eval.space.kind == RD_EvalSpaceKind_MetaUnattachedProcess)
{