Skip to main content

ValueDecode

Trait ValueDecode 

Source
pub trait ValueDecode: 'static + Sized {
    const DECODE: &'static ValueDecodeSpec;
}
Expand description

Describes the encoded representation, independently of reflection and memory layout. A handwritten encoder can delegate to the type it actually writes:

use cu_bincode::{ValueDecode, ValueDecodeSpec};
struct Orientation([f32; 4]);
impl ValueDecode for Orientation {
    const DECODE: &'static ValueDecodeSpec = <[f32; 4] as ValueDecode>::DECODE;
}

Required Associated Constants§

Source

const DECODE: &'static ValueDecodeSpec

Complete wire recipe for this encoding.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl ValueDecode for &'static str

Source§

impl ValueDecode for ()

Source§

impl ValueDecode for String

Available on crate feature alloc only.
Source§

impl ValueDecode for bool

Source§

impl ValueDecode for char

Source§

impl ValueDecode for f32

Source§

impl ValueDecode for f64

Source§

impl ValueDecode for i8

Source§

impl ValueDecode for i16

Source§

impl ValueDecode for i32

Source§

impl ValueDecode for i64

Source§

impl ValueDecode for i128

Source§

impl ValueDecode for isize

Source§

impl ValueDecode for u8

Source§

impl ValueDecode for u16

Source§

impl ValueDecode for u32

Source§

impl ValueDecode for u64

Source§

impl ValueDecode for u128

Source§

impl ValueDecode for usize

Source§

impl<A: ValueDecode, B: ValueDecode, C: ValueDecode, D: ValueDecode, E: ValueDecode, F: ValueDecode, G: ValueDecode, H: ValueDecode, I: ValueDecode, J: ValueDecode, K: ValueDecode, L: ValueDecode> ValueDecode for (A, B, C, D, E, F, G, H, I, J, K, L)

Source§

impl<A: ValueDecode, B: ValueDecode, C: ValueDecode, D: ValueDecode, E: ValueDecode, F: ValueDecode, G: ValueDecode, H: ValueDecode, I: ValueDecode, J: ValueDecode, K: ValueDecode> ValueDecode for (A, B, C, D, E, F, G, H, I, J, K)

Source§

impl<A: ValueDecode, B: ValueDecode, C: ValueDecode, D: ValueDecode, E: ValueDecode, F: ValueDecode, G: ValueDecode, H: ValueDecode, I: ValueDecode, J: ValueDecode> ValueDecode for (A, B, C, D, E, F, G, H, I, J)

Source§

impl<A: ValueDecode, B: ValueDecode, C: ValueDecode, D: ValueDecode, E: ValueDecode, F: ValueDecode, G: ValueDecode, H: ValueDecode, I: ValueDecode> ValueDecode for (A, B, C, D, E, F, G, H, I)

Source§

impl<A: ValueDecode, B: ValueDecode, C: ValueDecode, D: ValueDecode, E: ValueDecode, F: ValueDecode, G: ValueDecode, H: ValueDecode> ValueDecode for (A, B, C, D, E, F, G, H)

Source§

impl<A: ValueDecode, B: ValueDecode, C: ValueDecode, D: ValueDecode, E: ValueDecode, F: ValueDecode, G: ValueDecode> ValueDecode for (A, B, C, D, E, F, G)

Source§

impl<A: ValueDecode, B: ValueDecode, C: ValueDecode, D: ValueDecode, E: ValueDecode, F: ValueDecode> ValueDecode for (A, B, C, D, E, F)

Source§

impl<A: ValueDecode, B: ValueDecode, C: ValueDecode, D: ValueDecode, E: ValueDecode> ValueDecode for (A, B, C, D, E)

Source§

impl<A: ValueDecode, B: ValueDecode, C: ValueDecode, D: ValueDecode> ValueDecode for (A, B, C, D)

Source§

impl<A: ValueDecode, B: ValueDecode, C: ValueDecode> ValueDecode for (A, B, C)

Source§

impl<A: ValueDecode, B: ValueDecode> ValueDecode for (A, B)

Source§

impl<A: ValueDecode> ValueDecode for (A,)

Source§

impl<K: ValueDecode, V: ValueDecode, S: 'static> ValueDecode for HashMap<K, V, S>

Available on crate feature std only.
Source§

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

Available on crate feature alloc only.
Source§

impl<T: 'static> ValueDecode for PhantomData<T>

Source§

impl<T: ValueDecode, S: 'static> ValueDecode for HashSet<T, S>

Available on crate feature std only.
Source§

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

Source§

impl<T: ValueDecode> ValueDecode for &'static T

Source§

impl<T: ValueDecode> ValueDecode for &'static [T]

Source§

impl<T: ValueDecode> ValueDecode for Arc<T>

Available on crate feature alloc only.
Source§

impl<T: ValueDecode> ValueDecode for BTreeSet<T>

Available on crate feature alloc only.
Source§

impl<T: ValueDecode> ValueDecode for Box<T>

Available on crate feature alloc only.
Source§

impl<T: ValueDecode> ValueDecode for Option<T>

Source§

impl<T: ValueDecode> ValueDecode for Rc<T>

Available on crate feature alloc only.
Source§

impl<T: ValueDecode> ValueDecode for Vec<T>

Available on crate feature alloc only.
Source§

impl<T: ValueDecode> ValueDecode for VecDeque<T>

Available on crate feature alloc only.

Implementors§