Trait Encodable

Source
pub trait Encodable: Sized {
    type EncoderArray: EncoderArray<Self>;

    // Required method
    fn encode_root<O: EncodeOptions>(
        &self,
        stream: &mut EncoderStream<'_, O>,
    ) -> RootTypeId;
}

Required Associated Types§

Source

type EncoderArray: EncoderArray<Self>

Required Methods§

Source

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

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 Encodable for bool

Source§

type EncoderArray = Vec<bool>

Source§

fn encode_root<O: EncodeOptions>( &self, _stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl Encodable for f32

Source§

type EncoderArray = Vec<f32>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl Encodable for f64

Source§

type EncoderArray = Vec<f64>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl Encodable for u8

Source§

type EncoderArray = Vec<u8>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl Encodable for u16

Source§

type EncoderArray = Vec<u16>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl Encodable for u32

Source§

type EncoderArray = Vec<u32>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl Encodable for u64

Source§

type EncoderArray = Vec<u64>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl Encodable for String

Source§

type EncoderArray = Vec<&'static String>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<K: Encodable, V: Encodable, S: Default + BuildHasher> Encodable for HashMap<K, V, S>

Source§

type EncoderArray = HashMapArrayEncoder<<K as Encodable>::EncoderArray, <V as Encodable>::EncoderArray, S>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T0: Encodable, T1: Encodable> Encodable for (T0, T1)

Source§

type EncoderArray = (<T0 as Encodable>::EncoderArray, <T1 as Encodable>::EncoderArray)

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T0: Encodable, T1: Encodable, T2: Encodable> Encodable for (T0, T1, T2)

Source§

type EncoderArray = (<T0 as Encodable>::EncoderArray, <T1 as Encodable>::EncoderArray, <T2 as Encodable>::EncoderArray)

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T0: Encodable, T1: Encodable, T2: Encodable, T3: Encodable> Encodable for (T0, T1, T2, T3)

Source§

type EncoderArray = (<T0 as Encodable>::EncoderArray, <T1 as Encodable>::EncoderArray, <T2 as Encodable>::EncoderArray, <T3 as Encodable>::EncoderArray)

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

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

Source§

type EncoderArray = (<T0 as Encodable>::EncoderArray, <T1 as Encodable>::EncoderArray, <T2 as Encodable>::EncoderArray, <T3 as Encodable>::EncoderArray, <T4 as Encodable>::EncoderArray)

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

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

Source§

type EncoderArray = (<T0 as Encodable>::EncoderArray, <T1 as Encodable>::EncoderArray, <T2 as Encodable>::EncoderArray, <T3 as Encodable>::EncoderArray, <T4 as Encodable>::EncoderArray, <T5 as Encodable>::EncoderArray)

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for Option<T>

Source§

type EncoderArray = NullableEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 2]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 3]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 4]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 5]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 6]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 7]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 8]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 9]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 10]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 11]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 12]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 13]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 14]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 15]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 16]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 17]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 18]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 19]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 20]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 32]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 64]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 128]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 256]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for [T; 512]

Source§

type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for Box<T>

Source§

type EncoderArray = BoxEncoderArray<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Source§

impl<T: Encodable> Encodable for Vec<T>

Source§

type EncoderArray = VecArrayEncoder<<T as Encodable>::EncoderArray>

Source§

fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId

Implementors§