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.
Files changed (358) hide show
  1. checksums.yaml +4 -4
  2. data/lib/language_server/protocol/constant/code_action_kind.rb +25 -24
  3. data/lib/language_server/protocol/constant/code_action_trigger_kind.rb +24 -0
  4. data/lib/language_server/protocol/constant/completion_item_tag.rb +4 -2
  5. data/lib/language_server/protocol/constant/completion_trigger_kind.rb +2 -3
  6. data/lib/language_server/protocol/constant/diagnostic_severity.rb +3 -0
  7. data/lib/language_server/protocol/constant/diagnostic_tag.rb +4 -2
  8. data/lib/language_server/protocol/constant/error_codes.rb +19 -14
  9. data/lib/language_server/protocol/constant/failure_handling_kind.rb +9 -10
  10. data/lib/language_server/protocol/constant/file_change_type.rb +1 -1
  11. data/lib/language_server/protocol/constant/file_operation_pattern_kind.rb +4 -2
  12. data/lib/language_server/protocol/constant/folding_range_kind.rb +23 -0
  13. data/lib/language_server/protocol/constant/inlay_hint_kind.rb +21 -0
  14. data/lib/language_server/protocol/constant/insert_text_format.rb +2 -0
  15. data/lib/language_server/protocol/constant/insert_text_mode.rb +2 -0
  16. data/lib/language_server/protocol/constant/lsp_error_codes.rb +55 -0
  17. data/lib/language_server/protocol/constant/markup_kind.rb +2 -2
  18. data/lib/language_server/protocol/constant/message_type.rb +3 -0
  19. data/lib/language_server/protocol/constant/moniker_kind.rb +26 -0
  20. data/lib/language_server/protocol/constant/notebook_cell_kind.rb +21 -0
  21. data/lib/language_server/protocol/constant/position_encoding_kind.rb +32 -0
  22. data/lib/language_server/protocol/constant/resource_operation_kind.rb +3 -6
  23. data/lib/language_server/protocol/constant/semantic_token_modifiers.rb +25 -0
  24. data/lib/language_server/protocol/constant/semantic_token_types.rb +45 -0
  25. data/lib/language_server/protocol/constant/signature_help_trigger_kind.rb +3 -2
  26. data/lib/language_server/protocol/constant/symbol_tag.rb +2 -0
  27. data/lib/language_server/protocol/constant/text_document_save_reason.rb +2 -2
  28. data/lib/language_server/protocol/constant/text_document_sync_kind.rb +3 -3
  29. data/lib/language_server/protocol/constant/token_format.rb +1 -1
  30. data/lib/language_server/protocol/constant/trace_values.rb +20 -0
  31. data/lib/language_server/protocol/constant/uniqueness_level.rb +33 -0
  32. data/lib/language_server/protocol/constant.rb +22 -4
  33. data/lib/language_server/protocol/interface/annotated_text_edit.rb +12 -10
  34. data/lib/language_server/protocol/interface/apply_workspace_edit_params.rb +4 -1
  35. data/lib/language_server/protocol/interface/{apply_workspace_edit_response.rb → apply_workspace_edit_result.rb} +11 -7
  36. data/lib/language_server/protocol/interface/base_symbol_information.rb +68 -0
  37. data/lib/language_server/protocol/interface/call_hierarchy_client_capabilities.rb +7 -5
  38. data/lib/language_server/protocol/interface/call_hierarchy_incoming_call.rb +5 -0
  39. data/lib/language_server/protocol/interface/call_hierarchy_incoming_calls_params.rb +16 -11
  40. data/lib/language_server/protocol/interface/call_hierarchy_item.rb +14 -10
  41. data/lib/language_server/protocol/interface/call_hierarchy_options.rb +6 -1
  42. data/lib/language_server/protocol/interface/call_hierarchy_outgoing_call.rb +8 -2
  43. data/lib/language_server/protocol/interface/call_hierarchy_outgoing_calls_params.rb +16 -11
  44. data/lib/language_server/protocol/interface/call_hierarchy_prepare_params.rb +6 -1
  45. data/lib/language_server/protocol/interface/call_hierarchy_registration_options.rb +10 -5
  46. data/lib/language_server/protocol/interface/cancel_params.rb +1 -1
  47. data/lib/language_server/protocol/interface/change_annotation.rb +4 -2
  48. data/lib/language_server/protocol/interface/client_capabilities.rb +22 -6
  49. data/lib/language_server/protocol/interface/code_action.rb +28 -26
  50. data/lib/language_server/protocol/interface/code_action_client_capabilities.rb +25 -9
  51. data/lib/language_server/protocol/interface/code_action_context.rb +20 -10
  52. data/lib/language_server/protocol/interface/code_action_options.rb +16 -11
  53. data/lib/language_server/protocol/interface/code_action_params.rb +21 -21
  54. data/lib/language_server/protocol/interface/code_action_registration_options.rb +19 -14
  55. data/lib/language_server/protocol/interface/code_description.rb +3 -1
  56. data/lib/language_server/protocol/interface/code_lens.rb +8 -9
  57. data/lib/language_server/protocol/interface/code_lens_client_capabilities.rb +4 -1
  58. data/lib/language_server/protocol/interface/code_lens_options.rb +11 -8
  59. data/lib/language_server/protocol/interface/code_lens_params.rb +17 -14
  60. data/lib/language_server/protocol/interface/code_lens_registration_options.rb +14 -11
  61. data/lib/language_server/protocol/interface/code_lens_workspace_client_capabilities.rb +4 -1
  62. data/lib/language_server/protocol/interface/color.rb +4 -4
  63. data/lib/language_server/protocol/interface/color_information.rb +3 -0
  64. data/lib/language_server/protocol/interface/color_presentation.rb +8 -9
  65. data/lib/language_server/protocol/interface/color_presentation_params.rb +24 -21
  66. data/lib/language_server/protocol/interface/command.rb +7 -1
  67. data/lib/language_server/protocol/interface/completion_client_capabilities.rb +33 -5
  68. data/lib/language_server/protocol/interface/completion_context.rb +4 -6
  69. data/lib/language_server/protocol/interface/completion_item.rb +92 -49
  70. data/lib/language_server/protocol/interface/completion_item_label_details.rb +49 -0
  71. data/lib/language_server/protocol/interface/completion_list.rb +28 -5
  72. data/lib/language_server/protocol/interface/completion_options.rb +36 -25
  73. data/lib/language_server/protocol/interface/completion_params.rb +18 -16
  74. data/lib/language_server/protocol/interface/completion_registration_options.rb +42 -28
  75. data/lib/language_server/protocol/interface/configuration_item.rb +2 -2
  76. data/lib/language_server/protocol/interface/configuration_params.rb +3 -0
  77. data/lib/language_server/protocol/interface/create_file.rb +7 -5
  78. data/lib/language_server/protocol/interface/create_file_options.rb +2 -2
  79. data/lib/language_server/protocol/interface/create_files_params.rb +4 -2
  80. data/lib/language_server/protocol/interface/declaration_client_capabilities.rb +8 -5
  81. data/lib/language_server/protocol/interface/declaration_options.rb +1 -1
  82. data/lib/language_server/protocol/interface/declaration_params.rb +4 -4
  83. data/lib/language_server/protocol/interface/declaration_registration_options.rb +5 -5
  84. data/lib/language_server/protocol/interface/definition_client_capabilities.rb +7 -2
  85. data/lib/language_server/protocol/interface/definition_options.rb +4 -1
  86. data/lib/language_server/protocol/interface/definition_params.rb +7 -4
  87. data/lib/language_server/protocol/interface/definition_registration_options.rb +7 -4
  88. data/lib/language_server/protocol/interface/delete_file.rb +6 -4
  89. data/lib/language_server/protocol/interface/delete_file_options.rb +2 -2
  90. data/lib/language_server/protocol/interface/delete_files_params.rb +4 -2
  91. data/lib/language_server/protocol/interface/diagnostic.rb +25 -14
  92. data/lib/language_server/protocol/interface/diagnostic_client_capabilities.rb +49 -0
  93. data/lib/language_server/protocol/interface/diagnostic_options.rb +66 -0
  94. data/lib/language_server/protocol/interface/diagnostic_registration_options.rb +86 -0
  95. data/lib/language_server/protocol/interface/diagnostic_related_information.rb +3 -3
  96. data/lib/language_server/protocol/interface/diagnostic_server_cancellation_data.rb +35 -0
  97. data/lib/language_server/protocol/interface/diagnostic_workspace_client_capabilities.rb +44 -0
  98. data/lib/language_server/protocol/interface/did_change_configuration_client_capabilities.rb +1 -1
  99. data/lib/language_server/protocol/interface/did_change_configuration_params.rb +4 -1
  100. data/lib/language_server/protocol/interface/did_change_configuration_registration_options.rb +30 -0
  101. data/lib/language_server/protocol/interface/did_change_notebook_document_params.rb +62 -0
  102. data/lib/language_server/protocol/interface/did_change_text_document_params.rb +12 -11
  103. data/lib/language_server/protocol/interface/did_change_watched_files_client_capabilities.rb +17 -5
  104. data/lib/language_server/protocol/interface/did_change_watched_files_params.rb +3 -0
  105. data/lib/language_server/protocol/interface/did_change_watched_files_registration_options.rb +1 -1
  106. data/lib/language_server/protocol/interface/did_change_workspace_folders_params.rb +3 -0
  107. data/lib/language_server/protocol/interface/did_close_notebook_document_params.rb +48 -0
  108. data/lib/language_server/protocol/interface/did_close_text_document_params.rb +3 -0
  109. data/lib/language_server/protocol/interface/did_open_notebook_document_params.rb +48 -0
  110. data/lib/language_server/protocol/interface/did_open_text_document_params.rb +3 -0
  111. data/lib/language_server/protocol/interface/did_save_notebook_document_params.rb +38 -0
  112. data/lib/language_server/protocol/interface/did_save_text_document_params.rb +4 -1
  113. data/lib/language_server/protocol/interface/document_color_client_capabilities.rb +4 -2
  114. data/lib/language_server/protocol/interface/document_color_options.rb +1 -1
  115. data/lib/language_server/protocol/interface/document_color_params.rb +17 -14
  116. data/lib/language_server/protocol/interface/document_color_registration_options.rb +11 -11
  117. data/lib/language_server/protocol/interface/document_diagnostic_params.rb +75 -0
  118. data/lib/language_server/protocol/interface/document_diagnostic_report.rb +77 -0
  119. data/lib/language_server/protocol/interface/document_diagnostic_report_partial_result.rb +35 -0
  120. data/lib/language_server/protocol/interface/document_filter.rb +25 -19
  121. data/lib/language_server/protocol/interface/document_formatting_client_capabilities.rb +4 -1
  122. data/lib/language_server/protocol/interface/document_formatting_options.rb +4 -1
  123. data/lib/language_server/protocol/interface/document_formatting_params.rb +13 -10
  124. data/lib/language_server/protocol/interface/document_formatting_registration_options.rb +7 -4
  125. data/lib/language_server/protocol/interface/document_highlight.rb +2 -2
  126. data/lib/language_server/protocol/interface/document_highlight_client_capabilities.rb +4 -1
  127. data/lib/language_server/protocol/interface/document_highlight_options.rb +4 -1
  128. data/lib/language_server/protocol/interface/document_highlight_params.rb +7 -4
  129. data/lib/language_server/protocol/interface/document_highlight_registration_options.rb +7 -4
  130. data/lib/language_server/protocol/interface/document_link.rb +10 -9
  131. data/lib/language_server/protocol/interface/document_link_client_capabilities.rb +7 -2
  132. data/lib/language_server/protocol/interface/document_link_options.rb +11 -8
  133. data/lib/language_server/protocol/interface/document_link_params.rb +17 -14
  134. data/lib/language_server/protocol/interface/document_link_registration_options.rb +14 -11
  135. data/lib/language_server/protocol/interface/document_on_type_formatting_client_capabilities.rb +4 -1
  136. data/lib/language_server/protocol/interface/document_on_type_formatting_options.rb +5 -2
  137. data/lib/language_server/protocol/interface/document_on_type_formatting_params.rb +12 -4
  138. data/lib/language_server/protocol/interface/document_on_type_formatting_registration_options.rb +8 -5
  139. data/lib/language_server/protocol/interface/document_range_formatting_client_capabilities.rb +5 -2
  140. data/lib/language_server/protocol/interface/document_range_formatting_options.rb +4 -1
  141. data/lib/language_server/protocol/interface/document_range_formatting_params.rb +13 -10
  142. data/lib/language_server/protocol/interface/document_range_formatting_registration_options.rb +7 -4
  143. data/lib/language_server/protocol/interface/document_symbol.rb +18 -16
  144. data/lib/language_server/protocol/interface/document_symbol_client_capabilities.rb +12 -5
  145. data/lib/language_server/protocol/interface/document_symbol_options.rb +13 -8
  146. data/lib/language_server/protocol/interface/document_symbol_params.rb +17 -14
  147. data/lib/language_server/protocol/interface/document_symbol_registration_options.rb +16 -11
  148. data/lib/language_server/protocol/interface/execute_command_client_capabilities.rb +4 -1
  149. data/lib/language_server/protocol/interface/execute_command_options.rb +10 -7
  150. data/lib/language_server/protocol/interface/execute_command_params.rb +14 -11
  151. data/lib/language_server/protocol/interface/execute_command_registration_options.rb +8 -8
  152. data/lib/language_server/protocol/interface/execution_summary.rb +45 -0
  153. data/lib/language_server/protocol/interface/file_create.rb +2 -0
  154. data/lib/language_server/protocol/interface/file_delete.rb +2 -0
  155. data/lib/language_server/protocol/interface/file_event.rb +3 -3
  156. data/lib/language_server/protocol/interface/file_operation_client_capabilities.rb +95 -0
  157. data/lib/language_server/protocol/interface/file_operation_filter.rb +5 -3
  158. data/lib/language_server/protocol/interface/file_operation_options.rb +83 -0
  159. data/lib/language_server/protocol/interface/file_operation_pattern.rb +8 -10
  160. data/lib/language_server/protocol/interface/file_operation_pattern_options.rb +3 -1
  161. data/lib/language_server/protocol/interface/file_operation_registration_options.rb +2 -0
  162. data/lib/language_server/protocol/interface/file_rename.rb +2 -0
  163. data/lib/language_server/protocol/interface/file_system_watcher.rb +4 -14
  164. data/lib/language_server/protocol/interface/folding_range.rb +30 -23
  165. data/lib/language_server/protocol/interface/folding_range_client_capabilities.rb +26 -4
  166. data/lib/language_server/protocol/interface/folding_range_options.rb +1 -1
  167. data/lib/language_server/protocol/interface/folding_range_params.rb +17 -14
  168. data/lib/language_server/protocol/interface/folding_range_registration_options.rb +5 -5
  169. data/lib/language_server/protocol/interface/formatting_options.rb +10 -4
  170. data/lib/language_server/protocol/interface/full_document_diagnostic_report.rb +58 -0
  171. data/lib/language_server/protocol/interface/general_client_capabilities.rb +91 -0
  172. data/lib/language_server/protocol/interface/glob_pattern.rb +48 -0
  173. data/lib/language_server/protocol/interface/hover.rb +3 -3
  174. data/lib/language_server/protocol/interface/hover_client_capabilities.rb +4 -5
  175. data/lib/language_server/protocol/interface/hover_options.rb +4 -1
  176. data/lib/language_server/protocol/interface/hover_params.rb +4 -1
  177. data/lib/language_server/protocol/interface/hover_registration_options.rb +7 -4
  178. data/lib/language_server/protocol/interface/implementation_client_capabilities.rb +10 -5
  179. data/lib/language_server/protocol/interface/implementation_options.rb +1 -1
  180. data/lib/language_server/protocol/interface/implementation_params.rb +4 -4
  181. data/lib/language_server/protocol/interface/implementation_registration_options.rb +5 -5
  182. data/lib/language_server/protocol/interface/initialize_error.rb +2 -1
  183. data/lib/language_server/protocol/interface/initialize_params.rb +41 -29
  184. data/lib/language_server/protocol/interface/initialize_result.rb +6 -1
  185. data/lib/language_server/protocol/interface/inlay_hint.rb +118 -0
  186. data/lib/language_server/protocol/interface/inlay_hint_client_capabilities.rb +48 -0
  187. data/lib/language_server/protocol/interface/inlay_hint_label_part.rb +81 -0
  188. data/lib/language_server/protocol/interface/inlay_hint_options.rb +45 -0
  189. data/lib/language_server/protocol/interface/inlay_hint_params.rb +56 -0
  190. data/lib/language_server/protocol/interface/inlay_hint_registration_options.rb +65 -0
  191. data/lib/language_server/protocol/interface/inlay_hint_workspace_client_capabilities.rb +44 -0
  192. data/lib/language_server/protocol/interface/inline_value.rb +78 -0
  193. data/lib/language_server/protocol/interface/inline_value_client_capabilities.rb +38 -0
  194. data/lib/language_server/protocol/interface/inline_value_context.rb +46 -0
  195. data/lib/language_server/protocol/interface/inline_value_evaluatable_expression.rb +50 -0
  196. data/lib/language_server/protocol/interface/inline_value_options.rb +35 -0
  197. data/lib/language_server/protocol/interface/inline_value_params.rb +66 -0
  198. data/lib/language_server/protocol/interface/inline_value_registration_options.rb +55 -0
  199. data/lib/language_server/protocol/interface/inline_value_text.rb +47 -0
  200. data/lib/language_server/protocol/interface/inline_value_variable_lookup.rb +59 -0
  201. data/lib/language_server/protocol/interface/inline_value_workspace_client_capabilities.rb +44 -0
  202. data/lib/language_server/protocol/interface/insert_replace_edit.rb +2 -0
  203. data/lib/language_server/protocol/interface/linked_editing_range_client_capabilities.rb +8 -4
  204. data/lib/language_server/protocol/interface/linked_editing_range_options.rb +1 -1
  205. data/lib/language_server/protocol/interface/linked_editing_range_params.rb +1 -1
  206. data/lib/language_server/protocol/interface/linked_editing_range_registration_options.rb +5 -5
  207. data/lib/language_server/protocol/interface/linked_editing_ranges.rb +7 -2
  208. data/lib/language_server/protocol/interface/location.rb +5 -1
  209. data/lib/language_server/protocol/interface/location_link.rb +13 -11
  210. data/lib/language_server/protocol/interface/log_message_params.rb +4 -1
  211. data/lib/language_server/protocol/interface/log_trace_params.rb +1 -8
  212. data/lib/language_server/protocol/interface/{message.rb → lsp_object.rb} +6 -8
  213. data/lib/language_server/protocol/interface/markdown_client_capabilities.rb +16 -2
  214. data/lib/language_server/protocol/interface/markup_content.rb +16 -18
  215. data/lib/language_server/protocol/interface/moniker.rb +3 -1
  216. data/lib/language_server/protocol/interface/moniker_client_capabilities.rb +9 -5
  217. data/lib/language_server/protocol/interface/moniker_options.rb +1 -1
  218. data/lib/language_server/protocol/interface/moniker_params.rb +4 -4
  219. data/lib/language_server/protocol/interface/moniker_registration_options.rb +4 -4
  220. data/lib/language_server/protocol/interface/notebook_cell.rb +73 -0
  221. data/lib/language_server/protocol/interface/notebook_cell_array_change.rb +57 -0
  222. data/lib/language_server/protocol/interface/notebook_cell_text_document_filter.rb +54 -0
  223. data/lib/language_server/protocol/interface/notebook_document.rb +78 -0
  224. data/lib/language_server/protocol/interface/notebook_document_change_event.rb +49 -0
  225. data/lib/language_server/protocol/interface/notebook_document_client_capabilities.rb +40 -0
  226. data/lib/language_server/protocol/interface/notebook_document_filter.rb +58 -0
  227. data/lib/language_server/protocol/interface/notebook_document_identifier.rb +38 -0
  228. data/lib/language_server/protocol/interface/notebook_document_sync_client_capabilities.rb +50 -0
  229. data/lib/language_server/protocol/interface/notebook_document_sync_options.rb +58 -0
  230. data/lib/language_server/protocol/interface/notebook_document_sync_registration_options.rb +58 -0
  231. data/lib/language_server/protocol/interface/optional_versioned_text_document_identifier.rb +17 -18
  232. data/lib/language_server/protocol/interface/parameter_information.rb +7 -9
  233. data/lib/language_server/protocol/interface/partial_result_params.rb +3 -3
  234. data/lib/language_server/protocol/interface/position.rb +40 -7
  235. data/lib/language_server/protocol/interface/prepare_rename_params.rb +10 -1
  236. data/lib/language_server/protocol/interface/prepare_rename_result.rb +60 -0
  237. data/lib/language_server/protocol/interface/previous_result_id.rb +48 -0
  238. data/lib/language_server/protocol/interface/progress_params.rb +1 -1
  239. data/lib/language_server/protocol/interface/publish_diagnostics_client_capabilities.rb +16 -5
  240. data/lib/language_server/protocol/interface/publish_diagnostics_params.rb +8 -4
  241. data/lib/language_server/protocol/interface/range.rb +13 -0
  242. data/lib/language_server/protocol/interface/reference_client_capabilities.rb +4 -1
  243. data/lib/language_server/protocol/interface/reference_context.rb +4 -0
  244. data/lib/language_server/protocol/interface/reference_options.rb +4 -1
  245. data/lib/language_server/protocol/interface/reference_params.rb +14 -11
  246. data/lib/language_server/protocol/interface/reference_registration_options.rb +7 -4
  247. data/lib/language_server/protocol/interface/registration.rb +2 -2
  248. data/lib/language_server/protocol/interface/regular_expressions_client_capabilities.rb +3 -1
  249. data/lib/language_server/protocol/interface/related_full_document_diagnostic_report.rb +73 -0
  250. data/lib/language_server/protocol/interface/related_unchanged_document_diagnostic_report.rb +66 -0
  251. data/lib/language_server/protocol/interface/relative_pattern.rb +50 -0
  252. data/lib/language_server/protocol/interface/rename_client_capabilities.rb +12 -7
  253. data/lib/language_server/protocol/interface/rename_file.rb +7 -5
  254. data/lib/language_server/protocol/interface/rename_file_options.rb +2 -2
  255. data/lib/language_server/protocol/interface/rename_files_params.rb +6 -4
  256. data/lib/language_server/protocol/interface/rename_options.rb +13 -8
  257. data/lib/language_server/protocol/interface/rename_params.rb +15 -12
  258. data/lib/language_server/protocol/interface/rename_registration_options.rb +16 -11
  259. data/lib/language_server/protocol/interface/resource_operation.rb +47 -0
  260. data/lib/language_server/protocol/interface/save_options.rb +4 -1
  261. data/lib/language_server/protocol/interface/selection_range.rb +6 -3
  262. data/lib/language_server/protocol/interface/selection_range_client_capabilities.rb +4 -5
  263. data/lib/language_server/protocol/interface/selection_range_options.rb +1 -1
  264. data/lib/language_server/protocol/interface/selection_range_params.rb +23 -20
  265. data/lib/language_server/protocol/interface/selection_range_registration_options.rb +5 -5
  266. data/lib/language_server/protocol/interface/semantic_tokens.rb +5 -2
  267. data/lib/language_server/protocol/interface/semantic_tokens_client_capabilities.rb +45 -11
  268. data/lib/language_server/protocol/interface/semantic_tokens_delta.rb +5 -3
  269. data/lib/language_server/protocol/interface/semantic_tokens_delta_params.rb +24 -21
  270. data/lib/language_server/protocol/interface/semantic_tokens_delta_partial_result.rb +3 -0
  271. data/lib/language_server/protocol/interface/semantic_tokens_edit.rb +6 -3
  272. data/lib/language_server/protocol/interface/semantic_tokens_legend.rb +3 -0
  273. data/lib/language_server/protocol/interface/semantic_tokens_options.rb +12 -9
  274. data/lib/language_server/protocol/interface/semantic_tokens_params.rb +17 -14
  275. data/lib/language_server/protocol/interface/semantic_tokens_partial_result.rb +4 -1
  276. data/lib/language_server/protocol/interface/semantic_tokens_range_params.rb +23 -20
  277. data/lib/language_server/protocol/interface/semantic_tokens_registration_options.rb +16 -13
  278. data/lib/language_server/protocol/interface/semantic_tokens_workspace_client_capabilities.rb +5 -2
  279. data/lib/language_server/protocol/interface/server_capabilities.rb +139 -56
  280. data/lib/language_server/protocol/interface/set_trace_params.rb +1 -4
  281. data/lib/language_server/protocol/interface/show_document_client_capabilities.rb +4 -2
  282. data/lib/language_server/protocol/interface/show_document_params.rb +6 -4
  283. data/lib/language_server/protocol/interface/show_document_result.rb +3 -1
  284. data/lib/language_server/protocol/interface/show_message_params.rb +4 -1
  285. data/lib/language_server/protocol/interface/show_message_request_client_capabilities.rb +1 -1
  286. data/lib/language_server/protocol/interface/show_message_request_params.rb +2 -2
  287. data/lib/language_server/protocol/interface/signature_help.rb +3 -4
  288. data/lib/language_server/protocol/interface/signature_help_client_capabilities.rb +8 -3
  289. data/lib/language_server/protocol/interface/signature_help_context.rb +10 -11
  290. data/lib/language_server/protocol/interface/signature_help_options.rb +17 -14
  291. data/lib/language_server/protocol/interface/signature_help_params.rb +17 -13
  292. data/lib/language_server/protocol/interface/signature_help_registration_options.rb +20 -17
  293. data/lib/language_server/protocol/interface/signature_information.rb +5 -3
  294. data/lib/language_server/protocol/interface/static_registration_options.rb +3 -2
  295. data/lib/language_server/protocol/interface/symbol_information.rb +34 -30
  296. data/lib/language_server/protocol/interface/t.rb +24 -0
  297. data/lib/language_server/protocol/interface/text_document_change_registration_options.rb +12 -13
  298. data/lib/language_server/protocol/interface/text_document_client_capabilities.rb +108 -43
  299. data/lib/language_server/protocol/interface/text_document_content_change_event.rb +8 -10
  300. data/lib/language_server/protocol/interface/text_document_edit.rb +10 -1
  301. data/lib/language_server/protocol/interface/text_document_filter.rb +69 -0
  302. data/lib/language_server/protocol/interface/text_document_identifier.rb +5 -2
  303. data/lib/language_server/protocol/interface/text_document_item.rb +7 -3
  304. data/lib/language_server/protocol/interface/text_document_position_params.rb +4 -0
  305. data/lib/language_server/protocol/interface/text_document_registration_options.rb +3 -3
  306. data/lib/language_server/protocol/interface/text_document_save_registration_options.rb +7 -4
  307. data/lib/language_server/protocol/interface/text_document_sync_client_capabilities.rb +4 -4
  308. data/lib/language_server/protocol/interface/text_document_sync_options.rb +15 -17
  309. data/lib/language_server/protocol/interface/text_edit.rb +3 -0
  310. data/lib/language_server/protocol/interface/type_definition_client_capabilities.rb +10 -5
  311. data/lib/language_server/protocol/interface/type_definition_options.rb +1 -1
  312. data/lib/language_server/protocol/interface/type_definition_params.rb +4 -4
  313. data/lib/language_server/protocol/interface/type_definition_registration_options.rb +5 -5
  314. data/lib/language_server/protocol/interface/type_hierarchy_client_capabilities.rb +38 -0
  315. data/lib/language_server/protocol/interface/type_hierarchy_item.rb +105 -0
  316. data/lib/language_server/protocol/interface/type_hierarchy_options.rb +35 -0
  317. data/lib/language_server/protocol/interface/type_hierarchy_prepare_params.rb +56 -0
  318. data/lib/language_server/protocol/interface/type_hierarchy_registration_options.rb +55 -0
  319. data/lib/language_server/protocol/interface/type_hierarchy_subtypes_params.rb +54 -0
  320. data/lib/language_server/protocol/interface/type_hierarchy_supertypes_params.rb +54 -0
  321. data/lib/language_server/protocol/interface/unchanged_document_diagnostic_report.rb +52 -0
  322. data/lib/language_server/protocol/interface/unregistration.rb +2 -2
  323. data/lib/language_server/protocol/interface/versioned_notebook_document_identifier.rb +47 -0
  324. data/lib/language_server/protocol/interface/versioned_text_document_identifier.rb +13 -13
  325. data/lib/language_server/protocol/interface/will_save_text_document_params.rb +1 -1
  326. data/lib/language_server/protocol/interface/window_client_capabilities.rb +63 -0
  327. data/lib/language_server/protocol/interface/work_done_progress_begin.rb +6 -6
  328. data/lib/language_server/protocol/interface/work_done_progress_end.rb +1 -1
  329. data/lib/language_server/protocol/interface/work_done_progress_options.rb +1 -1
  330. data/lib/language_server/protocol/interface/work_done_progress_params.rb +1 -1
  331. data/lib/language_server/protocol/interface/work_done_progress_report.rb +6 -7
  332. data/lib/language_server/protocol/interface/workspace_client_capabilities.rb +176 -0
  333. data/lib/language_server/protocol/interface/workspace_diagnostic_params.rb +67 -0
  334. data/lib/language_server/protocol/interface/workspace_diagnostic_report.rb +35 -0
  335. data/lib/language_server/protocol/interface/workspace_diagnostic_report_partial_result.rb +35 -0
  336. data/lib/language_server/protocol/interface/workspace_document_diagnostic_report.rb +77 -0
  337. data/lib/language_server/protocol/interface/workspace_edit.rb +28 -17
  338. data/lib/language_server/protocol/interface/workspace_edit_client_capabilities.rb +15 -6
  339. data/lib/language_server/protocol/interface/workspace_folder.rb +4 -1
  340. data/lib/language_server/protocol/interface/workspace_folders_initialize_params.rb +39 -0
  341. data/lib/language_server/protocol/interface/workspace_folders_server_capabilities.rb +3 -3
  342. data/lib/language_server/protocol/interface/workspace_full_document_diagnostic_report.rb +77 -0
  343. data/lib/language_server/protocol/interface/workspace_symbol.rb +95 -0
  344. data/lib/language_server/protocol/interface/workspace_symbol_client_capabilities.rb +23 -6
  345. data/lib/language_server/protocol/interface/workspace_symbol_options.rb +17 -2
  346. data/lib/language_server/protocol/interface/workspace_symbol_params.rb +16 -16
  347. data/lib/language_server/protocol/interface/workspace_symbol_registration_options.rb +17 -2
  348. data/lib/language_server/protocol/interface/workspace_unchanged_document_diagnostic_report.rb +70 -0
  349. data/lib/language_server/protocol/interface.rb +156 -14
  350. data/lib/language_server/protocol/transport/io/reader.rb +8 -24
  351. data/lib/language_server/protocol/transport/io/writer.rb +1 -0
  352. data/lib/language_server/protocol/version.rb +1 -1
  353. metadata +92 -24
  354. data/lib/language_server/protocol/constant/initialize_error.rb +0 -16
  355. data/lib/language_server/protocol/interface/notification_message.rb +0 -48
  356. data/lib/language_server/protocol/interface/request_message.rb +0 -57
  357. data/lib/language_server/protocol/interface/response_error.rb +0 -52
  358. data/lib/language_server/protocol/interface/response_message.rb +0 -58
