language_server-protocol 3.15.0.1 → 3.16.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (218) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -1
  3. data/lib/language_server/protocol/constant/code_action_kind.rb +6 -4
  4. data/lib/language_server/protocol/constant/completion_item_tag.rb +2 -2
  5. data/lib/language_server/protocol/constant/completion_trigger_kind.rb +2 -1
  6. data/lib/language_server/protocol/constant/diagnostic_tag.rb +2 -2
  7. data/lib/language_server/protocol/constant/error_codes.rb +26 -3
  8. data/lib/language_server/protocol/constant/failure_handling_kind.rb +6 -5
  9. data/lib/language_server/protocol/constant/file_operation_pattern_kind.rb +20 -0
  10. data/lib/language_server/protocol/constant/initialize_error.rb +2 -1
  11. data/lib/language_server/protocol/constant/insert_text_mode.rb +30 -0
  12. data/lib/language_server/protocol/constant/prepare_support_default_behavior.rb +13 -0
  13. data/lib/language_server/protocol/constant/signature_help_trigger_kind.rb +2 -1
  14. data/lib/language_server/protocol/constant/symbol_tag.rb +15 -0
  15. data/lib/language_server/protocol/constant/text_document_save_reason.rb +2 -2
  16. data/lib/language_server/protocol/constant/text_document_sync_kind.rb +2 -2
  17. data/lib/language_server/protocol/constant/token_format.rb +9 -0
  18. data/lib/language_server/protocol/constant.rb +10 -0
  19. data/lib/language_server/protocol/interface/annotated_text_edit.rb +56 -0
  20. data/lib/language_server/protocol/interface/apply_workspace_edit_response.rb +15 -4
  21. data/lib/language_server/protocol/interface/call_hierarchy_client_capabilities.rb +36 -0
  22. data/lib/language_server/protocol/interface/call_hierarchy_incoming_call.rb +43 -0
  23. data/lib/language_server/protocol/interface/call_hierarchy_incoming_calls_params.rb +49 -0
  24. data/lib/language_server/protocol/interface/call_hierarchy_item.rb +100 -0
  25. data/lib/language_server/protocol/interface/call_hierarchy_options.rb +30 -0
  26. data/lib/language_server/protocol/interface/call_hierarchy_outgoing_call.rb +43 -0
  27. data/lib/language_server/protocol/interface/call_hierarchy_outgoing_calls_params.rb +49 -0
  28. data/lib/language_server/protocol/interface/call_hierarchy_prepare_params.rb +51 -0
  29. data/lib/language_server/protocol/interface/call_hierarchy_registration_options.rb +50 -0
  30. data/lib/language_server/protocol/interface/change_annotation.rb +57 -0
  31. data/lib/language_server/protocol/interface/client_capabilities.rb +12 -3
  32. data/lib/language_server/protocol/interface/code_action.rb +43 -8
  33. data/lib/language_server/protocol/interface/code_action_client_capabilities.rb +44 -1
  34. data/lib/language_server/protocol/interface/code_action_context.rb +7 -6
  35. data/lib/language_server/protocol/interface/code_action_options.rb +19 -4
  36. data/lib/language_server/protocol/interface/code_action_params.rb +20 -2
  37. data/lib/language_server/protocol/interface/code_action_registration_options.rb +38 -2
  38. data/lib/language_server/protocol/interface/code_description.rb +36 -0
  39. data/lib/language_server/protocol/interface/code_lens.rb +5 -3
  40. data/lib/language_server/protocol/interface/code_lens_options.rb +6 -1
  41. data/lib/language_server/protocol/interface/code_lens_params.rb +20 -2
  42. data/lib/language_server/protocol/interface/code_lens_registration_options.rb +25 -2
  43. data/lib/language_server/protocol/interface/code_lens_workspace_client_capabilities.rb +39 -0
  44. data/lib/language_server/protocol/interface/color_presentation.rb +7 -6
  45. data/lib/language_server/protocol/interface/color_presentation_params.rb +20 -2
  46. data/lib/language_server/protocol/interface/completion_client_capabilities.rb +1 -1
  47. data/lib/language_server/protocol/interface/completion_context.rb +5 -3
  48. data/lib/language_server/protocol/interface/completion_item.rb +60 -29
  49. data/lib/language_server/protocol/interface/completion_list.rb +2 -2
  50. data/lib/language_server/protocol/interface/completion_options.rb +21 -13
  51. data/lib/language_server/protocol/interface/completion_params.rb +40 -3
  52. data/lib/language_server/protocol/interface/completion_registration_options.rb +57 -2
  53. data/lib/language_server/protocol/interface/create_file.rb +10 -1
  54. data/lib/language_server/protocol/interface/create_files_params.rb +37 -0
  55. data/lib/language_server/protocol/interface/declaration_client_capabilities.rb +3 -3
  56. data/lib/language_server/protocol/interface/declaration_options.rb +6 -1
  57. data/lib/language_server/protocol/interface/declaration_params.rb +38 -2
  58. data/lib/language_server/protocol/interface/declaration_registration_options.rb +27 -2
  59. data/lib/language_server/protocol/interface/definition_options.rb +6 -1
  60. data/lib/language_server/protocol/interface/definition_params.rb +38 -2
  61. data/lib/language_server/protocol/interface/definition_registration_options.rb +17 -2
  62. data/lib/language_server/protocol/interface/delete_file.rb +10 -1
  63. data/lib/language_server/protocol/interface/delete_files_params.rb +37 -0
  64. data/lib/language_server/protocol/interface/diagnostic.rb +21 -1
  65. data/lib/language_server/protocol/interface/diagnostic_related_information.rb +3 -3
  66. data/lib/language_server/protocol/interface/did_change_text_document_params.rb +11 -9
  67. data/lib/language_server/protocol/interface/did_change_watched_files_client_capabilities.rb +3 -3
  68. data/lib/language_server/protocol/interface/document_color_options.rb +6 -1
  69. data/lib/language_server/protocol/interface/document_color_params.rb +20 -2
  70. data/lib/language_server/protocol/interface/document_color_registration_options.rb +27 -2
  71. data/lib/language_server/protocol/interface/document_filter.rb +7 -3
  72. data/lib/language_server/protocol/interface/document_formatting_options.rb +6 -1
  73. data/lib/language_server/protocol/interface/document_formatting_params.rb +9 -1
  74. data/lib/language_server/protocol/interface/document_formatting_registration_options.rb +17 -2
  75. data/lib/language_server/protocol/interface/document_highlight.rb +1 -1
  76. data/lib/language_server/protocol/interface/document_highlight_options.rb +6 -1
  77. data/lib/language_server/protocol/interface/document_highlight_params.rb +38 -2
  78. data/lib/language_server/protocol/interface/document_highlight_registration_options.rb +17 -2
  79. data/lib/language_server/protocol/interface/document_link.rb +6 -5
  80. data/lib/language_server/protocol/interface/document_link_options.rb +6 -1
  81. data/lib/language_server/protocol/interface/document_link_params.rb +20 -2
  82. data/lib/language_server/protocol/interface/document_link_registration_options.rb +25 -2
  83. data/lib/language_server/protocol/interface/document_on_type_formatting_params.rb +17 -1
  84. data/lib/language_server/protocol/interface/document_on_type_formatting_registration_options.rb +28 -2
  85. data/lib/language_server/protocol/interface/document_range_formatting_options.rb +6 -1
  86. data/lib/language_server/protocol/interface/document_range_formatting_params.rb +9 -1
  87. data/lib/language_server/protocol/interface/document_range_formatting_registration_options.rb +17 -2
  88. data/lib/language_server/protocol/interface/document_symbol.rb +23 -11
  89. data/lib/language_server/protocol/interface/document_symbol_client_capabilities.rb +24 -2
  90. data/lib/language_server/protocol/interface/document_symbol_options.rb +17 -2
  91. data/lib/language_server/protocol/interface/document_symbol_params.rb +20 -2
  92. data/lib/language_server/protocol/interface/document_symbol_registration_options.rb +27 -2
  93. data/lib/language_server/protocol/interface/execute_command_options.rb +6 -1
  94. data/lib/language_server/protocol/interface/execute_command_params.rb +9 -1
  95. data/lib/language_server/protocol/interface/execute_command_registration_options.rb +14 -1
  96. data/lib/language_server/protocol/interface/file_create.rb +36 -0
  97. data/lib/language_server/protocol/interface/file_delete.rb +36 -0
  98. data/lib/language_server/protocol/interface/file_operation_filter.rb +46 -0
  99. data/lib/language_server/protocol/interface/file_operation_pattern.rb +67 -0
  100. data/lib/language_server/protocol/interface/file_operation_pattern_options.rb +36 -0
  101. data/lib/language_server/protocol/interface/file_operation_registration_options.rb +36 -0
  102. data/lib/language_server/protocol/interface/file_rename.rb +45 -0
  103. data/lib/language_server/protocol/interface/file_system_watcher.rb +7 -3
  104. data/lib/language_server/protocol/interface/folding_range.rb +17 -8
  105. data/lib/language_server/protocol/interface/folding_range_client_capabilities.rb +10 -7
  106. data/lib/language_server/protocol/interface/folding_range_options.rb +6 -1
  107. data/lib/language_server/protocol/interface/folding_range_params.rb +20 -2
  108. data/lib/language_server/protocol/interface/folding_range_registration_options.rb +27 -2
  109. data/lib/language_server/protocol/interface/hover.rb +1 -1
  110. data/lib/language_server/protocol/interface/hover_client_capabilities.rb +3 -2
  111. data/lib/language_server/protocol/interface/hover_options.rb +6 -1
  112. data/lib/language_server/protocol/interface/hover_params.rb +28 -2
  113. data/lib/language_server/protocol/interface/hover_registration_options.rb +17 -2
  114. data/lib/language_server/protocol/interface/implementation_client_capabilities.rb +3 -3
  115. data/lib/language_server/protocol/interface/implementation_options.rb +6 -1
  116. data/lib/language_server/protocol/interface/implementation_params.rb +38 -2
  117. data/lib/language_server/protocol/interface/implementation_registration_options.rb +27 -2
  118. data/lib/language_server/protocol/interface/initialize_params.rb +29 -6
  119. data/lib/language_server/protocol/interface/insert_replace_edit.rb +54 -0
  120. data/lib/language_server/protocol/interface/linked_editing_range_client_capabilities.rb +36 -0
  121. data/lib/language_server/protocol/interface/linked_editing_range_options.rb +30 -0
  122. data/lib/language_server/protocol/interface/linked_editing_range_params.rb +51 -0
  123. data/lib/language_server/protocol/interface/linked_editing_range_registration_options.rb +50 -0
  124. data/lib/language_server/protocol/interface/linked_editing_ranges.rb +45 -0
  125. data/lib/language_server/protocol/interface/location_link.rb +9 -7
  126. data/lib/language_server/protocol/interface/log_message_params.rb +1 -1
  127. data/lib/language_server/protocol/interface/log_trace_params.rb +43 -0
  128. data/lib/language_server/protocol/interface/markdown_client_capabilities.rb +45 -0
  129. data/lib/language_server/protocol/interface/markup_content.rb +9 -7
  130. data/lib/language_server/protocol/interface/moniker.rb +64 -0
  131. data/lib/language_server/protocol/interface/moniker_client_capabilities.rb +36 -0
  132. data/lib/language_server/protocol/interface/moniker_options.rb +30 -0
  133. data/lib/language_server/protocol/interface/moniker_params.rb +61 -0
  134. data/lib/language_server/protocol/interface/moniker_registration_options.rb +40 -0
  135. data/lib/language_server/protocol/interface/notification_message.rb +6 -1
  136. data/lib/language_server/protocol/interface/optional_versioned_text_document_identifier.rb +50 -0
  137. data/lib/language_server/protocol/interface/parameter_information.rb +7 -5
  138. data/lib/language_server/protocol/interface/partial_result_params.rb +3 -3
  139. data/lib/language_server/protocol/interface/position.rb +5 -5
  140. data/lib/language_server/protocol/interface/prepare_rename_params.rb +17 -1
  141. data/lib/language_server/protocol/interface/progress_params.rb +1 -1
  142. data/lib/language_server/protocol/interface/publish_diagnostics_client_capabilities.rb +21 -1
  143. data/lib/language_server/protocol/interface/publish_diagnostics_params.rb +2 -1
  144. data/lib/language_server/protocol/interface/reference_options.rb +6 -1
  145. data/lib/language_server/protocol/interface/reference_params.rb +38 -2
  146. data/lib/language_server/protocol/interface/reference_registration_options.rb +17 -2
  147. data/lib/language_server/protocol/interface/regular_expressions_client_capabilities.rb +45 -0
  148. data/lib/language_server/protocol/interface/rename_client_capabilities.rb +27 -1
  149. data/lib/language_server/protocol/interface/rename_file.rb +10 -1
  150. data/lib/language_server/protocol/interface/rename_files_params.rb +38 -0
  151. data/lib/language_server/protocol/interface/rename_options.rb +6 -1
  152. data/lib/language_server/protocol/interface/rename_params.rb +28 -2
  153. data/lib/language_server/protocol/interface/rename_registration_options.rb +25 -2
  154. data/lib/language_server/protocol/interface/request_message.rb +6 -1
  155. data/lib/language_server/protocol/interface/response_message.rb +6 -1
  156. data/lib/language_server/protocol/interface/selection_range.rb +2 -1
  157. data/lib/language_server/protocol/interface/selection_range_client_capabilities.rb +4 -3
  158. data/lib/language_server/protocol/interface/selection_range_options.rb +6 -1
  159. data/lib/language_server/protocol/interface/selection_range_params.rb +20 -2
  160. data/lib/language_server/protocol/interface/selection_range_registration_options.rb +27 -2
  161. data/lib/language_server/protocol/interface/semantic_tokens.rb +45 -0
  162. data/lib/language_server/protocol/interface/semantic_tokens_client_capabilities.rb +97 -0
  163. data/lib/language_server/protocol/interface/semantic_tokens_delta.rb +40 -0
  164. data/lib/language_server/protocol/interface/semantic_tokens_delta_params.rb +62 -0
  165. data/lib/language_server/protocol/interface/semantic_tokens_delta_partial_result.rb +30 -0
  166. data/lib/language_server/protocol/interface/semantic_tokens_edit.rb +51 -0
  167. data/lib/language_server/protocol/interface/semantic_tokens_legend.rb +42 -0
  168. data/lib/language_server/protocol/interface/semantic_tokens_options.rb +58 -0
  169. data/lib/language_server/protocol/interface/semantic_tokens_params.rb +52 -0
  170. data/lib/language_server/protocol/interface/semantic_tokens_partial_result.rb +30 -0
  171. data/lib/language_server/protocol/interface/semantic_tokens_range_params.rb +61 -0
  172. data/lib/language_server/protocol/interface/semantic_tokens_registration_options.rb +78 -0
  173. data/lib/language_server/protocol/interface/semantic_tokens_workspace_client_capabilities.rb +39 -0
  174. data/lib/language_server/protocol/interface/server_capabilities.rb +47 -9
  175. data/lib/language_server/protocol/interface/set_trace_params.rb +33 -0
  176. data/lib/language_server/protocol/interface/show_document_client_capabilities.rb +37 -0
  177. data/lib/language_server/protocol/interface/show_document_params.rb +71 -0
  178. data/lib/language_server/protocol/interface/show_document_result.rb +36 -0
  179. data/lib/language_server/protocol/interface/show_message_params.rb +1 -1
  180. data/lib/language_server/protocol/interface/show_message_request_client_capabilities.rb +36 -0
  181. data/lib/language_server/protocol/interface/show_message_request_params.rb +1 -1
  182. data/lib/language_server/protocol/interface/signature_help.rb +3 -3
  183. data/lib/language_server/protocol/interface/signature_help_client_capabilities.rb +1 -1
  184. data/lib/language_server/protocol/interface/signature_help_context.rb +10 -7
  185. data/lib/language_server/protocol/interface/signature_help_options.rb +9 -3
  186. data/lib/language_server/protocol/interface/signature_help_params.rb +31 -4
  187. data/lib/language_server/protocol/interface/signature_help_registration_options.rb +38 -2
  188. data/lib/language_server/protocol/interface/signature_information.rb +12 -1
  189. data/lib/language_server/protocol/interface/symbol_information.rb +10 -1
  190. data/lib/language_server/protocol/interface/text_document_change_registration_options.rb +11 -2
  191. data/lib/language_server/protocol/interface/text_document_client_capabilities.rb +39 -2
  192. data/lib/language_server/protocol/interface/text_document_content_change_event.rb +2 -2
  193. data/lib/language_server/protocol/interface/text_document_edit.rb +2 -2
  194. data/lib/language_server/protocol/interface/text_document_registration_options.rb +3 -3
  195. data/lib/language_server/protocol/interface/text_document_save_registration_options.rb +10 -1
  196. data/lib/language_server/protocol/interface/text_document_sync_options.rb +13 -15
  197. data/lib/language_server/protocol/interface/type_definition_client_capabilities.rb +3 -3
  198. data/lib/language_server/protocol/interface/type_definition_options.rb +6 -1
  199. data/lib/language_server/protocol/interface/type_definition_params.rb +38 -2
  200. data/lib/language_server/protocol/interface/type_definition_registration_options.rb +27 -2
  201. data/lib/language_server/protocol/interface/versioned_text_document_identifier.rb +12 -8
  202. data/lib/language_server/protocol/interface/will_save_text_document_params.rb +1 -1
  203. data/lib/language_server/protocol/interface/work_done_progress_begin.rb +3 -3
  204. data/lib/language_server/protocol/interface/work_done_progress_cancel_params.rb +1 -1
  205. data/lib/language_server/protocol/interface/work_done_progress_create_params.rb +1 -1
  206. data/lib/language_server/protocol/interface/work_done_progress_params.rb +1 -1
  207. data/lib/language_server/protocol/interface/work_done_progress_report.rb +5 -5
  208. data/lib/language_server/protocol/interface/workspace_edit.rb +24 -7
  209. data/lib/language_server/protocol/interface/workspace_edit_client_capabilities.rb +23 -1
  210. data/lib/language_server/protocol/interface/workspace_symbol_client_capabilities.rb +13 -2
  211. data/lib/language_server/protocol/interface/workspace_symbol_options.rb +6 -1
  212. data/lib/language_server/protocol/interface/workspace_symbol_params.rb +20 -2
  213. data/lib/language_server/protocol/interface/workspace_symbol_registration_options.rb +6 -1
  214. data/lib/language_server/protocol/interface.rb +112 -0
  215. data/lib/language_server/protocol/transport/io/reader.rb +2 -1
  216. data/lib/language_server/protocol/transport/io/writer.rb +1 -0
  217. data/lib/language_server/protocol/version.rb +1 -1
  218. metadata +73 -12
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9569616333bfa8cac560d8eb19e79c0078325e0c9805ad93b71e188f86df01ed
4
- data.tar.gz: a610b33875a9ec242d72a19cdead030ab3125bc73c674f68c505217960dcb343
3
+ metadata.gz: cb38ed978207a09954b5a1a62b25b5d5ebaec981d82b9486dbf429c2593a9b5d
4
+ data.tar.gz: 274301eb1c493d7d408da8b1b723630566a51c803bcc1affe22122ed85e18bba
5
5
  SHA512:
