import { type ReaderSync } from "https://deno.land/std@0.187.0/types.d.ts";
An abstract interface which when implemented provides an interface to read bytes into an array buffer synchronously.
Methods
Reads up to p.byteLength
bytes into p
. It resolves to the number
of bytes read (0
< n
<= p.byteLength
) and rejects if any error
encountered. Even if read()
returns n
< p.byteLength
, it may use
all of p
as scratch space during the call. If some data is available
but not p.byteLength
bytes, read()
conventionally returns what is
available instead of waiting for more.
When readSync()
encounters end-of-file condition, it returns EOF
(null
).
When readSync()
encounters an error, it throws with an error.
Callers should always process the n
> 0
bytes returned before
considering the EOF (null
). Doing so correctly handles I/O errors that happen
after reading some bytes and also both of the allowed EOF behaviors.
Implementations should not retain a reference to p
.
Use iterateReaderSync() from https://deno.land/std@0.187.0/streams/iterate_reader.ts to turn a ReaderSync into an Iterator.