@@ -15,48 +15,46 @@ module LanguageServer
15
15
  end
16
16
 
17
17
  #
18
- # Open and close notifications are sent to the server. If omitted open
19
- # close notification should not be sent.
18
+ # Open and close notifications are sent to the server. If omitted open close notifications should not
19
+ # be sent.
20
20
  #
21
- # @return [boolean]
21
+ # @return [boolean | nil]
22
22
  def open_close
23
23
  attributes.fetch(:openClose)
24
24
  end
25
25
 
26
26
  #
27
- # Change notifications are sent to the server. See
28
- # TextDocumentSyncKind.None, TextDocumentSyncKind.Full and
29
- # TextDocumentSyncKind.Incremental. If omitted it defaults to
30
- # TextDocumentSyncKind.None.
27
+ # Change notifications are sent to the server. See TextDocumentSyncKind.None, TextDocumentSyncKind.Full
28
+ # and TextDocumentSyncKind.Incremental. If omitted it defaults to TextDocumentSyncKind.None.
31
29
  #
32
- # @return [TextDocumentSyncKind]
30
+ # @return [TextDocumentSyncKind | nil]
33
31
  def change
34
32
  attributes.fetch(:change)
35
33
  end
36
34
 
37
35
  #
38
- # If present will save notifications are sent to the server. If omitted
39
- # the notification should not be sent.
36
+ # If present will save notifications are sent to the server. If omitted the notification should not be
37
+ # sent.
40
38
  #
