ByteConverter

Trait ByteConverter 

Source
pub trait ByteConverter {
    // Required methods
    fn append_to_bytes(
        &self,
        bytes: &mut Vec<u8>,
    ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>;
    fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>(
        bytes: &'a TBytes,
        index: &mut usize,
    ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
       where Self: Sized;

    // Provided methods
    fn to_vec_bytes(
        &self,
    ) -> Result<Vec<u8>, Box<dyn Error + Send + Sync + 'static>> { ... }
    fn to_vec_bytes_with_capacity(
        &self,
        capacity: usize,
    ) -> Result<Vec<u8>, Box<dyn Error + Send + Sync + 'static>> { ... }
    fn clone_via_bytes(
        &self,
    ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
       where Self: Sized { ... }
    fn deserialize_from_bytes<'a, TBytes: AsRef<[u8]>>(
        bytes: &'a TBytes,
    ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
       where Self: Sized { ... }
    fn cast_via_bytes<TByteConverter>(
        &self,
    ) -> Result<TByteConverter, Box<dyn Error + Send + Sync + 'static>>
       where TByteConverter: ByteConverter { ... }
}

Required Methods§

Source

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Provided Methods§

Source

fn to_vec_bytes( &self, ) -> Result<Vec<u8>, Box<dyn Error + Send + Sync + 'static>>

Source

fn to_vec_bytes_with_capacity( &self, capacity: usize, ) -> Result<Vec<u8>, Box<dyn Error + Send + Sync + 'static>>

Source

fn clone_via_bytes( &self, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source

fn deserialize_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source

fn cast_via_bytes<TByteConverter>( &self, ) -> Result<TByteConverter, Box<dyn Error + Send + Sync + 'static>>
where TByteConverter: ByteConverter,

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.

Implementations on Foreign Types§

Source§

impl ByteConverter for bool

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl ByteConverter for char

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl ByteConverter for f32

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl ByteConverter for f64

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl ByteConverter for i8

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl ByteConverter for i16

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl ByteConverter for i32

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl ByteConverter for i64

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl ByteConverter for i128

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl ByteConverter for isize

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl ByteConverter for u8

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl ByteConverter for u16

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl ByteConverter for u32

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl ByteConverter for u64

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl ByteConverter for u128

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl ByteConverter for ()

Source§

fn append_to_bytes( &self, _: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( _: &'a TBytes, _: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl ByteConverter for usize

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl ByteConverter for CString

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl ByteConverter for String

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl ByteConverter for Duration

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl ByteConverter for PathBuf

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter> ByteConverter for (T1,)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter> ByteConverter for (T1, T2)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter> ByteConverter for (T1, T2, T3)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter> ByteConverter for (T1, T2, T3, T4)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter, T7: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6, T7)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter, T7: ByteConverter, T8: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6, T7, T8)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter, T7: ByteConverter, T8: ByteConverter, T9: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6, T7, T8, T9)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter, T7: ByteConverter, T8: ByteConverter, T9: ByteConverter, T10: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter, T7: ByteConverter, T8: ByteConverter, T9: ByteConverter, T10: ByteConverter, T11: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter, T7: ByteConverter, T8: ByteConverter, T9: ByteConverter, T10: ByteConverter, T11: ByteConverter, T12: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter, T7: ByteConverter, T8: ByteConverter, T9: ByteConverter, T10: ByteConverter, T11: ByteConverter, T12: ByteConverter, T13: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter, T7: ByteConverter, T8: ByteConverter, T9: ByteConverter, T10: ByteConverter, T11: ByteConverter, T12: ByteConverter, T13: ByteConverter, T14: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter, T7: ByteConverter, T8: ByteConverter, T9: ByteConverter, T10: ByteConverter, T11: ByteConverter, T12: ByteConverter, T13: ByteConverter, T14: ByteConverter, T15: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter, T7: ByteConverter, T8: ByteConverter, T9: ByteConverter, T10: ByteConverter, T11: ByteConverter, T12: ByteConverter, T13: ByteConverter, T14: ByteConverter, T15: ByteConverter, T16: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter, T7: ByteConverter, T8: ByteConverter, T9: ByteConverter, T10: ByteConverter, T11: ByteConverter, T12: ByteConverter, T13: ByteConverter, T14: ByteConverter, T15: ByteConverter, T16: ByteConverter, T17: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter, T7: ByteConverter, T8: ByteConverter, T9: ByteConverter, T10: ByteConverter, T11: ByteConverter, T12: ByteConverter, T13: ByteConverter, T14: ByteConverter, T15: ByteConverter, T16: ByteConverter, T17: ByteConverter, T18: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter, T7: ByteConverter, T8: ByteConverter, T9: ByteConverter, T10: ByteConverter, T11: ByteConverter, T12: ByteConverter, T13: ByteConverter, T14: ByteConverter, T15: ByteConverter, T16: ByteConverter, T17: ByteConverter, T18: ByteConverter, T19: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter, T7: ByteConverter, T8: ByteConverter, T9: ByteConverter, T10: ByteConverter, T11: ByteConverter, T12: ByteConverter, T13: ByteConverter, T14: ByteConverter, T15: ByteConverter, T16: ByteConverter, T17: ByteConverter, T18: ByteConverter, T19: ByteConverter, T20: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter, T7: ByteConverter, T8: ByteConverter, T9: ByteConverter, T10: ByteConverter, T11: ByteConverter, T12: ByteConverter, T13: ByteConverter, T14: ByteConverter, T15: ByteConverter, T16: ByteConverter, T17: ByteConverter, T18: ByteConverter, T19: ByteConverter, T20: ByteConverter, T21: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter, T7: ByteConverter, T8: ByteConverter, T9: ByteConverter, T10: ByteConverter, T11: ByteConverter, T12: ByteConverter, T13: ByteConverter, T14: ByteConverter, T15: ByteConverter, T16: ByteConverter, T17: ByteConverter, T18: ByteConverter, T19: ByteConverter, T20: ByteConverter, T21: ByteConverter, T22: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter, T7: ByteConverter, T8: ByteConverter, T9: ByteConverter, T10: ByteConverter, T11: ByteConverter, T12: ByteConverter, T13: ByteConverter, T14: ByteConverter, T15: ByteConverter, T16: ByteConverter, T17: ByteConverter, T18: ByteConverter, T19: ByteConverter, T20: ByteConverter, T21: ByteConverter, T22: ByteConverter, T23: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter, T7: ByteConverter, T8: ByteConverter, T9: ByteConverter, T10: ByteConverter, T11: ByteConverter, T12: ByteConverter, T13: ByteConverter, T14: ByteConverter, T15: ByteConverter, T16: ByteConverter, T17: ByteConverter, T18: ByteConverter, T19: ByteConverter, T20: ByteConverter, T21: ByteConverter, T22: ByteConverter, T23: ByteConverter, T24: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter, T7: ByteConverter, T8: ByteConverter, T9: ByteConverter, T10: ByteConverter, T11: ByteConverter, T12: ByteConverter, T13: ByteConverter, T14: ByteConverter, T15: ByteConverter, T16: ByteConverter, T17: ByteConverter, T18: ByteConverter, T19: ByteConverter, T20: ByteConverter, T21: ByteConverter, T22: ByteConverter, T23: ByteConverter, T24: ByteConverter, T25: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter, T7: ByteConverter, T8: ByteConverter, T9: ByteConverter, T10: ByteConverter, T11: ByteConverter, T12: ByteConverter, T13: ByteConverter, T14: ByteConverter, T15: ByteConverter, T16: ByteConverter, T17: ByteConverter, T18: ByteConverter, T19: ByteConverter, T20: ByteConverter, T21: ByteConverter, T22: ByteConverter, T23: ByteConverter, T24: ByteConverter, T25: ByteConverter, T26: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T1: ByteConverter, T2: ByteConverter, T3: ByteConverter, T4: ByteConverter, T5: ByteConverter, T6: ByteConverter, T7: ByteConverter, T8: ByteConverter, T9: ByteConverter, T10: ByteConverter, T11: ByteConverter, T12: ByteConverter, T13: ByteConverter, T14: ByteConverter, T15: ByteConverter, T16: ByteConverter, T17: ByteConverter, T18: ByteConverter, T19: ByteConverter, T20: ByteConverter, T21: ByteConverter, T22: ByteConverter, T23: ByteConverter, T24: ByteConverter, T25: ByteConverter, T26: ByteConverter, T27: ByteConverter> ByteConverter for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25, T26, T27)

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T: ByteConverter> ByteConverter for Option<T>

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T: ByteConverter> ByteConverter for Box<T>

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T: ByteConverter> ByteConverter for VecDeque<T>

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T: ByteConverter> ByteConverter for Rc<T>

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T: ByteConverter> ByteConverter for Arc<T>

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T: ByteConverter> ByteConverter for Vec<T>

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T: ByteConverter> ByteConverter for RefCell<T>

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T: ByteConverter> ByteConverter for Mutex<T>

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T: ByteConverter> ByteConverter for RwLock<T>

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<T: ByteConverter, const C: usize> ByteConverter for [T; C]

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Source§

impl<TKey, TValue> ByteConverter for HashMap<TKey, TValue>
where TKey: ByteConverter + Eq + Hash, TValue: ByteConverter,

Source§

fn append_to_bytes( &self, bytes: &mut Vec<u8>, ) -> Result<(), Box<dyn Error + Send + Sync + 'static>>

Source§

fn extract_from_bytes<'a, TBytes: AsRef<[u8]>>( bytes: &'a TBytes, index: &mut usize, ) -> Result<Self, Box<dyn Error + Send + Sync + 'static>>
where Self: Sized,

Implementors§

Source§

impl<TByteConverter> ByteConverter for BincodeByteConverter<TByteConverter>
where TByteConverter: ByteConverter + Serialize + DeserializeOwned,