language_server-protocol 3.16.0.1 → 3.17.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (358) hide show
  1. checksums.yaml +4 -4
  2. data/lib/language_server/protocol/constant/code_action_kind.rb +25 -24
  3. data/lib/language_server/protocol/constant/code_action_trigger_kind.rb +24 -0
  4. data/lib/language_server/protocol/constant/completion_item_tag.rb +4 -2
  5. data/lib/language_server/protocol/constant/completion_trigger_kind.rb +2 -3
  6. data/lib/language_server/protocol/constant/diagnostic_severity.rb +3 -0
  7. data/lib/language_server/protocol/constant/diagnostic_tag.rb +4 -2
  8. data/lib/language_server/protocol/constant/error_codes.rb +19 -14
  9. data/lib/language_server/protocol/constant/failure_handling_kind.rb +9 -10
  10. data/lib/language_server/protocol/constant/file_change_type.rb +1 -1
  11. data/lib/language_server/protocol/constant/file_operation_pattern_kind.rb +4 -2
  12. data/lib/language_server/protocol/constant/folding_range_kind.rb +23 -0
  13. data/lib/language_server/protocol/constant/inlay_hint_kind.rb +21 -0
  14. data/lib/language_server/protocol/constant/insert_text_format.rb +2 -0
  15. data/lib/language_server/protocol/constant/insert_text_mode.rb +2 -0
  16. data/lib/language_server/protocol/constant/lsp_error_codes.rb +55 -0
  17. data/lib/language_server/protocol/constant/markup_kind.rb +2 -2
  18. data/lib/language_server/protocol/constant/message_type.rb +3 -0
  19. data/lib/language_server/protocol/constant/moniker_kind.rb +26 -0
  20. data/lib/language_server/protocol/constant/notebook_cell_kind.rb +21 -0
  21. data/lib/language_server/protocol/constant/position_encoding_kind.rb +32 -0
  22. data/lib/language_server/protocol/constant/resource_operation_kind.rb +3 -6
  23. data/lib/language_server/protocol/constant/semantic_token_modifiers.rb +25 -0
  24. data/lib/language_server/protocol/constant/semantic_token_types.rb +45 -0
  25. data/lib/language_server/protocol/constant/signature_help_trigger_kind.rb +3 -2
  26. data/lib/language_server/protocol/constant/symbol_tag.rb +2 -0
  27. data/lib/language_server/protocol/constant/text_document_save_reason.rb +2 -2
  28. data/lib/language_server/protocol/constant/text_document_sync_kind.rb +3 -3
  29. data/lib/language_server/protocol/constant/token_format.rb +1 -1
  30. data/lib/language_server/protocol/constant/trace_values.rb +20 -0
  31. data/lib/language_server/protocol/constant/uniqueness_level.rb +33 -0
  32. data/lib/language_server/protocol/constant.rb +22 -4
  33. data/lib/language_server/protocol/interface/annotated_text_edit.rb +12 -10
  34. data/lib/language_server/protocol/interface/apply_workspace_edit_params.rb +4 -1
  35. data/lib/language_server/protocol/interface/{apply_workspace_edit_response.rb → apply_workspace_edit_result.rb} +11 -7
  36. data/lib/language_server/protocol/interface/base_symbol_information.rb +68 -0
  37. data/lib/language_server/protocol/interface/call_hierarchy_client_capabilities.rb +7 -5
  38. data/lib/language_server/protocol/interface/call_hierarchy_incoming_call.rb +5 -0
  39. data/lib/language_server/protocol/interface/call_hierarchy_incoming_calls_params.rb +16 -11
  40. data/lib/language_server/protocol/interface/call_hierarchy_item.rb +14 -10
  41. data/lib/language_server/protocol/interface/call_hierarchy_options.rb +6 -1
  42. data/lib/language_server/protocol/interface/call_hierarchy_outgoing_call.rb +8 -2
  43. data/lib/language_server/protocol/interface/call_hierarchy_outgoing_calls_params.rb +16 -11
  44. data/lib/language_server/protocol/interface/call_hierarchy_prepare_params.rb +6 -1
  45. data/lib/language_server/protocol/interface/call_hierarchy_registration_options.rb +10 -5
  46. data/lib/language_server/protocol/interface/cancel_params.rb +1 -1
  47. data/lib/language_server/protocol/interface/change_annotation.rb +4 -2
  48. data/lib/language_server/protocol/interface/client_capabilities.rb +22 -6
  49. data/lib/language_server/protocol/interface/code_action.rb +28 -26
  50. data/lib/language_server/protocol/interface/code_action_client_capabilities.rb +25 -9
  51. data/lib/language_server/protocol/interface/code_action_context.rb +20 -10
  52. data/lib/language_server/protocol/interface/code_action_options.rb +16 -11
  53. data/lib/language_server/protocol/interface/code_action_params.rb +21 -21
  54. data/lib/language_server/protocol/interface/code_action_registration_options.rb +19 -14
  55. data/lib/language_server/protocol/interface/code_description.rb +3 -1
  56. data/lib/language_server/protocol/interface/code_lens.rb +8 -9
  57. data/lib/language_server/protocol/interface/code_lens_client_capabilities.rb +4 -1
  58. data/lib/language_server/protocol/interface/code_lens_options.rb +11 -8
  59. data/lib/language_server/protocol/interface/code_lens_params.rb +17 -14
  60. data/lib/language_server/protocol/interface/code_lens_registration_options.rb +14 -11
  61. data/lib/language_server/protocol/interface/code_lens_workspace_client_capabilities.rb +4 -1
  62. data/lib/language_server/protocol/interface/color.rb +4 -4
  63. data/lib/language_server/protocol/interface/color_information.rb +3 -0
  64. data/lib/language_server/protocol/interface/color_presentation.rb +8 -9
  65. data/lib/language_server/protocol/interface/color_presentation_params.rb +24 -21
  66. data/lib/language_server/protocol/interface/command.rb +7 -1
  67. data/lib/language_server/protocol/interface/completion_client_capabilities.rb +33 -5
  68. data/lib/language_server/protocol/interface/completion_context.rb +4 -6
  69. data/lib/language_server/protocol/interface/completion_item.rb +92 -49
  70. data/lib/language_server/protocol/interface/completion_item_label_details.rb +49 -0
  71. data/lib/language_server/protocol/interface/completion_list.rb +28 -5
  72. data/lib/language_server/protocol/interface/completion_options.rb +36 -25
  73. data/lib/language_server/protocol/interface/completion_params.rb +18 -16
  74. data/lib/language_server/protocol/interface/completion_registration_options.rb +42 -28
  75. data/lib/language_server/protocol/interface/configuration_item.rb +2 -2
  76. data/lib/language_server/protocol/interface/configuration_params.rb +3 -0
  77. data/lib/language_server/protocol/interface/create_file.rb +7 -5
  78. data/lib/language_server/protocol/interface/create_file_options.rb +2 -2
  79. data/lib/language_server/protocol/interface/create_files_params.rb +4 -2
  80. data/lib/language_server/protocol/interface/declaration_client_capabilities.rb +8 -5
  81. data/lib/language_server/protocol/interface/declaration_options.rb +1 -1
  82. data/lib/language_server/protocol/interface/declaration_params.rb +4 -4
  83. data/lib/language_server/protocol/interface/declaration_registration_options.rb +5 -5
  84. data/lib/language_server/protocol/interface/definition_client_capabilities.rb +7 -2
  85. data/lib/language_server/protocol/interface/definition_options.rb +4 -1
  86. data/lib/language_server/protocol/interface/definition_params.rb +7 -4
  87. data/lib/language_server/protocol/interface/definition_registration_options.rb +7 -4
  88. data/lib/language_server/protocol/interface/delete_file.rb +6 -4
  89. data/lib/language_server/protocol/interface/delete_file_options.rb +2 -2
  90. data/lib/language_server/protocol/interface/delete_files_params.rb +4 -2
  91. data/lib/language_server/protocol/interface/diagnostic.rb +25 -14
  92. data/lib/language_server/protocol/interface/diagnostic_client_capabilities.rb +49 -0
  93. data/lib/language_server/protocol/interface/diagnostic_options.rb +66 -0
  94. data/lib/language_server/protocol/interface/diagnostic_registration_options.rb +86 -0
  95. data/lib/language_server/protocol/interface/diagnostic_related_information.rb +3 -3
  96. data/lib/language_server/protocol/interface/diagnostic_server_cancellation_data.rb +35 -0
  97. data/lib/language_server/protocol/interface/diagnostic_workspace_client_capabilities.rb +44 -0
  98. data/lib/language_server/protocol/interface/did_change_configuration_client_capabilities.rb +1 -1
  99. data/lib/language_server/protocol/interface/did_change_configuration_params.rb +4 -1
  100. data/lib/language_server/protocol/interface/did_change_configuration_registration_options.rb +30 -0
  101. data/lib/language_server/protocol/interface/did_change_notebook_document_params.rb +62 -0
  102. data/lib/language_server/protocol/interface/did_change_text_document_params.rb +12 -11
  103. data/lib/language_server/protocol/interface/did_change_watched_files_client_capabilities.rb +17 -5
  104. data/lib/language_server/protocol/interface/did_change_watched_files_params.rb +3 -0
  105. data/lib/language_server/protocol/interface/did_change_watched_files_registration_options.rb +1 -1
  106. data/lib/language_server/protocol/interface/did_change_workspace_folders_params.rb +3 -0
  107. data/lib/language_server/protocol/interface/did_close_notebook_document_params.rb +48 -0
  108. data/lib/language_server/protocol/interface/did_close_text_document_params.rb +3 -0
  109. data/lib/language_server/protocol/interface/did_open_notebook_document_params.rb +48 -0
  110. data/lib/language_server/protocol/interface/did_open_text_document_params.rb +3 -0
  111. data/lib/language_server/protocol/interface/did_save_notebook_document_params.rb +38 -0
  112. data/lib/language_server/protocol/interface/did_save_text_document_params.rb +4 -1
  113. data/lib/language_server/protocol/interface/document_color_client_capabilities.rb +4 -2
  114. data/lib/language_server/protocol/interface/document_color_options.rb +1 -1
  115. data/lib/language_server/protocol/interface/document_color_params.rb +17 -14
  116. data/lib/language_server/protocol/interface/document_color_registration_options.rb +11 -11
  117. data/lib/language_server/protocol/interface/document_diagnostic_params.rb +75 -0
  118. data/lib/language_server/protocol/interface/document_diagnostic_report.rb +77 -0
  119. data/lib/language_server/protocol/interface/document_diagnostic_report_partial_result.rb +35 -0
  120. data/lib/language_server/protocol/interface/document_filter.rb +25 -19
  121. data/lib/language_server/protocol/interface/document_formatting_client_capabilities.rb +4 -1
  122. data/lib/language_server/protocol/interface/document_formatting_options.rb +4 -1
  123. data/lib/language_server/protocol/interface/document_formatting_params.rb +13 -10
  124. data/lib/language_server/protocol/interface/document_formatting_registration_options.rb +7 -4
  125. data/lib/language_server/protocol/interface/document_highlight.rb +2 -2
  126. data/lib/language_server/protocol/interface/document_highlight_client_capabilities.rb +4 -1
  127. data/lib/language_server/protocol/interface/document_highlight_options.rb +4 -1
  128. data/lib/language_server/protocol/interface/document_highlight_params.rb +7 -4
  129. data/lib/language_server/protocol/interface/document_highlight_registration_options.rb +7 -4
  130. data/lib/language_server/protocol/interface/document_link.rb +10 -9
  131. data/lib/language_server/protocol/interface/document_link_client_capabilities.rb +7 -2
  132. data/lib/language_server/protocol/interface/document_link_options.rb +11 -8
  133. data/lib/language_server/protocol/interface/document_link_params.rb +17 -14
  134. data/lib/language_server/protocol/interface/document_link_registration_options.rb +14 -11
  135. data/lib/language_server/protocol/interface/document_on_type_formatting_client_capabilities.rb +4 -1
  136. data/lib/language_server/protocol/interface/document_on_type_formatting_options.rb +5 -2
  137. data/lib/language_server/protocol/interface/document_on_type_formatting_params.rb +12 -4
  138. data/lib/language_server/protocol/interface/document_on_type_formatting_registration_options.rb +8 -5
  139. data/lib/language_server/protocol/interface/document_range_formatting_client_capabilities.rb +5 -2
  140. data/lib/language_server/protocol/interface/document_range_formatting_options.rb +4 -1
  141. data/lib/language_server/protocol/interface/document_range_formatting_params.rb +13 -10
  142. data/lib/language_server/protocol/interface/document_range_formatting_registration_options.rb +7 -4
  143. data/lib/language_server/protocol/interface/document_symbol.rb +18 -16
  144. data/lib/language_server/protocol/interface/document_symbol_client_capabilities.rb +12 -5
  145. data/lib/language_server/protocol/interface/document_symbol_options.rb +13 -8
  146. data/lib/language_server/protocol/interface/document_symbol_params.rb +17 -14
  147. data/lib/language_server/protocol/interface/document_symbol_registration_options.rb +16 -11
  148. data/lib/language_server/protocol/interface/execute_command_client_capabilities.rb +4 -1
  149. data/lib/language_server/protocol/interface/execute_command_options.rb +10 -7
  150. data/lib/language_server/protocol/interface/execute_command_params.rb +14 -11
  151. data/lib/language_server/protocol/interface/execute_command_registration_options.rb +8 -8
  152. data/lib/language_server/protocol/interface/execution_summary.rb +45 -0
  153. data/lib/language_server/protocol/interface/file_create.rb +2 -0
  154. data/lib/language_server/protocol/interface/file_delete.rb +2 -0
  155. data/lib/language_server/protocol/interface/file_event.rb +3 -3
  156. data/lib/language_server/protocol/interface/file_operation_client_capabilities.rb +95 -0
  157. data/lib/language_server/protocol/interface/file_operation_filter.rb +5 -3
  158. data/lib/language_server/protocol/interface/file_operation_options.rb +83 -0
  159. data/lib/language_server/protocol/interface/file_operation_pattern.rb +8 -10
  160. data/lib/language_server/protocol/interface/file_operation_pattern_options.rb +3 -1
  161. data/lib/language_server/protocol/interface/file_operation_registration_options.rb +2 -0
  162. data/lib/language_server/protocol/interface/file_rename.rb +2 -0
  163. data/lib/language_server/protocol/interface/file_system_watcher.rb +4 -14
  164. data/lib/language_server/protocol/interface/folding_range.rb +30 -23
  165. data/lib/language_server/protocol/interface/folding_range_client_capabilities.rb +26 -4
  166. data/lib/language_server/protocol/interface/folding_range_options.rb +1 -1
  167. data/lib/language_server/protocol/interface/folding_range_params.rb +17 -14
  168. data/lib/language_server/protocol/interface/folding_range_registration_options.rb +5 -5
  169. data/lib/language_server/protocol/interface/formatting_options.rb +10 -4
  170. data/lib/language_server/protocol/interface/full_document_diagnostic_report.rb +58 -0
  171. data/lib/language_server/protocol/interface/general_client_capabilities.rb +91 -0
  172. data/lib/language_server/protocol/interface/glob_pattern.rb +48 -0
  173. data/lib/language_server/protocol/interface/hover.rb +3 -3
  174. data/lib/language_server/protocol/interface/hover_client_capabilities.rb +4 -5
  175. data/lib/language_server/protocol/interface/hover_options.rb +4 -1
  176. data/lib/language_server/protocol/interface/hover_params.rb +4 -1
  177. data/lib/language_server/protocol/interface/hover_registration_options.rb +7 -4
  178. data/lib/language_server/protocol/interface/implementation_client_capabilities.rb +10 -5
  179. data/lib/language_server/protocol/interface/implementation_options.rb +1 -1
  180. data/lib/language_server/protocol/interface/implementation_params.rb +4 -4
  181. data/lib/language_server/protocol/interface/implementation_registration_options.rb +5 -5
  182. data/lib/language_server/protocol/interface/initialize_error.rb +2 -1
  183. data/lib/language_server/protocol/interface/initialize_params.rb +41 -29
  184. data/lib/language_server/protocol/interface/initialize_result.rb +6 -1
  185. data/lib/language_server/protocol/interface/inlay_hint.rb +118 -0
  186. data/lib/language_server/protocol/interface/inlay_hint_client_capabilities.rb +48 -0
  187. data/lib/language_server/protocol/interface/inlay_hint_label_part.rb +81 -0
  188. data/lib/language_server/protocol/interface/inlay_hint_options.rb +45 -0
  189. data/lib/language_server/protocol/interface/inlay_hint_params.rb +56 -0
  190. data/lib/language_server/protocol/interface/inlay_hint_registration_options.rb +65 -0
  191. data/lib/language_server/protocol/interface/inlay_hint_workspace_client_capabilities.rb +44 -0
  192. data/lib/language_server/protocol/interface/inline_value.rb +78 -0
  193. data/lib/language_server/protocol/interface/inline_value_client_capabilities.rb +38 -0
  194. data/lib/language_server/protocol/interface/inline_value_context.rb +46 -0
  195. data/lib/language_server/protocol/interface/inline_value_evaluatable_expression.rb +50 -0
  196. data/lib/language_server/protocol/interface/inline_value_options.rb +35 -0
  197. data/lib/language_server/protocol/interface/inline_value_params.rb +66 -0
  198. data/lib/language_server/protocol/interface/inline_value_registration_options.rb +55 -0
  199. data/lib/language_server/protocol/interface/inline_value_text.rb +47 -0
  200. data/lib/language_server/protocol/interface/inline_value_variable_lookup.rb +59 -0
  201. data/lib/language_server/protocol/interface/inline_value_workspace_client_capabilities.rb +44 -0
  202. data/lib/language_server/protocol/interface/insert_replace_edit.rb +2 -0
  203. data/lib/language_server/protocol/interface/linked_editing_range_client_capabilities.rb +8 -4
  204. data/lib/language_server/protocol/interface/linked_editing_range_options.rb +1 -1
  205. data/lib/language_server/protocol/interface/linked_editing_range_params.rb +1 -1
  206. data/lib/language_server/protocol/interface/linked_editing_range_registration_options.rb +5 -5
  207. data/lib/language_server/protocol/interface/linked_editing_ranges.rb +7 -2
  208. data/lib/language_server/protocol/interface/location.rb +5 -1
  209. data/lib/language_server/protocol/interface/location_link.rb +13 -11
  210. data/lib/language_server/protocol/interface/log_message_params.rb +4 -1
  211. data/lib/language_server/protocol/interface/log_trace_params.rb +1 -8
  212. data/lib/language_server/protocol/interface/{message.rb → lsp_object.rb} +6 -8
  213. data/lib/language_server/protocol/interface/markdown_client_capabilities.rb +16 -2
  214. data/lib/language_server/protocol/interface/markup_content.rb +16 -18
  215. data/lib/language_server/protocol/interface/moniker.rb +3 -1
  216. data/lib/language_server/protocol/interface/moniker_client_capabilities.rb +9 -5
  217. data/lib/language_server/protocol/interface/moniker_options.rb +1 -1
  218. data/lib/language_server/protocol/interface/moniker_params.rb +4 -4
  219. data/lib/language_server/protocol/interface/moniker_registration_options.rb +4 -4
  220. data/lib/language_server/protocol/interface/notebook_cell.rb +73 -0
  221. data/lib/language_server/protocol/interface/notebook_cell_array_change.rb +57 -0
  222. data/lib/language_server/protocol/interface/notebook_cell_text_document_filter.rb +54 -0
  223. data/lib/language_server/protocol/interface/notebook_document.rb +78 -0
  224. data/lib/language_server/protocol/interface/notebook_document_change_event.rb +49 -0
  225. data/lib/language_server/protocol/interface/notebook_document_client_capabilities.rb +40 -0
  226. data/lib/language_server/protocol/interface/notebook_document_filter.rb +58 -0
  227. data/lib/language_server/protocol/interface/notebook_document_identifier.rb +38 -0
  228. data/lib/language_server/protocol/interface/notebook_document_sync_client_capabilities.rb +50 -0
  229. data/lib/language_server/protocol/interface/notebook_document_sync_options.rb +58 -0
  230. data/lib/language_server/protocol/interface/notebook_document_sync_registration_options.rb +58 -0
  231. data/lib/language_server/protocol/interface/optional_versioned_text_document_identifier.rb +17 -18
  232. data/lib/language_server/protocol/interface/parameter_information.rb +7 -9
  233. data/lib/language_server/protocol/interface/partial_result_params.rb +3 -3
  234. data/lib/language_server/protocol/interface/position.rb +40 -7
  235. data/lib/language_server/protocol/interface/prepare_rename_params.rb +10 -1
  236. data/lib/language_server/protocol/interface/prepare_rename_result.rb +60 -0
  237. data/lib/language_server/protocol/interface/previous_result_id.rb +48 -0
  238. data/lib/language_server/protocol/interface/progress_params.rb +1 -1
  239. data/lib/language_server/protocol/interface/publish_diagnostics_client_capabilities.rb +16 -5
  240. data/lib/language_server/protocol/interface/publish_diagnostics_params.rb +8 -4
  241. data/lib/language_server/protocol/interface/range.rb +13 -0
  242. data/lib/language_server/protocol/interface/reference_client_capabilities.rb +4 -1
  243. data/lib/language_server/protocol/interface/reference_context.rb +4 -0
  244. data/lib/language_server/protocol/interface/reference_options.rb +4 -1
  245. data/lib/language_server/protocol/interface/reference_params.rb +14 -11
  246. data/lib/language_server/protocol/interface/reference_registration_options.rb +7 -4
  247. data/lib/language_server/protocol/interface/registration.rb +2 -2
  248. data/lib/language_server/protocol/interface/regular_expressions_client_capabilities.rb +3 -1
  249. data/lib/language_server/protocol/interface/related_full_document_diagnostic_report.rb +73 -0
  250. data/lib/language_server/protocol/interface/related_unchanged_document_diagnostic_report.rb +66 -0
  251. data/lib/language_server/protocol/interface/relative_pattern.rb +50 -0
  252. data/lib/language_server/protocol/interface/rename_client_capabilities.rb +12 -7
  253. data/lib/language_server/protocol/interface/rename_file.rb +7 -5
  254. data/lib/language_server/protocol/interface/rename_file_options.rb +2 -2
  255. data/lib/language_server/protocol/interface/rename_files_params.rb +6 -4
  256. data/lib/language_server/protocol/interface/rename_options.rb +13 -8
  257. data/lib/language_server/protocol/interface/rename_params.rb +15 -12
  258. data/lib/language_server/protocol/interface/rename_registration_options.rb +16 -11
  259. data/lib/language_server/protocol/interface/resource_operation.rb +47 -0
  260. data/lib/language_server/protocol/interface/save_options.rb +4 -1
  261. data/lib/language_server/protocol/interface/selection_range.rb +6 -3
  262. data/lib/language_server/protocol/interface/selection_range_client_capabilities.rb +4 -5
  263. data/lib/language_server/protocol/interface/selection_range_options.rb +1 -1
  264. data/lib/language_server/protocol/interface/selection_range_params.rb +23 -20
  265. data/lib/language_server/protocol/interface/selection_range_registration_options.rb +5 -5
  266. data/lib/language_server/protocol/interface/semantic_tokens.rb +5 -2
  267. data/lib/language_server/protocol/interface/semantic_tokens_client_capabilities.rb +45 -11
  268. data/lib/language_server/protocol/interface/semantic_tokens_delta.rb +5 -3
  269. data/lib/language_server/protocol/interface/semantic_tokens_delta_params.rb +24 -21
  270. data/lib/language_server/protocol/interface/semantic_tokens_delta_partial_result.rb +3 -0
  271. data/lib/language_server/protocol/interface/semantic_tokens_edit.rb +6 -3
  272. data/lib/language_server/protocol/interface/semantic_tokens_legend.rb +3 -0
  273. data/lib/language_server/protocol/interface/semantic_tokens_options.rb +12 -9
  274. data/lib/language_server/protocol/interface/semantic_tokens_params.rb +17 -14
  275. data/lib/language_server/protocol/interface/semantic_tokens_partial_result.rb +4 -1
  276. data/lib/language_server/protocol/interface/semantic_tokens_range_params.rb +23 -20
  277. data/lib/language_server/protocol/interface/semantic_tokens_registration_options.rb +16 -13
  278. data/lib/language_server/protocol/interface/semantic_tokens_workspace_client_capabilities.rb +5 -2
  279. data/lib/language_server/protocol/interface/server_capabilities.rb +139 -56
  280. data/lib/language_server/protocol/interface/set_trace_params.rb +1 -4
  281. data/lib/language_server/protocol/interface/show_document_client_capabilities.rb +4 -2
  282. data/lib/language_server/protocol/interface/show_document_params.rb +6 -4
  283. data/lib/language_server/protocol/interface/show_document_result.rb +3 -1
  284. data/lib/language_server/protocol/interface/show_message_params.rb +4 -1
  285. data/lib/language_server/protocol/interface/show_message_request_client_capabilities.rb +1 -1
  286. data/lib/language_server/protocol/interface/show_message_request_params.rb +2 -2
  287. data/lib/language_server/protocol/interface/signature_help.rb +3 -4
  288. data/lib/language_server/protocol/interface/signature_help_client_capabilities.rb +8 -3
  289. data/lib/language_server/protocol/interface/signature_help_context.rb +10 -11
  290. data/lib/language_server/protocol/interface/signature_help_options.rb +17 -14
  291. data/lib/language_server/protocol/interface/signature_help_params.rb +17 -13
  292. data/lib/language_server/protocol/interface/signature_help_registration_options.rb +20 -17
  293. data/lib/language_server/protocol/interface/signature_information.rb +5 -3
  294. data/lib/language_server/protocol/interface/static_registration_options.rb +3 -2
  295. data/lib/language_server/protocol/interface/symbol_information.rb +34 -30
  296. data/lib/language_server/protocol/interface/t.rb +24 -0
  297. data/lib/language_server/protocol/interface/text_document_change_registration_options.rb +12 -13
  298. data/lib/language_server/protocol/interface/text_document_client_capabilities.rb +108 -43
  299. data/lib/language_server/protocol/interface/text_document_content_change_event.rb +8 -10
  300. data/lib/language_server/protocol/interface/text_document_edit.rb +10 -1
  301. data/lib/language_server/protocol/interface/text_document_filter.rb +69 -0
  302. data/lib/language_server/protocol/interface/text_document_identifier.rb +5 -2
  303. data/lib/language_server/protocol/interface/text_document_item.rb +7 -3
  304. data/lib/language_server/protocol/interface/text_document_position_params.rb +4 -0
  305. data/lib/language_server/protocol/interface/text_document_registration_options.rb +3 -3
  306. data/lib/language_server/protocol/interface/text_document_save_registration_options.rb +7 -4
  307. data/lib/language_server/protocol/interface/text_document_sync_client_capabilities.rb +4 -4
  308. data/lib/language_server/protocol/interface/text_document_sync_options.rb +15 -17
  309. data/lib/language_server/protocol/interface/text_edit.rb +3 -0
  310. data/lib/language_server/protocol/interface/type_definition_client_capabilities.rb +10 -5
  311. data/lib/language_server/protocol/interface/type_definition_options.rb +1 -1
  312. data/lib/language_server/protocol/interface/type_definition_params.rb +4 -4
  313. data/lib/language_server/protocol/interface/type_definition_registration_options.rb +5 -5
  314. data/lib/language_server/protocol/interface/type_hierarchy_client_capabilities.rb +38 -0
  315. data/lib/language_server/protocol/interface/type_hierarchy_item.rb +105 -0
  316. data/lib/language_server/protocol/interface/type_hierarchy_options.rb +35 -0
  317. data/lib/language_server/protocol/interface/type_hierarchy_prepare_params.rb +56 -0
  318. data/lib/language_server/protocol/interface/type_hierarchy_registration_options.rb +55 -0
  319. data/lib/language_server/protocol/interface/type_hierarchy_subtypes_params.rb +54 -0
  320. data/lib/language_server/protocol/interface/type_hierarchy_supertypes_params.rb +54 -0
  321. data/lib/language_server/protocol/interface/unchanged_document_diagnostic_report.rb +52 -0
  322. data/lib/language_server/protocol/interface/unregistration.rb +2 -2
  323. data/lib/language_server/protocol/interface/versioned_notebook_document_identifier.rb +47 -0
  324. data/lib/language_server/protocol/interface/versioned_text_document_identifier.rb +13 -13
  325. data/lib/language_server/protocol/interface/will_save_text_document_params.rb +1 -1
  326. data/lib/language_server/protocol/interface/window_client_capabilities.rb +63 -0
  327. data/lib/language_server/protocol/interface/work_done_progress_begin.rb +6 -6
  328. data/lib/language_server/protocol/interface/work_done_progress_end.rb +1 -1
  329. data/lib/language_server/protocol/interface/work_done_progress_options.rb +1 -1
  330. data/lib/language_server/protocol/interface/work_done_progress_params.rb +1 -1
  331. data/lib/language_server/protocol/interface/work_done_progress_report.rb +6 -7
  332. data/lib/language_server/protocol/interface/workspace_client_capabilities.rb +176 -0
  333. data/lib/language_server/protocol/interface/workspace_diagnostic_params.rb +67 -0
  334. data/lib/language_server/protocol/interface/workspace_diagnostic_report.rb +35 -0
  335. data/lib/language_server/protocol/interface/workspace_diagnostic_report_partial_result.rb +35 -0
  336. data/lib/language_server/protocol/interface/workspace_document_diagnostic_report.rb +77 -0
  337. data/lib/language_server/protocol/interface/workspace_edit.rb +28 -17
  338. data/lib/language_server/protocol/interface/workspace_edit_client_capabilities.rb +15 -6
  339. data/lib/language_server/protocol/interface/workspace_folder.rb +4 -1
  340. data/lib/language_server/protocol/interface/workspace_folders_initialize_params.rb +39 -0
  341. data/lib/language_server/protocol/interface/workspace_folders_server_capabilities.rb +3 -3
  342. data/lib/language_server/protocol/interface/workspace_full_document_diagnostic_report.rb +77 -0
  343. data/lib/language_server/protocol/interface/workspace_symbol.rb +95 -0
  344. data/lib/language_server/protocol/interface/workspace_symbol_client_capabilities.rb +23 -6
  345. data/lib/language_server/protocol/interface/workspace_symbol_options.rb +17 -2
  346. data/lib/language_server/protocol/interface/workspace_symbol_params.rb +16 -16
  347. data/lib/language_server/protocol/interface/workspace_symbol_registration_options.rb +17 -2
  348. data/lib/language_server/protocol/interface/workspace_unchanged_document_diagnostic_report.rb +70 -0
  349. data/lib/language_server/protocol/interface.rb +156 -14
  350. data/lib/language_server/protocol/transport/io/reader.rb +8 -24
  351. data/lib/language_server/protocol/transport/io/writer.rb +1 -0
  352. data/lib/language_server/protocol/version.rb +1 -1
  353. metadata +92 -24
  354. data/lib/language_server/protocol/constant/initialize_error.rb +0 -16
  355. data/lib/language_server/protocol/interface/notification_message.rb +0 -48
  356. data/lib/language_server/protocol/interface/request_message.rb +0 -57
  357. data/lib/language_server/protocol/interface/response_error.rb +0 -52
  358. data/lib/language_server/protocol/interface/response_message.rb +0 -58
