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
@@ -1,6 +1,10 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # A selection range represents a part of a selection hierarchy. A selection range
6
+ # may have a parent selection range that contains it.
7
+ #
4
8
  class SelectionRange
5
9
  def initialize(range:, parent: nil)
6
10
  @attributes = {}
@@ -20,10 +24,9 @@ module LanguageServer
20
24
  end
21
25
 
22
26
  #
23
- # The parent selection range containing this range. Therefore
24
- # `parent.range` must contain `this.range`.
27
+ # The parent selection range containing this range. Therefore `parent.range` must contain `this.range`.
25
28
  #
26
- # @return [SelectionRange]
29
+ # @return [SelectionRange | nil]
27
30
  def parent
28
31
  attributes.fetch(:parent)
29
32
  end
@@ -11,12 +11,11 @@ module LanguageServer
11
11
  end
12
12
 
13
13
  #
14
- # Whether implementation supports dynamic registration for selection range
15
- # providers. If this is set to `true` the client supports the new
16
- # `SelectionRangeRegistrationOptions` return value for the corresponding
17
- # server capability as well.
14
+ # Whether implementation supports dynamic registration for selection range providers. If this is set to `true`
15
+ # the client supports the new `SelectionRangeRegistrationOptions` return value for the corresponding server
16
+ # capability as well.
18
17
  #
19
- # @return [boolean]
18
+ # @return [boolean | nil]
20
19
  def dynamic_registration
21
20
  attributes.fetch(:dynamicRegistration)
22
21
  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
@@ -1,35 +1,21 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # A parameter literal used in selection range requests.
6
+ #
4
7
  class SelectionRangeParams
5
- def initialize(work_done_token: nil, partial_result_token: nil, text_document:, positions:)
8
+ def initialize(text_document:, positions:, work_done_token: nil, partial_result_token: nil)
6
9
  @attributes = {}
7
10
 
8
- @attributes[:workDoneToken] = work_done_token if work_done_token
9
- @attributes[:partialResultToken] = partial_result_token if partial_result_token
10
11
  @attributes[:textDocument] = text_document
11
12
  @attributes[:positions] = positions
13
+ @attributes[:workDoneToken] = work_done_token if work_done_token
14
+ @attributes[:partialResultToken] = partial_result_token if partial_result_token
12
15
 
13
16
  @attributes.freeze
14
17
  end
15
18
 
16
- #
17
- # An optional token that a server can use to report work done progress.
18
- #
19
- # @return [ProgressToken]
20
- def work_done_token
21
- attributes.fetch(:workDoneToken)
22
- end
23
-
24
- #
25
- # An optional token that a server can use to report partial results (e.g.
26
- # streaming) to the client.
27
- #
28
- # @return [ProgressToken]
29
- def partial_result_token
30
- attributes.fetch(:partialResultToken)
31
- end
32
-
33
19
  #
34
20
  # The text document.
35
21
  #
@@ -46,6 +32,23 @@ module LanguageServer
46
32
  attributes.fetch(:positions)
47
33
  end
48
34
 
35
+ #
36
+ # An optional token that a server can use to report work done progress.
37
+ #
38
+ # @return [ProgressToken | nil]
39
+ def work_done_token
40
+ attributes.fetch(:workDoneToken)
41
+ end
42
+
43
+ #
44
+ # An optional token that a server can use to report partial results (e.g. streaming) to
45
+ # the client.
46
+ #
47
+ # @return [ProgressToken | nil]
48
+ def partial_result_token
49
+ attributes.fetch(:partialResultToken)
50
+ end
51
+
49
52
  attr_reader :attributes
50
53
 
51
54
  def to_hash
@@ -12,16 +12,16 @@ module LanguageServer
12
12
  @attributes.freeze
13
13
  end
14
14
 
15
- # @return [boolean]
15
+ # @return [boolean | nil]
16
16
  def work_done_progress
17
17
  attributes.fetch(:workDoneProgress)
18
18
  end
19
19
 
20
20
  #
21
- # A document selector to identify the scope of the registration. If set to
22
- # null the document selector provided on the client side will be used.
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
23
  #
24
- # @return [DocumentSelector]
24
+ # @return [DocumentSelector | null]
25
25
  def document_selector
26
26
  attributes.fetch(:documentSelector)
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
@@ -1,6 +1,9 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # @since 3.16.0
6
+ #
4
7
  class SemanticTokens
5
8
  def initialize(result_id: nil, data:)
6
9
  @attributes = {}
@@ -17,7 +20,7 @@ module LanguageServer
17
20
  # A server can then instead of computing all semantic tokens again simply
18
21
  # send a delta.
19
22
  #
20
- # @return [string]
23
+ # @return [string | nil]
21
24
  def result_id
22
25
  attributes.fetch(:resultId)
23
26
  end
@@ -25,7 +28,7 @@ module LanguageServer
25
28
  #
26
29
  # The actual tokens.
27
30
  #
28
- # @return [number[]]
31
+ # @return [uinteger[]]
29
32
  def data
30
33
  attributes.fetch(:data)
31
34
  end
@@ -1,8 +1,11 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # @since 3.16.0
6
+ #
4
7
  class SemanticTokensClientCapabilities
5
- def initialize(dynamic_registration: nil, requests:, token_types:, token_modifiers:, formats:, overlapping_token_support: nil, multiline_token_support: nil)
8
+ def initialize(dynamic_registration: nil, requests:, token_types:, token_modifiers:, formats:, overlapping_token_support: nil, multiline_token_support: nil, server_cancel_support: nil, augments_syntax_tokens: nil)
6
9
  @attributes = {}
7
10
 
8
11
  @attributes[:dynamicRegistration] = dynamic_registration if dynamic_registration
@@ -12,17 +15,18 @@ module LanguageServer
12
15
  @attributes[:formats] = formats
13
16
  @attributes[:overlappingTokenSupport] = overlapping_token_support if overlapping_token_support
14
17
  @attributes[:multilineTokenSupport] = multiline_token_support if multiline_token_support
18
+ @attributes[:serverCancelSupport] = server_cancel_support if server_cancel_support
19
+ @attributes[:augmentsSyntaxTokens] = augments_syntax_tokens if augments_syntax_tokens
15
20
 
16
21
  @attributes.freeze
17
22
  end
18
23
 
19
24
  #
20
- # Whether implementation supports dynamic registration. If this is set to
21
- # `true` the client supports the new `(TextDocumentRegistrationOptions &
22
- # StaticRegistrationOptions)` return value for the corresponding server
23
- # capability as well.
25
+ # Whether implementation supports dynamic registration. If this is set to `true`
26
+ # the client supports the new `(TextDocumentRegistrationOptions & StaticRegistrationOptions)`
27
+ # return value for the corresponding server capability as well.
24
28
  #
25
- # @return [boolean]
29
+ # @return [boolean | nil]
26
30
  def dynamic_registration
27
31
  attributes.fetch(:dynamicRegistration)
28
32
  end
@@ -37,7 +41,7 @@ module LanguageServer
37
41
  # range provider the client might not render a minimap correctly or might
38
42
  # even decide to not show any semantic tokens at all.
39
43
  #
40
- # @return [{ range?: boolean | {}; full?: boolean | { delta?: boolean; }; }]
44
+ # @return [{ range:boolean | { }, full:boolean | { delta:boolean } }]
41
45
  def requests
42
46
  attributes.fetch(:requests)
43
47
  end
@@ -59,9 +63,9 @@ module LanguageServer
59
63
  end
60
64
 
61
65
  #
62
- # The formats the clients supports.
66
+ # The token formats the clients supports.
63
67
  #
64
- # @return ["relative"[]]
68
+ # @return [TokenFormat[]]
65
69
  def formats
66
70
  attributes.fetch(:formats)
67
71
  end
@@ -69,7 +73,7 @@ module LanguageServer
69
73
  #
70
74
  # Whether the client supports tokens that can overlap each other.
71
75
  #
72
- # @return [boolean]
76
+ # @return [boolean | nil]
73
77
  def overlapping_token_support
74
78
  attributes.fetch(:overlappingTokenSupport)
75
79
  end
@@ -77,11 +81,41 @@ module LanguageServer
77
81
  #
78
82
  # Whether the client supports tokens that can span multiple lines.
79
83
  #
