Commit Graph
391 Commits
Author SHA1 Message Date
Ryan Fleury 00fd597658 fix ptr/ref coverage in expansions 2025-06-03 13:55:37 -07:00
Ryan Fleury 94b969f203 copyright year 2025-06-02 14:13:57 -07:00
Ryan Fleury a111c21972 fix constant evaluation 2025-05-29 17:12:44 -07:00
Ryan Fleury 770fbe9459 constant evaluation 2025-05-29 17:04:01 -07:00
Ryan Fleury 3513d6cfb9 first pass at rdi format constant value support 2025-05-29 16:37:36 -07:00
Ryan Fleury 477e2b19da fix preservation of ir tree chain w/ multiple composing type views 2025-05-29 13:40:46 -07:00
Ryan Fleury 14cfd87f68 start sketching out basic unreal type views 2025-05-28 18:00:16 -07:00
Ryan Fleury 7350c2d576 fix trailing wildcard matches 2025-05-28 15:51:15 -07:00
Ryan Fleury f116d88b08 wildcard instance identifier resolution in type views; ?{arg1, arg2, arg3} in type view pattern -> use arg1, arg2, or arg3 in expression 2025-05-28 15:41:48 -07:00
Ryan Fleury 1d72de8c4a pattern parts as strings -> pattern part type, which can include wildcard inst names 2025-05-28 14:52:21 -07:00
Ryan Fleury de3782c974 do not advance wildcard scan position if wildcard match done 2025-05-28 14:42:20 -07:00
Ryan Fleury d0a2c0f22c auto hook list(expr) -> auto hook list(match), where match includes both an expression and a list of comma-delimited wildcard instances 2025-05-28 14:37:44 -07:00
Ryan Fleury 1609c8f948 clean up & fixup pass over type pattern matching, allow closed {}s, ()s, []s, <>s in wildcards 2025-05-28 14:08:53 -07:00
Ryan Fleury 70ccfd2d86 do greedy ? matching in type pattern matching by default 2025-05-28 13:07:18 -07:00
Ryan Fleury 914273d5af hack in quick fix for overambitious type pattern matching - will do a better pass shortly... 2025-05-22 12:29:56 -07:00
Ryan Fleury b94535b20b fix array-indexing in type evaluation mode 2025-05-19 22:22:47 -07:00
Ryan Fleury 5cb2a7bbde fix usage of [] operator on pointer values; fix incorrect interpretation of []s as assembly style derefs in chained cases 2025-05-17 13:05:07 -07:00
Ryan Fleury 5712c2ac07 fix ternary expr tree stringification 2025-05-17 12:56:49 -07:00
Ryan Fleury a67f326f78 eliminate redundant recomputation of ir extensions 2025-05-14 10:27:01 -07:00
Ryan Fleury 258b45a837 eliminate a bit of duplicate font cache lookups in code view build, + eliminate unnecessary per-box color lookups 2025-05-13 15:11:41 -07:00
Ryan Fleury e10f0489da record which irtree-and-type generations were produced via auto-hooks; skip those when doing typeofs 2025-05-13 14:19:30 -07:00
Ryan Fleury 89e93459d7 fix ufcs-style 'raw' lens application 2025-05-13 13:51:56 -07:00
Ryan Fleury 8b8c88f310 preserve whole chain of parent irtrees, do not simply apply only to autohook overrides; straighten out some event consumption weirdness in interaction between autocompletion floating view & query floating view; ensure we mark the cfg space as dirty when modifying strings 2025-05-13 13:44:14 -07:00
Ryan Fleury 97c58e3747 start sketching out pieces for flattened expansions in rows(...) 2025-05-13 11:55:06 -07:00
Ryan Fleury 34304280c9 fix old usage of table in mule_main; resolve to value in (sequence) 2025-05-13 10:55:39 -07:00
Ryan Fleury 11c1b5277e only -> rows; table -> columns 2025-05-13 10:44:06 -07:00
Ryan Fleury 73c91ae2bc eval: adjust array expansion, use parent key of pointer argument, rather than key of pointer argument, to scope count expression evaluation; fix up a few edge cases with $. and implicit $ member accesses; make omit much more powerful, by allowing list of arguments to control all expansion expressions, rather than assuming only member names 2025-05-13 10:19:47 -07:00
Ryan Fleury 4c1585444c be less ambitious about occupying basic type names in debugger; can conflict with common purposes in codebases, and really we should defer to debug info when possible 2025-05-12 17:33:57 -07:00
Ryan Fleury fe3cac7ac3 parameterize irtree generation path with identifier resolution rules; in most cases, we want the usual order: implicit accesses -> locals -> registers -> globals/tlocals/types/procedures -> macros; but if we are specifically evaluating a call expression tree, we want to prefer callables - in this case, macros should be prioritized. 2025-05-12 11:56:57 -07:00
Ryan Fleury 1b7a57914e get linux building again 2025-05-09 13:44:17 -07:00
Ryan Fleury f38da420e9 force hover eval in window on X axis only; store expr strings rather than expr trees in auto hook map 2025-05-09 12:51:02 -07:00
Ryan Fleury e491a76861 prevent mutating nil trees in irtree generation 2025-05-09 09:58:39 -07:00
Ryan Fleury b30e928501 fall back on creating a synthetic symbol name when a chain of leaf-identifier member accesses fail, and produce synthetic leaf-identifier expression to try to resolve it that way. 2025-05-08 14:00:54 -07:00
Ryan Fleury ef974b8dc0 begin sketching out the callee info helper, as an additional mechanism within the autocompletion system - find the call we're in, evaluate the callee, look up schema, show args/docs 2025-05-08 12:03:12 -07:00
Ryan Fleury a95780f2be provide path for explicit cast operator in eval parser; abort trying c-style casts in non-trivial cases (the parse becomes ambiguous, and it is better for us to prefer the usual non-casting path 2025-05-08 11:04:11 -07:00
Ryan Fleury ead193ee3b move enum value by-name lookup onto cached fastpath 2025-05-07 17:08:28 -07:00
Ryan Fleury 80f1a8b7ba enum value filtering / lookup cache 2025-05-07 15:46:59 -07:00
Ryan Fleury e7a4f407bb use 'sufficient suffixes' when generating enum expansions 2025-05-07 15:24:23 -07:00
Ryan Fleury 9c296cb9b2 fixes for arithmetic with bitfields; bitfield -> numeric value path in irtree generation; fix bad stomping / mutation when generating a synthetic UFCS tree 2025-05-07 14:19:39 -07:00
Ryan Fleury 1284c25b9e sketch out better usage of expansion info in text visualizer; notes; naming pass 2025-05-07 08:58:12 -07:00
Ryan Fleury 2919ecb135 more robustness to malformed expressions 2025-05-07 06:25:47 -07:00
Ryan Fleury 8d8e9b3cc5 be more judicious about edit buttons in fancy rows; allow escape-hatch identifier evaluation via grave accents 2025-05-06 15:42:36 -07:00
Ryan Fleury a6eda7db04 fix incorrect parsing / expr-building order of casts vs. other prefix unaries in new parser path 2025-05-06 13:02:48 -07:00
Ryan Fleury cf33470cb1 fix incorrect usage of type byte size for eval memory range sizes 2025-05-05 10:49:52 -07:00
Ryan Fleury c840071bf8 clean up visualizer default sizes, clean up rough edges of various combos of theme setting / config state 2025-05-05 09:54:29 -07:00
Ryan Fleury a96546c5f5 view rules / auto view rules -> views / type views 2025-05-02 09:50:41 -07:00
Ryan Fleury 2dbe8d42eb eliminate more old view settings code, simplify new, also clean up the targetless launch flow even more - if we only have one target, but it's inactive, and the user is trying to launch, then it doesn't hurt to just act as if that target was selected, then select it for them... 2025-05-01 17:04:29 -07:00
Ryan Fleury 36e77e9691 clean up flow of active-targetless launch path; instead of just erroring, prompt user with selection, select if none selected, etc. 2025-05-01 11:04:14 -07:00
Ryan Fleury 80268dd770 correctly evaluate array lens size arguments in the context of the parent expression 2025-05-01 10:16:41 -07:00
Ryan Fleury aa9a00f754 sketch out first pass of autocompletion list-expr/replace-range/filter based on cursor-offset -> expression-node path 2025-05-01 09:47:20 -07:00