@@ -4,6 +4,8 @@ module LanguageServer
4
4
  #
5
5
  # Symbol tags are extra annotations that tweak the rendering of a symbol.
6
6
  #
7
+ # @since 3.16
8
+ #
7
9
  module SymbolTag
8
10
  #
9
11
  # Render a symbol as obsolete, usually using a strike-out.
@@ -6,8 +6,8 @@ module LanguageServer
6
6
  #
7
7
  module TextDocumentSaveReason
8
8
  #
9
- # Manually triggered, e.g. by the user pressing save, by starting
10
- # debugging, or by an API call.
9
+ # Manually triggered, e.g. by the user pressing save, by starting debugging,
10
+ # or by an API call.
11
11
  #
12
12
  MANUAL = 1
13
13
  #
@@ -2,8 +2,8 @@ module LanguageServer
2
2
  module Protocol
3
3
  module Constant
4
4
  #
5
- # Defines how the host (editor) should sync document changes to the language
6
- # server.
5
+ # Defines how the host (editor) should sync
6
+ # document changes to the language server.
7
7
  #
8
8
  module TextDocumentSyncKind
9
9
  #
@@ -18,7 +18,7 @@ module LanguageServer
18
18
  #
19
19
  # Documents are synced by sending the full content on open.
20
20
  # After that only incremental updates to the document are
