Trait browser_window::prelude::rust_2018::Eq

1.0.0 · source ·
pub trait Eq: PartialEq { }
Expand description

Trait for comparisons corresponding to equivalence relations.

This means, that in addition to a == b and a != b being strict inverses, the relation must be (for all a, b and c):

  • reflexive: a == a;
  • symmetric: a == b implies b == a (required by PartialEq as well); and
  • transitive: a == b and b == c implies a == c (required by PartialEq as well).

This property cannot be checked by the compiler, and therefore Eq implies PartialEq, and has no extra methods.

Violating this property is a logic error. The behavior resulting from a logic error is not specified, but users of the trait must ensure that such logic errors do not result in undefined behavior. This means that unsafe code must not rely on the correctness of these methods.

Implement Eq in addition to PartialEq if it’s guaranteed that PartialEq::eq(a, a) always returns true (reflexivity), in addition to the symmetric and transitive properties already required by PartialEq.

§Derivable

This trait can be used with #[derive]. When derived, 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 {}

Object Safety§

This trait is not object safe.

Implementors§

source§

impl Eq for TryReserveErrorKind

source§

impl Eq for AsciiChar

source§

impl Eq for core::cmp::Ordering

1.34.0 · source§

impl Eq for Infallible

1.28.0 · source§

impl Eq for core::fmt::Alignment

1.7.0 · source§

impl Eq for IpAddr

source§

impl Eq for Ipv6MulticastScope

source§

impl Eq for SocketAddr

source§

impl Eq for FpCategory

1.55.0 · source§

impl Eq for IntErrorKind

source§

impl Eq for SearchStep

source§

impl Eq for core::sync::atomic::Ordering

1.65.0 · source§

impl Eq for BacktraceStatus

source§

impl Eq for VarError

source§

impl Eq for SeekFrom

source§

impl Eq for ErrorKind

source§

impl Eq for Shutdown

source§

impl Eq for BacktraceStyle

1.12.0 · source§

impl Eq for RecvTimeoutError

source§

impl Eq for TryRecvError

source§

impl Eq for json::error::Error

source§

impl Eq for JsonValue

source§

impl Eq for num_bigfloat::defs::Error

source§

impl Eq for RoundingMode

source§

impl Eq for BernoulliError

source§

impl Eq for WeightedError

source§

impl Eq for bool

source§

impl Eq for char

source§

impl Eq for i8

source§

impl Eq for i16

source§

impl Eq for i32

source§

impl Eq for i64

source§

impl Eq for i128

source§

impl Eq for isize

source§

impl Eq for !

source§

impl Eq for str

source§

impl Eq for u8

source§

impl Eq for u16

source§

impl Eq for u32

source§

impl Eq for u64

source§

impl Eq for u128

source§

impl Eq for ()

source§

impl Eq for usize

source§

impl Eq for BigFloat

source§

impl Eq for UnorderedKeyError

1.57.0 · source§

impl Eq for TryReserveError

1.64.0 · source§

impl Eq for CString

1.64.0 · source§

impl Eq for FromVecWithNulError

1.64.0 · source§

impl Eq for IntoStringError

1.64.0 · source§

impl Eq for NulError

source§

impl Eq for FromUtf8Error

source§

impl Eq for String

1.28.0 · source§

impl Eq for Layout

1.50.0 · source§

impl Eq for LayoutError

source§

impl Eq for AllocError

source§

impl Eq for TypeId

1.34.0 · source§

impl Eq for CharTryFromError

1.20.0 · source§

impl Eq for ParseCharError

1.9.0 · source§

impl Eq for DecodeUtf16Error

1.59.0 · source§

impl Eq for TryFromCharError

1.27.0 · source§

impl Eq for CpuidResult

source§

impl Eq for CStr

1.69.0 · source§

impl Eq for FromBytesUntilNulError

1.64.0 · source§

impl Eq for FromBytesWithNulError

source§

impl Eq for core::fmt::Error

1.33.0 · source§

impl Eq for PhantomPinned

source§

impl Eq for Assume

source§

impl Eq for Ipv4Addr

