language_server-protocol 3.17.0.6 → 3.18.0.0.pre.1

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 (516) hide show
  1. checksums.yaml +4 -4
  2. data/lib/language_server/protocol/constant/apply_kind.rb +26 -0
  3. data/lib/language_server/protocol/constant/code_action_kind.rb +42 -29
  4. data/lib/language_server/protocol/constant/code_action_tag.rb +17 -0
  5. data/lib/language_server/protocol/constant/code_action_trigger_kind.rb +2 -0
  6. data/lib/language_server/protocol/constant/completion_item_tag.rb +4 -2
  7. data/lib/language_server/protocol/constant/completion_trigger_kind.rb +2 -3
  8. data/lib/language_server/protocol/constant/diagnostic_severity.rb +3 -0
  9. data/lib/language_server/protocol/constant/diagnostic_tag.rb +4 -2
  10. data/lib/language_server/protocol/constant/document_diagnostic_report_kind.rb +4 -2
  11. data/lib/language_server/protocol/constant/error_codes.rb +8 -26
  12. data/lib/language_server/protocol/constant/failure_handling_kind.rb +9 -10
  13. data/lib/language_server/protocol/constant/file_change_type.rb +1 -1
  14. data/lib/language_server/protocol/constant/file_operation_pattern_kind.rb +4 -2
  15. data/lib/language_server/protocol/constant/folding_range_kind.rb +4 -5
  16. data/lib/language_server/protocol/constant/inlay_hint_kind.rb +2 -0
  17. data/lib/language_server/protocol/constant/inline_completion_trigger_kind.rb +21 -0
  18. data/lib/language_server/protocol/constant/insert_text_format.rb +2 -0
  19. data/lib/language_server/protocol/constant/insert_text_mode.rb +2 -0
  20. data/lib/language_server/protocol/constant/language_kind.rb +83 -0
  21. data/lib/language_server/protocol/constant/lsp_error_codes.rb +1 -1
  22. data/lib/language_server/protocol/constant/markup_kind.rb +2 -2
  23. data/lib/language_server/protocol/constant/message_type.rb +9 -0
  24. data/lib/language_server/protocol/constant/moniker_kind.rb +5 -3
  25. data/lib/language_server/protocol/constant/notebook_cell_kind.rb +2 -0
  26. data/lib/language_server/protocol/constant/position_encoding_kind.rb +7 -7
  27. data/lib/language_server/protocol/constant/prepare_support_default_behavior.rb +1 -1
  28. data/lib/language_server/protocol/constant/resource_operation_kind.rb +3 -6
  29. data/lib/language_server/protocol/constant/semantic_token_modifiers.rb +17 -10
  30. data/lib/language_server/protocol/constant/semantic_token_types.rb +39 -25
  31. data/lib/language_server/protocol/constant/signature_help_trigger_kind.rb +3 -2
  32. data/lib/language_server/protocol/constant/symbol_tag.rb +2 -0
  33. data/lib/language_server/protocol/constant/text_document_save_reason.rb +2 -2
  34. data/lib/language_server/protocol/constant/text_document_sync_kind.rb +3 -3
  35. data/lib/language_server/protocol/constant/token_format.rb +1 -1
  36. data/lib/language_server/protocol/constant/{trace_values.rb → trace_value.rb} +1 -1
  37. data/lib/language_server/protocol/constant/uniqueness_level.rb +7 -5
  38. data/lib/language_server/protocol/constant.rb +10 -4
  39. data/lib/language_server/protocol/interface/apply_workspace_edit_params.rb +13 -2
  40. data/lib/language_server/protocol/interface/apply_workspace_edit_result.rb +2 -2
  41. data/lib/language_server/protocol/interface/base_symbol_information.rb +2 -2
  42. data/lib/language_server/protocol/interface/call_hierarchy_client_capabilities.rb +1 -1
  43. data/lib/language_server/protocol/interface/call_hierarchy_incoming_calls_params.rb +2 -2
  44. data/lib/language_server/protocol/interface/call_hierarchy_item.rb +3 -3
  45. data/lib/language_server/protocol/interface/call_hierarchy_options.rb +1 -1
  46. data/lib/language_server/protocol/interface/call_hierarchy_outgoing_calls_params.rb +2 -2
  47. data/lib/language_server/protocol/interface/call_hierarchy_prepare_params.rb +1 -1
  48. data/lib/language_server/protocol/interface/call_hierarchy_registration_options.rb +2 -2
  49. data/lib/language_server/protocol/interface/change_annotation.rb +2 -2
  50. data/lib/language_server/protocol/interface/change_annotations_support_options.rb +38 -0
  51. data/lib/language_server/protocol/interface/client_capabilities.rb +6 -6
  52. data/lib/language_server/protocol/interface/client_code_action_kind_options.rb +39 -0
  53. data/lib/language_server/protocol/interface/client_code_action_literal_options.rb +37 -0
  54. data/lib/language_server/protocol/interface/client_code_action_resolve_options.rb +36 -0
  55. data/lib/language_server/protocol/interface/client_code_lens_resolve_options.rb +36 -0
  56. data/lib/language_server/protocol/interface/client_completion_item_insert_text_mode_options.rb +33 -0
  57. data/lib/language_server/protocol/interface/client_completion_item_options.rb +142 -0
  58. data/lib/language_server/protocol/interface/client_completion_item_options_kind.rb +43 -0
  59. data/lib/language_server/protocol/interface/client_completion_item_resolve_options.rb +36 -0
  60. data/lib/language_server/protocol/interface/client_diagnostics_tag_options.rb +36 -0
  61. data/lib/language_server/protocol/interface/client_folding_range_kind_options.rb +39 -0
  62. data/lib/language_server/protocol/interface/client_folding_range_options.rb +39 -0
  63. data/lib/language_server/protocol/interface/client_info.rb +48 -0
  64. data/lib/language_server/protocol/interface/client_inlay_hint_resolve_options.rb +36 -0
  65. data/lib/language_server/protocol/interface/client_semantic_tokens_request_full_delta.rb +37 -0
  66. data/lib/language_server/protocol/interface/client_semantic_tokens_request_options.rb +47 -0
  67. data/lib/language_server/protocol/interface/client_show_message_action_item_options.rb +38 -0
  68. data/lib/language_server/protocol/interface/client_signature_information_options.rb +71 -0
  69. data/lib/language_server/protocol/interface/client_signature_parameter_information_options.rb +39 -0
  70. data/lib/language_server/protocol/interface/client_symbol_kind_options.rb +43 -0
  71. data/lib/language_server/protocol/interface/client_symbol_resolve_options.rb +37 -0
  72. data/lib/language_server/protocol/interface/client_symbol_tag_options.rb +36 -0
  73. data/lib/language_server/protocol/interface/code_action.rb +20 -9
  74. data/lib/language_server/protocol/interface/code_action_client_capabilities.rb +34 -10
  75. data/lib/language_server/protocol/interface/code_action_context.rb +2 -2
  76. data/lib/language_server/protocol/interface/code_action_disabled.rb +40 -0
  77. data/lib/language_server/protocol/interface/code_action_kind_documentation.rb +53 -0
  78. data/lib/language_server/protocol/interface/code_action_options.rb +26 -4
  79. data/lib/language_server/protocol/interface/code_action_params.rb +2 -2
  80. data/lib/language_server/protocol/interface/code_action_registration_options.rb +26 -4
  81. data/lib/language_server/protocol/interface/code_action_tag_options.rb +36 -0
  82. data/lib/language_server/protocol/interface/code_lens.rb +3 -4
  83. data/lib/language_server/protocol/interface/code_lens_client_capabilities.rb +14 -2
  84. data/lib/language_server/protocol/interface/code_lens_options.rb +2 -2
  85. data/lib/language_server/protocol/interface/code_lens_params.rb +2 -2
  86. data/lib/language_server/protocol/interface/code_lens_registration_options.rb +2 -2
  87. data/lib/language_server/protocol/interface/code_lens_workspace_client_capabilities.rb +1 -1
  88. data/lib/language_server/protocol/interface/color_presentation.rb +2 -2
  89. data/lib/language_server/protocol/interface/color_presentation_params.rb +2 -2
  90. data/lib/language_server/protocol/interface/command.rb +13 -2
  91. data/lib/language_server/protocol/interface/completion_client_capabilities.rb +12 -9
  92. data/lib/language_server/protocol/interface/completion_context.rb +1 -1
  93. data/lib/language_server/protocol/interface/completion_item.rb +18 -18
  94. data/lib/language_server/protocol/interface/completion_item_apply_kinds.rb +96 -0
  95. data/lib/language_server/protocol/interface/completion_item_defaults.rb +96 -0
  96. data/lib/language_server/protocol/interface/completion_item_label_details.rb +2 -2
  97. data/lib/language_server/protocol/interface/completion_item_tag_options.rb +36 -0
  98. data/lib/language_server/protocol/interface/completion_list.rb +31 -4
  99. data/lib/language_server/protocol/interface/completion_list_capabilities.rb +65 -0
  100. data/lib/language_server/protocol/interface/completion_options.rb +6 -6
  101. data/lib/language_server/protocol/interface/completion_params.rb +3 -3
  102. data/lib/language_server/protocol/interface/completion_registration_options.rb +6 -6
  103. data/lib/language_server/protocol/interface/configuration_item.rb +3 -3
  104. data/lib/language_server/protocol/interface/create_file.rb +2 -2
  105. data/lib/language_server/protocol/interface/create_file_options.rb +2 -2
  106. data/lib/language_server/protocol/interface/declaration_client_capabilities.rb +2 -2
  107. data/lib/language_server/protocol/interface/declaration_options.rb +1 -1
  108. data/lib/language_server/protocol/interface/declaration_params.rb +2 -2
  109. data/lib/language_server/protocol/interface/declaration_registration_options.rb +2 -2
  110. data/lib/language_server/protocol/interface/definition_client_capabilities.rb +2 -2
  111. data/lib/language_server/protocol/interface/definition_options.rb +1 -1
  112. data/lib/language_server/protocol/interface/definition_params.rb +2 -2
  113. data/lib/language_server/protocol/interface/definition_registration_options.rb +1 -1
  114. data/lib/language_server/protocol/interface/delete_file.rb +2 -2
  115. data/lib/language_server/protocol/interface/delete_file_options.rb +2 -2
  116. data/lib/language_server/protocol/interface/diagnostic.rb +15 -11
  117. data/lib/language_server/protocol/interface/diagnostic_client_capabilities.rb +59 -3
  118. data/lib/language_server/protocol/interface/diagnostic_options.rb +2 -2
  119. data/lib/language_server/protocol/interface/diagnostic_registration_options.rb +3 -3
  120. data/lib/language_server/protocol/interface/diagnostic_workspace_client_capabilities.rb +1 -1
  121. data/lib/language_server/protocol/interface/diagnostics_capabilities.rb +72 -0
  122. data/lib/language_server/protocol/interface/did_change_configuration_client_capabilities.rb +1 -1
  123. data/lib/language_server/protocol/interface/did_change_configuration_registration_options.rb +1 -1
  124. data/lib/language_server/protocol/interface/did_change_watched_files_client_capabilities.rb +2 -2
  125. data/lib/language_server/protocol/interface/did_save_text_document_params.rb +1 -1
  126. data/lib/language_server/protocol/interface/document_color_client_capabilities.rb +1 -1
  127. data/lib/language_server/protocol/interface/document_color_options.rb +1 -1
  128. data/lib/language_server/protocol/interface/document_color_params.rb +2 -2
  129. data/lib/language_server/protocol/interface/document_color_registration_options.rb +2 -2
  130. data/lib/language_server/protocol/interface/document_diagnostic_params.rb +4 -4
  131. data/lib/language_server/protocol/interface/document_diagnostic_report.rb +3 -3
  132. data/lib/language_server/protocol/interface/document_diagnostic_report_progress.rb +97 -0
  133. data/lib/language_server/protocol/interface/document_filter.rb +11 -7
  134. data/lib/language_server/protocol/interface/document_formatting_client_capabilities.rb +1 -1
  135. data/lib/language_server/protocol/interface/document_formatting_options.rb +1 -1
  136. data/lib/language_server/protocol/interface/document_formatting_params.rb +1 -1
  137. data/lib/language_server/protocol/interface/document_formatting_registration_options.rb +1 -1
  138. data/lib/language_server/protocol/interface/document_highlight.rb +1 -1
  139. data/lib/language_server/protocol/interface/document_highlight_client_capabilities.rb +1 -1
  140. data/lib/language_server/protocol/interface/document_highlight_options.rb +1 -1
  141. data/lib/language_server/protocol/interface/document_highlight_params.rb +2 -2
  142. data/lib/language_server/protocol/interface/document_highlight_registration_options.rb +1 -1
  143. data/lib/language_server/protocol/interface/document_link.rb +4 -4
  144. data/lib/language_server/protocol/interface/document_link_client_capabilities.rb +2 -2
  145. data/lib/language_server/protocol/interface/document_link_options.rb +2 -2
  146. data/lib/language_server/protocol/interface/document_link_params.rb +2 -2
  147. data/lib/language_server/protocol/interface/document_link_registration_options.rb +2 -2
  148. data/lib/language_server/protocol/interface/document_on_type_formatting_client_capabilities.rb +1 -1
  149. data/lib/language_server/protocol/interface/document_on_type_formatting_options.rb +1 -1
  150. data/lib/language_server/protocol/interface/document_on_type_formatting_registration_options.rb +1 -1
  151. data/lib/language_server/protocol/interface/document_range_formatting_client_capabilities.rb +13 -2
  152. data/lib/language_server/protocol/interface/document_range_formatting_options.rb +13 -2
  153. data/lib/language_server/protocol/interface/document_range_formatting_params.rb +1 -1
  154. data/lib/language_server/protocol/interface/document_range_formatting_registration_options.rb +13 -2
  155. data/lib/language_server/protocol/interface/document_ranges_formatting_params.rb +65 -0
  156. data/lib/language_server/protocol/interface/document_symbol.rb +4 -4
  157. data/lib/language_server/protocol/interface/document_symbol_client_capabilities.rb +7 -7
  158. data/lib/language_server/protocol/interface/document_symbol_options.rb +2 -2
  159. data/lib/language_server/protocol/interface/document_symbol_params.rb +2 -2
  160. data/lib/language_server/protocol/interface/document_symbol_registration_options.rb +2 -2
  161. data/lib/language_server/protocol/interface/edit_range_with_insert_replace.rb +41 -0
  162. data/lib/language_server/protocol/interface/execute_command_client_capabilities.rb +1 -1
  163. data/lib/language_server/protocol/interface/execute_command_options.rb +1 -1
  164. data/lib/language_server/protocol/interface/execute_command_params.rb +2 -2
  165. data/lib/language_server/protocol/interface/execute_command_registration_options.rb +1 -1
  166. data/lib/language_server/protocol/interface/execution_summary.rb +1 -1
  167. data/lib/language_server/protocol/interface/file_create.rb +2 -2
  168. data/lib/language_server/protocol/interface/file_delete.rb +2 -2
  169. data/lib/language_server/protocol/interface/file_operation_client_capabilities.rb +7 -7
  170. data/lib/language_server/protocol/interface/file_operation_filter.rb +1 -1
  171. data/lib/language_server/protocol/interface/file_operation_options.rb +6 -6
  172. data/lib/language_server/protocol/interface/file_operation_pattern.rb +3 -3
  173. data/lib/language_server/protocol/interface/file_operation_pattern_options.rb +1 -1
  174. data/lib/language_server/protocol/interface/file_rename.rb +4 -4
  175. data/lib/language_server/protocol/interface/file_system_watcher.rb +1 -1
  176. data/lib/language_server/protocol/interface/folding_range.rb +5 -5
  177. data/lib/language_server/protocol/interface/folding_range_client_capabilities.rb +7 -7
  178. data/lib/language_server/protocol/interface/folding_range_options.rb +1 -1
  179. data/lib/language_server/protocol/interface/folding_range_params.rb +2 -2
  180. data/lib/language_server/protocol/interface/folding_range_registration_options.rb +2 -2
  181. data/lib/language_server/protocol/interface/folding_range_workspace_client_capabilities.rb +46 -0
  182. data/lib/language_server/protocol/interface/formatting_options.rb +3 -3
  183. data/lib/language_server/protocol/interface/full_document_diagnostic_report.rb +1 -1
  184. data/lib/language_server/protocol/interface/general_client_capabilities.rb +5 -5
  185. data/lib/language_server/protocol/interface/hover.rb +1 -1
  186. data/lib/language_server/protocol/interface/hover_client_capabilities.rb +2 -2
  187. data/lib/language_server/protocol/interface/hover_options.rb +1 -1
  188. data/lib/language_server/protocol/interface/hover_params.rb +1 -1
  189. data/lib/language_server/protocol/interface/hover_registration_options.rb +1 -1
  190. data/lib/language_server/protocol/interface/implementation_client_capabilities.rb +2 -2
  191. data/lib/language_server/protocol/interface/implementation_options.rb +1 -1
  192. data/lib/language_server/protocol/interface/implementation_params.rb +2 -2
  193. data/lib/language_server/protocol/interface/implementation_registration_options.rb +2 -2
  194. data/lib/language_server/protocol/interface/initialize_params.rb +9 -9
  195. data/lib/language_server/protocol/interface/initialize_result.rb +2 -2
  196. data/lib/language_server/protocol/interface/inlay_hint.rb +9 -6
  197. data/lib/language_server/protocol/interface/inlay_hint_client_capabilities.rb +3 -3
  198. data/lib/language_server/protocol/interface/inlay_hint_label_part.rb +3 -3
  199. data/lib/language_server/protocol/interface/inlay_hint_options.rb +2 -2
  200. data/lib/language_server/protocol/interface/inlay_hint_params.rb +1 -1
  201. data/lib/language_server/protocol/interface/inlay_hint_registration_options.rb +3 -3
  202. data/lib/language_server/protocol/interface/inlay_hint_workspace_client_capabilities.rb +1 -1
  203. data/lib/language_server/protocol/interface/inline_completion_client_capabilities.rb +38 -0
  204. data/lib/language_server/protocol/interface/inline_completion_context.rb +47 -0
  205. data/lib/language_server/protocol/interface/inline_completion_item.rb +65 -0
  206. data/lib/language_server/protocol/interface/inline_completion_list.rb +38 -0
  207. data/lib/language_server/protocol/interface/inline_completion_options.rb +35 -0
  208. data/lib/language_server/protocol/interface/inline_completion_params.rb +66 -0
  209. data/lib/language_server/protocol/interface/inline_completion_registration_options.rb +55 -0
  210. data/lib/language_server/protocol/interface/inline_value.rb +11 -7
  211. data/lib/language_server/protocol/interface/inline_value_client_capabilities.rb +1 -1
  212. data/lib/language_server/protocol/interface/inline_value_evaluatable_expression.rb +12 -6
  213. data/lib/language_server/protocol/interface/inline_value_options.rb +1 -1
  214. data/lib/language_server/protocol/interface/inline_value_params.rb +3 -3
  215. data/lib/language_server/protocol/interface/inline_value_registration_options.rb +2 -2
  216. data/lib/language_server/protocol/interface/inline_value_text.rb +1 -1
  217. data/lib/language_server/protocol/interface/inline_value_variable_lookup.rb +11 -5
  218. data/lib/language_server/protocol/interface/inline_value_workspace_client_capabilities.rb +1 -1
  219. data/lib/language_server/protocol/interface/linked_editing_range_client_capabilities.rb +1 -1
  220. data/lib/language_server/protocol/interface/linked_editing_range_options.rb +1 -1
  221. data/lib/language_server/protocol/interface/linked_editing_range_params.rb +1 -1
  222. data/lib/language_server/protocol/interface/linked_editing_range_registration_options.rb +2 -2
  223. data/lib/language_server/protocol/interface/linked_editing_ranges.rb +1 -1
  224. data/lib/language_server/protocol/interface/location_link.rb +1 -1
  225. data/lib/language_server/protocol/interface/location_uri_only.rb +35 -0
  226. data/lib/language_server/protocol/interface/log_trace_params.rb +1 -1
  227. data/lib/language_server/protocol/interface/markdown_client_capabilities.rb +2 -2
  228. data/lib/language_server/protocol/interface/marked_string_with_language.rb +40 -0
  229. data/lib/language_server/protocol/interface/moniker.rb +1 -1
  230. data/lib/language_server/protocol/interface/moniker_client_capabilities.rb +1 -1
  231. data/lib/language_server/protocol/interface/moniker_options.rb +1 -1
  232. data/lib/language_server/protocol/interface/moniker_params.rb +2 -2
  233. data/lib/language_server/protocol/interface/moniker_registration_options.rb +1 -1
  234. data/lib/language_server/protocol/interface/notebook_cell.rb +2 -2
  235. data/lib/language_server/protocol/interface/notebook_cell_array_change.rb +1 -1
  236. data/lib/language_server/protocol/interface/{hover_result.rb → notebook_cell_language.rb} +8 -5
  237. data/lib/language_server/protocol/interface/notebook_cell_text_document_filter.rb +1 -1
  238. data/lib/language_server/protocol/interface/notebook_document.rb +1 -1
  239. data/lib/language_server/protocol/interface/notebook_document_cell_change_structure.rb +56 -0
  240. data/lib/language_server/protocol/interface/notebook_document_cell_changes.rb +58 -0
  241. data/lib/language_server/protocol/interface/notebook_document_cell_content_changes.rb +41 -0
  242. data/lib/language_server/protocol/interface/notebook_document_change_event.rb +3 -3
  243. data/lib/language_server/protocol/interface/notebook_document_filter.rb +4 -4
  244. data/lib/language_server/protocol/interface/notebook_document_filter_notebook_type.rb +56 -0
  245. data/lib/language_server/protocol/interface/notebook_document_filter_pattern.rb +56 -0
  246. data/lib/language_server/protocol/interface/notebook_document_filter_scheme.rb +56 -0
  247. data/lib/language_server/protocol/interface/notebook_document_filter_with_cells.rb +47 -0
  248. data/lib/language_server/protocol/interface/notebook_document_filter_with_notebook.rb +47 -0
  249. data/lib/language_server/protocol/interface/notebook_document_sync_client_capabilities.rb +2 -2
  250. data/lib/language_server/protocol/interface/notebook_document_sync_options.rb +2 -2
  251. data/lib/language_server/protocol/interface/notebook_document_sync_registration_options.rb +3 -3
  252. data/lib/language_server/protocol/interface/notification_message.rb +1 -1
  253. data/lib/language_server/protocol/interface/parameter_information.rb +5 -1
  254. data/lib/language_server/protocol/interface/partial_result_params.rb +1 -1
  255. data/lib/language_server/protocol/interface/position.rb +2 -8
  256. data/lib/language_server/protocol/interface/prepare_rename_default_behavior.rb +33 -0
  257. data/lib/language_server/protocol/interface/prepare_rename_params.rb +1 -1
  258. data/lib/language_server/protocol/interface/prepare_rename_placeholder.rb +39 -0
  259. data/lib/language_server/protocol/interface/prepare_rename_result.rb +5 -5
  260. data/lib/language_server/protocol/interface/publish_diagnostics_client_capabilities.rb +18 -18
  261. data/lib/language_server/protocol/interface/publish_diagnostics_params.rb +1 -1
  262. data/lib/language_server/protocol/interface/reference_client_capabilities.rb +1 -1
  263. data/lib/language_server/protocol/interface/reference_options.rb +1 -1
  264. data/lib/language_server/protocol/interface/reference_params.rb +2 -2
  265. data/lib/language_server/protocol/interface/reference_registration_options.rb +1 -1
  266. data/lib/language_server/protocol/interface/registration.rb +1 -1
  267. data/lib/language_server/protocol/interface/regular_expressions_client_capabilities.rb +2 -2
  268. data/lib/language_server/protocol/interface/related_full_document_diagnostic_report.rb +2 -2
  269. data/lib/language_server/protocol/interface/related_unchanged_document_diagnostic_report.rb +1 -1
  270. data/lib/language_server/protocol/interface/rename_client_capabilities.rb +4 -4
  271. data/lib/language_server/protocol/interface/rename_file.rb +2 -2
  272. data/lib/language_server/protocol/interface/rename_file_options.rb +2 -2
  273. data/lib/language_server/protocol/interface/rename_options.rb +2 -2
  274. data/lib/language_server/protocol/interface/rename_params.rb +15 -15
  275. data/lib/language_server/protocol/interface/rename_registration_options.rb +2 -2
  276. data/lib/language_server/protocol/interface/request_message.rb +1 -1
  277. data/lib/language_server/protocol/interface/resource_operation.rb +1 -1
  278. data/lib/language_server/protocol/interface/response_error.rb +1 -1
  279. data/lib/language_server/protocol/interface/response_message.rb +3 -3
  280. data/lib/language_server/protocol/interface/save_options.rb +1 -1
  281. data/lib/language_server/protocol/interface/selected_completion_info.rb +47 -0
  282. data/lib/language_server/protocol/interface/selection_range.rb +1 -1
  283. data/lib/language_server/protocol/interface/selection_range_client_capabilities.rb +1 -1
  284. data/lib/language_server/protocol/interface/selection_range_options.rb +1 -1
  285. data/lib/language_server/protocol/interface/selection_range_params.rb +2 -2
  286. data/lib/language_server/protocol/interface/selection_range_registration_options.rb +2 -2
  287. data/lib/language_server/protocol/interface/semantic_tokens.rb +1 -1
  288. data/lib/language_server/protocol/interface/semantic_tokens_client_capabilities.rb +6 -6
  289. data/lib/language_server/protocol/interface/semantic_tokens_delta.rb +1 -1
  290. data/lib/language_server/protocol/interface/semantic_tokens_delta_params.rb +2 -2
  291. data/lib/language_server/protocol/interface/semantic_tokens_edit.rb +1 -1
  292. data/lib/language_server/protocol/interface/semantic_tokens_full_delta.rb +38 -0
  293. data/lib/language_server/protocol/interface/semantic_tokens_options.rb +4 -4
  294. data/lib/language_server/protocol/interface/semantic_tokens_params.rb +2 -2
  295. data/lib/language_server/protocol/interface/semantic_tokens_range_params.rb +2 -2
  296. data/lib/language_server/protocol/interface/semantic_tokens_registration_options.rb +5 -5
  297. data/lib/language_server/protocol/interface/semantic_tokens_workspace_client_capabilities.rb +1 -1
  298. data/lib/language_server/protocol/interface/server_capabilities.rb +48 -37
  299. data/lib/language_server/protocol/interface/server_completion_item_options.rb +40 -0
  300. data/lib/language_server/protocol/interface/server_info.rb +48 -0
  301. data/lib/language_server/protocol/interface/set_trace_params.rb +1 -1
  302. data/lib/language_server/protocol/interface/show_document_params.rb +6 -6
  303. data/lib/language_server/protocol/interface/show_message_request_client_capabilities.rb +2 -2
  304. data/lib/language_server/protocol/interface/show_message_request_params.rb +1 -1
  305. data/lib/language_server/protocol/interface/signature_help.rb +20 -8
  306. data/lib/language_server/protocol/interface/signature_help_client_capabilities.rb +4 -4
  307. data/lib/language_server/protocol/interface/signature_help_context.rb +2 -2
  308. data/lib/language_server/protocol/interface/signature_help_options.rb +3 -3
  309. data/lib/language_server/protocol/interface/signature_help_params.rb +2 -2
  310. data/lib/language_server/protocol/interface/signature_help_registration_options.rb +3 -3
  311. data/lib/language_server/protocol/interface/signature_information.rb +10 -4
  312. data/lib/language_server/protocol/interface/snippet_text_edit.rb +56 -0
  313. data/lib/language_server/protocol/interface/stale_request_support_options.rb +47 -0
  314. data/lib/language_server/protocol/interface/static_registration_options.rb +1 -1
  315. data/lib/language_server/protocol/interface/string_value.rb +53 -0
  316. data/lib/language_server/protocol/interface/symbol_information.rb +3 -3
  317. data/lib/language_server/protocol/interface/text_document_client_capabilities.rb +53 -31
  318. data/lib/language_server/protocol/interface/text_document_content_change_event.rb +2 -2
  319. data/lib/language_server/protocol/interface/text_document_content_change_partial.rb +56 -0
  320. data/lib/language_server/protocol/interface/text_document_content_change_whole_document.rb +36 -0
  321. data/lib/language_server/protocol/interface/text_document_content_client_capabilities.rb +38 -0
  322. data/lib/language_server/protocol/interface/text_document_content_options.rb +38 -0
  323. data/lib/language_server/protocol/interface/text_document_content_params.rb +38 -0
  324. data/lib/language_server/protocol/interface/text_document_content_refresh_params.rb +38 -0
  325. data/lib/language_server/protocol/interface/text_document_content_registration_options.rb +48 -0
  326. data/lib/language_server/protocol/interface/text_document_content_result.rb +41 -0
  327. data/lib/language_server/protocol/interface/text_document_edit.rb +4 -1
  328. data/lib/language_server/protocol/interface/text_document_filter.rb +10 -6
  329. data/lib/language_server/protocol/interface/text_document_filter_client_capabilities.rb +35 -0
  330. data/lib/language_server/protocol/interface/text_document_filter_language.rb +60 -0
  331. data/lib/language_server/protocol/interface/text_document_filter_pattern.rb +60 -0
  332. data/lib/language_server/protocol/interface/text_document_filter_scheme.rb +60 -0
  333. data/lib/language_server/protocol/interface/text_document_item.rb +1 -1
  334. data/lib/language_server/protocol/interface/text_document_save_registration_options.rb +1 -1
  335. data/lib/language_server/protocol/interface/text_document_sync_client_capabilities.rb +4 -4
  336. data/lib/language_server/protocol/interface/text_document_sync_options.rb +5 -5
  337. data/lib/language_server/protocol/interface/type_definition_client_capabilities.rb +2 -2
  338. data/lib/language_server/protocol/interface/type_definition_options.rb +1 -1
  339. data/lib/language_server/protocol/interface/type_definition_params.rb +2 -2
  340. data/lib/language_server/protocol/interface/type_definition_registration_options.rb +2 -2
  341. data/lib/language_server/protocol/interface/type_hierarchy_client_capabilities.rb +1 -1
  342. data/lib/language_server/protocol/interface/type_hierarchy_item.rb +3 -3
  343. data/lib/language_server/protocol/interface/type_hierarchy_options.rb +1 -1
  344. data/lib/language_server/protocol/interface/type_hierarchy_prepare_params.rb +1 -1
  345. data/lib/language_server/protocol/interface/type_hierarchy_registration_options.rb +2 -2
  346. data/lib/language_server/protocol/interface/type_hierarchy_subtypes_params.rb +2 -2
  347. data/lib/language_server/protocol/interface/type_hierarchy_supertypes_params.rb +2 -2
  348. data/lib/language_server/protocol/interface/window_client_capabilities.rb +3 -3
  349. data/lib/language_server/protocol/interface/work_done_progress_begin.rb +3 -3
  350. data/lib/language_server/protocol/interface/work_done_progress_end.rb +1 -1
  351. data/lib/language_server/protocol/interface/work_done_progress_options.rb +1 -1
  352. data/lib/language_server/protocol/interface/work_done_progress_params.rb +1 -1
  353. data/lib/language_server/protocol/interface/work_done_progress_report.rb +3 -3
  354. data/lib/language_server/protocol/interface/workspace_client_capabilities.rb +37 -15
  355. data/lib/language_server/protocol/interface/workspace_diagnostic_params.rb +3 -3
  356. data/lib/language_server/protocol/interface/workspace_document_diagnostic_report.rb +2 -2
  357. data/lib/language_server/protocol/interface/workspace_edit.rb +3 -3
  358. data/lib/language_server/protocol/interface/workspace_edit_client_capabilities.rb +29 -7
  359. data/lib/language_server/protocol/interface/workspace_edit_metadata.rb +38 -0
  360. data/lib/language_server/protocol/interface/workspace_folders_initialize_params.rb +1 -1
  361. data/lib/language_server/protocol/interface/workspace_folders_server_capabilities.rb +2 -2
  362. data/lib/language_server/protocol/interface/workspace_full_document_diagnostic_report.rb +1 -1
  363. data/lib/language_server/protocol/interface/workspace_options.rb +62 -0
  364. data/lib/language_server/protocol/interface/workspace_symbol.rb +4 -4
  365. data/lib/language_server/protocol/interface/workspace_symbol_client_capabilities.rb +7 -7
  366. data/lib/language_server/protocol/interface/workspace_symbol_options.rb +2 -2
  367. data/lib/language_server/protocol/interface/workspace_symbol_params.rb +8 -2
  368. data/lib/language_server/protocol/interface/workspace_symbol_registration_options.rb +2 -2
  369. data/lib/language_server/protocol/interface.rb +150 -2
  370. data/lib/language_server/protocol/transport/io/writer.rb +2 -0
  371. data/lib/language_server/protocol/version.rb +1 -1
  372. data/sig/language_server/protocol/constant/apply_kind.rbs +26 -0
  373. data/sig/language_server/protocol/constant/code_action_kind.rbs +42 -29
  374. data/sig/language_server/protocol/constant/code_action_tag.rbs +17 -0
  375. data/sig/language_server/protocol/constant/code_action_trigger_kind.rbs +2 -0
  376. data/sig/language_server/protocol/constant/completion_item_tag.rbs +4 -2
  377. data/sig/language_server/protocol/constant/completion_trigger_kind.rbs +2 -3
  378. data/sig/language_server/protocol/constant/diagnostic_severity.rbs +3 -0
  379. data/sig/language_server/protocol/constant/diagnostic_tag.rbs +4 -2
  380. data/sig/language_server/protocol/constant/document_diagnostic_report_kind.rbs +4 -2
  381. data/sig/language_server/protocol/constant/error_codes.rbs +8 -26
  382. data/sig/language_server/protocol/constant/failure_handling_kind.rbs +9 -10
  383. data/sig/language_server/protocol/constant/file_change_type.rbs +1 -1
  384. data/sig/language_server/protocol/constant/file_operation_pattern_kind.rbs +4 -2
  385. data/sig/language_server/protocol/constant/folding_range_kind.rbs +4 -5
  386. data/sig/language_server/protocol/constant/inlay_hint_kind.rbs +2 -0
  387. data/sig/language_server/protocol/constant/inline_completion_trigger_kind.rbs +21 -0
  388. data/sig/language_server/protocol/constant/insert_text_format.rbs +2 -0
  389. data/sig/language_server/protocol/constant/insert_text_mode.rbs +2 -0
  390. data/sig/language_server/protocol/constant/language_kind.rbs +83 -0
  391. data/sig/language_server/protocol/constant/lsp_error_codes.rbs +1 -1
  392. data/sig/language_server/protocol/constant/markup_kind.rbs +2 -2
  393. data/sig/language_server/protocol/constant/message_type.rbs +9 -0
  394. data/sig/language_server/protocol/constant/moniker_kind.rbs +5 -3
  395. data/sig/language_server/protocol/constant/notebook_cell_kind.rbs +2 -0
  396. data/sig/language_server/protocol/constant/position_encoding_kind.rbs +7 -7
  397. data/sig/language_server/protocol/constant/prepare_support_default_behavior.rbs +1 -1
  398. data/sig/language_server/protocol/constant/resource_operation_kind.rbs +3 -6
  399. data/sig/language_server/protocol/constant/semantic_token_modifiers.rbs +17 -10
  400. data/sig/language_server/protocol/constant/semantic_token_types.rbs +39 -25
  401. data/sig/language_server/protocol/constant/signature_help_trigger_kind.rbs +3 -2
  402. data/sig/language_server/protocol/constant/symbol_tag.rbs +2 -0
  403. data/sig/language_server/protocol/constant/text_document_save_reason.rbs +2 -2
  404. data/sig/language_server/protocol/constant/text_document_sync_kind.rbs +3 -3
  405. data/sig/language_server/protocol/constant/token_format.rbs +1 -1
  406. data/sig/language_server/protocol/constant/{trace_values.rbs → trace_value.rbs} +1 -1
  407. data/sig/language_server/protocol/constant/uniqueness_level.rbs +7 -5
  408. data/sig/language_server/protocol/interface/apply_workspace_edit_params.rbs +4 -1
  409. data/sig/language_server/protocol/interface/change_annotations_support_options.rbs +22 -0
  410. data/sig/language_server/protocol/interface/client_code_action_kind_options.rbs +22 -0
  411. data/sig/language_server/protocol/interface/client_code_action_literal_options.rbs +22 -0
  412. data/sig/language_server/protocol/interface/client_code_action_resolve_options.rbs +22 -0
  413. data/sig/language_server/protocol/interface/client_code_lens_resolve_options.rbs +22 -0
  414. data/sig/language_server/protocol/interface/client_completion_item_insert_text_mode_options.rbs +22 -0
  415. data/sig/language_server/protocol/interface/client_completion_item_options.rbs +49 -0
  416. data/sig/language_server/protocol/interface/client_completion_item_options_kind.rbs +22 -0
  417. data/sig/language_server/protocol/interface/client_completion_item_resolve_options.rbs +22 -0
  418. data/sig/language_server/protocol/interface/client_diagnostics_tag_options.rbs +22 -0
  419. data/sig/language_server/protocol/interface/client_folding_range_kind_options.rbs +22 -0
  420. data/sig/language_server/protocol/interface/client_folding_range_options.rbs +22 -0
  421. data/sig/language_server/protocol/interface/client_info.rbs +28 -0
  422. data/sig/language_server/protocol/interface/client_inlay_hint_resolve_options.rbs +22 -0
  423. data/sig/language_server/protocol/interface/client_semantic_tokens_request_full_delta.rbs +22 -0
  424. data/sig/language_server/protocol/interface/client_semantic_tokens_request_options.rbs +25 -0
  425. data/sig/language_server/protocol/interface/client_show_message_action_item_options.rbs +22 -0
  426. data/sig/language_server/protocol/interface/client_signature_information_options.rbs +31 -0
  427. data/sig/language_server/protocol/interface/client_signature_parameter_information_options.rbs +22 -0
  428. data/sig/language_server/protocol/interface/client_symbol_kind_options.rbs +22 -0
  429. data/sig/language_server/protocol/interface/client_symbol_resolve_options.rbs +22 -0
  430. data/sig/language_server/protocol/interface/client_symbol_tag_options.rbs +22 -0
  431. data/sig/language_server/protocol/interface/code_action.rbs +4 -1
  432. data/sig/language_server/protocol/interface/code_action_client_capabilities.rbs +7 -1
  433. data/sig/language_server/protocol/interface/code_action_disabled.rbs +24 -0
  434. data/sig/language_server/protocol/interface/code_action_kind_documentation.rbs +27 -0
  435. data/sig/language_server/protocol/interface/code_action_options.rbs +4 -1
  436. data/sig/language_server/protocol/interface/code_action_registration_options.rbs +4 -1
  437. data/sig/language_server/protocol/interface/code_action_tag_options.rbs +22 -0
  438. data/sig/language_server/protocol/interface/code_lens_client_capabilities.rbs +4 -1
  439. data/sig/language_server/protocol/interface/command.rbs +4 -1
  440. data/sig/language_server/protocol/interface/completion_item_apply_kinds.rbs +41 -0
  441. data/sig/language_server/protocol/interface/completion_item_defaults.rbs +48 -0
  442. data/sig/language_server/protocol/interface/completion_item_tag_options.rbs +22 -0
  443. data/sig/language_server/protocol/interface/completion_list.rbs +4 -1
  444. data/sig/language_server/protocol/interface/completion_list_capabilities.rbs +28 -0
  445. data/sig/language_server/protocol/interface/diagnostic.rbs +2 -2
  446. data/sig/language_server/protocol/interface/diagnostic_client_capabilities.rbs +16 -1
  447. data/sig/language_server/protocol/interface/diagnostics_capabilities.rbs +31 -0
  448. data/sig/language_server/protocol/interface/document_diagnostic_report_progress.rbs +45 -0
  449. data/sig/language_server/protocol/interface/document_filter.rbs +3 -3
  450. data/sig/language_server/protocol/interface/document_range_formatting_client_capabilities.rbs +4 -1
  451. data/sig/language_server/protocol/interface/document_range_formatting_options.rbs +4 -1
  452. data/sig/language_server/protocol/interface/document_range_formatting_registration_options.rbs +4 -1
  453. data/sig/language_server/protocol/interface/document_ranges_formatting_params.rbs +33 -0
  454. data/sig/language_server/protocol/interface/edit_range_with_insert_replace.rbs +27 -0
  455. data/sig/language_server/protocol/interface/folding_range_workspace_client_capabilities.rbs +24 -0
  456. data/sig/language_server/protocol/interface/inline_completion_client_capabilities.rbs +24 -0
  457. data/sig/language_server/protocol/interface/inline_completion_context.rbs +27 -0
  458. data/sig/language_server/protocol/interface/inline_completion_item.rbs +33 -0
  459. data/sig/language_server/protocol/interface/inline_completion_list.rbs +24 -0
  460. data/sig/language_server/protocol/interface/inline_completion_options.rbs +24 -0
  461. data/sig/language_server/protocol/interface/inline_completion_params.rbs +33 -0
  462. data/sig/language_server/protocol/interface/inline_completion_registration_options.rbs +30 -0
  463. data/sig/language_server/protocol/interface/inline_value_evaluatable_expression.rbs +7 -3
  464. data/sig/language_server/protocol/interface/inline_value_text.rbs +1 -1
  465. data/sig/language_server/protocol/interface/inline_value_variable_lookup.rbs +7 -3
  466. data/sig/language_server/protocol/interface/location_uri_only.rbs +24 -0
  467. data/sig/language_server/protocol/interface/marked_string_with_language.rbs +26 -0
  468. data/sig/language_server/protocol/interface/{hover_result.rbs → notebook_cell_language.rbs} +6 -3
  469. data/sig/language_server/protocol/interface/notebook_document_cell_change_structure.rbs +30 -0
  470. data/sig/language_server/protocol/interface/notebook_document_cell_changes.rbs +30 -0
  471. data/sig/language_server/protocol/interface/notebook_document_cell_content_changes.rbs +27 -0
  472. data/sig/language_server/protocol/interface/notebook_document_filter.rbs +2 -2
  473. data/sig/language_server/protocol/interface/notebook_document_filter_notebook_type.rbs +30 -0
  474. data/sig/language_server/protocol/interface/notebook_document_filter_pattern.rbs +30 -0
  475. data/sig/language_server/protocol/interface/notebook_document_filter_scheme.rbs +30 -0
  476. data/sig/language_server/protocol/interface/notebook_document_filter_with_cells.rbs +25 -0
  477. data/sig/language_server/protocol/interface/notebook_document_filter_with_notebook.rbs +25 -0
  478. data/sig/language_server/protocol/interface/position.rbs +2 -2
  479. data/sig/language_server/protocol/interface/prepare_rename_default_behavior.rbs +22 -0
  480. data/sig/language_server/protocol/interface/prepare_rename_placeholder.rbs +25 -0
  481. data/sig/language_server/protocol/interface/publish_diagnostics_client_capabilities.rbs +4 -4
  482. data/sig/language_server/protocol/interface/regular_expressions_client_capabilities.rbs +2 -2
  483. data/sig/language_server/protocol/interface/rename_params.rbs +4 -4
  484. data/sig/language_server/protocol/interface/selected_completion_info.rbs +27 -0
  485. data/sig/language_server/protocol/interface/semantic_tokens_full_delta.rbs +24 -0
  486. data/sig/language_server/protocol/interface/server_capabilities.rbs +4 -1
  487. data/sig/language_server/protocol/interface/server_completion_item_options.rbs +22 -0
  488. data/sig/language_server/protocol/interface/server_info.rbs +28 -0
  489. data/sig/language_server/protocol/interface/show_document_params.rbs +1 -1
  490. data/sig/language_server/protocol/interface/signature_help.rbs +1 -1
  491. data/sig/language_server/protocol/interface/signature_information.rbs +1 -1
  492. data/sig/language_server/protocol/interface/snippet_text_edit.rbs +30 -0
  493. data/sig/language_server/protocol/interface/stale_request_support_options.rbs +25 -0
  494. data/sig/language_server/protocol/interface/string_value.rbs +33 -0
  495. data/sig/language_server/protocol/interface/text_document_client_capabilities.rbs +7 -1
  496. data/sig/language_server/protocol/interface/text_document_content_change_partial.rbs +28 -0
  497. data/sig/language_server/protocol/interface/text_document_content_change_whole_document.rbs +22 -0
  498. data/sig/language_server/protocol/interface/text_document_content_client_capabilities.rbs +24 -0
  499. data/sig/language_server/protocol/interface/text_document_content_options.rbs +24 -0
  500. data/sig/language_server/protocol/interface/text_document_content_params.rbs +24 -0
  501. data/sig/language_server/protocol/interface/text_document_content_refresh_params.rbs +24 -0
  502. data/sig/language_server/protocol/interface/text_document_content_registration_options.rbs +27 -0
  503. data/sig/language_server/protocol/interface/text_document_content_result.rbs +24 -0
  504. data/sig/language_server/protocol/interface/text_document_filter.rbs +3 -3
  505. data/sig/language_server/protocol/interface/text_document_filter_client_capabilities.rbs +19 -0
  506. data/sig/language_server/protocol/interface/text_document_filter_language.rbs +30 -0
  507. data/sig/language_server/protocol/interface/text_document_filter_pattern.rbs +30 -0
  508. data/sig/language_server/protocol/interface/text_document_filter_scheme.rbs +30 -0
  509. data/sig/language_server/protocol/interface/text_document_item.rbs +2 -2
  510. data/sig/language_server/protocol/interface/workspace_client_capabilities.rbs +7 -1
  511. data/sig/language_server/protocol/interface/workspace_edit_client_capabilities.rbs +7 -1
  512. data/sig/language_server/protocol/interface/workspace_edit_metadata.rbs +24 -0
  513. data/sig/language_server/protocol/interface/workspace_options.rbs +30 -0
  514. metadata +162 -8
  515. data/lib/language_server/protocol/constant/initialize_error_codes.rb +0 -18
  516. data/sig/language_server/protocol/constant/initialize_error_codes.rbs +0 -18
