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
@@ -17,7 +17,7 @@ module LanguageServer
|
|
17
17
|
#
|
18
18
|
# The client supports versioned document changes in `WorkspaceEdit`s
|
19
19
|
#
|
20
|
-
# @return [boolean]
|
20
|
+
# @return [boolean | nil]
|
21
21
|
def document_changes
|
22
22
|
attributes.fetch(:documentChanges)
|
23
23
|
end
|
@@ -26,7 +26,9 @@ module LanguageServer
|
|
26
26
|
# The resource operations the client supports. Clients should at least
|
27
27
|
# support 'create', 'rename' and 'delete' files and folders.
|
28
28
|
#
|
29
|
-
# @
|
29
|
+
# @since 3.13.0
|
30
|
+
#
|
31
|
+
# @return [ResourceOperationKind[] | nil]
|
30
32
|
def resource_operations
|
31
33
|
attributes.fetch(:resourceOperations)
|
32
34
|
end
|
@@ -35,7 +37,9 @@ module LanguageServer
|
|
35
37
|
# The failure handling strategy of a client if applying the workspace edit
|
36
38
|
# fails.
|
37
39
|
#
|
38
|
-
# @
|
40
|
+
# @since 3.13.0
|
41
|
+
#
|
42
|
+
# @return [FailureHandlingKind | nil]
|
39
43
|
def failure_handling
|
40
44
|
attributes.fetch(:failureHandling)
|
41
45
|
end
|
@@ -44,9 +48,12 @@ module LanguageServer
|
|
44
48
|
# Whether the client normalizes line endings to the client specific
|
45
49
|
# setting.
|
46
50
|
# If set to `true` the client will normalize line ending characters
|
47
|
-
# in a workspace edit to the client
|
51
|
+
# in a workspace edit to the client-specified new line
|
52
|
+
# character.
|
48
53
|
#
|
49
|
-
# @
|
54
|
+
# @since 3.16.0
|
55
|
+
#
|
56
|
+
# @return [boolean | nil]
|
50
57
|
def normalizes_line_endings
|
51
58
|
attributes.fetch(:normalizesLineEndings)
|
52
59
|
end
|
@@ -55,7 +62,9 @@ module LanguageServer
|
|
55
62
|
# Whether the client in general supports change annotations on text edits,
|
56
63
|
# create file, rename file and delete file changes.
|
57
64
|
#
|
58
|
-
# @
|
65
|
+
# @since 3.16.0
|
66
|
+
#
|
67
|
+
# @return [{ groupsOnLabel:boolean } | nil]
|
59
68
|
def change_annotation_support
|
60
69
|
attributes.fetch(:changeAnnotationSupport)
|
61
70
|
end
|
@@ -1,6 +1,9 @@
|
|
1
1
|
module LanguageServer
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
|
+
#
|
5
|
+
# A workspace folder inside a client.
|
6
|
+
#
|
4
7
|
class WorkspaceFolder
|
5
8
|
def initialize(uri:, name:)
|
6
9
|
@attributes = {}
|
@@ -14,7 +17,7 @@ module LanguageServer
|
|
14
17
|
#
|
15
18
|
# The associated URI for this workspace folder.
|
16
19
|
#
|
17
|
-
# @return [
|
20
|
+
# @return [URI]
|
18
21
|
def uri
|
19
22
|
attributes.fetch(:uri)
|
20
23
|
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
module LanguageServer
|
2
|
+
module Protocol
|
3
|
+
module Interface
|
4
|
+
class WorkspaceFoldersInitializeParams
|
5
|
+
def initialize(workspace_folders: nil)
|
6
|
+
@attributes = {}
|
7
|
+
|
8
|
+
@attributes[:workspaceFolders] = workspace_folders if workspace_folders
|
9
|
+
|
10
|
+
@attributes.freeze
|
11
|
+
end
|
12
|
+
|
13
|
+
#
|
14
|
+
# The workspace folders configured in the client when the server starts.
|
15
|
+
#
|
16
|
+
# This property is only available if the client supports workspace folders.
|
17
|
+
# It can be `null` if the client supports workspace folders but none are
|
18
|
+
# configured.
|
19
|
+
#
|
20
|
+
# @since 3.6.0
|
21
|
+
#
|
22
|
+
# @return [WorkspaceFolder[] | null]
|
23
|
+
def workspace_folders
|
24
|
+
attributes.fetch(:workspaceFolders)
|
25
|
+
end
|
26
|
+
|
27
|
+
attr_reader :attributes
|
28
|
+
|
29
|
+
def to_hash
|
30
|
+
attributes
|
31
|
+
end
|
32
|
+
|
33
|
+
def to_json(*args)
|
34
|
+
to_hash.to_json(*args)
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
@@ -14,7 +14,7 @@ module LanguageServer
|
|
14
14
|
#
|
15
15
|
# The server has support for workspace folders
|
16
16
|
#
|
17
|
-
# @return [boolean]
|
17
|
+
# @return [boolean | nil]
|
18
18
|
def supported
|
19
19
|
attributes.fetch(:supported)
|
20
20
|
end
|
@@ -23,12 +23,12 @@ module LanguageServer
|
|
23
23
|
# Whether the server wants to receive workspace folder
|
24
24
|
# change notifications.
|
25
25
|
#
|
26
|
-
# If a string is provided
|
26
|
+
# If a string is provided the string is treated as an ID
|
27
27
|
# under which the notification is registered on the client
|
28
28
|
# side. The ID can be used to unregister for these events
|
29
29
|
# using the `client/unregisterCapability` request.
|
30
30
|
#
|
31
|
-
# @return [string | boolean]
|
31
|
+
# @return [string | boolean | nil]
|
32
32
|
def change_notifications
|
33
33
|
attributes.fetch(:changeNotifications)
|
34
34
|
end
|
@@ -0,0 +1,77 @@
|
|
1
|
+
module LanguageServer
|
2
|
+
module Protocol
|
3
|
+
module Interface
|
4
|
+
#
|
5
|
+
# A full document diagnostic report for a workspace diagnostic result.
|
6
|
+
#
|
7
|
+
# @since 3.17.0
|
8
|
+
#
|
9
|
+
class WorkspaceFullDocumentDiagnosticReport
|
10
|
+
def initialize(uri:, version:, kind:, result_id: nil, items:)
|
11
|
+
@attributes = {}
|
12
|
+
|
13
|
+
@attributes[:uri] = uri
|
14
|
+
@attributes[:version] = version
|
15
|
+
@attributes[:kind] = kind
|
16
|
+
@attributes[:resultId] = result_id if result_id
|
17
|
+
@attributes[:items] = items
|
18
|
+
|
19
|
+
@attributes.freeze
|
20
|
+
end
|
21
|
+
|
22
|
+
#
|
23
|
+
# The URI for which diagnostic information is reported.
|
24
|
+
#
|
25
|
+
# @return [DocumentUri]
|
26
|
+
def uri
|
27
|
+
attributes.fetch(:uri)
|
28
|
+
end
|
29
|
+
|
30
|
+
#
|
31
|
+
# The version number for which the diagnostics are reported.
|
32
|
+
# If the document is not marked as open `null` can be provided.
|
33
|
+
#
|
34
|
+
# @return [integer | null]
|
35
|
+
def version
|
36
|
+
attributes.fetch(:version)
|
37
|
+
end
|
38
|
+
|
39
|
+
#
|
40
|
+
# A full document diagnostic report.
|
41
|
+
#
|
42
|
+
# @return ["full"]
|
43
|
+
def kind
|
44
|
+
attributes.fetch(:kind)
|
45
|
+
end
|
46
|
+
|
47
|
+
#
|
48
|
+
# An optional result id. If provided it will
|
49
|
+
# be sent on the next diagnostic request for the
|
50
|
+
# same document.
|
51
|
+
#
|
52
|
+
# @return [string | nil]
|
53
|
+
def result_id
|
54
|
+
attributes.fetch(:resultId)
|
55
|
+
end
|
56
|
+
|
57
|
+
#
|
58
|
+
# The actual items.
|
59
|
+
#
|
60
|
+
# @return [Diagnostic[]]
|
61
|
+
def items
|
62
|
+
attributes.fetch(:items)
|
63
|
+
end
|
64
|
+
|
65
|
+
attr_reader :attributes
|
66
|
+
|
67
|
+
def to_hash
|
68
|
+
attributes
|
69
|
+
end
|
70
|
+
|
71
|
+
def to_json(*args)
|
72
|
+
to_hash.to_json(*args)
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
76
|
+
end
|
77
|
+
end
|
@@ -0,0 +1,95 @@
|
|
1
|
+
module LanguageServer
|
2
|
+
module Protocol
|
3
|
+
module Interface
|
4
|
+
#
|
5
|
+
# A special workspace symbol that supports locations without a range.
|
6
|
+
#
|
7
|
+
# See also SymbolInformation.
|
8
|
+
#
|
9
|
+
# @since 3.17.0
|
10
|
+
#
|
11
|
+
class WorkspaceSymbol
|
12
|
+
def initialize(location:, data: nil, name:, kind:, tags: nil, container_name: nil)
|
13
|
+
@attributes = {}
|
14
|
+
|
15
|
+
@attributes[:location] = location
|
16
|
+
@attributes[:data] = data if data
|
17
|
+
@attributes[:name] = name
|
18
|
+
@attributes[:kind] = kind
|
19
|
+
@attributes[:tags] = tags if tags
|
20
|
+
@attributes[:containerName] = container_name if container_name
|
21
|
+
|
22
|
+
@attributes.freeze
|
23
|
+
end
|
24
|
+
|
25
|
+
#
|
26
|
+
# The location of the symbol. Whether a server is allowed to
|
27
|
+
# return a location without a range depends on the client
|
28
|
+
# capability `workspace.symbol.resolveSupport`.
|
29
|
+
#
|
30
|
+
# See SymbolInformation#location for more details.
|
31
|
+
#
|
32
|
+
# @return [Location | { uri:DocumentUri }]
|
33
|
+
def location
|
34
|
+
attributes.fetch(:location)
|
35
|
+
end
|
36
|
+
|
37
|
+
#
|
38
|
+
# A data entry field that is preserved on a workspace symbol between a
|
39
|
+
# workspace symbol request and a workspace symbol resolve request.
|
40
|
+
#
|
41
|
+
# @return [LSPAny | nil]
|
42
|
+
def data
|
43
|
+
attributes.fetch(:data)
|
44
|
+
end
|
45
|
+
|
46
|
+
#
|
47
|
+
# The name of this symbol.
|
48
|
+
#
|
49
|
+
# @return [string]
|
50
|
+
def name
|
51
|
+
attributes.fetch(:name)
|
52
|
+
end
|
53
|
+
|
54
|
+
#
|
55
|
+
# The kind of this symbol.
|
56
|
+
#
|
57
|
+
# @return [SymbolKind]
|
58
|
+
def kind
|
59
|
+
attributes.fetch(:kind)
|
60
|
+
end
|
61
|
+
|
62
|
+
#
|
63
|
+
# Tags for this symbol.
|
64
|
+
#
|
65
|
+
# @since 3.16.0
|
66
|
+
#
|
67
|
+
# @return [SymbolTag[] | nil]
|
68
|
+
def tags
|
69
|
+
attributes.fetch(:tags)
|
70
|
+
end
|
71
|
+
|
72
|
+
#
|
73
|
+
# The name of the symbol containing this symbol. This information is for
|
74
|
+
# user interface purposes (e.g. to render a qualifier in the user interface
|
75
|
+
# if necessary). It can't be used to re-infer a hierarchy for the document
|
76
|
+
# symbols.
|
77
|
+
#
|
78
|
+
# @return [string | nil]
|
79
|
+
def container_name
|
80
|
+
attributes.fetch(:containerName)
|
81
|
+
end
|
82
|
+
|
83
|
+
attr_reader :attributes
|
84
|
+
|
85
|
+
def to_hash
|
86
|
+
attributes
|
87
|
+
end
|
88
|
+
|
89
|
+
def to_json(*args)
|
90
|
+
to_hash.to_json(*args)
|
91
|
+
end
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
95
|
+
end
|
@@ -1,13 +1,17 @@
|
|
1
1
|
module LanguageServer
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
|
+
#
|
5
|
+
# Client capabilities for a [WorkspaceSymbolRequest](#WorkspaceSymbolRequest).
|
6
|
+
#
|
4
7
|
class WorkspaceSymbolClientCapabilities
|
5
|
-
def initialize(dynamic_registration: nil, symbol_kind: nil, tag_support: nil)
|
8
|
+
def initialize(dynamic_registration: nil, symbol_kind: nil, tag_support: nil, resolve_support: nil)
|
6
9
|
@attributes = {}
|
7
10
|
|
8
11
|
@attributes[:dynamicRegistration] = dynamic_registration if dynamic_registration
|
9
12
|
@attributes[:symbolKind] = symbol_kind if symbol_kind
|
10
13
|
@attributes[:tagSupport] = tag_support if tag_support
|
14
|
+
@attributes[:resolveSupport] = resolve_support if resolve_support
|
11
15
|
|
12
16
|
@attributes.freeze
|
13
17
|
end
|
@@ -15,16 +19,15 @@ module LanguageServer
|
|
15
19
|
#
|
16
20
|
# Symbol request supports dynamic registration.
|
17
21
|
#
|
18
|
-
# @return [boolean]
|
22
|
+
# @return [boolean | nil]
|
19
23
|
def dynamic_registration
|
20
24
|
attributes.fetch(:dynamicRegistration)
|
21
25
|
end
|
22
26
|
|
23
27
|
#
|
24
|
-
# Specific capabilities for the `SymbolKind` in the `workspace/symbol`
|
25
|
-
# request.
|
28
|
+
# Specific capabilities for the `SymbolKind` in the `workspace/symbol` request.
|
26
29
|
#
|
27
|
-
# @return [{ valueSet
|
30
|
+
# @return [{ valueSet:SymbolKind[] } | nil]
|
28
31
|
def symbol_kind
|
29
32
|
attributes.fetch(:symbolKind)
|
30
33
|
end
|
@@ -33,11 +36,25 @@ module LanguageServer
|
|
33
36
|
# The client supports tags on `SymbolInformation`.
|
34
37
|
# Clients supporting tags have to handle unknown tags gracefully.
|
35
38
|
#
|
36
|
-
# @
|
39
|
+
# @since 3.16.0
|
40
|
+
#
|
41
|
+
# @return [{ valueSet:SymbolTag[] } | nil]
|
37
42
|
def tag_support
|
38
43
|
attributes.fetch(:tagSupport)
|
39
44
|
end
|
40
45
|
|
46
|
+
#
|
47
|
+
# The client support partial workspace symbols. The client will send the
|
48
|
+
# request `workspaceSymbol/resolve` to the server to resolve additional
|
49
|
+
# properties.
|
50
|
+
#
|
51
|
+
# @since 3.17.0
|
52
|
+
#
|
53
|
+
# @return [{ properties:string[] } | nil]
|
54
|
+
def resolve_support
|
55
|
+
attributes.fetch(:resolveSupport)
|
56
|
+
end
|
57
|
+
|
41
58
|
attr_reader :attributes
|
42
59
|
|
43
60
|
def to_hash
|
@@ -1,16 +1,31 @@
|
|
1
1
|
module LanguageServer
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
|
+
#
|
5
|
+
# Server capabilities for a [WorkspaceSymbolRequest](#WorkspaceSymbolRequest).
|
6
|
+
#
|
4
7
|
class WorkspaceSymbolOptions
|
5
|
-
def initialize(work_done_progress: nil)
|
8
|
+
def initialize(resolve_provider: nil, work_done_progress: nil)
|
6
9
|
@attributes = {}
|
7
10
|
|
11
|
+
@attributes[:resolveProvider] = resolve_provider if resolve_provider
|
8
12
|
@attributes[:workDoneProgress] = work_done_progress if work_done_progress
|
9
13
|
|
10
14
|
@attributes.freeze
|
11
15
|
end
|
12
16
|
|
13
|
-
#
|
17
|
+
#
|
18
|
+
# The server provides support to resolve additional
|
19
|
+
# information for a workspace symbol.
|
20
|
+
#
|
21
|
+
# @since 3.17.0
|
22
|
+
#
|
23
|
+
# @return [boolean | nil]
|
24
|
+
def resolve_provider
|
25
|
+
attributes.fetch(:resolveProvider)
|
26
|
+
end
|
27
|
+
|
28
|
+
# @return [boolean | nil]
|
14
29
|
def work_done_progress
|
15
30
|
attributes.fetch(:workDoneProgress)
|
16
31
|
end
|
@@ -2,45 +2,45 @@ module LanguageServer
|
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
4
|
#
|
5
|
-
# The parameters of a
|
5
|
+
# The parameters of a [WorkspaceSymbolRequest](#WorkspaceSymbolRequest).
|
6
6
|
#
|
7
7
|
class WorkspaceSymbolParams
|
8
|
-
def initialize(work_done_token: nil, partial_result_token: nil
|
8
|
+
def initialize(query:, work_done_token: nil, partial_result_token: nil)
|
9
9
|
@attributes = {}
|
10
10
|
|
11
|
+
@attributes[:query] = query
|
11
12
|
@attributes[:workDoneToken] = work_done_token if work_done_token
|
12
13
|
@attributes[:partialResultToken] = partial_result_token if partial_result_token
|
13
|
-
@attributes[:query] = query
|
14
14
|
|
15
15
|
@attributes.freeze
|
16
16
|
end
|
17
17
|
|
18
|
+
#
|
19
|
+
# A query string to filter symbols by. Clients may send an empty
|
20
|
+
# string here to request all symbols.
|
21
|
+
#
|
22
|
+
# @return [string]
|
23
|
+
def query
|
24
|
+
attributes.fetch(:query)
|
25
|
+
end
|
26
|
+
|
18
27
|
#
|
19
28
|
# An optional token that a server can use to report work done progress.
|
20
29
|
#
|
21
|
-
# @return [ProgressToken]
|
30
|
+
# @return [ProgressToken | nil]
|
22
31
|
def work_done_token
|
23
32
|
attributes.fetch(:workDoneToken)
|
24
33
|
end
|
25
34
|
|
26
35
|
#
|
27
|
-
# An optional token that a server can use to report partial results (e.g.
|
28
|
-
#
|
36
|
+
# An optional token that a server can use to report partial results (e.g. streaming) to
|
37
|
+
# the client.
|
29
38
|
#
|
30
|
-
# @return [ProgressToken]
|
39
|
+
# @return [ProgressToken | nil]
|
31
40
|
def partial_result_token
|
32
41
|
attributes.fetch(:partialResultToken)
|
33
42
|
end
|
34
43
|
|
35
|
-
#
|
36
|
-
# A query string to filter symbols by. Clients may send an empty
|
37
|
-
# string here to request all symbols.
|
38
|
-
#
|
39
|
-
# @return [string]
|
40
|
-
def query
|
41
|
-
attributes.fetch(:query)
|
42
|
-
end
|
43
|
-
|
44
44
|
attr_reader :attributes
|
45
45
|
|
46
46
|
def to_hash
|
@@ -1,16 +1,31 @@
|
|
1
1
|
module LanguageServer
|
2
2
|
module Protocol
|
3
3
|
module Interface
|
4
|
+
#
|
5
|
+
# Registration options for a [WorkspaceSymbolRequest](#WorkspaceSymbolRequest).
|
6
|
+
#
|
4
7
|
class WorkspaceSymbolRegistrationOptions
|
5
|
-
def initialize(work_done_progress: nil)
|
8
|
+
def initialize(resolve_provider: nil, work_done_progress: nil)
|
6
9
|
@attributes = {}
|
7
10
|
|
11
|
+
@attributes[:resolveProvider] = resolve_provider if resolve_provider
|
8
12
|
@attributes[:workDoneProgress] = work_done_progress if work_done_progress
|
9
13
|
|
10
14
|
@attributes.freeze
|
11
15
|
end
|
12
16
|
|
13
|
-
#
|
17
|
+
#
|
18
|
+
# The server provides support to resolve additional
|
19
|
+
# information for a workspace symbol.
|
20
|
+
#
|
21
|
+
# @since 3.17.0
|
22
|
+
#
|
23
|
+
# @return [boolean | nil]
|
24
|
+
def resolve_provider
|
25
|
+
attributes.fetch(:resolveProvider)
|
26
|
+
end
|
27
|
+
|
28
|
+
# @return [boolean | nil]
|
14
29
|
def work_done_progress
|
15
30
|
attributes.fetch(:workDoneProgress)
|
16
31
|
end
|
@@ -0,0 +1,70 @@
|
|
1
|
+
module LanguageServer
|
2
|
+
module Protocol
|
3
|
+
module Interface
|
4
|
+
#
|
5
|
+
# An unchanged document diagnostic report for a workspace diagnostic result.
|
6
|
+
#
|
7
|
+
# @since 3.17.0
|
8
|
+
#
|
9
|
+
class WorkspaceUnchangedDocumentDiagnosticReport
|
10
|
+
def initialize(uri:, version:, kind:, result_id:)
|
11
|
+
@attributes = {}
|
12
|
+
|
13
|
+
@attributes[:uri] = uri
|
14
|
+
@attributes[:version] = version
|
15
|
+
@attributes[:kind] = kind
|
16
|
+
@attributes[:resultId] = result_id
|
17
|
+
|
18
|
+
@attributes.freeze
|
19
|
+
end
|
20
|
+
|
21
|
+
#
|
22
|
+
# The URI for which diagnostic information is reported.
|
23
|
+
#
|
24
|
+
# @return [DocumentUri]
|
25
|
+
def uri
|
26
|
+
attributes.fetch(:uri)
|
27
|
+
end
|
28
|
+
|
29
|
+
#
|
30
|
+
# The version number for which the diagnostics are reported.
|
31
|
+
# If the document is not marked as open `null` can be provided.
|
32
|
+
#
|
33
|
+
# @return [integer | null]
|
34
|
+
def version
|
35
|
+
attributes.fetch(:version)
|
36
|
+
end
|
37
|
+
|
38
|
+
#
|
39
|
+
# A document diagnostic report indicating
|
40
|
+
# no changes to the last result. A server can
|
41
|
+
# only return `unchanged` if result ids are
|
42
|
+
# provided.
|
43
|
+
#
|
44
|
+
# @return ["unchanged"]
|
45
|
+
def kind
|
46
|
+
attributes.fetch(:kind)
|
47
|
+
end
|
48
|
+
|
49
|
+
#
|
50
|
+
# A result id which will be sent on the next
|
51
|
+
# diagnostic request for the same document.
|
52
|
+
#
|
53
|
+
# @return [string]
|
54
|
+
def result_id
|
55
|
+
attributes.fetch(:resultId)
|
56
|
+
end
|
57
|
+
|
58
|
+
attr_reader :attributes
|
59
|
+
|
60
|
+
def to_hash
|
61
|
+
attributes
|
62
|
+
end
|
63
|
+
|
64
|
+
def to_json(*args)
|
65
|
+
to_hash.to_json(*args)
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
70
|
+
end
|