source§

impl Eq for Ipv6Addr

source§

impl Eq for AddrParseError

source§

impl Eq for SocketAddrV4

source§

impl Eq for SocketAddrV6

source§

impl Eq for ParseFloatError

source§

impl Eq for ParseIntError

1.34.0 · source§

impl Eq for TryFromIntError

source§

impl Eq for RangeFull

source§

impl Eq for core::ptr::alignment::Alignment

source§

impl Eq for ParseBoolError

source§

impl Eq for Utf8Error

1.3.0 · source§

impl Eq for Duration

1.66.0 · source§

impl Eq for TryFromFloatSecsError

source§

impl Eq for OsStr

source§

impl Eq for OsString

1.1.0 · source§

impl Eq for FileType

source§

impl Eq for Permissions

source§

impl Eq for UCred

source§

impl Eq for Components<'_>

source§

impl Eq for Path

source§

impl Eq for PathBuf

1.7.0 · source§

impl Eq for StripPrefixError

source§

impl Eq for ExitStatus

source§

impl Eq for ExitStatusError

source§

impl Eq for Output

1.5.0 · source§

impl Eq for WaitTimeoutResult

source§

impl Eq for RecvError

1.26.0 · source§

impl Eq for AccessError

1.19.0 · source§

impl Eq for ThreadId

1.8.0 · source§

impl Eq for Instant

1.8.0 · source§

impl Eq for SystemTime

source§

impl Eq for futures_channel::mpsc::SendError

source§

impl Eq for Canceled

source§

impl Eq for getrandom::error::Error

source§

impl Eq for in6_addr

source§

impl Eq for termios2

source§

impl Eq for sem_t

source§

impl Eq for msqid_ds

source§

impl Eq for semid_ds

source§

impl Eq for sigset_t

source§

impl Eq for sysinfo

source§

impl Eq for clone_args

source§

impl Eq for statvfs

source§

impl Eq for _libc_fpstate

source§

impl Eq for _libc_fpxreg

source§

impl Eq for _libc_xmmreg

source§

impl Eq for flock64

source§

impl Eq for flock

source§

impl Eq for ipc_perm

source§

impl Eq for mcontext_t

source§

impl Eq for pthread_attr_t

source§

impl Eq for ptrace_rseq_configuration

source§

impl Eq for shmid_ds

source§

impl Eq for sigaction

source§

impl Eq for siginfo_t

source§

impl Eq for stack_t

source§

impl Eq for stat64

source§

impl Eq for stat

source§

impl Eq for statfs64

source§

impl Eq for statfs

source§

impl Eq for statvfs64

source§

impl Eq for ucontext_t

source§

impl Eq for user

source§

impl Eq for user_fpregs_struct

source§

impl Eq for user_regs_struct

source§

impl Eq for Elf32_Chdr

source§

impl Eq for Elf64_Chdr

source§

impl Eq for __c_anonymous_ptrace_syscall_info_entry

source§

impl Eq for __c_anonymous_ptrace_syscall_info_exit

source§

impl Eq for __c_anonymous_ptrace_syscall_info_seccomp

source§

impl Eq for __exit_status

source§

impl Eq for __timeval

source§

impl Eq for aiocb

source§

impl Eq for cmsghdr

source§

impl Eq for glob64_t

source§

impl Eq for iocb

source§

impl Eq for mallinfo2

source§

impl Eq for mallinfo

source§

impl Eq for msghdr

source§

impl Eq for nl_mmap_hdr

source§

impl Eq for nl_mmap_req

source§

impl Eq for nl_pktinfo

source§

impl Eq for ntptimeval

source§

impl Eq for ptrace_peeksiginfo_args

source§

impl Eq for ptrace_syscall_info

source§

impl Eq for regex_t

source§

impl Eq for rtentry

source§

impl Eq for seminfo

source§

impl Eq for sockaddr_xdp

source§

impl Eq for statx

source§

impl Eq for statx_timestamp

source§

impl Eq for termios

source§

impl Eq for timex

source§

impl Eq for utmpx

source§

