pub trait DecoderExt {
// Required methods
fn take_chunks<'de>(
self: &mut &'de mut Self,
count: usize,
) -> Result<&'de mut [Chunk], DecodeError>;
fn take_slot<'de, T>(
self: &mut &'de mut Self,
) -> Result<Slot<'de, T>, DecodeError>;
fn take_slice_slot<'de, T>(
self: &mut &'de mut Self,
len: usize,
) -> Result<Slot<'de, [T]>, DecodeError>;
fn decode_owned<'de, T: Decode<Self> + Constrained<Constraint = ()>>(
self: &mut &'de mut Self,
) -> Result<T::Owned<'de>, DecodeError>;
fn decode<T>(self) -> Result<Decoded<T, Self>, DecodeError>
where T: Decode<Self> + Constrained<Constraint = ()>,
Self: Sized;
fn decode_with_constraint<T>(
self,
constraint: <T as Constrained>::Constraint,
) -> Result<Decoded<T, Self>, DecodeError>
where T: Decode<Self>,
Self: Sized;
}Expand description
Extension methods for Decoder.
Required Methods§
Sourcefn take_chunks<'de>(
self: &mut &'de mut Self,
count: usize,
) -> Result<&'de mut [Chunk], DecodeError>
fn take_chunks<'de>( self: &mut &'de mut Self, count: usize, ) -> Result<&'de mut [Chunk], DecodeError>
Takes a slice of Chunks from the decoder.
Sourcefn take_slot<'de, T>(
self: &mut &'de mut Self,
) -> Result<Slot<'de, T>, DecodeError>
fn take_slot<'de, T>( self: &mut &'de mut Self, ) -> Result<Slot<'de, T>, DecodeError>
Takes enough chunks for a T, returning a Slot of the taken value.
Sourcefn take_slice_slot<'de, T>(
self: &mut &'de mut Self,
len: usize,
) -> Result<Slot<'de, [T]>, DecodeError>
fn take_slice_slot<'de, T>( self: &mut &'de mut Self, len: usize, ) -> Result<Slot<'de, [T]>, DecodeError>
Takes enough chunks for a slice of T, returning a Slot of the taken slice.
Sourcefn decode_owned<'de, T: Decode<Self> + Constrained<Constraint = ()>>(
self: &mut &'de mut Self,
) -> Result<T::Owned<'de>, DecodeError>
fn decode_owned<'de, T: Decode<Self> + Constrained<Constraint = ()>>( self: &mut &'de mut Self, ) -> Result<T::Owned<'de>, DecodeError>
Decodes an Owned value from the decoder without finishing it.
On success, returns Ok of an Owned value. Returns Err if decoding failed.
Sourcefn decode<T>(self) -> Result<Decoded<T, Self>, DecodeError>
fn decode<T>(self) -> Result<Decoded<T, Self>, DecodeError>
Decodes a value from the decoder and finishes it.
On success, returns Ok of a Decoded value with the decoder. Returns Err if decoding
failed or the decoder finished with an error.
Sourcefn decode_with_constraint<T>(
self,
constraint: <T as Constrained>::Constraint,
) -> Result<Decoded<T, Self>, DecodeError>
fn decode_with_constraint<T>( self, constraint: <T as Constrained>::Constraint, ) -> Result<Decoded<T, Self>, DecodeError>
Decodes a value from the decoder and finishes it.
On success, returns Ok of a Decoded value with the decoder. Returns Err if decoding
failed or the decoder finished with an error.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.