Now that we have C++11, turn simple functors into lambdas and remove a ton of boilerplate.
No intended functionality change.
llvm-svn: 202588
diff --git a/llvm/lib/Support/CommandLine.cpp b/llvm/lib/Support/CommandLine.cpp
index 9e80726..e94206e 100644
--- a/llvm/lib/Support/CommandLine.cpp
+++ b/llvm/lib/Support/CommandLine.cpp
@@ -125,20 +125,12 @@
// Initialise the general option category.
OptionCategory llvm::cl::GeneralCategory("General options");
-struct HasName {
- HasName(StringRef Name) : Name(Name) {}
- bool operator()(const OptionCategory *Category) const {
- return Name == Category->getName();
- }
- StringRef Name;
-};
-
-void OptionCategory::registerCategory()
-{
+void OptionCategory::registerCategory() {
assert(std::count_if(RegisteredOptionCategories->begin(),
RegisteredOptionCategories->end(),
- HasName(getName())) == 0 &&
- "Duplicate option categories");
+ [this](const OptionCategory *Category) {
+ return getName() == Category->getName();
+ }) == 0 && "Duplicate option categories");
RegisteredOptionCategories->insert(this);
}