1.0.0 • Published 6 years ago
buffer-iterator v1.0.0
Buffer Itaretor
Let Buffer can be foreach.
Install
$ npm install buffer-iterator
Methods
next(needMovePointer = true): Number|Null
: Read a byte from buffer, and move pointer to next byte whenneedMovePointer
istrue
(default), if has not next byte, return null.const assert = require('assert'); const BufferIterator = require('buffer-iterator'); const bi = new BufferIterator(Buffer.from([0x01, 0x02])); assert.equal(bi.next(), 0x01);
prev(needMovePointer = false): Number|Null
: Read a previous byte from buffer, and move pointer to previous byte whenneedMovePointer
istrue
(default false), if has not previous byte, return null.const assert = require('assert'); const BufferIterator = require('buffer-iterator'); const bi = new BufferIterator(Buffer.from([0x01, 0x02])); bi.next(); bi.next(); assert.equal(bi.prev(), 0x01);
current(): Number
: Read current byte, if has not current byte, return null..const assert = require('assert'); const BufferIterator = require('buffer-iterator'); const bi = new BufferIterator(Buffer.from([0x01, 0x02])); bi.next(); assert.equal(bi.current(), 0x01);
hasNext(): Boolean
: If have remain bytes to read.const assert = require('assert'); const BufferIterator = require('buffer-iterator'); const bi = new BufferIterator(Buffer.from([0x01, 0x02])); bi.next(); assert.equal(bi.hasNext(), true);
remainLength(): Number
: Count bytes which have not been read.const assert = require('assert'); const BufferIterator = require('buffer-iterator'); const bi = new BufferIterator(Buffer.from([0x01, 0x02])); bi.next(); assert.equal(bi.remainLength(), 1);
readBytes(number = 1): Buffer|Null
: Read multi bytes.const assert = require('assert'); const BufferIterator = require('buffer-iterator'); const bi = new BufferIterator(Buffer.from([0x01, 0x02])); assert.equal(bi.readBytes(10).equals(Buffer.from([0x01, 0x02])), true);
append(buf): Null
: Append buffer.const assert = require('assert'); const BufferIterator = require('buffer-iterator'); const bi = new BufferIterator(Buffer.from([0x01, 0x02])); bi.append(Buffer.from([0x03])); assert.equal(bi.buffer.equals(Buffer.from([0x01, 0x02, 0x03])), true);
use
for...of
.const assert = require('assert'); const BufferIterator = require('buffer-iterator'); const bi = new BufferIterator(Buffer.from([0x01, 0x02])); for (let byte of bi) { console.log(byte); } // 1 // 2
1.0.0
6 years ago