Caches 0.1.0
LRU/LFU/FIFO Caches library
Loading...
Searching...
No Matches
Public Member Functions | List of all members
caches::NoCachePolicy< Key > Class Template Reference

Basic no caching policy class. More...

#include <cache_policy.hpp>

Inheritance diagram for caches::NoCachePolicy< Key >:
Inheritance graph
[legend]
Collaboration diagram for caches::NoCachePolicy< Key >:
Collaboration graph
[legend]

Public Member Functions

void Insert (const Key &key) override
 Handle element insertion in a cache.
 
void Touch (const Key &key) noexcept override
 Handle request to the key-element in a cache.
 
void Erase (const Key &key) noexcept override
 Handle element deletion from a cache.
 
const Key & ReplCandidate () const noexcept override
 Return a key of a replacement candidate.
 
virtual void Insert (const Key &key)=0
 Handle element insertion in a cache.
 
virtual void Touch (const Key &key)=0
 Handle request to the key-element in a cache.
 
virtual void Erase (const Key &key)=0
 Handle element deletion from a cache.
 
virtual const Key & ReplCandidate () const =0
 Return a key of a replacement candidate.
 

Detailed Description

template<typename Key>
class caches::NoCachePolicy< Key >

Basic no caching policy class.

Preserve any key provided. Erase procedure can get rid of any added keys without specific rules: a replacement candidate will be the first element in the underlying container. As unordered container can be used in the implementation there are no warranties that the first/last added key will be erased

Template Parameters
KeyType of a key a policy works with

Member Function Documentation

◆ Erase()

template<typename Key >
void caches::NoCachePolicy< Key >::Erase ( const Key &  key)
inlineoverridevirtualnoexcept

Handle element deletion from a cache.

Parameters
[in]keyKey that should be used by the policy

Implements caches::ICachePolicy< Key >.

◆ Insert()

template<typename Key >
void caches::NoCachePolicy< Key >::Insert ( const Key &  key)
inlineoverridevirtual

Handle element insertion in a cache.

Parameters
[in]keyKey that should be used by the policy

Implements caches::ICachePolicy< Key >.

◆ ReplCandidate()

template<typename Key >
const Key & caches::NoCachePolicy< Key >::ReplCandidate ( ) const
inlineoverridevirtualnoexcept

Return a key of a replacement candidate.

Returns
Replacement candidate according to selected policy

Implements caches::ICachePolicy< Key >.

◆ Touch()

template<typename Key >
void caches::NoCachePolicy< Key >::Touch ( const Key &  key)
inlineoverridevirtualnoexcept

Handle request to the key-element in a cache.

Parameters
key

Implements caches::ICachePolicy< Key >.


The documentation for this class was generated from the following file: