From 8338b7838e5d08999487dc89f81aea6f1054ffc3 Mon Sep 17 00:00:00 2001 From: Yegappan Lakshmanan Date: Sat, 24 Jun 2023 11:27:45 -0700 Subject: [PATCH] Minor optimization --- autoload/lsp/lspserver.vim | 40 +++++++++++++++++++++++++------------- 1 file changed, 26 insertions(+), 14 deletions(-) diff --git a/autoload/lsp/lspserver.vim b/autoload/lsp/lspserver.vim index cf4dbc1..5833de8 100644 --- a/autoload/lsp/lspserver.vim +++ b/autoload/lsp/lspserver.vim @@ -28,7 +28,9 @@ import './inlayhints.vim' # LSP server standard output handler def Output_cb(lspserver: dict, chan: channel, msg: any): void - lspserver.traceLog($'{strftime("%m/%d/%y %T")}: Received {msg->string()}') + if lspserver.debug + lspserver.traceLog($'{strftime("%m/%d/%y %T")}: Received {msg->string()}') + endif lspserver.data = msg lspserver.processMessages() enddef @@ -349,7 +351,9 @@ def SendMessage(lspserver: dict, content: dict): void endif job->ch_sendexpr(content) if content->has_key('id') - lspserver.traceLog($'{strftime("%m/%d/%y %T")}: Sent {content->string()}') + if lspserver.debug + lspserver.traceLog($'{strftime("%m/%d/%y %T")}: Sent {content->string()}') + endif endif enddef @@ -393,10 +397,10 @@ enddef # Send a sync RPC request message to the LSP server and return the received # reply. In case of an error, an empty Dict is returned. def Rpc(lspserver: dict, method: string, params: any, handleError: bool = true): dict - var req = {} - req.method = method - req.params = {} - req.params->extend(params) + var req = { + method: method, + params: params + } var job = lspserver.job if job->job_status() != 'run' @@ -404,12 +408,16 @@ def Rpc(lspserver: dict, method: string, params: any, handleError: bool = t return {} endif - lspserver.traceLog($'{strftime("%m/%d/%y %T")}: Sent {req->string()}') + if lspserver.debug + lspserver.traceLog($'{strftime("%m/%d/%y %T")}: Sent {req->string()}') + endif # Do the synchronous RPC call var reply = job->ch_evalexpr(req) - lspserver.traceLog($'{strftime("%m/%d/%y %T")}: Received {reply->string()}') + if lspserver.debug + lspserver.traceLog($'{strftime("%m/%d/%y %T")}: Received {reply->string()}') + endif if reply->has_key('result') # successful reply @@ -426,7 +434,9 @@ enddef # LSP server asynchronous RPC callback def AsyncRpcCb(lspserver: dict, method: string, RpcCb: func, chan: channel, reply: dict) - lspserver.traceLog($'{strftime("%m/%d/%y %T")}: Received {reply->string()}') + if lspserver.debug + lspserver.traceLog($'{strftime("%m/%d/%y %T")}: Received {reply->string()}') + endif if reply->empty() return @@ -450,10 +460,10 @@ enddef # Returns the LSP message id. This id can be used to cancel the RPC request # (if needed). Returns -1 on error. def AsyncRpc(lspserver: dict, method: string, params: any, Cbfunc: func): number - var req = {} - req.method = method - req.params = {} - req.params->extend(params) + var req = { + method: method, + params: params + } var job = lspserver.job if job->job_status() != 'run' @@ -461,7 +471,9 @@ def AsyncRpc(lspserver: dict, method: string, params: any, Cbfunc: func): n return -1 endif - lspserver.traceLog($'{strftime("%m/%d/%y %T")}: Sent {req->string()}') + if lspserver.debug + lspserver.traceLog($'{strftime("%m/%d/%y %T")}: Sent {req->string()}') + endif # Do the asynchronous RPC call var Fn = function('AsyncRpcCb', [lspserver, method, Cbfunc]) -- 2.44.0