[PATCH] D84926: [clang-tidy][NFC] Use StringMap for ClangTidyCheckFactories::FacoryMap
Nathan James via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Jul 30 03:24:28 PDT 2020
njames93 updated this revision to Diff 281862.
njames93 added a comment.
Fix build errors
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D84926/new/
https://reviews.llvm.org/D84926
Files:
clang-tools-extra/clang-tidy/ClangTidy.cpp
clang-tools-extra/clang-tidy/ClangTidyModule.cpp
clang-tools-extra/clang-tidy/ClangTidyModule.h
Index: clang-tools-extra/clang-tidy/ClangTidyModule.h
===================================================================
--- clang-tools-extra/clang-tidy/ClangTidyModule.h
+++ clang-tools-extra/clang-tidy/ClangTidyModule.h
@@ -69,7 +69,7 @@
std::vector<std::unique_ptr<ClangTidyCheck>>
createChecks(ClangTidyContext *Context);
- typedef std::map<std::string, CheckFactory> FactoryMap;
+ typedef llvm::StringMap<CheckFactory> FactoryMap;
FactoryMap::const_iterator begin() const { return Factories.begin(); }
FactoryMap::const_iterator end() const { return Factories.end(); }
bool empty() const { return Factories.empty(); }
Index: clang-tools-extra/clang-tidy/ClangTidyModule.cpp
===================================================================
--- clang-tools-extra/clang-tidy/ClangTidyModule.cpp
+++ clang-tools-extra/clang-tidy/ClangTidyModule.cpp
@@ -18,15 +18,15 @@
void ClangTidyCheckFactories::registerCheckFactory(StringRef Name,
CheckFactory Factory) {
- Factories[std::string(Name)] = std::move(Factory);
+ Factories.insert_or_assign(Name, std::move(Factory));
}
std::vector<std::unique_ptr<ClangTidyCheck>>
ClangTidyCheckFactories::createChecks(ClangTidyContext *Context) {
std::vector<std::unique_ptr<ClangTidyCheck>> Checks;
for (const auto &Factory : Factories) {
- if (Context->isCheckEnabled(Factory.first))
- Checks.emplace_back(Factory.second(Factory.first, Context));
+ if (Context->isCheckEnabled(Factory.getKey()))
+ Checks.emplace_back(Factory.getValue()(Factory.getKey(), Context));
}
return Checks;
}
Index: clang-tools-extra/clang-tidy/ClangTidy.cpp
===================================================================
--- clang-tools-extra/clang-tidy/ClangTidy.cpp
+++ clang-tools-extra/clang-tidy/ClangTidy.cpp
@@ -450,8 +450,8 @@
std::vector<std::string> ClangTidyASTConsumerFactory::getCheckNames() {
std::vector<std::string> CheckNames;
for (const auto &CheckFactory : *CheckFactories) {
- if (Context.isCheckEnabled(CheckFactory.first))
- CheckNames.push_back(CheckFactory.first);
+ if (Context.isCheckEnabled(CheckFactory.getKey()))
+ CheckNames.emplace_back(CheckFactory.getKey());
}
#if CLANG_ENABLE_STATIC_ANALYZER
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D84926.281862.patch
Type: text/x-patch
Size: 2292 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20200730/39a59256/attachment-0001.bin>
More information about the cfe-commits
mailing list