41
- # @return [boolean]
39
+ # @return [boolean | nil]
42
40
  def will_save
43
41
  attributes.fetch(:willSave)
44
42
  end
45
43
 
46
44
  #
47
- # If present will save wait until requests are sent to the server. If
48
- # omitted the request should not be sent.
45
+ # If present will save wait until requests are sent to the server. If omitted the request should not be
46
+ # sent.
49
47
  #
50
- # @return [boolean]
48
+ # @return [boolean | nil]
51
49
  def will_save_wait_until
52
50
  attributes.fetch(:willSaveWaitUntil)
53
51
  end
54
52
 
55
53
  #
56
- # If present save notifications are sent to the server. If omitted the
57
- # notification should not be sent.
54
+ # If present save notifications are sent to the server. If omitted the notification should not be
55
+ # sent.
58
56
  #
59
- # @return [boolean | SaveOptions]
57
+ # @return [boolean | SaveOptions | nil]
60
58
  def save
61
59
  attributes.fetch(:save)
62
60
  end
@@ -1,6 +1,9 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # A text edit applicable to a text document.
6
+ #
4
7
  class TextEdit
5
8
  def initialize(range:, new_text:)
6
9
  @attributes = {}
@@ -1,6 +1,9 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # Since 3.6.0
6
+ #
4
7
  class TypeDefinitionClientCapabilities
