Class: Reader

Reader

Wire format reader using Uint8Array.

new Reader(buffer)

Constructs a new reader instance using the specified buffer.

Parameters:
buffer Uint8Array

Buffer to read from

Members

buf { Uint8Array }

Read buffer.

discardUnknown { boolean }

Whether to discard unknown fields while decoding.

len { number }

Read buffer length.

pos { number }

Read buffer position.

view { DataView | null }

Cached DataView for packed reads.

Reader.discardUnknown { boolean }

Whether readers discard unknown fields while decoding.

Reader.recursionLimit { number }

Recursion limit.

Methods

bool(){ boolean }

Reads a varint as a boolean.

Returns:
boolean Value read

bools(array){ Array<boolean> }

Reads a packed repeated field of booleans.

Parameters:
array Array<boolean> optional

Array to read into; a new one is created if omitted

Returns:
Array<boolean> Array read into

bytes(){ Uint8Array }

Reads a sequence of bytes preceeded by its length as a varint.

Returns:
Uint8Array Value read

double(){ number }

Reads a double (64 bit float) as a number.

Returns:
number Value read

doubles(array){ Array<number> }

Reads a packed repeated field of doubles (64 bit float).

Parameters:
array Array<number> optional

Array to read into; a new one is created if omitted

Returns:
Array<number> Array read into

fixed32(){ number }

Reads fixed 32 bits as an unsigned 32 bit integer.

Returns:
number Value read

fixed32s(array){ Array<number> }

Reads a packed repeated field of unsigned 32 bit fixed values.

Parameters:
array Array<number> optional

Array to read into; a new one is created if omitted

Returns:
Array<number> Array read into

fixed64(){ Long }

Reads fixed 64 bits.

Returns:
Long Value read

fixed64s(array){ Array<(Long|number)> }

Reads a packed repeated field of unsigned 64 bit fixed values.

Parameters:
array Array<(Long|number)> optional

Array to read into; a new one is created if omitted

Returns:
Array<(Long|number)> Array read into

float(){ number }

Reads a float (32 bit) as a number.

Returns:
number Value read

floats(array){ Array<number> }

Reads a packed repeated field of floats (32 bit).

Parameters:
array Array<number> optional

Array to read into; a new one is created if omitted

Returns:
Array<number> Array read into

int32(){ number }

Reads a varint as a signed 32 bit value.

Returns:
number Value read

int32s(array){ Array<number> }

Reads a packed repeated field of signed 32 bit varints.

Parameters:
array Array<number> optional

Array to read into; a new one is created if omitted

Returns:
Array<number> Array read into

int64(){ Long }

Reads a varint as a signed 64 bit value.

Returns:
Long Value read

int64s(array){ Array<(Long|number)> }

Reads a packed repeated field of signed 64 bit varints.

Parameters:
array Array<(Long|number)> optional

Array to read into; a new one is created if omitted

Returns:
Array<(Long|number)> Array read into

raw(start, end){ Uint8Array }

Returns raw bytes from the backing buffer without advancing the reader.

Parameters:
start number

Start offset

end number

End offset

Returns:
Uint8Array Raw bytes

sfixed32(){ number }

Reads fixed 32 bits as a signed 32 bit integer.

Returns:
number Value read

sfixed32s(array){ Array<number> }

Reads a packed repeated field of signed 32 bit fixed values.

Parameters:
array Array<number> optional

Array to read into; a new one is created if omitted

Returns:
Array<number> Array read into

sfixed64(){ Long }

Reads zig-zag encoded fixed 64 bits.

Returns:
Long Value read

sfixed64s(array){ Array<(Long|number)> }

Reads a packed repeated field of signed 64 bit fixed values.

Parameters:
array Array<(Long|number)> optional

Array to read into; a new one is created if omitted

Returns:
Array<(Long|number)> Array read into

sint32(){ number }

Reads a zig-zag encoded varint as a signed 32 bit value.

Returns:
number Value read

sint32s(array){ Array<number> }

Reads a packed repeated field of zig-zag encoded signed 32 bit varints.

Parameters:
array Array<number> optional

Array to read into; a new one is created if omitted

Returns:
Array<number> Array read into

sint64(){ Long }

Reads a zig-zag encoded varint as a signed 64 bit value.

Returns:
Long Value read

sint64s(array){ Array<(Long|number)> }

Reads a packed repeated field of zig-zag encoded signed 64 bit varints.

Parameters:
array Array<(Long|number)> optional

Array to read into; a new one is created if omitted

Returns:
Array<(Long|number)> Array read into

skip(length){ Reader }

Skips the specified number of bytes if specified, otherwise skips a varint.

Parameters:
length number optional

Length if known, otherwise a varint is assumed

Returns:
Reader this

skipType(wireType, depth, fieldNumber){ Reader }

Skips the next element of the specified wire type.

Parameters:
wireType number

Wire type received

depth number optional

Depth of recursion to control nested calls; 0 if omitted

fieldNumber number optional

Field number for validating group end tags

Returns:
Reader this

string(){ string }

Reads a string preceeded by its byte length as a varint.

Returns:
string Value read

stringVerify(){ string }

Reads a string preceeded by its byte length as a varint, rejecting invalid UTF8.

Returns:
string Value read

tag(){ number }

Reads a field tag.

Returns:
number Tag read

uint32(){ number }

Reads a varint as an unsigned 32 bit value.

Returns:
number Value read

uint32s(array){ Array<number> }

Reads a packed repeated field of unsigned 32 bit varints.

Parameters:
array Array<number> optional

Array to read into; a new one is created if omitted

Returns:
Array<number> Array read into

uint64(){ Long }

Reads a varint as an unsigned 64 bit value.

Returns:
Long Value read

uint64s(array){ Array<(Long|number)> }

Reads a packed repeated field of unsigned 64 bit varints.

Parameters:
array Array<(Long|number)> optional

Array to read into; a new one is created if omitted

Returns:
Array<(Long|number)> Array read into

Reader.create(buffer){ Reader | BufferReader }

Creates a new reader using the specified buffer.

Parameters:
buffer Uint8Array | Buffer

Buffer to read from

Throws:
Error

If buffer is not a valid buffer

Returns:
Reader | BufferReader A BufferReader if buffer is a Buffer, otherwise a Reader