Commit Graph

47 Commits

Author SHA1 Message Date
Ryan Fleury 7114a20e66 apply expr view rule fast paths properly 2024-10-07 14:22:31 -07:00
Ryan Fleury 57d01355a1 create pre-filtered types for meta evals; all of the same underlying data transforms are on a single meta-eval data bundle, but now each type of meta eval entity is exposed via a tighter type to the ui & eval system 2024-09-30 16:03:55 -07:00
Ryan Fleury fe59fab3da progress on callstack view replacement 2024-09-27 15:48:36 -07:00
Ryan Fleury ecaa2c55c0 eliminate all old eval visualization block/row code 2024-09-27 10:29:55 -07:00
Ryan Fleury 45226e8a81 begin eliminating old block/row code in eval visualization 2024-09-27 10:26:30 -07:00
Ryan Fleury 0073b2b045 fix correct application of top-level view rules in block tree build 2024-09-27 10:12:44 -07:00
Ryan Fleury 3d781f847e fix expansion rule picking 2024-09-27 10:08:49 -07:00
Ryan Fleury 4b7e6d7113 fixes for variable size rows in new eval visualization structures / integration 2024-09-27 10:04:56 -07:00
Ryan Fleury 3fa98eb0e7 begin moving all visualizer view rules to new eval visualization block system 2024-09-26 17:00:32 -07:00
Ryan Fleury 73c37b4d8b correct collection editing/deletion/reordering/etc. with new watch visualization system 2024-09-26 16:08:35 -07:00
Ryan Fleury 2fdfeec467 always keep collections in filtered watch views; add add-new-row capability to watch collection expansion & hook up with expansion ids 2024-09-26 15:36:22 -07:00
Ryan Fleury d314a12698 eliminate possibility for recursive watch window builds; correctly sort child expansion keys before iteration, if needed, for non-identity-based id schemes (debug info tables, frontend entities, etc.); further fixes & integration 2024-09-26 15:26:28 -07:00
Ryan Fleury 07f978ac41 further integration work & expanded support; generalized paths for entity reordering in watch views 2024-09-26 14:37:13 -07:00
Ryan Fleury 338fabd9d0 more block tree / eval visualization integration work with watch views 2024-09-26 13:13:30 -07:00
Ryan Fleury 198246eb52 more integration work, of new block tree eval visualization structure w/ watch views 2024-09-26 12:05:01 -07:00
Ryan Fleury e705907ec0 checkpoint in moving existing watch views to new block-tree visualization structure 2024-09-26 08:09:22 -07:00
Ryan Fleury 2fb0eb0eb1 sketch out basic coordinate space conversions for new block tree / block range list structures; num -> key; key -> row; num -> containing block range; etc. 2024-09-25 16:53:54 -07:00
Ryan Fleury 48b10411bc eliminate old weld-together path for block tree walk & windowed row list build 2024-09-25 16:37:11 -07:00
Ryan Fleury d6f6ec83da unweld windowed row list generation from block tree walk; write new path which relies on caller-prepped block range list 2024-09-25 16:36:43 -07:00
Ryan Fleury df2bc62563 extend eval visualization view rule hooks to support view-rule-defined (id <-> number) mapping; used for id-based state keys, but an immediate-mode ordering (e.g. sorted/filtered debug info tables); can be used in the future for sorted types/arrays/etc., while preserving expansion/view rule state. also, pull out the block tree -> list(block*range) walk, since it is going to be useful in multiple places 2024-09-25 16:32:48 -07:00
Ryan Fleury f2ecb3d898 expand info & expansion range query hook implementation, for all currently supported view rules 2024-09-25 15:59:42 -07:00
Ryan Fleury a1ceb5fa3b on second thought... merging both view rule expansion *header* info generation, and windowed range queries into an expanded block, into the same hook, is really limiting & wrong - so split back to two hooks, one stage is just informing the expansion space, the next provides per-row information within an expanded block with range-based queries 2024-09-25 15:17:39 -07:00
Ryan Fleury a87c032305 fix a few details in new eval visualization block tree generation algorithm; fix row generation; start fitting new system into hover eval as a first test 2024-09-25 13:17:17 -07:00
Ryan Fleury 9c3d2cd5ab eval visualization: first pass of new tree-ified block building, which preserves the hierarchy of the eval visualization path, as well as relies on only a single view rule hook; first pass of windowed row list production, given that block tree build; also still just uses the single hook 2024-09-25 12:23:50 -07:00
Ryan Fleury c976154284 eval: add cache for type data member gathering & member lookup; eval_visualization: sketch out new hook organization which has single hook for both view rule expansion info, + expansion expr production, in a single combined path (the two often require the same information so it is maybe a good idea to combine them - if not, it will be easy to separate into two stages (expand + expr-child production), but basically just trying to get view rules out of 'block production', and more into just providing the information that actually varies per view rule 2024-09-25 09:34:23 -07:00
Ryan Fleury fcfd446c5e watch ui tweaks 2024-09-24 16:58:10 -07:00
Ryan Fleury fbfaf1c747 strip out root buttons idea; fix up pretty member names 2024-09-24 11:06:31 -07:00
Ryan Fleury 629ddec458 begin sketching out watch-window-driven scheduler replacement 2024-09-23 17:41:26 -07:00
Ryan Fleury 5690a9e19b further enriching of codebase type info & eval type info to encode code-contents of pointers, pretty names for members; further progress on improving watch views to support all needed features for replacing all table uis 2024-09-23 16:45:18 -07:00
Ryan Fleury bfe6f655be more work on watch view to replace all old uis 2024-09-23 14:26:27 -07:00
Ryan Fleury f728614e0b eliminate watch view fill kind; extend rtti & eval type system with 'external' pointers, for e.g. meta-space vaddr u64s pointing into an address space; begin sketching out paths for mutational rows in watch collections, use to add 'add target' fastpath in targets collection evaluations 2024-09-23 10:57:43 -07:00
Ryan Fleury ebaad35813 fix filter passthrough & fix double-application of view rules in some cases 2024-09-20 17:19:13 -07:00
Ryan Fleury 066f5f6cf2 add correct inheritance rules for oct, hex, dec, bin, only, omit view rules 2024-09-20 16:24:09 -07:00
Ryan Fleury c98db01b63 replace watch view fill kind with top-level expression & view rule; collection macro for watches; reintroduce only/omit, with new expr-macro-based eval visualization system; remove root-expression-generation from expansion block generation, since it makes things a bit more complicated 2024-09-20 16:15:29 -07:00
Ryan Fleury a1debd9219 targets, breakpoints, watch pins, etc. collections; fix . access on enum types; add more information to meta evaluations 2024-09-20 13:49:27 -07:00
Ryan Fleury 432e70caf6 begin sketching out 'collections', which are the formal mechanism in the eval/eval-viz systems for visualizing synthetic structures/arrays/trees produced by the debugger, rather than ad-hocing / hardwiring the correct ev-block production for each kind of view - the views can still stay, but this is an important feature for other cases 2024-09-20 12:04:13 -07:00
Ryan Fleury bbd86449d8 fix ghost auto-view-rule text visualization to calculate auto view rule from raw type expression rather than post-view-rule-applied one 2024-09-19 16:07:14 -07:00
Ryan Fleury 05ec402a8e make eval visualization system robust to absence of auto view rule table 2024-09-19 15:23:55 -07:00
Ryan Fleury df4d18aa5c sketch out type-based auto-view-rule in eval visualization system 2024-09-19 15:22:47 -07:00
Ryan Fleury 714c736530 eliminate old manual serialization code for meta evals in ctrl msgs 2024-09-18 17:01:59 -07:00
Ryan Fleury 9899efe93c merge view rules & view specs entirely; simplify graphical view rules down to single hook 2024-09-16 14:44:28 -07:00
Ryan Fleury 793ad8fe1e new view rule table definition in df, merging graphical view rules & views totally 2024-09-13 13:39:40 -07:00
Ryan Fleury 65ed1f0997 another checkpoint - eliminate cmd specs from engine, move all dynamic command definition things into frontend 2024-09-12 12:11:00 -07:00
Ryan Fleury 20aba085cd oops 2024-09-10 17:14:10 -07:00
Ryan Fleury 299ea04539 port debugger frontend to using eval visualization layer, over old debug engine code 2024-09-10 17:10:48 -07:00
Ryan Fleury bb50e88141 eval_visualization layer: builtin view rules, porting of more debug engine code over 2024-09-10 16:14:11 -07:00
Ryan Fleury e989da4087 float down dbg engine eval visualization stuff into formal codebase layer which just builds on top of eval 2024-09-10 15:46:05 -07:00