diff options
Diffstat (limited to 'runtime/lua/vim/lsp/diagnostic.lua')
-rw-r--r-- | runtime/lua/vim/lsp/diagnostic.lua | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/runtime/lua/vim/lsp/diagnostic.lua b/runtime/lua/vim/lsp/diagnostic.lua index 1570d4a122..27a1f53f89 100644 --- a/runtime/lua/vim/lsp/diagnostic.lua +++ b/runtime/lua/vim/lsp/diagnostic.lua @@ -308,15 +308,16 @@ end --- Get all diagnostics for all clients --- ----@return Diagnostic[] +---@return {bufnr: Diagnostic[]} function M.get_all() - local all_diagnostics = {} - for _, buf_diagnostics in pairs(diagnostic_cache) do + local diagnostics_by_bufnr = {} + for bufnr, buf_diagnostics in pairs(diagnostic_cache) do + diagnostics_by_bufnr[bufnr] = {} for _, client_diagnostics in pairs(buf_diagnostics) do - vim.list_extend(all_diagnostics, client_diagnostics) + vim.list_extend(diagnostics_by_bufnr[bufnr], client_diagnostics) end end - return all_diagnostics + return diagnostics_by_bufnr end --- Return associated diagnostics for bufnr |