21
- # send.
21
+ # sent.
22
22
  #
23
23
  INCREMENTAL = 2
24
24
  end
@@ -2,7 +2,7 @@ module LanguageServer
2
2
  module Protocol
3
3
  module Constant
4
4
  module TokenFormat
5
- RELATIVE = 'relative'
5
+ RELATIVE = "relative"
6
6
  end
7
7
  end
8
8
  end
@@ -0,0 +1,20 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Constant
4
+ module TraceValues
5
+ #
6
+ # Turn tracing off.
7
+ #
8
+ OFF = "off"
9
+ #
10
+ # Trace messages only.
11
+ #
12
+ MESSAGES = "messages"
13
+ #
14
+ # Verbose message tracing.
15
+ #
16
+ VERBOSE = "verbose"
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,33 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Constant
4
+ #
5
+ # Moniker uniqueness level to define scope of the moniker.
6
+ #
7
+ # @since 3.16.0
8
+ #
9
+ module UniquenessLevel
10
+ #
11
+ # The moniker is only unique inside a document
12
+ #
13
+ DOCUMENT = "document"
14
+ #
15
+ # The moniker is unique inside a project for which a dump got created
16
+ #
17
+ PROJECT = "project"
18
+ #
19
+ # The moniker is unique inside the group to which a project belongs
20
+ #
21
+ GROUP = "group"
22
+ #
23
+ # The moniker is unique inside the moniker scheme.
24
+ #
25
+ SCHEME = "scheme"
26
+ #
27
+ # The moniker is globally unique
28
+ #
29
+ GLOBAL = "global"
30
+ end
31
+ end
32
+ end
33
+ end
@@ -2,6 +2,7 @@ module LanguageServer
2
2
  module Protocol
