Index: extensions/common/permissions/api_permission_set.cc |
diff --git a/extensions/common/permissions/api_permission_set.cc b/extensions/common/permissions/api_permission_set.cc |
index 82d2faafbdbaa6f06da74b72e7548e63d9c30f7c..74a3e6629145617b3eb9222e640bdadd91460dc3 100644 |
--- a/extensions/common/permissions/api_permission_set.cc |
+++ b/extensions/common/permissions/api_permission_set.cc |
@@ -254,6 +254,26 @@ bool PermissionIDSet::ContainsAllIDs( |
}); |
} |
+bool PermissionIDSet::ContainsAnyID( |
+ const std::set<APIPermission::ID>& permission_ids) const { |
+ for (APIPermission::ID id : permission_ids) { |
+ if (ContainsID(id)) |
+ return true; |
+ } |
+ return false; |
+} |
+ |
+PermissionIDSet PermissionIDSet::GetAllPermissionsWithID( |
+ APIPermission::ID permission_id) const { |
+ PermissionIDSet subset; |
+ auto it = permissions_.lower_bound(PermissionID(permission_id)); |
+ while (it != permissions_.end() && it->id() == permission_id) { |
+ subset.permissions_.insert(*it); |
+ ++it; |
+ } |
+ return subset; |
+} |
+ |
PermissionIDSet PermissionIDSet::GetAllPermissionsWithIDs( |
const std::set<APIPermission::ID>& permission_ids) const { |
PermissionIDSet subset; |