Skip to main content
Module

x/velo/src/caches/slru.ts>SLRU

Performant Cache implementations for Deno. Supports LRU, LFU, ARC and other caching policies.
Go to Latest
class SLRU
extends BaseCache<V>
import { SLRU } from "https://deno.land/x/velo@0.1.5/src/caches/slru.ts";

Segmented LRU Cache

Constructors

new
SLRU(options: SLRUOptions)

Type Parameters

optional
V = any

Properties

private
probationaryCache: number
private
probationaryPartition: SLRUList<V>
private
protectedCache: number
private
protectedPartition: SLRUList<V>
readonly
keys

List of keys in the cache

readonly
PropationaryPartition
readonly
ProtectedPartition
readonly
size

Current number of entries in the cache

readonly
values

List of values in the cache

Methods

Reset the cache

forEach(callback: (item: { value: V; key: Key; }, index: number) => void)

Array like forEach, iterating over all entries in the cache

get(key: Key)

Gets the value for a given key

has(key: Key)

Checks if a given key is in the cache

peek(key: Key)

Get the value to a key without manipulating the cache

remove(key: Key)

Removes the cache entry with given key

set(
key: Key,
value: V,
ttl?: number,
)

Inserts a new entry into the cache