3
3
  module Constant
4
4
  autoload :CodeActionKind, "language_server/protocol/constant/code_action_kind"
5
+ autoload :CodeActionTriggerKind, "language_server/protocol/constant/code_action_trigger_kind"
5
6
  autoload :CompletionItemKind, "language_server/protocol/constant/completion_item_kind"
6
7
  autoload :CompletionItemTag, "language_server/protocol/constant/completion_item_tag"
7
8
  autoload :CompletionTriggerKind, "language_server/protocol/constant/completion_trigger_kind"
@@ -12,23 +13,32 @@ module LanguageServer
12
13
  autoload :FailureHandlingKind, "language_server/protocol/constant/failure_handling_kind"
13
14
  autoload :FileChangeType, "language_server/protocol/constant/file_change_type"
14
15
  autoload :FileOperationPatternKind, "language_server/protocol/constant/file_operation_pattern_kind"
15
- autoload :InitializeError, "language_server/protocol/constant/initialize_error"
16
+ autoload :FoldingRangeKind, "language_server/protocol/constant/folding_range_kind"
17
+ autoload :InlayHintKind, "language_server/protocol/constant/inlay_hint_kind"
16
18
  autoload :InsertTextFormat, "language_server/protocol/constant/insert_text_format"
17
19
  autoload :InsertTextMode, "language_server/protocol/constant/insert_text_mode"