impl Eq for xdp_desc

source§

impl Eq for xdp_mmap_offsets

source§

impl Eq for xdp_mmap_offsets_v1

source§

impl Eq for xdp_options

source§

impl Eq for xdp_ring_offset

source§

impl Eq for xdp_ring_offset_v1

source§

impl Eq for xdp_statistics

source§

impl Eq for xdp_statistics_v1

source§

impl Eq for xdp_umem_reg

source§

impl Eq for xdp_umem_reg_v1

source§

impl Eq for open_how

source§

impl Eq for Elf32_Ehdr

source§

impl Eq for Elf32_Phdr

source§

impl Eq for Elf32_Shdr

source§

impl Eq for Elf32_Sym

source§

impl Eq for Elf64_Ehdr

source§

impl Eq for Elf64_Phdr

source§

impl Eq for Elf64_Shdr

source§

impl Eq for Elf64_Sym

source§

impl Eq for __c_anonymous_ifru_map

source§

impl Eq for __c_anonymous_sockaddr_can_j1939

source§

impl Eq for __c_anonymous_sockaddr_can_tp

source§

impl Eq for af_alg_iv

source§

impl Eq for arpd_request

source§

impl Eq for can_filter

source§

impl Eq for cpu_set_t

source§

impl Eq for dirent64

source§

impl Eq for dirent

source§

impl Eq for dl_phdr_info

source§

impl Eq for dqblk

source§

impl Eq for fanotify_event_metadata

source§

impl Eq for fanotify_response

source§

impl Eq for ff_condition_effect

source§

impl Eq for ff_constant_effect

source§

impl Eq for ff_effect

source§

impl Eq for ff_envelope

source§

impl Eq for ff_periodic_effect

source§

impl Eq for ff_ramp_effect

source§

impl Eq for ff_replay

source§

impl Eq for ff_rumble_effect

source§

impl Eq for ff_trigger

source§

impl Eq for file_clone_range

source§

impl Eq for fsid_t

source§

impl Eq for genlmsghdr

source§

impl Eq for glob_t

source§

impl Eq for hwtstamp_config

source§

impl Eq for if_nameindex

source§

impl Eq for in6_ifreq

source§

impl Eq for in6_pktinfo

source§

impl Eq for inotify_event

source§

impl Eq for input_absinfo

source§

impl Eq for input_event

source§

impl Eq for input_id

source§

impl Eq for input_keymap_entry

source§

impl Eq for input_mask

source§

impl Eq for itimerspec

source§

impl Eq for j1939_filter

source§

impl Eq for mntent

source§

impl Eq for mq_attr

source§

impl Eq for msginfo

source§

impl Eq for nlattr

source§

impl Eq for nlmsgerr

source§

impl Eq for nlmsghdr

source§

impl Eq for option

source§

impl Eq for packet_mreq

source§

impl Eq for passwd

source§

impl Eq for posix_spawn_file_actions_t

source§

impl Eq for posix_spawnattr_t

source§

impl Eq for pthread_barrier_t

source§

impl Eq for pthread_barrierattr_t

source§

impl Eq for pthread_cond_t

source§

impl Eq for pthread_condattr_t

source§

impl Eq for pthread_mutex_t

source§

impl Eq for pthread_mutexattr_t

source§

impl Eq for pthread_rwlock_t

source§

impl Eq for pthread_rwlockattr_t

source§

impl Eq for regmatch_t

source§

impl Eq for rlimit64

source§

impl Eq for sched_attr

source§

impl Eq for sctp_authinfo

source§

impl Eq for sctp_initmsg

source§

impl Eq for sctp_nxtinfo

source§

impl Eq for sctp_prinfo

source§

impl Eq for sctp_rcvinfo

source§

impl Eq for sctp_sndinfo

source§

impl Eq for sctp_sndrcvinfo

source§

impl Eq for seccomp_data

source§

impl Eq for seccomp_notif

source§

impl Eq for seccomp_notif_addfd

source§

impl Eq for seccomp_notif_resp

source§

impl Eq for seccomp_notif_sizes

source§

