Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(60)

Unified Diff: ios/chrome/browser/snapshots/lru_cache.mm

Issue 1763273002: base: Remove OwningMRUCache in favor of scoped_ptrs in MRUCache (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase + fix Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ios/chrome/browser/snapshots/lru_cache.mm
diff --git a/ios/chrome/browser/snapshots/lru_cache.mm b/ios/chrome/browser/snapshots/lru_cache.mm
index 3b70f65c75b7e62242142c204c4dafc20116dd40..d9a35c63615eb962277d5fcf1a6e984670b20fb0 100644
--- a/ios/chrome/browser/snapshots/lru_cache.mm
+++ b/ios/chrome/browser/snapshots/lru_cache.mm
@@ -14,21 +14,6 @@
namespace {
-class MRUCacheNSObjectDelegate {
- public:
- MRUCacheNSObjectDelegate(id<LRUCacheDelegate> delegate)
- : delegate_(delegate) {}
-
- MRUCacheNSObjectDelegate(const MRUCacheNSObjectDelegate& other) = default;
-
- void operator()(const base::scoped_nsprotocol<id<NSObject>>& payload) const {
- [delegate_ lruCacheWillEvictObject:payload.get()];
- }
-
- private:
- id<LRUCacheDelegate> delegate_; // Weak.
-};
-
struct NSObjectEqualTo {
bool operator()(const base::scoped_nsprotocol<id<NSObject>>& obj1,
const base::scoped_nsprotocol<id<NSObject>>& obj2) const {
@@ -52,20 +37,17 @@ class NSObjectMRUCache
: public base::MRUCacheBase<base::scoped_nsprotocol<id<NSObject>>,
base::scoped_nsprotocol<id<NSObject>>,
NSObjectHash,
- MRUCacheNSObjectDelegate,
MRUCacheNSObjectHashMap> {
private:
typedef base::MRUCacheBase<base::scoped_nsprotocol<id<NSObject>>,
base::scoped_nsprotocol<id<NSObject>>,
NSObjectHash,
- MRUCacheNSObjectDelegate,
MRUCacheNSObjectHashMap>
ParentType;
public:
- NSObjectMRUCache(typename ParentType::size_type max_size,
- const MRUCacheNSObjectDelegate& deletor)
- : ParentType(max_size, deletor) {}
+ explicit NSObjectMRUCache(typename ParentType::size_type max_size)
+ : ParentType(max_size) {}
private:
DISALLOW_COPY_AND_ASSIGN(NSObjectMRUCache);
@@ -73,14 +55,10 @@ class NSObjectMRUCache
} // namespace
-@interface LRUCache ()<LRUCacheDelegate>
-@end
-
@implementation LRUCache {
scoped_ptr<NSObjectMRUCache> _cache;
}
-@synthesize delegate = _delegate;
@synthesize maxCacheSize = _maxCacheSize;
- (instancetype)init {
@@ -92,8 +70,7 @@ class NSObjectMRUCache
self = [super init];
if (self) {
_maxCacheSize = maxCacheSize;
- MRUCacheNSObjectDelegate cacheDelegateDeletor(self);
- _cache.reset(new NSObjectMRUCache(self.maxCacheSize, cacheDelegateDeletor));
+ _cache.reset(new NSObjectMRUCache(self.maxCacheSize));
}
return self;
}
@@ -131,10 +108,4 @@ class NSObjectMRUCache
return _cache->empty();
}
-#pragma mark - Private
-
-- (void)lruCacheWillEvictObject:(id<NSObject>)obj {
- [self.delegate lruCacheWillEvictObject:obj];
-}
-
@end

Powered by Google App Engine
This is Rietveld 408576698