Use base::STLSet* in place of std::set_* for simplicity.

BUG=254066

Review URL: https://codereview.chromium.org/255873003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@266842 0039d316-1c4b-4281-b951-d872f2087c98
parent 816f932c
...@@ -5,7 +5,6 @@ ...@@ -5,7 +5,6 @@
#ifndef EXTENSIONS_COMMON_PERMISSIONS_SET_DISJUNCTION_PERMISSION_H_ #ifndef EXTENSIONS_COMMON_PERMISSIONS_SET_DISJUNCTION_PERMISSION_H_
#define EXTENSIONS_COMMON_PERMISSIONS_SET_DISJUNCTION_PERMISSION_H_ #define EXTENSIONS_COMMON_PERMISSIONS_SET_DISJUNCTION_PERMISSION_H_
#include <algorithm>
#include <set> #include <set>
#include <string> #include <string>
...@@ -52,10 +51,8 @@ class SetDisjunctionPermission : public APIPermission { ...@@ -52,10 +51,8 @@ class SetDisjunctionPermission : public APIPermission {
CHECK(rhs->info() == info()); CHECK(rhs->info() == info());
const SetDisjunctionPermission* perm = const SetDisjunctionPermission* perm =
static_cast<const SetDisjunctionPermission*>(rhs); static_cast<const SetDisjunctionPermission*>(rhs);
return std::includes(data_set_.begin(), return base::STLIncludes<std::set<PermissionDataType> >(
data_set_.end(), data_set_, perm->data_set_);
perm->data_set_.begin(),
perm->data_set_.end());
} }
virtual bool Equal(const APIPermission* rhs) const OVERRIDE { virtual bool Equal(const APIPermission* rhs) const OVERRIDE {
...@@ -76,12 +73,8 @@ class SetDisjunctionPermission : public APIPermission { ...@@ -76,12 +73,8 @@ class SetDisjunctionPermission : public APIPermission {
const SetDisjunctionPermission* perm = const SetDisjunctionPermission* perm =
static_cast<const SetDisjunctionPermission*>(rhs); static_cast<const SetDisjunctionPermission*>(rhs);
scoped_ptr<SetDisjunctionPermission> result(new DerivedType(info())); scoped_ptr<SetDisjunctionPermission> result(new DerivedType(info()));
std::set_difference(data_set_.begin(), result->data_set_ = base::STLSetDifference<std::set<PermissionDataType> >(
data_set_.end(), data_set_, perm->data_set_);
perm->data_set_.begin(),
perm->data_set_.end(),
std::inserter<std::set<PermissionDataType> >(
result->data_set_, result->data_set_.begin()));
return result->data_set_.empty() ? NULL : result.release(); return result->data_set_.empty() ? NULL : result.release();
} }
...@@ -90,12 +83,8 @@ class SetDisjunctionPermission : public APIPermission { ...@@ -90,12 +83,8 @@ class SetDisjunctionPermission : public APIPermission {
const SetDisjunctionPermission* perm = const SetDisjunctionPermission* perm =
static_cast<const SetDisjunctionPermission*>(rhs); static_cast<const SetDisjunctionPermission*>(rhs);
scoped_ptr<SetDisjunctionPermission> result(new DerivedType(info())); scoped_ptr<SetDisjunctionPermission> result(new DerivedType(info()));
std::set_union(data_set_.begin(), result->data_set_ = base::STLSetUnion<std::set<PermissionDataType> >(
data_set_.end(), data_set_, perm->data_set_);
perm->data_set_.begin(),
perm->data_set_.end(),
std::inserter<std::set<PermissionDataType> >(
result->data_set_, result->data_set_.begin()));
return result.release(); return result.release();
} }
...@@ -104,12 +93,8 @@ class SetDisjunctionPermission : public APIPermission { ...@@ -104,12 +93,8 @@ class SetDisjunctionPermission : public APIPermission {
const SetDisjunctionPermission* perm = const SetDisjunctionPermission* perm =
static_cast<const SetDisjunctionPermission*>(rhs); static_cast<const SetDisjunctionPermission*>(rhs);
scoped_ptr<SetDisjunctionPermission> result(new DerivedType(info())); scoped_ptr<SetDisjunctionPermission> result(new DerivedType(info()));
std::set_intersection(data_set_.begin(), result->data_set_ = base::STLSetIntersection<std::set<PermissionDataType> >(
data_set_.end(), data_set_, perm->data_set_);
perm->data_set_.begin(),
perm->data_set_.end(),
std::inserter<std::set<PermissionDataType> >(
result->data_set_, result->data_set_.begin()));
return result->data_set_.empty() ? NULL : result.release(); return result->data_set_.empty() ? NULL : result.release();
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment