pub trait ReadExtTag {
// Required methods
fn read_tag(&mut self) -> Result<Option<Tag>>;
fn read_tag_partial(&mut self) -> Result<Outcome>;
fn read_tag_resume(&mut self, state: DecodeState) -> Result<Outcome>;
}Expand description
Extension trait for reading tags from Read instances.
This trait provides a convenient method to read tags directly from
any type that implements std::io::Read.
§Example
use ::std::io::Cursor;
use ::protobuf_core::ReadExtTag;
let data = vec![0x08]; // tag 1:0 (field 1, wire type 0)
let mut reader = Cursor::new(data);
let tag = reader.read_tag().unwrap().unwrap();
assert_eq!(tag.field_number.as_u32(), 1);Required Methods§
Sourcefn read_tag_partial(&mut self) -> Result<Outcome>
fn read_tag_partial(&mut self) -> Result<Outcome>
Read a tag from this reader, supporting incomplete input.
Sourcefn read_tag_resume(&mut self, state: DecodeState) -> Result<Outcome>
fn read_tag_resume(&mut self, state: DecodeState) -> Result<Outcome>
Resume tag decoding with additional bytes from this reader.