5
8
  def initialize(dynamic_registration: nil, link_support: nil)
6
9
  @attributes = {}
@@ -12,11 +15,11 @@ module LanguageServer
12
15
  end
13
16
 
14
17
  #
15
- # Whether implementation supports dynamic registration. If this is set to
16
- # `true` the client supports the new `TypeDefinitionRegistrationOptions`
17
- # return value for the corresponding server capability as well.
18
+ # Whether implementation supports dynamic registration. If this is set to `true`
19
+ # the client supports the new `TypeDefinitionRegistrationOptions` return value
20
+ # for the corresponding server capability as well.
18
21
  #
19
- # @return [boolean]
22
+ # @return [boolean | nil]
20
23
  def dynamic_registration
21
24
  attributes.fetch(:dynamicRegistration)
22
25
  end
@@ -24,7 +27,9 @@ module LanguageServer
24
27
  #
25
28
  # The client supports additional metadata in the form of definition links.
26
29
  #
27
- # @return [boolean]
30
+ # Since 3.14.0
31
+ #
32
+ # @return [boolean | nil]
28
33
  def link_support
29
34
  attributes.fetch(:linkSupport)
30
35
  end
@@ -10,7 +10,7 @@ module LanguageServer
10
10
  @attributes.freeze
11
11
  end
