clang-tools 20.0.0git
|
Generic check which checks if the bound function decl is marked with noexcept
or noexcept(expr)
where expr
evaluates to false
.
More...
#include <NoexceptFunctionBaseCheck.h>
Public Member Functions | |
NoexceptFunctionBaseCheck (StringRef Name, ClangTidyContext *Context) | |
bool | isLanguageVersionSupported (const LangOptions &LangOpts) const override |
Override this to disable registering matchers and PP callbacks if an invalid language version is being used. | |
void | check (const ast_matchers::MatchFinder::MatchResult &Result) final override |
ClangTidyChecks that register ASTMatchers should do the actual work in here. | |
std::optional< TraversalKind > | getCheckTraversalKind () const override |
Public Member Functions inherited from clang::tidy::ClangTidyCheck | |
ClangTidyCheck (StringRef CheckName, ClangTidyContext *Context) | |
Initializes the check with CheckName and Context . | |
virtual bool | isLanguageVersionSupported (const LangOptions &LangOpts) const |
Override this to disable registering matchers and PP callbacks if an invalid language version is being used. | |
virtual void | registerPPCallbacks (const SourceManager &SM, Preprocessor *PP, Preprocessor *ModuleExpanderPP) |
Override this to register PPCallbacks in the preprocessor. | |
virtual void | registerMatchers (ast_matchers::MatchFinder *Finder) |
Override this to register AST matchers with Finder . | |
virtual void | check (const ast_matchers::MatchFinder::MatchResult &Result) |
ClangTidyChecks that register ASTMatchers should do the actual work in here. | |
DiagnosticBuilder | diag (SourceLocation Loc, StringRef Description, DiagnosticIDs::Level Level=DiagnosticIDs::Warning) |
Add a diagnostic with the check's name. | |
DiagnosticBuilder | diag (StringRef Description, DiagnosticIDs::Level Level=DiagnosticIDs::Warning) |
Add a diagnostic with the check's name. | |
DiagnosticBuilder | configurationDiag (StringRef Description, DiagnosticIDs::Level Level=DiagnosticIDs::Warning) const |
Adds a diagnostic to report errors in the check's configuration. | |
virtual void | storeOptions (ClangTidyOptions::OptionMap &Options) |
Should store all options supported by this check with their current values or default values for options that haven't been overridden. | |
Protected Member Functions | |
virtual DiagnosticBuilder | reportMissingNoexcept (const FunctionDecl *FuncDecl)=0 |
virtual void | reportNoexceptEvaluatedToFalse (const FunctionDecl *FuncDecl, const Expr *NoexceptExpr)=0 |
Protected Member Functions inherited from clang::tidy::ClangTidyCheck | |
StringRef | getCurrentMainFile () const |
Returns the main file name of the current translation unit. | |
const LangOptions & | getLangOpts () const |
Returns the language options from the context. | |
bool | areDiagsSelfContained () const |
Returns true when the check is run in a use case when only 1 fix will be applied at a time. | |
StringRef | getID () const override |
Static Protected Attributes | |
static constexpr StringRef | BindFuncDeclName = "FuncDecl" |
Additional Inherited Members | |
Protected Attributes inherited from clang::tidy::ClangTidyCheck | |
OptionsView | Options |
Generic check which checks if the bound function decl is marked with noexcept
or noexcept(expr)
where expr
evaluates to false
.
Definition at line 22 of file NoexceptFunctionBaseCheck.h.
|
inline |
Definition at line 24 of file NoexceptFunctionBaseCheck.h.
|
finaloverridevirtual |
ClangTidyChecks
that register ASTMatchers should do the actual work in here.
Reimplemented from clang::tidy::ClangTidyCheck.
Definition at line 19 of file NoexceptFunctionBaseCheck.cpp.
References clang::tidy::utils::ExceptionSpecAnalyzer::analyze(), BindFuncDeclName, FuncDecl, clang::tidy::utils::lexer::getLocationForNoexceptSpecifier(), reportMissingNoexcept(), reportNoexceptEvaluatedToFalse(), and clang::tidy::utils::ExceptionSpecAnalyzer::Throwing.
|
inlineoverride |
Definition at line 32 of file NoexceptFunctionBaseCheck.h.
|
inlineoverridevirtual |
Override this to disable registering matchers and PP callbacks if an invalid language version is being used.
For example if a check is examining overloaded functions then this should be overridden to return false when the CPlusPlus flag is not set in LangOpts
.
Reimplemented from clang::tidy::ClangTidyCheck.
Definition at line 27 of file NoexceptFunctionBaseCheck.h.
|
protectedpure virtual |
Referenced by check().
|
protectedpure virtual |
Referenced by check().
|
staticconstexprprotected |