From e2fa7d2dd968869fed4f70b727d8f91de34d03e2 Mon Sep 17 00:00:00 2001 From: Michael Davis Date: Wed, 15 Jun 2022 17:05:19 -0500 Subject: [PATCH] clean up `is_enabled/0` callbacks --- .../src/els_call_hierarchy_provider.erl | 4 -- apps/els_lsp/src/els_code_action_provider.erl | 4 -- apps/els_lsp/src/els_code_lens_provider.erl | 4 -- apps/els_lsp/src/els_definition_provider.erl | 4 -- apps/els_lsp/src/els_diagnostics_provider.erl | 4 -- .../src/els_document_highlight_provider.erl | 4 -- .../src/els_document_symbol_provider.erl | 4 -- .../src/els_execute_command_provider.erl | 4 -- .../src/els_folding_range_provider.erl | 4 -- apps/els_lsp/src/els_formatting_provider.erl | 26 ++---------- apps/els_lsp/src/els_general_provider.erl | 42 ++++++------------- apps/els_lsp/src/els_hover_provider.erl | 5 --- .../src/els_implementation_provider.erl | 4 -- apps/els_lsp/src/els_references_provider.erl | 4 -- apps/els_lsp/src/els_rename_provider.erl | 6 +-- .../src/els_semantic_token_provider.erl | 7 +--- .../src/els_signature_help_provider.erl | 5 --- .../src/els_workspace_symbol_provider.erl | 4 -- 18 files changed, 19 insertions(+), 120 deletions(-) diff --git a/apps/els_lsp/src/els_call_hierarchy_provider.erl b/apps/els_lsp/src/els_call_hierarchy_provider.erl index d7171994a..a48cdcedd 100644 --- a/apps/els_lsp/src/els_call_hierarchy_provider.erl +++ b/apps/els_lsp/src/els_call_hierarchy_provider.erl @@ -3,7 +3,6 @@ -behaviour(els_provider). -export([ - is_enabled/0, handle_request/1 ]). @@ -16,9 +15,6 @@ %%============================================================================== %% els_provider functions %%============================================================================== --spec is_enabled() -> boolean(). -is_enabled() -> true. - -spec handle_request(any()) -> {response, any()}. handle_request({prepare, Params}) -> {Uri, Line, Char} = diff --git a/apps/els_lsp/src/els_code_action_provider.erl b/apps/els_lsp/src/els_code_action_provider.erl index a40daa761..5830466a6 100644 --- a/apps/els_lsp/src/els_code_action_provider.erl +++ b/apps/els_lsp/src/els_code_action_provider.erl @@ -3,7 +3,6 @@ -behaviour(els_provider). -export([ - is_enabled/0, handle_request/1 ]). @@ -12,9 +11,6 @@ %%============================================================================== %% els_provider functions %%============================================================================== --spec is_enabled() -> boolean(). -is_enabled() -> true. - -spec handle_request(any()) -> {response, any()}. handle_request({document_codeaction, Params}) -> #{ diff --git a/apps/els_lsp/src/els_code_lens_provider.erl b/apps/els_lsp/src/els_code_lens_provider.erl index cc6301b8b..c12d06ab6 100644 --- a/apps/els_lsp/src/els_code_lens_provider.erl +++ b/apps/els_lsp/src/els_code_lens_provider.erl @@ -2,7 +2,6 @@ -behaviour(els_provider). -export([ - is_enabled/0, options/0, handle_request/1 ]). @@ -13,9 +12,6 @@ %%============================================================================== %% els_provider functions %%============================================================================== --spec is_enabled() -> boolean(). -is_enabled() -> true. - -spec options() -> map(). options() -> #{resolveProvider => false}. diff --git a/apps/els_lsp/src/els_definition_provider.erl b/apps/els_lsp/src/els_definition_provider.erl index 28b737bd5..f28dba876 100644 --- a/apps/els_lsp/src/els_definition_provider.erl +++ b/apps/els_lsp/src/els_definition_provider.erl @@ -3,7 +3,6 @@ -behaviour(els_provider). -export([ - is_enabled/0, handle_request/1 ]). @@ -12,9 +11,6 @@ %%============================================================================== %% els_provider functions %%============================================================================== --spec is_enabled() -> boolean(). -is_enabled() -> true. - -spec handle_request(any()) -> {response, any()}. handle_request({definition, Params}) -> #{ diff --git a/apps/els_lsp/src/els_diagnostics_provider.erl b/apps/els_lsp/src/els_diagnostics_provider.erl index 69cf75884..e6db8a635 100644 --- a/apps/els_lsp/src/els_diagnostics_provider.erl +++ b/apps/els_lsp/src/els_diagnostics_provider.erl @@ -3,7 +3,6 @@ -behaviour(els_provider). -export([ - is_enabled/0, options/0, handle_request/1 ]). @@ -22,9 +21,6 @@ %%============================================================================== %% els_provider functions %%============================================================================== --spec is_enabled() -> boolean(). -is_enabled() -> true. - -spec options() -> map(). options() -> #{}. diff --git a/apps/els_lsp/src/els_document_highlight_provider.erl b/apps/els_lsp/src/els_document_highlight_provider.erl index 86b5014e6..81b49c84e 100644 --- a/apps/els_lsp/src/els_document_highlight_provider.erl +++ b/apps/els_lsp/src/els_document_highlight_provider.erl @@ -3,7 +3,6 @@ -behaviour(els_provider). -export([ - is_enabled/0, handle_request/1 ]). @@ -15,9 +14,6 @@ %%============================================================================== %% els_provider functions %%============================================================================== --spec is_enabled() -> boolean(). -is_enabled() -> true. - -spec handle_request(any()) -> {response, any()}. handle_request({document_highlight, Params}) -> #{ diff --git a/apps/els_lsp/src/els_document_symbol_provider.erl b/apps/els_lsp/src/els_document_symbol_provider.erl index 7a6e2db21..db4160834 100644 --- a/apps/els_lsp/src/els_document_symbol_provider.erl +++ b/apps/els_lsp/src/els_document_symbol_provider.erl @@ -3,7 +3,6 @@ -behaviour(els_provider). -export([ - is_enabled/0, handle_request/1 ]). @@ -12,9 +11,6 @@ %%============================================================================== %% els_provider functions %%============================================================================== --spec is_enabled() -> boolean(). -is_enabled() -> true. - -spec handle_request(any()) -> {response, any()}. handle_request({document_symbol, Params}) -> #{<<"textDocument">> := #{<<"uri">> := Uri}} = Params, diff --git a/apps/els_lsp/src/els_execute_command_provider.erl b/apps/els_lsp/src/els_execute_command_provider.erl index 9cc587242..31f651c2e 100644 --- a/apps/els_lsp/src/els_execute_command_provider.erl +++ b/apps/els_lsp/src/els_execute_command_provider.erl @@ -3,7 +3,6 @@ -behaviour(els_provider). -export([ - is_enabled/0, options/0, handle_request/1 ]). @@ -17,9 +16,6 @@ %%============================================================================== %% els_provider functions %%============================================================================== --spec is_enabled() -> boolean(). -is_enabled() -> true. - -spec options() -> map(). options() -> Commands = [ diff --git a/apps/els_lsp/src/els_folding_range_provider.erl b/apps/els_lsp/src/els_folding_range_provider.erl index c441bebab..0507a830c 100644 --- a/apps/els_lsp/src/els_folding_range_provider.erl +++ b/apps/els_lsp/src/els_folding_range_provider.erl @@ -5,7 +5,6 @@ -include("els_lsp.hrl"). -export([ - is_enabled/0, handle_request/1 ]). @@ -17,9 +16,6 @@ %%============================================================================== %% els_provider functions %%============================================================================== --spec is_enabled() -> boolean(). -is_enabled() -> true. - -spec handle_request(tuple()) -> {response, folding_range_result()}. handle_request({document_foldingrange, Params}) -> #{<<"textDocument">> := #{<<"uri">> := Uri}} = Params, diff --git a/apps/els_lsp/src/els_formatting_provider.erl b/apps/els_lsp/src/els_formatting_provider.erl index a52e4958d..2fa5bd105 100644 --- a/apps/els_lsp/src/els_formatting_provider.erl +++ b/apps/els_lsp/src/els_formatting_provider.erl @@ -3,11 +3,7 @@ -behaviour(els_provider). -export([ - handle_request/1, - is_enabled/0, - is_enabled_document/0, - is_enabled_range/0, - is_enabled_on_type/0 + handle_request/1 ]). %%============================================================================== @@ -23,23 +19,6 @@ %%============================================================================== %% els_provider functions %%============================================================================== -%% Keep the behaviour happy --spec is_enabled() -> boolean(). -is_enabled() -> is_enabled_document(). - --spec is_enabled_document() -> boolean(). -is_enabled_document() -> true. - --spec is_enabled_range() -> boolean(). -is_enabled_range() -> - false. - -%% NOTE: because erlang_ls does not send incremental document changes -%% via `textDocument/didChange`, this kind of formatting does not -%% make sense. --spec is_enabled_on_type() -> document_ontypeformatting_options(). -is_enabled_on_type() -> false. - -spec handle_request(any()) -> {response, any()}. handle_request({document_formatting, Params}) -> #{ @@ -66,6 +45,9 @@ handle_request({document_rangeformatting, Params}) -> {ok, Document} = els_utils:lookup_document(Uri), {ok, TextEdit} = rangeformat_document(Uri, Document, Range, Options), {response, TextEdit}; +%% NOTE: because erlang_ls does not send incremental document changes +%% via `textDocument/didChange`, this kind of formatting does not +%% make sense. handle_request({document_ontypeformatting, Params}) -> #{ <<"position">> := #{ diff --git a/apps/els_lsp/src/els_general_provider.erl b/apps/els_lsp/src/els_general_provider.erl index 88fd9266d..f97932813 100644 --- a/apps/els_lsp/src/els_general_provider.erl +++ b/apps/els_lsp/src/els_general_provider.erl @@ -2,7 +2,6 @@ -behaviour(els_provider). -export([ - is_enabled/0, default_providers/0, enabled_providers/0, handle_request/1 @@ -51,9 +50,6 @@ %%============================================================================== %% els_provider functions %%============================================================================== --spec is_enabled() -> boolean(). -is_enabled() -> true. - -spec handle_request( initialize_request() | initialized_request() @@ -184,34 +180,22 @@ server_capabilities() -> triggerCharacters => els_signature_help_provider:trigger_characters() }, - definitionProvider => - els_definition_provider:is_enabled(), - referencesProvider => - els_references_provider:is_enabled(), - documentHighlightProvider => - els_document_highlight_provider:is_enabled(), - documentSymbolProvider => - els_document_symbol_provider:is_enabled(), - workspaceSymbolProvider => - els_workspace_symbol_provider:is_enabled(), - codeActionProvider => - els_code_action_provider:is_enabled(), - documentFormattingProvider => - els_formatting_provider:is_enabled_document(), - documentRangeFormattingProvider => - els_formatting_provider:is_enabled_range(), - foldingRangeProvider => - els_folding_range_provider:is_enabled(), - implementationProvider => - els_implementation_provider:is_enabled(), + definitionProvider => true, + referencesProvider => true, + documentHighlightProvider => true, + documentSymbolProvider => true, + workspaceSymbolProvider => true, + codeActionProvider => true, + documentFormattingProvider => true, + documentRangeFormattingProvider => false, + foldingRangeProvider => true, + implementationProvider => true, executeCommandProvider => els_execute_command_provider:options(), codeLensProvider => els_code_lens_provider:options(), - renameProvider => - els_rename_provider:is_enabled(), - callHierarchyProvider => - els_call_hierarchy_provider:is_enabled(), + renameProvider => true, + callHierarchyProvider => true, semanticTokensProvider => #{ legend => @@ -220,7 +204,7 @@ server_capabilities() -> tokenModifiers => wrangler_handler:semantic_token_modifiers() }, range => false, - full => els_semantic_token_provider:is_enabled() + full => wrangler_handler:is_enabled() } }, EnabledProviders = enabled_providers(), diff --git a/apps/els_lsp/src/els_hover_provider.erl b/apps/els_lsp/src/els_hover_provider.erl index e49aa0803..7426d0d43 100644 --- a/apps/els_lsp/src/els_hover_provider.erl +++ b/apps/els_lsp/src/els_hover_provider.erl @@ -6,7 +6,6 @@ -behaviour(els_provider). -export([ - is_enabled/0, handle_request/1 ]). @@ -20,10 +19,6 @@ %%============================================================================== %% els_provider functions %%============================================================================== --spec is_enabled() -> boolean(). -is_enabled() -> - true. - -spec handle_request(any()) -> {async, uri(), pid()}. handle_request({hover, Params}) -> #{ diff --git a/apps/els_lsp/src/els_implementation_provider.erl b/apps/els_lsp/src/els_implementation_provider.erl index 34cffaea2..daba5776d 100644 --- a/apps/els_lsp/src/els_implementation_provider.erl +++ b/apps/els_lsp/src/els_implementation_provider.erl @@ -5,16 +5,12 @@ -include("els_lsp.hrl"). -export([ - is_enabled/0, handle_request/1 ]). %%============================================================================== %% els_provider functions %%============================================================================== --spec is_enabled() -> boolean(). -is_enabled() -> true. - -spec handle_request(tuple()) -> {response, [location()]}. handle_request({implementation, Params}) -> #{ diff --git a/apps/els_lsp/src/els_references_provider.erl b/apps/els_lsp/src/els_references_provider.erl index ffdbced47..e7c164a8f 100644 --- a/apps/els_lsp/src/els_references_provider.erl +++ b/apps/els_lsp/src/els_references_provider.erl @@ -3,7 +3,6 @@ -behaviour(els_provider). -export([ - is_enabled/0, handle_request/1 ]). @@ -26,9 +25,6 @@ %%============================================================================== %% els_provider functions %%============================================================================== --spec is_enabled() -> boolean(). -is_enabled() -> true. - -spec handle_request(any()) -> {response, [location()] | null}. handle_request({references, Params}) -> #{ diff --git a/apps/els_lsp/src/els_rename_provider.erl b/apps/els_lsp/src/els_rename_provider.erl index 1a6fa7a12..52477b405 100644 --- a/apps/els_lsp/src/els_rename_provider.erl +++ b/apps/els_lsp/src/els_rename_provider.erl @@ -3,8 +3,7 @@ -behaviour(els_provider). -export([ - handle_request/1, - is_enabled/0 + handle_request/1 ]). %%============================================================================== @@ -24,9 +23,6 @@ %%============================================================================== %% els_provider functions %%============================================================================== --spec is_enabled() -> boolean(). -is_enabled() -> true. - -spec handle_request(any()) -> {response, any()}. handle_request({rename, Params}) -> #{ diff --git a/apps/els_lsp/src/els_semantic_token_provider.erl b/apps/els_lsp/src/els_semantic_token_provider.erl index 398b20f08..571c1876d 100644 --- a/apps/els_lsp/src/els_semantic_token_provider.erl +++ b/apps/els_lsp/src/els_semantic_token_provider.erl @@ -3,17 +3,12 @@ -behaviour(els_provider). -include("els_lsp.hrl"). --export([handle_request/1, is_enabled/0]). +-export([handle_request/1]). %%============================================================================== %% els_provider functions %%============================================================================== --spec is_enabled() -> boolean(). -is_enabled() -> - %% Currently this is used by Wrangler only. - wrangler_handler:is_enabled(). - -spec handle_request(any()) -> {response, any()}. handle_request({semantic_tokens, Params}) -> #{<<"textDocument">> := #{<<"uri">> := Uri}} = Params, diff --git a/apps/els_lsp/src/els_signature_help_provider.erl b/apps/els_lsp/src/els_signature_help_provider.erl index 86391a21f..30c8f5ce3 100644 --- a/apps/els_lsp/src/els_signature_help_provider.erl +++ b/apps/els_lsp/src/els_signature_help_provider.erl @@ -6,7 +6,6 @@ -include_lib("kernel/include/logger.hrl"). -export([ - is_enabled/0, handle_request/1, trigger_characters/0 ]). @@ -22,10 +21,6 @@ trigger_characters() -> %%============================================================================== %% els_provider functions %%============================================================================== --spec is_enabled() -> boolean(). -is_enabled() -> - false. - -spec handle_request(els_provider:provider_request()) -> {response, signature_help() | null}. handle_request({signature_help, Params}) -> diff --git a/apps/els_lsp/src/els_workspace_symbol_provider.erl b/apps/els_lsp/src/els_workspace_symbol_provider.erl index c2e57f304..034984614 100644 --- a/apps/els_lsp/src/els_workspace_symbol_provider.erl +++ b/apps/els_lsp/src/els_workspace_symbol_provider.erl @@ -3,7 +3,6 @@ -behaviour(els_provider). -export([ - is_enabled/0, handle_request/1 ]). @@ -14,9 +13,6 @@ %%============================================================================== %% els_provider functions %%============================================================================== --spec is_enabled() -> boolean(). -is_enabled() -> true. - -spec handle_request(any()) -> {response, any()}. handle_request({symbol, Params}) -> %% TODO: Version 3.15 of the protocol introduces a much nicer way of