impl Eq for sembuf

source§

impl Eq for signalfd_siginfo

source§

impl Eq for sock_extended_err

source§

impl Eq for sock_filter

source§

impl Eq for sock_fprog

source§

impl Eq for sockaddr_alg

source§

impl Eq for sockaddr_nl

source§

impl Eq for sockaddr_vm

source§

impl Eq for spwd

source§

impl Eq for tls12_crypto_info_aes_gcm_128

source§

impl Eq for tls12_crypto_info_aes_gcm_256

source§

impl Eq for tls12_crypto_info_chacha20_poly1305

source§

impl Eq for tls_crypto_info

source§

impl Eq for ucred

source§

impl Eq for uinput_abs_setup

source§

impl Eq for uinput_ff_erase

source§

impl Eq for uinput_ff_upload

source§

impl Eq for uinput_setup

source§

impl Eq for uinput_user_dev

source§

impl Eq for Dl_info

source§

impl Eq for addrinfo

source§

impl Eq for arphdr

source§

impl Eq for arpreq

source§

impl Eq for arpreq_old

source§

impl Eq for epoll_event

source§

impl Eq for fd_set

source§

impl Eq for ifaddrs

source§

impl Eq for in6_rtmsg

source§

impl Eq for in_addr

source§

impl Eq for in_pktinfo

source§

impl Eq for ip_mreq

source§

impl Eq for ip_mreq_source

source§

impl Eq for ip_mreqn

source§

impl Eq for lconv

source§

impl Eq for mmsghdr

source§

impl Eq for sched_param

source§

impl Eq for sigevent

source§

impl Eq for sockaddr

source§

impl Eq for sockaddr_in6

source§

impl Eq for sockaddr_in

source§

impl Eq for sockaddr_ll

source§

impl Eq for sockaddr_storage

source§

impl Eq for sockaddr_un

source§

impl Eq for tm

source§

impl Eq for utsname

source§

impl Eq for group

source§

impl Eq for hostent

source§

impl Eq for iovec

source§

impl Eq for ipv6_mreq

source§

impl Eq for itimerval

source§

impl Eq for linger

source§

impl Eq for pollfd

source§

impl Eq for protoent

source§

impl Eq for rlimit

source§

impl Eq for rusage

source§

impl Eq for servent

source§

impl Eq for sigval

source§

impl Eq for timespec

source§

impl Eq for timeval

source§

impl Eq for tms

source§

impl Eq for utimbuf

source§

impl Eq for winsize

source§

impl Eq for StepRng

source§

impl Eq for StdRng

source§

impl Eq for ChaCha8Core

source§

impl Eq for ChaCha8Rng

source§

impl Eq for ChaCha12Core

source§

impl Eq for ChaCha12Rng

source§

impl Eq for ChaCha20Core

source§

impl Eq for ChaCha20Rng

source§

impl Eq for __c_anonymous_ptrace_syscall_info_data

source§

impl Eq for vec128_storage

source§

impl Eq for vec256_storage

source§

impl Eq for vec512_storage

source§

impl<'a> Eq for Component<'a>

source§

impl<'a> Eq for Prefix<'a>

1.10.0 · source§

impl<'a> Eq for Location<'a>

source§

impl<'a> Eq for Utf8Chunk<'a>

source§

impl<'a> Eq for PrefixComponent<'a>

source§

impl<A> Eq for &A
where A: Eq + ?Sized,

source§

impl<A> Eq for &mut A
where A: Eq + ?Sized,

source§

impl<B> Eq for Cow<'_, B>
where B: Eq + ToOwned + ?Sized,

1.55.0 · source§

impl<B, C> Eq for ControlFlow<B, C>
where B: Eq, C: Eq,

source§

impl<Dyn> Eq for DynMetadata<Dyn>
where Dyn: ?Sized,

1.4.0 · source§

impl<F> Eq for F
where F: FnPtr,

1.29.0 · source§

impl<H> Eq for BuildHasherDefault<H>

source§

impl<Idx> Eq for Range<Idx>
where Idx: Eq,

source§

