lexicographic-integer-encoding
Lexicographically ordered integers for level(up)
. Wraps lexicographic-integer
.usage with level
const level = require('level')
const lexint = require('lexicographic-integer-encoding')('hex')
const db = level('./db', { keyEncoding: lexint })
db.put(2, 'example', (err) => {
db.put(10, 'example', (err) => {
// Without our encoding, the keys would sort as 10, 2.
db.createKeyStream().on('data', console.log) // 2, 10
})
})
usage with levelup
const levelup = require('levelup')
const encode = require('encoding-down')
const leveldown = require('leveldown')
const lexint = require('lexicographic-integer-encoding')('hex')
const db = levelup(encode(leveldown('./db'), { keyEncoding: lexint }))
api
lexint = require('lexicographic-integer-encoding')(encoding, [options])
encoding
(string, required):'hex'
or'buffer'
options.strict
(boolean): opt-in to type-checking input. If true, encode will throw:
TypeError
if input is not a number or if NaN
- A RangeError
if input is < 0 or > Number.MAX_SAFE_INTEGER
Returns a
level-codec
compliant encoding object.see also
install
With npm do:npm install lexicographic-integer-encoding