Trait bitcode::Encode

source ·
pub trait Encode { }
Expand description

A type which can be encoded to bytes with encode.

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

#[derive(bitcode::Encode)]
// If your struct contains itself you must annotate it with `#[bitcode(recursive)]`.
// This disables certain speed optimizations that aren't possible on recursive types.
struct MyStruct {
    a: u32,
    b: bool,
    // If you want to use serde::Serialize on a field instead of bitcode::Encode.
    #[cfg(feature = "serde")]
    #[bitcode(with_serde)]
    c: String,
}

Implementations on Foreign Types§

source§

impl Encode for u64

source§

impl<T: Encode> Encode for LinkedList<T>

source§

impl Encode for i32

source§

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

source§

impl Encode for NonZeroU64

source§

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

source§

impl Encode for f64

source§

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

source§

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

source§

impl Encode for NonZeroU16

source§

impl<K: Encode, V: Encode> Encode for HashMap<K, V>

source§

impl Encode for Ipv6Addr

source§

impl Encode for SocketAddr

source§

impl Encode for u32

source§

impl<'a, T: Encode + ?Sized> Encode for &'a T

source§

impl Encode for i16

source§

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

source§

impl Encode for NonZeroI32

source§

impl Encode for NonZeroUsize

source§

impl Encode for IpAddr

source§

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

source§

impl Encode for ()

source§

impl Encode for isize

source§

impl Encode for f32

source§

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

source§

impl Encode for i8

source§

impl<T: Encode> Encode for Reverse<T>

source§

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

source§

impl Encode for NonZeroIsize

source§

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

source§

impl<T: Encode> Encode for VecDeque<T>

source§

impl Encode for NonZeroI64

source§

impl Encode for u8

source§

impl Encode for NonZeroI8

source§

impl<T: Encode + ?Sized> Encode for Box<T>

source§

impl Encode for bool

source§

impl Encode for NonZeroU32

source§

impl<T: Encode + ?Sized> Encode for Arc<T>

source§

impl<T: Encode> Encode for Option<T>

source§

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

source§

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

source§

impl Encode for char

source§

impl Encode for NonZeroU8

source§

impl Encode for SocketAddrV6

source§

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

source§

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

source§

impl<K: Encode, V: Encode> Encode for BTreeMap<K, V>

source§

impl<T> Encode for PhantomData<T>

source§

impl Encode for i64

source§

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

source§

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

source§

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

source§

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

source§

impl<T: Encode> Encode for Wrapping<T>

source§

impl<T: Encode> Encode for Vec<T>

source§

impl Encode for usize

source§

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

source§

impl Encode for String

source§

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

source§

impl<T: Encode> Encode for [T]

source§

impl Encode for u16

source§

impl<T: Encode + ?Sized> Encode for Rc<T>

source§

impl Encode for str

source§

impl Encode for SocketAddrV4

source§

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

source§

impl Encode for Ipv4Addr

source§

impl Encode for NonZeroI16

source§

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

Implementors§