diff options
| author | Justin M. Keyes <justinkz@gmail.com> | 2025-04-23 14:58:31 +0200 |
|---|---|---|
| committer | Justin M. Keyes <justinkz@gmail.com> | 2025-04-23 15:08:14 +0200 |
| commit | 79c12bc6e789dc3774a55289cc8fdedbd3b8ca38 (patch) | |
| tree | 665054da7a577eaa53f155997e8cd84b7366de71 /lua | |
| parent | refactor: deprecate util functions (diff) | |
| download | nvim-lspconfig-79c12bc6e789dc3774a55289cc8fdedbd3b8ca38.tar nvim-lspconfig-79c12bc6e789dc3774a55289cc8fdedbd3b8ca38.tar.gz nvim-lspconfig-79c12bc6e789dc3774a55289cc8fdedbd3b8ca38.tar.bz2 nvim-lspconfig-79c12bc6e789dc3774a55289cc8fdedbd3b8ca38.tar.lz nvim-lspconfig-79c12bc6e789dc3774a55289cc8fdedbd3b8ca38.tar.xz nvim-lspconfig-79c12bc6e789dc3774a55289cc8fdedbd3b8ca38.tar.zst nvim-lspconfig-79c12bc6e789dc3774a55289cc8fdedbd3b8ca38.zip | |
refactor: deprecate util.path.search_ancestors()
Diffstat (limited to 'lua')
| -rw-r--r-- | lua/lspconfig/util.lua | 43 |
1 files changed, 22 insertions, 21 deletions
diff --git a/lua/lspconfig/util.lua b/lua/lspconfig/util.lua index 2fcda8bf..f4322281 100644 --- a/lua/lspconfig/util.lua +++ b/lua/lspconfig/util.lua @@ -34,27 +34,6 @@ function M.validate_bufnr(bufnr) return bufnr == 0 and api.nvim_get_current_buf() or bufnr end -function M.search_ancestors(startpath, func) - if nvim_eleven then - validate('func', func, 'function') - end - if func(startpath) then - return startpath - end - local guard = 100 - for path in vim.fs.parents(startpath) do - -- Prevent infinite recursion if our algorithm breaks - guard = guard - 1 - if guard == 0 then - return - end - - if func(path) then - return path - end - end -end - local function escape_wildcards(path) return path:gsub('([%[%]%?%*])', '\\%1') end @@ -114,6 +93,28 @@ end --- --- Deprecated in Nvim 0.11 +function M.search_ancestors(startpath, func) + if nvim_eleven then + validate('func', func, 'function') + end + if func(startpath) then + return startpath + end + local guard = 100 + for path in vim.fs.parents(startpath) do + -- Prevent infinite recursion if our algorithm breaks + guard = guard - 1 + if guard == 0 then + return + end + + if func(path) then + return path + end + end +end + +--- Deprecated in Nvim 0.11 local function is_fs_root(path) if iswin then return path:match '^%a:$' |
