Trait hashed_type_def_core::HashedTypeDef
source · pub trait HashedTypeDef<REF = ()> {
const TYPE_HASH_NATIVE: u128;
const TYPE_HASH_LE: u128 = _;
const TYPE_HASH_BE: u128 = _;
const UUID: Uuid = _;
}
Expand description
Type hash code definition; derive macro for this trait is based on 128bit FNV-1a computed from the type definition
REF = ()
: type parameterREF
offers more flexibility to rule Only traits defined in the current crate can be implemented for arbitrary types- If
REF
is defined in another crate, thenHashedTypeDef<REF>
can be implemented for arbitrary types in that other crate - This is a stop-gap that should be avoided: the default definition with
REF = ()
should be used. - Derivation macro #[derive(HashedTypeDef)] only implements default definition with
REF = ()
- Note: the
silx-core
crate requires implementations with the default definition
- If
Required Associated Constants§
sourceconst TYPE_HASH_NATIVE: u128
const TYPE_HASH_NATIVE: u128
native hash computation
Provided Associated Constants§
sourceconst TYPE_HASH_LE: u128 = _
const TYPE_HASH_LE: u128 = _
hash encoded to little endianess
sourceconst TYPE_HASH_BE: u128 = _
const TYPE_HASH_BE: u128 = _
hash encoded to big endianess
Object Safety§
This trait is not object safe.