pub enum EncodableField<'a> {
Primitive(EncodablePrimitive<'a>),
Struct(Vec<EncodableField<'a>>),
}
Expand description
The EncodableField
enum defines encodable fields, which may be a primitive or struct.
Each EncodableField
represents either a primitive value or a collection of values
(a struct). The encoding process for EncodableField
supports nesting, allowing
for complex hierarchical data structures to be serialized.
Variants§
Primitive(EncodablePrimitive<'a>)
Represents a primitive value
For the full supported list please see EncodablePrimitive
Struct(Vec<EncodableField<'a>>)
Represents a struct like field structure.
Note that this is a recursive enum type.
Implementations§
Source§impl EncodableField<'_>
impl EncodableField<'_>
Sourcepub fn encode(&self, dst: &mut [u8], offset: usize) -> Result<usize, Error>
pub fn encode(&self, dst: &mut [u8], offset: usize) -> Result<usize, Error>
The encode
method serializes a field into the destination buffer dst
, starting
at the provided offset
. If the field is a structure, it recursively encodes
each contained field. If the buffer is too small or encoding fails, the method
returns an error.
Trait Implementations§
Source§impl<'a> Debug for EncodableField<'a>
impl<'a> Debug for EncodableField<'a>
Source§impl<'a> From<Seq0255<'a, Inner<'a, false, 1, 1, 255>>> for EncodableField<'a>
impl<'a> From<Seq0255<'a, Inner<'a, false, 1, 1, 255>>> for EncodableField<'a>
Source§impl<'a> From<Seq0255<'a, Inner<'a, false, 1, 2, { u16::MAX as usize }>>> for EncodableField<'a>
impl<'a> From<Seq0255<'a, Inner<'a, false, 1, 2, { u16::MAX as usize }>>> for EncodableField<'a>
Source§impl<'a> From<Seq0255<'a, Inner<'a, false, 1, 3, { 2_usize.pow(24) - 1 }>>> for EncodableField<'a>
impl<'a> From<Seq0255<'a, Inner<'a, false, 1, 3, { 2_usize.pow(24) - 1 }>>> for EncodableField<'a>
Source§impl<'a> From<Seq0255<'a, Inner<'a, true, 32, 0, 0>>> for EncodableField<'a>
impl<'a> From<Seq0255<'a, Inner<'a, true, 32, 0, 0>>> for EncodableField<'a>
Source§impl<'a> From<Seq0255<'a, Inner<'a, true, 64, 0, 0>>> for EncodableField<'a>
impl<'a> From<Seq0255<'a, Inner<'a, true, 64, 0, 0>>> for EncodableField<'a>
Source§impl<'a> From<Seq064K<'a, Inner<'a, false, 1, 1, 255>>> for EncodableField<'a>
impl<'a> From<Seq064K<'a, Inner<'a, false, 1, 1, 255>>> for EncodableField<'a>
Source§impl<'a> From<Seq064K<'a, Inner<'a, false, 1, 2, { u16::MAX as usize }>>> for EncodableField<'a>
impl<'a> From<Seq064K<'a, Inner<'a, false, 1, 2, { u16::MAX as usize }>>> for EncodableField<'a>
Source§impl<'a> From<Seq064K<'a, Inner<'a, false, 1, 3, { 2_usize.pow(24) - 1 }>>> for EncodableField<'a>
impl<'a> From<Seq064K<'a, Inner<'a, false, 1, 3, { 2_usize.pow(24) - 1 }>>> for EncodableField<'a>
Source§impl<'a> From<Seq064K<'a, Inner<'a, true, 32, 0, 0>>> for EncodableField<'a>
impl<'a> From<Seq064K<'a, Inner<'a, true, 32, 0, 0>>> for EncodableField<'a>
Source§impl<'a> From<Seq064K<'a, Inner<'a, true, 64, 0, 0>>> for EncodableField<'a>
impl<'a> From<Seq064K<'a, Inner<'a, true, 64, 0, 0>>> for EncodableField<'a>
Source§impl From<Slice> for EncodableField<'_>
impl From<Slice> for EncodableField<'_>
Source§impl<'a> From<Sv2Option<'a, Inner<'a, false, 1, 1, 255>>> for EncodableField<'a>
impl<'a> From<Sv2Option<'a, Inner<'a, false, 1, 1, 255>>> for EncodableField<'a>
Source§impl<'a> From<Sv2Option<'a, Inner<'a, false, 1, 2, { u16::MAX as usize }>>> for EncodableField<'a>
impl<'a> From<Sv2Option<'a, Inner<'a, false, 1, 2, { u16::MAX as usize }>>> for EncodableField<'a>
Source§impl<'a> From<Sv2Option<'a, Inner<'a, false, 1, 3, { 2_usize.pow(24) - 1 }>>> for EncodableField<'a>
impl<'a> From<Sv2Option<'a, Inner<'a, false, 1, 3, { 2_usize.pow(24) - 1 }>>> for EncodableField<'a>
Source§impl<'a> From<Sv2Option<'a, Inner<'a, true, 32, 0, 0>>> for EncodableField<'a>
impl<'a> From<Sv2Option<'a, Inner<'a, true, 32, 0, 0>>> for EncodableField<'a>
Source§impl<'a> From<Sv2Option<'a, Inner<'a, true, 64, 0, 0>>> for EncodableField<'a>
impl<'a> From<Sv2Option<'a, Inner<'a, true, 64, 0, 0>>> for EncodableField<'a>
Source§impl From<U24> for EncodableField<'_>
impl From<U24> for EncodableField<'_>
Source§impl From<bool> for EncodableField<'_>
impl From<bool> for EncodableField<'_>
Source§impl From<f32> for EncodableField<'_>
impl From<f32> for EncodableField<'_>
Source§impl From<u16> for EncodableField<'_>
impl From<u16> for EncodableField<'_>
Source§impl From<u32> for EncodableField<'_>
impl From<u32> for EncodableField<'_>
Source§impl From<u64> for EncodableField<'_>
impl From<u64> for EncodableField<'_>
Source§impl From<u8> for EncodableField<'_>
impl From<u8> for EncodableField<'_>
Source§impl GetSize for EncodableField<'_>
impl GetSize for EncodableField<'_>
Source§impl<'a> TryFrom<EncodableField<'a>> for B0255<'a>
impl<'a> TryFrom<EncodableField<'a>> for B0255<'a>
Source§impl<'a> TryFrom<EncodableField<'a>> for B032<'a>
impl<'a> TryFrom<EncodableField<'a>> for B032<'a>
Source§impl<'a> TryFrom<EncodableField<'a>> for B064K<'a>
impl<'a> TryFrom<EncodableField<'a>> for B064K<'a>
Source§impl<'a> TryFrom<EncodableField<'a>> for B016M<'a>
impl<'a> TryFrom<EncodableField<'a>> for B016M<'a>
Source§impl<'a> TryFrom<EncodableField<'a>> for U256<'a>
impl<'a> TryFrom<EncodableField<'a>> for U256<'a>
Source§impl<'a> TryFrom<EncodableField<'a>> for U32AsRef<'a>
impl<'a> TryFrom<EncodableField<'a>> for U32AsRef<'a>
Source§impl<'a> TryFrom<EncodableField<'a>> for Signature<'a>
impl<'a> TryFrom<EncodableField<'a>> for Signature<'a>
Source§impl<'a> TryFrom<EncodableField<'a>> for U24
impl<'a> TryFrom<EncodableField<'a>> for U24
Source§impl<'a> TryFrom<EncodableField<'a>> for bool
impl<'a> TryFrom<EncodableField<'a>> for bool
Source§impl<'a> TryFrom<EncodableField<'a>> for f32
impl<'a> TryFrom<EncodableField<'a>> for f32
Source§impl<'a> TryFrom<EncodableField<'a>> for u16
impl<'a> TryFrom<EncodableField<'a>> for u16
Source§impl<'a> TryFrom<EncodableField<'a>> for u32
impl<'a> TryFrom<EncodableField<'a>> for u32
Source§impl<'a> TryFrom<EncodableField<'a>> for u64
impl<'a> TryFrom<EncodableField<'a>> for u64
Auto Trait Implementations§
impl<'a> Freeze for EncodableField<'a>
impl<'a> RefUnwindSafe for EncodableField<'a>
impl<'a> Send for EncodableField<'a>
impl<'a> Sync for EncodableField<'a>
impl<'a> Unpin for EncodableField<'a>
impl<'a> !UnwindSafe for EncodableField<'a>
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
Mutably borrows from an owned value. Read more