diff options
| author | Rom Grk <romgrk.cc@gmail.com> | 2020-11-03 03:11:08 -0500 | 
|---|---|---|
| committer | Rom Grk <romgrk.cc@gmail.com> | 2020-11-03 03:11:08 -0500 | 
| commit | 13e0ca3e194a438383b8451e19090355aa6c29dc (patch) | |
| tree | 0ac33ef5ac829b7c74dd15f34b17540c3186c356 /runtime/lua/vim/lsp/rpc.lua | |
| parent | c7c865214655f7d88fde85ed4947f07319c14182 (diff) | |
| parent | 5b5848f2fb1f4b7995bb8a59d94b6766d2182070 (diff) | |
| download | rneovim-13e0ca3e194a438383b8451e19090355aa6c29dc.tar.gz rneovim-13e0ca3e194a438383b8451e19090355aa6c29dc.tar.bz2 rneovim-13e0ca3e194a438383b8451e19090355aa6c29dc.zip | |
Merge branch 'master' into add-scroll-events
Diffstat (limited to 'runtime/lua/vim/lsp/rpc.lua')
| -rw-r--r-- | runtime/lua/vim/lsp/rpc.lua | 19 | 
1 files changed, 17 insertions, 2 deletions
| diff --git a/runtime/lua/vim/lsp/rpc.lua b/runtime/lua/vim/lsp/rpc.lua index 749a51fecc..17c411f952 100644 --- a/runtime/lua/vim/lsp/rpc.lua +++ b/runtime/lua/vim/lsp/rpc.lua @@ -42,13 +42,28 @@ local function is_dir(filename)  end  local NIL = vim.NIL + +--@private +local recursive_convert_NIL +recursive_convert_NIL = function(v, tbl_processed) +  if v == NIL then +    return nil +  elseif not tbl_processed[v] and type(v) == 'table' then +    tbl_processed[v] = true +    return vim.tbl_map(function(x) +      return recursive_convert_NIL(x, tbl_processed) +    end, v) +  end + +  return v +end +  --@private  --- Returns its argument, but converts `vim.NIL` to Lua `nil`.  --@param v (any) Argument  --@returns (any)  local function convert_NIL(v) -  if v == NIL then return nil end -  return v +  return recursive_convert_NIL(v, {})  end  --@private | 
