Skip to content

Latest commit

 

History

History
25 lines (18 loc) · 857 Bytes

README.md

File metadata and controls

25 lines (18 loc) · 857 Bytes

Easy Address Comparison

GitHub license GitHub Workflow Status Crates.io

A set of macros to allow your types to be compared based on where they are stored in memory. This is useful when two instances of a type should not be considered equal unless they are literally the same instance.

With this crate, you can derive AddressEq, AddressOrd, or AddressHash depending on your needs.

Usage

use address_cmp::AddressEq;

#[derive(AddressEq, Debug)]
struct A {
  pub a: u8,
}

let a1 = A { a: 0 };
let a2 = A { a: 0 };

assert_ne!(a1, a2);
assert_eq!(a1, a1);