New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

node-bit-stream

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

node-bit-stream

Write individual bits to a node stream

  • 1.0.1
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

Bit Stream

Write individual bits to a node stream:

  • extends stream.Writable
  • wraps stream.Buffer

N.B. The version of Node written for and tested against is 6.1.0

Methods

Updating the Stream

The following methods operate on the stream:

  • align - Align to a byte boundary
  • end - Align to a byte boundary, flush the data and emit the finish event
  • flush - Emit all whole bytes written so far and re-allocate the buffer

Writing Bits

The following methods support writing of individual bits:

  • writeArrayBits - Write a number array of bit values
  • writeIntBits - Write an integer value as the specified number of bits
  • writeStringBits - Write a string of bit values

N.B. The underlying buffer is set to 1024 bytes. Exceeding this length will throw an error.

Writing Bytes

The following methods operate on the wrapped buffer by byte-aligning any data written so far then calling the corresponding method on the buffer:

  • write
  • writeDoubleBE
  • writeDoubleLE
  • writeFloatBE
  • writeFloatLE
  • writeInt8
  • writeInt16BE
  • writeInt16LE
  • writeInt32BE
  • writeInt32LE
  • writeIntBE
  • writeIntLE
  • writeUInt8
  • writeUInt16BE
  • writeUInt16LE
  • writeUInt32BE
  • writeUInt32LE
  • writeUIntBE
  • writeUIntLE

(see the stream.Buffer documentation for usage details)

Usage Examples

constructor

const BitStream = require('node-bit-stream');
const bitStream = new BitStream();

align()

bitStream.writeStringBits('0011');
bitStream.align(); // 00110000

writeArrayBits(value)

bitStream.writeArrayBits([0, 0, 0, 1, 1, 0, 0, 0]); // 00011000

writeInt32Bits(value, [bitLength = 32])

bitStream.writeInt32Bits(3, 8); // 00000011
bitStream.writeInt32Bits(-3); // 11111111111111111111111111111101

writeStringBits(value)

bitStream.writeStringBits('0011');
bitStream.writeStringBits('0011'); // 00110011

Node Commands

Install Dev Dependencies

npm install

Test

npm test

Lint

npm run lint

Documentation

npm run doc

(Create files in the Doc directory)

FAQs

Package last updated on 01 Apr 2019

Did you know?

Socket

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
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc