forked from OSchip/llvm-project
[clang-tidy] Unify the way IncludeStyle and HeaderFileExtesions options are used
llvm-svn: 308605
This commit is contained in:
parent
d515291ffd
commit
b1c7432117
|
@ -23,7 +23,7 @@ ProBoundsConstantArrayIndexCheck::ProBoundsConstantArrayIndexCheck(
|
|||
StringRef Name, ClangTidyContext *Context)
|
||||
: ClangTidyCheck(Name, Context), GslHeader(Options.get("GslHeader", "")),
|
||||
IncludeStyle(utils::IncludeSorter::parseIncludeStyle(
|
||||
Options.get("IncludeStyle", "llvm"))) {}
|
||||
Options.getLocalOrGlobal("IncludeStyle", "llvm"))) {}
|
||||
|
||||
void ProBoundsConstantArrayIndexCheck::storeOptions(
|
||||
ClangTidyOptions::OptionMap &Opts) {
|
||||
|
|
|
@ -23,8 +23,8 @@ namespace readability {
|
|||
GlobalNamesInHeadersCheck::GlobalNamesInHeadersCheck(StringRef Name,
|
||||
ClangTidyContext *Context)
|
||||
: ClangTidyCheck(Name, Context),
|
||||
RawStringHeaderFileExtensions(
|
||||
Options.getLocalOrGlobal("HeaderFileExtensions", "h")) {
|
||||
RawStringHeaderFileExtensions(Options.getLocalOrGlobal(
|
||||
"HeaderFileExtensions", utils::defaultHeaderFileExtensions())) {
|
||||
if (!utils::parseHeaderFileExtensions(RawStringHeaderFileExtensions,
|
||||
HeaderFileExtensions, ',')) {
|
||||
llvm::errs() << "Invalid header file extension: "
|
||||
|
|
|
@ -22,8 +22,8 @@ namespace build {
|
|||
UnnamedNamespaceInHeaderCheck::UnnamedNamespaceInHeaderCheck(
|
||||
StringRef Name, ClangTidyContext *Context)
|
||||
: ClangTidyCheck(Name, Context),
|
||||
RawStringHeaderFileExtensions(
|
||||
Options.getLocalOrGlobal("HeaderFileExtensions", "h,hh,hpp,hxx")) {
|
||||
RawStringHeaderFileExtensions(Options.getLocalOrGlobal(
|
||||
"HeaderFileExtensions", utils::defaultHeaderFileExtensions())) {
|
||||
if (!utils::parseHeaderFileExtensions(RawStringHeaderFileExtensions,
|
||||
HeaderFileExtensions, ',')) {
|
||||
llvm::errs() << "Invalid header file extension: "
|
||||
|
|
|
@ -15,20 +15,7 @@ namespace llvm {
|
|||
|
||||
LLVMHeaderGuardCheck::LLVMHeaderGuardCheck(StringRef Name,
|
||||
ClangTidyContext *Context)
|
||||
: HeaderGuardCheck(Name, Context),
|
||||
RawStringHeaderFileExtensions(
|
||||
Options.getLocalOrGlobal("HeaderFileExtensions", ",h,hh,hpp,hxx")) {
|
||||
utils::parseHeaderFileExtensions(RawStringHeaderFileExtensions,
|
||||
HeaderFileExtensions, ',');
|
||||
}
|
||||
|
||||
void LLVMHeaderGuardCheck::storeOptions(ClangTidyOptions::OptionMap &Opts) {
|
||||
Options.store(Opts, "HeaderFileExtensions", RawStringHeaderFileExtensions);
|
||||
}
|
||||
|
||||
bool LLVMHeaderGuardCheck::shouldFixHeaderGuard(StringRef FileName) {
|
||||
return utils::isHeaderFileExtension(FileName, HeaderFileExtensions);
|
||||
}
|
||||
: HeaderGuardCheck(Name, Context) {}
|
||||
|
||||
std::string LLVMHeaderGuardCheck::getHeaderGuard(StringRef Filename,
|
||||
StringRef OldGuard) {
|
||||
|
|
|
@ -29,14 +29,8 @@ class LLVMHeaderGuardCheck : public utils::HeaderGuardCheck {
|
|||
public:
|
||||
LLVMHeaderGuardCheck(StringRef Name, ClangTidyContext *Context);
|
||||
|
||||
void storeOptions(ClangTidyOptions::OptionMap &Opts) override;
|
||||
bool shouldSuggestEndifComment(StringRef Filename) override { return false; }
|
||||
bool shouldFixHeaderGuard(StringRef Filename) override;
|
||||
std::string getHeaderGuard(StringRef Filename, StringRef OldGuard) override;
|
||||
|
||||
private:
|
||||
std::string RawStringHeaderFileExtensions;
|
||||
utils::HeaderFileExtensionsSet HeaderFileExtensions;
|
||||
};
|
||||
|
||||
} // namespace llvm
|
||||
|
|
|
@ -32,8 +32,8 @@ DefinitionsInHeadersCheck::DefinitionsInHeadersCheck(StringRef Name,
|
|||
ClangTidyContext *Context)
|
||||
: ClangTidyCheck(Name, Context),
|
||||
UseHeaderFileExtension(Options.get("UseHeaderFileExtension", true)),
|
||||
RawStringHeaderFileExtensions(
|
||||
Options.getLocalOrGlobal("HeaderFileExtensions", ",h,hh,hpp,hxx")) {
|
||||
RawStringHeaderFileExtensions(Options.getLocalOrGlobal(
|
||||
"HeaderFileExtensions", utils::defaultHeaderFileExtensions())) {
|
||||
if (!utils::parseHeaderFileExtensions(RawStringHeaderFileExtensions,
|
||||
HeaderFileExtensions, ',')) {
|
||||
// FIXME: Find a more suitable way to handle invalid configuration
|
||||
|
|
|
@ -25,7 +25,7 @@ MoveConstructorInitCheck::MoveConstructorInitCheck(StringRef Name,
|
|||
ClangTidyContext *Context)
|
||||
: ClangTidyCheck(Name, Context),
|
||||
IncludeStyle(utils::IncludeSorter::parseIncludeStyle(
|
||||
Options.get("IncludeStyle", "llvm"))) {}
|
||||
Options.getLocalOrGlobal("IncludeStyle", "llvm"))) {}
|
||||
|
||||
void MoveConstructorInitCheck::registerMatchers(MatchFinder *Finder) {
|
||||
// Only register the matchers for C++11; the functionality currently does not
|
||||
|
|
|
@ -46,7 +46,7 @@ MakeSmartPtrCheck::MakeSmartPtrCheck(StringRef Name, ClangTidyContext *Context,
|
|||
StringRef MakeSmartPtrFunctionName)
|
||||
: ClangTidyCheck(Name, Context),
|
||||
IncludeStyle(utils::IncludeSorter::parseIncludeStyle(
|
||||
Options.get("IncludeStyle", "llvm"))),
|
||||
Options.getLocalOrGlobal("IncludeStyle", "llvm"))),
|
||||
MakeSmartPtrFunctionHeader(
|
||||
Options.get("MakeSmartPtrFunctionHeader", StdMemoryHeader)),
|
||||
MakeSmartPtrFunctionName(
|
||||
|
|
|
@ -119,7 +119,7 @@ collectParamDecls(const CXXConstructorDecl *Ctor,
|
|||
PassByValueCheck::PassByValueCheck(StringRef Name, ClangTidyContext *Context)
|
||||
: ClangTidyCheck(Name, Context),
|
||||
IncludeStyle(utils::IncludeSorter::parseIncludeStyle(
|
||||
Options.get("IncludeStyle", "llvm"))),
|
||||
Options.getLocalOrGlobal("IncludeStyle", "llvm"))),
|
||||
ValuesOnly(Options.get("ValuesOnly", 0) != 0) {}
|
||||
|
||||
void PassByValueCheck::storeOptions(ClangTidyOptions::OptionMap &Opts) {
|
||||
|
|
|
@ -73,7 +73,7 @@ ReplaceAutoPtrCheck::ReplaceAutoPtrCheck(StringRef Name,
|
|||
ClangTidyContext *Context)
|
||||
: ClangTidyCheck(Name, Context),
|
||||
IncludeStyle(utils::IncludeSorter::parseIncludeStyle(
|
||||
Options.get("IncludeStyle", "llvm"))) {}
|
||||
Options.getLocalOrGlobal("IncludeStyle", "llvm"))) {}
|
||||
|
||||
void ReplaceAutoPtrCheck::storeOptions(ClangTidyOptions::OptionMap &Opts) {
|
||||
Options.store(Opts, "IncludeStyle",
|
||||
|
|
|
@ -25,7 +25,7 @@ ReplaceRandomShuffleCheck::ReplaceRandomShuffleCheck(StringRef Name,
|
|||
ClangTidyContext *Context)
|
||||
: ClangTidyCheck(Name, Context),
|
||||
IncludeStyle(utils::IncludeSorter::parseIncludeStyle(
|
||||
Options.get("IncludeStyle", "llvm"))) {}
|
||||
Options.getLocalOrGlobal("IncludeStyle", "llvm"))) {}
|
||||
|
||||
void ReplaceRandomShuffleCheck::registerMatchers(MatchFinder *Finder) {
|
||||
if (!getLangOpts().CPlusPlus11)
|
||||
|
|
|
@ -33,7 +33,7 @@ TypePromotionInMathFnCheck::TypePromotionInMathFnCheck(
|
|||
StringRef Name, ClangTidyContext *Context)
|
||||
: ClangTidyCheck(Name, Context),
|
||||
IncludeStyle(utils::IncludeSorter::parseIncludeStyle(
|
||||
Options.get("IncludeStyle", "llvm"))) {}
|
||||
Options.getLocalOrGlobal("IncludeStyle", "llvm"))) {}
|
||||
|
||||
void TypePromotionInMathFnCheck::registerPPCallbacks(
|
||||
CompilerInstance &Compiler) {
|
||||
|
|
|
@ -64,7 +64,7 @@ UnnecessaryValueParamCheck::UnnecessaryValueParamCheck(
|
|||
StringRef Name, ClangTidyContext *Context)
|
||||
: ClangTidyCheck(Name, Context),
|
||||
IncludeStyle(utils::IncludeSorter::parseIncludeStyle(
|
||||
Options.get("IncludeStyle", "llvm"))) {}
|
||||
Options.getLocalOrGlobal("IncludeStyle", "llvm"))) {}
|
||||
|
||||
void UnnecessaryValueParamCheck::registerMatchers(MatchFinder *Finder) {
|
||||
const auto ExpensiveValueParamDecl =
|
||||
|
|
|
@ -36,6 +36,10 @@ bool isSpellingLocInHeaderFile(
|
|||
SourceLocation Loc, SourceManager &SM,
|
||||
const HeaderFileExtensionsSet &HeaderFileExtensions);
|
||||
|
||||
/// \brief Returns recommended default value for the list of header file
|
||||
/// extensions.
|
||||
inline StringRef defaultHeaderFileExtensions() { return ",h,hh,hpp,hxx"; }
|
||||
|
||||
/// \brief Parses header file extensions from a semicolon-separated list.
|
||||
bool parseHeaderFileExtensions(StringRef AllHeaderFileExtensions,
|
||||
HeaderFileExtensionsSet &HeaderFileExtensions,
|
||||
|
|
|
@ -28,8 +28,8 @@ class HeaderGuardCheck : public ClangTidyCheck {
|
|||
public:
|
||||
HeaderGuardCheck(StringRef Name, ClangTidyContext *Context)
|
||||
: ClangTidyCheck(Name, Context),
|
||||
RawStringHeaderFileExtensions(
|
||||
Options.getLocalOrGlobal("HeaderFileExtensions", ",h,hh,hpp,hxx")) {
|
||||
RawStringHeaderFileExtensions(Options.getLocalOrGlobal(
|
||||
"HeaderFileExtensions", utils::defaultHeaderFileExtensions())) {
|
||||
utils::parseHeaderFileExtensions(RawStringHeaderFileExtensions,
|
||||
HeaderFileExtensions, ',');
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue