Trait otter_api_tests::cmp::Eq 1.0.0[−][src]
pub trait Eq: PartialEq<Self> { }
Expand description
Trait for equality comparisons which are equivalence relations.
This means, that in addition to a == b
and a != b
being strict inverses, the equality must
be (for all a
, b
and c
):
- reflexive:
a == a
; - symmetric:
a == b
impliesb == a
; and - transitive:
a == b
andb == c
impliesa == c
.
This property cannot be checked by the compiler, and therefore Eq
implies
PartialEq
, and has no extra methods.
Derivable
This trait can be used with #[derive]
. When derive
d, because Eq
has
no extra methods, it is only informing the compiler that this is an
equivalence relation rather than a partial equivalence relation. Note that
the derive
strategy requires all fields are Eq
, which isn’t
always desired.
How can I implement Eq
?
If you cannot use the derive
strategy, specify that your type implements
Eq
, which has no methods:
enum BookFormat { Paperback, Hardback, Ebook } struct Book { isbn: i32, format: BookFormat, } impl PartialEq for Book { fn eq(&self, other: &Self) -> bool { self.isbn == other.isbn } } impl Eq for Book {}
Implementations on Foreign Types
impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Eq for unsafe fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
[src]impl<Ret, A, B, C, D, E, F, G, H> Eq for unsafe extern "C" fn(A, B, C, D, E, F, G, H, ...) -> Ret
[src]impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Eq for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
[src]impl<A, B, C, D, E, F, G, H, I, J, K> Eq for (A, B, C, D, E, F, G, H, I, J, K) where
C: Eq,
E: Eq,
B: Eq,
G: Eq,
A: Eq,
K: Eq + ?Sized,
F: Eq,
I: Eq,
D: Eq,
H: Eq,
J: Eq,
[src]impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Eq for fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
[src]impl<Ret, A, B, C, D, E, F, G, H, I> Eq for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, ...) -> Ret
[src]impl<A, B, C, D, E, F, G, H> Eq for (A, B, C, D, E, F, G, H) where
C: Eq,
E: Eq,
B: Eq,
G: Eq,
A: Eq,
F: Eq,
D: Eq,
H: Eq + ?Sized,
[src]impl<A, B, C, D, E, F, G> Eq for (A, B, C, D, E, F, G) where
C: Eq,
E: Eq,
B: Eq,
G: Eq + ?Sized,
A: Eq,
F: Eq,
D: Eq,
[src]impl<Ret, A, B, C, D, E, F, G, H, I, J> Eq for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, ...) -> Ret
[src]impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Eq for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret
[src]impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Eq for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
[src]impl<A, B, C, D, E, F, G, H, I> Eq for (A, B, C, D, E, F, G, H, I) where
C: Eq,
E: Eq,
B: Eq,
G: Eq,
A: Eq,
F: Eq,
I: Eq + ?Sized,
D: Eq,
H: Eq,
[src]impl<A, B, C, D, E, F> Eq for (A, B, C, D, E, F) where
C: Eq,
E: Eq,
B: Eq,
A: Eq,
F: Eq + ?Sized,
D: Eq,
[src]impl<Ret, A, B, C, D, E, F, G, H, I, J> Eq for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J) -> Ret
[src]impl<Ret, A, B, C, D, E, F, G, H, I> Eq for extern "C" fn(A, B, C, D, E, F, G, H, I, ...) -> Ret
[src]impl<A, B, C, D, E, F, G, H, I, J, K, L> Eq for (A, B, C, D, E, F, G, H, I, J, K, L) where
C: Eq,
E: Eq,
L: Eq + ?Sized,
B: Eq,
G: Eq,
A: Eq,
K: Eq,
F: Eq,
I: Eq,
D: Eq,
H: Eq,
J: Eq,
[src]impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Eq for unsafe fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
[src]impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Eq for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Ret
[src]impl<Ret, A, B, C, D, E, F, G, H, I, J> Eq for extern "C" fn(A, B, C, D, E, F, G, H, I, J) -> Ret
[src]impl<Ret, A, B, C, D, E, F, G, H, I> Eq for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I) -> Ret
[src]impl<Ret, A, B, C, D, E, F, G, H, I, J> Eq for extern "C" fn(A, B, C, D, E, F, G, H, I, J, ...) -> Ret
[src]impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Eq for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret
[src]impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Eq for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Ret
[src]impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Eq for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
[src]impl<A, B, C, D, E, F, G, H, I, J> Eq for (A, B, C, D, E, F, G, H, I, J) where
C: Eq,
E: Eq,
B: Eq,
G: Eq,
A: Eq,
F: Eq,
I: Eq,
D: Eq,
H: Eq,
J: Eq + ?Sized,
[src]impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Eq for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
[src]impl Eq for Curve
impl Eq for PublicKey
impl Eq for Data
impl Eq for ErrorKind
impl Eq for ClassPerlKind
impl Eq for SetFlags
impl Eq for Group
impl Eq for Group
impl Eq for ClassUnicodeOpKind
impl Eq for Class
impl Eq for Literal
impl Eq for RepetitionRange
impl Eq for HirKind
impl Eq for Span
impl Eq for Anchor
impl Eq for Error
impl Eq for SpecialLiteralKind
impl Eq for ClassAscii
impl Eq for WordBoundary
impl Eq for ErrorKind
impl Eq for RepetitionRange
impl Eq for Utf8Range
impl Eq for Alternation
impl Eq for HexLiteralKind
impl Eq for Concat
impl Eq for WithComments
impl Eq for RepetitionOp
impl Eq for Repetition
impl Eq for Literals
impl Eq for ClassPerl
impl Eq for Flag
impl Eq for RepetitionKind
impl Eq for CaptureName
impl Eq for ClassAsciiKind
impl Eq for ClassSetRange
impl Eq for Error
impl Eq for ClassSetItem
impl Eq for Utf8Sequence
impl Eq for ClassBytes
impl Eq for ClassSetBinaryOpKind
impl Eq for Ast
impl Eq for ClassSetBinaryOp
impl Eq for Literal
impl Eq for ClassUnicodeRange
impl Eq for Comment
impl Eq for Flags
impl Eq for AssertionKind
impl Eq for ClassBracketed
impl Eq for RepetitionKind
impl Eq for Class
impl Eq for ClassUnicodeKind
impl Eq for ClassUnicode
impl Eq for GroupKind
impl Eq for ClassUnicode
impl Eq for Error
impl Eq for ClassSetUnion
impl Eq for ClassBytesRange
impl Eq for LiteralKind
impl Eq for Repetition
impl Eq for FlagsItem
impl Eq for Hir
impl Eq for FlagsItemKind
impl Eq for Literal
impl Eq for Position
impl Eq for ClassSet
impl Eq for Assertion
impl Eq for GroupKind
impl Eq for MatchKind
impl Eq for Match
impl Eq for MatchKind
impl Eq for Color
impl Eq for ColorSpec
impl Eq for ParseColorError
impl Eq for ColorChoice
impl Eq for Error
impl Eq for DwMacro
impl Eq for DwOp
impl Eq for AttributeSpecification
impl Eq for DwOrd
impl Eq for DwLle
impl Eq for DwChildren
impl<R, Offset> Eq for CommonInformationEntry<R, Offset> where
R: Eq + Reader<Offset = Offset>,
Offset: Eq + ReaderOffset,
impl Eq for DwAddr
impl Eq for DwVis
impl Eq for SectionId
impl<R, Offset> Eq for UnitHeader<R, Offset> where
R: Eq + Reader<Offset = Offset>,
Offset: Eq + ReaderOffset,
impl<'bases, Section, R> Eq for CieOrFde<'bases, Section, R> where
R: Eq + Reader,
Section: Eq + UnwindSection<R>,
impl Eq for BaseAddresses
impl Eq for Format
impl<R, Offset> Eq for FileEntry<R, Offset> where
R: Eq + Reader<Offset = Offset>,
Offset: Eq + ReaderOffset,
impl<R, Offset> Eq for LineInstruction<R, Offset> where
R: Eq + Reader<Offset = Offset>,
Offset: Eq + ReaderOffset,
impl Eq for ReaderOffsetId
impl Eq for DwInl
impl Eq for DwId
impl Eq for Encoding
impl Eq for Register
impl<R, Offset> Eq for AttributeValue<R, Offset> where
R: Eq + Reader<Offset = Offset>,
Offset: Eq + ReaderOffset,
impl<R, Offset> Eq for LineProgramHeader<R, Offset> where
R: Eq + Reader<Offset = Offset>,
Offset: Eq + ReaderOffset,
impl<R, Offset> Eq for CompleteLineProgram<R, Offset> where
R: Eq + Reader<Offset = Offset>,
Offset: Eq + ReaderOffset,
impl Eq for RunTimeEndian
impl Eq for DebugTypeSignature
impl Eq for DwEhPe
impl Eq for Pointer
impl Eq for DwoId
impl Eq for LineRow
impl Eq for ValueType
impl Eq for DwTag
impl Eq for DwLne
impl Eq for DwLang
impl Eq for DwRle
impl Eq for ArangeEntry
impl Eq for BigEndian
impl Eq for DwUt
impl<R, Offset> Eq for FrameDescriptionEntry<R, Offset> where
R: Eq + Reader<Offset = Offset>,
Offset: Eq + ReaderOffset,
impl Eq for DwDsc
impl Eq for DwDs
impl Eq for DwVirtuality
impl Eq for Augmentation
impl Eq for LittleEndian
impl Eq for LineEncoding
impl Eq for DwLnct
impl Eq for DwEnd
impl Eq for FileEntryFormat
impl<R, Offset> Eq for IncompleteLineProgram<R, Offset> where
R: Eq + Reader<Offset = Offset>,
Offset: Eq + ReaderOffset,
impl Eq for DwDefaulted
impl Eq for Range
impl Eq for ColumnType
impl<R, Offset> Eq for ArangeHeader<R, Offset> where
R: Eq + Reader<Offset = Offset>,
Offset: Eq + ReaderOffset,
impl<'bases, Section, R> Eq for PartialFrameDescriptionEntry<'bases, Section, R> where
R: Eq + Reader,
Section: Eq + UnwindSection<R>,
<R as Reader>::Offset: Eq,
<Section as UnwindSection<R>>::Offset: Eq,
impl Eq for DwForm
impl Eq for DwAccess
impl Eq for DwarfFileType
impl Eq for DwCfa
impl Eq for Abbreviation
impl<R, Offset> Eq for Operation<R, Offset> where
R: Eq + Reader<Offset = Offset>,
Offset: Eq + ReaderOffset,
impl Eq for DwAt
impl Eq for DwIdx
impl Eq for DwCc
impl Eq for SectionBaseAddresses
impl Eq for DwAte
impl Eq for DwLns
impl<'data> Eq for SymbolMapName<'data>
impl Eq for SymbolSection
impl Eq for BinaryFormat
impl<'data> Eq for CodeView<'data>
impl Eq for ComdatKind
impl Eq for Error
impl Eq for BigEndian
impl Eq for SectionIndex
impl Eq for SectionFlags
impl Eq for CompressionFormat
impl Eq for SectionKind
impl<'data> Eq for Import<'data>
impl Eq for LittleEndian
impl Eq for AddressSize
impl Eq for RelocationKind
impl Eq for RelocationTarget
impl Eq for Architecture
impl Eq for SymbolKind
impl Eq for SymbolIndex
impl<'data> Eq for Export<'data>
impl Eq for ArchiveKind
impl Eq for FileKind
impl<'data> Eq for ObjectMapEntry<'data>
impl Eq for FileFlags
impl Eq for Endianness
impl Eq for SymbolScope
impl<'data> Eq for Bytes<'data>
impl Eq for RelocationEncoding
impl Eq for CompressedFileRange
impl<'data> Eq for CompressedData<'data>
impl Eq for TINFLStatus
impl Eq for MZStatus
impl Eq for CompressionStrategy
impl Eq for TDEFLFlush
impl Eq for TDEFLStatus
impl Eq for MZFlush
impl Eq for DataFormat
impl Eq for CompressionLevel
impl Eq for StreamResult
impl Eq for MZError
impl Eq for Op
impl Eq for RecursiveMode
impl Eq for FileTime
impl Eq for WatchDescriptor
impl Eq for EventMask
impl Eq for WatchMask
impl Eq for Handle
impl Eq for FilterOp
impl Eq for ParkResult
impl Eq for UnparkResult
impl Eq for UnparkToken
impl Eq for RequeueOp
impl Eq for ParkToken
impl Eq for vec128_storage
impl Eq for vec512_storage
impl Eq for vec256_storage
impl Eq for BidiClass
impl Eq for Level
impl Eq for IsNormalized
impl Eq for PixelDensityUnit
impl Eq for ImageOutputFormat
impl Eq for NormalForm
impl Eq for FilterType
impl Eq for CompressionType
impl Eq for Rect
impl Eq for ImageFormat
impl Eq for DynamicImage
impl Eq for LimitErrorKind
impl Eq for Error
impl Eq for ColorType
impl Eq for Delay
impl Eq for PixelDensity
impl Eq for SampleLayout
impl Eq for Progress
impl Eq for ExtendedColorType
impl Eq for DisposeOp
impl Eq for ColorType
impl Eq for Transformations
impl Eq for OutputInfo
impl Eq for BitDepth
impl Eq for FilterType
impl Eq for BlendOp
impl Eq for Unit
impl Eq for Compression
impl Eq for MatchingType
impl Eq for SpecialOptions
impl Eq for CompressionOptions
impl Eq for TINFLStatus
impl Eq for MZStatus
impl Eq for StreamResult
impl Eq for CompressionStrategy
impl Eq for CompressionLevel
impl Eq for MZFlush
impl Eq for MZError
impl Eq for DataFormat
impl Eq for TDEFLFlush
impl Eq for TDEFLStatus
impl Eq for PodCastError
impl Eq for GraphemeIncomplete
impl Eq for GraphemeClusterBreak
impl Eq for WordBreak
impl Eq for SentenceBreak
impl Eq for CharRange
impl Eq for UnicodeVersion
impl Eq for FileType
impl Eq for FileTypeDef
impl Eq for WalkState
impl Eq for Error
impl Eq for ErrorKind
impl Eq for Glob
impl Eq for BString
impl Eq for FromUtf8Error
impl Eq for BStr
impl Eq for Utf8Error
URLs compare like their serialization.
impl Eq for GraphemeIncomplete
impl Eq for SentenceBreak
impl Eq for WordBreak
impl Eq for GraphemeClusterBreak
impl Eq for CharRange
impl Eq for UnicodeVersion
impl Eq for Style
impl Eq for Color
impl Eq for Attribute
impl Eq for TermTarget
impl Eq for Key
impl Eq for TermFamily
impl Eq for Alignment
impl Eq for Aborted
impl Eq for UCred
impl Eq for TryRecvError
impl Eq for Instant
impl Eq for Interest
impl Eq for RecvError
impl Eq for Name
impl Eq for Canceled
impl Eq for SendError
impl<'headers, 'buf> Eq for Request<'headers, 'buf> where
'buf: 'headers,
impl<'a> Eq for Header<'a>
impl Eq for Error
impl<'headers, 'buf> Eq for Response<'headers, 'buf> where
'buf: 'headers,
impl Eq for InvalidChunkSize
impl Eq for LinesCodec
impl Eq for BytesCodec
impl Eq for AnyDelimiterCodec
impl<K, V, S> Eq for HashMap<K, V, S> where
S: BuildHasher,
K: Eq + Hash,
V: Eq,
impl Eq for TryReserveError
impl<T, S> Eq for HashSet<T, S> where
T: Eq + Hash,
S: BuildHasher,
impl Eq for CoderResult
impl Eq for Encoding
impl Eq for EncoderResult
impl Eq for DecoderResult
impl Eq for Latin1Bidi
impl Eq for Error
Implementors
impl Eq for DecodeError
impl Eq for WriteStyle
impl Eq for PosixFadviseAdvice
impl Eq for AioCancelStat
impl Eq for AioFsyncMode
impl Eq for MmapAdvise
impl Eq for RebootMode
impl Eq for SigHandler
impl Eq for SigevNotify
impl Eq for SigmaskHow
impl Eq for AddressFamily
impl Eq for ControlMessageOwned
impl Eq for SockProtocol
impl Eq for SpecialCharacterIndices
impl Eq for WaitStatus
impl Eq for DecodeErrKind
impl Eq for otter_api_tests::shapelib::LittleEndian
impl Eq for PathconfVar
impl Eq for SysconfVar
impl Eq for LogicError
impl Eq for CompressionMethod
impl Eq for ModuleFilter
impl Eq for Elf32_Chdr
impl Eq for Elf32_Ehdr
impl Eq for Elf32_Phdr
impl Eq for Elf32_Shdr
impl Eq for Elf64_Chdr
impl Eq for Elf64_Ehdr
impl Eq for Elf64_Phdr
impl Eq for Elf64_Shdr
impl Eq for __c_anonymous_sockaddr_can_j1939
impl Eq for __c_anonymous_sockaddr_can_tp
impl Eq for __exit_status
impl Eq for _libc_fpstate
impl Eq for _libc_fpxreg
impl Eq for _libc_xmmreg
impl Eq for arpd_request
impl Eq for arpreq_old
impl Eq for can_filter
impl Eq for dl_phdr_info
impl Eq for epoll_event
impl Eq for fanotify_event_metadata
impl Eq for fanotify_response
impl Eq for ff_condition_effect
impl Eq for ff_constant_effect
impl Eq for ff_envelope
impl Eq for ff_periodic_effect
impl Eq for ff_ramp_effect
impl Eq for ff_rumble_effect
impl Eq for ff_trigger
impl Eq for genlmsghdr
impl Eq for if_nameindex
impl Eq for in6_pktinfo
impl Eq for in_pktinfo
impl Eq for inotify_event
impl Eq for input_absinfo
impl Eq for input_event
impl Eq for input_keymap_entry
impl Eq for input_mask
impl Eq for ip_mreq_source
impl Eq for itimerspec
impl Eq for mcontext_t
impl Eq for nl_mmap_hdr
impl Eq for nl_mmap_req
impl Eq for nl_pktinfo
impl Eq for ntptimeval
impl Eq for packet_mreq
impl Eq for posix_spawn_file_actions_t
impl Eq for posix_spawnattr_t
impl Eq for pthread_attr_t
impl Eq for pthread_cond_t
impl Eq for pthread_condattr_t
impl Eq for pthread_mutex_t
impl Eq for pthread_mutexattr_t
impl Eq for pthread_rwlock_t
impl Eq for pthread_rwlockattr_t
impl Eq for regmatch_t
impl Eq for sched_param
impl Eq for sock_extended_err
impl Eq for sockaddr_alg
impl Eq for sockaddr_ll
impl Eq for sockaddr_nl
impl Eq for sockaddr_vm
impl Eq for statx_timestamp
impl Eq for ucontext_t
impl Eq for uinput_abs_setup
impl Eq for uinput_ff_erase
impl Eq for uinput_ff_upload
impl Eq for uinput_setup
impl Eq for uinput_user_dev
impl Eq for user_fpregs_struct
impl Eq for user_regs_struct
impl Eq for OwningIter
impl Eq for FallocateFlags
impl Eq for SpliceFFlags
impl Eq for InterfaceAddress
impl Eq for InterfaceAddressIterator
impl Eq for DeleteModuleFlags
impl Eq for ModuleInitFlags
impl Eq for InterfaceFlags
impl Eq for OpenptyResult
impl Eq for CloneFlags
impl Eq for EpollCreateFlags
impl Eq for EpollEvent
impl Eq for EpollFlags
impl Eq for AddWatchFlags
impl Eq for otter_api_tests::imports::nix::sys::inotify::WatchDescriptor
impl Eq for MemFdCreateFlag
impl Eq for MRemapFlags
impl Eq for MlockAllFlags
impl Eq for QuotaValidFlags
impl Eq for SignalIterator
impl Eq for signalfd_siginfo
impl Eq for AcceptConn
impl Eq for BindToDevice
impl Eq for IpAddMembership
impl Eq for IpDropMembership
impl Eq for IpMulticastLoop
impl Eq for IpMulticastTtl
impl Eq for IpTransparent
impl Eq for Ipv4PacketInfo
impl Eq for Ipv6AddMembership
impl Eq for Ipv6DropMembership
impl Eq for Ipv6RecvPacketInfo
impl Eq for OriginalDst
impl Eq for PeerCredentials
impl Eq for RcvBufForce
impl Eq for ReceiveTimeout
impl Eq for ReceiveTimestamp
impl Eq for ReceiveTimestampns
impl Eq for SendTimeout
impl Eq for SndBufForce
impl Eq for SocketError
impl Eq for TcpCongestion
impl Eq for TcpKeepCount
impl Eq for TcpKeepIdle
impl Eq for TcpKeepInterval
impl Eq for TcpNoDelay
impl Eq for UdpGroSegment
impl Eq for UdpGsoSegment
impl Eq for IpMembershipRequest
impl Eq for Ipv6MembershipRequest
impl Eq for NetlinkAddr
impl Eq for UnixCredentials
impl Eq for sockaddr_in6
impl Eq for sockaddr_in
impl Eq for sockaddr_storage
impl Eq for sockaddr_un
impl Eq for ControlFlags
impl Eq for InputFlags
impl Eq for LocalFlags
impl Eq for OutputFlags
impl Eq for TimerFlags
impl Eq for TimerSetTimeFlags
impl Eq for RemoteIoVec
impl Eq for WaitPidFlag
impl Eq for FloatIsNan
impl Eq for otter_api_tests::imports::parking_lot::WaitTimeoutResult
impl Eq for UnixSocketAddr
URLs compare like their serialization.
impl Eq for AccessFlags
impl Eq for otter_api_tests::zcoord::ParseError
impl Eq for RangeBackwards
impl Eq for TotallyUnboundedRange
impl<'a> Eq for ControlMessage<'a>
impl<'a> Eq for CmsgIterator<'a>
impl<E> Eq for ParseNotNanError<E> where
E: Eq,
impl<K, V, S> Eq for otter_api_tests::shapelib::HashMap<K, V, S> where
S: BuildHasher,
K: Eq + Hash,
V: Eq,
[src]impl<T> Eq for OrderedFloat<T> where
T: Float,
impl<T> Eq for IsHtmlFormatted<T> where
T: Eq + Display,
impl<T, N> Eq for GenericArray<T, N> where
T: Eq,
N: ArrayLength<T>,