pub enum SEqHashKind {
Unsupported,
TreeNode,
FreeVar,
DAGNode,
ConstTreeNode,
UniqueInstance,
}Expand description
How the structural engines treat instances of a type (C++ _type_s_eq_hash_kind).
Variants§
Unsupported
Rejected by structural equality and hashing; the C++ default.
TreeNode
Compared and hashed field by field.
FreeVar
A free variable: bound by position inside a definition region, else by identity.
DAGNode
Compared field by field, and once equal, mapped so later occurrences compare by mapping.
ConstTreeNode
A tree node whose identity is checked first, as a fast path.
UniqueInstance
Compared and hashed by identity only.
Trait Implementations§
Source§impl Clone for SEqHashKind
impl Clone for SEqHashKind
Source§fn clone(&self) -> SEqHashKind
fn clone(&self) -> SEqHashKind
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SEqHashKind
impl Debug for SEqHashKind
Source§impl PartialEq for SEqHashKind
impl PartialEq for SEqHashKind
impl Copy for SEqHashKind
impl Eq for SEqHashKind
impl StructuralPartialEq for SEqHashKind
Auto Trait Implementations§
impl Freeze for SEqHashKind
impl RefUnwindSafe for SEqHashKind
impl Send for SEqHashKind
impl Sync for SEqHashKind
impl Unpin for SEqHashKind
impl UnwindSafe for SEqHashKind
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