20
+ autoload :LSPErrorCodes, "language_server/protocol/constant/lsp_error_codes"
18
21
  autoload :MarkupKind, "language_server/protocol/constant/markup_kind"
19
22
  autoload :MessageType, "language_server/protocol/constant/message_type"
23
+ autoload :MonikerKind, "language_server/protocol/constant/moniker_kind"
24
+ autoload :NotebookCellKind, "language_server/protocol/constant/notebook_cell_kind"
25
+ autoload :PositionEncodingKind, "language_server/protocol/constant/position_encoding_kind"
20
26
  autoload :PrepareSupportDefaultBehavior, "language_server/protocol/constant/prepare_support_default_behavior"
21
27
  autoload :ResourceOperationKind, "language_server/protocol/constant/resource_operation_kind"
28
+ autoload :SemanticTokenModifiers, "language_server/protocol/constant/semantic_token_modifiers"
29
+ autoload :SemanticTokenTypes, "language_server/protocol/constant/semantic_token_types"
22
30
  autoload :SignatureHelpTriggerKind, "language_server/protocol/constant/signature_help_trigger_kind"
23
31
  autoload :SymbolKind, "language_server/protocol/constant/symbol_kind"
24
32
  autoload :SymbolTag, "language_server/protocol/constant/symbol_tag"
