Trait std::marker::StructuralPartialEq
source · [−]pub trait StructuralPartialEq { }Expand description
Required trait for constants used in pattern matches.
Any type that derives PartialEq automatically implements this trait,
regardless of whether its type-parameters implement Eq.
If a const item contains some type that does not implement this trait,
then that type either (1.) does not implement PartialEq (which means the
constant will not provide that comparison method, which code generation
assumes is available), or (2.) it implements its own version of
PartialEq (which we assume does not conform to a structural-equality
comparison).
In either of the two scenarios above, we reject usage of such a constant in a pattern match.
See also the structural match RFC, and issue 63438 which motivated migrating from attribute-based design to this trait.
Implementations on Foreign Types
impl StructuralPartialEq for FromBytesWithNulError
sourceimpl StructuralPartialEq for CpuidResult
1.27.0 · sourceimpl<'a> StructuralPartialEq for Utf8LossyChunk<'a>
sourceimpl StructuralPartialEq for FromBytesUntilNulError
sourceimpl StructuralPartialEq for CString
sourceimpl StructuralPartialEq for NulError
sourceimpl StructuralPartialEq for FromVecWithNulError
sourceimpl StructuralPartialEq for IntoStringError
sourceImplementors
impl StructuralPartialEq for BacktraceStatus
sourceimpl StructuralPartialEq for std::cmp::Ordering
1.0.0 · sourceimpl StructuralPartialEq for TryReserveErrorKind
sourceimpl StructuralPartialEq for VarError
1.0.0 · sourceimpl StructuralPartialEq for ErrorKind
1.0.0 · sourceimpl StructuralPartialEq for SeekFrom
1.0.0 · sourceimpl StructuralPartialEq for IpAddr
1.7.0 · sourceimpl StructuralPartialEq for Ipv6MulticastScope
sourceimpl StructuralPartialEq for Shutdown
1.0.0 · sourceimpl StructuralPartialEq for SocketAddr
1.0.0 · sourceimpl StructuralPartialEq for FpCategory
1.0.0 · sourceimpl StructuralPartialEq for IntErrorKind
1.55.0 · sourceimpl StructuralPartialEq for BacktraceStyle
sourceimpl StructuralPartialEq for Which
sourceimpl StructuralPartialEq for SearchStep
sourceimpl StructuralPartialEq for std::sync::atomic::Ordering
1.0.0 · sourceimpl StructuralPartialEq for RecvTimeoutError
1.12.0 · sourceimpl StructuralPartialEq for TryRecvError
1.0.0 · sourceimpl StructuralPartialEq for AllocError
sourceimpl StructuralPartialEq for Layout
1.28.0 · sourceimpl StructuralPartialEq for LayoutError
1.50.0 · sourceimpl StructuralPartialEq for TypeId
1.0.0 · sourceimpl StructuralPartialEq for CharTryFromError
1.34.0 · sourceimpl StructuralPartialEq for DecodeUtf16Error
1.9.0 · sourceimpl StructuralPartialEq for ParseCharError
1.20.0 · sourceimpl StructuralPartialEq for TryFromCharError
1.59.0 · sourceimpl StructuralPartialEq for TryReserveError
1.57.0 · sourceimpl StructuralPartialEq for Error
1.0.0 · sourceimpl StructuralPartialEq for FileType
1.1.0 · sourceimpl StructuralPartialEq for Permissions
1.0.0 · sourceimpl StructuralPartialEq for AddrParseError
1.0.0 · sourceimpl StructuralPartialEq for NonZeroI8
1.34.0 · sourceimpl StructuralPartialEq for NonZeroI16
1.34.0 · sourceimpl StructuralPartialEq for NonZeroI32
1.34.0 · sourceimpl StructuralPartialEq for NonZeroI64
1.34.0 · sourceimpl StructuralPartialEq for NonZeroI128
1.34.0 · sourceimpl StructuralPartialEq for NonZeroIsize
1.34.0 · sourceimpl StructuralPartialEq for NonZeroU8
1.28.0 · sourceimpl StructuralPartialEq for NonZeroU16
1.28.0 · sourceimpl StructuralPartialEq for NonZeroU32
1.28.0 · sourceimpl StructuralPartialEq for NonZeroU64
1.28.0 · sourceimpl StructuralPartialEq for NonZeroU128
1.28.0 · sourceimpl StructuralPartialEq for NonZeroUsize
1.28.0 · sourceimpl StructuralPartialEq for ParseFloatError
1.0.0 · sourceimpl StructuralPartialEq for ParseIntError
1.0.0 · sourceimpl StructuralPartialEq for TryFromIntError
1.34.0 · sourceimpl StructuralPartialEq for RangeFull
1.0.0 · sourceimpl StructuralPartialEq for UCred
sourceAvailable on Unix only.
impl StructuralPartialEq for InvalidHandleError
sourceAvailable on Windows only.
impl StructuralPartialEq for NullHandleError
sourceAvailable on Windows only.