@@ -0,0 +1,60 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Interface
4
+ #
5
+ # A document filter where `scheme` is required field.
6
+ #
7
+ # @since 3.18.0
8
+ #
9
+ class TextDocumentFilterScheme
10
+ def initialize(language: nil, scheme:, pattern: nil)
11
+ @attributes = {}
12
+
13
+ @attributes[:language] = language unless language.nil?
14
+ @attributes[:scheme] = scheme
15
+ @attributes[:pattern] = pattern unless pattern.nil?
16
+
17
+ @attributes.freeze
18
+ end
19
+
20
+ #
21
+ # A language id, like `typescript`.
22
+ #
23
+ # @return [string]
24
+ def language
25
+ attributes.fetch(:language)
26
+ end
27
+
28
+ #
29
+ # A Uri {@link Uri.scheme scheme}, like `file` or `untitled`.
30
+ #
31
+ # @return [string]
32
+ def scheme
33
+ attributes.fetch(:scheme)
34
+ end
35
+
36
+ #
37
+ # A glob pattern, like **​/*.{ts,js}. See TextDocumentFilter for examples.
38
+ #
39
+ # @since 3.18.0 - support for relative patterns. Whether clients support
40
+ # relative patterns depends on the client capability
41
+ # `textDocuments.filters.relativePatternSupport`.
42
+ #
43
+ # @return [GlobPattern]
44
+ def pattern
45
+ attributes.fetch(:pattern)
46
+ end
47
+
48
+ attr_reader :attributes
49
+
50
+ def to_hash
51
+ attributes
52
+ end
53
+
54
+ def to_json(*args)
55
+ to_hash.to_json(*args)
56
+ end
57
+ end
58
+ end
59
+ end
60
+ end
@@ -28,7 +28,7 @@ module LanguageServer
28
28
  #
