JSPM

  • Created
  • Published
  • Downloads 5034
  • Score
    100M100P100Q125713F
  • License MIT

Thin wrapper around lru-cache with extended functionality.

Package Exports

  • lru-cache-ext
  • lru-cache-ext/lib/index.js

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 (lru-cache-ext) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

lru-cache-ext

Build Status Test Coverage Dependabot Status Dependencies NPM Downloads Semantic-Release Gardener

Thin wrapper around lru-cache with extended functionality.

Install

Install with npm:

$ npm install --save lru-cache-ext

Usage

Please refer to lru-cache.

Additional Options

cacheNull

Type: boolean
Default: true

When set to other than true, the null value is not cached with memoize and memoizeSync.

Additional Functions

memoize(key: String, valueFn: function, ...args)

Only when the key is not present in cache (or has expired), valueFn is called and placed into cache.

The cached value is returned when it becomes available (important in the case where valueFn is async).

The cache is left empty if an error is thrown at any point in valueFn (even asynchronous).

Useful when multiple async operation need to access the same async information.

memoizeSync(key: String, valueFn: function, ...args)

Similar to "memoize", when key is not present (or has expired), valueFn is called and placed into the cache.

Cached value is returned from the function.

valueFn can be a synchronous or asynchronous function.

If valueFn is an asynchronous function and an error is thrown asynchronously, the cache is not invalidated.