Skip to content

Commit 3debe6c

Browse files
authored
feat: add listOverridableMethods and addOverridableMethods commands (#83)
1 parent 22eca6b commit 3debe6c

File tree

1 file changed

+39
-0
lines changed

1 file changed

+39
-0
lines changed

lua/java-core/ls/clients/jdtls-client.lua

+39
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ local await = async.wait_handle_error
1919
---| 'java/move'
2020
---| 'java/searchSymbols'
2121
---| 'java/getMoveDestinations'
22+
---| 'java/listOverridableMethods'
23+
---| 'java/addOverridableMethods'
2224

2325
---@alias jdtls.CodeActionCommand
2426
---| 'extractVariable'
@@ -114,6 +116,19 @@ end
114116
---@field name string
115117
---@field type string
116118

119+
---@class jdtls.listOverridableMethodsResponse
120+
---@field methods jdtls.OverridableMethod[]
121+
---@field type string
122+
123+
---@class jdtls.OverridableMethod
124+
---@field key string
125+
---@field bindingKey string
126+
---@field declaringClass string
127+
---@field declaringClassType string
128+
---@field name string
129+
---@field parameters string[]
130+
---@field unimplemented boolean
131+
117132
---@class jdtls.MoveDestinationsResponse
118133
---@field errorMessage? string
119134
---@field destinations jdtls.InstanceMethodMoveDestination[]|jdtls.ResourceMoveDestination[]
@@ -287,6 +302,30 @@ function JdtlsClient:java_get_refactor_edit(
287302
return self:request('java/getRefactorEdit', params, buffer)
288303
end
289304

305+
---Returns a list of methods that can be overridden
306+
---@param params lsp.CodeActionParams
307+
---@param buffer? number
308+
---@return jdtls.listOverridableMethodsResponse
309+
function JdtlsClient:list_overridable_methods(params, buffer)
310+
return self:request('java/listOverridableMethods', params, buffer)
311+
end
312+
313+
---Returns a list of methods that can be overridden
314+
---@param context lsp.CodeActionParams
315+
---@param overridable_methods jdtls.OverridableMethod[]
316+
---@param buffer? number
317+
---@return lsp.WorkspaceEdit
318+
function JdtlsClient:add_overridable_methods(
319+
context,
320+
overridable_methods,
321+
buffer
322+
)
323+
return self:request('java/addOverridableMethods', {
324+
context = context,
325+
overridableMethods = overridable_methods,
326+
}, buffer)
327+
end
328+
290329
---Compile the workspace
291330
---@param is_full_compile boolean if true, a complete full compile of the
292331
---workspace will be executed

0 commit comments

Comments
 (0)