mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-08-06 05:48:40 +00:00
begin sketching out meta eval info, to allow for debugger meta evaluations on both ctrl thread & on ui thread - e.g. breakpoint hit count evaluation in conditional bps
This commit is contained in:
@@ -568,8 +568,8 @@ RD_StringBindingPair rd_default_binding_table[110] =
|
||||
{str8_lit_comp("goto_name_at_cursor"), {OS_Key_F12, 0 }},
|
||||
{str8_lit_comp("toggle_watch_expr_at_cursor"), {OS_Key_W, 0 |OS_EventFlag_Alt}},
|
||||
{str8_lit_comp("toggle_watch_expr_at_mouse"), {OS_Key_D, 0 |OS_EventFlag_Ctrl }},
|
||||
{str8_lit_comp("toggle_watch_pin_at_cursor"), {OS_Key_F9, 0 |OS_EventFlag_Ctrl }},
|
||||
{str8_lit_comp("toggle_breakpoint_cursor"), {OS_Key_F9, 0 }},
|
||||
{str8_lit_comp("toggle_watch_pin"), {OS_Key_F9, 0 |OS_EventFlag_Ctrl }},
|
||||
{str8_lit_comp("toggle_breakpoint"), {OS_Key_F9, 0 }},
|
||||
{str8_lit_comp("add_target"), {OS_Key_T, 0 |OS_EventFlag_Ctrl }},
|
||||
{str8_lit_comp("attach"), {OS_Key_F6, 0 |OS_EventFlag_Shift }},
|
||||
{str8_lit_comp("filter"), {OS_Key_Slash, 0 |OS_EventFlag_Ctrl }},
|
||||
|
||||
@@ -680,10 +680,10 @@ RD_DefaultBindingTable:
|
||||
//- rjf: watch expressions
|
||||
{ "toggle_watch_expr_at_cursor" W 0 0 alt }
|
||||
{ "toggle_watch_expr_at_mouse" D ctrl 0 0 }
|
||||
{ "toggle_watch_pin_at_cursor" F9 ctrl 0 0 }
|
||||
{ "toggle_watch_pin" F9 ctrl 0 0 }
|
||||
|
||||
//- rjf: breakpoints
|
||||
{ "toggle_breakpoint_cursor" F9 0 0 0 }
|
||||
{ "toggle_breakpoint" F9 0 0 0 }
|
||||
|
||||
//- rjf: targets
|
||||
{ "add_target" T ctrl 0 0 }
|
||||
|
||||
@@ -1744,11 +1744,11 @@ rd_eval_space_read(void *u, E_Space space, void *out, Rng1U64 range)
|
||||
}
|
||||
hs_scope_close(scope);
|
||||
}break;
|
||||
case RD_EvalSpaceKind_CtrlEntity:
|
||||
case CTRL_EvalSpaceKind_Entity:
|
||||
{
|
||||
|
||||
}break;
|
||||
case RD_EvalSpaceKind_CfgEntity:
|
||||
case CTRL_EvalSpaceKind_Meta:
|
||||
{
|
||||
|
||||
}break;
|
||||
@@ -14100,11 +14100,19 @@ rd_frame(void)
|
||||
// TODO(rjf): @msgs
|
||||
}
|
||||
|
||||
////////////////////////////
|
||||
//- rjf: gather meta eval infos
|
||||
//
|
||||
CTRL_MetaEvalInfoArray meta_eval_infos = {0};
|
||||
{
|
||||
// TODO(rjf): @msgs
|
||||
}
|
||||
|
||||
////////////////////////////
|
||||
//- rjf: tick debug engine
|
||||
//
|
||||
U64 cmd_count_pre_tick = rd_state->cmds[0].count;
|
||||
D_EventList engine_events = d_tick(scratch.arena, &targets, &breakpoints, &path_maps, exception_code_filters);
|
||||
D_EventList engine_events = d_tick(scratch.arena, &targets, &breakpoints, &path_maps, exception_code_filters, &meta_eval_infos);
|
||||
|
||||
////////////////////////////
|
||||
//- rjf: no selected thread? -> try to snap to any existing thread
|
||||
|
||||
@@ -85,16 +85,6 @@ enum
|
||||
RD_EntityFlag_MarkedForDeletion = (1<<31),
|
||||
};
|
||||
|
||||
////////////////////////////////
|
||||
//~ rjf: Evaluation Spaces
|
||||
|
||||
typedef U64 RD_EvalSpaceKind;
|
||||
enum
|
||||
{
|
||||
RD_EvalSpaceKind_CtrlEntity = E_SpaceKind_FirstUserDefined,
|
||||
RD_EvalSpaceKind_CfgEntity,
|
||||
};
|
||||
|
||||
////////////////////////////////
|
||||
//~ rjf: Binding Types
|
||||
|
||||
|
||||
Reference in New Issue
Block a user