clang-tools
11.0.0
|
StoreDiags collects the diagnostics that can later be reported by clangd. More...
#include <Diagnostics.h>
Public Types | |
using | DiagFixer = std::function< std::vector< Fix >(DiagnosticsEngine::Level, const clang::Diagnostic &)> |
using | LevelAdjuster = std::function< DiagnosticsEngine::Level(DiagnosticsEngine::Level, const clang::Diagnostic &)> |
Public Member Functions | |
std::vector< Diag > | take (const clang::tidy::ClangTidyContext *Tidy=nullptr) |
void | BeginSourceFile (const LangOptions &Opts, const Preprocessor *) override |
void | EndSourceFile () override |
void | HandleDiagnostic (DiagnosticsEngine::Level DiagLevel, const clang::Diagnostic &Info) override |
void | contributeFixes (DiagFixer Fixer) |
If set, possibly adds fixes for diagnostics using Fixer . More... | |
void | setLevelAdjuster (LevelAdjuster Adjuster) |
If set, this allows the client of this class to adjust the level of diagnostics, such as promoting warnings to errors, or ignoring diagnostics. More... | |
StoreDiags collects the diagnostics that can later be reported by clangd.
It groups all notes for a diagnostic into a single Diag and filters out diagnostics that don't mention the main file (i.e. neither the diag itself nor its notes are in the main file).
Definition at line 120 of file Diagnostics.h.
using clang::clangd::StoreDiags::DiagFixer = std::function<std::vector<Fix>(DiagnosticsEngine::Level, const clang::Diagnostic &)> |
Definition at line 131 of file Diagnostics.h.
using clang::clangd::StoreDiags::LevelAdjuster = std::function<DiagnosticsEngine::Level( DiagnosticsEngine::Level, const clang::Diagnostic &)> |
Definition at line 133 of file Diagnostics.h.
|
override |
Definition at line 520 of file Diagnostics.cpp.
|
inline |
If set, possibly adds fixes for diagnostics using Fixer
.
Definition at line 135 of file Diagnostics.h.
|
override |
Definition at line 525 of file Diagnostics.cpp.
References clang::clangd::None.
|
override |
Definition at line 561 of file Diagnostics.cpp.
|
inline |
If set, this allows the client of this class to adjust the level of diagnostics, such as promoting warnings to errors, or ignoring diagnostics.
Definition at line 139 of file Diagnostics.h.
Referenced by clang::clangd::ParsedAST::build().
std::vector< Diag > clang::clangd::StoreDiags::take | ( | const clang::tidy::ClangTidyContext * | Tidy = nullptr | ) |
Definition at line 467 of file Diagnostics.cpp.
References clang::clangd::Diag::Clang, clang::clangd::Diag::ClangTidy, clang::clangd::Diag::Fixes, clang::tidy::ClangTidyContext::getCheckName(), clang::clangd::DiagBase::ID, clang::clangd::DiagBase::Message, clang::clangd::Fix::Message, Name, clang::clangd::Diag::Name, clang::clangd::Diag::Notes, Output, clang::clangd::DiagBase::Range, clang::clangd::Diag::Source, and clang::clangd::Warning.