endless-bitset

1.1.0 • Public • Published

endless-bitset

Build Status

An endless and fast bitset with some nice methods.

This is a wrapper around mattkrick's fast-bitset that allows for unlimited sizes.

It uses big-integer to access the higher indexes (but should work with plain old JS numbers for smaller indexes).

Installation

With yarn:

yarn add endless-bitset

Or with npm:

npm install endless-bitset --save

Features and Limitations

It's supposed to re-implement all methods from fast-bitset (they are a good selection), but I did just the ones I needed so far.
Technically, I guess it's limited by your RAM, your spare processing time and your call stack. But should be sufficient for most purposes.

API

Currently implemented are these methods from the original API:

  • BitSet
    • new BitSet(nBitsOrKey) : only for integer or bitInt parameters
    • .get(idx) ⇒ boolean
    • .set(idx) ⇒ boolean
    • .unset(idx) ⇒ boolean
    • .setRange(from, to) ⇒ boolean
    • .nextUnsetBit(idx) ⇒ number

I also added this property:

  • BitSet
    • length ⇒ integer : returns the max length, exactly as specified in the constructor

For the complete documentation, visit fast-bitset's readme.

Readme

Keywords

none

Package Sidebar

Install

npm i endless-bitset

Weekly Downloads

1

Version

1.1.0

License

MIT

Last publish

Collaborators

  • luanpotter