clang-tools  5.0.0
Namespaces | Classes | Typedefs | Functions | Variables
clang::tidy Namespace Reference

Namespaces

 android
 
 boost
 
 bugprone
 
 cert
 
 cppcoreguidelines
 
 google
 
 hicpp
 
 llvm
 
 matchers
 
 misc
 
 modernize
 
 mpi
 
 performance
 
 readability
 
 utils
 

Classes

class  OptionsView
 Provides access to the ClangTidyCheck options via check-local names. More...
 
class  ClangTidyCheck
 Base class for all clang-tidy checks. More...
 
class  ClangTidyASTConsumerFactory
 
struct  ClangTidyError
 A detected error complete with information to display diagnostic and automatic fix. More...
 
class  GlobList
 Read-only set of strings represented as a list of positive and negative globs. More...
 
struct  ClangTidyStats
 Contains displayed and ignored diagnostic counters for a ClangTidy run. More...
 
struct  ProfileData
 Container for clang-tidy profiling data. More...
 
class  ClangTidyContext
 Every ClangTidyCheck reports errors through a DiagnosticsEngine provided by this context. More...
 
class  ClangTidyDiagnosticConsumer
 A diagnostic consumer that turns each Diagnostic into a SourceManager-independent ClangTidyError. More...
 
class  ClangTidyCheckFactories
 A collection of ClangTidyCheckFactory instances. More...
 
class  ClangTidyModule
 A clang-tidy module groups a number of ClangTidyChecks and gives them a prefixed name. More...
 
struct  FileFilter
 Contains a list of line ranges in a single file. More...
 
struct  ClangTidyGlobalOptions
 Global options. More...
 
struct  ClangTidyOptions
 Contains options for clang-tidy. More...
 
class  ClangTidyOptionsProvider
 Abstract interface for retrieving various ClangTidy options. More...
 
class  DefaultOptionsProvider
 Implementation of the ClangTidyOptionsProvider interface, which returns the same options for all files. More...
 
class  ConfigOptionsProvider
 Implementation of ClangTidyOptions interface, which is used for '-config' command-line option. More...
 
class  FileOptionsProvider
 Implementation of the ClangTidyOptionsProvider interface, which tries to find a configuration file in the closest parent directory of each source file. More...
 
class  ClangTidyPluginAction
 The core clang tidy plugin action. More...
 

Typedefs

typedef std::vector< std::pair
< std::string, bool > > 
CheckersList
 
typedef llvm::Registry
< ClangTidyModule
ClangTidyModuleRegistry
 

Functions

static
ClangTidyModuleRegistry::Add
< bugprone::BugproneModule
X ("bugprone-module","Adds checks for bugprone code constructs.")
 
static
ClangTidyModuleRegistry::Add
< cert::CERTModule
X ("cert-module","Adds lint checks corresponding to CERT secure coding guidelines.")
 
static void setStaticAnalyzerCheckerOpts (const ClangTidyOptions &Opts, AnalyzerOptionsRef AnalyzerOptions)
 
static CheckersList getCheckersControlList (ClangTidyContext &Context)
 
std::vector< std::string > getCheckNames (const ClangTidyOptions &Options)
 Fills the list of check names that are enabled when the provided filters are applied. More...
 
ClangTidyOptions::OptionMap getCheckOptions (const ClangTidyOptions &Options)
 Returns the effective check-specific options. More...
 
void runClangTidy (clang::tidy::ClangTidyContext &Context, const CompilationDatabase &Compilations, ArrayRef< std::string > InputFiles, ProfileData *Profile)
 
void handleErrors (ClangTidyContext &Context, bool Fix, unsigned &WarningsAsErrorsCount)
 Displays the found Errors to the users. More...
 
void exportReplacements (const llvm::StringRef MainFilePath, const std::vector< ClangTidyError > &Errors, raw_ostream &OS)
 
void runClangTidy (clang::tidy::ClangTidyContext &Context, const tooling::CompilationDatabase &Compilations, ArrayRef< std::string > InputFiles, ProfileData *Profile=nullptr)
 Run a set of clang-tidy checks on a set of files. More...
 