29
29
  # The text document's language identifier.
30
30
  #
31
- # @return [string]
31
+ # @return [LanguageKind]
32
32
  def language_id
33
33
  attributes.fetch(:languageId)
34
34
  end
@@ -9,7 +9,7 @@ module LanguageServer
9
9
  @attributes = {}
10
10
 
11
11
  @attributes[:documentSelector] = document_selector
12
- @attributes[:includeText] = include_text if include_text
12
+ @attributes[:includeText] = include_text unless include_text.nil?
13
13
 
14
14
  @attributes.freeze
15
15
  end
@@ -5,10 +5,10 @@ module LanguageServer
5
5
  def initialize(dynamic_registration: nil, will_save: nil, will_save_wait_until: nil, did_save: nil)
6
6
  @attributes = {}
7
7
 
8
- @attributes[:dynamicRegistration] = dynamic_registration if dynamic_registration
9
- @attributes[:willSave] = will_save if will_save
10
- @attributes[:willSaveWaitUntil] = will_save_wait_until if will_save_wait_until
11
- @attributes[:didSave] = did_save if did_save
8
+ @attributes[:dynamicRegistration] = dynamic_registration unless dynamic_registration.nil?
9
+ @attributes[:willSave] = will_save unless will_save.nil?
10
+ @attributes[:willSaveWaitUntil] = will_save_wait_until unless will_save_wait_until.nil?
11
+ @attributes[:didSave] = did_save unless did_save.nil?
12
12
 
