pub struct SameKey(pub Shape);Expand description
A key that hashes and compares by Shape::is_same: node and placement,
ignoring orientation.
Wrapping rather than offering a custom hasher, because the danger being guarded against is a map whose comparison and hash disagree: a set keyed on “same” semantics but hashing the orientation as well will silently hold both an edge and its reverse. Making the equivalence part of the type means the two can never drift apart.
Tuple Fields§
§0: ShapeTrait Implementations§
impl Eq for SameKey
Auto Trait Implementations§
impl Freeze for SameKey
impl RefUnwindSafe for SameKey
impl Send for SameKey
impl Sync for SameKey
impl Unpin for SameKey
impl UnsafeUnpin for SameKey
impl UnwindSafe for SameKey
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> Scalar for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.