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
@@ -5,7 +5,7 @@ module LanguageServer
|
|
5
5
|
# Text document specific client capabilities.
|
6
6
|
#
|
7
7
|
class TextDocumentClientCapabilities
|
8
|
-
def initialize(synchronization: nil, completion: nil, hover: nil, signature_help: nil, declaration: nil, definition: nil, type_definition: nil, implementation: nil, references: nil, document_highlight: nil, document_symbol: nil, code_action: nil, code_lens: nil, document_link: nil, color_provider: nil, formatting: nil, range_formatting: nil, on_type_formatting: nil, rename: nil, publish_diagnostics: nil,
|
8
|
+
def initialize(synchronization: nil, completion: nil, hover: nil, signature_help: nil, declaration: nil, definition: nil, type_definition: nil, implementation: nil, references: nil, document_highlight: nil, document_symbol: nil, code_action: nil, code_lens: nil, document_link: nil, color_provider: nil, formatting: nil, range_formatting: nil, on_type_formatting: nil, rename: nil, folding_range: nil, selection_range: nil, publish_diagnostics: nil, call_hierarchy: nil, semantic_tokens: nil, linked_editing_range: nil, moniker: nil, type_hierarchy: nil, inline_value: nil, inlay_hint: nil, diagnostic: nil)
|
9
9
|
@attributes = {}
|
10
10
|
|
11
11
|
@attributes[:synchronization] = synchronization if synchronization
|
@@ -27,18 +27,25 @@ module LanguageServer
|
|
27
27
|
@attributes[:rangeFormatting] = range_formatting if range_formatting
|
28
28
|
@attributes[:onTypeFormatting] = on_type_formatting if on_type_formatting
|
29
29
|
@attributes[:rename] = rename if rename
|
30
|
-
@attributes[:publishDiagnostics] = publish_diagnostics if publish_diagnostics
|
31
30
|
@attributes[:foldingRange] = folding_range if folding_range
|
32
31
|
@attributes[:selectionRange] = selection_range if selection_range
|
33
|
-
@attributes[:
|
32
|
+
@attributes[:publishDiagnostics] = publish_diagnostics if publish_diagnostics
|
34
33
|
@attributes[:callHierarchy] = call_hierarchy if call_hierarchy
|
35
34
|
@attributes[:semanticTokens] = semantic_tokens if semantic_tokens
|
35
|
+
@attributes[:linkedEditingRange] = linked_editing_range if linked_editing_range
|
36
36
|
@attributes[:moniker] = moniker if moniker
|
37
|
+
@attributes[:typeHierarchy] = type_hierarchy if type_hierarchy
|
38
|
+
@attributes[:inlineValue] = inline_value if inline_value
|
39
|
+
@attributes[:inlayHint] = inlay_hint if inlay_hint
|
40
|
+
@attributes[:diagnostic] = diagnostic if diagnostic
|
37
41
|
|
38
42
|
@attributes.freeze
|
39
43
|
end
|
40
44
|
|
41
|
-
#
|
45
|
+
#
|
46
|
+
# Defines which synchronization capabilities the client supports.
|
47
|
+
#
|
48
|
+
# @return [TextDocumentSyncClientCapabilities | nil]
|
42
49
|
def synchronization
|
43
50
|
attributes.fetch(:synchronization)
|
44
51
|
end
|
@@ -46,7 +53,7 @@ module LanguageServer
|
|
46
53
|
#
|
47
54
|
# Capabilities specific to the `textDocument/completion` request.
|
48
55
|
#
|
49
|
-
# @return [CompletionClientCapabilities]
|
56
|
+
# @return [CompletionClientCapabilities | nil]
|
50
57
|
def completion
|
51
58
|
attributes.fetch(:completion)
|
52
59
|
end
|
@@ -54,7 +61,7 @@ module LanguageServer
|
|
54
61
|
#
|
55
62
|
# Capabilities specific to the `textDocument/hover` request.
|
56
63
|
#
|
57
|
-
# @return [HoverClientCapabilities]
|
64
|
+
# @return [HoverClientCapabilities | nil]
|
58
65
|
def hover
|
59
66
|
attributes.fetch(:hover)
|
60
67
|
end
|
@@ -62,7 +69,7 @@ module LanguageServer
|
|
62
69
|
#
|
63
70
|
# Capabilities specific to the `textDocument/signatureHelp` request.
|
64
71
|
#
|
65
|
-
# @return [SignatureHelpClientCapabilities]
|
72
|
+
# @return [SignatureHelpClientCapabilities | nil]
|
66
73
|
def signature_help
|
67
74
|
attributes.fetch(:signatureHelp)
|
68
75
|
end
|
@@ -70,7 +77,9 @@ module LanguageServer
|
|
70
77
|
#
|
71
78
|
# Capabilities specific to the `textDocument/declaration` request.
|
72
79
|
#
|
73
|
-
# @
|
80
|
+
# @since 3.14.0
|
81
|
+
#
|
82
|
+
# @return [DeclarationClientCapabilities | nil]
|
74
83
|
def declaration
|
75
84
|
attributes.fetch(:declaration)
|
76
85
|
end
|
@@ -78,7 +87,7 @@ module LanguageServer
|
|
78
87
|
#
|
79
88
|
# Capabilities specific to the `textDocument/definition` request.
|
80
89
|
#
|
81
|
-
# @return [DefinitionClientCapabilities]
|
90
|
+
# @return [DefinitionClientCapabilities | nil]
|
82
91
|
def definition
|
83
92
|
attributes.fetch(:definition)
|
84
93
|
end
|
@@ -86,7 +95,9 @@ module LanguageServer
|
|
86
95
|
#
|
87
96
|
# Capabilities specific to the `textDocument/typeDefinition` request.
|
88
97
|
#
|
89
|
-
# @
|
98
|
+
# @since 3.6.0
|
99
|
+
#
|
100
|
+
# @return [TypeDefinitionClientCapabilities | nil]
|
90
101
|
def type_definition
|
91
102
|
attributes.fetch(:typeDefinition)
|
92
103
|
end
|
@@ -94,7 +105,9 @@ module LanguageServer
|
|
94
105
|
#
|
95
106
|
# Capabilities specific to the `textDocument/implementation` request.
|
96
107
|
#
|
97
|
-
# @
|
108
|
+
# @since 3.6.0
|
109
|
+
#
|
110
|
+
# @return [ImplementationClientCapabilities | nil]
|
98
111
|
def implementation
|
99
112
|
attributes.fetch(:implementation)
|
100
113
|
end
|
@@ -102,7 +115,7 @@ module LanguageServer
|
|
102
115
|
#
|
103
116
|
# Capabilities specific to the `textDocument/references` request.
|
104
117
|
#
|
105
|
-
# @return [ReferenceClientCapabilities]
|
118
|
+
# @return [ReferenceClientCapabilities | nil]
|
106
119
|
def references
|
107
120
|
attributes.fetch(:references)
|
108
121
|
end
|
@@ -110,7 +123,7 @@ module LanguageServer
|
|
110
123
|
#
|
111
124
|
# Capabilities specific to the `textDocument/documentHighlight` request.
|
112
125
|
#
|
113
|
-
# @return [DocumentHighlightClientCapabilities]
|
126
|
+
# @return [DocumentHighlightClientCapabilities | nil]
|
114
127
|
def document_highlight
|
115
128
|
attributes.fetch(:documentHighlight)
|
116
129
|
end
|
@@ -118,7 +131,7 @@ module LanguageServer
|
|
118
131
|
#
|
119
132
|
# Capabilities specific to the `textDocument/documentSymbol` request.
|
120
133
|
#
|
121
|
-
# @return [DocumentSymbolClientCapabilities]
|
134
|
+
# @return [DocumentSymbolClientCapabilities | nil]
|
122
135
|
def document_symbol
|
123
136
|
attributes.fetch(:documentSymbol)
|
124
137
|
end
|
@@ -126,7 +139,7 @@ module LanguageServer
|
|
126
139
|
#
|
127
140
|
# Capabilities specific to the `textDocument/codeAction` request.
|
128
141
|
#
|
129
|
-
# @return [CodeActionClientCapabilities]
|
142
|
+
# @return [CodeActionClientCapabilities | nil]
|
130
143
|
def code_action
|
131
144
|
attributes.fetch(:codeAction)
|
132
145
|
end
|
@@ -134,7 +147,7 @@ module LanguageServer
|
|
134
147
|
#
|
135
148
|
# Capabilities specific to the `textDocument/codeLens` request.
|
136
149
|
#
|
137
|
-
# @return [CodeLensClientCapabilities]
|
150
|
+
# @return [CodeLensClientCapabilities | nil]
|
138
151
|
def code_lens
|
139
152
|
attributes.fetch(:codeLens)
|
140
153
|
end
|
@@ -142,7 +155,7 @@ module LanguageServer
|
|
142
155
|
#
|
143
156
|
# Capabilities specific to the `textDocument/documentLink` request.
|
144
157
|
#
|
145
|
-
# @return [DocumentLinkClientCapabilities]
|
158
|
+
# @return [DocumentLinkClientCapabilities | nil]
|
146
159
|
def document_link
|
147
160
|
attributes.fetch(:documentLink)
|
148
161
|
end
|
@@ -151,7 +164,9 @@ module LanguageServer
|
|
151
164
|
# Capabilities specific to the `textDocument/documentColor` and the
|
152
165
|
# `textDocument/colorPresentation` request.
|
153
166
|
#
|
154
|
-
# @
|
167
|
+
# @since 3.6.0
|
168
|
+
#
|
169
|
+
# @return [DocumentColorClientCapabilities | nil]
|
155
170
|
def color_provider
|
156
171
|
attributes.fetch(:colorProvider)
|
157
172
|
end
|
@@ -159,7 +174,7 @@ module LanguageServer
|
|
159
174
|
#
|
160
175
|
# Capabilities specific to the `textDocument/formatting` request.
|
161
176
|
#
|
162
|
-
# @return [DocumentFormattingClientCapabilities]
|
177
|
+
# @return [DocumentFormattingClientCapabilities | nil]
|
163
178
|
def formatting
|
164
179
|
attributes.fetch(:formatting)
|
165
180
|
end
|
@@ -167,16 +182,15 @@ module LanguageServer
|
|
167
182
|
#
|
168
183
|
# Capabilities specific to the `textDocument/rangeFormatting` request.
|
169
184
|
#
|
170
|
-
# @return [DocumentRangeFormattingClientCapabilities]
|
185
|
+
# @return [DocumentRangeFormattingClientCapabilities | nil]
|
171
186
|
def range_formatting
|
172
187
|
attributes.fetch(:rangeFormatting)
|
173
188
|
end
|
174
189
|
|
175
190
|
#
|
176
|
-
# request.
|
177
191
|
# Capabilities specific to the `textDocument/onTypeFormatting` request.
|
178
192
|
#
|
179
|
-
# @return [DocumentOnTypeFormattingClientCapabilities]
|
193
|
+
# @return [DocumentOnTypeFormattingClientCapabilities | nil]
|
180
194
|
def on_type_formatting
|
181
195
|
attributes.fetch(:onTypeFormatting)
|
182
196
|
end
|
@@ -184,24 +198,17 @@ module LanguageServer
|
|
184
198
|
#
|
185
199
|
# Capabilities specific to the `textDocument/rename` request.
|
186
200
|
#
|
187
|
-
# @return [RenameClientCapabilities]
|
201
|
+
# @return [RenameClientCapabilities | nil]
|
188
202
|
def rename
|
189
203
|
attributes.fetch(:rename)
|
190
204
|
end
|
191
205
|
|
192
|
-
#
|
193
|
-
# Capabilities specific to the `textDocument/publishDiagnostics`
|
194
|
-
# notification.
|
195
|
-
#
|
196
|
-
# @return [PublishDiagnosticsClientCapabilities]
|
197
|
-
def publish_diagnostics
|
198
|
-
attributes.fetch(:publishDiagnostics)
|
199
|
-
end
|
200
|
-
|
201
206
|
#
|
202
207
|
# Capabilities specific to the `textDocument/foldingRange` request.
|
203
208
|
#
|
204
|
-
# @
|
209
|
+
# @since 3.10.0
|
210
|
+
#
|
211
|
+
# @return [FoldingRangeClientCapabilities | nil]
|
205
212
|
def folding_range
|
206
213
|
attributes.fetch(:foldingRange)
|
207
214
|
end
|
@@ -209,43 +216,101 @@ module LanguageServer
|
|
209
216
|
#
|
210
217
|
# Capabilities specific to the `textDocument/selectionRange` request.
|
211
218
|
#
|
212
|
-
# @
|
219
|
+
# @since 3.15.0
|
220
|
+
#
|
221
|
+
# @return [SelectionRangeClientCapabilities | nil]
|
213
222
|
def selection_range
|
214
223
|
attributes.fetch(:selectionRange)
|
215
224
|
end
|
216
225
|
|
217
226
|
#
|
218
|
-
# Capabilities specific to the `textDocument/
|
227
|
+
# Capabilities specific to the `textDocument/publishDiagnostics` notification.
|
219
228
|
#
|
220
|
-
# @return [
|
221
|
-
def
|
222
|
-
attributes.fetch(:
|
229
|
+
# @return [PublishDiagnosticsClientCapabilities | nil]
|
230
|
+
def publish_diagnostics
|
231
|
+
attributes.fetch(:publishDiagnostics)
|
223
232
|
end
|
224
233
|
|
225
234
|
#
|
226
235
|
# Capabilities specific to the various call hierarchy requests.
|
227
236
|
#
|
228
|
-
# @
|
237
|
+
# @since 3.16.0
|
238
|
+
#
|
239
|
+
# @return [CallHierarchyClientCapabilities | nil]
|
229
240
|
def call_hierarchy
|
230
241
|
attributes.fetch(:callHierarchy)
|
231
242
|
end
|
232
243
|
|
233
244
|
#
|
234
|
-
# Capabilities specific to the various semantic token
|
245
|
+
# Capabilities specific to the various semantic token request.
|
235
246
|
#
|
236
|
-
# @
|
247
|
+
# @since 3.16.0
|
248
|
+
#
|
249
|
+
# @return [SemanticTokensClientCapabilities | nil]
|
237
250
|
def semantic_tokens
|
238
251
|
attributes.fetch(:semanticTokens)
|
239
252
|
end
|
240
253
|
|
241
254
|
#
|
242
|
-
# Capabilities specific to the `textDocument/
|
255
|
+
# Capabilities specific to the `textDocument/linkedEditingRange` request.
|
256
|
+
#
|
257
|
+
# @since 3.16.0
|
258
|
+
#
|
259
|
+
# @return [LinkedEditingRangeClientCapabilities | nil]
|
260
|
+
def linked_editing_range
|
261
|
+
attributes.fetch(:linkedEditingRange)
|
262
|
+
end
|
263
|
+
|
264
|
+
#
|
265
|
+
# Client capabilities specific to the `textDocument/moniker` request.
|
266
|
+
#
|
267
|
+
# @since 3.16.0
|
243
268
|
#
|
244
|
-
# @return [MonikerClientCapabilities]
|
269
|
+
# @return [MonikerClientCapabilities | nil]
|
245
270
|
def moniker
|
246
271
|
attributes.fetch(:moniker)
|
247
272
|
end
|
248
273
|
|
274
|
+
#
|
275
|
+
# Capabilities specific to the various type hierarchy requests.
|
276
|
+
#
|
277
|
+
# @since 3.17.0
|
278
|
+
#
|
279
|
+
# @return [TypeHierarchyClientCapabilities | nil]
|
280
|
+
def type_hierarchy
|
281
|
+
attributes.fetch(:typeHierarchy)
|
282
|
+
end
|
283
|
+
|
284
|
+
#
|
285
|
+
# Capabilities specific to the `textDocument/inlineValue` request.
|
286
|
+
#
|
287
|
+
# @since 3.17.0
|
288
|
+
#
|
289
|
+
# @return [InlineValueClientCapabilities | nil]
|
290
|
+
def inline_value
|
291
|
+
attributes.fetch(:inlineValue)
|
292
|
+
end
|
293
|
+
|
294
|
+
#
|
295
|
+
# Capabilities specific to the `textDocument/inlayHint` request.
|
296
|
+
#
|
297
|
+
# @since 3.17.0
|
298
|
+
#
|
299
|
+
# @return [InlayHintClientCapabilities | nil]
|
300
|
+
def inlay_hint
|
301
|
+
attributes.fetch(:inlayHint)
|
302
|
+
end
|
303
|
+
|
304
|
+
#
|
305
|
+
# Capabilities specific to the diagnostic pull model.
|
306
|
+
#
|
307
|
+
# @since 3.17.0
|
308
|
+
#
|
309
|
+
# @return [DiagnosticClientCapabilities | nil]
|
310
|
+
def diagnostic
|
311
|
+
attributes.fetch(:diagnostic)
|
312
|
+
end
|
313
|
+
|
249
314
|
attr_reader :attributes
|
250
315
|
|
251
316
|
def to_hash
|
@@ -2,14 +2,14 @@ module LanguageServer
|
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
4
|
#
|
5
|
-
# An event describing a change to a text document. If
|
6
|
-
#
|
5
|
+
# An event describing a change to a text document. If only a text is provided
|
6
|
+
# it is considered to be the full content of the document.
|
7
7
|
#
|
8
8
|
class TextDocumentContentChangeEvent
|
9
|
-
def initialize(range
|
9
|
+
def initialize(range:, range_length: nil, text:)
|
10
10
|
@attributes = {}
|
11
11
|
|
12
|
-
@attributes[:range] = range
|
12
|
+
@attributes[:range] = range
|
13
13
|
@attributes[:rangeLength] = range_length if range_length
|
14
14
|
@attributes[:text] = text
|
15
15
|
|
@@ -19,7 +19,7 @@ module LanguageServer
|
|
19
19
|
#
|
20
20
|
# The range of the document that changed.
|
21
21
|
#
|
22
|
-
# @return [Range
|
22
|
+
# @return [Range]
|
23
23
|
def range
|
24
24
|
attributes.fetch(:range)
|
25
25
|
end
|
@@ -27,7 +27,9 @@ module LanguageServer
|
|
27
27
|
#
|
28
28
|
# The optional length of the range that got replaced.
|
29
29
|
#
|
30
|
-
# @
|
30
|
+
# @deprecated use range instead.
|
31
|
+
#
|
32
|
+
# @return [uinteger | nil]
|
31
33
|
def range_length
|
32
34
|
attributes.fetch(:rangeLength)
|
33
35
|
end
|
@@ -35,10 +37,6 @@ module LanguageServer
|
|
35
37
|
#
|
36
38
|
# The new text for the provided range.
|
37
39
|
#
|
38
|
-
# --- OR ---
|
39
|
-
#
|
40
|
-
# The new text of the whole document.
|
41
|
-
#
|
42
40
|
# @return [string]
|
43
41
|
def text
|
44
42
|
attributes.fetch(:text)
|
@@ -1,6 +1,12 @@
|
|
1
1
|
module LanguageServer
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
|
+
#
|
5
|
+
# Describes textual changes on a text document. A TextDocumentEdit describes all changes
|
6
|
+
# on a document version Si and after they are applied move the document to version Si+1.
|
7
|
+
# So the creator of a TextDocumentEdit doesn't need to sort the array of edits or do any
|
8
|
+
# kind of ordering. However the edits must be non overlapping.
|
9
|
+
#
|
4
10
|
class TextDocumentEdit
|
5
11
|
def initialize(text_document:, edits:)
|
6
12
|
@attributes = {}
|
@@ -22,7 +28,10 @@ module LanguageServer
|
|
22
28
|
#
|
23
29
|
# The edits to be applied.
|
24
30
|
#
|
25
|
-
# @
|
31
|
+
# @since 3.16.0 - support for AnnotatedTextEdit. This is guarded using a
|
32
|
+
# client capability.
|
33
|
+
#
|
34
|
+
# @return [TextEdit | AnnotatedTextEdit[]]
|
26
35
|
def edits
|
27
36
|
attributes.fetch(:edits)
|
28
37
|
end
|
@@ -0,0 +1,69 @@
|
|
1
|
+
module LanguageServer
|
2
|
+
module Protocol
|
3
|
+
module Interface
|
4
|
+
#
|
5
|
+
# A document filter denotes a document by different properties like
|
6
|
+
# the [language](#TextDocument.languageId), the [scheme](#Uri.scheme) of
|
7
|
+
# its resource, or a glob-pattern that is applied to the [path](#TextDocument.fileName).
|
8
|
+
#
|
9
|
+
# Glob patterns can have the following syntax:
|
10
|
+
# - `*` to match one or more characters in a path segment
|
11
|
+
# - `?` to match on one character in a path segment
|
12
|
+
# - `**` to match any number of path segments, including none
|
13
|
+
# - `{}` to group sub patterns into an OR expression. (e.g. `**/*.{ts,js}` matches all TypeScript and JavaScript files)
|
14
|
+
# - `[]` to declare a range of characters to match in a path segment (e.g., `example.[0-9]` to match on `example.0`, `example.1`, …)
|
15
|
+
# - `[!...]` to negate a range of characters to match in a path segment (e.g., `example.[!0-9]` to match on `example.a`, `example.b`, but not `example.0`)
|
16
|
+
#
|
17
|
+
# @sample A language filter that applies to typescript files on disk: `{ language: 'typescript', scheme: 'file' }`
|
18
|
+
# @sample A language filter that applies to all package.json paths: `{ language: 'json', pattern: '**package.json' }`
|
19
|
+
#
|
20
|
+
# @since 3.17.0
|
21
|
+
#
|
22
|
+
class TextDocumentFilter
|
23
|
+
def initialize(language:, scheme: nil, pattern: nil)
|
24
|
+
@attributes = {}
|
25
|
+
|
26
|
+
@attributes[:language] = language
|
27
|
+
@attributes[:scheme] = scheme if scheme
|
28
|
+
@attributes[:pattern] = pattern if pattern
|
29
|
+
|
30
|
+
@attributes.freeze
|
31
|
+
end
|
32
|
+
|
33
|
+
#
|
34
|
+
# A language id, like `typescript`. */
|
35
|
+
#
|
36
|
+
# @return [string]
|
37
|
+
def language
|
38
|
+
attributes.fetch(:language)
|
39
|
+
end
|
40
|
+
|
41
|
+
#
|
42
|
+
# A Uri [scheme](#Uri.scheme), like `file` or `untitled`. */
|
43
|
+
#
|
44
|
+
# @return [string | nil]
|
45
|
+
def scheme
|
46
|
+
attributes.fetch(:scheme)
|
47
|
+
end
|
48
|
+
|
49
|
+
#
|
50
|
+
# A glob pattern, like `*.{ts,js}`. */
|
51
|
+
#
|
52
|
+
# @return [string | nil]
|
53
|
+
def pattern
|
54
|
+
attributes.fetch(:pattern)
|
55
|
+
end
|
56
|
+
|
57
|
+
attr_reader :attributes
|
58
|
+
|
59
|
+
def to_hash
|
60
|
+
attributes
|
61
|
+
end
|
62
|
+
|
63
|
+
def to_json(*args)
|
64
|
+
to_hash.to_json(*args)
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
@@ -1,6 +1,9 @@
|
|
1
1
|
module LanguageServer
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
|
+
#
|
5
|
+
# A literal to identify a text document in the client.
|
6
|
+
#
|
4
7
|
class TextDocumentIdentifier
|
5
8
|
def initialize(uri:)
|
6
9
|
@attributes = {}
|
@@ -11,9 +14,9 @@ module LanguageServer
|
|
11
14
|
end
|
12
15
|
|
13
16
|
#
|
14
|
-
# The text document's
|
17
|
+
# The text document's uri.
|
15
18
|
#
|
16
|
-
# @return [
|
19
|
+
# @return [DocumentUri]
|
17
20
|
def uri
|
18
21
|
attributes.fetch(:uri)
|
19
22
|
end
|
@@ -1,6 +1,10 @@
|
|
1
1
|
module LanguageServer
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
|
+
#
|
5
|
+
# An item to transfer a text document from the client to the
|
6
|
+
# server.
|
7
|
+
#
|
4
8
|
class TextDocumentItem
|
5
9
|
def initialize(uri:, language_id:, version:, text:)
|
6
10
|
@attributes = {}
|
@@ -14,9 +18,9 @@ module LanguageServer
|
|
14
18
|
end
|
15
19
|
|
16
20
|
#
|
17
|
-
# The text document's
|
21
|
+
# The text document's uri.
|
18
22
|
#
|
19
|
-
# @return [
|
23
|
+
# @return [DocumentUri]
|
20
24
|
def uri
|
21
25
|
attributes.fetch(:uri)
|
22
26
|
end
|
@@ -33,7 +37,7 @@ module LanguageServer
|
|
33
37
|
# The version number of this document (it will increase after each
|
34
38
|
# change, including undo/redo).
|
35
39
|
#
|
36
|
-
# @return [
|
40
|
+
# @return [integer]
|
37
41
|
def version
|
38
42
|
attributes.fetch(:version)
|
39
43
|
end
|
@@ -1,6 +1,10 @@
|
|
1
1
|
module LanguageServer
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
|
+
#
|
5
|
+
# A parameter literal used in requests to pass a text document and a position inside that
|
6
|
+
# document.
|
7
|
+
#
|
4
8
|
class TextDocumentPositionParams
|
5
9
|
def initialize(text_document:, position:)
|
6
10
|
@attributes = {}
|
@@ -14,10 +14,10 @@ module LanguageServer
|
|
14
14
|
end
|
15
15
|
|
16
16
|
#
|
17
|
-
# A document selector to identify the scope of the registration. If set to
|
18
|
-
#
|
17
|
+
# A document selector to identify the scope of the registration. If set to null
|
18
|
+
# the document selector provided on the client side will be used.
|
19
19
|
#
|
20
|
-
# @return [DocumentSelector]
|
20
|
+
# @return [DocumentSelector | null]
|
21
21
|
def document_selector
|
22
22
|
attributes.fetch(:documentSelector)
|
23
23
|
end
|
@@ -1,6 +1,9 @@
|
|
1
1
|
module LanguageServer
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
|
+
#
|
5
|
+
# Save registration options.
|
6
|
+
#
|
4
7
|
class TextDocumentSaveRegistrationOptions
|
5
8
|
def initialize(document_selector:, include_text: nil)
|
6
9
|
@attributes = {}
|
@@ -12,10 +15,10 @@ module LanguageServer
|
|
12
15
|
end
|
13
16
|
|
14
17
|
#
|
15
|
-
# A document selector to identify the scope of the registration. If set to
|
16
|
-
#
|
18
|
+
# A document selector to identify the scope of the registration. If set to null
|
19
|
+
# the document selector provided on the client side will be used.
|
17
20
|
#
|
18
|
-
# @return [DocumentSelector]
|
21
|
+
# @return [DocumentSelector | null]
|
19
22
|
def document_selector
|
20
23
|
attributes.fetch(:documentSelector)
|
21
24
|
end
|
@@ -23,7 +26,7 @@ module LanguageServer
|
|
23
26
|
#
|
24
27
|
# The client is supposed to include the content on save.
|
25
28
|
#
|
26
|
-
# @return [boolean]
|
29
|
+
# @return [boolean | nil]
|
27
30
|
def include_text
|
28
31
|
attributes.fetch(:includeText)
|
29
32
|
end
|
@@ -16,7 +16,7 @@ module LanguageServer
|
|
16
16
|
#
|
17
17
|
# Whether text document synchronization supports dynamic registration.
|
18
18
|
#
|
19
|
-
# @return [boolean]
|
19
|
+
# @return [boolean | nil]
|
20
20
|
def dynamic_registration
|
21
21
|
attributes.fetch(:dynamicRegistration)
|
22
22
|
end
|
@@ -24,7 +24,7 @@ module LanguageServer
|
|
24
24
|
#
|
25
25
|
# The client supports sending will save notifications.
|
26
26
|
#
|
27
|
-
# @return [boolean]
|
27
|
+
# @return [boolean | nil]
|
28
28
|
def will_save
|
29
29
|
attributes.fetch(:willSave)
|
30
30
|
end
|
@@ -34,7 +34,7 @@ module LanguageServer
|
|
34
34
|
# waits for a response providing text edits which will
|
35
35
|
# be applied to the document before it is saved.
|
36
36
|
#
|
37
|
-
# @return [boolean]
|
37
|
+
# @return [boolean | nil]
|
38
38
|
def will_save_wait_until
|
39
39
|
attributes.fetch(:willSaveWaitUntil)
|
40
40
|
end
|
@@ -42,7 +42,7 @@ module LanguageServer
|
|
42
42
|
#
|
43
43
|
# The client supports did save notifications.
|
44
44
|
#
|
45
|
-
# @return [boolean]
|
45
|
+
# @return [boolean | nil]
|
46
46
|
def did_save
|
47
47
|
attributes.fetch(:didSave)
|
48
48
|
end
|