pub trait Encodable: Sized {
type EncoderArray: EncoderArray<Self>;
// Required method
fn encode_root<O: EncodeOptions>(
&self,
stream: &mut EncoderStream<'_, O>,
) -> RootTypeId;
}Required Associated Types§
type EncoderArray: EncoderArray<Self>
Required Methods§
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
Available on crate feature encode only.
impl Encodable for bool
Available on crate feature
encode only.type EncoderArray = Vec<bool>
fn encode_root<O: EncodeOptions>( &self, _stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl Encodable for f32
Available on crate feature encode only.
impl Encodable for f32
Available on crate feature
encode only.type EncoderArray = Vec<f32>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl Encodable for f64
Available on crate feature encode only.
impl Encodable for f64
Available on crate feature
encode only.type EncoderArray = Vec<f64>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl Encodable for u8
Available on crate feature encode only.
impl Encodable for u8
Available on crate feature
encode only.type EncoderArray = Vec<u8>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl Encodable for u16
Available on crate feature encode only.
impl Encodable for u16
Available on crate feature
encode only.type EncoderArray = Vec<u16>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl Encodable for u32
Available on crate feature encode only.
impl Encodable for u32
Available on crate feature
encode only.type EncoderArray = Vec<u32>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl Encodable for u64
Available on crate feature encode only.
impl Encodable for u64
Available on crate feature
encode only.type EncoderArray = Vec<u64>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl Encodable for String
Available on crate feature encode only.
impl Encodable for String
Available on crate feature
encode only.type EncoderArray = Vec<&'static String>
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>
Available on crate feature encode only.
impl<K: Encodable, V: Encodable, S: Default + BuildHasher> Encodable for HashMap<K, V, S>
Available on crate feature
encode only.type EncoderArray = HashMapArrayEncoder<<K as Encodable>::EncoderArray, <V as Encodable>::EncoderArray, S>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T0: Encodable, T1: Encodable> Encodable for (T0, T1)
Available on crate feature encode only.
impl<T0: Encodable, T1: Encodable> Encodable for (T0, T1)
Available on crate feature
encode only.type EncoderArray = (<T0 as Encodable>::EncoderArray, <T1 as Encodable>::EncoderArray)
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T0: Encodable, T1: Encodable, T2: Encodable> Encodable for (T0, T1, T2)
Available on crate feature encode only.
impl<T0: Encodable, T1: Encodable, T2: Encodable> Encodable for (T0, T1, T2)
Available on crate feature
encode only.type EncoderArray = (<T0 as Encodable>::EncoderArray, <T1 as Encodable>::EncoderArray, <T2 as Encodable>::EncoderArray)
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)
Available on crate feature encode only.
impl<T0: Encodable, T1: Encodable, T2: Encodable, T3: Encodable> Encodable for (T0, T1, T2, T3)
Available on crate feature
encode only.type EncoderArray = (<T0 as Encodable>::EncoderArray, <T1 as Encodable>::EncoderArray, <T2 as Encodable>::EncoderArray, <T3 as Encodable>::EncoderArray)
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)
Available on crate feature encode only.
impl<T0: Encodable, T1: Encodable, T2: Encodable, T3: Encodable, T4: Encodable> Encodable for (T0, T1, T2, T3, T4)
Available on crate feature
encode only.type EncoderArray = (<T0 as Encodable>::EncoderArray, <T1 as Encodable>::EncoderArray, <T2 as Encodable>::EncoderArray, <T3 as Encodable>::EncoderArray, <T4 as Encodable>::EncoderArray)
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)
Available on crate feature encode only.
impl<T0: Encodable, T1: Encodable, T2: Encodable, T3: Encodable, T4: Encodable, T5: Encodable> Encodable for (T0, T1, T2, T3, T4, T5)
Available on crate feature
encode only.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)
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for Option<T>
Available on crate feature encode only.
impl<T: Encodable> Encodable for Option<T>
Available on crate feature
encode only.type EncoderArray = NullableEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 2]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 2]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 3]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 3]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 4]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 4]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 5]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 5]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 6]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 6]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 7]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 7]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 8]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 8]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 9]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 9]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 10]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 10]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 11]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 11]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 12]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 12]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 13]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 13]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 14]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 14]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 15]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 15]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 16]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 16]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 17]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 17]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 18]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 18]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 19]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 19]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 20]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 20]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 32]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 32]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 64]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 64]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 128]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 128]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 256]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 256]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for [T; 512]
Available on crate feature encode only.
impl<T: Encodable> Encodable for [T; 512]
Available on crate feature
encode only.type EncoderArray = ArrayEncoder<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for Box<T>
Available on crate feature encode only.
impl<T: Encodable> Encodable for Box<T>
Available on crate feature
encode only.type EncoderArray = BoxEncoderArray<<T as Encodable>::EncoderArray>
fn encode_root<O: EncodeOptions>( &self, stream: &mut EncoderStream<'_, O>, ) -> RootTypeId
Source§impl<T: Encodable> Encodable for Vec<T>
Available on crate feature encode only.
impl<T: Encodable> Encodable for Vec<T>
Available on crate feature
encode only.