package
0.1.4
Repository: https://github.com/hyp3rd/hypercache.git
Documentation: pkg.go.dev

# Functions

NewARCAlgorithm creates a new in-memory cache with the given capacity and the Adaptive Replacement Cache (ARC) algorithm.
NewCAWOLFU returns a new CAWOLFU with the given capacity.
NewClockAlgorithm creates a new in-memory cache with the given capacity and the Clock algorithm.
NewEvictionAlgorithm creates a new eviction algorithm with the given capacity.
NewLFUAlgorithm creates a new LFUAlgorithm with the given capacity.
NewLRUAlgorithm creates a new LRU cache with the given capacity.
RegisterEvictionAlgorithm registers a new eviction algorithm with the given name.
RegisterEvictionAlgorithms registers a set of eviction algorithms.

# Variables

CAWOLFUNodePool is a pool of CAWOLFUNode values.
LRUCacheItemmPool is a pool of LRUCacheItemm values.

# Structs

ARC is an in-memory cache that uses the Adaptive Replacement Cache (ARC) algorithm to manage its items.
CAWOLFU is an eviction algorithm that uses the Cache-Aware Write-Optimized LFU (CAWOLFU) policy to select items for eviction.
CAWOLFULinkedList is a struct that represents a linked list.
CAWOLFUNode is a struct that represents a node in the linked list.
ClockAlgorithm is an in-memory cache with the Clock algorithm.
LFUAlgorithm is an eviction algorithm that uses the Least Frequently Used (LFU) policy to select items for eviction.
LRU represents a LRU cache.
Node is a node in the LFUAlgorithm.

# Interfaces

IAlgorithm is the interface that must be implemented by eviction algorithms.

# Type aliases

FrequencyHeap is a heap of Nodes.