Trait sigma_ser::vlq_encode::WriteSigmaVlqExt[][src]

pub trait WriteSigmaVlqExt: Write {
    fn put_i8(&mut self, v: i8) -> Result<()> { ... }
fn put_u8(&mut self, v: u8) -> Result<()> { ... }
fn put_i16(&mut self, v: i16) -> Result<()> { ... }
fn put_u16(&mut self, v: u16) -> Result<()> { ... }
fn put_usize_as_u16(&mut self, v: usize) -> Result<()> { ... }
fn put_usize_as_u32(&mut self, v: usize) -> Result<()> { ... }
fn put_i32(&mut self, v: i32) -> Result<()> { ... }
fn put_u32(&mut self, v: u32) -> Result<()> { ... }
fn put_i64(&mut self, v: i64) -> Result<()> { ... }
fn put_u64(&mut self, v: u64) -> Result<()> { ... }
fn put_bits(&mut self, bools: &[bool]) -> Result<()> { ... } }
Expand description

Write encoded unsigned values using VLQ and signed values first with ZigZag, then using VLQ for VLQ see [[https://en.wikipedia.org/wiki/Variable-length_quantity]] for ZigZag see https://developers.google.com/protocol-buffers/docs/encoding#types

Provided methods

fn put_i8(&mut self, v: i8) -> Result<()>[src]

Write i8 without encoding

fn put_u8(&mut self, v: u8) -> Result<()>[src]

Write u8 without encoding

fn put_i16(&mut self, v: i16) -> Result<()>[src]

Encode using ZigZag and then VLQ.

fn put_u16(&mut self, v: u16) -> Result<()>[src]

Encode using VLQ.

fn put_usize_as_u16(&mut self, v: usize) -> Result<()>[src]

Cast to u16 (with range check) and encode using VLQ

fn put_usize_as_u32(&mut self, v: usize) -> Result<()>[src]

Cast to u32 (with range check) and encode using VLQ

fn put_i32(&mut self, v: i32) -> Result<()>[src]

Encode using ZigZag and then VLQ.

fn put_u32(&mut self, v: u32) -> Result<()>[src]

Encode using VLQ.

fn put_i64(&mut self, v: i64) -> Result<()>[src]

Encode using ZigZag and then VLQ.

fn put_u64(&mut self, v: u64) -> Result<()>[src]

Encode using VLQ.

fn put_bits(&mut self, bools: &[bool]) -> Result<()>[src]

Encode bool array as bit vector, filling trailing bits with false

Implementors

impl<W: Write + ?Sized> WriteSigmaVlqExt for W[src]

Mark all types implementing Write as implementing the extension.