xen-orchestra/@vates/stream-reader/.USAGE.md
2023-04-12 12:05:55 +02:00

1.0 KiB

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 null if 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)