Socket
Socket
Sign inDemoInstall

tiny-lru

Package Overview
Dependencies
0
Maintainers
1
Versions
97
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    tiny-lru

Tiny LRU cache for Client or Server


Version published
Weekly downloads
1M
decreased by-19.36%
Maintainers
1
Install size
13.3 kB
Created
Weekly downloads
 

Changelog

Source

1.3.1

19 November 2016

  • Adding update() to receive state from onchange() 05ffd08

Readme

Source

Tiny LRU

Least Recently Used cache for Client or Server.

build status

const cache = lru(500);

Lodash provides a memoize function with a cache that can be swapped out as long as it implements the right interface. See the lodash docs for more on memoize.

Example
_.memoize.Cache = lru().constructor;
const memoized = _.memoize(myFunc);
memoized.cache.max = 10;

evict

Method

Evicts the least recently used item from cache

return {Object} LRU instance

Example

cache.evict();

first

Property

Item in "first" or "top" position

Example

const cache = lru();

cache.first; // null - it's a new cache!

get

Method

Gets cached item and moves it to the front

param  {String} key Item key
return {Mixed}      Undefined or Item value

Example

const item = cache.get("myKey");

items

Property

Hash of cache items

Example

const cache = lru();

cache.items; // {}

max

Property

Max items to hold in cache (1000)

Example

const cache = lru(500);

cache.max; // 500

notify

Property

Executes onchange(eventName, serializedCache) on the next tick when the cache changes

Example

const cache = lru();

cache.notify = true;
cache.onchange = (event, serializedCache) => {
	console.log(event, serializedCache);
};

onchange

Method

Accepts eventName & serializedCache arguments

Example

const cache = lru();

cache.notify = true;
cache.onchange = (event, serializedCache) => {
	console.log(event, serializedCache);
};

last

Property

Item in "last" or "bottom" position

Example

const cache = lru();

cache.last; // null - it's a new cache!

length

Property

Number of items in cache

Example

const cache = lru();

cache.length; // 0 - it's a new cache!

remove

Method

Removes item from cache

param  {String} key Item key
return {Object}     Item

Example

const staleItem = cache.remove("myKey");

set

Method

Sets item in cache as first

param  {String} key   Item key
param  {Mixed}  value Item value
return {Object}       LRU instance

Example

cache.set("myKey", {prop: true});

License

Copyright (c) 2016 Jason Mulligan Licensed under the BSD-3 license.

Keywords

FAQs

Last updated on 19 Nov 2016

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc