Skip to main content

Fingerprint

Trait Fingerprint 

Source
pub trait Fingerprint {
    const TYPE_FINGERPRINT: u64;

    // Provided method
    fn fingerprint(config: Config) -> u64 { ... }
}
Available on crate feature fingerprint only.
Expand description

Stable structural identity for a serializable Rust type.

Required Associated Constants§

Source

const TYPE_FINGERPRINT: u64

Hash of names, types, declaration order, and enum variant order.

Provided Methods§

Source

fn fingerprint(config: Config) -> u64

Combines the type identity with every active codec configuration field.

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 Fingerprint for ()

Source§

impl Fingerprint for String

Source§

impl Fingerprint for bool

Source§

impl Fingerprint for char

Source§

impl Fingerprint for f32

Source§

impl Fingerprint for f64

Source§

impl Fingerprint for i8

Source§

impl Fingerprint for i16

Source§

impl Fingerprint for i32

Source§

impl Fingerprint for i64

Source§

impl Fingerprint for i128

Source§

impl Fingerprint for str

Source§

impl Fingerprint for u8

Source§

impl Fingerprint for u16

Source§

impl Fingerprint for u32

Source§

impl Fingerprint for u64

Source§

impl Fingerprint for u128

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

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

Source§

impl<K: Fingerprint, V: Fingerprint, S: BuildHasher> Fingerprint for HashMap<K, V, S>

Available on crate feature std only.
Source§

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

Source§

impl<T: Fingerprint + ?Sized> Fingerprint for &T

Source§

impl<T: Fingerprint, S: BuildHasher> Fingerprint for HashSet<T, S>

Available on crate feature std only.
Source§

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

Source§

impl<T: Fingerprint> Fingerprint for BTreeSet<T>

Source§

impl<T: Fingerprint> Fingerprint for LinkedList<T>

Source§

impl<T: Fingerprint> Fingerprint for Option<T>

Source§

impl<T: Fingerprint> Fingerprint for Vec<T>

Source§

impl<T: Fingerprint> Fingerprint for VecDeque<T>

Implementors§