13
13
  @attributes.freeze
14
14
  end
@@ -5,11 +5,11 @@ module LanguageServer
5
5
  def initialize(open_close: nil, change: nil, will_save: nil, will_save_wait_until: nil, save: nil)
6
6
  @attributes = {}
7
7
 
8
- @attributes[:openClose] = open_close if open_close
9
- @attributes[:change] = change if change
10
- @attributes[:willSave] = will_save if will_save
11
- @attributes[:willSaveWaitUntil] = will_save_wait_until if will_save_wait_until
12
- @attributes[:save] = save if save
8
+ @attributes[:openClose] = open_close unless open_close.nil?
9
+ @attributes[:change] = change unless change.nil?
10
+ @attributes[:willSave] = will_save unless will_save.nil?
11
+ @attributes[:willSaveWaitUntil] = will_save_wait_until unless will_save_wait_until.nil?
12
+ @attributes[:save] = save unless save.nil?
13
13
 
14
14
  @attributes.freeze
15
15
  end
@@ -8,8 +8,8 @@ module LanguageServer
8
8
  def initialize(dynamic_registration: nil, link_support: nil)
9
9
  @attributes = {}
10
10
 
11
- @attributes[:dynamicRegistration] = dynamic_registration if dynamic_registration
12
- @attributes[:linkSupport] = link_support if link_support
11
+ @attributes[:dynamicRegistration] = dynamic_registration unless dynamic_registration.nil?
12
+ @attributes[:linkSupport] = link_support unless link_support.nil?
13
13
 