25
33
  autoload :TextDocumentSaveReason, "language_server/protocol/constant/text_document_save_reason"
26
34
  autoload :TextDocumentSyncKind, "language_server/protocol/constant/text_document_sync_kind"
27
- autoload :TextDocumentSyncKind, "language_server/protocol/constant/text_document_sync_kind"
28
35
  autoload :TokenFormat, "language_server/protocol/constant/token_format"
36
+ autoload :TraceValues, "language_server/protocol/constant/trace_values"
37
+ autoload :UniquenessLevel, "language_server/protocol/constant/uniqueness_level"
29
38
  autoload :WatchKind, "language_server/protocol/constant/watch_kind"
30
39
 
31
40
  require "language_server/protocol/constant/code_action_kind"
41
+ require "language_server/protocol/constant/code_action_trigger_kind"
32
42
  require "language_server/protocol/constant/completion_item_kind"
33
43
  require "language_server/protocol/constant/completion_item_tag"
34
44
  require "language_server/protocol/constant/completion_trigger_kind"
@@ -39,20 +49,28 @@ module LanguageServer
39
49
  require "language_server/protocol/constant/failure_handling_kind"
40
50
  require "language_server/protocol/constant/file_change_type"
41
51
  require "language_server/protocol/constant/file_operation_pattern_kind"
42
- require "language_server/protocol/constant/initialize_error"
52
+ require "language_server/protocol/constant/folding_range_kind"
53
+ require "language_server/protocol/constant/inlay_hint_kind"
43
54
  require "language_server/protocol/constant/insert_text_format"
44
55
  require "language_server/protocol/constant/insert_text_mode"
56
+ require "language_server/protocol/constant/lsp_error_codes"
45
57
  require "language_server/protocol/constant/markup_kind"
46
58
  require "language_server/protocol/constant/message_type"
59
+ require "language_server/protocol/constant/moniker_kind"
60
+ require "language_server/protocol/constant/notebook_cell_kind"
61
+ require "language_server/protocol/constant/position_encoding_kind"
47
62
  require "language_server/protocol/constant/prepare_support_default_behavior"
48
63
  require "language_server/protocol/constant/resource_operation_kind"
64
+ require "language_server/protocol/constant/semantic_token_modifiers"
65
+ require "language_server/protocol/constant/semantic_token_types"
49
66
  require "language_server/protocol/constant/signature_help_trigger_kind"
50
67
  require "language_server/protocol/constant/symbol_kind"
51
68
  require "language_server/protocol/constant/symbol_tag"
52
69
  require "language_server/protocol/constant/text_document_save_reason"
53
70
  require "language_server/protocol/constant/text_document_sync_kind"
54
- require "language_server/protocol/constant/text_document_sync_kind"
55
71
  require "language_server/protocol/constant/token_format"
72
+ require "language_server/protocol/constant/trace_values"
73
+ require "language_server/protocol/constant/uniqueness_level"
56
74
  require "language_server/protocol/constant/watch_kind"
57
75
  end
58
76
  end
@@ -4,17 +4,27 @@ module LanguageServer
4
4
  #
5
5
  # A special text edit with an additional change annotation.
6
6
  #
7
+ # @since 3.16.0.
8
+ #
7
9
  class AnnotatedTextEdit
8
- def initialize(range:, new_text:, annotation_id:)
10
+ def initialize(annotation_id:, range:, new_text:)
9
11
  @attributes = {}
10
12
 
13
+ @attributes[:annotationId] = annotation_id
11
14
  @attributes[:range] = range
12
15
  @attributes[:newText] = new_text
13
- @attributes[:annotationId] = annotation_id
14
16
 
15
17
  @attributes.freeze
16
18
  end
17
19
 
20
+ #
21
+ # The actual identifier of the change annotation
22
+ #
23
+ # @return [ChangeAnnotationIdentifier]
24
+ def annotation_id
25
+ attributes.fetch(:annotationId)
26
+ end
27
+
18
28
  #
19
29
  # The range of the text document to be manipulated. To insert
20
30
  # text into a document create a range where start === end.