6
- metadata.gz: b514fafbc7e16989109d19e13d5a744e3e1560ef5214661642e963b4eb68a37694decba47cd61bbfd58d7a54056aa35778a0368a22710617d9ebc4ce3a206770
7
- data.tar.gz: a975ab715b6bcc6474e2dac4f755117a77c465153e0abdc30d89a5d9053f5d6314871a0332a693a536767e31f22d1284f49d70ed8202071c95005c715978284c
6
+ metadata.gz: 57b0e114a97a7313c59c2f34650967dedde4a93faf0ca9cd5ef33deedfa30c7a6609fb0d8decb33fd3e4ebed94a3948b5c20d0b10e2eb41b4812552f67ae0713
7
+ data.tar.gz: 2faf8f34ce05e565828acc2cc06131e0a7112e2574da38e86e44432a17b536c8312c6ea40f7618617c145e9c17358d8ec926f482d89f73a6ce28fc961bad017b
data/README.md CHANGED
@@ -2,6 +2,8 @@
2
2
 
3
3
  A Language Server Protocol SDK for Ruby.
4
4
 
5
+ [![Gem Version](https://badge.fury.io/rb/language_server-protocol.svg)](https://badge.fury.io/rb/language_server-protocol)
6
+
5
7
  ## Installation
6
8
 
7
9
  Add this line to your application's Gemfile:
@@ -83,4 +85,4 @@ The gem is available as open source under the terms of the [MIT License](http://
83
85
 
84
86
  ## Code of Conduct
85
87
 
86
- Everyone interacting in the LanguageServer::Protocol project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/[USERNAME]/language_server-protocol/blob/master/CODE_OF_CONDUCT.md).
88
+ Everyone interacting in the LanguageServer::Protocol project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/mtsmfm/language_server-protocol/blob/master/CODE_OF_CONDUCT.md).
@@ -4,10 +4,11 @@ module LanguageServer
4
4
  #
5
5
  # The kind of a code action.
6
6
  #
7
- # Kinds are a hierarchical list of identifiers separated by `.`, e.g. `"refactor.extract.function"`.
7
+ # Kinds are a hierarchical list of identifiers separated by `.`,
8
+ # e.g. `"refactor.extract.function"`.
8
9
  #
9
- # The set of kinds is open and client needs to announce the kinds it supports to the server during
10
- # initialization.
10
+ # The set of kinds is open and client needs to announce the kinds it supports
11
+ # to the server during initialization.
11
12
  # A set of predefined code action kinds.
12
13
  #
13
14
  module CodeActionKind
@@ -66,7 +67,8 @@ module LanguageServer
66
67
  #
67
68
  SOURCE = 'source'
68
69
  #
69
- # Base kind for an organize imports source action: `source.organizeImports`.
70
+ # Base kind for an organize imports source action:
71
+ # `source.organizeImports`.
70
72
  #
71
73
  SOURCE_ORGANIZE_IMPORTS = 'source.organizeImports'
72
74
  end
@@ -2,8 +2,8 @@ module LanguageServer
2
2
  module Protocol
3
3
  module Constant
4
4
  #
5
- # Completion item tags are extra annotations that tweak the rendering of a completion
6
- # item.
5
+ # Completion item tags are extra annotations that tweak the rendering of a
6
+ # completion item.
7
7
  #
8
8
  module CompletionItemTag
9
9
  #
@@ -12,7 +12,8 @@ module LanguageServer
12
12
  INVOKED = 1
13
13
  #
14
14
  # Completion was triggered by a trigger character specified by
15
- # the `triggerCharacters` properties of the `CompletionRegistrationOptions`.
15
+ # the `triggerCharacters` properties of the
16
+ # `CompletionRegistrationOptions`.
16
17
  #
17
18
  TRIGGER_CHARACTER = 2
18
19
  #
@@ -8,8 +8,8 @@ module LanguageServer
8
8
  #
9
9
  # Unused or unnecessary code.
10
10
  #
11
- # Clients are allowed to render diagnostics with this tag faded out instead of having
12
- # an error squiggle.
11
+ # Clients are allowed to render diagnostics with this tag faded out
12
+ # instead of having an error squiggle.
13
13
  #
14
14
  UNNECESSARY = 1
15
15
  #
@@ -7,12 +7,35 @@ module LanguageServer
7
7
  METHOD_NOT_FOUND = -32601
8
8
  INVALID_PARAMS = -32602
9
9
  INTERNAL_ERROR = -32603
10
- SERVER_ERROR_START = -32099
11
- SERVER_ERROR_END = -32000
10
+ #
11
+ # This is the start range of JSON RPC reserved error codes.
12
+ # It doesn't denote a real error code. No LSP error codes should
13
+ # be defined between the start and end range. For backwards
14
+ # compatibility the `ServerNotInitialized` and the `UnknownErrorCode`
15
+ # are left in the range.
16
+ #
17
+ JSONRPC_RESERVED_ERROR_RANGE_START = -32099
18
+ SERVER_ERROR_START = JSONRPC_RESERVED_ERROR_RANGE_START
12
19
  SERVER_NOT_INITIALIZED = -32002
13
20
  UNKNOWN_ERROR_CODE = -32001
14
- REQUEST_CANCELLED = -32800
21
+ #
22
+ # This is the start range of JSON RPC reserved error codes.
23
+ # It doesn't denote a real error code.
24
+ #
25
+ JSONRPC_RESERVED_ERROR_RANGE_END = -32000
26
+ SERVER_ERROR_END = JSONRPC_RESERVED_ERROR_RANGE_END
27
+ #
28
+ # This is the start range of LSP reserved error codes.
29
+ # It doesn't denote a real error code.
30
+ #
31
+ LSP_RESERVED_ERROR_RANGE_START = -32899
15
32
  CONTENT_MODIFIED = -32801
33
+ REQUEST_CANCELLED = -32800
34
+ #
35
+ # This is the end range of LSP reserved error codes.
36
+ # It doesn't denote a real error code.
37
+ #
38
+ LSP_RESERVED_ERROR_RANGE_END = -32800
16
39
  end
17
40
  end
18
41
  end
@@ -3,8 +3,9 @@ module LanguageServer
3
3
  module Constant
4
4
  module FailureHandlingKind
5
5
  #
6
- # Applying the workspace change is simply aborted if one of the changes provided
7
- # fails. All operations executed before the failing operation stay executed.
6
+ # Applying the workspace change is simply aborted if one of the changes
7
+ # provided fails. All operations executed before the failing operation
8
+ # stay executed.
8
9
  #
9
10
  ABORT = 'abort'
10
11
  #
@@ -13,9 +14,9 @@ module LanguageServer
13
14
  #
14
15
  TRANSACTIONAL = 'transactional'
15
16
  #
16
- # If the workspace edit contains only textual file changes they are executed transactional.
17
- # If resource changes (create, rename or delete file) are part of the change the failure
18
- # handling strategy is abort.
17
+ # If the workspace edit contains only textual file changes they are
18
+ # executed transactional. If resource changes (create, rename or delete
19
+ # file) are part of the change the failure handling strategy is abort.
19
20
  #
20
21
  TEXT_ONLY_TRANSACTIONAL = 'textOnlyTransactional'
21
22
  #
@@ -0,0 +1,20 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Constant
4
+ #
5
+ # A pattern kind describing if a glob pattern matches a file a folder or
6
+ # both.
7
+ #
8
+ module FileOperationPatternKind
9
+ #
10
+ # The pattern matches a file only.
11
+ #
12
+ FILE = 'file'
13
+ #
14
+ # The pattern matches a folder only.
15
+ #
16
+ FOLDER = 'folder'
17
+ end
18
+ end
19
+ end
20
+ end
@@ -6,7 +6,8 @@ module LanguageServer
6
6
  #
7
7
  module InitializeError
8
8
  #
9
- # If the protocol version provided by the client can't be handled by the server.
9
+ # If the protocol version provided by the client can't be handled by the
10
+ # server.
10
11
  #
11
12
  UNKNOWN_PROTOCOL_VERSION = 1
12
13
  end
@@ -0,0 +1,30 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Constant
4
+ #
5
+ # How whitespace and indentation is handled during completion
6
+ # item insertion.
7
+ #
8
+ module InsertTextMode
9
+ #
10
+ # The insertion or replace strings is taken as it is. If the
11
+ # value is multi line the lines below the cursor will be
12
+ # inserted using the indentation defined in the string value.
13
+ # The client will not apply any kind of adjustments to the
14
+ # string.
15
+ #
16
+ AS_IS = 1
17
+ #
18
+ # The editor adjusts leading whitespace of new lines so that
19
+ # they match the indentation up to the cursor of the line for
20
+ # which the item is accepted.
21
+ #
22
+ # Consider a line like this: <2tabs><cursor><3tabs>foo. Accepting a
23
+ # multi line completion item is indented using 2 tabs and all
24
+ # following lines inserted will be indented using 2 tabs as well.
25
+ #
26
+ ADJUST_INDENTATION = 2
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,13 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Constant
4
+ module PrepareSupportDefaultBehavior
5
+ #
6
+ # The client's default behavior is to select the identifier
7
+ # according the to language's syntax rule.
8
+ #
9
+ IDENTIFIER = 1
10
+ end
11
+ end
12
+ end
13
+ end
@@ -14,7 +14,8 @@ module LanguageServer
14
14
  #
15
15
  TRIGGER_CHARACTER = 2
16
16
  #
17
- # Signature help was triggered by the cursor moving or by the document content changing.
17
+ # Signature help was triggered by the cursor moving or by the document
18
+ # content changing.
18
19
  #
19
20
  CONTENT_CHANGE = 3
20
21
  end
@@ -0,0 +1,15 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Constant
4
+ #
5
+ # Symbol tags are extra annotations that tweak the rendering of a symbol.
6
+ #
7
+ module SymbolTag
8
+ #
9
+ # Render a symbol as obsolete, usually using a strike-out.
10
+ #
11
+ DEPRECATED = 1
12
+ end
13
+ end
14
+ end
15
+ end
@@ -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 debugging,
10
- # or by an API call.
9
+ # Manually triggered, e.g. by the user pressing save, by starting
10
+ # debugging, 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 server.
6
- # Defines how the host (editor) should sync document changes to the language server.
5
+ # Defines how the host (editor) should sync document changes to the language
6
+ # server.
7
7
  #
8
8
  module TextDocumentSyncKind
9
9
  #
@@ -0,0 +1,9 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Constant
4
+ module TokenFormat
5
+ RELATIVE = 'relative'
6
+ end
7
+ end
8
+ end
9
+ end
@@ -11,16 +11,21 @@ module LanguageServer
11
11
  autoload :ErrorCodes, "language_server/protocol/constant/error_codes"
12
12
  autoload :FailureHandlingKind, "language_server/protocol/constant/failure_handling_kind"
13
13
  autoload :FileChangeType, "language_server/protocol/constant/file_change_type"
14
+ autoload :FileOperationPatternKind, "language_server/protocol/constant/file_operation_pattern_kind"
14
15
  autoload :InitializeError, "language_server/protocol/constant/initialize_error"
15
16
  autoload :InsertTextFormat, "language_server/protocol/constant/insert_text_format"
17
+ autoload :InsertTextMode, "language_server/protocol/constant/insert_text_mode"
16
18
  autoload :MarkupKind, "language_server/protocol/constant/markup_kind"
17
19
  autoload :MessageType, "language_server/protocol/constant/message_type"
20
+ autoload :PrepareSupportDefaultBehavior, "language_server/protocol/constant/prepare_support_default_behavior"
18
21
  autoload :ResourceOperationKind, "language_server/protocol/constant/resource_operation_kind"
19
22
  autoload :SignatureHelpTriggerKind, "language_server/protocol/constant/signature_help_trigger_kind"
20
23
  autoload :SymbolKind, "language_server/protocol/constant/symbol_kind"
24
+ autoload :SymbolTag, "language_server/protocol/constant/symbol_tag"
21
25
  autoload :TextDocumentSaveReason, "language_server/protocol/constant/text_document_save_reason"
22
26
  autoload :TextDocumentSyncKind, "language_server/protocol/constant/text_document_sync_kind"
23
27
  autoload :TextDocumentSyncKind, "language_server/protocol/constant/text_document_sync_kind"
28
+ autoload :TokenFormat, "language_server/protocol/constant/token_format"
24
29
  autoload :WatchKind, "language_server/protocol/constant/watch_kind"
25
30
 
26
31
  require "language_server/protocol/constant/code_action_kind"
@@ -33,16 +38,21 @@ module LanguageServer
33
38
  require "language_server/protocol/constant/error_codes"
34
39
  require "language_server/protocol/constant/failure_handling_kind"
35
40
  require "language_server/protocol/constant/file_change_type"
41
+ require "language_server/protocol/constant/file_operation_pattern_kind"
36
42
  require "language_server/protocol/constant/initialize_error"
37
43
  require "language_server/protocol/constant/insert_text_format"
44
+ require "language_server/protocol/constant/insert_text_mode"
38
45
  require "language_server/protocol/constant/markup_kind"
39
46
  require "language_server/protocol/constant/message_type"
47
+ require "language_server/protocol/constant/prepare_support_default_behavior"
40
48
  require "language_server/protocol/constant/resource_operation_kind"
41
49
  require "language_server/protocol/constant/signature_help_trigger_kind"
42
50
  require "language_server/protocol/constant/symbol_kind"
51
+ require "language_server/protocol/constant/symbol_tag"
43
52
  require "language_server/protocol/constant/text_document_save_reason"
44
53
  require "language_server/protocol/constant/text_document_sync_kind"
45
54
  require "language_server/protocol/constant/text_document_sync_kind"
55
+ require "language_server/protocol/constant/token_format"
46
56
  require "language_server/protocol/constant/watch_kind"
47
57
  end
48
58
  end
@@ -0,0 +1,56 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Interface
4
+ #
5
+ # A special text edit with an additional change annotation.
6
+ #
7
+ class AnnotatedTextEdit
8
+ def initialize(range:, new_text:, annotation_id:)
9
+ @attributes = {}
10
+
11
+ @attributes[:range] = range
12
+ @attributes[:newText] = new_text
13
+ @attributes[:annotationId] = annotation_id
14
+
15
+ @attributes.freeze
16
+ end
17
+
18
+ #
19
+ # The range of the text document to be manipulated. To insert
20
+ # text into a document create a range where start === end.
21
+ #
22
+ # @return [Range]
23
+ def range
24
+ attributes.fetch(:range)
25
+ end
26
+
27
+ #
28
+ # The string to be inserted. For delete operations use an
29
+ # empty string.
30
+ #
31
+ # @return [string]
32
+ def new_text
33
+ attributes.fetch(:newText)
34
+ end
35
+
36
+ #
37
+ # The actual annotation identifier.
38
+ #
39
+ # @return [string]
40
+ def annotation_id
41
+ attributes.fetch(:annotationId)
42
+ end
43
+
44
+ attr_reader :attributes
45
+
46
+ def to_hash
47
+ attributes
48
+ end
49
+
50
+ def to_json(*args)
51
+ to_hash.to_json(*args)
52
+ end
53
+ end
54
+ end
55
+ end
56
+ end
@@ -2,11 +2,12 @@ module LanguageServer
2
2
  module Protocol
3
3
  module Interface
4
4
  class ApplyWorkspaceEditResponse
5
- def initialize(applied:, failure_reason: nil)
5
+ def initialize(applied:, failure_reason: nil, failed_change: nil)
6
6
  @attributes = {}
7
7
 
8
8
  @attributes[:applied] = applied
9
9
  @attributes[:failureReason] = failure_reason if failure_reason
10
+ @attributes[:failedChange] = failed_change if failed_change
10
11
 
11
12
  @attributes.freeze
12
13
  end
@@ -21,15 +22,25 @@ module LanguageServer
21
22
 
22
23
  #
23
24
  # An optional textual description for why the edit was not applied.
24
- # This may be used may be used by the server for diagnostic
25
- # logging or to provide a suitable error for a request that
26
- # triggered the edit.
25
+ # This may be used by the server for diagnostic logging or to provide
26
+ # a suitable error for a request that triggered the edit.
27
27
  #
28
28
  # @return [string]
29
29
  def failure_reason
30
30
  attributes.fetch(:failureReason)
31
31
  end
32
32
 
33
+ #
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.
38
+ #
39
+ # @return [number]
40
+ def failed_change
41
+ attributes.fetch(:failedChange)
42
+ end
43
+
33
44
  attr_reader :attributes
34
45
 
35
46
  def to_hash
@@ -0,0 +1,36 @@
1
+ module LanguageServer
2
+ module Protocol
3
+ module Interface
4
+ class CallHierarchyClientCapabilities
5
+ def initialize(dynamic_registration: nil)
6
+ @attributes = {}
7
+
8
+ @attributes[:dynamicRegistration] = dynamic_registration if dynamic_registration
9
+
10
+ @attributes.freeze
11
+ end
12
+
13
+ #
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.
18
+ #
19
+ # @return [boolean]
20
+ def dynamic_registration
21
+ attributes.fetch(:dynamicRegistration)
22
+ end
23
+
24
+ attr_reader :attributes
25
+
26
+ def to_hash
27
+ attributes
28
+ end
29
+
30
+ def to_json(*args)
31
+ to_hash.to_json(*args)
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end