clang-tools 6.0.0

Classes | Functions
clang::tidy::performance Namespace Reference

## Classes
class | FasterStringFindCheck
| Optimize calls to std::string::find() and friends when the needle passed is a single character string literal. More...
class | ForRangeCopyCheck
| A check that detects copied loop variables and suggests using const references. More...
class | ImplicitConversionInLoopCheck
class | InefficientAlgorithmCheck
| Warns on inefficient use of STL algorithms on associative containers. More...
class | InefficientStringConcatenationCheck
| This check is to warn about the performance overhead arising from concatenating strings, using the operator+, instead of operator+=. More...
class | InefficientVectorOperationCheck
| Finds possible inefficient `std::vector` operations (e.g. More...
class | MoveConstArgCheck
| Find casts of calculation results to bigger type. More...
class | MoveConstructorInitCheck
| The check flags user-defined move constructors that have a ctor-initializer initializing a member or base class through a copy constructor instead of a move constructor. More...
class | NoexceptMoveConstructorCheck
| The check flags user-defined move constructors and assignment operators not marked with `noexcept` or marked with `noexcept(expr)` where `expr` evaluates to `false` (but is not a `false` literal itself). More...
class | PerformanceModule
class | TypePromotionInMathFnCheck
| Finds calls to C math library functions with implicit float to double promotions. More...
class | UnnecessaryCopyInitialization
class | UnnecessaryValueParamCheck
| A check that flags value parameters of expensive to copy types that can safely be converted to const references. More...

## Functions
static bool | IsNonTrivialImplicitCast (const Stmt *ST)
static bool | areTypesCompatible (QualType Left, QualType Right)
static void | ReplaceCallWithArg (const CallExpr *Call, DiagnosticBuilder &Diag, const SourceManager &SM, const LangOptions &LangOpts)
static ClangTidyModuleRegistry::Add< PerformanceModule > | X ("performance-module", "Adds performance checks.")

## Function Documentation

## ◆ areTypesCompatible()

static bool clang::tidy::performance::areTypesCompatible | ( | QualType | Left,
|  | QualType | Right
| ) |  |
| static

Definition at line 21 of file InefficientAlgorithmCheck.cpp.

Referenced by clang::tidy::performance::InefficientAlgorithmCheck::check().

## ◆ IsNonTrivialImplicitCast()

static bool clang::tidy::performance::IsNonTrivialImplicitCast | ( | const Stmt * | ST | ) |
| static

Definition at line 28 of file ImplicitConversionInLoopCheck.cpp.

Referenced by clang::tidy::performance::ImplicitConversionInLoopCheck::check().

## ◆ ReplaceCallWithArg()

static void clang::tidy::performance::ReplaceCallWithArg | ( | const CallExpr * | Call,
|  | DiagnosticBuilder & | Diag,
|  | const SourceManager & | SM,
|  | const LangOptions & | LangOpts
| ) |  |
| static

Definition at line 20 of file MoveConstArgCheck.cpp.

## ◆ X()

static ClangTidyModuleRegistry::Add<PerformanceModule> clang::tidy::performance::X | ( | "performance-module" | ,
|  | "Adds performance checks." |
| ) |  |
| static

Referenced by clang::tidy::performance::PerformanceModule::addCheckFactories().