@@ -33,14 +43,6 @@ module LanguageServer
33
43
  attributes.fetch(:newText)
34
44
  end
35
45
 
36
- #
37
- # The actual annotation identifier.
38
- #
39
- # @return [string]
40
- def annotation_id
41
- attributes.fetch(:annotationId)
42
- end
43
-
44
46
  attr_reader :attributes
45
47
 
46
48
  def to_hash
@@ -1,6 +1,9 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # The parameters passed via a apply workspace edit request.
6
+ #
4
7
  class ApplyWorkspaceEditParams
5
8
  def initialize(label: nil, edit:)
6
9
  @attributes = {}
@@ -16,7 +19,7 @@ module LanguageServer
16
19
  # presented in the user interface for example on an undo
17
20
  # stack to undo the workspace edit.
18
21
  #
19
- # @return [string]
22
+ # @return [string | nil]
20
23
  def label
21
24
  attributes.fetch(:label)
22
25
  end
@@ -1,7 +1,12 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
- class ApplyWorkspaceEditResponse
4
+ #
5
+ # The result returned from the apply workspace edit request.
6
+ #
7
+ # @since 3.17 renamed from ApplyWorkspaceEditResponse
8
+ #
9
+ class ApplyWorkspaceEditResult
5
10
  def initialize(applied:, failure_reason: nil, failed_change: nil)
6
11
  @attributes = {}
7
12
 
@@ -25,18 +30,17 @@ module LanguageServer
25
30
  # This may be used by the server for diagnostic logging or to provide
26
31
  # a suitable error for a request that triggered the edit.
27
32
  #
28
- # @return [string]
33
+ # @return [string | nil]
29
34
  def failure_reason
30
35
  attributes.fetch(:failureReason)
31
36
  end
32
37
 
33
38
  #
34
- # Depending on the client's failure handling strategy `failedChange`
35
- # might contain the index of the change that failed. This property is
36
- # only available if the client signals a `failureHandlingStrategy`
37
- # in its client capabilities.
39
+ # Depending on the client's failure handling strategy `failedChange` might
40
+ # contain the index of the change that failed. This property is only available
41
+ # if the client signals a `failureHandlingStrategy` in its client capabilities.
38
42
  #
39
- # @return [number]
43
+ # @return [uinteger | nil]
40
44
  def failed_change
41
45
  attributes.fetch(:failedChange)
42
46
  end
@@ -0,0 +1,68 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Interface
4
+ #
5
+ # A base for all symbol information.
6
+ #
7
+ class BaseSymbolInformation
8
+ def initialize(name:, kind:, tags: nil, container_name: nil)
9
+ @attributes = {}
10
+
11
+ @attributes[:name] = name
12
+ @attributes[:kind] = kind
13
+ @attributes[:tags] = tags if tags
14
+ @attributes[:containerName] = container_name if container_name
15
+
16
+ @attributes.freeze
17
+ end
18
+
19
+ #
20
+ # The name of this symbol.
21
+ #
22
+ # @return [string]
23
+ def name
24
+ attributes.fetch(:name)
25
+ end
26
+
27
+ #
28
+ # The kind of this symbol.
29
+ #
30
+ # @return [SymbolKind]
31
+ def kind
32
+ attributes.fetch(:kind)
33
+ end
34
+
35
+ #
36
+ # Tags for this symbol.
37
+ #
38
+ # @since 3.16.0
39
+ #
40
+ # @return [SymbolTag[] | nil]
41
+ def tags
42
+ attributes.fetch(:tags)
43
+ end
44
+
45
+ #
46
+ # The name of the symbol containing this symbol. This information is for
47
+ # user interface purposes (e.g. to render a qualifier in the user interface
48
+ # if necessary). It can't be used to re-infer a hierarchy for the document
49
+ # symbols.
50
+ #
51
+ # @return [string | nil]
52
+ def container_name
53
+ attributes.fetch(:containerName)
54
+ end
55
+
56
+ attr_reader :attributes
57
+
58
+ def to_hash
59
+ attributes
60
+ end
61
+
62
+ def to_json(*args)
63
+ to_hash.to_json(*args)
64
+ end
65
+ end
66
+ end
67
+ end
68
+ end
@@ -1,6 +1,9 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # @since 3.16.0
6
+ #
4
7
  class CallHierarchyClientCapabilities
5
8
  def initialize(dynamic_registration: nil)
6
9
  @attributes = {}
@@ -11,12 +14,11 @@ module LanguageServer
11
14
  end
12
15
 
13
16
  #
14
- # Whether implementation supports dynamic registration. If this is set to
15
- # `true` the client supports the new `(TextDocumentRegistrationOptions &
16
- # StaticRegistrationOptions)` return value for the corresponding server
17
- # capability as well.
17
+ # Whether implementation supports dynamic registration. If this is set to `true`
18
+ # the client supports the new `(TextDocumentRegistrationOptions & StaticRegistrationOptions)`
19
+ # return value for the corresponding server capability as well.
18
20
  #
19
- # @return [boolean]
21
+ # @return [boolean | nil]
20
22
  def dynamic_registration
21
23
  attributes.fetch(:dynamicRegistration)
22
24
  end
@@ -1,6 +1,11 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # Represents an incoming call, e.g. a caller of a method or constructor.
6
+ #
7
+ # @since 3.16.0
8
+ #
4
9
  class CallHierarchyIncomingCall
5
10
  def initialize(from:, from_ranges:)
6
11
  @attributes = {}
@@ -1,39 +1,44 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # The parameter of a `callHierarchy/incomingCalls` request.
6
+ #
7
+ # @since 3.16.0
8
+ #
4
9
  class CallHierarchyIncomingCallsParams
5
- def initialize(work_done_token: nil, partial_result_token: nil, item:)
10
+ def initialize(item:, work_done_token: nil, partial_result_token: nil)
6
11
  @attributes = {}
7
12
 
13
+ @attributes[:item] = item
8
14
  @attributes[:workDoneToken] = work_done_token if work_done_token
9
15
  @attributes[:partialResultToken] = partial_result_token if partial_result_token
10
- @attributes[:item] = item
11
16
 
12
17
  @attributes.freeze
13
18
  end
14
19
 
20
+ # @return [CallHierarchyItem]
21
+ def item
22
+ attributes.fetch(:item)
23
+ end
24
+
15
25
  #
16
26
  # An optional token that a server can use to report work done progress.
17
27
  #
18
- # @return [ProgressToken]
28
+ # @return [ProgressToken | nil]
19
29
  def work_done_token
20
30
  attributes.fetch(:workDoneToken)
21
31
  end
22
32
 
23
33
  #
24
- # An optional token that a server can use to report partial results (e.g.
25
- # streaming) to the client.
34
+ # An optional token that a server can use to report partial results (e.g. streaming) to
35
+ # the client.
26
36
  #
27
- # @return [ProgressToken]
37
+ # @return [ProgressToken | nil]
28
38
  def partial_result_token
29
39
  attributes.fetch(:partialResultToken)
30
40
  end
31
41
 
