language_server-protocol 3.16.0.1 → 3.17.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/language_server/protocol/constant/code_action_kind.rb +25 -24
- data/lib/language_server/protocol/constant/code_action_trigger_kind.rb +24 -0
- data/lib/language_server/protocol/constant/completion_item_tag.rb +4 -2
- data/lib/language_server/protocol/constant/completion_trigger_kind.rb +2 -3
- data/lib/language_server/protocol/constant/diagnostic_severity.rb +3 -0
- data/lib/language_server/protocol/constant/diagnostic_tag.rb +4 -2
- data/lib/language_server/protocol/constant/error_codes.rb +19 -14
- data/lib/language_server/protocol/constant/failure_handling_kind.rb +9 -10
- data/lib/language_server/protocol/constant/file_change_type.rb +1 -1
- data/lib/language_server/protocol/constant/file_operation_pattern_kind.rb +4 -2
- data/lib/language_server/protocol/constant/folding_range_kind.rb +23 -0
- data/lib/language_server/protocol/constant/inlay_hint_kind.rb +21 -0
- data/lib/language_server/protocol/constant/insert_text_format.rb +2 -0
- data/lib/language_server/protocol/constant/insert_text_mode.rb +2 -0
- data/lib/language_server/protocol/constant/lsp_error_codes.rb +55 -0
- data/lib/language_server/protocol/constant/markup_kind.rb +2 -2
- data/lib/language_server/protocol/constant/message_type.rb +3 -0
- data/lib/language_server/protocol/constant/moniker_kind.rb +26 -0
- data/lib/language_server/protocol/constant/notebook_cell_kind.rb +21 -0
- data/lib/language_server/protocol/constant/position_encoding_kind.rb +32 -0
- data/lib/language_server/protocol/constant/resource_operation_kind.rb +3 -6
- data/lib/language_server/protocol/constant/semantic_token_modifiers.rb +25 -0
- data/lib/language_server/protocol/constant/semantic_token_types.rb +45 -0
- data/lib/language_server/protocol/constant/signature_help_trigger_kind.rb +3 -2
- data/lib/language_server/protocol/constant/symbol_tag.rb +2 -0
- data/lib/language_server/protocol/constant/text_document_save_reason.rb +2 -2
- data/lib/language_server/protocol/constant/text_document_sync_kind.rb +3 -3
- data/lib/language_server/protocol/constant/token_format.rb +1 -1
- data/lib/language_server/protocol/constant/trace_values.rb +20 -0
- data/lib/language_server/protocol/constant/uniqueness_level.rb +33 -0
- data/lib/language_server/protocol/constant.rb +22 -4
- data/lib/language_server/protocol/interface/annotated_text_edit.rb +12 -10
- data/lib/language_server/protocol/interface/apply_workspace_edit_params.rb +4 -1
- data/lib/language_server/protocol/interface/{apply_workspace_edit_response.rb → apply_workspace_edit_result.rb} +11 -7
- data/lib/language_server/protocol/interface/base_symbol_information.rb +68 -0
- data/lib/language_server/protocol/interface/call_hierarchy_client_capabilities.rb +7 -5
- data/lib/language_server/protocol/interface/call_hierarchy_incoming_call.rb +5 -0
- data/lib/language_server/protocol/interface/call_hierarchy_incoming_calls_params.rb +16 -11
- data/lib/language_server/protocol/interface/call_hierarchy_item.rb +14 -10
- data/lib/language_server/protocol/interface/call_hierarchy_options.rb +6 -1
- data/lib/language_server/protocol/interface/call_hierarchy_outgoing_call.rb +8 -2
- data/lib/language_server/protocol/interface/call_hierarchy_outgoing_calls_params.rb +16 -11
- data/lib/language_server/protocol/interface/call_hierarchy_prepare_params.rb +6 -1
- data/lib/language_server/protocol/interface/call_hierarchy_registration_options.rb +10 -5
- data/lib/language_server/protocol/interface/cancel_params.rb +1 -1
- data/lib/language_server/protocol/interface/change_annotation.rb +4 -2
- data/lib/language_server/protocol/interface/client_capabilities.rb +22 -6
- data/lib/language_server/protocol/interface/code_action.rb +28 -26
- data/lib/language_server/protocol/interface/code_action_client_capabilities.rb +25 -9
- data/lib/language_server/protocol/interface/code_action_context.rb +20 -10
- data/lib/language_server/protocol/interface/code_action_options.rb +16 -11
- data/lib/language_server/protocol/interface/code_action_params.rb +21 -21
- data/lib/language_server/protocol/interface/code_action_registration_options.rb +19 -14
- data/lib/language_server/protocol/interface/code_description.rb +3 -1
- data/lib/language_server/protocol/interface/code_lens.rb +8 -9
- data/lib/language_server/protocol/interface/code_lens_client_capabilities.rb +4 -1
- data/lib/language_server/protocol/interface/code_lens_options.rb +11 -8
- data/lib/language_server/protocol/interface/code_lens_params.rb +17 -14
- data/lib/language_server/protocol/interface/code_lens_registration_options.rb +14 -11
- data/lib/language_server/protocol/interface/code_lens_workspace_client_capabilities.rb +4 -1
- data/lib/language_server/protocol/interface/color.rb +4 -4
- data/lib/language_server/protocol/interface/color_information.rb +3 -0
- data/lib/language_server/protocol/interface/color_presentation.rb +8 -9
- data/lib/language_server/protocol/interface/color_presentation_params.rb +24 -21
- data/lib/language_server/protocol/interface/command.rb +7 -1
- data/lib/language_server/protocol/interface/completion_client_capabilities.rb +33 -5
- data/lib/language_server/protocol/interface/completion_context.rb +4 -6
- data/lib/language_server/protocol/interface/completion_item.rb +92 -49
- data/lib/language_server/protocol/interface/completion_item_label_details.rb +49 -0
- data/lib/language_server/protocol/interface/completion_list.rb +28 -5
- data/lib/language_server/protocol/interface/completion_options.rb +36 -25
- data/lib/language_server/protocol/interface/completion_params.rb +18 -16
- data/lib/language_server/protocol/interface/completion_registration_options.rb +42 -28
- data/lib/language_server/protocol/interface/configuration_item.rb +2 -2
- data/lib/language_server/protocol/interface/configuration_params.rb +3 -0
- data/lib/language_server/protocol/interface/create_file.rb +7 -5
- data/lib/language_server/protocol/interface/create_file_options.rb +2 -2
- data/lib/language_server/protocol/interface/create_files_params.rb +4 -2
- data/lib/language_server/protocol/interface/declaration_client_capabilities.rb +8 -5
- data/lib/language_server/protocol/interface/declaration_options.rb +1 -1
- data/lib/language_server/protocol/interface/declaration_params.rb +4 -4
- data/lib/language_server/protocol/interface/declaration_registration_options.rb +5 -5
- data/lib/language_server/protocol/interface/definition_client_capabilities.rb +7 -2
- data/lib/language_server/protocol/interface/definition_options.rb +4 -1
- data/lib/language_server/protocol/interface/definition_params.rb +7 -4
- data/lib/language_server/protocol/interface/definition_registration_options.rb +7 -4
- data/lib/language_server/protocol/interface/delete_file.rb +6 -4
- data/lib/language_server/protocol/interface/delete_file_options.rb +2 -2
- data/lib/language_server/protocol/interface/delete_files_params.rb +4 -2
- data/lib/language_server/protocol/interface/diagnostic.rb +25 -14
- data/lib/language_server/protocol/interface/diagnostic_client_capabilities.rb +49 -0
- data/lib/language_server/protocol/interface/diagnostic_options.rb +66 -0
- data/lib/language_server/protocol/interface/diagnostic_registration_options.rb +86 -0
- data/lib/language_server/protocol/interface/diagnostic_related_information.rb +3 -3
- data/lib/language_server/protocol/interface/diagnostic_server_cancellation_data.rb +35 -0
- data/lib/language_server/protocol/interface/diagnostic_workspace_client_capabilities.rb +44 -0
- data/lib/language_server/protocol/interface/did_change_configuration_client_capabilities.rb +1 -1
- data/lib/language_server/protocol/interface/did_change_configuration_params.rb +4 -1
- data/lib/language_server/protocol/interface/did_change_configuration_registration_options.rb +30 -0
- data/lib/language_server/protocol/interface/did_change_notebook_document_params.rb +62 -0
- data/lib/language_server/protocol/interface/did_change_text_document_params.rb +12 -11
- data/lib/language_server/protocol/interface/did_change_watched_files_client_capabilities.rb +17 -5
- data/lib/language_server/protocol/interface/did_change_watched_files_params.rb +3 -0
- data/lib/language_server/protocol/interface/did_change_watched_files_registration_options.rb +1 -1
- data/lib/language_server/protocol/interface/did_change_workspace_folders_params.rb +3 -0
- data/lib/language_server/protocol/interface/did_close_notebook_document_params.rb +48 -0
- data/lib/language_server/protocol/interface/did_close_text_document_params.rb +3 -0
- data/lib/language_server/protocol/interface/did_open_notebook_document_params.rb +48 -0
- data/lib/language_server/protocol/interface/did_open_text_document_params.rb +3 -0
- data/lib/language_server/protocol/interface/did_save_notebook_document_params.rb +38 -0
- data/lib/language_server/protocol/interface/did_save_text_document_params.rb +4 -1
- data/lib/language_server/protocol/interface/document_color_client_capabilities.rb +4 -2
- data/lib/language_server/protocol/interface/document_color_options.rb +1 -1
- data/lib/language_server/protocol/interface/document_color_params.rb +17 -14
- data/lib/language_server/protocol/interface/document_color_registration_options.rb +11 -11
- data/lib/language_server/protocol/interface/document_diagnostic_params.rb +75 -0
- data/lib/language_server/protocol/interface/document_diagnostic_report.rb +77 -0
- data/lib/language_server/protocol/interface/document_diagnostic_report_partial_result.rb +35 -0
- data/lib/language_server/protocol/interface/document_filter.rb +25 -19
- data/lib/language_server/protocol/interface/document_formatting_client_capabilities.rb +4 -1
- data/lib/language_server/protocol/interface/document_formatting_options.rb +4 -1
- data/lib/language_server/protocol/interface/document_formatting_params.rb +13 -10
- data/lib/language_server/protocol/interface/document_formatting_registration_options.rb +7 -4
- data/lib/language_server/protocol/interface/document_highlight.rb +2 -2
- data/lib/language_server/protocol/interface/document_highlight_client_capabilities.rb +4 -1
- data/lib/language_server/protocol/interface/document_highlight_options.rb +4 -1
- data/lib/language_server/protocol/interface/document_highlight_params.rb +7 -4
- data/lib/language_server/protocol/interface/document_highlight_registration_options.rb +7 -4
- data/lib/language_server/protocol/interface/document_link.rb +10 -9
- data/lib/language_server/protocol/interface/document_link_client_capabilities.rb +7 -2
- data/lib/language_server/protocol/interface/document_link_options.rb +11 -8
- data/lib/language_server/protocol/interface/document_link_params.rb +17 -14
- data/lib/language_server/protocol/interface/document_link_registration_options.rb +14 -11
- data/lib/language_server/protocol/interface/document_on_type_formatting_client_capabilities.rb +4 -1
- data/lib/language_server/protocol/interface/document_on_type_formatting_options.rb +5 -2
- data/lib/language_server/protocol/interface/document_on_type_formatting_params.rb +12 -4
- data/lib/language_server/protocol/interface/document_on_type_formatting_registration_options.rb +8 -5
- data/lib/language_server/protocol/interface/document_range_formatting_client_capabilities.rb +5 -2
- data/lib/language_server/protocol/interface/document_range_formatting_options.rb +4 -1
- data/lib/language_server/protocol/interface/document_range_formatting_params.rb +13 -10
- data/lib/language_server/protocol/interface/document_range_formatting_registration_options.rb +7 -4
- data/lib/language_server/protocol/interface/document_symbol.rb +18 -16
- data/lib/language_server/protocol/interface/document_symbol_client_capabilities.rb +12 -5
- data/lib/language_server/protocol/interface/document_symbol_options.rb +13 -8
- data/lib/language_server/protocol/interface/document_symbol_params.rb +17 -14
- data/lib/language_server/protocol/interface/document_symbol_registration_options.rb +16 -11
- data/lib/language_server/protocol/interface/execute_command_client_capabilities.rb +4 -1
- data/lib/language_server/protocol/interface/execute_command_options.rb +10 -7
- data/lib/language_server/protocol/interface/execute_command_params.rb +14 -11
- data/lib/language_server/protocol/interface/execute_command_registration_options.rb +8 -8
- data/lib/language_server/protocol/interface/execution_summary.rb +45 -0
- data/lib/language_server/protocol/interface/file_create.rb +2 -0
- data/lib/language_server/protocol/interface/file_delete.rb +2 -0
- data/lib/language_server/protocol/interface/file_event.rb +3 -3
- data/lib/language_server/protocol/interface/file_operation_client_capabilities.rb +95 -0
- data/lib/language_server/protocol/interface/file_operation_filter.rb +5 -3
- data/lib/language_server/protocol/interface/file_operation_options.rb +83 -0
- data/lib/language_server/protocol/interface/file_operation_pattern.rb +8 -10
- data/lib/language_server/protocol/interface/file_operation_pattern_options.rb +3 -1
- data/lib/language_server/protocol/interface/file_operation_registration_options.rb +2 -0
- data/lib/language_server/protocol/interface/file_rename.rb +2 -0
- data/lib/language_server/protocol/interface/file_system_watcher.rb +4 -14
- data/lib/language_server/protocol/interface/folding_range.rb +30 -23
- data/lib/language_server/protocol/interface/folding_range_client_capabilities.rb +26 -4
- data/lib/language_server/protocol/interface/folding_range_options.rb +1 -1
- data/lib/language_server/protocol/interface/folding_range_params.rb +17 -14
- data/lib/language_server/protocol/interface/folding_range_registration_options.rb +5 -5
- data/lib/language_server/protocol/interface/formatting_options.rb +10 -4
- data/lib/language_server/protocol/interface/full_document_diagnostic_report.rb +58 -0
- data/lib/language_server/protocol/interface/general_client_capabilities.rb +91 -0
- data/lib/language_server/protocol/interface/glob_pattern.rb +48 -0
- data/lib/language_server/protocol/interface/hover.rb +3 -3
- data/lib/language_server/protocol/interface/hover_client_capabilities.rb +4 -5
- data/lib/language_server/protocol/interface/hover_options.rb +4 -1
- data/lib/language_server/protocol/interface/hover_params.rb +4 -1
- data/lib/language_server/protocol/interface/hover_registration_options.rb +7 -4
- data/lib/language_server/protocol/interface/implementation_client_capabilities.rb +10 -5
- data/lib/language_server/protocol/interface/implementation_options.rb +1 -1
- data/lib/language_server/protocol/interface/implementation_params.rb +4 -4
- data/lib/language_server/protocol/interface/implementation_registration_options.rb +5 -5
- data/lib/language_server/protocol/interface/initialize_error.rb +2 -1
- data/lib/language_server/protocol/interface/initialize_params.rb +41 -29
- data/lib/language_server/protocol/interface/initialize_result.rb +6 -1
- data/lib/language_server/protocol/interface/inlay_hint.rb +118 -0
- data/lib/language_server/protocol/interface/inlay_hint_client_capabilities.rb +48 -0
- data/lib/language_server/protocol/interface/inlay_hint_label_part.rb +81 -0
- data/lib/language_server/protocol/interface/inlay_hint_options.rb +45 -0
- data/lib/language_server/protocol/interface/inlay_hint_params.rb +56 -0
- data/lib/language_server/protocol/interface/inlay_hint_registration_options.rb +65 -0
- data/lib/language_server/protocol/interface/inlay_hint_workspace_client_capabilities.rb +44 -0
- data/lib/language_server/protocol/interface/inline_value.rb +78 -0
- data/lib/language_server/protocol/interface/inline_value_client_capabilities.rb +38 -0
- data/lib/language_server/protocol/interface/inline_value_context.rb +46 -0
- data/lib/language_server/protocol/interface/inline_value_evaluatable_expression.rb +50 -0
- data/lib/language_server/protocol/interface/inline_value_options.rb +35 -0
- data/lib/language_server/protocol/interface/inline_value_params.rb +66 -0
- data/lib/language_server/protocol/interface/inline_value_registration_options.rb +55 -0
- data/lib/language_server/protocol/interface/inline_value_text.rb +47 -0
- data/lib/language_server/protocol/interface/inline_value_variable_lookup.rb +59 -0
- data/lib/language_server/protocol/interface/inline_value_workspace_client_capabilities.rb +44 -0
- data/lib/language_server/protocol/interface/insert_replace_edit.rb +2 -0
- data/lib/language_server/protocol/interface/linked_editing_range_client_capabilities.rb +8 -4
- data/lib/language_server/protocol/interface/linked_editing_range_options.rb +1 -1
- data/lib/language_server/protocol/interface/linked_editing_range_params.rb +1 -1
- data/lib/language_server/protocol/interface/linked_editing_range_registration_options.rb +5 -5
- data/lib/language_server/protocol/interface/linked_editing_ranges.rb +7 -2
- data/lib/language_server/protocol/interface/location.rb +5 -1
- data/lib/language_server/protocol/interface/location_link.rb +13 -11
- data/lib/language_server/protocol/interface/log_message_params.rb +4 -1
- data/lib/language_server/protocol/interface/log_trace_params.rb +1 -8
- data/lib/language_server/protocol/interface/{message.rb → lsp_object.rb} +6 -8
- data/lib/language_server/protocol/interface/markdown_client_capabilities.rb +16 -2
- data/lib/language_server/protocol/interface/markup_content.rb +16 -18
- data/lib/language_server/protocol/interface/moniker.rb +3 -1
- data/lib/language_server/protocol/interface/moniker_client_capabilities.rb +9 -5
- data/lib/language_server/protocol/interface/moniker_options.rb +1 -1
- data/lib/language_server/protocol/interface/moniker_params.rb +4 -4
- data/lib/language_server/protocol/interface/moniker_registration_options.rb +4 -4
- data/lib/language_server/protocol/interface/notebook_cell.rb +73 -0
- data/lib/language_server/protocol/interface/notebook_cell_array_change.rb +57 -0
- data/lib/language_server/protocol/interface/notebook_cell_text_document_filter.rb +54 -0
- data/lib/language_server/protocol/interface/notebook_document.rb +78 -0
- data/lib/language_server/protocol/interface/notebook_document_change_event.rb +49 -0
- data/lib/language_server/protocol/interface/notebook_document_client_capabilities.rb +40 -0
- data/lib/language_server/protocol/interface/notebook_document_filter.rb +58 -0
- data/lib/language_server/protocol/interface/notebook_document_identifier.rb +38 -0
- data/lib/language_server/protocol/interface/notebook_document_sync_client_capabilities.rb +50 -0
- data/lib/language_server/protocol/interface/notebook_document_sync_options.rb +58 -0
- data/lib/language_server/protocol/interface/notebook_document_sync_registration_options.rb +58 -0
- data/lib/language_server/protocol/interface/optional_versioned_text_document_identifier.rb +17 -18
- data/lib/language_server/protocol/interface/parameter_information.rb +7 -9
- data/lib/language_server/protocol/interface/partial_result_params.rb +3 -3
- data/lib/language_server/protocol/interface/position.rb +40 -7
- data/lib/language_server/protocol/interface/prepare_rename_params.rb +10 -1
- data/lib/language_server/protocol/interface/prepare_rename_result.rb +60 -0
- data/lib/language_server/protocol/interface/previous_result_id.rb +48 -0
- data/lib/language_server/protocol/interface/progress_params.rb +1 -1
- data/lib/language_server/protocol/interface/publish_diagnostics_client_capabilities.rb +16 -5
- data/lib/language_server/protocol/interface/publish_diagnostics_params.rb +8 -4
- data/lib/language_server/protocol/interface/range.rb +13 -0
- data/lib/language_server/protocol/interface/reference_client_capabilities.rb +4 -1
- data/lib/language_server/protocol/interface/reference_context.rb +4 -0
- data/lib/language_server/protocol/interface/reference_options.rb +4 -1
- data/lib/language_server/protocol/interface/reference_params.rb +14 -11
- data/lib/language_server/protocol/interface/reference_registration_options.rb +7 -4
- data/lib/language_server/protocol/interface/registration.rb +2 -2
- data/lib/language_server/protocol/interface/regular_expressions_client_capabilities.rb +3 -1
- data/lib/language_server/protocol/interface/related_full_document_diagnostic_report.rb +73 -0
- data/lib/language_server/protocol/interface/related_unchanged_document_diagnostic_report.rb +66 -0
- data/lib/language_server/protocol/interface/relative_pattern.rb +50 -0
- data/lib/language_server/protocol/interface/rename_client_capabilities.rb +12 -7
- data/lib/language_server/protocol/interface/rename_file.rb +7 -5
- data/lib/language_server/protocol/interface/rename_file_options.rb +2 -2
- data/lib/language_server/protocol/interface/rename_files_params.rb +6 -4
- data/lib/language_server/protocol/interface/rename_options.rb +13 -8
- data/lib/language_server/protocol/interface/rename_params.rb +15 -12
- data/lib/language_server/protocol/interface/rename_registration_options.rb +16 -11
- data/lib/language_server/protocol/interface/resource_operation.rb +47 -0
- data/lib/language_server/protocol/interface/save_options.rb +4 -1
- data/lib/language_server/protocol/interface/selection_range.rb +6 -3
- data/lib/language_server/protocol/interface/selection_range_client_capabilities.rb +4 -5
- data/lib/language_server/protocol/interface/selection_range_options.rb +1 -1
- data/lib/language_server/protocol/interface/selection_range_params.rb +23 -20
- data/lib/language_server/protocol/interface/selection_range_registration_options.rb +5 -5
- data/lib/language_server/protocol/interface/semantic_tokens.rb +5 -2
- data/lib/language_server/protocol/interface/semantic_tokens_client_capabilities.rb +45 -11
- data/lib/language_server/protocol/interface/semantic_tokens_delta.rb +5 -3
- data/lib/language_server/protocol/interface/semantic_tokens_delta_params.rb +24 -21
- data/lib/language_server/protocol/interface/semantic_tokens_delta_partial_result.rb +3 -0
- data/lib/language_server/protocol/interface/semantic_tokens_edit.rb +6 -3
- data/lib/language_server/protocol/interface/semantic_tokens_legend.rb +3 -0
- data/lib/language_server/protocol/interface/semantic_tokens_options.rb +12 -9
- data/lib/language_server/protocol/interface/semantic_tokens_params.rb +17 -14
- data/lib/language_server/protocol/interface/semantic_tokens_partial_result.rb +4 -1
- data/lib/language_server/protocol/interface/semantic_tokens_range_params.rb +23 -20
- data/lib/language_server/protocol/interface/semantic_tokens_registration_options.rb +16 -13
- data/lib/language_server/protocol/interface/semantic_tokens_workspace_client_capabilities.rb +5 -2
- data/lib/language_server/protocol/interface/server_capabilities.rb +139 -56
- data/lib/language_server/protocol/interface/set_trace_params.rb +1 -4
- data/lib/language_server/protocol/interface/show_document_client_capabilities.rb +4 -2
- data/lib/language_server/protocol/interface/show_document_params.rb +6 -4
- data/lib/language_server/protocol/interface/show_document_result.rb +3 -1
- data/lib/language_server/protocol/interface/show_message_params.rb +4 -1
- data/lib/language_server/protocol/interface/show_message_request_client_capabilities.rb +1 -1
- data/lib/language_server/protocol/interface/show_message_request_params.rb +2 -2
- data/lib/language_server/protocol/interface/signature_help.rb +3 -4
- data/lib/language_server/protocol/interface/signature_help_client_capabilities.rb +8 -3
- data/lib/language_server/protocol/interface/signature_help_context.rb +10 -11
- data/lib/language_server/protocol/interface/signature_help_options.rb +17 -14
- data/lib/language_server/protocol/interface/signature_help_params.rb +17 -13
- data/lib/language_server/protocol/interface/signature_help_registration_options.rb +20 -17
- data/lib/language_server/protocol/interface/signature_information.rb +5 -3
- data/lib/language_server/protocol/interface/static_registration_options.rb +3 -2
- data/lib/language_server/protocol/interface/symbol_information.rb +34 -30
- data/lib/language_server/protocol/interface/t.rb +24 -0
- data/lib/language_server/protocol/interface/text_document_change_registration_options.rb +12 -13
- data/lib/language_server/protocol/interface/text_document_client_capabilities.rb +108 -43
- data/lib/language_server/protocol/interface/text_document_content_change_event.rb +8 -10
- data/lib/language_server/protocol/interface/text_document_edit.rb +10 -1
- data/lib/language_server/protocol/interface/text_document_filter.rb +69 -0
- data/lib/language_server/protocol/interface/text_document_identifier.rb +5 -2
- data/lib/language_server/protocol/interface/text_document_item.rb +7 -3
- data/lib/language_server/protocol/interface/text_document_position_params.rb +4 -0
- data/lib/language_server/protocol/interface/text_document_registration_options.rb +3 -3
- data/lib/language_server/protocol/interface/text_document_save_registration_options.rb +7 -4
- data/lib/language_server/protocol/interface/text_document_sync_client_capabilities.rb +4 -4
- data/lib/language_server/protocol/interface/text_document_sync_options.rb +15 -17
- data/lib/language_server/protocol/interface/text_edit.rb +3 -0
- data/lib/language_server/protocol/interface/type_definition_client_capabilities.rb +10 -5
- data/lib/language_server/protocol/interface/type_definition_options.rb +1 -1
- data/lib/language_server/protocol/interface/type_definition_params.rb +4 -4
- data/lib/language_server/protocol/interface/type_definition_registration_options.rb +5 -5
- data/lib/language_server/protocol/interface/type_hierarchy_client_capabilities.rb +38 -0
- data/lib/language_server/protocol/interface/type_hierarchy_item.rb +105 -0
- data/lib/language_server/protocol/interface/type_hierarchy_options.rb +35 -0
- data/lib/language_server/protocol/interface/type_hierarchy_prepare_params.rb +56 -0
- data/lib/language_server/protocol/interface/type_hierarchy_registration_options.rb +55 -0
- data/lib/language_server/protocol/interface/type_hierarchy_subtypes_params.rb +54 -0
- data/lib/language_server/protocol/interface/type_hierarchy_supertypes_params.rb +54 -0
- data/lib/language_server/protocol/interface/unchanged_document_diagnostic_report.rb +52 -0
- data/lib/language_server/protocol/interface/unregistration.rb +2 -2
- data/lib/language_server/protocol/interface/versioned_notebook_document_identifier.rb +47 -0
- data/lib/language_server/protocol/interface/versioned_text_document_identifier.rb +13 -13
- data/lib/language_server/protocol/interface/will_save_text_document_params.rb +1 -1
- data/lib/language_server/protocol/interface/window_client_capabilities.rb +63 -0
- data/lib/language_server/protocol/interface/work_done_progress_begin.rb +6 -6
- data/lib/language_server/protocol/interface/work_done_progress_end.rb +1 -1
- data/lib/language_server/protocol/interface/work_done_progress_options.rb +1 -1
- data/lib/language_server/protocol/interface/work_done_progress_params.rb +1 -1
- data/lib/language_server/protocol/interface/work_done_progress_report.rb +6 -7
- data/lib/language_server/protocol/interface/workspace_client_capabilities.rb +176 -0
- data/lib/language_server/protocol/interface/workspace_diagnostic_params.rb +67 -0
- data/lib/language_server/protocol/interface/workspace_diagnostic_report.rb +35 -0
- data/lib/language_server/protocol/interface/workspace_diagnostic_report_partial_result.rb +35 -0
- data/lib/language_server/protocol/interface/workspace_document_diagnostic_report.rb +77 -0
- data/lib/language_server/protocol/interface/workspace_edit.rb +28 -17
- data/lib/language_server/protocol/interface/workspace_edit_client_capabilities.rb +15 -6
- data/lib/language_server/protocol/interface/workspace_folder.rb +4 -1
- data/lib/language_server/protocol/interface/workspace_folders_initialize_params.rb +39 -0
- data/lib/language_server/protocol/interface/workspace_folders_server_capabilities.rb +3 -3
- data/lib/language_server/protocol/interface/workspace_full_document_diagnostic_report.rb +77 -0
- data/lib/language_server/protocol/interface/workspace_symbol.rb +95 -0
- data/lib/language_server/protocol/interface/workspace_symbol_client_capabilities.rb +23 -6
- data/lib/language_server/protocol/interface/workspace_symbol_options.rb +17 -2
- data/lib/language_server/protocol/interface/workspace_symbol_params.rb +16 -16
- data/lib/language_server/protocol/interface/workspace_symbol_registration_options.rb +17 -2
- data/lib/language_server/protocol/interface/workspace_unchanged_document_diagnostic_report.rb +70 -0
- data/lib/language_server/protocol/interface.rb +156 -14
- data/lib/language_server/protocol/transport/io/reader.rb +8 -24
- data/lib/language_server/protocol/transport/io/writer.rb +1 -0
- data/lib/language_server/protocol/version.rb +1 -1
- metadata +92 -24
- data/lib/language_server/protocol/constant/initialize_error.rb +0 -16
- data/lib/language_server/protocol/interface/notification_message.rb +0 -48
- data/lib/language_server/protocol/interface/request_message.rb +0 -57
- data/lib/language_server/protocol/interface/response_error.rb +0 -52
- data/lib/language_server/protocol/interface/response_message.rb +0 -58
@@ -1,6 +1,11 @@
|
|
1
1
|
module LanguageServer
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
|
+
#
|
5
|
+
# Call hierarchy options used during static or dynamic registration.
|
6
|
+
#
|
7
|
+
# @since 3.16.0
|
8
|
+
#
|
4
9
|
class CallHierarchyRegistrationOptions
|
5
10
|
def initialize(document_selector:, work_done_progress: nil, id: nil)
|
6
11
|
@attributes = {}
|
@@ -13,15 +18,15 @@ module LanguageServer
|
|
13
18
|
end
|
14
19
|
|
15
20
|
#
|
16
|
-
# A document selector to identify the scope of the registration. If set to
|
17
|
-
#
|
21
|
+
# A document selector to identify the scope of the registration. If set to null
|
22
|
+
# the document selector provided on the client side will be used.
|
18
23
|
#
|
19
|
-
# @return [DocumentSelector]
|
24
|
+
# @return [DocumentSelector | null]
|
20
25
|
def document_selector
|
21
26
|
attributes.fetch(:documentSelector)
|
22
27
|
end
|
23
28
|
|
24
|
-
# @return [boolean]
|
29
|
+
# @return [boolean | nil]
|
25
30
|
def work_done_progress
|
26
31
|
attributes.fetch(:workDoneProgress)
|
27
32
|
end
|
@@ -30,7 +35,7 @@ module LanguageServer
|
|
30
35
|
# The id used to register the request. The id can be used to deregister
|
31
36
|
# the request again. See also Registration#id.
|
32
37
|
#
|
33
|
-
# @return [string]
|
38
|
+
# @return [string | nil]
|
34
39
|
def id
|
35
40
|
attributes.fetch(:id)
|
36
41
|
end
|
@@ -4,6 +4,8 @@ module LanguageServer
|
|
4
4
|
#
|
5
5
|
# Additional information that describes document changes.
|
6
6
|
#
|
7
|
+
# @since 3.16.0
|
8
|
+
#
|
7
9
|
class ChangeAnnotation
|
8
10
|
def initialize(label:, needs_confirmation: nil, description: nil)
|
9
11
|
@attributes = {}
|
@@ -28,7 +30,7 @@ module LanguageServer
|
|
28
30
|
# A flag which indicates that user confirmation is needed
|
29
31
|
# before applying the change.
|
30
32
|
#
|
31
|
-
# @return [boolean]
|
33
|
+
# @return [boolean | nil]
|
32
34
|
def needs_confirmation
|
33
35
|
attributes.fetch(:needsConfirmation)
|
34
36
|
end
|
@@ -37,7 +39,7 @@ module LanguageServer
|
|
37
39
|
# A human-readable string which is rendered less prominent in
|
38
40
|
# the user interface.
|
39
41
|
#
|
40
|
-
# @return [string]
|
42
|
+
# @return [string | nil]
|
41
43
|
def description
|
42
44
|
attributes.fetch(:description)
|
43
45
|
end
|
@@ -1,12 +1,16 @@
|
|
1
1
|
module LanguageServer
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
|
+
#
|
5
|
+
# Defines the capabilities provided by the client.
|
6
|
+
#
|
4
7
|
class ClientCapabilities
|
5
|
-
def initialize(workspace: nil, text_document: nil, window: nil, general: nil, experimental: nil)
|
8
|
+
def initialize(workspace: nil, text_document: nil, notebook_document: nil, window: nil, general: nil, experimental: nil)
|
6
9
|
@attributes = {}
|
7
10
|
|
8
11
|
@attributes[:workspace] = workspace if workspace
|
9
12
|
@attributes[:textDocument] = text_document if text_document
|
13
|
+
@attributes[:notebookDocument] = notebook_document if notebook_document
|
10
14
|
@attributes[:window] = window if window
|
11
15
|
@attributes[:general] = general if general
|
12
16
|
@attributes[:experimental] = experimental if experimental
|
@@ -17,7 +21,7 @@ module LanguageServer
|
|
17
21
|
#
|
18
22
|
# Workspace specific client capabilities.
|
19
23
|
#
|
20
|
-
# @return [
|
24
|
+
# @return [WorkspaceClientCapabilities | nil]
|
21
25
|
def workspace
|
22
26
|
attributes.fetch(:workspace)
|
23
27
|
end
|
@@ -25,15 +29,25 @@ module LanguageServer
|
|
25
29
|
#
|
26
30
|
# Text document specific client capabilities.
|
27
31
|
#
|
28
|
-
# @return [TextDocumentClientCapabilities]
|
32
|
+
# @return [TextDocumentClientCapabilities | nil]
|
29
33
|
def text_document
|
30
34
|
attributes.fetch(:textDocument)
|
31
35
|
end
|
32
36
|
|
37
|
+
#
|
38
|
+
# Capabilities specific to the notebook document support.
|
39
|
+
#
|
40
|
+
# @since 3.17.0
|
41
|
+
#
|
42
|
+
# @return [NotebookDocumentClientCapabilities | nil]
|
43
|
+
def notebook_document
|
44
|
+
attributes.fetch(:notebookDocument)
|
45
|
+
end
|
46
|
+
|
33
47
|
#
|
34
48
|
# Window specific client capabilities.
|
35
49
|
#
|
36
|
-
# @return [
|
50
|
+
# @return [WindowClientCapabilities | nil]
|
37
51
|
def window
|
38
52
|
attributes.fetch(:window)
|
39
53
|
end
|
@@ -41,7 +55,9 @@ module LanguageServer
|
|
41
55
|
#
|
42
56
|
# General client capabilities.
|
43
57
|
#
|
44
|
-
# @
|
58
|
+
# @since 3.16.0
|
59
|
+
#
|
60
|
+
# @return [GeneralClientCapabilities | nil]
|
45
61
|
def general
|
46
62
|
attributes.fetch(:general)
|
47
63
|
end
|
@@ -49,7 +65,7 @@ module LanguageServer
|
|
49
65
|
#
|
50
66
|
# Experimental client capabilities.
|
51
67
|
#
|
52
|
-
# @return [
|
68
|
+
# @return [LSPAny | nil]
|
53
69
|
def experimental
|
54
70
|
attributes.fetch(:experimental)
|
55
71
|
end
|
@@ -2,11 +2,10 @@ module LanguageServer
|
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
4
|
#
|
5
|
-
# A code action represents a change that can be performed in code, e.g. to fix
|
6
|
-
#
|
5
|
+
# A code action represents a change that can be performed in code, e.g. to fix a problem or
|
6
|
+
# to refactor code.
|
7
7
|
#
|
8
|
-
# A CodeAction must set either `edit` and/or a `command`. If both are supplied,
|
9
|
-
# the `edit` is applied first, then the `command` is executed.
|
8
|
+
# A CodeAction must set either `edit` and/or a `command`. If both are supplied, the `edit` is applied first, then the `command` is executed.
|
10
9
|
#
|
11
10
|
class CodeAction
|
12
11
|
def initialize(title:, kind: nil, diagnostics: nil, is_preferred: nil, disabled: nil, edit: nil, command: nil, data: nil)
|
@@ -37,7 +36,7 @@ module LanguageServer
|
|
37
36
|
#
|
38
37
|
# Used to filter code actions.
|
39
38
|
#
|
40
|
-
# @return [
|
39
|
+
# @return [CodeActionKind | nil]
|
41
40
|
def kind
|
42
41
|
attributes.fetch(:kind)
|
43
42
|
end
|
@@ -45,20 +44,21 @@ module LanguageServer
|
|
45
44
|
#
|
46
45
|
# The diagnostics that this code action resolves.
|
47
46
|
#
|
48
|
-
# @return [Diagnostic[]]
|
47
|
+
# @return [Diagnostic[] | nil]
|
49
48
|
def diagnostics
|
50
49
|
attributes.fetch(:diagnostics)
|
51
50
|
end
|
52
51
|
|
53
52
|
#
|
54
|
-
# Marks this as a preferred action. Preferred actions are used by the
|
55
|
-
#
|
53
|
+
# Marks this as a preferred action. Preferred actions are used by the `auto fix` command and can be targeted
|
54
|
+
# by keybindings.
|
55
|
+
#
|
56
|
+
# A quick fix should be marked preferred if it properly addresses the underlying error.
|
57
|
+
# A refactoring should be marked preferred if it is the most reasonable choice of actions to take.
|
56
58
|
#
|
57
|
-
#
|
58
|
-
# underlying error. A refactoring should be marked preferred if it is the
|
59
|
-
# most reasonable choice of actions to take.
|
59
|
+
# @since 3.15.0
|
60
60
|
#
|
61
|
-
# @return [boolean]
|
61
|
+
# @return [boolean | nil]
|
62
62
|
def is_preferred
|
63
63
|
attributes.fetch(:isPreferred)
|
64
64
|
end
|
@@ -66,21 +66,21 @@ module LanguageServer
|
|
66
66
|
#
|
67
67
|
# Marks that the code action cannot currently be applied.
|
68
68
|
#
|
69
|
-
# Clients should follow the following guidelines regarding disabled code
|
70
|
-
# actions:
|
69
|
+
# Clients should follow the following guidelines regarding disabled code actions:
|
71
70
|
#
|
72
|
-
#
|
73
|
-
# action menus.
|
71
|
+
# - Disabled code actions are not shown in automatic [lightbulbs](https://code.visualstudio.com/docs/editor/editingevolved#_code-action)
|
72
|
+
# code action menus.
|
74
73
|
#
|
75
|
-
#
|
76
|
-
#
|
77
|
-
# refactorings.
|
74
|
+
# - Disabled actions are shown as faded out in the code action menu when the user requests a more specific type
|
75
|
+
# of code action, such as refactorings.
|
78
76
|
#
|
79
|
-
#
|
80
|
-
# a disabled code actions are returned, the client should show the user
|
81
|
-
#
|
77
|
+
# - If the user has a [keybinding](https://code.visualstudio.com/docs/editor/refactoring#_keybindings-for-code-actions)
|
78
|
+
# that auto applies a code action and only disabled code actions are returned, the client should show the user an
|
79
|
+
# error message with `reason` in the editor.
|
82
80
|
#
|
83
|
-
# @
|
81
|
+
# @since 3.16.0
|
82
|
+
#
|
83
|
+
# @return [{ reason:string } | nil]
|
84
84
|
def disabled
|
85
85
|
attributes.fetch(:disabled)
|
86
86
|
end
|
@@ -88,7 +88,7 @@ module LanguageServer
|
|
88
88
|
#
|
89
89
|
# The workspace edit this code action performs.
|
90
90
|
#
|
91
|
-
# @return [WorkspaceEdit]
|
91
|
+
# @return [WorkspaceEdit | nil]
|
92
92
|
def edit
|
93
93
|
attributes.fetch(:edit)
|
94
94
|
end
|
@@ -98,7 +98,7 @@ module LanguageServer
|
|
98
98
|
# provides an edit and a command, first the edit is
|
99
99
|
# executed and then the command.
|
100
100
|
#
|
101
|
-
# @return [Command]
|
101
|
+
# @return [Command | nil]
|
102
102
|
def command
|
103
103
|
attributes.fetch(:command)
|
104
104
|
end
|
@@ -107,7 +107,9 @@ module LanguageServer
|
|
107
107
|
# A data entry field that is preserved on a code action between
|
108
108
|
# a `textDocument/codeAction` and a `codeAction/resolve` request.
|
109
109
|
#
|
110
|
-
# @
|
110
|
+
# @since 3.16.0
|
111
|
+
#
|
112
|
+
# @return [LSPAny | nil]
|
111
113
|
def data
|
112
114
|
attributes.fetch(:data)
|
113
115
|
end
|
@@ -1,6 +1,9 @@
|
|
1
1
|
module LanguageServer
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
|
+
#
|
5
|
+
# The Client Capabilities of a [CodeActionRequest](#CodeActionRequest).
|
6
|
+
#
|
4
7
|
class CodeActionClientCapabilities
|
5
8
|
def initialize(dynamic_registration: nil, code_action_literal_support: nil, is_preferred_support: nil, disabled_support: nil, data_support: nil, resolve_support: nil, honors_change_annotations: nil)
|
6
9
|
@attributes = {}
|
@@ -19,16 +22,19 @@ module LanguageServer
|
|
19
22
|
#
|
20
23
|
# Whether code action supports dynamic registration.
|
21
24
|
#
|
22
|
-
# @return [boolean]
|
25
|
+
# @return [boolean | nil]
|
23
26
|
def dynamic_registration
|
24
27
|
attributes.fetch(:dynamicRegistration)
|
25
28
|
end
|
26
29
|
|
27
30
|
#
|
28
|
-
# The client
|
29
|
-
# response of the `textDocument/codeAction` request.
|
31
|
+
# The client support code action literals of type `CodeAction` as a valid
|
32
|
+
# response of the `textDocument/codeAction` request. If the property is not
|
33
|
+
# set the request can only return `Command` literals.
|
30
34
|
#
|
31
|
-
# @
|
35
|
+
# @since 3.8.0
|
36
|
+
#
|
37
|
+
# @return [{ codeActionKind:{ valueSet:CodeActionKind[] } } | nil]
|
32
38
|
def code_action_literal_support
|
33
39
|
attributes.fetch(:codeActionLiteralSupport)
|
34
40
|
end
|
@@ -36,7 +42,9 @@ module LanguageServer
|
|
36
42
|
#
|
37
43
|
# Whether code action supports the `isPreferred` property.
|
38
44
|
#
|
39
|
-
# @
|
45
|
+
# @since 3.15.0
|
46
|
+
#
|
47
|
+
# @return [boolean | nil]
|
40
48
|
def is_preferred_support
|
41
49
|
attributes.fetch(:isPreferredSupport)
|
42
50
|
end
|
@@ -44,7 +52,9 @@ module LanguageServer
|
|
44
52
|
#
|
45
53
|
# Whether code action supports the `disabled` property.
|
46
54
|
#
|
47
|
-
# @
|
55
|
+
# @since 3.16.0
|
56
|
+
#
|
57
|
+
# @return [boolean | nil]
|
48
58
|
def disabled_support
|
49
59
|
attributes.fetch(:disabledSupport)
|
50
60
|
end
|
@@ -54,7 +64,9 @@ module LanguageServer
|
|
54
64
|
# preserved between a `textDocument/codeAction` and a
|
55
65
|
# `codeAction/resolve` request.
|
56
66
|
#
|
57
|
-
# @
|
67
|
+
# @since 3.16.0
|
68
|
+
#
|
69
|
+
# @return [boolean | nil]
|
58
70
|
def data_support
|
59
71
|
attributes.fetch(:dataSupport)
|
60
72
|
end
|
@@ -63,7 +75,9 @@ module LanguageServer
|
|
63
75
|
# Whether the client supports resolving additional code action
|
64
76
|
# properties via a separate `codeAction/resolve` request.
|
65
77
|
#
|
66
|
-
# @
|
78
|
+
# @since 3.16.0
|
79
|
+
#
|
80
|
+
# @return [{ properties:string[] } | nil]
|
67
81
|
def resolve_support
|
68
82
|
attributes.fetch(:resolveSupport)
|
69
83
|
end
|
@@ -75,7 +89,9 @@ module LanguageServer
|
|
75
89
|
# the workspace edit in the user interface and asking
|
76
90
|
# for confirmation.
|
77
91
|
#
|
78
|
-
# @
|
92
|
+
# @since 3.16.0
|
93
|
+
#
|
94
|
+
# @return [boolean | nil]
|
79
95
|
def honors_change_annotations
|
80
96
|
attributes.fetch(:honorsChangeAnnotations)
|
81
97
|
end
|
@@ -3,24 +3,24 @@ module LanguageServer
|
|
3
3
|
module Interface
|
4
4
|
#
|
5
5
|
# Contains additional diagnostic information about the context in which
|
6
|
-
# a code action is run.
|
6
|
+
# a [code action](#CodeActionProvider.provideCodeActions) is run.
|
7
7
|
#
|
8
8
|
class CodeActionContext
|
9
|
-
def initialize(diagnostics:, only: nil)
|
9
|
+
def initialize(diagnostics:, only: nil, trigger_kind: nil)
|
10
10
|
@attributes = {}
|
11
11
|
|
12
12
|
@attributes[:diagnostics] = diagnostics
|
13
13
|
@attributes[:only] = only if only
|
14
|
+
@attributes[:triggerKind] = trigger_kind if trigger_kind
|
14
15
|
|
15
16
|
@attributes.freeze
|
16
17
|
end
|
17
18
|
|
18
19
|
#
|
19
|
-
# An array of diagnostics known on the client side overlapping the range
|
20
|
-
#
|
21
|
-
#
|
22
|
-
#
|
23
|
-
# the error state of the resource. The primary parameter
|
20
|
+
# An array of diagnostics known on the client side overlapping the range provided to the
|
21
|
+
# `textDocument/codeAction` request. They are provided so that the server knows which
|
22
|
+
# errors are currently presented to the user for the given range. There is no guarantee
|
23
|
+
# that these accurately reflect the error state of the resource. The primary parameter
|
24
24
|
# to compute code actions is the provided range.
|
25
25
|
#
|
26
26
|
# @return [Diagnostic[]]
|
@@ -31,14 +31,24 @@ module LanguageServer
|
|
31
31
|
#
|
32
32
|
# Requested kind of actions to return.
|
33
33
|
#
|
34
|
-
# Actions not of this kind are filtered out by the client before being
|
35
|
-
#
|
34
|
+
# Actions not of this kind are filtered out by the client before being shown. So servers
|
35
|
+
# can omit computing them.
|
36
36
|
#
|
37
|
-
# @return [
|
37
|
+
# @return [CodeActionKind[] | nil]
|
38
38
|
def only
|
39
39
|
attributes.fetch(:only)
|
40
40
|
end
|
41
41
|
|
42
|
+
#
|
43
|
+
# The reason why code actions were requested.
|
44
|
+
#
|
45
|
+
# @since 3.17.0
|
46
|
+
#
|
47
|
+
# @return [CodeActionTriggerKind | nil]
|
48
|
+
def trigger_kind
|
49
|
+
attributes.fetch(:triggerKind)
|
50
|
+
end
|
51
|
+
|
42
52
|
attr_reader :attributes
|
43
53
|
|
44
54
|
def to_hash
|
@@ -1,29 +1,27 @@
|
|
1
1
|
module LanguageServer
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
|
+
#
|
5
|
+
# Provider options for a [CodeActionRequest](#CodeActionRequest).
|
6
|
+
#
|
4
7
|
class CodeActionOptions
|
5
|
-
def initialize(
|
8
|
+
def initialize(code_action_kinds: nil, resolve_provider: nil, work_done_progress: nil)
|
6
9
|
@attributes = {}
|
7
10
|
|
8
|
-
@attributes[:workDoneProgress] = work_done_progress if work_done_progress
|
9
11
|
@attributes[:codeActionKinds] = code_action_kinds if code_action_kinds
|
10
12
|
@attributes[:resolveProvider] = resolve_provider if resolve_provider
|
13
|
+
@attributes[:workDoneProgress] = work_done_progress if work_done_progress
|
11
14
|
|
12
15
|
@attributes.freeze
|
13
16
|
end
|
14
17
|
|
15
|
-
# @return [boolean]
|
16
|
-
def work_done_progress
|
17
|
-
attributes.fetch(:workDoneProgress)
|
18
|
-
end
|
19
|
-
|
20
18
|
#
|
21
19
|
# CodeActionKinds that this server may return.
|
22
20
|
#
|
23
|
-
# The list of kinds may be generic, such as `CodeActionKind.Refactor`,
|
24
|
-
#
|
21
|
+
# The list of kinds may be generic, such as `CodeActionKind.Refactor`, or the server
|
22
|
+
# may list out every specific kind they provide.
|
25
23
|
#
|
26
|
-
# @return [
|
24
|
+
# @return [CodeActionKind[] | nil]
|
27
25
|
def code_action_kinds
|
28
26
|
attributes.fetch(:codeActionKinds)
|
29
27
|
end
|
@@ -32,11 +30,18 @@ module LanguageServer
|
|
32
30
|
# The server provides support to resolve additional
|
33
31
|
# information for a code action.
|
34
32
|
#
|
35
|
-
# @
|
33
|
+
# @since 3.16.0
|
34
|
+
#
|
35
|
+
# @return [boolean | nil]
|
36
36
|
def resolve_provider
|
37
37
|
attributes.fetch(:resolveProvider)
|
38
38
|
end
|
39
39
|
|
40
|
+
# @return [boolean | nil]
|
41
|
+
def work_done_progress
|
42
|
+
attributes.fetch(:workDoneProgress)
|
43
|
+
end
|
44
|
+
|
40
45
|
attr_reader :attributes
|
41
46
|
|
42
47
|
def to_hash
|
@@ -2,38 +2,21 @@ module LanguageServer
|
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
4
|
#
|
5
|
-
#
|
5
|
+
# The parameters of a [CodeActionRequest](#CodeActionRequest).
|
6
6
|
#
|
7
7
|
class CodeActionParams
|
8
|
-
def initialize(work_done_token: nil, partial_result_token: nil
|
8
|
+
def initialize(text_document:, range:, context:, work_done_token: nil, partial_result_token: nil)
|
9
9
|
@attributes = {}
|
10
10
|
|
11
|
-
@attributes[:workDoneToken] = work_done_token if work_done_token
|
12
|
-
@attributes[:partialResultToken] = partial_result_token if partial_result_token
|
13
11
|
@attributes[:textDocument] = text_document
|
14
12
|
@attributes[:range] = range
|
15
13
|
@attributes[:context] = context
|
14
|
+
@attributes[:workDoneToken] = work_done_token if work_done_token
|
15
|
+
@attributes[:partialResultToken] = partial_result_token if partial_result_token
|
16
16
|
|
17
17
|
@attributes.freeze
|
18
18
|
end
|
19
19
|
|
20
|
-
#
|
21
|
-
# An optional token that a server can use to report work done progress.
|
22
|
-
#
|
23
|
-
# @return [ProgressToken]
|
24
|
-
def work_done_token
|
25
|
-
attributes.fetch(:workDoneToken)
|
26
|
-
end
|
27
|
-
|
28
|
-
#
|
29
|
-
# An optional token that a server can use to report partial results (e.g.
|
30
|
-
# streaming) to the client.
|
31
|
-
#
|
32
|
-
# @return [ProgressToken]
|
33
|
-
def partial_result_token
|
34
|
-
attributes.fetch(:partialResultToken)
|
35
|
-
end
|
36
|
-
|
37
20
|
#
|
38
21
|
# The document in which the command was invoked.
|
39
22
|
#
|
@@ -58,6 +41,23 @@ module LanguageServer
|
|
58
41
|
attributes.fetch(:context)
|
59
42
|
end
|
60
43
|
|
44
|
+
#
|
45
|
+
# An optional token that a server can use to report work done progress.
|
46
|
+
#
|
47
|
+
# @return [ProgressToken | nil]
|
48
|
+
def work_done_token
|
49
|
+
attributes.fetch(:workDoneToken)
|
50
|
+
end
|
51
|
+
|
52
|
+
#
|
53
|
+
# An optional token that a server can use to report partial results (e.g. streaming) to
|
54
|
+
# the client.
|
55
|
+
#
|
56
|
+
# @return [ProgressToken | nil]
|
57
|
+
def partial_result_token
|
58
|
+
attributes.fetch(:partialResultToken)
|
59
|
+
end
|
60
|
+
|
61
61
|
attr_reader :attributes
|
62
62
|
|
63
63
|
def to_hash
|
@@ -1,39 +1,37 @@
|
|
1
1
|
module LanguageServer
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
|
+
#
|
5
|
+
# Registration options for a [CodeActionRequest](#CodeActionRequest).
|
6
|
+
#
|
4
7
|
class CodeActionRegistrationOptions
|
5
|
-
def initialize(document_selector:,
|
8
|
+
def initialize(document_selector:, code_action_kinds: nil, resolve_provider: nil, work_done_progress: nil)
|
6
9
|
@attributes = {}
|
7
10
|
|
8
11
|
@attributes[:documentSelector] = document_selector
|
9
|
-
@attributes[:workDoneProgress] = work_done_progress if work_done_progress
|
10
12
|
@attributes[:codeActionKinds] = code_action_kinds if code_action_kinds
|
11
13
|
@attributes[:resolveProvider] = resolve_provider if resolve_provider
|
14
|
+
@attributes[:workDoneProgress] = work_done_progress if work_done_progress
|
12
15
|
|
13
16
|
@attributes.freeze
|
14
17
|
end
|
15
18
|
|
16
19
|
#
|
17
|
-
# A document selector to identify the scope of the registration. If set to
|
18
|
-
#
|
20
|
+
# A document selector to identify the scope of the registration. If set to null
|
21
|
+
# the document selector provided on the client side will be used.
|
19
22
|
#
|
20
|
-
# @return [DocumentSelector]
|
23
|
+
# @return [DocumentSelector | null]
|
21
24
|
def document_selector
|
22
25
|
attributes.fetch(:documentSelector)
|
23
26
|
end
|
24
27
|
|
25
|
-
# @return [boolean]
|
26
|
-
def work_done_progress
|
27
|
-
attributes.fetch(:workDoneProgress)
|
28
|
-
end
|
29
|
-
|
30
28
|
#
|
31
29
|
# CodeActionKinds that this server may return.
|
32
30
|
#
|
33
|
-
# The list of kinds may be generic, such as `CodeActionKind.Refactor`,
|
34
|
-
#
|
31
|
+
# The list of kinds may be generic, such as `CodeActionKind.Refactor`, or the server
|
32
|
+
# may list out every specific kind they provide.
|
35
33
|
#
|
36
|
-
# @return [
|
34
|
+
# @return [CodeActionKind[] | nil]
|
37
35
|
def code_action_kinds
|
38
36
|
attributes.fetch(:codeActionKinds)
|
39
37
|
end
|
@@ -42,11 +40,18 @@ module LanguageServer
|
|
42
40
|
# The server provides support to resolve additional
|
43
41
|
# information for a code action.
|
44
42
|
#
|
45
|
-
# @
|
43
|
+
# @since 3.16.0
|
44
|
+
#
|
45
|
+
# @return [boolean | nil]
|
46
46
|
def resolve_provider
|
47
47
|
attributes.fetch(:resolveProvider)
|
48
48
|
end
|
49
49
|
|
50
|
+
# @return [boolean | nil]
|
51
|
+
def work_done_progress
|
52
|
+
attributes.fetch(:workDoneProgress)
|
53
|
+
end
|
54
|
+
|
50
55
|
attr_reader :attributes
|
51
56
|
|
52
57
|
def to_hash
|
@@ -4,6 +4,8 @@ module LanguageServer
|
|
4
4
|
#
|
5
5
|
# Structure to capture a description for an error code.
|
6
6
|
#
|
7
|
+
# @since 3.16.0
|
8
|
+
#
|
7
9
|
class CodeDescription
|
8
10
|
def initialize(href:)
|
9
11
|
@attributes = {}
|
@@ -16,7 +18,7 @@ module LanguageServer
|
|
16
18
|
#
|
17
19
|
# An URI to open with more information about the diagnostic error.
|
18
20
|
#
|
19
|
-
# @return [
|
21
|
+
# @return [URI]
|
20
22
|
def href
|
21
23
|
attributes.fetch(:href)
|
22
24
|
end
|
@@ -2,12 +2,11 @@ module LanguageServer
|
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
4
|
#
|
5
|
-
# A code lens represents a command that should be shown along with
|
5
|
+
# A code lens represents a [command](#Command) that should be shown along with
|
6
6
|
# source text, like the number of references, a way to run tests, etc.
|
7
7
|
#
|
8
|
-
# A code lens is _unresolved_ when no command is associated to it. For
|
9
|
-
#
|
10
|
-
# in two stages.
|
8
|
+
# A code lens is _unresolved_ when no command is associated to it. For performance
|
9
|
+
# reasons the creation of a code lens and resolving should be done in two stages.
|
11
10
|
#
|
12
11
|
class CodeLens
|
13
12
|
def initialize(range:, command: nil, data: nil)
|
@@ -21,8 +20,7 @@ module LanguageServer
|
|
21
20
|
end
|
22
21
|
|
23
22
|
#
|
24
|
-
# The range in which this code lens is valid. Should only span a single
|
25
|
-
# line.
|
23
|
+
# The range in which this code lens is valid. Should only span a single line.
|
26
24
|
#
|
27
25
|
# @return [Range]
|
28
26
|
def range
|
@@ -32,16 +30,17 @@ module LanguageServer
|
|
32
30
|
#
|
33
31
|
# The command this code lens represents.
|
34
32
|
#
|
35
|
-
# @return [Command]
|
33
|
+
# @return [Command | nil]
|
36
34
|
def command
|
37
35
|
attributes.fetch(:command)
|
38
36
|
end
|
39
37
|
|
40
38
|
#
|
41
39
|
# A data entry field that is preserved on a code lens item between
|
42
|
-
# a
|
40
|
+
# a [CodeLensRequest](#CodeLensRequest) and a [CodeLensResolveRequest]
|
41
|
+
# (#CodeLensResolveRequest)
|
43
42
|
#
|
44
|
-
# @return [
|
43
|
+
# @return [LSPAny | nil]
|
45
44
|
def data
|
46
45
|
attributes.fetch(:data)
|
47
46
|
end
|