musli_core::de

Trait Decode

Source
pub trait Decode<'de, M>: Sized {
    // Required method
    fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
       where D: Decoder<'de, Mode = M>;
}
Expand description

Trait governing how types are decoded.

This is typically implemented automatically using the Decode derive.

§Examples

use musli::Decode;

#[derive(Decode)]
struct MyType {
    data: [u8; 128],
}

Implementing manually:

use musli::{Decode, Decoder};

struct MyType {
    data: [u8; 128],
}

impl<'de, M> Decode<'de, M> for MyType {
    fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
    where
        D: Decoder<'de>,
    {
        Ok(Self {
            data: decoder.decode_array()?,
        })
    }
}

Required Methods§

Source

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Decode the given input.

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<'de> Decode<'de, Binary> for Ipv4Addr

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de> Decode<'de, Binary> for Ipv6Addr

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de> Decode<'de, Binary> for SocketAddrV4

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = Binary>,

Source§

impl<'de> Decode<'de, Binary> for SocketAddrV6

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = Binary>,

Source§

impl<'de> Decode<'de, Text> for Ipv4Addr

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de> Decode<'de, Text> for Ipv6Addr

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de> Decode<'de, Text> for SocketAddrV4

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de> Decode<'de, Text> for SocketAddrV6

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, K, V, M> Decode<'de, M> for BTreeMap<K, V>
where K: Decode<'de, M> + Ord, V: Decode<'de, M>,

Source§