12
12
 
13
- # @return [boolean]
13
+ # @return [boolean | nil]
14
14
  def work_done_progress
15
15
  attributes.fetch(:workDoneProgress)
16
16
  end
@@ -32,16 +32,16 @@ module LanguageServer
32
32
  #
33
33
  # An optional token that a server can use to report work done progress.
34
34
  #
35
- # @return [ProgressToken]
35
+ # @return [ProgressToken | nil]
36
36
  def work_done_token
37
37
  attributes.fetch(:workDoneToken)
38
38
  end
39
39
 
40
40
  #
41
- # An optional token that a server can use to report partial results (e.g.
42
- # streaming) to the client.
41
+ # An optional token that a server can use to report partial results (e.g. streaming) to
42
+ # the client.
43
43
  #
44
- # @return [ProgressToken]
44
+ # @return [ProgressToken | nil]
45
45
  def partial_result_token
46
46
  attributes.fetch(:partialResultToken)
47
47
  end
@@ -13,15 +13,15 @@ module LanguageServer
13
13
  end
14
14
 
15
15
  #
16
- # A document selector to identify the scope of the registration. If set to
17
- # null the document selector provided on the client side will be used.
16
+ # A document selector to identify the scope of the registration. If set to null
17
+ # the document selector provided on the client side will be used.
18
18
  #
19
- # @return [DocumentSelector]
19
+ # @return [DocumentSelector | null]
20
20
  def document_selector
21
21
  attributes.fetch(:documentSelector)
22
22
  end
23
23
 
24
- # @return [boolean]
24
+ # @return [boolean | nil]
25
25
  def work_done_progress
26
26
  attributes.fetch(:workDoneProgress)
27
27
  end
@@ -30,7 +30,7 @@ module LanguageServer
30
30
  # The id used to register the request. The id can be used to deregister
31
31
  # the request again. See also Registration#id.
32
32
  #
33
- # @return [string]
33
+ # @return [string | nil]
34
34
  def id
35
35
  attributes.fetch(:id)
36
36
  end
@@ -0,0 +1,38 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Interface
4
+ #
5
+ # @since 3.17.0
6
+ #
7
+ class TypeHierarchyClientCapabilities
8
+ def initialize(dynamic_registration: nil)
9
+ @attributes = {}
10
+
11
+ @attributes[:dynamicRegistration] = dynamic_registration if dynamic_registration
12
+
13
+ @attributes.freeze
14
+ end
15
+
16
+ #
17
+ # Whether implementation supports dynamic registration. If this is set to `true`
18
+ # the client supports the new `(TextDocumentRegistrationOptions & StaticRegistrationOptions)`
19
+ # return value for the corresponding server capability as well.
20
+ #
21
+ # @return [boolean | nil]
22
+ def dynamic_registration
23
+ attributes.fetch(:dynamicRegistration)
24
+ end
25
+
26
+ attr_reader :attributes
27
+
28
+ def to_hash
29
+ attributes
30
+ end
31
+
32
+ def to_json(*args)
33
+ to_hash.to_json(*args)
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,105 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Interface
4
+ #
5
+ # @since 3.17.0
6
+ #
7
+ class TypeHierarchyItem
8
+ def initialize(name:, kind:, tags: nil, detail: nil, uri:, range:, selection_range:, data: nil)
9
+ @attributes = {}
10
+
11
+ @attributes[:name] = name
12
+ @attributes[:kind] = kind
13
+ @attributes[:tags] = tags if tags
14
+ @attributes[:detail] = detail if detail
15
+ @attributes[:uri] = uri
16
+ @attributes[:range] = range
17
+ @attributes[:selectionRange] = selection_range
18
+ @attributes[:data] = data if data
19
+
20
+ @attributes.freeze
21
+ end
22
+
23
+ #
24
+ # The name of this item.
25
+ #
26
+ # @return [string]
27
+ def name
28
+ attributes.fetch(:name)
29
+ end
30
+
31
+ #
32
+ # The kind of this item.
33
+ #
34
+ # @return [SymbolKind]
35
+ def kind
36
+ attributes.fetch(:kind)
37
+ end
38
+
39
+ #
40
+ # Tags for this item.
41
+ #
42
+ # @return [SymbolTag[] | nil]
43
+ def tags
44
+ attributes.fetch(:tags)
45
+ end
46
+
47
+ #
48
+ # More detail for this item, e.g. the signature of a function.
49
+ #
50
+ # @return [string | nil]
51
+ def detail
52
+ attributes.fetch(:detail)
53
+ end
54
+
55
+ #
56
+ # The resource identifier of this item.
57
+ #
58
+ # @return [DocumentUri]
59
+ def uri
60
+ attributes.fetch(:uri)
61
+ end
62
+
63
+ #
64
+ # The range enclosing this symbol not including leading/trailing whitespace
65
+ # but everything else, e.g. comments and code.
66
+ #
67
+ # @return [Range]
68
+ def range
69
+ attributes.fetch(:range)
70
+ end
71
+
72
+ #
73
+ # The range that should be selected and revealed when this symbol is being
74
+ # picked, e.g. the name of a function. Must be contained by the
75
+ # [`range`](#TypeHierarchyItem.range).
76
+ #
77
+ # @return [Range]
78
+ def selection_range
79
+ attributes.fetch(:selectionRange)
80
+ end
81
+
82
+ #
83
+ # A data entry field that is preserved between a type hierarchy prepare and
84
+ # supertypes or subtypes requests. It could also be used to identify the
85
+ # type hierarchy in the server, helping improve the performance on
86
+ # resolving supertypes and subtypes.
87
+ #
88
+ # @return [LSPAny | nil]
89
+ def data
90
+ attributes.fetch(:data)
91
+ end
92
+
93
+ attr_reader :attributes
94
+
95
+ def to_hash
96
+ attributes
97
+ end
98
+
99
+ def to_json(*args)
100
+ to_hash.to_json(*args)
101
+ end
102
+ end
103
+ end
104
+ end
105
+ end
@@ -0,0 +1,35 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Interface
4
+ #
5
+ # Type hierarchy options used during static registration.
6
+ #
7
+ # @since 3.17.0
8
+ #
9
+ class TypeHierarchyOptions
10
+ def initialize(work_done_progress: nil)
11
+ @attributes = {}
12
+
13
+ @attributes[:workDoneProgress] = work_done_progress if work_done_progress
14
+
15
+ @attributes.freeze
16
+ end
17
+
18
+ # @return [boolean | nil]
19
+ def work_done_progress
20
+ attributes.fetch(:workDoneProgress)
21
+ end
22
+
23
+ attr_reader :attributes
24
+
25
+ def to_hash
26
+ attributes
27
+ end
28
+
29
+ def to_json(*args)
30
+ to_hash.to_json(*args)
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,56 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Interface
4
+ #
5
+ # The parameter of a `textDocument/prepareTypeHierarchy` request.
6
+ #
7
+ # @since 3.17.0
8
+ #
9
+ class TypeHierarchyPrepareParams
10
+ def initialize(text_document:, position:, work_done_token: nil)
11
+ @attributes = {}
12
+
13
+ @attributes[:textDocument] = text_document
14
+ @attributes[:position] = position
15
+ @attributes[:workDoneToken] = work_done_token if work_done_token
16
+
17
+ @attributes.freeze
18
+ end
19
+
20
+ #
21
+ # The text document.
22
+ #
23
+ # @return [TextDocumentIdentifier]
24
+ def text_document
25
+ attributes.fetch(:textDocument)
26
+ end
27
+
28
+ #
29
+ # The position inside the text document.
30
+ #
31
+ # @return [Position]
32
+ def position
33
+ attributes.fetch(:position)
34
+ end
35
+
36
+ #
37
+ # An optional token that a server can use to report work done progress.
38
+ #
39
+ # @return [ProgressToken | nil]
40
+ def work_done_token
41
+ attributes.fetch(:workDoneToken)
42
+ end
43
+
44
+ attr_reader :attributes
45
+
46
+ def to_hash
47
+ attributes
48
+ end
49
+
50
+ def to_json(*args)
51
+ to_hash.to_json(*args)
52
+ end
53
+ end
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,55 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Interface
4
+ #
5
+ # Type hierarchy options used during static or dynamic registration.
6
+ #
7
+ # @since 3.17.0
8
+ #
9
+ class TypeHierarchyRegistrationOptions
10
+ def initialize(document_selector:, work_done_progress: nil, id: nil)
11
+ @attributes = {}
12
+
13
+ @attributes[:documentSelector] = document_selector
14
+ @attributes[:workDoneProgress] = work_done_progress if work_done_progress
15
+ @attributes[:id] = id if id
16
+
17
+ @attributes.freeze
18
+ end
19
+
20
+ #
21
+ # A document selector to identify the scope of the registration. If set to null
22
+ # the document selector provided on the client side will be used.
23
+ #
24
+ # @return [DocumentSelector | null]
25
+ def document_selector
26
+ attributes.fetch(:documentSelector)
27
+ end
28
+
29
+ # @return [boolean | nil]
30
+ def work_done_progress
31
+ attributes.fetch(:workDoneProgress)
32
+ end
33
+
34
+ #
35
+ # The id used to register the request. The id can be used to deregister
36
+ # the request again. See also Registration#id.
37
+ #
38
+ # @return [string | nil]
39
+ def id
40
+ attributes.fetch(:id)
41
+ end
42
+
43
+ attr_reader :attributes
44
+
45
+ def to_hash
46
+ attributes
47
+ end
48
+
49
+ def to_json(*args)
50
+ to_hash.to_json(*args)
51
+ end
52
+ end
53
+ end
54
+ end
55
+ end
@@ -0,0 +1,54 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Interface
4
+ #
5
+ # The parameter of a `typeHierarchy/subtypes` request.
6
+ #
7
+ # @since 3.17.0
8
+ #
9
+ class TypeHierarchySubtypesParams
10
+ def initialize(item:, work_done_token: nil, partial_result_token: nil)
11
+ @attributes = {}
12
+
13
+ @attributes[:item] = item
14
+ @attributes[:workDoneToken] = work_done_token if work_done_token
15
+ @attributes[:partialResultToken] = partial_result_token if partial_result_token
16
+
17
+ @attributes.freeze
18
+ end
19
+
20
+ # @return [TypeHierarchyItem]
21
+ def item
22
+ attributes.fetch(:item)
23
+ end
24
+
25
+ #
26
+ # An optional token that a server can use to report work done progress.
27
+ #
28
+ # @return [ProgressToken | nil]
29
+ def work_done_token
30
+ attributes.fetch(:workDoneToken)
31
+ end
32
+
33
+ #
34
+ # An optional token that a server can use to report partial results (e.g. streaming) to
35
+ # the client.
36
+ #
37
+ # @return [ProgressToken | nil]
38
+ def partial_result_token
39
+ attributes.fetch(:partialResultToken)
40
+ end
41
+
42
+ attr_reader :attributes
43
+
44
+ def to_hash
45
+ attributes
46
+ end
47
+
48
+ def to_json(*args)
49
+ to_hash.to_json(*args)
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,54 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Interface
4
+ #
5
+ # The parameter of a `typeHierarchy/supertypes` request.
6
+ #
7
+ # @since 3.17.0
8
+ #
9
+ class TypeHierarchySupertypesParams
10
+ def initialize(item:, work_done_token: nil, partial_result_token: nil)
11
+ @attributes = {}
12
+
13
+ @attributes[:item] = item
14
+ @attributes[:workDoneToken] = work_done_token if work_done_token
15
+ @attributes[:partialResultToken] = partial_result_token if partial_result_token
16
+
17
+ @attributes.freeze
18
+ end
19
+
20
+ # @return [TypeHierarchyItem]
21
+ def item
22
+ attributes.fetch(:item)
23
+ end
24
+
25
+ #
26
+ # An optional token that a server can use to report work done progress.
27
+ #
28
+ # @return [ProgressToken | nil]
29
+ def work_done_token
30
+ attributes.fetch(:workDoneToken)
31
+ end
32
+
33
+ #
34
+ # An optional token that a server can use to report partial results (e.g. streaming) to
35
+ # the client.
36
+ #
37
+ # @return [ProgressToken | nil]
38
+ def partial_result_token
39
+ attributes.fetch(:partialResultToken)
40
+ end
41
+
42
+ attr_reader :attributes
43
+
44
+ def to_hash
45
+ attributes
46
+ end
47
+
48
+ def to_json(*args)
49
+ to_hash.to_json(*args)
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,52 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Interface
4
+ #
5
+ # A diagnostic report indicating that the last returned
6
+ # report is still accurate.
7
+ #
8
+ # @since 3.17.0
9
+ #
10
+ class UnchangedDocumentDiagnosticReport
11
+ def initialize(kind:, result_id:)
12
+ @attributes = {}
13
+
14
+ @attributes[:kind] = kind
15
+ @attributes[:resultId] = result_id
16
+
17
+ @attributes.freeze
18
+ end
19
+
20
+ #
21
+ # A document diagnostic report indicating
22
+ # no changes to the last result. A server can
23
+ # only return `unchanged` if result ids are
24
+ # provided.
25
+ #
26
+ # @return ["unchanged"]
27
+ def kind
28
+ attributes.fetch(:kind)
29
+ end
30
+
31
+ #
32
+ # A result id which will be sent on the next
33
+ # diagnostic request for the same document.
34
+ #
35
+ # @return [string]
36
+ def result_id
37
+ attributes.fetch(:resultId)
38
+ end
39
+
40
+ attr_reader :attributes
41
+
42
+ def to_hash
43
+ attributes
44
+ end
45
+
46
+ def to_json(*args)
47
+ to_hash.to_json(*args)
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
@@ -2,7 +2,7 @@ module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
4
  #