14
14
  @attributes.freeze
15
15
  end
@@ -5,7 +5,7 @@ module LanguageServer
5
5
  def initialize(work_done_progress: nil)
6
6
  @attributes = {}
7
7
 
8
- @attributes[:workDoneProgress] = work_done_progress if work_done_progress
8
+ @attributes[:workDoneProgress] = work_done_progress unless work_done_progress.nil?
9
9
 
10
10
  @attributes.freeze
11
11
  end
@@ -7,8 +7,8 @@ module LanguageServer
7
7
 
8
8
  @attributes[:textDocument] = text_document
9
9
  @attributes[:position] = position
10
- @attributes[:workDoneToken] = work_done_token if work_done_token
11
- @attributes[:partialResultToken] = partial_result_token if partial_result_token
10
+ @attributes[:workDoneToken] = work_done_token unless work_done_token.nil?
11
+ @attributes[:partialResultToken] = partial_result_token unless partial_result_token.nil?
12
12
 
13
13
  @attributes.freeze
14
14
  end
@@ -6,8 +6,8 @@ module LanguageServer
6
6
  @attributes = {}
7
7
 
8
8
  @attributes[:documentSelector] = document_selector
9
- @attributes[:workDoneProgress] = work_done_progress if work_done_progress
10
- @attributes[:id] = id if id
9
+ @attributes[:workDoneProgress] = work_done_progress unless work_done_progress.nil?
10
+ @attributes[:id] = id unless id.nil?
11
11
 
