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
@@ -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
@@ -5,9 +5,9 @@ module LanguageServer
5
5
  def initialize(work_done_progress: nil, document_selector:, id: 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
  @attributes[:documentSelector] = document_selector
10
- @attributes[:id] = id if id
10
+ @attributes[:id] = id unless id.nil?
11
11
 
12
12
  @attributes.freeze
13
13
  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
@@ -8,7 +8,7 @@ module LanguageServer
8
8
  def initialize(work_done_progress: nil)
9
9
  @attributes = {}
10
10
 
11
- @attributes[:workDoneProgress] = work_done_progress if work_done_progress
11
+ @attributes[:workDoneProgress] = work_done_progress unless work_done_progress.nil?
12
12
 
13
13
  @attributes.freeze
14
14
  end
@@ -10,8 +10,8 @@ module LanguageServer
10
10
 
11
11
  @attributes[:textDocument] = text_document
12
12
  @attributes[:position] = position
13
- @attributes[:workDoneToken] = work_done_token if work_done_token
14
- @attributes[:partialResultToken] = partial_result_token if partial_result_token
13
+ @attributes[:workDoneToken] = work_done_token unless work_done_token.nil?
14
+ @attributes[:partialResultToken] = partial_result_token unless partial_result_token.nil?
15
15
 
16
16
  @attributes.freeze
17
17
  end
@@ -9,7 +9,7 @@ module LanguageServer
9
9
  @attributes = {}
10
10
 
11
11
  @attributes[:documentSelector] = document_selector
12
- @attributes[:workDoneProgress] = work_done_progress if work_done_progress
12
+ @attributes[:workDoneProgress] = work_done_progress unless work_done_progress.nil?
13
13
 
14
14
  @attributes.freeze
15
15
  end
@@ -10,8 +10,8 @@ module LanguageServer
10
10
 
11
11
  @attributes[:kind] = kind
12
12
  @attributes[:uri] = uri
13
- @attributes[:options] = options if options
14
- @attributes[:annotationId] = annotation_id if annotation_id
13
+ @attributes[:options] = options unless options.nil?
14
+ @attributes[:annotationId] = annotation_id unless annotation_id.nil?
15
15
 
16
16
  @attributes.freeze
17
17
  end
@@ -8,8 +8,8 @@ module LanguageServer
8
8
  def initialize(recursive: nil, ignore_if_not_exists: nil)
9
9
  @attributes = {}
10
10
 
11
- @attributes[:recursive] = recursive if recursive
12
- @attributes[:ignoreIfNotExists] = ignore_if_not_exists if ignore_if_not_exists
11
+ @attributes[:recursive] = recursive unless recursive.nil?
12
+ @attributes[:ignoreIfNotExists] = ignore_if_not_exists unless ignore_if_not_exists.nil?
13
13
 
14
14
  @attributes.freeze
15
15
  end
@@ -10,14 +10,14 @@ module LanguageServer
10
10
  @attributes = {}
11
11
 
12
12
  @attributes[:range] = range
13
- @attributes[:severity] = severity if severity
14
- @attributes[:code] = code if code
15
- @attributes[:codeDescription] = code_description if code_description
16
- @attributes[:source] = source if source
13
+ @attributes[:severity] = severity unless severity.nil?
14
+ @attributes[:code] = code unless code.nil?
15
+ @attributes[:codeDescription] = code_description unless code_description.nil?
16
+ @attributes[:source] = source unless source.nil?
17
17
  @attributes[:message] = message
18
- @attributes[:tags] = tags if tags
19
- @attributes[:relatedInformation] = related_information if related_information
20
- @attributes[:data] = data if data
18
+ @attributes[:tags] = tags unless tags.nil?
19
+ @attributes[:relatedInformation] = related_information unless related_information.nil?
20
+ @attributes[:data] = data unless data.nil?
21
21
 
22
22
  @attributes.freeze
23
23
  end
@@ -31,8 +31,9 @@ module LanguageServer
31
31
  end
32
32
 
33
33
  #
34
- # The diagnostic's severity. Can be omitted. If omitted it is up to the
35
- # client to interpret diagnostics as error, warning, info or hint.
34
+ # The diagnostic's severity. To avoid interpretation mismatches when a
35
+ # server is used with different clients it is highly recommended that servers
36
+ # always provide a severity value.
36
37
  #
37
38
  # @return [DiagnosticSeverity]
38
39
  def severity
@@ -69,9 +70,12 @@ module LanguageServer
69
70
  end
70
71
 
71
72
  #
72
- # The diagnostic's message. It usually appears in the user interface
73
+ # The diagnostic's message. It usually appears in the user interface.
73
74
  #
74
- # @return [string]
75
+ # @since 3.18.0 - support for MarkupContent. This is guarded by the client
76
+ # capability `textDocument.diagnostic.markupMessageSupport`.
77
+ #
78
+ # @return [string | MarkupContent]
75
79
  def message
76
80
  attributes.fetch(:message)
77
81
  end
@@ -7,11 +7,16 @@ module LanguageServer
7
7
  # @since 3.17.0
8
8
  #
9
9
  class DiagnosticClientCapabilities
10
- def initialize(dynamic_registration: nil, related_document_support: nil)
10
+ def initialize(dynamic_registration: nil, related_document_support: nil, markup_message_support: nil, related_information: nil, tag_support: nil, code_description_support: nil, data_support: nil)
11
11
  @attributes = {}
12
12
 
13
- @attributes[:dynamicRegistration] = dynamic_registration if dynamic_registration
14
- @attributes[:relatedDocumentSupport] = related_document_support if related_document_support
13
+ @attributes[:dynamicRegistration] = dynamic_registration unless dynamic_registration.nil?
14
+ @attributes[:relatedDocumentSupport] = related_document_support unless related_document_support.nil?
15
+ @attributes[:markupMessageSupport] = markup_message_support unless markup_message_support.nil?
16
+ @attributes[:relatedInformation] = related_information unless related_information.nil?
17
+ @attributes[:tagSupport] = tag_support unless tag_support.nil?
18
+ @attributes[:codeDescriptionSupport] = code_description_support unless code_description_support.nil?
19
+ @attributes[:dataSupport] = data_support unless data_support.nil?
15
20
 
16
21
  @attributes.freeze
17
22
  end
@@ -34,6 +39,57 @@ module LanguageServer
34
39
  attributes.fetch(:relatedDocumentSupport)
35
40
  end
36
41
 
42
+ #
43
+ # Whether the client supports `MarkupContent` in diagnostic messages.
44
+ #
45
+ # @since 3.18.0
46
+ #
47
+ # @return [boolean]
48
+ def markup_message_support
49
+ attributes.fetch(:markupMessageSupport)
50
+ end
51
+
52
+ #
53
+ # Whether the clients accepts diagnostics with related information.
54
+ #
55
+ # @return [boolean]
56
+ def related_information
57
+ attributes.fetch(:relatedInformation)
58
+ end
59
+
60
+ #
61
+ # Client supports the tag property to provide meta data about a diagnostic.
62
+ # Clients supporting tags have to handle unknown tags gracefully.
63
+ #
64
+ # @since 3.15.0
65
+ #
66
+ # @return [ClientDiagnosticsTagOptions]
67
+ def tag_support
68
+ attributes.fetch(:tagSupport)
69
+ end
70
+
71
+ #
72
+ # Client supports a codeDescription property
73
+ #
74
+ # @since 3.16.0
75
+ #
76
+ # @return [boolean]
77
+ def code_description_support
78
+ attributes.fetch(:codeDescriptionSupport)
79
+ end
80
+
81
+ #
82
+ # Whether code action supports the `data` property which is
83
+ # preserved between a `textDocument/publishDiagnostics` and
84
+ # `textDocument/codeAction` request.
85
+ #
86
+ # @since 3.16.0
87
+ #
88
+ # @return [boolean]
89
+ def data_support
90
+ attributes.fetch(:dataSupport)
91
+ end
92
+
37
93
  attr_reader :attributes
38
94
 
39
95
  def to_hash
@@ -10,10 +10,10 @@ module LanguageServer
10
10
  def initialize(identifier: nil, inter_file_dependencies:, workspace_diagnostics:, work_done_progress: nil)
11
11
  @attributes = {}
12
12
 
13
- @attributes[:identifier] = identifier if identifier
13
+ @attributes[:identifier] = identifier unless identifier.nil?
14
14
  @attributes[:interFileDependencies] = inter_file_dependencies
15
15
  @attributes[:workspaceDiagnostics] = workspace_diagnostics
16
- @attributes[:workDoneProgress] = work_done_progress if work_done_progress
16
+ @attributes[:workDoneProgress] = work_done_progress unless work_done_progress.nil?
17
17
 
18
18
  @attributes.freeze
19
19
  end
@@ -11,11 +11,11 @@ module LanguageServer
11
11
  @attributes = {}
12
12
 
13
13
  @attributes[:documentSelector] = document_selector
14
- @attributes[:identifier] = identifier if identifier
14
+ @attributes[:identifier] = identifier unless identifier.nil?
15
15
  @attributes[:interFileDependencies] = inter_file_dependencies
16
16
  @attributes[:workspaceDiagnostics] = workspace_diagnostics
17
- @attributes[:workDoneProgress] = work_done_progress if work_done_progress
18
- @attributes[:id] = id if id
17
+ @attributes[:workDoneProgress] = work_done_progress unless work_done_progress.nil?
18
+ @attributes[:id] = id unless id.nil?
19
19
 
20
20
  @attributes.freeze
21
21
  end
@@ -10,7 +10,7 @@ module LanguageServer
10
10
  def initialize(refresh_support: nil)
11
11
  @attributes = {}
12
12
 
13
- @attributes[:refreshSupport] = refresh_support if refresh_support
13
+ @attributes[:refreshSupport] = refresh_support unless refresh_support.nil?
14
14
 
15
15
  @attributes.freeze
16
16
  end
@@ -0,0 +1,72 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Interface
4
+ #
5
+ # General diagnostics capabilities for pull and push model.
6
+ #
7
+ class DiagnosticsCapabilities
8
+ def initialize(related_information: nil, tag_support: nil, code_description_support: nil, data_support: nil)
9
+ @attributes = {}
10
+
11
+ @attributes[:relatedInformation] = related_information unless related_information.nil?
12
+ @attributes[:tagSupport] = tag_support unless tag_support.nil?
13
+ @attributes[:codeDescriptionSupport] = code_description_support unless code_description_support.nil?
14
+ @attributes[:dataSupport] = data_support unless data_support.nil?
15
+
16
+ @attributes.freeze
17
+ end
18
+
19
+ #
20
+ # Whether the clients accepts diagnostics with related information.
21
+ #
22
+ # @return [boolean]
23
+ def related_information
24
+ attributes.fetch(:relatedInformation)
25
+ end
26
+
27
+ #
28
+ # Client supports the tag property to provide meta data about a diagnostic.
29
+ # Clients supporting tags have to handle unknown tags gracefully.
30
+ #
31
+ # @since 3.15.0
32
+ #
33
+ # @return [ClientDiagnosticsTagOptions]
34
+ def tag_support
35
+ attributes.fetch(:tagSupport)
36
+ end
37
+
38
+ #
39
+ # Client supports a codeDescription property
40
+ #
41
+ # @since 3.16.0
42
+ #
43
+ # @return [boolean]
44
+ def code_description_support
45
+ attributes.fetch(:codeDescriptionSupport)
46
+ end
47
+
48
+ #
49
+ # Whether code action supports the `data` property which is
50
+ # preserved between a `textDocument/publishDiagnostics` and
51
+ # `textDocument/codeAction` request.
52
+ #
53
+ # @since 3.16.0
54
+ #
55
+ # @return [boolean]
56
+ def data_support
57
+ attributes.fetch(:dataSupport)
58
+ end
59
+
60
+ attr_reader :attributes
61
+
62
+ def to_hash
63
+ attributes
64
+ end
65
+
66
+ def to_json(*args)
67
+ to_hash.to_json(*args)
68
+ end
69
+ end
70
+ end
71
+ end
72
+ end
@@ -5,7 +5,7 @@ module LanguageServer
5
5
  def initialize(dynamic_registration: nil)
6
6
  @attributes = {}
7
7
 
8
- @attributes[:dynamicRegistration] = dynamic_registration if dynamic_registration
8
+ @attributes[:dynamicRegistration] = dynamic_registration unless dynamic_registration.nil?
9
9
 
10
10
  @attributes.freeze
11
11
  end
@@ -5,7 +5,7 @@ module LanguageServer
5
5
  def initialize(section: nil)
6
6
  @attributes = {}
7
7
 
8
- @attributes[:section] = section if section
8
+ @attributes[:section] = section unless section.nil?
9
9
 
10
10
  @attributes.freeze
11
11
  end
@@ -5,8 +5,8 @@ module LanguageServer
5
5
  def initialize(dynamic_registration: nil, relative_pattern_support: nil)
6
6
  @attributes = {}
7
7
 
8
- @attributes[:dynamicRegistration] = dynamic_registration if dynamic_registration
9
- @attributes[:relativePatternSupport] = relative_pattern_support if relative_pattern_support
8
+ @attributes[:dynamicRegistration] = dynamic_registration unless dynamic_registration.nil?
9
+ @attributes[:relativePatternSupport] = relative_pattern_support unless relative_pattern_support.nil?
10
10
 
11
11
  @attributes.freeze
12
12
  end
@@ -9,7 +9,7 @@ module LanguageServer
9
9
  @attributes = {}
10
10
 
11
11
  @attributes[:textDocument] = text_document
12
- @attributes[:text] = text if text
12
+ @attributes[:text] = text unless text.nil?
13
13
 
14
14
  @attributes.freeze
15
15
  end
@@ -5,7 +5,7 @@ module LanguageServer
5
5
  def initialize(dynamic_registration: nil)
6
6
  @attributes = {}
7
7
 
8
- @attributes[:dynamicRegistration] = dynamic_registration if dynamic_registration
8
+ @attributes[:dynamicRegistration] = dynamic_registration unless dynamic_registration.nil?
9
9
 
10
10
  @attributes.freeze
11
11
  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
@@ -9,8 +9,8 @@ module LanguageServer
9
9
  @attributes = {}
10
10
 
11
11
  @attributes[:textDocument] = text_document
12
- @attributes[:workDoneToken] = work_done_token if work_done_token
13
- @attributes[:partialResultToken] = partial_result_token if partial_result_token
12
+ @attributes[:workDoneToken] = work_done_token unless work_done_token.nil?
13
+ @attributes[:partialResultToken] = partial_result_token unless partial_result_token.nil?
14
14
 
15
15
  @attributes.freeze
16
16
  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
@@ -11,10 +11,10 @@ module LanguageServer
11
11
  @attributes = {}
12
12
 
13
13
  @attributes[:textDocument] = text_document
14
- @attributes[:identifier] = identifier if identifier
15
- @attributes[:previousResultId] = previous_result_id if previous_result_id
16
- @attributes[:workDoneToken] = work_done_token if work_done_token
17
- @attributes[:partialResultToken] = partial_result_token if partial_result_token
14
+ @attributes[:identifier] = identifier unless identifier.nil?
15
+ @attributes[:previousResultId] = previous_result_id unless previous_result_id.nil?
16
+ @attributes[:workDoneToken] = work_done_token unless work_done_token.nil?
17
+ @attributes[:partialResultToken] = partial_result_token unless partial_result_token.nil?
18
18
 
19
19
  @attributes.freeze
20
20
  end
@@ -14,10 +14,10 @@ module LanguageServer
14
14
  def initialize(related_documents: nil, kind:, result_id: nil, items: nil)
15
15
  @attributes = {}
16
16
 
17
- @attributes[:relatedDocuments] = related_documents if related_documents
17
+ @attributes[:relatedDocuments] = related_documents unless related_documents.nil?
18
18
  @attributes[:kind] = kind
19
- @attributes[:resultId] = result_id if result_id
20
- @attributes[:items] = items if items
19
+ @attributes[:resultId] = result_id unless result_id.nil?
20
+ @attributes[:items] = items unless items.nil?
21
21
 
22
22
  @attributes.freeze
23
23
  end
@@ -0,0 +1,97 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Interface
4
+ #
5
+ # The document diagnostic report used when reporting partial result.
6
+ #
7
+ # When using partial results, the first literal sent needs to be a
8
+ # DocumentDiagnosticReport providing the diagnostics on the document
9
+ # followed by n DocumentDiagnosticReportPartialResult literals providing
10
+ # the diagnostics for related documents.
11
+ #
12
+ # ```
13
+ # DocumentDiagnosticReport
14
+ # DocumentDiagnosticReportPartialResult
15
+ # DocumentDiagnosticReportPartialResult
16
+ # ...
17
+ # ```
18
+ #
19
+ # @since 3.18.1
20
+ #
21
+ class DocumentDiagnosticReportProgress
22
+ def initialize(related_documents: nil, kind: nil, result_id: nil, items: nil)
23
+ @attributes = {}
24
+
25
+ @attributes[:relatedDocuments] = related_documents unless related_documents.nil?
26
+ @attributes[:kind] = kind unless kind.nil?
27
+ @attributes[:resultId] = result_id unless result_id.nil?
28
+ @attributes[:items] = items unless items.nil?
29
+
30
+ @attributes.freeze
31
+ end
32
+
33
+ #
34
+ # Diagnostics of related documents. This information is useful
35
+ # in programming languages where code in a file A can generate
36
+ # diagnostics in a file B which A depends on. An example of
37
+ # such a language is C/C++ where marco definitions in a file
38
+ # a.cpp and result in errors in a header file b.hpp.
39
+ #
40
+ # @since 3.17.0
41
+ #
42
+ # @return [DocumentUri => FullDocumentDiagnosticReport | UnchangedDocumentDiagnosticReport]
43
+ def related_documents
44
+ attributes.fetch(:relatedDocuments)
45
+ end
46
+
47
+ #
48
+ # A full document diagnostic report.
49
+ #
50
+ # --- OR ---
51
+ #
52
+ # A document diagnostic report indicating
53
+ # no changes to the last result. A server can
54
+ # only return `unchanged` if result ids are
55
+ # provided.
56
+ #
57
+ # @return ["full" | "unchanged"]
58
+ def kind
59
+ attributes.fetch(:kind)
60
+ end
61
+
62
+ #
63
+ # An optional result id. If provided it will
64
+ # be sent on the next diagnostic request for the
65
+ # same document.
66
+ #
67
+ # --- OR ---
68
+ #
69
+ # A result id which will be sent on the next
70
+ # diagnostic request for the same document.
71
+ #
72
+ # @return [string]
73
+ def result_id
74
+ attributes.fetch(:resultId)
75
+ end
76
+
77
+ #
78
+ # The actual items.
79
+ #
80
+ # @return [Diagnostic[]]
81
+ def items
82
+ attributes.fetch(:items)
83
+ end
84
+
85
+ attr_reader :attributes
86
+
87
+ def to_hash
88
+ attributes
89
+ end
90
+
91
+ def to_json(*args)
92
+ to_hash.to_json(*args)
93
+ end
94
+ end
95
+ end
96
+ end
97
+ end
@@ -5,16 +5,16 @@ module LanguageServer
5
5
  # A document filter describes a top level text document or
6
6
  # a notebook cell document.
7
7
  #
8
- # @since 3.17.0 - proposed support for NotebookCellTextDocumentFilter.
8
+ # @since 3.17.0 - support for NotebookCellTextDocumentFilter.
9
9
  #
10
10
  class DocumentFilter
11
11
  def initialize(language: nil, scheme: nil, pattern: nil, notebook: nil)
12
12
  @attributes = {}
13
13
 
14
- @attributes[:language] = language if language
15
- @attributes[:scheme] = scheme if scheme
16
- @attributes[:pattern] = pattern if pattern
17
- @attributes[:notebook] = notebook if notebook
14
+ @attributes[:language] = language unless language.nil?
15
+ @attributes[:scheme] = scheme unless scheme.nil?
16
+ @attributes[:pattern] = pattern unless pattern.nil?
17
+ @attributes[:notebook] = notebook unless notebook.nil?
18
18
 
19
19
  @attributes.freeze
20
20
  end
@@ -43,9 +43,13 @@ module LanguageServer
43
43
  end
44
44
 
45
45
  #
46
- # A glob pattern, like `*.{ts,js}`.
46
+ # A glob pattern, like **​/*.{ts,js}. See TextDocumentFilter for examples.
47
47
  #
48
- # @return [string]
48
+ # @since 3.18.0 - support for relative patterns. Whether clients support
49
+ # relative patterns depends on the client capability
50
+ # `textDocuments.filters.relativePatternSupport`.
51
+ #
52
+ # @return [GlobPattern]
49
53
  def pattern
50
54
  attributes.fetch(:pattern)
51
55
  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
@@ -8,7 +8,7 @@ module LanguageServer
8
8
  def initialize(work_done_progress: nil)
9
9
  @attributes = {}
10
10
 
11
- @attributes[:workDoneProgress] = work_done_progress if work_done_progress
11
+ @attributes[:workDoneProgress] = work_done_progress unless work_done_progress.nil?
12
12
 
13
13
  @attributes.freeze
14
14
  end
@@ -10,7 +10,7 @@ module LanguageServer
10
10
 
11
11
  @attributes[:textDocument] = text_document
12
12
  @attributes[:options] = options
13
- @attributes[:workDoneToken] = work_done_token if work_done_token
13
+ @attributes[:workDoneToken] = work_done_token unless work_done_token.nil?
14
14
 
15
15
  @attributes.freeze
16
16
  end
@@ -9,7 +9,7 @@ module LanguageServer
9
9
  @attributes = {}
10
10
 
11
11
  @attributes[:documentSelector] = document_selector
12
- @attributes[:workDoneProgress] = work_done_progress if work_done_progress
12
+ @attributes[:workDoneProgress] = work_done_progress unless work_done_progress.nil?
13
13
 
14
14
  @attributes.freeze
15
15
  end