fn decode<D>(_cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, K, V, M, S> Decode<'de, M> for HashMap<K, V, S>
where K: Decode<'de, M> + Eq + Hash, V: Decode<'de, M>, S: BuildHasher + Default,

Source§

fn decode<D>(_cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M> Decode<'de, M> for &'de str

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for &'de CStr

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for &'de [u8]

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for Cow<'de, str>

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M> Decode<'de, M> for Cow<'de, CStr>

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M> Decode<'de, M> for IpAddr
where IpAddrTag: Decode<'de, M>, Ipv4Addr: Decode<'de, M>, Ipv6Addr: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M> Decode<'de, M> for SocketAddr
where SocketAddrTag: Decode<'de, M>, SocketAddrV4: Decode<'de, M>, SocketAddrV6: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M> Decode<'de, M> for bool

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for char

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for f32

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for f64

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for i8

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for i16

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for i32

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for i64

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for i128

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for isize

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for u8

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for u16

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for u32

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for u64

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for u128

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for ()

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for usize

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for Box<str>

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M> Decode<'de, M> for Box<CStr>

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M> Decode<'de, M> for Box<OsStr>
where PlatformTag: Decode<'de, M>,

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M> Decode<'de, M> for Box<Path>
where PlatformTag: Decode<'de, M>,

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M> Decode<'de, M> for CString

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for Rc<CStr>

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M> Decode<'de, M> for Rc<OsStr>
where PlatformTag: Decode<'de, M>,

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M> Decode<'de, M> for Rc<Path>
where PlatformTag: Decode<'de, M>,

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M> Decode<'de, M> for String

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M> Decode<'de, M> for Arc<CStr>

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M> Decode<'de, M> for Arc<OsStr>
where PlatformTag: Decode<'de, M>,

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M> Decode<'de, M> for Arc<Path>
where PlatformTag: Decode<'de, M>,

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M> Decode<'de, M> for RangeFull

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M> Decode<'de, M> for AtomicBool

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for AtomicI8

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for AtomicI16

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for AtomicI32

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for AtomicI64

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for AtomicIsize

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for AtomicU8

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for AtomicU16

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for AtomicU32

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for AtomicU64

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for AtomicUsize

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for OsString
where PlatformTag: Decode<'de, M>,

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M> Decode<'de, M> for PathBuf
where PlatformTag: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M> Decode<'de, M> for NonZeroI8

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for NonZeroI16

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for NonZeroI32

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for NonZeroI64

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for NonZeroI128

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for NonZeroIsize

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for NonZeroU8

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for NonZeroU16

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for NonZeroU32

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for NonZeroU64

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for NonZeroU128

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M> Decode<'de, M> for NonZeroUsize

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M, T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> Decode<'de, M> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
where T0: Decode<'de, M>, T1: Decode<'de, M>, T2: Decode<'de, M>, T3: Decode<'de, M>, T4: Decode<'de, M>, T5: Decode<'de, M>, T6: Decode<'de, M>, T7: Decode<'de, M>, T8: Decode<'de, M>, T9: Decode<'de, M>, T10: Decode<'de, M>, T11: Decode<'de, M>, T12: Decode<'de, M>, T13: Decode<'de, M>, T14: Decode<'de, M>, T15: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> Decode<'de, M> for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
where T1: Decode<'de, M>, T2: Decode<'de, M>, T3: Decode<'de, M>, T4: Decode<'de, M>, T5: Decode<'de, M>, T6: Decode<'de, M>, T7: Decode<'de, M>, T8: Decode<'de, M>, T9: Decode<'de, M>, T10: Decode<'de, M>, T11: Decode<'de, M>, T12: Decode<'de, M>, T13: Decode<'de, M>, T14: Decode<'de, M>, T15: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> Decode<'de, M> for (T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
where T2: Decode<'de, M>, T3: Decode<'de, M>, T4: Decode<'de, M>, T5: Decode<'de, M>, T6: Decode<'de, M>, T7: Decode<'de, M>, T8: Decode<'de, M>, T9: Decode<'de, M>, T10: Decode<'de, M>, T11: Decode<'de, M>, T12: Decode<'de, M>, T13: Decode<'de, M>, T14: Decode<'de, M>, T15: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> Decode<'de, M> for (T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
where T3: Decode<'de, M>, T4: Decode<'de, M>, T5: Decode<'de, M>, T6: Decode<'de, M>, T7: Decode<'de, M>, T8: Decode<'de, M>, T9: Decode<'de, M>, T10: Decode<'de, M>, T11: Decode<'de, M>, T12: Decode<'de, M>, T13: Decode<'de, M>, T14: Decode<'de, M>, T15: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> Decode<'de, M> for (T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
where T4: Decode<'de, M>, T5: Decode<'de, M>, T6: Decode<'de, M>, T7: Decode<'de, M>, T8: Decode<'de, M>, T9: Decode<'de, M>, T10: Decode<'de, M>, T11: Decode<'de, M>, T12: Decode<'de, M>, T13: Decode<'de, M>, T14: Decode<'de, M>, T15: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> Decode<'de, M> for (T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
where T5: Decode<'de, M>, T6: Decode<'de, M>, T7: Decode<'de, M>, T8: Decode<'de, M>, T9: Decode<'de, M>, T10: Decode<'de, M>, T11: Decode<'de, M>, T12: Decode<'de, M>, T13: Decode<'de, M>, T14: Decode<'de, M>, T15: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> Decode<'de, M> for (T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
where T6: Decode<'de, M>, T7: Decode<'de, M>, T8: Decode<'de, M>, T9: Decode<'de, M>, T10: Decode<'de, M>, T11: Decode<'de, M>, T12: Decode<'de, M>, T13: Decode<'de, M>, T14: Decode<'de, M>, T15: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T7, T8, T9, T10, T11, T12, T13, T14, T15> Decode<'de, M> for (T7, T8, T9, T10, T11, T12, T13, T14, T15)
where T7: Decode<'de, M>, T8: Decode<'de, M>, T9: Decode<'de, M>, T10: Decode<'de, M>, T11: Decode<'de, M>, T12: Decode<'de, M>, T13: Decode<'de, M>, T14: Decode<'de, M>, T15: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T8, T9, T10, T11, T12, T13, T14, T15> Decode<'de, M> for (T8, T9, T10, T11, T12, T13, T14, T15)
where T8: Decode<'de, M>, T9: Decode<'de, M>, T10: Decode<'de, M>, T11: Decode<'de, M>, T12: Decode<'de, M>, T13: Decode<'de, M>, T14: Decode<'de, M>, T15: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T9, T10, T11, T12, T13, T14, T15> Decode<'de, M> for (T9, T10, T11, T12, T13, T14, T15)
where T9: Decode<'de, M>, T10: Decode<'de, M>, T11: Decode<'de, M>, T12: Decode<'de, M>, T13: Decode<'de, M>, T14: Decode<'de, M>, T15: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T10, T11, T12, T13, T14, T15> Decode<'de, M> for (T10, T11, T12, T13, T14, T15)
where T10: Decode<'de, M>, T11: Decode<'de, M>, T12: Decode<'de, M>, T13: Decode<'de, M>, T14: Decode<'de, M>, T15: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T11, T12, T13, T14, T15> Decode<'de, M> for (T11, T12, T13, T14, T15)
where T11: Decode<'de, M>, T12: Decode<'de, M>, T13: Decode<'de, M>, T14: Decode<'de, M>, T15: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T12, T13, T14, T15> Decode<'de, M> for (T12, T13, T14, T15)
where T12: Decode<'de, M>, T13: Decode<'de, M>, T14: Decode<'de, M>, T15: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T13, T14, T15> Decode<'de, M> for (T13, T14, T15)
where T13: Decode<'de, M>, T14: Decode<'de, M>, T15: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T14, T15> Decode<'de, M> for (T14, T15)
where T14: Decode<'de, M>, T15: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T15> Decode<'de, M> for (T15,)
where T15: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T> Decode<'de, M> for Option<T>
where T: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T> Decode<'de, M> for Box<[T]>
where T: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T> Decode<'de, M> for Box<T>
where T: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T> Decode<'de, M> for BinaryHeap<T>
where T: Decode<'de, M> + Ord,

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T> Decode<'de, M> for BTreeSet<T>
where T: Decode<'de, M> + Ord,

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T> Decode<'de, M> for VecDeque<T>
where T: Decode<'de, M>,

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T> Decode<'de, M> for Rc<T>
where T: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T> Decode<'de, M> for Arc<T>
where T: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T> Decode<'de, M> for Vec<T>
where T: Decode<'de, M>,

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T> Decode<'de, M> for PhantomData<T>

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de>,

Source§

impl<'de, M, T> Decode<'de, M> for Wrapping<T>
where T: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T> Decode<'de, M> for Range<T>
where T: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T> Decode<'de, M> for RangeFrom<T>
where T: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T> Decode<'de, M> for RangeInclusive<T>
where T: Decode<'de, M>,

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T> Decode<'de, M> for RangeTo<T>
where T: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T> Decode<'de, M> for RangeToInclusive<T>
where T: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T, S> Decode<'de, M> for HashSet<T, S>
where T: Decode<'de, M> + Eq + Hash, S: BuildHasher + Default,

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T, U> Decode<'de, M> for Result<T, U>
where T: Decode<'de, M>, U: Decode<'de, M>, ResultTag: Decode<'de, M>,

Source§

fn decode<D>(_: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Source§

impl<'de, M, T, const N: usize> Decode<'de, M> for [T; N]
where T: Decode<'de, M>,

Source§

fn decode<D>(cx: &D::Cx, decoder: D) -> Result<Self, D::Error>
where D: Decoder<'de, Mode = M>,

Implementors§