Trait bitcode::Decode

source ·
pub trait Decode: Sized { }
Expand description

A type which can be decoded from bytes with decode.

Must use #[derive(Decode)] to implement.

#[derive(bitcode::Decode)]
struct MyStruct {
    a: u32,
    b: bool,
    // If you want to use serde::Deserialize on a field instead of bitcode::Decode.
    #[cfg(feature = "serde")]
    #[bitcode(with_serde)]
    c: String,
}

Implementations on Foreign Types§

source§

impl<T0, T1, T2, T3, T4, T5, T6, T7> Decode for (T0, T1, T2, T3, T4, T5, T6, T7)where T0: Decode, T1: Decode, T2: Decode, T3: Decode, T4: Decode, T5: Decode, T6: Decode, T7: Decode,

source§

impl<T: Decode> Decode for Rc<[T]>

source§

impl<T: Decode, E: Decode> Decode for Result<T, E>

source§

impl<T: Decode + Ord> Decode for BinaryHeap<T>

source§

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

source§

impl Decode for u8

source§

impl<T0, T1, T2> Decode for (T0, T1, T2)where T0: Decode, T1: Decode, T2: Decode,

source§

impl Decode for i8

source§

impl<T0, T1, T2, T3, T4, T5, T6> Decode for (T0, T1, T2, T3, T4, T5, T6)where T0: Decode, T1: Decode, T2: Decode, T3: Decode, T4: Decode, T5: Decode, T6: Decode,

source§

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

source§

impl Decode for Rc<str>

source§

impl<T: Decode> Decode for Wrapping<T>

source§

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

source§

impl Decode for NonZeroI64

source§

impl<T> Decode for PhantomData<T>

source§

impl<T: Decode> Decode for Arc<T>

source§

impl Decode for Arc<str>

source§

impl Decode for u64

source§

impl Decode for i64

source§

impl Decode for SocketAddrV4

source§

impl Decode for Ipv4Addr

source§

impl<const N: usize, T: Decode> Decode for [T; N]

source§

impl Decode for NonZeroUsize

source§

impl Decode for u32

source§

impl Decode for NonZeroI16

source§

impl Decode for NonZeroI32

source§

impl Decode for i32

source§

impl Decode for NonZeroU16

source§

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

source§

impl<T: Decode> Decode for Vec<T>

source§

impl Decode for SocketAddrV6

source§

impl<T: Decode + Hash + Eq> Decode for HashSet<T>

source§

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

source§

impl<K: Decode + Hash + Eq, V: Decode> Decode for HashMap<K, V>

source§

impl Decode for IpAddr

source§

impl<K: Decode + Ord, V: Decode> Decode for BTreeMap<K, V>

source§

impl Decode for NonZeroIsize

source§

impl Decode for usize

source§

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

source§

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

source§

impl Decode for NonZeroU64

source§

impl<T: Decode + Ord> Decode for BTreeSet<T>

source§

impl Decode for Box<str>

source§

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

source§

impl<T: Decode> Decode for LinkedList<T>

source§

impl<T: Decode> Decode for Arc<[T]>

source§

impl Decode for f64

source§

impl Decode for isize

source§

impl Decode for f32

source§

impl<T: Decode> Decode for VecDeque<T>

source§

impl<T: Decode> Decode for Reverse<T>

source§

impl Decode for String

source§

impl<T: Decode> Decode for Rc<T>

source§

impl Decode for char

source§

impl Decode for SocketAddr

source§

impl Decode for bool

source§

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

source§

impl<T: Decode> Decode for Box<[T]>

source§

impl Decode for ()

source§

impl Decode for NonZeroU8

source§

impl Decode for u16

source§

impl Decode for NonZeroU32

source§

impl<T0> Decode for (T0,)where T0: Decode,

source§

impl<T0, T1> Decode for (T0, T1)where T0: Decode, T1: Decode,

source§

impl<T: Decode> Decode for Box<T>

source§

impl Decode for NonZeroI8

source§

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

source§

impl<T: Decode> Decode for Option<T>

source§

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

source§

impl Decode for Ipv6Addr

source§

impl Decode for i16

Implementors§