method BufReader.prototype.readFull
BufReader.prototype.readFull(p: Uint8Array): Promise<Uint8Array | null>reads exactly p.length bytes into p.
If successful, p is returned.
If the end of the underlying stream has been reached, and there are no more
bytes available in the buffer, readFull() returns null instead.
An error is thrown if some bytes could be read, but not enough to fill p
entirely before the underlying stream reported an error or EOF. Any error
thrown will have a partial property that indicates the slice of the
buffer that has been successfully filled with data.
Ported from https://golang.org/pkg/io/#ReadFull
Parameters
p: Uint8ArrayReturn Type
Promise<Uint8Array | null>