JSPM

an-lru-cache

1.0.3
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 1
  • Score
    100M100P100Q87049F
  • License Apache-2.0

A simple LRU Cache, a Map that has a maximum number of entries and which discards the least recently used items first.

Package Exports

  • an-lru-cache

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (an-lru-cache) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

ES6 LRU Cache

A simple LRU Cache, a Map that has a maximum number of entries and which discards the least recently used items first.

To install

$ npm install an-lru-cache

Coverage Status Build Status

API

The API mirrors the builtin Map and WeakMap APIs but does not include iterators.

const { LruCache } = require('an-lru-cache')

const myCache = new LruCache()  // Default capacity is 100

function foo(key, value) {
  myCache.set(key, value)
  // ...
  return myCache.get(key)
}

function bar(key) {
  if (myCache.has(key)) {
    // ...
  }
  myCache.delete(key)
}

.set(key, value)

Associates value with key so that .get(key) returns value until a subsequent .set or .delete with the same key or eviction.

.get(key, fallbackValue=undefined)

Returns the value associated with key, or the fallbackValue if supplied.

Gets may return the fallbackValue even if there was a value associated with key if that entry was evicted to ensure that the number of entries did not exceed the maximum allowed.

.delete(key, fallbackValue=undefined)

Deletes any entry for the given key returning the previously associated value if present or fallbackValue otherwise.

.has(key)

True iff there is a value associated with key.