diff options
author | Raphael <glephunter@gmail.com> | 2023-01-03 18:07:27 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-01-03 02:07:27 -0800 |
commit | 7b76a3e7992bffca758b2e52548d2f483a45eaf6 (patch) | |
tree | 80fe38cc77ea80cd971c0b1bde3beda2dc2a0715 /runtime/lua/vim/diagnostic.lua | |
parent | c3d8665851c20414007f04a481c5a542d9d139f2 (diff) | |
download | rneovim-7b76a3e7992bffca758b2e52548d2f483a45eaf6.tar.gz rneovim-7b76a3e7992bffca758b2e52548d2f483a45eaf6.tar.bz2 rneovim-7b76a3e7992bffca758b2e52548d2f483a45eaf6.zip |
refactor(diagnostic): DRY for loop #21521
Co-authored-by: Justin M. Keyes <justinkz@gmail.com>
Diffstat (limited to 'runtime/lua/vim/diagnostic.lua')
-rw-r--r-- | runtime/lua/vim/diagnostic.lua | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/runtime/lua/vim/diagnostic.lua b/runtime/lua/vim/diagnostic.lua index b9aee7eaf3..e2eb952eca 100644 --- a/runtime/lua/vim/diagnostic.lua +++ b/runtime/lua/vim/diagnostic.lua @@ -429,32 +429,31 @@ local function get_diagnostics(bufnr, opts, clamp) end end + ---@private + local function add_all_diags(buf, diags) + for _, diagnostic in pairs(diags) do + add(buf, diagnostic) + end + end + if namespace == nil and bufnr == nil then for b, t in pairs(diagnostic_cache) do for _, v in pairs(t) do - for _, diagnostic in pairs(v) do - add(b, diagnostic) - end + add_all_diags(b, v) end end elseif namespace == nil then bufnr = get_bufnr(bufnr) for iter_namespace in pairs(diagnostic_cache[bufnr]) do - for _, diagnostic in pairs(diagnostic_cache[bufnr][iter_namespace]) do - add(bufnr, diagnostic) - end + add_all_diags(bufnr, diagnostic_cache[bufnr][iter_namespace]) end elseif bufnr == nil then for b, t in pairs(diagnostic_cache) do - for _, diagnostic in pairs(t[namespace] or {}) do - add(b, diagnostic) - end + add_all_diags(b, t[namespace] or {}) end else bufnr = get_bufnr(bufnr) - for _, diagnostic in pairs(diagnostic_cache[bufnr][namespace] or {}) do - add(bufnr, diagnostic) - end + add_all_diags(bufnr, diagnostic_cache[bufnr][namespace] or {}) end if opts.severity then |