diff options
| author | Aleksey Kladov <aleksey.kladov@gmail.com> | 2020-11-10 18:20:01 +0100 |
|---|---|---|
| committer | Aleksey Kladov <aleksey.kladov@gmail.com> | 2020-11-10 18:48:46 +0100 |
| commit | 7d2eb000b078143e9fa6225d00ef52fc7c606fdf (patch) | |
| tree | 580d90bd250ffcd4b1c66570e5601761e58d1057 /docs | |
| parent | ada5a88f8fd0a79af7ad6e0411acc1cce9ef32d5 (diff) | |
| download | rust-7d2eb000b078143e9fa6225d00ef52fc7c606fdf.tar.gz rust-7d2eb000b078143e9fa6225d00ef52fc7c606fdf.zip | |
Switch to upstream protocol for resolving code action
Note that we have to maintain custom implementation on the client side: I don't see how to marry bulitin resolve support with groups and snippets.
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/dev/lsp-extensions.md | 26 |
1 files changed, 1 insertions, 25 deletions
diff --git a/docs/dev/lsp-extensions.md b/docs/dev/lsp-extensions.md index 780f5cb91fb..77d4e0ec996 100644 --- a/docs/dev/lsp-extensions.md +++ b/docs/dev/lsp-extensions.md @@ -1,5 +1,5 @@ <!--- -lsp_ext.rs hash: 286f8bbac885531a +lsp_ext.rs hash: 4f86fb54e4b2870e If you need to change the above hash to make the test pass, please check if you need to adjust this doc as well and ping this issue: @@ -109,30 +109,6 @@ Invoking code action at this position will yield two code actions for importing * Is a fixed two-level structure enough? * Should we devise a general way to encode custom interaction protocols for GUI refactorings? -## Lazy assists with `ResolveCodeAction` - -**Issue:** https://github.com/microsoft/language-server-protocol/issues/787 - -**Client Capability** `{ "resolveCodeAction": boolean }` - -If this capability is set, the assists will be computed lazily. Thus `CodeAction` returned from the server will only contain `id` but not `edit` or `command` fields. The only exclusion from the rule is the diagnostic edits. - -After the client got the id, it should then call `experimental/resolveCodeAction` command on the server and provide the following payload: - -```typescript -interface ResolveCodeActionParams { - id: string; - codeActionParams: lc.CodeActionParams; -} -``` - -As a result of the command call the client will get the respective workspace edit (`lc.WorkspaceEdit`). - -### Unresolved Questions - -* Apply smarter filtering for ids? -* Upon `resolveCodeAction` command only call the assits which should be resolved and not all of them? - ## Parent Module **Issue:** https://github.com/microsoft/language-server-protocol/issues/1002 |
