greg
4d1d2f8c52
|
2 years ago | |
---|---|---|
.. | ||
assets | 2 years ago | |
dist | 2 years ago | |
tests | 2 years ago | |
LICENSE | 2 years ago | |
README.md | 2 years ago | |
index.js | 2 years ago | |
package.json | 2 years ago | |
rollup.config.js | 2 years ago |
README.md
The ordered-binary provides a representation of JavaScript primitives as NodeJS Buffers, such that there binary values are naturally ordered such that it matches primitive ordering. For example, since -2.0321 > -2.04, then toBufferKey(-2.0321)
will be greater than toBufferKey(-2.04)
as a binary representation, in left-to-right evaluation. This is particular useful for storing keys as binaries with something like LevelDB, to avoid any custom sorting.
The main module exports two functions:
toBufferKey(jsPrimitive)
- This accepts a string, number, or boolean as the argument, and returns a Buffer
.
fromBufferKey(bufferKey, multiple)
- This accepts a Buffer and returns a JavaScript primitive value. This can also parse buffers that hold multiple values delimited by a byte 30
, by setting the second argument to true (in which case it will return an array).