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 fn parse_bool(&mut self) -> Result<bool, PostcardError>
pub fn parse_bool(&mut self) -> Result<bool, PostcardError>
Parse a boolean value.
Sourcepub fn parse_u8(&mut self) -> Result<u8, PostcardError>
pub fn parse_u8(&mut self) -> Result<u8, PostcardError>
Parse an unsigned 8-bit integer.
Sourcepub fn parse_u16(&mut self) -> Result<u16, PostcardError>
pub fn parse_u16(&mut self) -> Result<u16, PostcardError>
Parse an unsigned 16-bit integer (varint).
Sourcepub fn parse_u32(&mut self) -> Result<u32, PostcardError>
pub fn parse_u32(&mut self) -> Result<u32, PostcardError>
Parse an unsigned 32-bit integer (varint).
Sourcepub fn parse_u64(&mut self) -> Result<u64, PostcardError>
pub fn parse_u64(&mut self) -> Result<u64, PostcardError>
Parse an unsigned 64-bit integer (varint).
Sourcepub fn parse_u128(&mut self) -> Result<u128, PostcardError>
pub fn parse_u128(&mut self) -> Result<u128, PostcardError>
Parse an unsigned 128-bit integer (varint).
Sourcepub fn parse_i8(&mut self) -> Result<i8, PostcardError>
pub fn parse_i8(&mut self) -> Result<i8, PostcardError>
Parse a signed 8-bit integer (single byte, two’s complement).
Sourcepub fn parse_i16(&mut self) -> Result<i16, PostcardError>
pub fn parse_i16(&mut self) -> Result<i16, PostcardError>
Parse a signed 16-bit integer (zigzag varint).
Sourcepub fn parse_i32(&mut self) -> Result<i32, PostcardError>
pub fn parse_i32(&mut self) -> Result<i32, PostcardError>
Parse a signed 32-bit integer (zigzag varint).
Sourcepub fn parse_i64(&mut self) -> Result<i64, PostcardError>
pub fn parse_i64(&mut self) -> Result<i64, PostcardError>
Parse a signed 64-bit integer (zigzag varint).
Sourcepub fn parse_i128(&mut self) -> Result<i128, PostcardError>
pub fn parse_i128(&mut self) -> Result<i128, PostcardError>
Parse a signed 128-bit integer (zigzag varint).
Sourcepub fn parse_f32(&mut self) -> Result<f32, PostcardError>
pub fn parse_f32(&mut self) -> Result<f32, PostcardError>
Parse a 32-bit float (little-endian).
Sourcepub fn parse_f64(&mut self) -> Result<f64, PostcardError>
pub fn parse_f64(&mut self) -> Result<f64, PostcardError>
Parse a 64-bit float (little-endian).
Sourcepub fn parse_string(&mut self) -> Result<&'de str, PostcardError>
pub fn parse_string(&mut self) -> Result<&'de str, PostcardError>
Parse a string (varint length + UTF-8 bytes).
Sourcepub fn parse_bytes(&mut self) -> Result<&'de [u8], PostcardError>
pub fn parse_bytes(&mut self) -> Result<&'de [u8], PostcardError>
Parse bytes (varint length + raw bytes).
Sourcepub fn begin_sequence(&mut self) -> Result<u64, PostcardError>
pub fn begin_sequence(&mut self) -> Result<u64, PostcardError>
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§type Error = PostcardError
type Error = PostcardError
Source§type Probe<'a> = PostcardProbe
where
Self: 'a
type Probe<'a> = PostcardProbe where Self: 'a
FormatParser::begin_probe.Source§fn next_event(&mut self) -> Result<Option<ParseEvent<'de>>, Self::Error>
fn next_event(&mut self) -> Result<Option<ParseEvent<'de>>, Self::Error>
None if the input is exhausted. Read moreSource§fn peek_event(&mut self) -> Result<Option<ParseEvent<'de>>, Self::Error>
fn peek_event(&mut self) -> Result<Option<ParseEvent<'de>>, Self::Error>
None if at EOF.Source§fn skip_value(&mut self) -> Result<(), Self::Error>
fn skip_value(&mut self) -> Result<(), Self::Error>
Source§fn begin_probe(&mut self) -> Result<Self::Probe<'_>, Self::Error>
fn begin_probe(&mut self) -> Result<Self::Probe<'_>, Self::Error>
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_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 moreSource§fn hint_enum(&mut self, variants: &[EnumVariantHint])
fn hint_enum(&mut self, variants: &[EnumVariantHint])
Source§fn hint_opaque_scalar(
&mut self,
type_identifier: &'static str,
shape: &'static Shape,
) -> bool
fn hint_opaque_scalar( &mut self, type_identifier: &'static str, shape: &'static Shape, ) -> bool
Source§fn capture_raw(&mut self) -> Result<Option<&'de str>, Self::Error>
fn capture_raw(&mut self) -> Result<Option<&'de str>, Self::Error>
Auto Trait Implementations§
impl<'de> Freeze for PostcardParser<'de>
impl<'de> RefUnwindSafe for PostcardParser<'de>
impl<'de> Send for PostcardParser<'de>
impl<'de> Sync for PostcardParser<'de>
impl<'de> Unpin for PostcardParser<'de>
impl<'de> UnwindSafe for PostcardParser<'de>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<D> OwoColorize for D
impl<D> OwoColorize for D
Source§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
Source§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
Source§fn black(&self) -> FgColorDisplay<'_, Black, Self>
fn black(&self) -> FgColorDisplay<'_, Black, Self>
Source§fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
Source§fn red(&self) -> FgColorDisplay<'_, Red, Self>
fn red(&self) -> FgColorDisplay<'_, Red, Self>
Source§fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
Source§fn green(&self) -> FgColorDisplay<'_, Green, Self>
fn green(&self) -> FgColorDisplay<'_, Green, Self>
Source§fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
Source§fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
Source§fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
Source§fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
Source§fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
Source§fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
Source§fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
Source§fn white(&self) -> FgColorDisplay<'_, White, Self>
fn white(&self) -> FgColorDisplay<'_, White, Self>
Source§fn on_white(&self) -> BgColorDisplay<'_, White, Self>
fn on_white(&self) -> BgColorDisplay<'_, White, Self>
Source§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
Source§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
Source§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
Source§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
Source§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
Source§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
Source§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
Source§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
Source§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
Source§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
Source§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
Source§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
Source§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
Source§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
Source§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
Source§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
Source§fn bold(&self) -> BoldDisplay<'_, Self>
fn bold(&self) -> BoldDisplay<'_, Self>
Source§fn dimmed(&self) -> DimDisplay<'_, Self>
fn dimmed(&self) -> DimDisplay<'_, Self>
Source§fn italic(&self) -> ItalicDisplay<'_, Self>
fn italic(&self) -> ItalicDisplay<'_, Self>
Source§fn underline(&self) -> UnderlineDisplay<'_, Self>
fn underline(&self) -> UnderlineDisplay<'_, Self>
Source§fn blink(&self) -> BlinkDisplay<'_, Self>
fn blink(&self) -> BlinkDisplay<'_, Self>
Source§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
Source§fn reversed(&self) -> ReversedDisplay<'_, Self>
fn reversed(&self) -> ReversedDisplay<'_, Self>
Source§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
Source§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::fg or
a color-specific method, such as OwoColorize::green, Read moreSource§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::bg or
a color-specific method, such as OwoColorize::on_yellow, Read more