Package Exports
- borc
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (borc) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
borc
Encode and parse data in the Concise Binary Object Representation (CBOR) data format (RFC7049) as fast as possible.
About
This library is a fork of the awesome [node-cbor](
). It borrows a lot of the interface, but drops all streaming and async processing in favor of a minimal syn api and being as fast as possible.
Installation
$ npm install --save borc
Benchmarks
TODO
Example
const cbor = require('borc')
const assert = require('assert')
const encoded = cbor.encode(true) // returns <Buffer f5>
const decoded = cbor.decodeFirst(encoded)
// decoded is the unpacked object
assert.ok(obj === true)
// Use integers as keys
var m = new Map()
m.set(1, 2)
encoded = cbor.encode(m) // <Buffer a1 01 02>
API
See https://dignifiedquire.github.io/borc for details
The sync encoding and decoding are exported as a
leveldb encoding, as
cbor.leveldb
.
Supported types
The following types are supported for encoding:
- boolean
- number (including -0, NaN, and ±Infinity)
- string
- Array, Set (encoded as Array)
- Object (including null), Map
- undefined
- Buffer
- Date,
- RegExp
- url.URL
- bignumber
Decoding supports the above types, including the following CBOR tag numbers:
Tag | Generated Type |
---|---|
0 | Date |
1 | Date |
2 | bignumber |
3 | bignumber |
4 | bignumber |
5 | bignumber |
32 | url.URL |
35 | RegExp |
License
MIT