80
- # @return [boolean]
84
+ # @return [boolean | nil]
81
85
  def multiline_token_support
82
86
  attributes.fetch(:multilineTokenSupport)
83
87
  end
84
88
 
89
+ #
90
+ # Whether the client allows the server to actively cancel a
91
+ # semantic token request, e.g. supports returning
92
+ # LSPErrorCodes.ServerCancelled. If a server does the client
93
+ # needs to retrigger the request.
94
+ #
95
+ # @since 3.17.0
96
+ #
97
+ # @return [boolean | nil]
98
+ def server_cancel_support
99
+ attributes.fetch(:serverCancelSupport)
100
+ end
101
+
102
+ #
103
+ # Whether the client uses semantic tokens to augment existing
104
+ # syntax tokens. If set to `true` client side created syntax
105
+ # tokens and semantic tokens are both used for colorization. If
106
+ # set to `false` the client only uses the returned semantic tokens
107
+ # for colorization.
108
+ #
109
+ # If the value is `undefined` then the client behavior is not
110
+ # specified.
111
+ #
112
+ # @since 3.17.0
113
+ #
114
+ # @return [boolean | nil]
115
+ def augments_syntax_tokens
116
+ attributes.fetch(:augmentsSyntaxTokens)
117
+ end
118
+
85
119
  attr_reader :attributes
86
120
 
87
121
  def to_hash
@@ -1,6 +1,9 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # @since 3.16.0
6
+ #
4
7
  class SemanticTokensDelta
5
8
  def initialize(result_id: nil, edits:)
6
9
  @attributes = {}
@@ -11,14 +14,13 @@ module LanguageServer
11
14
  @attributes.freeze
12
15
  end
13
16
 
14
- # @return [string]
17
+ # @return [string | nil]
15
18
  def result_id
16
19
  attributes.fetch(:resultId)
17
20
  end
18
21
 
19
22
  #
20
- # The semantic token edits to transform a previous result into a new
21
- # result.
23
+ # The semantic token edits to transform a previous result into a new result.
22
24
  #
23
25
  # @return [SemanticTokensEdit[]]
24
26
  def edits
@@ -1,50 +1,53 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # @since 3.16.0
6
+ #
4
7
  class SemanticTokensDeltaParams
5
- def initialize(work_done_token: nil, partial_result_token: nil, text_document:, previous_result_id:)
8
+ def initialize(text_document:, previous_result_id:, work_done_token: nil, partial_result_token: nil)
6
9
  @attributes = {}
7
10
 
8
- @attributes[:workDoneToken] = work_done_token if work_done_token
9
- @attributes[:partialResultToken] = partial_result_token if partial_result_token
10
11
  @attributes[:textDocument] = text_document
11
12
  @attributes[:previousResultId] = previous_result_id
13
+ @attributes[:workDoneToken] = work_done_token if work_done_token
14
+ @attributes[:partialResultToken] = partial_result_token if partial_result_token
12
15
 
13
16
  @attributes.freeze
14
17
  end
15
18
 
16
19
  #
17
- # An optional token that a server can use to report work done progress.
20
+ # The text document.
18
21
  #
19
- # @return [ProgressToken]
20
- def work_done_token
21
- attributes.fetch(:workDoneToken)
22
+ # @return [TextDocumentIdentifier]
23
+ def text_document
24
+ attributes.fetch(:textDocument)
22
25
  end
23
26
 
24
27
  #
25
- # An optional token that a server can use to report partial results (e.g.
26
- # streaming) to the client.
28
+ # The result id of a previous response. The result Id can either point to a full response
29
+ # or a delta response depending on what was received last.
27
30
  #
28
- # @return [ProgressToken]
29
- def partial_result_token
30
- attributes.fetch(:partialResultToken)
31
+ # @return [string]
32
+ def previous_result_id
33
+ attributes.fetch(:previousResultId)
31
34
  end
32
35
 
33
36
  #
34
- # The text document.
37
+ # An optional token that a server can use to report work done progress.
35
38
  #
36
- # @return [TextDocumentIdentifier]
37
- def text_document
38
- attributes.fetch(:textDocument)
39
+ # @return [ProgressToken | nil]
40
+ def work_done_token
41
+ attributes.fetch(:workDoneToken)
39
42
  end
40
43
 
41
44
  #
42
- # The result id of a previous response. The result Id can either point to
43
- # a full response or a delta response depending on what was received last.
45
+ # An optional token that a server can use to report partial results (e.g. streaming) to
46
+ # the client.
44
47
  #
45
- # @return [string]
46
- def previous_result_id
47
- attributes.fetch(:previousResultId)
48
+ # @return [ProgressToken | nil]
49
+ def partial_result_token
50
+ attributes.fetch(:partialResultToken)
48
51
  end
49
52
 
50
53
  attr_reader :attributes
@@ -1,6 +1,9 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # @since 3.16.0
6
+ #
4
7
  class SemanticTokensDeltaPartialResult
5
8
  def initialize(edits:)
6
9
  @attributes = {}
@@ -1,6 +1,9 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # @since 3.16.0
6
+ #
4
7
  class SemanticTokensEdit
5
8
  def initialize(start:, delete_count:, data: nil)
6
9
  @attributes = {}
@@ -15,7 +18,7 @@ module LanguageServer
15
18
  #
16
19
  # The start offset of the edit.
17
20
  #
18
- # @return [number]
21
+ # @return [uinteger]
19
22
  def start
20
23
  attributes.fetch(:start)
21
24
  end
@@ -23,7 +26,7 @@ module LanguageServer
23
26
  #
24
27
  # The count of elements to remove.
25
28
  #
26
- # @return [number]
29
+ # @return [uinteger]
27
30
  def delete_count
28
31
  attributes.fetch(:deleteCount)
29
32
  end
@@ -31,7 +34,7 @@ module LanguageServer
31
34
  #
32
35
  # The elements to insert.
33
36
  #
34
- # @return [number[]]
37
+ # @return [uinteger[] | nil]
35
38
  def data
36
39
  attributes.fetch(:data)
37
40
  end
@@ -1,6 +1,9 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # @since 3.16.0
6
+ #
4
7
  class SemanticTokensLegend
5
8
  def initialize(token_types:, token_modifiers:)
6
9
  @attributes = {}
@@ -1,23 +1,21 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # @since 3.16.0
6
+ #
4
7
  class SemanticTokensOptions
5
- def initialize(work_done_progress: nil, legend:, range: nil, full: nil)
8
+ def initialize(legend:, range: nil, full: nil, work_done_progress: nil)
6
9
  @attributes = {}
7
10
 
8
- @attributes[:workDoneProgress] = work_done_progress if work_done_progress
9
11
  @attributes[:legend] = legend
10
12
  @attributes[:range] = range if range
11
13
  @attributes[:full] = full if full
14
+ @attributes[:workDoneProgress] = work_done_progress if work_done_progress
12
15
 
13
16
  @attributes.freeze
14
17
  end
15
18
 
16
- # @return [boolean]
17
- def work_done_progress
18
- attributes.fetch(:workDoneProgress)
19
- end
20
-
21
19
  #
22
20
  # The legend used by the server
23
21
  #
@@ -30,7 +28,7 @@ module LanguageServer
30
28
  # Server supports providing semantic tokens for a specific range
31
29
  # of a document.
32
30
  #
33
- # @return [boolean | {}]
31
+ # @return [boolean | { } | nil]
34
32
  def range
35
33
  attributes.fetch(:range)
36
34
  end
@@ -38,11 +36,16 @@ module LanguageServer
38
36
  #
39
37
  # Server supports providing semantic tokens for a full document.
40
38
  #
41
- # @return [boolean | { delta?: boolean; }]
39
+ # @return [boolean | { delta:boolean } | nil]
42
40
  def full
43
41
  attributes.fetch(:full)
44
42
  end
45
43
 
44
+ # @return [boolean | nil]
45
+ def work_done_progress
46
+ attributes.fetch(:workDoneProgress)
47
+ end
48
+
46
49
  attr_reader :attributes
47
50
 
48
51
  def to_hash
@@ -1,42 +1,45 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # @since 3.16.0
6
+ #
4
7
  class SemanticTokensParams
5
- def initialize(work_done_token: nil, partial_result_token: nil, text_document:)
8
+ def initialize(text_document:, work_done_token: nil, partial_result_token: nil)
6
9
  @attributes = {}