12
12
  @attributes.freeze
13
13
  end
@@ -8,7 +8,7 @@ module LanguageServer
8
8
  def initialize(dynamic_registration: nil)
9
9
  @attributes = {}
10
10
 
11
- @attributes[:dynamicRegistration] = dynamic_registration if dynamic_registration
11
+ @attributes[:dynamicRegistration] = dynamic_registration unless dynamic_registration.nil?
12
12
 
13
13
  @attributes.freeze
14
14
  end
@@ -10,12 +10,12 @@ module LanguageServer
10
10
 
11
11
  @attributes[:name] = name
12
12
  @attributes[:kind] = kind
13
- @attributes[:tags] = tags if tags
14
- @attributes[:detail] = detail if detail
13
+ @attributes[:tags] = tags unless tags.nil?
14
+ @attributes[:detail] = detail unless detail.nil?
15
15
  @attributes[:uri] = uri
16
16
  @attributes[:range] = range
17
17
  @attributes[:selectionRange] = selection_range
18
- @attributes[:data] = data if data
18
+ @attributes[:data] = data unless data.nil?
19
19
 
20
20
  @attributes.freeze
21
21
  end
@@ -10,7 +10,7 @@ module LanguageServer
10
10
  def initialize(work_done_progress: nil)
11
11
  @attributes = {}
12
12
 
13
- @attributes[:workDoneProgress] = work_done_progress if work_done_progress
13
+ @attributes[:workDoneProgress] = work_done_progress unless work_done_progress.nil?
14
14
 
15
15
  @attributes.freeze
16
16
  end
@@ -12,7 +12,7 @@ module LanguageServer
12
12
 
13
13
  @attributes[:textDocument] = text_document
14
14
  @attributes[:position] = position
