lib/Lru.js
function Lru(options) {
	if (options === undefined) {
		options = {}
	}

	this.size = 0;
	this.maxSize = options.maxSize;
	this.delCallback = options.delCallback;
	this.hashEnabled = options.hashEnabled === undefined ? true : options.hashEnabled;

	// Add to head
	this.head = null;
	// Remove from tail
	this.tail = null;

	this.hash = {};
}
function Lru(options) {
	if (options === undefined) {
		options = {}
	}

	this.size = 0;
	this.maxSize = options.maxSize;
	this.delCallback = options.delCallback;
	this.hashEnabled = options.hashEnabled === undefined ? true : options.hashEnabled;

	// Add to head
	this.head = null;
	// Remove from tail
	this.tail = null;

	this.hash = {};
}
LRU (Least Recently Used)

Adds keys to a set, calls del when an entry needs to be removed.

@param {{maxSize, delCallback, hashEnabled}} options
@constructor