0.1.0 • Published 3 years ago
@vates/stream-reader v0.1.0
@vates/stream-reader
Efficiently reads and skips chunks of a given size in a stream
Install
Installation of the npm package:
npm install --save @vates/stream-readerUsage
import StreamReader from '@vates/stream-reader'
const reader = new StreamReader(stream).read([size])
- returns the next available chunk of data
- like
stream.read(), a number of bytes can be specified - returns with less data than expected if stream has ended
- returns
nullif the stream has ended and no data has been read
const chunk = await reader.read(512).readStrict([size])
Similar behavior to readChunk but throws if the stream ended before the requested data could be read.
const chunk = await reader.readStrict(512).skip(size)
Skips a given number of bytes from a stream.
Returns the number of bytes actually skipped, which may be less than the requested size if the stream has ended.
const bytesSkipped = await reader.skip(2 * 1024 * 1024 * 1024).skipStrict(size)
Skips a given number of bytes from a stream and throws if the stream ended before enough stream has been skipped.
await reader.skipStrict(2 * 1024 * 1024 * 1024)Contributions
Contributions are very welcomed, either on the documentation or on the code.
You may:
- report any issue you've encountered;
- fork and create a pull request.
License
0.1.0
3 years ago