clang-tools 22.0.0git
clang::tidy::performance::UnnecessaryValueParamCheck Class Reference

A check that flags value parameters of expensive to copy types that can safely be converted to const references. More...

#include <UnnecessaryValueParamCheck.h>

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

Public Member Functions

 UnnecessaryValueParamCheck (StringRef Name, ClangTidyContext *Context)
bool isLanguageVersionSupported (const LangOptions &LangOpts) const override
void registerMatchers (ast_matchers::MatchFinder *Finder) override
void check (const ast_matchers::MatchFinder::MatchResult &Result) override
void registerPPCallbacks (const SourceManager &SM, Preprocessor *PP, Preprocessor *ModuleExpanderPP) override
void storeOptions (ClangTidyOptions::OptionMap &Opts) override
void onEndOfTranslationUnit () override

Protected Member Functions

virtual void handleMoveFix (const ParmVarDecl &Param, const DeclRefExpr &CopyArgument, ASTContext &Context)
virtual void handleConstRefFix (const FunctionDecl &Function, const ParmVarDecl &Param, ASTContext &Context)

Detailed Description

A check that flags value parameters of expensive to copy types that can safely be converted to const references.

For the user-facing documentation see: https://clang.llvm.org/extra/clang-tidy/checks/performance/unnecessary-value-param.html

Definition at line 23 of file UnnecessaryValueParamCheck.h.

Constructor & Destructor Documentation

◆ UnnecessaryValueParamCheck()

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

Definition at line 42 of file UnnecessaryValueParamCheck.cpp.

Member Function Documentation

◆ check()

◆ handleConstRefFix()

void clang::tidy::performance::UnnecessaryValueParamCheck::handleConstRefFix ( const FunctionDecl & Function,
const ParmVarDecl & Param,
ASTContext & Context )
protectedvirtual

◆ handleMoveFix()

void clang::tidy::performance::UnnecessaryValueParamCheck::handleMoveFix ( const ParmVarDecl & Param,
const DeclRefExpr & CopyArgument,
ASTContext & Context )
protectedvirtual

Definition at line 171 of file UnnecessaryValueParamCheck.cpp.

Referenced by check().

◆ isLanguageVersionSupported()

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

Definition at line 26 of file UnnecessaryValueParamCheck.h.

◆ onEndOfTranslationUnit()

void clang::tidy::performance::UnnecessaryValueParamCheck::onEndOfTranslationUnit ( )
override

Definition at line 128 of file UnnecessaryValueParamCheck.cpp.

◆ registerMatchers()

void clang::tidy::performance::UnnecessaryValueParamCheck::registerMatchers ( ast_matchers::MatchFinder * Finder)
override

◆ registerPPCallbacks()

void clang::tidy::performance::UnnecessaryValueParamCheck::registerPPCallbacks ( const SourceManager & SM,
Preprocessor * PP,
Preprocessor * ModuleExpanderPP )
override

Definition at line 115 of file UnnecessaryValueParamCheck.cpp.

◆ storeOptions()

void clang::tidy::performance::UnnecessaryValueParamCheck::storeOptions ( ClangTidyOptions::OptionMap & Opts)
override

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