StreamDecoding

class dsviper.StreamDecoding

Bases: object

Reads typed values back from a blob.

Tracks its own position - offset, remaining, has_more - so a blob can be consumed value by value. The reading half of what StreamEncoding wrote.

Note: Not directly instantiable.

blob() → ValueBlob

Return the blob being decoded.

has_more() → bool

Return True if there is something to read.

offset() → int

Return the offset in the stream.

read_blob() → ValueBlob

Read and return a blob.

read_blob_id() → ValueBlobId

Read and return a blob_id.

read_bool() → bool

Read and return a Python bool.

read_commit_id() → ValueCommitId

Read and return a commit_id.

read_double() → float

Read and return a Python float.

read_doubles(size: int) → ValueVec

Read an array of doubles and return a vec<double, size>.

read_float() → float

Read and return a Python float.

read_floats(size: int) → ValueVec

Read size float and return them as a ValueVec.

read_int16() → int

Read and return a Python int.

read_int16s(size: int) → ValueVec

Read size int16 and return them as a ValueVec.

read_int32() → int

Read and return a Python int.

read_int32s(size: int) → ValueVec

Read size int32 and return them as a ValueVec.

read_int64() → int

Read and return a Python int.

read_int64s(size: int) → ValueVec

Read size int64 and return them as a ValueVec.

read_int8() → int

Read and return a Python int.

read_int8s(size: int) → ValueVec

Read size int8 and return them as a ValueVec.

read_string() → str

Read and return a Python str.

read_uint16() → int

Read and return a Python int.

read_uint16s(size: int) → ValueVec

Read size uint16 and return them as a ValueVec.

read_uint32() → int

Read and return a Python int.

read_uint32s(size: int) → ValueVec

Read size uint32 and return them as a ValueVec.

read_uint64() → int

Read and return a Python int.

read_uint64s(size: int) → ValueVec

Read size uint64 and return them as a ValueVec.

read_uint8() → int

Read and return a Python int.

read_uint8s(size: int) → ValueVec

Read size uint8 and return them as a ValueVec.

read_uuid() → ValueUUId

Read and return a uuid.

remaining() → int

Return the number of bytes left to read.

rewind() → None

Rewind the stream.

stream_reading() → StreamReading

Return the StreamReading interface.