You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

990 B

varint

decode protobuf-style varint bytes and emit whole integers when enough have been accumulated that a number can be constructed; also encode whole numbers to an array of varint style bytes.

var varint = require('varint')

var bytes = varint.encode(300) // === [0xAC, 0x02]
  , vi = varint()

vi.once('data', function(num) {
  console.log('got', num)
})

vi.write(bytes[0])
vi.write(bytes[1]) // "got 300"

api

varint = require('varint')

varint.encode(num[, output=[], offset=0]) -> array

encodes num into either the array given by offset or a new array at offset and returns that array.

vi = varint() -> EventEmitter

return a new varint instance.

vi.write(byte) -> undefined

write a byte to the varint. if the byte is "final" (i.e., does not have the bit at 0x80 set), it will attempt to compile the number and emit it as a data event.

License

MIT