void exportReplacements (StringRef MainFilePath, const std::vector< ClangTidyError > &Errors, raw_ostream &OS)
 Serializes replacements into YAML and writes them to the specified output stream. More...
 
template<typename T >
static void mergeVectors (Optional< T > &Dest, const Optional< T > &Src)
 
static void mergeCommaSeparatedLists (Optional< std::string > &Dest, const Optional< std::string > &Src)
 
template<typename T >
static void overrideValue (Optional< T > &Dest, const Optional< T > &Src)
 
std::error_code parseLineFilter (StringRef LineFilter, clang::tidy::ClangTidyGlobalOptions &Options)
 Parses -line-filter option and stores it to the Options. More...
 
llvm::ErrorOr< ClangTidyOptionsparseConfiguration (StringRef Config)
 
std::string configurationAsText (const ClangTidyOptions &Options)
 Serializes configuration to a YAML-encoded string. More...
 
std::error_code parseLineFilter (llvm::StringRef LineFilter, ClangTidyGlobalOptions &Options)
 Parses LineFilter from JSON and stores it to the Options. More...
 
llvm::ErrorOr< ClangTidyOptionsparseConfiguration (llvm::StringRef Config)
 Parses configuration from JSON and returns ClangTidyOptions or an error. More...
 
static
ClangTidyModuleRegistry::Add
< misc::MiscModule
X ("misc-module","Adds miscellaneous lint checks.")
 
static
ClangTidyModuleRegistry::Add
< mpi::MPIModule
X ("mpi-module","Adds MPI clang-tidy checks.")
 
static void printStats (const ClangTidyStats &Stats)
 
static void printProfileData (const ProfileData &Profile, llvm::raw_ostream &OS)
 
static std::unique_ptr
< ClangTidyOptionsProvider
createOptionsProvider ()
 
static int clangTidyMain (int argc, const char **argv)
 

Variables

volatile int AndroidModuleAnchorSource = 0
 
volatile int BoostModuleAnchorSource = 0
 
volatile int BugproneModuleAnchorSource = 0
 
volatile int CERTModuleAnchorSource = 0
 
volatile int CppCoreGuidelinesModuleAnchorSource = 0
 
volatile int GoogleModuleAnchorSource = 0
 
volatile int HICPPModuleAnchorSource = 0
 
volatile int LLVMModuleAnchorSource = 0
 
volatile int MiscModuleAnchorSource = 0
 
volatile int ModernizeModuleAnchorSource = 0
 
volatile int MPIModuleAnchorSource = 0
 
volatile int PerformanceModuleAnchorSource = 0
 
static int LLVM_ATTRIBUTE_UNUSED CERTModuleAnchorDestination
 
static int LLVM_ATTRIBUTE_UNUSED LLVMModuleAnchorDestination
 
static int LLVM_ATTRIBUTE_UNUSED CppCoreGuidelinesModuleAnchorDestination
 
static int LLVM_ATTRIBUTE_UNUSED GoogleModuleAnchorDestination
 
static int LLVM_ATTRIBUTE_UNUSED MiscModuleAnchorDestination
 
static int LLVM_ATTRIBUTE_UNUSED ModernizeModuleAnchorDestination
 
static int LLVM_ATTRIBUTE_UNUSED MPIModuleAnchorDestination
 
static int LLVM_ATTRIBUTE_UNUSED PerformanceModuleAnchorDestination
 
volatile int ReadabilityModuleAnchorSource = 0
 
static int LLVM_ATTRIBUTE_UNUSED ReadabilityModuleAnchorDestination
 
static int LLVM_ATTRIBUTE_UNUSED CERTModuleAnchorDestination
 
static int LLVM_ATTRIBUTE_UNUSED BoostModuleAnchorDestination
 
static int LLVM_ATTRIBUTE_UNUSED BugproneModuleAnchorDestination
 
static int LLVM_ATTRIBUTE_UNUSED LLVMModuleAnchorDestination
 
static int LLVM_ATTRIBUTE_UNUSED CppCoreGuidelinesModuleAnchorDestination
 
static int LLVM_ATTRIBUTE_UNUSED GoogleModuleAnchorDestination
 
static int LLVM_ATTRIBUTE_UNUSED AndroidModuleAnchorDestination
 
