yuanhao b574408fd7 first commit 3 years ago
..
.npmignore b574408fd7 first commit 3 years ago
.travis.yml b574408fd7 first commit 3 years ago
LICENSE b574408fd7 first commit 3 years ago
README.md b574408fd7 first commit 3 years ago
index.js b574408fd7 first commit 3 years ago
package.json b574408fd7 first commit 3 years ago
test.js b574408fd7 first commit 3 years ago

README.md

Cyclist

Cyclist is an efficient cyclic list implemention for Javascript. It is available through npm

npm install cyclist

build status

What?

Cyclist allows you to create a list of fixed size that is cyclic. In a cyclist list the element following the last one is the first one. This property can be really useful when for example trying to order data packets that can arrive out of order over a network stream.

Usage

var cyclist = require('cyclist')
var list = cyclist(4)

list.put(42, 'hello 42') // store something and index 42
list.put(43, 'hello 43') // store something and index 43

console.log(list.get(42)) // prints hello 42
console.log(list.get(46)) // prints hello 42 again since 46 - 42 == list.size

API

  • cyclist(size) creates a new buffer
  • cyclist#get(index) get an object stored in the buffer
  • cyclist#put(index,value) insert an object into the buffer
  • cyclist#del(index) delete an object from an index
  • cyclist#size property containing current size of buffer

License

MIT