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

Replace the pattern: More...

#include <MakeUniqueCheck.h>

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

Public Member Functions

 MakeUniqueCheck (StringRef Name, ClangTidyContext *Context)
Public Member Functions inherited from clang::tidy::modernize::MakeSmartPtrCheck
 MakeSmartPtrCheck (StringRef Name, ClangTidyContext *Context, StringRef MakeSmartPtrFunctionName)
void registerMatchers (ast_matchers::MatchFinder *Finder) final
void registerPPCallbacks (const SourceManager &SM, Preprocessor *PP, Preprocessor *ModuleExpanderPP) override
void check (const ast_matchers::MatchFinder::MatchResult &Result) final
void storeOptions (ClangTidyOptions::OptionMap &Opts) override

Protected Member Functions

SmartPtrTypeMatcher getSmartPointerTypeMatcher () const override
 Returns matcher that match with different smart pointer types.
bool isLanguageVersionSupported (const LangOptions &LangOpts) const override
Protected Member Functions inherited from clang::tidy::modernize::MakeSmartPtrCheck
bool isLanguageVersionSupported (const LangOptions &LangOpts) const override
 Returns whether the C++ version is compatible with current check.

Additional Inherited Members

Protected Types inherited from clang::tidy::modernize::MakeSmartPtrCheck
using SmartPtrTypeMatcher = ast_matchers::internal::BindableMatcher<QualType>
Static Protected Attributes inherited from clang::tidy::modernize::MakeSmartPtrCheck
static const char PointerType [] = "pointerType"

Detailed Description

Replace the pattern:

std::unique_ptr<type>(new type(args...))

With the C++14 version:

std::make_unique<type>(args...)

Definition at line 25 of file MakeUniqueCheck.h.

Constructor & Destructor Documentation

◆ MakeUniqueCheck()

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

Member Function Documentation

◆ getSmartPointerTypeMatcher()

MakeUniqueCheck::SmartPtrTypeMatcher clang::tidy::modernize::MakeUniqueCheck::getSmartPointerTypeMatcher ( ) const
overrideprotectedvirtual

Returns matcher that match with different smart pointer types.

Requires to bind pointer type (qualType) with PointerType string declared in this class.

Implements clang::tidy::modernize::MakeSmartPtrCheck.

Definition at line 21 of file MakeUniqueCheck.cpp.

References clang::tidy::modernize::MakeSmartPtrCheck::PointerType.

◆ isLanguageVersionSupported()

bool clang::tidy::modernize::MakeUniqueCheck::isLanguageVersionSupported ( const LangOptions & LangOpts) const
overrideprotected

Definition at line 37 of file MakeUniqueCheck.cpp.


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