#include <lru_cache.hpp>
Public Types | |
typedef std::map< KeyT, std::pair< CacheItemT, typename KeyIndex::iterator > > | Cache |
typedef Cache::iterator | CacheIterator |
typedef std::list< KeyT > | KeyIndex |
typedef KeyIndex::iterator | KeyIndexIterator |
Public Member Functions | |
bool | evict (int item_count=1) |
CacheItemT & | get (const KeyT &k) |
bool | hasKey (const KeyT &k) |
bool | insert (const KeyT &key, const CacheItemT &value) |
LRUCache (size_t c) | |
void | setCapacity (size_t capacity) |
size_t | sizeOf (const CacheItemT &value) |
CacheItemT & | tailItem () |
void | touch (const KeyT &key) |
Public Attributes | |
Cache | cache_ |
size_t | capacity_ |
KeyIndex | key_index_ |
size_t | size_ |
Definition at line 27 of file lru_cache.hpp.
typedef std::map<KeyT, std::pair<CacheItemT, typename KeyIndex::iterator> > LRUCache< KeyT, CacheItemT >::Cache |
Definition at line 34 of file lru_cache.hpp.
typedef Cache::iterator LRUCache< KeyT, CacheItemT >::CacheIterator |
Definition at line 35 of file lru_cache.hpp.
typedef std::list<KeyT> LRUCache< KeyT, CacheItemT >::KeyIndex |
Definition at line 31 of file lru_cache.hpp.
typedef KeyIndex::iterator LRUCache< KeyT, CacheItemT >::KeyIndexIterator |
Definition at line 32 of file lru_cache.hpp.
LRUCache< KeyT, CacheItemT >::LRUCache | ( | size_t | c | ) | [inline] |
Definition at line 37 of file lru_cache.hpp.
bool LRUCache< KeyT, CacheItemT >::evict | ( | int | item_count = 1 | ) | [inline] |
Definition at line 145 of file lru_cache.hpp.
CacheItemT& LRUCache< KeyT, CacheItemT >::get | ( | const KeyT & | k | ) | [inline] |
Definition at line 50 of file lru_cache.hpp.
bool LRUCache< KeyT, CacheItemT >::hasKey | ( | const KeyT & | k | ) | [inline] |
Definition at line 44 of file lru_cache.hpp.
bool LRUCache< KeyT, CacheItemT >::insert | ( | const KeyT & | key, |
const CacheItemT & | value | ||
) | [inline] |
Definition at line 76 of file lru_cache.hpp.
void LRUCache< KeyT, CacheItemT >::setCapacity | ( | size_t | capacity | ) | [inline] |
Definition at line 125 of file lru_cache.hpp.
size_t LRUCache< KeyT, CacheItemT >::sizeOf | ( | const CacheItemT & | value | ) | [inline] |
Definition at line 138 of file lru_cache.hpp.
CacheItemT& LRUCache< KeyT, CacheItemT >::tailItem | ( | ) | [inline] |
Definition at line 131 of file lru_cache.hpp.
void LRUCache< KeyT, CacheItemT >::touch | ( | const KeyT & | key | ) | [inline] |
Definition at line 64 of file lru_cache.hpp.
Definition at line 175 of file lru_cache.hpp.
Definition at line 166 of file lru_cache.hpp.
KeyIndex LRUCache< KeyT, CacheItemT >::key_index_ |
Definition at line 172 of file lru_cache.hpp.
Definition at line 169 of file lru_cache.hpp.