15
- @attributes[:workDoneToken] = work_done_token if work_done_token
15
+ @attributes[:workDoneToken] = work_done_token unless work_done_token.nil?
16
16
 
17
17
  @attributes.freeze
18
18
  end
@@ -11,8 +11,8 @@ module LanguageServer
11
11
  @attributes = {}
12
12
 
13
13
  @attributes[:documentSelector] = document_selector
14
- @attributes[:workDoneProgress] = work_done_progress if work_done_progress
15
- @attributes[:id] = id if id
14
+ @attributes[:workDoneProgress] = work_done_progress unless work_done_progress.nil?
15
+ @attributes[:id] = id unless id.nil?
16
16
 
17
17
  @attributes.freeze
18
18
  end
@@ -11,8 +11,8 @@ module LanguageServer
11
11
  @attributes = {}
12
12
 
13
13
  @attributes[:item] = item
14
- @attributes[:workDoneToken] = work_done_token if work_done_token
15
- @attributes[:partialResultToken] = partial_result_token if partial_result_token
14
+ @attributes[:workDoneToken] = work_done_token unless work_done_token.nil?
15
+ @attributes[:partialResultToken] = partial_result_token unless partial_result_token.nil?
16
16
 
17
17
  @attributes.freeze
18
18
  end
@@ -11,8 +11,8 @@ module LanguageServer
11
11
  @attributes = {}
12
12
 
13
13
  @attributes[:item] = item
14
- @attributes[:workDoneToken] = work_done_token if work_done_token
15
- @attributes[:partialResultToken] = partial_result_token if partial_result_token
14
+ @attributes[:workDoneToken] = work_done_token unless work_done_token.nil?
15
+ @attributes[:partialResultToken] = partial_result_token unless partial_result_token.nil?
16
16
 
17
17
  @attributes.freeze
18
18
  end
@@ -5,9 +5,9 @@ module LanguageServer
5
5
  def initialize(work_done_progress: nil, show_message: nil, show_document: nil)
6
6
  @attributes = {}
7
7
 
8
- @attributes[:workDoneProgress] = work_done_progress if work_done_progress
9
- @attributes[:showMessage] = show_message if show_message
10
- @attributes[:showDocument] = show_document if show_document
8
+ @attributes[:workDoneProgress] = work_done_progress unless work_done_progress.nil?
9
+ @attributes[:showMessage] = show_message unless show_message.nil?
10
+ @attributes[:showDocument] = show_document unless show_document.nil?
11
11
 
12
12
  @attributes.freeze
13
13
  end
@@ -7,9 +7,9 @@ module LanguageServer
7
7
 
8
8
  @attributes[:kind] = kind
9
9
  @attributes[:title] = title
10
- @attributes[:cancellable] = cancellable if cancellable
11
- @attributes[:message] = message if message
12
- @attributes[:percentage] = percentage if percentage
10
+ @attributes[:cancellable] = cancellable unless cancellable.nil?
11
+ @attributes[:message] = message unless message.nil?
12
+ @attributes[:percentage] = percentage unless percentage.nil?
13
13
 
14
14
  @attributes.freeze
15
15
  end
@@ -6,7 +6,7 @@ module LanguageServer
6
6
  @attributes = {}
7
7
 
8
8
  @attributes[:kind] = kind
9
- @attributes[:message] = message if message
9
+ @attributes[:message] = message unless message.nil?
10
10
 
11
11
  @attributes.freeze
12
12
  end
@@ -5,7 +5,7 @@ module LanguageServer
5
5
  def initialize(work_done_progress: nil)
6
6
  @attributes = {}
7
7
 
8
- @attributes[:workDoneProgress] = work_done_progress if work_done_progress
8
+ @attributes[:workDoneProgress] = work_done_progress unless work_done_progress.nil?
9
9
 
10
10
  @attributes.freeze
11
11
  end
@@ -5,7 +5,7 @@ module LanguageServer
5
5
  def initialize(work_done_token: nil)
6
6
  @attributes = {}
7
7
 
8
- @attributes[:workDoneToken] = work_done_token if work_done_token
8
+ @attributes[:workDoneToken] = work_done_token unless work_done_token.nil?
9
9
 
10
10
  @attributes.freeze
11
11
  end
@@ -6,9 +6,9 @@ module LanguageServer
6
6
  @attributes = {}
7
7
 
8
8
  @attributes[:kind] = kind
9
- @attributes[:cancellable] = cancellable if cancellable
10
- @attributes[:message] = message if message
11
- @attributes[:percentage] = percentage if percentage
9
+ @attributes[:cancellable] = cancellable unless cancellable.nil?
10
+ @attributes[:message] = message unless message.nil?
11
+ @attributes[:percentage] = percentage unless percentage.nil?
12
12
 
13
13
  @attributes.freeze
14
14
  end
@@ -5,23 +5,25 @@ module LanguageServer
5
5
  # Workspace specific client capabilities.
6
6
  #
7
7
  class WorkspaceClientCapabilities
8
- def initialize(apply_edit: nil, workspace_edit: nil, did_change_configuration: nil, did_change_watched_files: nil, symbol: nil, execute_command: nil, workspace_folders: nil, configuration: nil, semantic_tokens: nil, code_lens: nil, file_operations: nil, inline_value: nil, inlay_hint: nil, diagnostics: nil)
8
+ def initialize(apply_edit: nil, workspace_edit: nil, did_change_configuration: nil, did_change_watched_files: nil, symbol: nil, execute_command: nil, workspace_folders: nil, configuration: nil, semantic_tokens: nil, code_lens: nil, file_operations: nil, inline_value: nil, inlay_hint: nil, diagnostics: nil, folding_range: nil, text_document_content: nil)
9
9
  @attributes = {}
10
10
 
11
- @attributes[:applyEdit] = apply_edit if apply_edit
12
- @attributes[:workspaceEdit] = workspace_edit if workspace_edit
13
- @attributes[:didChangeConfiguration] = did_change_configuration if did_change_configuration
14
- @attributes[:didChangeWatchedFiles] = did_change_watched_files if did_change_watched_files
15
- @attributes[:symbol] = symbol if symbol
16
- @attributes[:executeCommand] = execute_command if execute_command
17
- @attributes[:workspaceFolders] = workspace_folders if workspace_folders
18
- @attributes[:configuration] = configuration if configuration
19
- @attributes[:semanticTokens] = semantic_tokens if semantic_tokens
20
- @attributes[:codeLens] = code_lens if code_lens
21
- @attributes[:fileOperations] = file_operations if file_operations
22
- @attributes[:inlineValue] = inline_value if inline_value
23
- @attributes[:inlayHint] = inlay_hint if inlay_hint
24
- @attributes[:diagnostics] = diagnostics if diagnostics
11
+ @attributes[:applyEdit] = apply_edit unless apply_edit.nil?
12
+ @attributes[:workspaceEdit] = workspace_edit unless workspace_edit.nil?
13
+ @attributes[:didChangeConfiguration] = did_change_configuration unless did_change_configuration.nil?
14
+ @attributes[:didChangeWatchedFiles] = did_change_watched_files unless did_change_watched_files.nil?
15
+ @attributes[:symbol] = symbol unless symbol.nil?
16
+ @attributes[:executeCommand] = execute_command unless execute_command.nil?
17
+ @attributes[:workspaceFolders] = workspace_folders unless workspace_folders.nil?
18
+ @attributes[:configuration] = configuration unless configuration.nil?
19
+ @attributes[:semanticTokens] = semantic_tokens unless semantic_tokens.nil?
20
+ @attributes[:codeLens] = code_lens unless code_lens.nil?
21
+ @attributes[:fileOperations] = file_operations unless file_operations.nil?
22
+ @attributes[:inlineValue] = inline_value unless inline_value.nil?
23
+ @attributes[:inlayHint] = inlay_hint unless inlay_hint.nil?
24
+ @attributes[:diagnostics] = diagnostics unless diagnostics.nil?
25
+ @attributes[:foldingRange] = folding_range unless folding_range.nil?
26
+ @attributes[:textDocumentContent] = text_document_content unless text_document_content.nil?
25
27
 
26
28
  @attributes.freeze
27
29
  end
@@ -161,6 +163,26 @@ module LanguageServer
161
163
  attributes.fetch(:diagnostics)
162
164
  end
163
165
 
166
+ #
167
+ # Capabilities specific to the folding range requests scoped to the workspace.
168
+ #
169
+ # @since 3.18.0
170
+ #
171
+ # @return [FoldingRangeWorkspaceClientCapabilities]
172
+ def folding_range
173
+ attributes.fetch(:foldingRange)
174
+ end
175
+
176
+ #
177
+ # Capabilities specific to the `workspace/textDocumentContent` request.
178
+ #
179
+ # @since 3.18.0
180
+ #
181
+ # @return [TextDocumentContentClientCapabilities]
182
+ def text_document_content
183
+ attributes.fetch(:textDocumentContent)
184
+ end
185
+
164
186
  attr_reader :attributes
165
187
 
166
188
  def to_hash
@@ -10,10 +10,10 @@ module LanguageServer
10
10
  def initialize(identifier: nil, previous_result_ids:, work_done_token: nil, partial_result_token: nil)
11
11
  @attributes = {}
12
12
 
