clang-tools 22.0.0git
clang::tidy::modernize::MinMaxUseInitializerListCheck Class Reference

Replaces nested std::min and std::max calls with an initializer list where applicable. More...

#include <MinMaxUseInitializerListCheck.h>

Inheritance diagram for clang::tidy::modernize::MinMaxUseInitializerListCheck:
[legend]

Public Member Functions

 MinMaxUseInitializerListCheck (StringRef Name, ClangTidyContext *Context)
void storeOptions (ClangTidyOptions::OptionMap &Opts) override
void registerMatchers (ast_matchers::MatchFinder *Finder) override
void registerPPCallbacks (const SourceManager &SM, Preprocessor *PP, Preprocessor *ModuleExpanderPP) override
void check (const ast_matchers::MatchFinder::MatchResult &Match) override
bool isLanguageVersionSupported (const LangOptions &LangOpts) const override
std::optional< TraversalKind > getCheckTraversalKind () const override

Detailed Description

Replaces nested std::min and std::max calls with an initializer list where applicable.

For example:

int a = std::max(std::max(i, j), k);

This code is transformed to:

int a = std::max({i, j, k});

Definition at line 31 of file MinMaxUseInitializerListCheck.h.

Constructor & Destructor Documentation

◆ MinMaxUseInitializerListCheck()

clang::tidy::modernize::MinMaxUseInitializerListCheck::MinMaxUseInitializerListCheck ( StringRef Name,
ClangTidyContext * Context )

Definition at line 204 of file MinMaxUseInitializerListCheck.cpp.

Member Function Documentation

◆ check()

void clang::tidy::modernize::MinMaxUseInitializerListCheck::check ( const ast_matchers::MatchFinder::MatchResult & Match)
override

◆ getCheckTraversalKind()

std::optional< TraversalKind > clang::tidy::modernize::MinMaxUseInitializerListCheck::getCheckTraversalKind ( ) const
inlineoverride

Definition at line 44 of file MinMaxUseInitializerListCheck.h.

◆ isLanguageVersionSupported()

bool clang::tidy::modernize::MinMaxUseInitializerListCheck::isLanguageVersionSupported ( const LangOptions & LangOpts) const
inlineoverride

Definition at line 41 of file MinMaxUseInitializerListCheck.h.

◆ registerMatchers()

void clang::tidy::modernize::MinMaxUseInitializerListCheck::registerMatchers ( ast_matchers::MatchFinder * Finder)
override

Definition at line 222 of file MinMaxUseInitializerListCheck.cpp.

References FuncDecl.

◆ registerPPCallbacks()

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

Definition at line 239 of file MinMaxUseInitializerListCheck.cpp.

◆ storeOptions()

void clang::tidy::modernize::MinMaxUseInitializerListCheck::storeOptions ( ClangTidyOptions::OptionMap & Opts)
override

Definition at line 214 of file MinMaxUseInitializerListCheck.cpp.


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