5
- # General parameters to unregister a capability.
5
+ # General parameters to unregister a request or notification.
6
6
  #
7
7
  class Unregistration
8
8
  def initialize(id:, method:)
@@ -24,7 +24,7 @@ module LanguageServer
24
24
  end
25
25
 
26
26
  #
27
- # The method / capability to unregister for.
27
+ # The method to unregister for.
28
28
  #
29
29
  # @return [string]
30
30
  def method
@@ -0,0 +1,47 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Interface
4
+ #
5
+ # A versioned notebook document identifier.
6
+ #
7
+ # @since 3.17.0
8
+ #
9
+ class VersionedNotebookDocumentIdentifier
10
+ def initialize(version:, uri:)
11
+ @attributes = {}
12
+
13
+ @attributes[:version] = version
14
+ @attributes[:uri] = uri
15
+
16
+ @attributes.freeze
17
+ end
18
+
19
+ #
20
+ # The version number of this notebook document.
21
+ #
22
+ # @return [integer]
23
+ def version
24
+ attributes.fetch(:version)
25
+ end
26
+
27
+ #
28
+ # The notebook document's uri.
29
+ #
30
+ # @return [URI]
31
+ def uri
32
+ attributes.fetch(:uri)
33
+ end
34
+
35
+ attr_reader :attributes
36
+
37
+ def to_hash
38
+ attributes
39
+ end
40
+
41
+ def to_json(*args)
42
+ to_hash.to_json(*args)
43
+ end
44
+ end
45
+ end
46
+ end
47
+ end