pub struct PostcardParser<'de> { /* private fields */ }Expand description
Postcard parser for Tier-0 and Tier-2 deserialization.
For Tier-0, the parser relies on hint_struct_fields to know how many fields
to expect in structs. Sequences are length-prefixed in the wire format.
Implementations§
Source§impl<'de> PostcardParser<'de>
impl<'de> PostcardParser<'de>
Sourcepub const fn with_limits(input: &'de [u8], max_collection_elements: u64) -> Self
pub const fn with_limits(input: &'de [u8], max_collection_elements: u64) -> Self
Create a new postcard parser with custom safety limits.
Sourcepub fn parse_bool(&mut self) -> Result<bool, ParseError>
pub fn parse_bool(&mut self) -> Result<bool, ParseError>
Parse a boolean value.
Sourcepub fn parse_u8(&mut self) -> Result<u8, ParseError>
pub fn parse_u8(&mut self) -> Result<u8, ParseError>
Parse an unsigned 8-bit integer.
Sourcepub fn parse_u16(&mut self) -> Result<u16, ParseError>
pub fn parse_u16(&mut self) -> Result<u16, ParseError>
Parse an unsigned 16-bit integer (varint).
Sourcepub fn parse_u32(&mut self) -> Result<u32, ParseError>
pub fn parse_u32(&mut self) -> Result<u32, ParseError>
Parse an unsigned 32-bit integer (varint).
Sourcepub fn parse_u64(&mut self) -> Result<u64, ParseError>
pub fn parse_u64(&mut self) -> Result<u64, ParseError>
Parse an unsigned 64-bit integer (varint).
Sourcepub fn parse_u128(&mut self) -> Result<u128, ParseError>
pub fn parse_u128(&mut self) -> Result<u128, ParseError>
Parse an unsigned 128-bit integer (varint).
Sourcepub fn parse_i8(&mut self) -> Result<i8, ParseError>
pub fn parse_i8(&mut self) -> Result<i8, ParseError>
Parse a signed 8-bit integer (single byte, two’s complement).
Sourcepub fn parse_i16(&mut self) -> Result<i16, ParseError>
pub fn parse_i16(&mut self) -> Result<i16, ParseError>
Parse a signed 16-bit integer (zigzag varint).
Sourcepub fn parse_i32(&mut self) -> Result<i32, ParseError>
pub fn parse_i32(&mut self) -> Result<i32, ParseError>
Parse a signed 32-bit integer (zigzag varint).
Sourcepub fn parse_i64(&mut self) -> Result<i64, ParseError>
pub fn parse_i64(&mut self) -> Result<i64, ParseError>
Parse a signed 64-bit integer (zigzag varint).
Sourcepub fn parse_i128(&mut self) -> Result<i128, ParseError>
pub fn parse_i128(&mut self) -> Result<i128, ParseError>
Parse a signed 128-bit integer (zigzag varint).
Sourcepub fn parse_f32(&mut self) -> Result<f32, ParseError>
pub fn parse_f32(&mut self) -> Result<f32, ParseError>
Parse a 32-bit float (little-endian).
Sourcepub fn parse_f64(&mut self) -> Result<f64, ParseError>
pub fn parse_f64(&mut self) -> Result<f64, ParseError>
Parse a 64-bit float (little-endian).
Sourcepub fn parse_string(&mut self) -> Result<&'de str, ParseError>
pub fn parse_string(&mut self) -> Result<&'de str, ParseError>
Parse a string (varint length + UTF-8 bytes).
Sourcepub fn parse_bytes(&mut self) -> Result<&'de [u8], ParseError>
pub fn parse_bytes(&mut self) -> Result<&'de [u8], ParseError>
Parse bytes (varint length + raw bytes).
Sourcepub fn begin_sequence(&mut self) -> Result<u64, ParseError>
pub fn begin_sequence(&mut self) -> Result<u64, ParseError>
Begin parsing a sequence, returning the element count.
Trait Implementations§
Source§impl<'de> FormatParser<'de> for PostcardParser<'de>
impl<'de> FormatParser<'de> for PostcardParser<'de>
Source§fn next_event(&mut self) -> Result<Option<ParseEvent<'de>>, ParseError>
fn next_event(&mut self) -> Result<Option<ParseEvent<'de>>, ParseError>
None if the input is exhausted. Read moreSource§fn peek_event(&mut self) -> Result<Option<ParseEvent<'de>>, ParseError>
fn peek_event(&mut self) -> Result<Option<ParseEvent<'de>>, ParseError>
None if at EOF.Source§fn skip_value(&mut self) -> Result<(), ParseError>
fn skip_value(&mut self) -> Result<(), ParseError>
Source§fn current_span(&self) -> Option<Span>
fn current_span(&self) -> Option<Span>
Source§fn format_namespace(&self) -> Option<&'static str>
fn format_namespace(&self) -> Option<&'static str>
Source§fn save(&mut self) -> SavePoint
fn save(&mut self) -> SavePoint
Source§fn restore(&mut self, _save_point: SavePoint)
fn restore(&mut self, _save_point: SavePoint)
Source§fn is_self_describing(&self) -> bool
fn is_self_describing(&self) -> bool
Source§fn hint_struct_fields(&mut self, num_fields: usize)
fn hint_struct_fields(&mut self, num_fields: usize)
Source§fn hint_scalar_type(&mut self, hint: ScalarTypeHint)
fn hint_scalar_type(&mut self, hint: ScalarTypeHint)
Source§fn hint_sequence(&mut self)
fn hint_sequence(&mut self)
Source§fn hint_byte_sequence(&mut self) -> bool
fn hint_byte_sequence(&mut self) -> bool
Source§fn hint_remaining_byte_sequence(&mut self) -> bool
fn hint_remaining_byte_sequence(&mut self) -> bool
Source§fn hint_array(&mut self, len: usize)
fn hint_array(&mut self, len: usize)
Source§fn hint_option(&mut self)
fn hint_option(&mut self)
Option<T> is expected. Read more