clang-tools 6.0.0

Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
clang::tidy::ClangTidyOptions Struct Reference

Contains options for clang-tidy. More...

`#include <ClangTidyOptions.h>`

Collaboration diagram for clang::tidy::ClangTidyOptions:
[legend]

## Public Types
typedef std::pair< std::string, std::string > | StringPair
typedef std::map< std::string, std::string > | OptionMap
typedef std::vector< std::string > | ArgList

## Public Member Functions
ClangTidyOptions | mergeWith (const ClangTidyOptions &Other) const
| Creates a new `ClangTidyOptions` instance combined from all fields of this instance overridden by the fields of `Other` that have a value. More...

## Static Public Member Functions
static ClangTidyOptions | getDefaults ()
| These options are used for all settings that haven't been overridden by the `OptionsProvider`. More...

## Public Attributes
llvm::Optional< std::string > | Checks
| Checks filter. More...
llvm::Optional< std::string > | WarningsAsErrors
| WarningsAsErrors filter. More...
llvm::Optional< std::string > | HeaderFilterRegex
| Output warnings from headers matching this filter. More...
llvm::Optional< bool > | SystemHeaders
| Output warnings from system headers matching `HeaderFilterRegex`. More...
llvm::Optional< bool > | AnalyzeTemporaryDtors
| Turns on temporary destructor-based analysis. More...
llvm::Optional< std::string > | FormatStyle
| Format code around applied fixes with clang-format using this style. More...
llvm::Optional< std::string > | User
| Specifies the name or e-mail of the user running clang-tidy. More...
OptionMap | CheckOptions
| Key-value mapping used to store check-specific options. More...
llvm::Optional< ArgList > | ExtraArgs
| Add extra compilation arguments to the end of the list. More...
llvm::Optional< ArgList > | ExtraArgsBefore
| Add extra compilation arguments to the start of the list. More...

## Detailed Description

Contains options for clang-tidy.

These options may be read from configuration files, and may be different for different translation units.

Definition at line 49 of file ClangTidyOptions.h.

## Member Typedef Documentation

## ◆ ArgList

typedef std::vector<std::string> clang::tidy::ClangTidyOptions::ArgList

Definition at line 104 of file ClangTidyOptions.h.

## ◆ OptionMap

typedef std::map<std::string, std::string> clang::tidy::ClangTidyOptions::OptionMap

Definition at line 99 of file ClangTidyOptions.h.

## ◆ StringPair

typedef std::pair<std::string, std::string> clang::tidy::ClangTidyOptions::StringPair

Definition at line 98 of file ClangTidyOptions.h.

## Member Function Documentation

## ◆ getDefaults()

ClangTidyOptions clang::tidy::ClangTidyOptions::getDefaults | ( |  | ) |
| static

These options are used for all settings that haven't been overridden by the `OptionsProvider`.

Allow no checks and no headers by default. This method initializes check-specific options by calling `ClangTidyModule::getModuleOptions()` of each registered `ClangTidyModule`.

Definition at line 104 of file ClangTidyOptions.cpp.

References AnalyzeTemporaryDtors, Checks, FormatStyle, HeaderFilterRegex, mergeWith(), SystemHeaders, User, and WarningsAsErrors.

Referenced by clang::tidy::ClangTidyContext::getOptionsForFile().

## ◆ mergeWith()

ClangTidyOptions clang::tidy::ClangTidyOptions::mergeWith | ( | const ClangTidyOptions & | Other | ) | const

Creates a new `ClangTidyOptions` instance combined from all fields of this instance overridden by the fields of `Other` that have a value.

Definition at line 143 of file ClangTidyOptions.cpp.

References AnalyzeTemporaryDtors, CheckOptions, Checks, ExtraArgs, ExtraArgsBefore, FormatStyle, HeaderFilterRegex, clang::tidy::mergeCommaSeparatedLists(), clang::tidy::mergeVectors(), clang::tidy::overrideValue(), SystemHeaders, User, and WarningsAsErrors.

Referenced by getDefaults(), clang::tidy::ClangTidyOptionsProvider::getOptions(), and clang::tidy::ClangTidyContext::getOptionsForFile().

## Member Data Documentation

## ◆ AnalyzeTemporaryDtors

llvm::Optional<bool> clang::tidy::ClangTidyOptions::AnalyzeTemporaryDtors

Turns on temporary destructor-based analysis.

Definition at line 76 of file ClangTidyOptions.h.

