Files
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

19 lines
459 B
C++

#pragma once
#include <optional>
#include "lsp/protocol/common_types.h"
#include "lsp/protocol/completion.h"
#include "lsp/state/data/mips_instructions.h"
#include "lsp/state/workspace.h"
std::optional<json> get_completions_handler(Workspace& /*workspace*/, int /*id*/, json params) {
auto converted_params = params.get<LSPSpec::CompletionParams>();
// TODO - these need to be cached,
// TODO - implement response object
return json::array();
}