Options
All
  • Public
  • Public/Protected
  • All
Menu

Class ArcEvictionPolicy<Key, Value, ArgumentsBundle>

Adaptive Replacement Cache eviction policy.

Type parameters

  • Key

    Type of the key.

  • Value

    Type of the value.

  • ArgumentsBundle

    Type of the arguments bundle.

Hierarchy

  • ArcEvictionPolicy

Implements

Constructors

constructor

  • new ArcEvictionPolicy<Key, Value, ArgumentsBundle>(cacheMaxCapacity: number): ArcEvictionPolicy<Key, Value, ArgumentsBundle>
  • Type parameters

    • Key

    • Value

    • ArgumentsBundle

    Parameters

    • cacheMaxCapacity: number

      Cache maximum capacity.

    Returns ArcEvictionPolicy<Key, Value, ArgumentsBundle>

Methods

onClear

  • onClear(): void

onDelete

  • onDelete(entry: EvictableCacheEntry<Key, Value>): void
  • Hook executed before entry for key has been deleted.
    Policy is supposed to detach metadata from entry and cleanup it's internal data structures when this hook is called.

    Parameters

    • entry: EvictableCacheEntry<Key, Value>

      Entry that's being deleted.

    Returns void

onHit

  • Hook executed after entry for key was retrieved.
    Policy might decide that entry is no longer valid and return EntryValidity.NOT_VALID. In case it does so, policy is responsible to evict entry from cache before this method returns.

    Parameters

    • entry: EvictableCacheEntry<Key, Value>

      Entry hit on which was made.

    Returns EntryValidity

    Whether entry is still valid.

onMiss

  • onMiss(key: Key): void

onSet

  • onSet(entry: EvictableCacheEntry<Key, Value>): void
  • Hook executed after entry for key has been set.

    Parameters

    • entry: EvictableCacheEntry<Key, Value>

      Entry that was inserted.

    Returns void

onUpdate

  • onUpdate(): void

setDeleter

  • setDeleter(deleter: Deleter<Key, Value>): void