Skip to main content
Module

x/velo/src/caches/lru.ts>LRU

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

Least Recently Used Cache

Constructors

new
LRU(options: Options)

Type Parameters

optional
V = any

Properties

private
_keys: Array<Key | undefined>
private
_values: Array<V | undefined>
private
items: [key in Key]: number
private
pointers: PointerList
readonly
keys

List of keys in the cache

readonly
size

Current number of entries in the cache

readonly
values

List of values in the cache

Methods

Reset the cache

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

Array like forEach, iterating over all entries in the cache

get(key: Key): V | undefined

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