jak-project/decompiler/IR2
water111 0e31a9c407
[decompiler] Handle find-parent-method (#3018)
This change adds a few new features:
- Decompiler automatically knows the type of `find-parent-method` use in
jak 1 and jak2 when used in a method or virtual state handler.
- Decompiler inserts a call to `call-parent-method` or
`find-parent-state`
- Removed most casts related to these functions

There are still a few minor issues around this:
- There are still some casts needed when using `post` methods, as `post`
is just a `function`, and needs a cast to `(function none)` or similar.
It didn't seem easy to change the type of `post`, so I'm not going to
worry about it for this PR. It only shows up in like 3 places in jak 2.
(and 0 in jak 1)
- If "call the handler if it's not #f" logic should probably be another
macro.

Fixes #805
2023-09-30 11:06:09 -04:00
..
AtomicOp.cpp W/nav debugging (#2077) 2023-01-01 12:11:18 -05:00
AtomicOp.h [decomp2] game-save (#1988) 2022-10-29 16:08:04 -04:00
AtomicOpForm.cpp start blit-displays decomp & renderer + improve decompilation of some DMA macros (#2616) 2023-05-04 18:34:09 -04:00
AtomicOpTypeAnalysis.cpp [decompiler] Handle find-parent-method (#3018) 2023-09-30 11:06:09 -04:00
bitfields.cpp small cleanup to progress-draw.gc and set-font-color (#2653) 2023-05-15 20:45:28 +01:00
bitfields.h [decomp] sky-tng (#1972) 2022-10-15 18:21:17 -04:00
Env.cpp decompiler: obj -> this, set-time! and time-elapsed? macros (#3026) 2023-09-26 15:17:00 +01:00
Env.h [decompiler] decomp jak2 static-attack-info (#2992) 2023-09-15 19:32:57 +01:00
ExpressionHelpers.cpp logs: replace every fmt::print with a lg call instead (#1368) 2022-10-01 11:58:36 -04:00
ExpressionHelpers.h [decomp] handle handle->process inside an and (#851) 2021-09-21 00:12:37 -04:00
Form.cpp [opengoal] make none a child of object (#3001) 2023-09-22 10:54:49 +01:00
Form.h decompiler: obj -> this, set-time! and time-elapsed? macros (#3026) 2023-09-26 15:17:00 +01:00
FormExpressionAnalysis.cpp [decompiler] Handle find-parent-method (#3018) 2023-09-30 11:06:09 -04:00
FormStack.cpp decomp/lsp: Differentiate warnings from likely/definite errors (#1725) 2022-08-06 11:52:36 -04:00
FormStack.h lint: add include sorting config to clang-format (#1517) 2022-06-22 23:37:46 -04:00
GenericElementMatcher.cpp [decompiler] Handle find-parent-method (#3018) 2023-09-30 11:06:09 -04:00
GenericElementMatcher.h [decompiler] decomp jak2 static-attack-info (#2992) 2023-09-15 19:32:57 +01:00
IR2_common.h [jak2] fill in a lot of flags for decomp + mouse macros (#2927) 2023-08-22 16:39:52 +01:00
LabelDB.cpp [jak2] decomp neon-baron-part, fix merc fog disable (#2443) 2023-03-31 17:47:38 -04:00
LabelDB.h [jak2] decomp neon-baron-part, fix merc fog disable (#2443) 2023-03-31 17:47:38 -04:00
OpenGoalMapping.cpp [jak2] GOAL side texture animation stuff (#2766) 2023-06-24 10:11:47 -04:00
OpenGoalMapping.h lint: add include sorting config to clang-format (#1517) 2022-06-22 23:37:46 -04:00