nuǝɯ pǝɥsᴉꞁod mǝu

    cborjs-typedarray-decoder

    0.1.1 • Public • Published

    cborjs-typedarray-decoder Build Status

    A cbor-js decoder for CBOR typed arrays.

    This is a work-in-progress and not battle-tested yet.

    Example

    Include cbor-js and this plugin in your page:

    <script src="https://cdn.rawgit.com/paroga/cbor-js/v0.2.0/cbor.js"></script>
    <script src="https://cdn.jsdelivr.net/cborjs-typedarray-decoder/0.1/cborjs-typedarray-decoder.min.js"></script>

    Then register the decoder and you're ready to go:

    CBOR.registerDecoder(CBORTypedArrayDecoder)
    CBOR.decode(...)

    How does it work?

    Numeric typed arrays in CBOR can be encoded by using tags as defined in the soon-to-be-RFC draft-jroatch-cbor-tags-02. Compared to standard arrays, they use less space (1 byte less per array element) and are faster to decode.

    This decoder wraps CBOR typed arrays directly as JavaScript typed arrays. By providing a view on top of the underlying ArrayBuffer supplied by cbor-js it makes parsing very efficient.

    In the unlikely case that the platform endianness where the decoder is running does not match the one used when encoding, a fast byte swapping on the original array data is done using optimized for-loops for each bit length.

    Supported types

    CBOR typed arrays currently support more data types than in JavaScript. Only the ones existing in JavaScript are supported, which are currently:

    • Int8Array
    • Uint8Array
    • Uint8ClampedArray
    • Int16Array
    • Uint16Array
    • Int32Array
    • Uint32Array
    • Float32Array
    • Float64Array

    Keywords

    none

    Install

    npm i cborjs-typedarray-decoder

    DownloadsWeekly Downloads

    2

    Version

    0.1.1

    License

    BSD-3-Clause

    Last publish

    Collaborators

    • letmaik