7
10
 
11
+ @attributes[:textDocument] = text_document
8
12
  @attributes[:workDoneToken] = work_done_token if work_done_token
9
13
  @attributes[:partialResultToken] = partial_result_token if partial_result_token
10
- @attributes[:textDocument] = text_document
11
14
 
12
15
  @attributes.freeze
13
16
  end
14
17
 
18
+ #
19
+ # The text document.
20
+ #
21
+ # @return [TextDocumentIdentifier]
22
+ def text_document
23
+ attributes.fetch(:textDocument)
24
+ end
25
+
15
26
  #
16
27
  # An optional token that a server can use to report work done progress.
17
28
  #
18
- # @return [ProgressToken]
29
+ # @return [ProgressToken | nil]
19
30
  def work_done_token
20
31
  attributes.fetch(:workDoneToken)
21
32
  end
22
33
 
23
34
  #
24
- # An optional token that a server can use to report partial results (e.g.
25
- # streaming) to the client.
35
+ # An optional token that a server can use to report partial results (e.g. streaming) to
36
+ # the client.
26
37
  #
27
- # @return [ProgressToken]
38
+ # @return [ProgressToken | nil]
28
39
  def partial_result_token
29
40
  attributes.fetch(:partialResultToken)
30
41
  end
31
42
 
32
- #
33
- # The text document.
34
- #
35
- # @return [TextDocumentIdentifier]
36
- def text_document
37
- attributes.fetch(:textDocument)
38
- end
39
-
40
43
  attr_reader :attributes
41
44
 
42
45
  def to_hash
@@ -1,6 +1,9 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # @since 3.16.0
6
+ #
4
7
  class SemanticTokensPartialResult
5
8
  def initialize(data:)
6
9
  @attributes = {}
@@ -10,7 +13,7 @@ module LanguageServer
10
13
  @attributes.freeze
11
14
  end
12
15
 
13
- # @return [number[]]
16
+ # @return [uinteger[]]
14
17
  def data
15
18
  attributes.fetch(:data)
16
19
  end
@@ -1,35 +1,21 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # @since 3.16.0
6
+ #
4
7
  class SemanticTokensRangeParams
5
- def initialize(work_done_token: nil, partial_result_token: nil, text_document:, range:)
8
+ def initialize(text_document:, range:, work_done_token: nil, partial_result_token: nil)
6
9
  @attributes = {}
7
10
 
8
- @attributes[:workDoneToken] = work_done_token if work_done_token
9
- @attributes[:partialResultToken] = partial_result_token if partial_result_token
10
11
  @attributes[:textDocument] = text_document
11
12
  @attributes[:range] = range
13
+ @attributes[:workDoneToken] = work_done_token if work_done_token
14
+ @attributes[:partialResultToken] = partial_result_token if partial_result_token
12
15
 
13
16
  @attributes.freeze
14
17
  end
15
18
 
16
- #
17
- # An optional token that a server can use to report work done progress.
18
- #
19
- # @return [ProgressToken]
20
- def work_done_token
21
- attributes.fetch(:workDoneToken)
22
- end
23
-
24
- #
25
- # An optional token that a server can use to report partial results (e.g.
26
- # streaming) to the client.
27
- #
28
- # @return [ProgressToken]
29
- def partial_result_token
30
- attributes.fetch(:partialResultToken)
31
- end
32
-
33
19
  #
34
20
  # The text document.
35
21
  #
@@ -46,6 +32,23 @@ module LanguageServer
46
32
  attributes.fetch(:range)
47
33
  end
48
34
 
35
+ #
36
+ # An optional token that a server can use to report work done progress.
37
+ #
38
+ # @return [ProgressToken | nil]
39
+ def work_done_token
40
+ attributes.fetch(:workDoneToken)
41
+ end
42
+
43
+ #
44
+ # An optional token that a server can use to report partial results (e.g. streaming) to
45
+ # the client.
46
+ #
47
+ # @return [ProgressToken | nil]
48
+ def partial_result_token
49
+ attributes.fetch(:partialResultToken)
50
+ end
51
+
49
52
  attr_reader :attributes
50
53
 
51
54
  def to_hash