32
- # @return [CallHierarchyItem]
33
- def item
34
- attributes.fetch(:item)
35
- end
36
-
37
42
  attr_reader :attributes
38
43
 
39
44
  def to_hash
@@ -1,6 +1,12 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # Represents programming constructs like functions or constructors in the context
6
+ # of call hierarchy.
7
+ #
8
+ # @since 3.16.0
9
+ #
4
10
  class CallHierarchyItem
5
11
  def initialize(name:, kind:, tags: nil, detail: nil, uri:, range:, selection_range:, data: nil)
6
12
  @attributes = {}
@@ -28,7 +34,7 @@ module LanguageServer
28
34
  #
29
35
  # The kind of this item.
30
36
  #
31
- # @return [any]
37
+ # @return [SymbolKind]
32
38
  def kind
33
39
  attributes.fetch(:kind)
34
40
  end
@@ -36,7 +42,7 @@ module LanguageServer
36
42
  #
37
43
  # Tags for this item.
38
44
  #
39
- # @return [1[]]
45
+ # @return [SymbolTag[] | nil]
40
46
  def tags
41
47
  attributes.fetch(:tags)
42
48
  end
@@ -44,7 +50,7 @@ module LanguageServer
44
50
  #
45
51
  # More detail for this item, e.g. the signature of a function.
46
52
  #
47
- # @return [string]
53
+ # @return [string | nil]
48
54
  def detail
49
55
  attributes.fetch(:detail)
50
56
  end
@@ -52,14 +58,13 @@ module LanguageServer
52
58
  #
53
59
  # The resource identifier of this item.
54
60
  #
55
- # @return [string]
61
+ # @return [DocumentUri]
56
62
  def uri
57
63
  attributes.fetch(:uri)
58
64
  end
59
65
 
60
66
  #
61
- # The range enclosing this symbol not including leading/trailing whitespace
62
- # but everything else, e.g. comments and code.
67
+ # The range enclosing this symbol not including leading/trailing whitespace but everything else, e.g. comments and code.
63
68
  #
64
69
  # @return [Range]
65
70
  def range
@@ -67,9 +72,8 @@ module LanguageServer
67
72
  end
68
73
 
69
74
  #
70
- # The range that should be selected and revealed when this symbol is being
71
- # picked, e.g. the name of a function. Must be contained by the
72
- # [`range`](#CallHierarchyItem.range).
75
+ # The range that should be selected and revealed when this symbol is being picked, e.g. the name of a function.
76
+ # Must be contained by the [`range`](#CallHierarchyItem.range).
73
77
  #
74
78
  # @return [Range]
75
79
  def selection_range
@@ -80,7 +84,7 @@ module LanguageServer
80
84
  # A data entry field that is preserved between a call hierarchy prepare and
81
85
  # incoming calls or outgoing calls requests.
82
86
  #
83
- # @return [unknown]
87
+ # @return [LSPAny | nil]
84
88
  def data
85
89
  attributes.fetch(:data)
86
90
  end
@@ -1,6 +1,11 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # Call hierarchy options used during static registration.
6
+ #
7
+ # @since 3.16.0
8
+ #
4
9
  class CallHierarchyOptions
5
10
  def initialize(work_done_progress: nil)
6
11
  @attributes = {}
@@ -10,7 +15,7 @@ module LanguageServer
10
15
  @attributes.freeze
11
16
  end
12
17
 
13
- # @return [boolean]
18
+ # @return [boolean | nil]
14
19
  def work_done_progress
15
20
  attributes.fetch(:workDoneProgress)
16
21
  end
@@ -1,6 +1,11 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # Represents an outgoing call, e.g. calling a getter from a method or a method from a constructor etc.
6
+ #
7
+ # @since 3.16.0
8
+ #
4
9
  class CallHierarchyOutgoingCall
5
10
  def initialize(to:, from_ranges:)
6
11
  @attributes = {}
@@ -20,8 +25,9 @@ module LanguageServer
20
25
  end
21
26
 
22
27
  #
23
- # The range at which this item is called. This is the range relative to
24
- # the caller, e.g the item passed to `callHierarchy/outgoingCalls` request.
28
+ # The range at which this item is called. This is the range relative to the caller, e.g the item
29
+ # passed to [`provideCallHierarchyOutgoingCalls`](#CallHierarchyItemProvider.provideCallHierarchyOutgoingCalls)
30
+ # and not [`this.to`](#CallHierarchyOutgoingCall.to).
25
31
  #
26
32
  # @return [Range[]]
27
33
  def from_ranges
@@ -1,39 +1,44 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # The parameter of a `callHierarchy/outgoingCalls` request.
6
+ #
7
+ # @since 3.16.0
8
+ #
4
9
  class CallHierarchyOutgoingCallsParams
5
- def initialize(work_done_token: nil, partial_result_token: nil, item:)
10
+ def initialize(item:, work_done_token: nil, partial_result_token: nil)
6
11
  @attributes = {}
7
12
 
13
+ @attributes[:item] = item
8
14
  @attributes[:workDoneToken] = work_done_token if work_done_token
9
15
  @attributes[:partialResultToken] = partial_result_token if partial_result_token
10
- @attributes[:item] = item
11
16
 
12
17
  @attributes.freeze
13
18
  end
14
19
 
20
+ # @return [CallHierarchyItem]
21
+ def item
22
+ attributes.fetch(:item)
23
+ end
24
+
15
25
  #
16
26
  # An optional token that a server can use to report work done progress.
17
27
  #
18
- # @return [ProgressToken]
28
+ # @return [ProgressToken | nil]
19
29
  def work_done_token
20
30
  attributes.fetch(:workDoneToken)
21
31
  end
22
32
 
23
33
  #
24
- # An optional token that a server can use to report partial results (e.g.
25
- # streaming) to the client.
34
+ # An optional token that a server can use to report partial results (e.g. streaming) to
35
+ # the client.
26
36
  #
27
- # @return [ProgressToken]
37
+ # @return [ProgressToken | nil]
28
38
  def partial_result_token
29
39
  attributes.fetch(:partialResultToken)
30
40
  end
31
41
 
32
- # @return [CallHierarchyItem]
33
- def item
34
- attributes.fetch(:item)
35
- end
36
-
37
42
  attr_reader :attributes
38
43
 
39
44
  def to_hash
@@ -1,6 +1,11 @@
1
1
  module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
+ #
5
+ # The parameter of a `textDocument/prepareCallHierarchy` request.
6
+ #
7
+ # @since 3.16.0
8
+ #
4
9
  class CallHierarchyPrepareParams
5
10
  def initialize(text_document:, position:, work_done_token: nil)
6
11
  @attributes = {}
@@ -31,7 +36,7 @@ module LanguageServer
31
36
  #
32
37
  # An optional token that a server can use to report work done progress.
33
38
  #
34
- # @return [ProgressToken]
39
+ # @return [ProgressToken | nil]
35
40
  def work_done_token
36
41
  attributes.fetch(:workDoneToken)
37
42
  end