<commit_before># LruMap

|-------:|:---------------------------------------------------------------------------------------------------------------------------------|
| Branch | Status                                                                                                                           |
| master | [![Test Status](https://travis-ci.org/doug65536/lrumap.svg?branch=master)](https://travis-ci.org/doug65536/lrumap?branch=master) |
| dev    | [![Test Status](https://travis-ci.org/doug65536/lrumap.svg?branch=dev)](https://travis-ci.org/doug65536/lrumap?branch=dev)       |
|-------:+:---------------------------------------------------------------------------------------------------------------------------------|

## Synopsis

A fast key/value pair storage container with O(1) access to
newest and oldest nodes, and O(n) iteration in forward or 
reverse order (LRU or MRU first).

Never does a linear search, maintains a linked list of nodes
for items, and uses an object for fast key lookup by property.

The key must be a string. If it is not a string, it will
be implicitly converted to a string.

No dependencies, only dev dependencies for included unit tests.

## Installing

`npm install ???`  *not published yet*

## Example:
```
var LruMap = require('lrumap');<commit_msg>Try to get travis links to look good<commit_after># LruMap

| Branch | Status                                                                                                                           |
|-------:|:---------------------------------------------------------------------------------------------------------------------------------|
| master | [![Test Status](https://travis-ci.org/doug65536/lrumap.svg?branch=master)](https://travis-ci.org/doug65536/lrumap?branch=master) |
| dev    | [![Test Status](https://travis-ci.org/doug65536/lrumap.svg?branch=dev)](https://travis-ci.org/doug65536/lrumap?branch=dev)       |

## Synopsis

A fast key/value pair storage container with O(1) access to
newest and oldest nodes, and O(n) iteration in forward or 
reverse order (LRU or MRU first).

Never does a linear search, maintains a linked list of nodes
for items, and uses an object for fast key lookup by property.

The key must be a string. If it is not a string, it will
be implicitly converted to a string.

No dependencies, only dev dependencies for included unit tests.

## Installing

`npm install ???`  *not published yet*

## Example:
```
var LruMap = require('lrumap');
{'fraction_non_alphanumeric': 0.2579476861167002, 'fraction_numerical': 0.016901408450704224, 'mean_word_length': 1.5035246727089628, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 8, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 10, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '391794', 'n_tokens_mistral': 654, 'n_tokens_neox': 615, 'n_words': 204}