static int LLVM_ATTRIBUTE_UNUSED MiscModuleAnchorDestination
 
static int LLVM_ATTRIBUTE_UNUSED ModernizeModuleAnchorDestination
 
static int LLVM_ATTRIBUTE_UNUSED MPIModuleAnchorDestination
 
static int LLVM_ATTRIBUTE_UNUSED PerformanceModuleAnchorDestination
 
static int LLVM_ATTRIBUTE_UNUSED ReadabilityModuleAnchorDestination
 
static int LLVM_ATTRIBUTE_UNUSED HICPPModuleAnchorDestination
 

Typedef Documentation

typedef std::vector<std::pair<std::string, bool> > clang::tidy::CheckersList

Definition at line 303 of file ClangTidy.cpp.

Definition at line 19 of file ClangTidyModuleRegistry.h.

Function Documentation

static int clang::tidy::clangTidyMain ( int  argc,
const char **  argv 
)
static
std::string clang::tidy::configurationAsText ( const ClangTidyOptions Options)

Serializes configuration to a YAML-encoded string.

Definition at line 328 of file ClangTidyOptions.cpp.

static std::unique_ptr<ClangTidyOptionsProvider> clang::tidy::createOptionsProvider ( )
static

Definition at line 164 of file ClangTidyMain.cpp.

void clang::tidy::exportReplacements ( StringRef  MainFilePath,
const std::vector< ClangTidyError > &  Errors,
raw_ostream &  OS 
)

Serializes replacements into YAML and writes them to the specified output stream.

void clang::tidy::exportReplacements ( const llvm::StringRef  MainFilePath,
const std::vector< ClangTidyError > &  Errors,
raw_ostream &  OS 
)

Definition at line 573 of file ClangTidy.cpp.

static CheckersList clang::tidy::getCheckersControlList ( ClangTidyContext &  Context)
static
std::vector< std::string > clang::tidy::getCheckNames ( const ClangTidyOptions &  Options)

Fills the list of check names that are enabled when the provided filters are applied.

Definition at line 459 of file ClangTidy.cpp.

References Context, and clang::tidy::ClangTidyASTConsumerFactory::getCheckNames().

ClangTidyOptions::OptionMap clang::tidy::getCheckOptions ( const ClangTidyOptions &  Options)

Returns the effective check-specific options.

The method configures ClangTidy with the specified Options and collects effective options from all created checks. The returned set of options includes default check-specific options for all keys not overridden by Options.

Definition at line 467 of file ClangTidy.cpp.

References Context, and clang::tidy::ClangTidyASTConsumerFactory::getCheckOptions().

void clang::tidy::handleErrors ( ClangTidyContext &  Context,
bool  Fix,
unsigned &  WarningsAsErrorsCount 
)

Displays the found Errors to the users.

If Fix is true, Errors containing fixes are automatically applied and reformatted. If no clang-format configuration file is found, the given FormatStyle is used.

Definition at line 548 of file ClangTidy.cpp.

References clang::tidy::ClangTidyContext::getErrors().

static void clang::tidy::mergeCommaSeparatedLists ( Optional< std::string > &  Dest,
const Optional< std::string > &  Src 
)
static

Definition at line 130 of file ClangTidyOptions.cpp.

Referenced by clang::tidy::ClangTidyOptions::mergeWith().

template<typename T >
static void clang::tidy::mergeVectors ( Optional< T > &  Dest,
const Optional< T > &  Src 
)
static

Definition at line 121 of file ClangTidyOptions.cpp.

Referenced by clang::tidy::ClangTidyOptions::mergeWith().

template<typename T >
static void clang::tidy::overrideValue ( Optional< T > &  Dest,
const Optional< T > &  Src 
)
static

Definition at line 137 of file ClangTidyOptions.cpp.

Referenced by clang::tidy::ClangTidyOptions::mergeWith().

llvm::ErrorOr<ClangTidyOptions> clang::tidy::parseConfiguration ( llvm::StringRef  Config)

Parses configuration from JSON and returns ClangTidyOptions or an error.

llvm::ErrorOr<ClangTidyOptions> clang::tidy::parseConfiguration ( StringRef  Config)
std::error_code clang::tidy::parseLineFilter ( llvm::StringRef  LineFilter,
ClangTidyGlobalOptions &  Options 
)

Parses LineFilter from JSON and stores it to the Options.

std::error_code clang::tidy::parseLineFilter ( StringRef  LineFilter,
clang::tidy::ClangTidyGlobalOptions Options 
)

Parses -line-filter option and stores it to the Options.

Definition at line 312 of file ClangTidyOptions.cpp.

References clang::tidy::ClangTidyGlobalOptions::LineFilter.

static void clang::tidy::printProfileData ( const ProfileData &  Profile,
llvm::raw_ostream &  OS 
)
static

Definition at line 125 of file ClangTidyMain.cpp.

static void clang::tidy::printStats ( const ClangTidyStats &  Stats)
static

Definition at line 97 of file ClangTidyMain.cpp.

void clang::tidy::runClangTidy ( clang::tidy::ClangTidyContext Context,
const tooling::CompilationDatabase &  Compilations,
ArrayRef< std::string >  InputFiles,
ProfileData *  Profile = nullptr 
)

Run a set of clang-tidy checks on a set of files.

Parameters
Profileif provided, it enables check profile collection in MatchFinder, and will contain the result of the profile.
void clang::tidy::runClangTidy ( clang::tidy::ClangTidyContext Context,
const CompilationDatabase &  Compilations,
ArrayRef< std::string >  InputFiles,
ProfileData *  Profile 
)
static void clang::tidy::setStaticAnalyzerCheckerOpts ( const ClangTidyOptions &  Opts,
AnalyzerOptionsRef  AnalyzerOptions 
)
static
static ClangTidyModuleRegistry::Add<mpi::MPIModule> clang::tidy::X ( "mpi-module"  ,
"Adds MPI clang-tidy checks."   
)
static
static ClangTidyModuleRegistry::Add<bugprone::BugproneModule> clang::tidy::X ( "bugprone-module"  ,
"Adds checks for bugprone code constructs."   
)
static
static ClangTidyModuleRegistry::Add<cert::CERTModule> clang::tidy::X ( "cert-module"  ,
"Adds lint checks corresponding to CERT secure coding guidelines."   
)
static
static ClangTidyModuleRegistry::Add<misc::MiscModule> clang::tidy::X ( "misc-module"  ,
"Adds miscellaneous lint checks."   
)
static

Variable Documentation

int LLVM_ATTRIBUTE_UNUSED clang::tidy::AndroidModuleAnchorDestination
static
Initial value:

Definition at line 370 of file ClangTidyMain.cpp.

volatile int clang::tidy::AndroidModuleAnchorSource = 0

Definition at line 43 of file AndroidTidyModule.cpp.

int LLVM_ATTRIBUTE_UNUSED clang::tidy::BoostModuleAnchorDestination
static
Initial value:

Definition at line 345 of file ClangTidyMain.cpp.

volatile int clang::tidy::BoostModuleAnchorSource = 0

Definition at line 35 of file BoostTidyModule.cpp.

int LLVM_ATTRIBUTE_UNUSED clang::tidy::BugproneModuleAnchorDestination
static
Initial value:

Definition at line 350 of file ClangTidyMain.cpp.

volatile int clang::tidy::BugproneModuleAnchorSource = 0

Definition at line 38 of file BugproneTidyModule.cpp.

int LLVM_ATTRIBUTE_UNUSED clang::tidy::CERTModuleAnchorDestination
static
Initial value:

Definition at line 83 of file ClangTidyPlugin.cpp.

int LLVM_ATTRIBUTE_UNUSED clang::tidy::CERTModuleAnchorDestination
static
Initial value:

Definition at line 340 of file ClangTidyMain.cpp.

volatile int clang::tidy::CERTModuleAnchorSource = 0

Definition at line 87 of file CERTTidyModule.cpp.

int LLVM_ATTRIBUTE_UNUSED clang::tidy::CppCoreGuidelinesModuleAnchorDestination
static
Initial value:

Definition at line 93 of file ClangTidyPlugin.cpp.

int LLVM_ATTRIBUTE_UNUSED clang::tidy::CppCoreGuidelinesModuleAnchorDestination
static
Initial value:

Definition at line 360 of file ClangTidyMain.cpp.

