From 6e0cbc89471c210c59cd080901b1dfe656db117f Mon Sep 17 00:00:00 2001 From: Alexander Kornienko Date: Fri, 12 Sep 2014 08:53:36 +0000 Subject: Implemented clang-tidy-check-specific options. Summary: Each check can implement readOptions and storeOptions methods to read and store custom options. Each check's options are stored in a local namespace to avoid name collisions and provide some sort of context to the user. Reviewers: bkramer, klimek Reviewed By: klimek Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D5296 llvm-svn: 217661 --- clang-tools-extra/clang-tidy/ClangTidyModule.cpp | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) (limited to 'clang-tools-extra/clang-tidy/ClangTidyModule.cpp') diff --git a/clang-tools-extra/clang-tidy/ClangTidyModule.cpp b/clang-tools-extra/clang-tidy/ClangTidyModule.cpp index 1d1c0d1..f6e4daf 100644 --- a/clang-tools-extra/clang-tidy/ClangTidyModule.cpp +++ b/clang-tools-extra/clang-tidy/ClangTidyModule.cpp @@ -16,19 +16,18 @@ namespace clang { namespace tidy { -void ClangTidyCheckFactories::registerCheckFactory( - StringRef Name, std::function Factory) { +void ClangTidyCheckFactories::registerCheckFactory(StringRef Name, + CheckFactory Factory) { Factories[Name] = Factory; } void ClangTidyCheckFactories::createChecks( - GlobList &Filter, std::vector> &Checks) { + ClangTidyContext *Context, + std::vector> &Checks) { + GlobList &Filter = Context->getChecksFilter(); for (const auto &Factory : Factories) { - if (Filter.contains(Factory.first)) { - ClangTidyCheck *Check = Factory.second(); - Check->setName(Factory.first); - Checks.emplace_back(Check); - } + if (Filter.contains(Factory.first)) + Checks.emplace_back(Factory.second(Factory.first, Context)); } } -- cgit v1.1