Fixed Hash
Provides macros to construct custom fixed-size hash types.
Examples
Simple 256 bit (32 bytes) hash type.
use construct_fixed_hash;
construct_fixed_hash!
Opt-in to add conversions between differently sized hashes.
construct_fixed_hash!
construct_fixed_hash!
// auto-implement conversions between H256 and H160
impl_fixed_hash_conversions!;
// now use the generated conversions
assert_eq!;
assert_eq!;
It is possible to add attributes to your types, for example to make them serializable.
construct_fixed_hash!
Features
By default this is an standard library depending crate.
For a #[no_std] environment use it as follows:
fixed-hash = { version = "0.3", default-features = false }
Available Features
std: Use the standard library instead of the core library.- Using this feature enables the following features
rustc-hex/stdrand/stdbyteorder/std
- Enabled by default.
- Using this feature enables the following features
libc: Uselibcfor implementations ofPartialEqandOrd.- Enabled by default.
rand: Provide API based on therandcrate.- Enabled by default.
byteorder: Provide API based on thebyteordercrate.- Enabled by default.
quickcheck: Providequickcheckimplementation for hash types.- Disabled by default.
api-dummy: Generate a dummy hash type for API documentation.- Enabled by default at
docs.rs
- Enabled by default at
arbitrary: Allow for creation of a hash from random unstructured input.- Disabled by default.