volatile int clang::tidy::CppCoreGuidelinesModuleAnchorSource = 0

Definition at line 76 of file CppCoreGuidelinesTidyModule.cpp.

int LLVM_ATTRIBUTE_UNUSED clang::tidy::GoogleModuleAnchorDestination
static
Initial value:

Definition at line 98 of file ClangTidyPlugin.cpp.

int LLVM_ATTRIBUTE_UNUSED clang::tidy::GoogleModuleAnchorDestination
static
Initial value:

Definition at line 365 of file ClangTidyMain.cpp.

volatile int clang::tidy::GoogleModuleAnchorSource = 0

Definition at line 96 of file GoogleTidyModule.cpp.

int LLVM_ATTRIBUTE_UNUSED clang::tidy::HICPPModuleAnchorDestination
static
Initial value:

Definition at line 400 of file ClangTidyMain.cpp.

volatile int clang::tidy::HICPPModuleAnchorSource = 0

Definition at line 72 of file HICPPTidyModule.cpp.

int LLVM_ATTRIBUTE_UNUSED clang::tidy::LLVMModuleAnchorDestination
static
Initial value:

Definition at line 88 of file ClangTidyPlugin.cpp.

int LLVM_ATTRIBUTE_UNUSED clang::tidy::LLVMModuleAnchorDestination
static
Initial value:

Definition at line 355 of file ClangTidyMain.cpp.

volatile int clang::tidy::LLVMModuleAnchorSource = 0

Definition at line 41 of file LLVMTidyModule.cpp.

int LLVM_ATTRIBUTE_UNUSED clang::tidy::MiscModuleAnchorDestination
static
Initial value:

Definition at line 103 of file ClangTidyPlugin.cpp.

int LLVM_ATTRIBUTE_UNUSED clang::tidy::MiscModuleAnchorDestination
static
Initial value:

Definition at line 375 of file ClangTidyMain.cpp.

volatile int clang::tidy::MiscModuleAnchorSource = 0

Definition at line 160 of file MiscTidyModule.cpp.

int LLVM_ATTRIBUTE_UNUSED clang::tidy::ModernizeModuleAnchorDestination
static
Initial value:

Definition at line 108 of file ClangTidyPlugin.cpp.

int LLVM_ATTRIBUTE_UNUSED clang::tidy::ModernizeModuleAnchorDestination
static
Initial value:

Definition at line 380 of file ClangTidyMain.cpp.

volatile int clang::tidy::ModernizeModuleAnchorSource = 0

Definition at line 110 of file ModernizeTidyModule.cpp.

int LLVM_ATTRIBUTE_UNUSED clang::tidy::MPIModuleAnchorDestination
static
Initial value:
=
volatile int MPIModuleAnchorSource

Definition at line 113 of file ClangTidyPlugin.cpp.

int LLVM_ATTRIBUTE_UNUSED clang::tidy::MPIModuleAnchorDestination
static
Initial value:
=
volatile int MPIModuleAnchorSource

Definition at line 385 of file ClangTidyMain.cpp.

volatile int clang::tidy::MPIModuleAnchorSource = 0

Definition at line 36 of file MPITidyModule.cpp.

int LLVM_ATTRIBUTE_UNUSED clang::tidy::PerformanceModuleAnchorDestination
static
Initial value:

Definition at line 118 of file ClangTidyPlugin.cpp.

int LLVM_ATTRIBUTE_UNUSED clang::tidy::PerformanceModuleAnchorDestination
static
Initial value:

Definition at line 390 of file ClangTidyMain.cpp.

volatile int clang::tidy::PerformanceModuleAnchorSource = 0

Definition at line 56 of file PerformanceTidyModule.cpp.

int LLVM_ATTRIBUTE_UNUSED clang::tidy::ReadabilityModuleAnchorDestination
static
Initial value:

Definition at line 123 of file ClangTidyPlugin.cpp.

int LLVM_ATTRIBUTE_UNUSED clang::tidy::ReadabilityModuleAnchorDestination
static
Initial value:

Definition at line 395 of file ClangTidyMain.cpp.

volatile int clang::tidy::ReadabilityModuleAnchorSource = 0

Definition at line 104 of file ReadabilityTidyModule.cpp.