pub trait WriteExtVarint {
// Required method
fn write_varint(&mut self, value: &Varint) -> Result<usize>;
}Expand description
Extension trait for writing varints to Write instances.
This trait provides a convenient method to write varints directly to
any type that implements std::io::Write.
§Example
use ::std::io::Write;
use ::protobuf_core::{WriteExtVarint, Varint};
let varint = Varint::from_uint64(150);
let mut writer = Vec::new();
writer.write_varint(&varint).unwrap();
assert_eq!(writer, vec![0x96, 0x01]);Required Methods§
Sourcefn write_varint(&mut self, value: &Varint) -> Result<usize>
fn write_varint(&mut self, value: &Varint) -> Result<usize>
Write a varint to this writer.
Encodes a Varint as a varint and writes it to this writer. Returns the number of bytes written on success.
§Arguments
value- The Varint to encode and write
§Returns
Ok(usize)- Number of bytes writtenErr(::std::io::Error)- I/O error from the writer
§Example
use ::std::io::Write;
use ::protobuf_core::{WriteExtVarint, Varint};
let varint = Varint::from_uint64(150);
let mut buffer = Vec::new();
let bytes_written = buffer.write_varint(&varint).unwrap();
assert_eq!(bytes_written, 2);
assert_eq!(buffer, vec![0x96, 0x01]);