Derive Macro ByteEq
#[derive(ByteEq)]
{
// Attributes available to this derive:
#[zerocopy]
}
Expand description
Derives optimized [PartialEq] and [Eq] implementations.
This derive can be applied to structs and enums implementing both
Immutable and IntoBytes; e.g.:
#[derive(ByteEq, Immutable, IntoBytes)]
#[repr(C)]
struct MyStruct {
...
}
#[derive(ByteEq, Immutable, IntoBytes)]
#[repr(u8)]
enum MyEnum {
...
}The standard library’s [derive(Eq, PartialEq)][derive@PartialEq] computes
equality by individually comparing each field. Instead, the implementation
of [PartialEq::eq] emitted by derive(ByteHash) converts the entirety of
self and other to byte slices and compares those slices for equality.
This may have performance advantages.