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
1.2M
decreased by-2.44%
Maintainers
1
Created
Weekly downloads
 

Changelog

Source

1.1.0

24 January 2016

  • Add has and delete methods so that it's compatible with lodash's memoize function #1
  • Updating to ES6 syntax & babel transpile, removing /docs as it will not be generated now f75b2eb
  • rebuild 5e09785
  • Add has and delete methods so that it implements the parts of the Map method interface that make it compatible with lodash's memoize method. Add corresponding docs and tests. 6fa548e

Readme

Source

Tiny LRU

Least Recently Used cache for Client or Server.

build status

var cache = lru(500);

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

var 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

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

items

Property

Hash of cache items

Example

var cache = lru();

cache.items; // {}

max

Property

Max items to hold in cache (1000)

Example

var cache = lru(500);

cache.max; // 500

last

Property

Item in "last" or "bottom" position

Example

var cache = lru();

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

length

Property

Number of items in cache

Example

var 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

var 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});

Lodash provides a memoize function with a cache that can be swapped out as long as it implements the right interface. Sample usage with lodash:

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

See the lodash docs for more on memoize.

License

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

Keywords

FAQs

Last updated on 24 Jan 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