13
- @attributes[:identifier] = identifier if identifier
13
+ @attributes[:identifier] = identifier unless identifier.nil?
14
14
  @attributes[:previousResultIds] = previous_result_ids
15
- @attributes[:workDoneToken] = work_done_token if work_done_token
16
- @attributes[:partialResultToken] = partial_result_token if partial_result_token
15
+ @attributes[:workDoneToken] = work_done_token unless work_done_token.nil?
16
+ @attributes[:partialResultToken] = partial_result_token unless partial_result_token.nil?
17
17
 
18
18
  @attributes.freeze
19
19
  end
@@ -13,8 +13,8 @@ module LanguageServer
13
13
  @attributes[:uri] = uri
14
14
  @attributes[:version] = version
15
15
  @attributes[:kind] = kind
16
- @attributes[:resultId] = result_id if result_id
17
- @attributes[:items] = items if items
16
+ @attributes[:resultId] = result_id unless result_id.nil?
17
+ @attributes[:items] = items unless items.nil?
18
18
 
19
19
  @attributes.freeze
20
20
  end
@@ -19,9 +19,9 @@ module LanguageServer
19
19
  def initialize(changes: nil, document_changes: nil, change_annotations: nil)
20
20
  @attributes = {}
21
21
 
22
- @attributes[:changes] = changes if changes
23
- @attributes[:documentChanges] = document_changes if document_changes
24
- @attributes[:changeAnnotations] = change_annotations if change_annotations
22
+ @attributes[:changes] = changes unless changes.nil?
23
+ @attributes[:documentChanges] = document_changes unless document_changes.nil?
24
+ @attributes[:changeAnnotations] = change_annotations unless change_annotations.nil?
25
25
 
26
26
  @attributes.freeze
27
27
  end
@@ -2,14 +2,16 @@ module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
4
  class WorkspaceEditClientCapabilities
5
- def initialize(document_changes: nil, resource_operations: nil, failure_handling: nil, normalizes_line_endings: nil, change_annotation_support: nil)
5
+ def initialize(document_changes: nil, resource_operations: nil, failure_handling: nil, normalizes_line_endings: nil, change_annotation_support: nil, metadata_support: nil, snippet_edit_support: nil)
6
6
  @attributes = {}
7
7
 
8
- @attributes[:documentChanges] = document_changes if document_changes
9
- @attributes[:resourceOperations] = resource_operations if resource_operations
10
- @attributes[:failureHandling] = failure_handling if failure_handling
11
- @attributes[:normalizesLineEndings] = normalizes_line_endings if normalizes_line_endings
12
- @attributes[:changeAnnotationSupport] = change_annotation_support if change_annotation_support
8
+ @attributes[:documentChanges] = document_changes unless document_changes.nil?
9
+ @attributes[:resourceOperations] = resource_operations unless resource_operations.nil?
10
+ @attributes[:failureHandling] = failure_handling unless failure_handling.nil?
11
+ @attributes[:normalizesLineEndings] = normalizes_line_endings unless normalizes_line_endings.nil?
12
+ @attributes[:changeAnnotationSupport] = change_annotation_support unless change_annotation_support.nil?
13
+ @attributes[:metadataSupport] = metadata_support unless metadata_support.nil?
14
+ @attributes[:snippetEditSupport] = snippet_edit_support unless snippet_edit_support.nil?
13
15
 
14
16
  @attributes.freeze
15
17
  end
@@ -64,11 +66,31 @@ module LanguageServer
64
66
  #
65
67
  # @since 3.16.0
66
68
  #
67
- # @return [{ groupsOnLabel?: boolean; }]
69
+ # @return [ChangeAnnotationsSupportOptions]
68
70
  def change_annotation_support
69
71
  attributes.fetch(:changeAnnotationSupport)
70
72
  end
71
73
 
74
+ #
75
+ # Whether the client supports `WorkspaceEditMetadata` in `WorkspaceEdit`s.
76
+ #
77
+ # @since 3.18.0
78
+ #
79
+ # @return [boolean]
80
+ def metadata_support
81
+ attributes.fetch(:metadataSupport)
82
+ end
83
+
84
+ #
85
+ # Whether the client supports snippets as text edits.
86
+ #
87
+ # @since 3.18.0
88
+ #
89
+ # @return [boolean]
90
+ def snippet_edit_support
91
+ attributes.fetch(:snippetEditSupport)
92
+ end
93
+
72
94
  attr_reader :attributes
73
95
 
74
96
  def to_hash
@@ -0,0 +1,38 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Interface
4
+ #
5
+ # Additional data about a workspace edit.
6
+ #
7
+ # @since 3.18.0
8
+ #
9
+ class WorkspaceEditMetadata
10
+ def initialize(is_refactoring: nil)
11
+ @attributes = {}
12
+
13
+ @attributes[:isRefactoring] = is_refactoring unless is_refactoring.nil?
14
+
15
+ @attributes.freeze
16
+ end
17
+
18
+ #
19
+ # Signal to the editor that this edit is a refactoring.
20
+ #
21
+ # @return [boolean]
22
+ def is_refactoring
23
+ attributes.fetch(:isRefactoring)
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
@@ -5,7 +5,7 @@ module LanguageServer
5
5
  def initialize(workspace_folders: nil)
6
6
  @attributes = {}
7
7
 
8
- @attributes[:workspaceFolders] = workspace_folders if workspace_folders
8
+ @attributes[:workspaceFolders] = workspace_folders unless workspace_folders.nil?
9
9
 
10
10
  @attributes.freeze
11
11
  end
@@ -5,8 +5,8 @@ module LanguageServer
5
5
  def initialize(supported: nil, change_notifications: nil)
6
6
  @attributes = {}
7
7
 
8
- @attributes[:supported] = supported if supported
9
- @attributes[:changeNotifications] = change_notifications if change_notifications
8
+ @attributes[:supported] = supported unless supported.nil?
9
+ @attributes[:changeNotifications] = change_notifications unless change_notifications.nil?
10
10
 
11
11
  @attributes.freeze
12
12
  end
@@ -13,7 +13,7 @@ module LanguageServer
13
13
  @attributes[:uri] = uri
14
14
  @attributes[:version] = version
15
15
  @attributes[:kind] = kind
16
- @attributes[:resultId] = result_id if result_id
16
+ @attributes[:resultId] = result_id unless result_id.nil?
17
17
  @attributes[:items] = items
18
18
 
19
19
  @attributes.freeze
@@ -0,0 +1,62 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Interface
4
+ #
5
+ # Defines workspace specific capabilities of the server.
6
+ #
7
+ # @since 3.18.0
8
+ #
9
+ class WorkspaceOptions
10
+ def initialize(workspace_folders: nil, file_operations: nil, text_document_content: nil)
11
+ @attributes = {}
12
+
13
+ @attributes[:workspaceFolders] = workspace_folders unless workspace_folders.nil?
14
+ @attributes[:fileOperations] = file_operations unless file_operations.nil?
15
+ @attributes[:textDocumentContent] = text_document_content unless text_document_content.nil?
16
+
17
+ @attributes.freeze
18
+ end
19
+
20
+ #
21
+ # The server supports workspace folder.
22
+ #
23
+ # @since 3.6.0
24
+ #
25
+ # @return [WorkspaceFoldersServerCapabilities]
26
+ def workspace_folders
27
+ attributes.fetch(:workspaceFolders)
28
+ end
29
+
30
+ #
31
+ # The server is interested in notifications/requests for operations on files.
32
+ #
33
+ # @since 3.16.0
34
+ #
35
+ # @return [FileOperationOptions]
36
+ def file_operations
37
+ attributes.fetch(:fileOperations)
38
+ end
39
+
40
+ #
41
+ # The server supports the `workspace/textDocumentContent` request.
42
+ #
43
+ # @since 3.18.0
44
+ #
45
+ # @return [TextDocumentContentOptions | TextDocumentContentRegistrationOptions]
46
+ def text_document_content
47
+ attributes.fetch(:textDocumentContent)
48
+ end
49
+
50
+ attr_reader :attributes
51
+
52
+ def to_hash
53
+ attributes
54
+ end
55
+
56
+ def to_json(*args)
57
+ to_hash.to_json(*args)
58
+ end
59
+ end
60
+ end
61
+ end
62
+ end
@@ -13,11 +13,11 @@ module LanguageServer
13
13
  @attributes = {}
14
14
 
15
15
  @attributes[:location] = location
16
- @attributes[:data] = data if data
16
+ @attributes[:data] = data unless data.nil?
17
17
  @attributes[:name] = name
18
18
  @attributes[:kind] = kind
19
- @attributes[:tags] = tags if tags
20
- @attributes[:containerName] = container_name if container_name
19
+ @attributes[:tags] = tags unless tags.nil?
20
+ @attributes[:containerName] = container_name unless container_name.nil?
21
21
 
22
22
  @attributes.freeze
23
23
  end
@@ -29,7 +29,7 @@ module LanguageServer
29
29
  #
30
30
  # See SymbolInformation#location for more details.
31
31
  #
32
- # @return [Location | { uri: DocumentUri; }]
32
+ # @return [Location | LocationUriOnly]
33
33
  def location
34
34
  attributes.fetch(:location)
35
35
  end