clang-tools 22.0.0git
clang::tidy::performance::NoexceptFunctionBaseCheck Class Referenceabstract

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>

Inheritance diagram for clang::tidy::performance::NoexceptFunctionBaseCheck:
[legend]

Public Member Functions

 NoexceptFunctionBaseCheck (StringRef Name, ClangTidyContext *Context)
bool isLanguageVersionSupported (const LangOptions &LangOpts) const override
void check (const ast_matchers::MatchFinder::MatchResult &Result) final override
std::optional< TraversalKind > getCheckTraversalKind () const override

Protected Member Functions

virtual DiagnosticBuilder reportMissingNoexcept (const FunctionDecl *FuncDecl)=0
virtual void reportNoexceptEvaluatedToFalse (const FunctionDecl *FuncDecl, const Expr *NoexceptExpr)=0

Static Protected Attributes

static constexpr StringRef BindFuncDeclName = "FuncDecl"

Detailed Description

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.

Constructor & Destructor Documentation

◆ NoexceptFunctionBaseCheck()

clang::tidy::performance::NoexceptFunctionBaseCheck::NoexceptFunctionBaseCheck ( StringRef Name,
ClangTidyContext * Context )
inline

Definition at line 24 of file NoexceptFunctionBaseCheck.h.

Member Function Documentation

◆ check()

void clang::tidy::performance::NoexceptFunctionBaseCheck::check ( const ast_matchers::MatchFinder::MatchResult & Result)
finaloverride

◆ getCheckTraversalKind()

std::optional< TraversalKind > clang::tidy::performance::NoexceptFunctionBaseCheck::getCheckTraversalKind ( ) const
inlineoverride

Definition at line 32 of file NoexceptFunctionBaseCheck.h.

◆ isLanguageVersionSupported()

bool clang::tidy::performance::NoexceptFunctionBaseCheck::isLanguageVersionSupported ( const LangOptions & LangOpts) const
inlineoverride

Definition at line 27 of file NoexceptFunctionBaseCheck.h.

◆ reportMissingNoexcept()

virtual DiagnosticBuilder clang::tidy::performance::NoexceptFunctionBaseCheck::reportMissingNoexcept ( const FunctionDecl * FuncDecl)
protectedpure virtual

References FuncDecl.

Referenced by check().

◆ reportNoexceptEvaluatedToFalse()

virtual void clang::tidy::performance::NoexceptFunctionBaseCheck::reportNoexceptEvaluatedToFalse ( const FunctionDecl * FuncDecl,
const Expr * NoexceptExpr )
protectedpure virtual

References FuncDecl.

Referenced by check().

Member Data Documentation

◆ BindFuncDeclName

StringRef clang::tidy::performance::NoexceptFunctionBaseCheck::BindFuncDeclName = "FuncDecl"
staticconstexprprotected

The documentation for this class was generated from the following files: