Detalhes do pacote

bufrw

uber2m1.4.0

Buffer Reading and Writing

readme (leia-me)

bufrw

Buffer Reading and Writing

Example

Simple length-prefixed string:

var bufrw = require("bufrw");

var buf = bufrw.toBuffer(bufrw.str1, "hello world");
// <Buffer 0b 68 65 6c 6c 6f 20 77 6f 72 6c 64>
var str = bufrw.fromBuffer(bufrw.str1, buf)
// "hello world"

// TODO more examples

Concept and Motivation

A combinatoric library for synchronous binary buffer reading and writing.

The design is to combine:

  • needed byte length calculation
  • writing into a pre-allocated buffer
  • reading from a buffer

Into a single re-combinable data type, eventually supporting code generation for efficiency.

Any of those three steps may result in an error, so rather than rely on error throw/catching we use an error-able result type.

API Documentation

See docs.jsig

Installation

npm install bufrw

Tests

npm test

NPM scripts

  • npm run add-licence This will add the licence headers.
  • npm run cover This runs the tests with code coverage
  • npm run lint This will run the linter on your code
  • npm test This will run the tests.
  • npm run trace This will run your tests in tracing mode.
  • npm run travis This is run by travis.CI to run your tests
  • npm run view-cover This will show code coverage in a browser

Contributors

  • Joshua T Corbin

MIT Licenced

changelog (log de mudanças)

v1.4.0

  • Addresses deprecation of Buffer constructor forms

v1.3.0

  • Addresses a dependency issue with hexer that complicated bundling for use in browser scripts.

v1.2.1

  • Fixes a regression in SeriesRW, which would modify the reused result if it happened to be an array.

v1.2.0

  • Adds support for result object reuse.

v1.1.0

  • Adds an optional lazy mode to VariableBufferRW

v1.0.0

:cake: