Commit Graph

1697 Commits

Author SHA1 Message Date
Ryan Fleury 8a8f1e4fc2 work on new hover eval ui, built using the new cfg data structure, immediate-mode view states, etc.; all watch window features -> hover eval 2025-02-05 10:34:47 -08:00
Ryan Fleury 50f8732e63 fix num/idx/vidx/vnum coordinates to correctly apply to root row in watch windows 2025-02-04 19:38:57 -08:00
Ryan Fleury a003a11425 progress on mixing control (command, insertion) rows in cfg-list evaluation, for watch windows; e.g. empty row in watch window, add-new buttons in targets/breakpoints/watchpins/etc. 2025-02-04 16:44:04 -08:00
Ryan Fleury de16c9cdef keep active tab view states hot, even if their ui is not built on any given frame (because they are not selected) 2025-02-04 14:13:01 -08:00
Ryan Fleury 90c86dc812 eval/eval-viz: pull out rules for mapping exprs/irtrees -> lookup/expansion rules; use this path in the single-line value string generator; eliminate old non-view-rulified string generation paths 2025-02-04 13:20:25 -08:00
Ryan Fleury afd113adcc rd: derive schema tree parse on startup rather than recomputing every time 2025-02-04 12:16:28 -08:00
Ryan Fleury b9756d222a eval: sketch out parse/ir cache 2025-02-04 10:29:52 -08:00
Ryan Fleury 657b78c4ef eval: separate ir_ctx -> ir_state & ir_ctx; ir_state for implicit thread-local caching mechanisms for eval, ir_ctx for explicitly supplied user info 2025-02-04 09:57:13 -08:00
Ryan Fleury 9a405bee20 eval: lookup info hook -> just pass irtree, do not recompute; cache for type-key -> auto hook tag exprs; use tags/auto-tags in lookup rule for . operator; fix tag poisoning in ir generation pass; cache for type-key -> unpacked type info; replace all unpacked type info paths with cache usage 2025-02-03 13:21:08 -08:00
Ryan Fleury 59fe6c79cb distinguish root block from non-root blocks; in root case, we do not want to do a lookup-range to generate the block's expression (but in all other cases we do) 2025-02-03 10:07:20 -08:00
Ryan Fleury 6f4533d8f5 rd: new ctrl entity meta evaluation path; ctrl entity meta evaluation cache; eval: auto-view-rules (via 'auto hook map'), + support for 'type patterns', e.g. for templates; ir generation / typechecking hook application + source-tag coloring (to avoid infinite recursion of repeatedly-applied auto view rules 2025-02-02 17:08:14 -08:00
Ryan Fleury eab5c7c971 eval_visualization: eliminate expansion-range hook; move expansions & block tree building completely to new eval hooks for lookups 2025-02-02 14:39:43 -08:00
Ryan Fleury 5bbd9f1c7e eliminate expr resolution hook in eval visualization layer; now succeeded by irgen hook 2025-02-02 12:46:59 -08:00
Ryan Fleury 07c9268941 eval: specify formal way in which tags (view rules) can fit into expression language, both in parsing & in structure; introduce ir-generation hook step in eval pipeline, transfer most of the default non-vbisualization view rule features to that layer 2025-02-01 20:50:31 -08:00
Ryan Fleury aac93b5952 move over all expansion view rules to new eval-system lookup hooks; eliminate most of old hooks 2025-02-01 17:37:24 -08:00
Ryan Fleury b1829af8c6 eliminate old per-frame cfg group cache 2025-01-30 16:52:15 -08:00
Ryan Fleury 5b82fc2339 eliminate member-filtering hack for cfg views; eliminate deref-space-ptr hack 2025-01-30 15:52:26 -08:00
Ryan Fleury 68966ba55f eval: more progress on 'sets', plug primary watch group into it; rd: more progress on watch ui based on new sets/lookups 2025-01-30 15:43:41 -08:00
Ryan Fleury 12784d9ae9 partial transition to new flexible watch table structure; more work on 'set' types; checkpoint before replacement of old view-rule-hacks with proper-eval-system support for sets/collections/etc. 2025-01-30 14:11:01 -08:00
Ryan Fleury 92e68701d0 eval: lookup rule map building; eval: use general 'set' type-kind to specify custom lookup rule; watch: new table <-> stable-point mappings 2025-01-30 10:57:29 -08:00
Ryan Fleury 394d35287a fix default lookup rule 2025-01-29 17:00:50 -08:00
Ryan Fleury baa19f3de4 begin introducing 'lookup' hook path in eval ir-tree generation, to collapse/universalize all 'access' operations, such that ., ->, and [] operations can be overridden via view rules, for cfg evaluations, and so on 2025-01-29 16:41:14 -08:00
Ryan Fleury 136a6a6d80 eval visualization: vidx <-> num mappings; helpers to move from logical nums -> rows, feed through windowed row production path 2025-01-29 10:38:04 -08:00
Ryan Fleury 84d55c8939 make some progress on watch window refinement for various row topologies 2025-01-28 18:31:34 -08:00
Ryan Fleury 2a1ab9b3be fix incorrect bytecode writing for deref-space-ptr 2025-01-28 10:42:41 -08:00
Ryan Fleury 4cc5f636fe cfg tree collection evaluation 2025-01-27 15:33:35 -08:00
Ryan Fleury b085acbc32 strip out collection type - instead we will implement collections via arrays of exprs which map to meta evals 2025-01-27 11:02:49 -08:00
Ryan Fleury c0f23c3807 further tweaks to support meta cfg eval 2025-01-27 09:22:34 -08:00
Ryan Fleury 730e8a4720 commit cfg changes to eval blob cache immediately 2025-01-24 15:55:08 -08:00
Ryan Fleury aa03955a45 first pass at meta-cfg-space writes, for cfg editing 2025-01-24 13:22:14 -08:00
Ryan Fleury 04e6eae49d progress on meta-evaluation of cfg trees & plugging into watch/eval system 2025-01-24 12:28:52 -08:00
Ryan Fleury 50000c0d6b adjust metagen to support correctly-escaped multiline string generations; sketch out setting schemas; eliminate old settings hack, move to using cfg tree & settings schema 2025-01-23 11:39:55 -08:00
Ryan Fleury 45f02b7a41 sketch out top-level schema for cfg tree 2025-01-22 15:42:21 -08:00
Ryan Fleury 9a54ae50c1 old config code elimination 2025-01-22 14:23:39 -08:00
Ryan Fleury 443fee10ec more entity code deletion 2025-01-22 09:57:40 -08:00
Ryan Fleury 7443f33069 sketch out schemas for configuration trees 2025-01-22 09:40:57 -08:00
Ryan Fleury 16a717d684 further elimination of entity-based code; more simplification/moving to cfg; begin sketching out expanded eval-viz block tree, such that each block can have its own table topology (will be useful to collapse/simplify/expand the capabilities of watch views) 2025-01-22 09:22:06 -08:00
Ryan Fleury 84fd1e9d3f big batch of work in moving from entity -> cfg; work on new universal lister system for cfg right-click menus, system processes, file system, autocompletion, procedures, etc. 2025-01-21 16:41:59 -08:00
Ryan Fleury 5cbef8f10d more entity -> cfg work 2025-01-17 15:16:23 -08:00
Ryan Fleury 4371d727fb line expressions in eval lang; begin getting off of entities for breakpoints/watch-pins/etc., move -> cfg 2025-01-17 13:34:18 -08:00
Ryan Fleury 069084c108 fix view parameter storage hook to not repeatedly duplicate key values 2025-01-17 10:35:04 -08:00
Ryan Fleury e6d0afb026 stateful query lister stack & immediate-mode autocompletion lister, via same codepath; begin hooking up views 2025-01-17 08:11:01 -08:00
Ryan Fleury 4ae032efff begin sketching out stuff for stateful listers being collapsed with immediate-mode autocomplete lister 2025-01-15 17:18:58 -08:00
Ryan Fleury 62894c098a further progress on unified lister interface 2025-01-15 15:25:49 -08:00
Ryan Fleury 6fe9a14778 eliminate stateful keybindings data structure - move to on-the-fly cfg tree usage 2025-01-14 17:30:07 -08:00
Ryan Fleury b98ebc8da4 lister applicability work - applies to commands, icons, descriptions, etc. 2025-01-14 15:16:55 -08:00
Ryan Fleury ace7db492b fix nil-cases of cfg insertion; fix incorrect root setting in cfg deep copy 2025-01-14 13:06:26 -08:00
Ryan Fleury 1b52100361 part 5: begin shifting autocompletion lister box to being unified lister/ctx-menu replacement 2025-01-13 14:18:34 -08:00
Ryan Fleury e9a10bbbd2 part 4: fix panel/tab ui key stability for new cfg-based panels/tabs; eliminate query views & begin pluggin in autocompletion lister to query input 2025-01-13 11:12:59 -08:00
Ryan Fleury 8bb3e6c191 rdi_from_pdb: fix line emitting rules in inline site symbol parsing; also fix non-application of code lengths to code offsets in inline lines 2025-01-13 10:07:59 -08:00