Referenced by clang::tidy::clangTidyMain(), getDefaults(), llvm::yaml::MappingTraits< ClangTidyOptions >::mapping(), and mergeWith().

## ◆ CheckOptions

OptionMap clang::tidy::ClangTidyOptions::CheckOptions

Key-value mapping used to store check-specific options.

Definition at line 102 of file ClangTidyOptions.h.

Referenced by clang::tidy::google::GoogleModule::getModuleOptions(), clang::tidy::modernize::ModernizeModule::getModuleOptions(), llvm::yaml::MappingTraits< ClangTidyOptions >::mapping(), mergeWith(), and clang::tidy::setStaticAnalyzerCheckerOpts().

## ◆ Checks

llvm::Optional<std::string> clang::tidy::ClangTidyOptions::Checks

Checks filter.

Definition at line 63 of file ClangTidyOptions.h.

Referenced by clang::tidy::clangTidyMain(), getDefaults(), llvm::yaml::MappingTraits< ClangTidyOptions >::mapping(), mergeWith(), clang::tidy::ClangTidyPluginAction::ParseArgs(), and clang::tidy::ClangTidyContext::setCurrentFile().

## ◆ ExtraArgs

llvm::Optional<ArgList> clang::tidy::ClangTidyOptions::ExtraArgs

Add extra compilation arguments to the end of the list.

Definition at line 107 of file ClangTidyOptions.h.

Referenced by llvm::yaml::MappingTraits< ClangTidyOptions >::mapping(), and mergeWith().

## ◆ ExtraArgsBefore

llvm::Optional<ArgList> clang::tidy::ClangTidyOptions::ExtraArgsBefore

Add extra compilation arguments to the start of the list.

Definition at line 110 of file ClangTidyOptions.h.

Referenced by llvm::yaml::MappingTraits< ClangTidyOptions >::mapping(), and mergeWith().

## ◆ FormatStyle

llvm::Optional<std::string> clang::tidy::ClangTidyOptions::FormatStyle

Format code around applied fixes with clang-format using this style.

Can be one of:

- 'none' - don't format code around applied fixes;
- 'llvm', 'google', 'mozilla' or other predefined clang-format style names;
- 'file' - use the .clang-format file in the closest parent directory of each source file;
- '{inline-formatting-style-in-yaml-format}'.

See clang-format documentation for more about configuring format style.

Definition at line 90 of file ClangTidyOptions.h.

Referenced by clang::tidy::clangTidyMain(), getDefaults(), llvm::yaml::MappingTraits< ClangTidyOptions >::mapping(), and mergeWith().

## ◆ HeaderFilterRegex

llvm::Optional<std::string> clang::tidy::ClangTidyOptions::HeaderFilterRegex

Output warnings from headers matching this filter.

Warnings from main files will always be displayed.

Definition at line 70 of file ClangTidyOptions.h.

Referenced by clang::tidy::clangTidyMain(), getDefaults(), clang::tidy::ClangTidyDiagnosticConsumer::HandleDiagnostic(), llvm::yaml::MappingTraits< ClangTidyOptions >::mapping(), and mergeWith().

## ◆ SystemHeaders

llvm::Optional<bool> clang::tidy::ClangTidyOptions::SystemHeaders

Output warnings from system headers matching `HeaderFilterRegex`.

Definition at line 73 of file ClangTidyOptions.h.

Referenced by clang::tidy::clangTidyMain(), getDefaults(), clang::tidy::ClangTidyDiagnosticConsumer::HandleDiagnostic(), and mergeWith().

## ◆ User

llvm::Optional<std::string> clang::tidy::ClangTidyOptions::User

Specifies the name or e-mail of the user running clang-tidy.

This option is used, for example, to place the correct user name in TODO() comments in the relevant check.

Definition at line 96 of file ClangTidyOptions.h.

Referenced by clang::tidy::clangTidyMain(), getDefaults(), llvm::yaml::MappingTraits< ClangTidyOptions >::mapping(), and mergeWith().

## ◆ WarningsAsErrors

llvm::Optional<std::string> clang::tidy::ClangTidyOptions::WarningsAsErrors

WarningsAsErrors filter.

Definition at line 66 of file ClangTidyOptions.h.

Referenced by clang::tidy::clangTidyMain(), getDefaults(), llvm::yaml::MappingTraits< ClangTidyOptions >::mapping(), mergeWith(), and clang::tidy::ClangTidyContext::setCurrentFile().

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

- ClangTidyOptions.h
- ClangTidyOptions.cpp