impl<Idx> Eq for RangeFrom<Idx>
where Idx: Eq,

1.26.0 · source§

impl<Idx> Eq for RangeInclusive<Idx>
where Idx: Eq,

source§

impl<Idx> Eq for RangeTo<Idx>
where Idx: Eq,

1.26.0 · source§

impl<Idx> Eq for RangeToInclusive<Idx>
where Idx: Eq,

source§

impl<K, V, A> Eq for BTreeMap<K, V, A>
where K: Eq, V: Eq, A: Allocator + Clone,

source§

impl<K, V, S> Eq for HashMap<K, V, S>
where K: Eq + Hash, V: Eq, S: BuildHasher,

1.41.0 · source§

impl<Ptr> Eq for Pin<Ptr>
where Ptr: Deref, <Ptr as Deref>::Target: Eq,

source§

impl<T> Eq for Option<T>
where T: Eq,

1.17.0 · source§

impl<T> Eq for Bound<T>
where T: Eq,

1.36.0 · source§

impl<T> Eq for Poll<T>
where T: Eq,

source§

impl<T> Eq for std::sync::mpsc::TrySendError<T>
where T: Eq,

source§

impl<T> Eq for *const T
where T: ?Sized,

source§

impl<T> Eq for *mut T
where T: ?Sized,

source§

impl<T> Eq for [T]
where T: Eq,

source§

impl<T> Eq for (T₁, T₂, …, Tₙ)
where T: Eq + ?Sized,

This trait is implemented for tuples up to twelve items long.

1.70.0 · source§

impl<T> Eq for OnceCell<T>
where T: Eq,

1.2.0 · source§

impl<T> Eq for Cell<T>
where T: Eq + Copy,

1.2.0 · source§

impl<T> Eq for RefCell<T>
where T: Eq + ?Sized,

1.19.0 · source§

impl<T> Eq for Reverse<T>
where T: Eq,

source§

impl<T> Eq for PhantomData<T>
where T: ?Sized,

1.20.0 · source§

impl<T> Eq for ManuallyDrop<T>
where T: Eq + ?Sized,

1.21.0 · source§

impl<T> Eq for Discriminant<T>

1.28.0 · source§

impl<T> Eq for NonZero<T>
where T: ZeroablePrimitive + Eq,

1.74.0 · source§

impl<T> Eq for Saturating<T>
where T: Eq,

source§

impl<T> Eq for Wrapping<T>
where T: Eq,

1.25.0 · source§

impl<T> Eq for NonNull<T>
where T: ?Sized,

source§

impl<T> Eq for Cursor<T>
where T: Eq,

source§

impl<T> Eq for std::sync::mpsc::SendError<T>
where T: Eq,

1.70.0 · source§

impl<T> Eq for OnceLock<T>
where T: Eq,

source§

impl<T> Eq for futures_channel::mpsc::TrySendError<T>
where T: Eq,

source§

impl<T, A> Eq for Box<T, A>
where T: Eq + ?Sized, A: Allocator,

source§

impl<T, A> Eq for BTreeSet<T, A>
where T: Eq, A: Allocator + Clone,

source§

impl<T, A> Eq for LinkedList<T, A>
where T: Eq, A: Allocator,

source§

impl<T, A> Eq for VecDeque<T, A>
where T: Eq, A: Allocator,

source§

impl<T, A> Eq for Rc<T, A>
where T: Eq + ?Sized, A: Allocator,

source§

impl<T, A> Eq for Arc<T, A>
where T: Eq + ?Sized, A: Allocator,

source§

impl<T, A> Eq for Vec<T, A>
where T: Eq, A: Allocator,

source§

impl<T, E> Eq for Result<T, E>
where T: Eq, E: Eq,

source§

impl<T, S> Eq for HashSet<T, S>
where T: Eq + Hash, S: BuildHasher,

source§

impl<T, const N: usize> Eq for [T; N]
where T: Eq,

source§

impl<T, const N: usize> Eq for Simd<T, N>

source§

impl<Y, R> Eq for CoroutineState<Y, R>
where Y: Eq, R: Eq,