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<Inner<'a, false, 1, 1, 255>> for EncodableField<'a>
impl<'a> From<Inner<'a, false, 1, 1, 255>> for EncodableField<'a>
Source§fn from(v: Inner<'a, false, 1, 1, 255>) -> EncodableField<'a>
fn from(v: Inner<'a, false, 1, 1, 255>) -> EncodableField<'a>
Converts to this type from the input type.
Source§impl<'a> From<Inner<'a, false, 1, 1, 32>> for EncodableField<'a>
impl<'a> From<Inner<'a, false, 1, 1, 32>> for EncodableField<'a>
Source§fn from(v: Inner<'a, false, 1, 1, 32>) -> EncodableField<'a>
fn from(v: Inner<'a, false, 1, 1, 32>) -> EncodableField<'a>
Converts to this type from the input type.
Source§impl<'a> From<Inner<'a, false, 1, 2, binary_codec_sv2::::datatypes::non_copy_data_types::B064K::{constant#3}>> for EncodableField<'a>
impl<'a> From<Inner<'a, false, 1, 2, binary_codec_sv2::::datatypes::non_copy_data_types::B064K::{constant#3}>> for EncodableField<'a>
Source§fn from(
v: Inner<'a, false, 1, 2, binary_codec_sv2::::datatypes::non_copy_data_types::B064K::{constant#3}>,
) -> EncodableField<'a>
fn from( v: Inner<'a, false, 1, 2, binary_codec_sv2::::datatypes::non_copy_data_types::B064K::{constant#3}>, ) -> EncodableField<'a>
Converts to this type from the input type.
Source§impl<'a> From<Inner<'a, false, 1, 3, binary_codec_sv2::::datatypes::non_copy_data_types::B016M::{constant#3}>> for EncodableField<'a>
impl<'a> From<Inner<'a, false, 1, 3, binary_codec_sv2::::datatypes::non_copy_data_types::B016M::{constant#3}>> for EncodableField<'a>
Source§fn from(
v: Inner<'a, false, 1, 3, binary_codec_sv2::::datatypes::non_copy_data_types::B016M::{constant#3}>,
) -> EncodableField<'a>
fn from( v: Inner<'a, false, 1, 3, binary_codec_sv2::::datatypes::non_copy_data_types::B016M::{constant#3}>, ) -> EncodableField<'a>
Converts to this type from the input type.
Source§impl<'a> From<Inner<'a, true, 32, 0, 0>> for EncodableField<'a>
impl<'a> From<Inner<'a, true, 32, 0, 0>> for EncodableField<'a>
Source§fn from(v: Inner<'a, true, 32, 0, 0>) -> EncodableField<'a>
fn from(v: Inner<'a, true, 32, 0, 0>) -> EncodableField<'a>
Converts to this type from the input type.
Source§impl<'a> From<Inner<'a, true, 4, 0, 0>> for EncodableField<'a>
impl<'a> From<Inner<'a, true, 4, 0, 0>> for EncodableField<'a>
Source§fn from(v: Inner<'a, true, 4, 0, 0>) -> EncodableField<'a>
fn from(v: Inner<'a, true, 4, 0, 0>) -> EncodableField<'a>
Converts to this type from the input type.
Source§impl<'a> From<Inner<'a, true, 64, 0, 0>> for EncodableField<'a>
impl<'a> From<Inner<'a, true, 64, 0, 0>> for EncodableField<'a>
Source§fn from(v: Inner<'a, true, 64, 0, 0>) -> EncodableField<'a>
fn from(v: Inner<'a, true, 64, 0, 0>) -> EncodableField<'a>
Converts to this type from the input type.
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§fn from(v: Seq0255<'_, Inner<'a, false, 1, 1, 255>>) -> EncodableField<'a>
fn from(v: Seq0255<'_, Inner<'a, false, 1, 1, 255>>) -> EncodableField<'a>
Converts to this type from the input type.
Source§impl<'a> From<Seq0255<'a, Inner<'a, false, 1, 2, binary_codec_sv2::::datatypes::non_copy_data_types::B064K::{constant#3}>>> for EncodableField<'a>
impl<'a> From<Seq0255<'a, Inner<'a, false, 1, 2, binary_codec_sv2::::datatypes::non_copy_data_types::B064K::{constant#3}>>> for EncodableField<'a>
Source§fn from(
v: Seq0255<'_, Inner<'a, false, 1, 2, binary_codec_sv2::::datatypes::non_copy_data_types::B064K::{constant#3}>>,
) -> EncodableField<'a>
fn from( v: Seq0255<'_, Inner<'a, false, 1, 2, binary_codec_sv2::::datatypes::non_copy_data_types::B064K::{constant#3}>>, ) -> EncodableField<'a>
Converts to this type from the input type.
Source§impl<'a> From<Seq0255<'a, Inner<'a, false, 1, 3, binary_codec_sv2::::datatypes::non_copy_data_types::B016M::{constant#3}>>> for EncodableField<'a>
impl<'a> From<Seq0255<'a, Inner<'a, false, 1, 3, binary_codec_sv2::::datatypes::non_copy_data_types::B016M::{constant#3}>>> for EncodableField<'a>
Source§fn from(
v: Seq0255<'_, Inner<'a, false, 1, 3, binary_codec_sv2::::datatypes::non_copy_data_types::B016M::{constant#3}>>,
) -> EncodableField<'a>
fn from( v: Seq0255<'_, Inner<'a, false, 1, 3, binary_codec_sv2::::datatypes::non_copy_data_types::B016M::{constant#3}>>, ) -> EncodableField<'a>
Converts to this type from the input type.
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§fn from(v: Seq0255<'_, Inner<'a, true, 32, 0, 0>>) -> EncodableField<'a>
fn from(v: Seq0255<'_, Inner<'a, true, 32, 0, 0>>) -> EncodableField<'a>
Converts to this type from the input type.
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§fn from(v: Seq0255<'_, Inner<'a, true, 64, 0, 0>>) -> EncodableField<'a>
fn from(v: Seq0255<'_, Inner<'a, true, 64, 0, 0>>) -> EncodableField<'a>
Converts to this type from the input type.
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§fn from(v: Seq064K<'a, Inner<'a, false, 1, 1, 255>>) -> EncodableField<'a>
fn from(v: Seq064K<'a, Inner<'a, false, 1, 1, 255>>) -> EncodableField<'a>
Converts to this type from the input type.
Source§impl<'a> From<Seq064K<'a, Inner<'a, false, 1, 2, binary_codec_sv2::::datatypes::non_copy_data_types::B064K::{constant#3}>>> for EncodableField<'a>
impl<'a> From<Seq064K<'a, Inner<'a, false, 1, 2, binary_codec_sv2::::datatypes::non_copy_data_types::B064K::{constant#3}>>> for EncodableField<'a>
Source§fn from(
v: Seq064K<'a, Inner<'a, false, 1, 2, binary_codec_sv2::::datatypes::non_copy_data_types::B064K::{constant#3}>>,
) -> EncodableField<'a>
fn from( v: Seq064K<'a, Inner<'a, false, 1, 2, binary_codec_sv2::::datatypes::non_copy_data_types::B064K::{constant#3}>>, ) -> EncodableField<'a>
Converts to this type from the input type.
Source§impl<'a> From<Seq064K<'a, Inner<'a, false, 1, 3, binary_codec_sv2::::datatypes::non_copy_data_types::B016M::{constant#3}>>> for EncodableField<'a>
impl<'a> From<Seq064K<'a, Inner<'a, false, 1, 3, binary_codec_sv2::::datatypes::non_copy_data_types::B016M::{constant#3}>>> for EncodableField<'a>
Source§fn from(
v: Seq064K<'a, Inner<'a, false, 1, 3, binary_codec_sv2::::datatypes::non_copy_data_types::B016M::{constant#3}>>,
) -> EncodableField<'a>
fn from( v: Seq064K<'a, Inner<'a, false, 1, 3, binary_codec_sv2::::datatypes::non_copy_data_types::B016M::{constant#3}>>, ) -> EncodableField<'a>
Converts to this type from the input type.
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§fn from(v: Seq064K<'a, Inner<'a, true, 32, 0, 0>>) -> EncodableField<'a>
fn from(v: Seq064K<'a, Inner<'a, true, 32, 0, 0>>) -> EncodableField<'a>
Converts to this type from the input type.
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§fn from(v: Seq064K<'a, Inner<'a, true, 64, 0, 0>>) -> EncodableField<'a>
fn from(v: Seq064K<'a, Inner<'a, true, 64, 0, 0>>) -> EncodableField<'a>
Converts to this type from the input type.
Source§impl From<Slice> for EncodableField<'_>
impl From<Slice> for EncodableField<'_>
Source§fn from(_v: Slice) -> EncodableField<'_>
fn from(_v: Slice) -> EncodableField<'_>
Converts to this type from the input type.
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§fn from(v: Sv2Option<'_, Inner<'a, false, 1, 1, 255>>) -> EncodableField<'a>
fn from(v: Sv2Option<'_, Inner<'a, false, 1, 1, 255>>) -> EncodableField<'a>
Converts to this type from the input type.
Source§impl<'a> From<Sv2Option<'a, Inner<'a, false, 1, 2, binary_codec_sv2::::datatypes::non_copy_data_types::B064K::{constant#3}>>> for EncodableField<'a>
impl<'a> From<Sv2Option<'a, Inner<'a, false, 1, 2, binary_codec_sv2::::datatypes::non_copy_data_types::B064K::{constant#3}>>> for EncodableField<'a>
Source§fn from(
v: Sv2Option<'_, Inner<'a, false, 1, 2, binary_codec_sv2::::datatypes::non_copy_data_types::B064K::{constant#3}>>,
) -> EncodableField<'a>
fn from( v: Sv2Option<'_, Inner<'a, false, 1, 2, binary_codec_sv2::::datatypes::non_copy_data_types::B064K::{constant#3}>>, ) -> EncodableField<'a>
Converts to this type from the input type.
Source§impl<'a> From<Sv2Option<'a, Inner<'a, false, 1, 3, binary_codec_sv2::::datatypes::non_copy_data_types::B016M::{constant#3}>>> for EncodableField<'a>
impl<'a> From<Sv2Option<'a, Inner<'a, false, 1, 3, binary_codec_sv2::::datatypes::non_copy_data_types::B016M::{constant#3}>>> for EncodableField<'a>
Source§fn from(
v: Sv2Option<'_, Inner<'a, false, 1, 3, binary_codec_sv2::::datatypes::non_copy_data_types::B016M::{constant#3}>>,
) -> EncodableField<'a>
fn from( v: Sv2Option<'_, Inner<'a, false, 1, 3, binary_codec_sv2::::datatypes::non_copy_data_types::B016M::{constant#3}>>, ) -> EncodableField<'a>
Converts to this type from the input type.
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§fn from(v: Sv2Option<'_, Inner<'a, true, 32, 0, 0>>) -> EncodableField<'a>
fn from(v: Sv2Option<'_, Inner<'a, true, 32, 0, 0>>) -> EncodableField<'a>
Converts to this type from the input type.
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§fn from(v: Sv2Option<'_, Inner<'a, true, 64, 0, 0>>) -> EncodableField<'a>
fn from(v: Sv2Option<'_, Inner<'a, true, 64, 0, 0>>) -> EncodableField<'a>
Converts to this type from the input type.
Source§impl From<U24> for EncodableField<'_>
impl From<U24> for EncodableField<'_>
Source§fn from(v: U24) -> EncodableField<'_>
fn from(v: U24) -> EncodableField<'_>
Converts to this type from the input type.
Source§impl From<bool> for EncodableField<'_>
impl From<bool> for EncodableField<'_>
Source§fn from(v: bool) -> EncodableField<'_>
fn from(v: bool) -> EncodableField<'_>
Converts to this type from the input type.
Source§impl From<f32> for EncodableField<'_>
impl From<f32> for EncodableField<'_>
Source§fn from(v: f32) -> EncodableField<'_>
fn from(v: f32) -> EncodableField<'_>
Converts to this type from the input type.
Source§impl From<u16> for EncodableField<'_>
impl From<u16> for EncodableField<'_>
Source§fn from(v: u16) -> EncodableField<'_>
fn from(v: u16) -> EncodableField<'_>
Converts to this type from the input type.
Source§impl From<u32> for EncodableField<'_>
impl From<u32> for EncodableField<'_>
Source§fn from(v: u32) -> EncodableField<'_>
fn from(v: u32) -> EncodableField<'_>
Converts to this type from the input type.
Source§impl From<u64> for EncodableField<'_>
impl From<u64> for EncodableField<'_>
Source§fn from(v: u64) -> EncodableField<'_>
fn from(v: u64) -> EncodableField<'_>
Converts to this type from the input type.
Source§impl From<u8> for EncodableField<'_>
impl From<u8> for EncodableField<'_>
Source§fn from(v: u8) -> EncodableField<'_>
fn from(v: u8) -> EncodableField<'_>
Converts to this type from the input type.
Source§impl GetSize for EncodableField<'_>
impl GetSize for EncodableField<'_>
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