1.0.0[−][src]Trait nom::lib::std::prelude::v1::v1::PartialEq
Trait for equality comparisons which are partial equivalence relations.
This trait allows for partial equality, for types that do not have a full
equivalence relation. For example, in floating point numbers NaN != NaN
,
so floating point types implement PartialEq
but not Eq
.
Formally, the equality must be (for all a
, b
and c
):
- symmetric:
a == b
impliesb == a
; and - transitive:
a == b
andb == c
impliesa == c
.
Note that these requirements mean that the trait itself must be implemented
symmetrically and transitively: if T: PartialEq<U>
and U: PartialEq<V>
then U: PartialEq<T>
and T: PartialEq<V>
.
Derivable
This trait can be used with #[derive]
. When derive
d on structs, two
instances are equal if all fields are equal, and not equal if any fields
are not equal. When derive
d on enums, each variant is equal to itself
and not equal to the other variants.
How can I implement PartialEq
?
PartialEq
only requires the eq
method to be implemented; ne
is defined
in terms of it by default. Any manual implementation of ne
must respect
the rule that eq
is a strict inverse of ne
; that is, !(a == b)
if and
only if a != b
.
Implementations of PartialEq
, PartialOrd
, and Ord
must agree with
each other. It's easy to accidentally make them disagree by deriving some
of the traits and manually implementing others.
An example implementation for a domain in which two books are considered the same book if their ISBN matches, even if the formats differ:
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 } } let b1 = Book { isbn: 3, format: BookFormat::Paperback }; let b2 = Book { isbn: 3, format: BookFormat::Ebook }; let b3 = Book { isbn: 10, format: BookFormat::Paperback }; assert!(b1 == b2); assert!(b1 != b3);
How can I compare two different types?
The type you can compare with is controlled by PartialEq
's type parameter.
For example, let's tweak our previous code a bit:
// The derive implements <BookFormat> == <BookFormat> comparisons #[derive(PartialEq)] enum BookFormat { Paperback, Hardback, Ebook, } struct Book { isbn: i32, format: BookFormat, } // Implement <Book> == <BookFormat> comparisons impl PartialEq<BookFormat> for Book { fn eq(&self, other: &BookFormat) -> bool { self.format == *other } } // Implement <BookFormat> == <Book> comparisons impl PartialEq<Book> for BookFormat { fn eq(&self, other: &Book) -> bool { *self == other.format } } let b1 = Book { isbn: 3, format: BookFormat::Paperback }; assert!(b1 == BookFormat::Paperback); assert!(BookFormat::Ebook != b1);
By changing impl PartialEq for Book
to impl PartialEq<BookFormat> for Book
,
we allow BookFormat
s to be compared with Book
s.
A comparison like the one above, which ignores some fields of the struct,
can be dangerous. It can easily lead to an unintended violation of the
requirements for a partial equivalence relation. For example, if we kept
the above implementation of PartialEq<Book>
for BookFormat
and added an
implementation of PartialEq<Book>
for Book
(either via a #[derive]
or
via the manual implementation from the first example) then the result would
violate transitivity:
#[derive(PartialEq)] enum BookFormat { Paperback, Hardback, Ebook, } #[derive(PartialEq)] struct Book { isbn: i32, format: BookFormat, } impl PartialEq<BookFormat> for Book { fn eq(&self, other: &BookFormat) -> bool { self.format == *other } } impl PartialEq<Book> for BookFormat { fn eq(&self, other: &Book) -> bool { *self == other.format } } fn main() { let b1 = Book { isbn: 1, format: BookFormat::Paperback }; let b2 = Book { isbn: 2, format: BookFormat::Paperback }; assert!(b1 == BookFormat::Paperback); assert!(BookFormat::Paperback == b2); // The following should hold by transitivity but doesn't. assert!(b1 == b2); // <-- PANICS }
Examples
let x: u32 = 0; let y: u32 = 1; assert_eq!(x == y, false); assert_eq!(x.eq(&y), false);
Required methods
#[must_use]fn eq(&self, other: &Rhs) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
.
Provided methods
Loading content...Implementations on Foreign Types
impl<'a, 'b> PartialEq<PathBuf> for &'a Path
[src]
impl<'a, 'b> PartialEq<PathBuf> for &'a OsStr
[src]
impl PartialEq<CString> for CString
[src]
impl PartialEq<Ipv6Addr> for Ipv6Addr
[src]
impl<'a, 'b> PartialEq<OsStr> for Path
[src]
impl<'a, 'b> PartialEq<Cow<'a, Path>> for Path
[src]
impl PartialEq<ThreadId> for ThreadId
[src]
impl<'a, 'b> PartialEq<Cow<'a, Path>> for &'b OsStr
[src]
impl PartialEq<BacktraceStatus> for BacktraceStatus
[src]
fn eq(&self, other: &BacktraceStatus) -> bool
[src]
impl<'a> PartialEq<OsString> for &'a str
[src]
impl PartialEq<SocketAddrV6> for SocketAddrV6
[src]
fn eq(&self, other: &SocketAddrV6) -> bool
[src]
impl PartialEq<NulError> for NulError
[src]
impl PartialEq<FromBytesWithNulError> for FromBytesWithNulError
[src]
fn eq(&self, other: &FromBytesWithNulError) -> bool
[src]
fn ne(&self, other: &FromBytesWithNulError) -> bool
[src]
impl PartialEq<IpAddr> for Ipv4Addr
[src]
impl PartialEq<str> for OsStr
[src]
impl<'a, 'b> PartialEq<&'a OsStr> for OsString
[src]
impl<'a, 'b> PartialEq<PathBuf> for OsStr
[src]
impl PartialEq<TryRecvError> for TryRecvError
[src]
fn eq(&self, other: &TryRecvError) -> bool
[src]
impl<'a, 'b> PartialEq<OsString> for &'a Path
[src]
impl<'a, 'b> PartialEq<OsStr> for OsString
[src]
impl<'a, 'b> PartialEq<Cow<'a, OsStr>> for OsString
[src]
impl<'a, 'b> PartialEq<&'a OsStr> for PathBuf
[src]
impl PartialEq<AddrParseError> for AddrParseError
[src]
fn eq(&self, other: &AddrParseError) -> bool
[src]
fn ne(&self, other: &AddrParseError) -> bool
[src]
impl PartialEq<WaitTimeoutResult> for WaitTimeoutResult
[src]
fn eq(&self, other: &WaitTimeoutResult) -> bool
[src]
fn ne(&self, other: &WaitTimeoutResult) -> bool
[src]
impl PartialEq<OsStr> for str
[src]
impl PartialEq<SeekFrom> for SeekFrom
[src]
impl<'a, 'b> PartialEq<PathBuf> for Path
[src]
impl<'a, 'b> PartialEq<&'a Path> for PathBuf
[src]
impl PartialEq<OsString> for str
[src]
impl<'a, 'b> PartialEq<Cow<'a, OsStr>> for OsStr
[src]
impl<'a, 'b> PartialEq<&'a Path> for OsString
[src]
impl PartialEq<CStr> for CStr
[src]
impl PartialEq<FileType> for FileType
[src]
impl PartialEq<AccessError> for AccessError
[src]
fn eq(&self, other: &AccessError) -> bool
[src]
fn ne(&self, other: &AccessError) -> bool
[src]
impl<'a, 'b> PartialEq<Cow<'b, OsStr>> for &'a Path
[src]
impl PartialEq<VarError> for VarError
[src]
impl<'a, 'b> PartialEq<Cow<'a, OsStr>> for &'b OsStr
[src]
impl<'a, 'b> PartialEq<OsStr> for &'a Path
[src]
impl<'a, 'b> PartialEq<Path> for &'a OsStr
[src]
impl<'a> PartialEq<Components<'a>> for Components<'a>
[src]
fn eq(&self, other: &Components<'a>) -> bool
[src]
impl<'a, 'b> PartialEq<Cow<'a, OsStr>> for PathBuf
[src]
impl<'a, 'b> PartialEq<Cow<'a, Path>> for PathBuf
[src]
impl PartialEq<ErrorKind> for ErrorKind
[src]
impl PartialEq<Output> for Output
[src]
impl<'a, 'b> PartialEq<OsString> for &'a OsStr
[src]
impl<'a, 'b> PartialEq<OsString> for PathBuf
[src]
impl PartialEq<PathBuf> for PathBuf
[src]
impl<T> PartialEq<TrySendError<T>> for TrySendError<T> where
T: PartialEq<T>,
[src]
T: PartialEq<T>,
fn eq(&self, other: &TrySendError<T>) -> bool
[src]
fn ne(&self, other: &TrySendError<T>) -> bool
[src]
impl<'a, 'b> PartialEq<&'a Path> for OsStr
[src]
impl PartialEq<Instant> for Instant
[src]
impl PartialEq<IntoStringError> for IntoStringError
[src]
fn eq(&self, other: &IntoStringError) -> bool
[src]
fn ne(&self, other: &IntoStringError) -> bool
[src]
impl PartialEq<Shutdown> for Shutdown
[src]
impl<'a, 'b> PartialEq<Cow<'a, Path>> for OsString
[src]
impl<'a, 'b> PartialEq<Path> for OsString
[src]
impl PartialEq<SystemTime> for SystemTime
[src]
fn eq(&self, other: &SystemTime) -> bool
[src]
fn ne(&self, other: &SystemTime) -> bool
[src]
impl PartialEq<SocketAddrV4> for SocketAddrV4
[src]
fn eq(&self, other: &SocketAddrV4) -> bool
[src]
impl PartialEq<StripPrefixError> for StripPrefixError
[src]
fn eq(&self, other: &StripPrefixError) -> bool
[src]
fn ne(&self, other: &StripPrefixError) -> bool
[src]
impl PartialEq<ExitStatus> for ExitStatus
[src]
fn eq(&self, other: &ExitStatus) -> bool
[src]
fn ne(&self, other: &ExitStatus) -> bool
[src]
impl PartialEq<SocketAddr> for SocketAddr
[src]
fn eq(&self, other: &SocketAddr) -> bool
[src]
fn ne(&self, other: &SocketAddr) -> bool
[src]
impl<'a, 'b> PartialEq<OsStr> for PathBuf
[src]
impl PartialEq<OsString> for OsString
[src]
impl<'a, 'b> PartialEq<Cow<'a, Path>> for OsStr
[src]
impl PartialEq<Path> for Path
[src]
impl PartialEq<Ipv4Addr> for Ipv4Addr
[src]
impl<'a> PartialEq<Component<'a>> for Component<'a>
[src]
impl PartialEq<IpAddr> for Ipv6Addr
[src]
impl<'a, 'b> PartialEq<OsString> for Path
[src]
impl<'a, 'b> PartialEq<OsString> for OsStr
[src]
impl PartialEq<RecvTimeoutError> for RecvTimeoutError
[src]
fn eq(&self, other: &RecvTimeoutError) -> bool
[src]
impl<'a> PartialEq<PrefixComponent<'a>> for PrefixComponent<'a>
[src]
fn eq(&self, other: &PrefixComponent<'a>) -> bool
[src]
impl<'a, 'b> PartialEq<PathBuf> for OsString
[src]
impl PartialEq<FromVecWithNulError> for FromVecWithNulError
[src]
fn eq(&self, other: &FromVecWithNulError) -> bool
[src]
fn ne(&self, other: &FromVecWithNulError) -> bool
[src]
impl<'a, 'b> PartialEq<&'a OsStr> for Path
[src]
impl<'a, 'b> PartialEq<Path> for OsStr
[src]
impl<T> PartialEq<SendError<T>> for SendError<T> where
T: PartialEq<T>,
[src]
T: PartialEq<T>,
impl<'_> PartialEq<&'_ str> for OsString
[src]
impl PartialEq<IpAddr> for IpAddr
[src]
impl PartialEq<Ipv6Addr> for IpAddr
[src]
impl<'a, 'b> PartialEq<Path> for PathBuf
[src]
impl PartialEq<Ipv4Addr> for IpAddr
[src]
impl PartialEq<Permissions> for Permissions
[src]
fn eq(&self, other: &Permissions) -> bool
[src]
fn ne(&self, other: &Permissions) -> bool
[src]
impl<T> PartialEq<SyncOnceCell<T>> for SyncOnceCell<T> where
T: PartialEq<T>,
[src]
T: PartialEq<T>,
fn eq(&self, other: &SyncOnceCell<T>) -> bool
[src]
impl<'a> PartialEq<Prefix<'a>> for Prefix<'a>
[src]
impl PartialEq<OsStr> for OsStr
[src]
impl<T> PartialEq<Cursor<T>> for Cursor<T> where
T: PartialEq<T>,
[src]
T: PartialEq<T>,
impl PartialEq<RecvError> for RecvError
[src]
impl PartialEq<str> for OsString
[src]
impl<'a, 'b> PartialEq<Cow<'a, OsStr>> for Path
[src]
impl<'a, 'b> PartialEq<Cow<'a, Path>> for &'b Path
[src]
impl PartialEq<UCred> for UCred
[src]
impl PartialEq<Ipv6MulticastScope> for Ipv6MulticastScope
[src]
fn eq(&self, other: &Ipv6MulticastScope) -> bool
[src]
impl<Ret, A, B, C, D, E, F, G, H, I, J, K> PartialEq<fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret> for fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
[src]
impl PartialEq<DecodeUtf16Error> for DecodeUtf16Error
[src]
fn eq(&self, other: &DecodeUtf16Error) -> bool
[src]
fn ne(&self, other: &DecodeUtf16Error) -> bool
[src]
impl<T> PartialEq<Wrapping<T>> for Wrapping<T> where
T: PartialEq<T>,
[src]
T: PartialEq<T>,
impl<'b, A, B, const N: usize> PartialEq<&'b [B]> for [A; N] where
A: PartialEq<B>,
[src]
A: PartialEq<B>,
impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> PartialEq<unsafe fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret> 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> PartialEq<extern "C" fn(A, B, C, D, E, F) -> Ret> for extern "C" fn(A, B, C, D, E, F) -> Ret
[src]
impl PartialEq<RawWakerVTable> for RawWakerVTable
[src]
fn eq(&self, other: &RawWakerVTable) -> bool
[src]
fn ne(&self, other: &RawWakerVTable) -> bool
[src]
impl<Ret> PartialEq<extern "C" fn() -> Ret> for extern "C" fn() -> Ret
[src]
impl PartialEq<NonZeroI32> for NonZeroI32
[src]
fn eq(&self, other: &NonZeroI32) -> bool
[src]
fn ne(&self, other: &NonZeroI32) -> bool
[src]
impl PartialEq<u64> for u64
[src]
impl<Ret, A, B, C, D, E> PartialEq<unsafe extern "C" fn(A, B, C, D, E, ...) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, ...) -> Ret
[src]
impl PartialEq<NonZeroI16> for NonZeroI16
[src]
fn eq(&self, other: &NonZeroI16) -> bool
[src]
fn ne(&self, other: &NonZeroI16) -> bool
[src]
impl<A, B, C> PartialEq<(A, B, C)> for (A, B, C) where
A: PartialEq<A>,
B: PartialEq<B>,
C: PartialEq<C> + ?Sized,
[src]
A: PartialEq<A>,
B: PartialEq<B>,
C: PartialEq<C> + ?Sized,
impl PartialEq<NonZeroU8> for NonZeroU8
[src]
impl PartialEq<FpCategory> for FpCategory
[src]
fn eq(&self, other: &FpCategory) -> bool
[src]
impl<Ret, A, B, C, D, E, F, G, H> PartialEq<unsafe fn(A, B, C, D, E, F, G, H) -> Ret> for unsafe fn(A, B, C, D, E, F, G, H) -> Ret
[src]
impl<Ret, A, B, C, D, E, F, G, H> PartialEq<unsafe extern "C" fn(A, B, C, D, E, F, G, H) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, G, H) -> Ret
[src]
impl<Ret, A, B, C, D> PartialEq<extern "C" fn(A, B, C, D) -> Ret> for extern "C" fn(A, B, C, D) -> Ret
[src]
impl<A, B, C, D, E, F, G, H, I> PartialEq<(A, B, C, D, E, F, G, H, I)> for (A, B, C, D, E, F, G, H, I) where
A: PartialEq<A>,
B: PartialEq<B>,
C: PartialEq<C>,
D: PartialEq<D>,
E: PartialEq<E>,
F: PartialEq<F>,
G: PartialEq<G>,
H: PartialEq<H>,
I: PartialEq<I> + ?Sized,
[src]
A: PartialEq<A>,
B: PartialEq<B>,
C: PartialEq<C>,
D: PartialEq<D>,
E: PartialEq<E>,
F: PartialEq<F>,
G: PartialEq<G>,
H: PartialEq<H>,
I: PartialEq<I> + ?Sized,
fn eq(&self, other: &(A, B, C, D, E, F, G, H, I)) -> bool
[src]
fn ne(&self, other: &(A, B, C, D, E, F, G, H, I)) -> bool
[src]
impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> PartialEq<unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret> 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> PartialEq<fn(A, B, C, D, E, F) -> Ret> for fn(A, B, C, D, E, F) -> Ret
[src]
impl<Ret, A, B> PartialEq<unsafe extern "C" fn(A, B, ...) -> Ret> for unsafe extern "C" fn(A, B, ...) -> Ret
[src]
impl<Ret, A, B, C, D, E, F, G> PartialEq<extern "C" fn(A, B, C, D, E, F, G, ...) -> Ret> for extern "C" fn(A, B, C, D, E, F, G, ...) -> Ret
[src]
impl<Ret, A, B, C, D, E, F, G, H, I, J> PartialEq<unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J) -> Ret
[src]
impl<A, B> PartialEq<(A, B)> for (A, B) where
A: PartialEq<A>,
B: PartialEq<B> + ?Sized,
[src]
A: PartialEq<A>,
B: PartialEq<B> + ?Sized,
impl<Ret, A> PartialEq<unsafe extern "C" fn(A, ...) -> Ret> for unsafe extern "C" fn(A, ...) -> Ret
[src]
impl<Ret, A, B, C, D, E, F, G, H, I, J> PartialEq<fn(A, B, C, D, E, F, G, H, I, J) -> Ret> for fn(A, B, C, D, E, F, G, H, I, J) -> Ret
[src]
impl PartialEq<Duration> for Duration
[src]
impl<T> PartialEq<*mut T> for *mut T where
T: ?Sized,
[src]
T: ?Sized,
impl<Ret, A, B, C, D, E, F, G> PartialEq<extern "C" fn(A, B, C, D, E, F, G) -> Ret> for extern "C" fn(A, B, C, D, E, F, G) -> Ret
[src]
impl<Ret, A, B, C, D, E, F, G, H> PartialEq<fn(A, B, C, D, E, F, G, H) -> Ret> for fn(A, B, C, D, E, F, G, H) -> Ret
[src]
impl PartialEq<bool> for bool
[src]
impl<Ret, A, B, C, D, E> PartialEq<unsafe fn(A, B, C, D, E) -> Ret> for unsafe fn(A, B, C, D, E) -> Ret
[src]
impl<Ret, A> PartialEq<extern "C" fn(A) -> Ret> for extern "C" fn(A) -> Ret
[src]
impl PartialEq<PhantomPinned> for PhantomPinned
[src]
fn eq(&self, other: &PhantomPinned) -> bool
[src]
impl PartialEq<NonZeroU16> for NonZeroU16
[src]
fn eq(&self, other: &NonZeroU16) -> bool
[src]
fn ne(&self, other: &NonZeroU16) -> bool
[src]
impl<Ret, A, B, C, D, E, F> PartialEq<unsafe fn(A, B, C, D, E, F) -> Ret> for unsafe fn(A, B, C, D, E, F) -> Ret
[src]
impl<A, B> PartialEq<[B]> for [A] where
A: PartialEq<B>,
[src]
A: PartialEq<B>,
impl<'_, '_, A, B> PartialEq<&'_ mut B> for &'_ A where
A: PartialEq<B> + ?Sized,
B: ?Sized,
[src]
A: PartialEq<B> + ?Sized,
B: ?Sized,
impl<A, B, C, D, E, F> PartialEq<(A, B, C, D, E, F)> for (A, B, C, D, E, F) where
A: PartialEq<A>,
B: PartialEq<B>,
C: PartialEq<C>,
D: PartialEq<D>,
E: PartialEq<E>,
F: PartialEq<F> + ?Sized,
[src]
A: PartialEq<A>,
B: PartialEq<B>,
C: PartialEq<C>,
D: PartialEq<D>,
E: PartialEq<E>,
F: PartialEq<F> + ?Sized,
fn eq(&self, other: &(A, B, C, D, E, F)) -> bool
[src]
fn ne(&self, other: &(A, B, C, D, E, F)) -> bool
[src]
impl<Ret, A, B, C, D, E, F, G> PartialEq<unsafe extern "C" fn(A, B, C, D, E, F, G, ...) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, G, ...) -> Ret
[src]
impl<'a> PartialEq<Location<'a>> for Location<'a>
[src]
impl PartialEq<i16> for i16
[src]
impl<'_, '_, A, B> PartialEq<&'_ B> for &'_ A where
A: PartialEq<B> + ?Sized,
B: ?Sized,
[src]
A: PartialEq<B> + ?Sized,
B: ?Sized,
impl<Ret, A, B, C, D, E> PartialEq<extern "C" fn(A, B, C, D, E) -> Ret> for extern "C" fn(A, B, C, D, E) -> Ret
[src]
impl<Ret, A, B, C, D, E, F, G, H, I> PartialEq<unsafe extern "C" fn(A, B, C, D, E, F, G, H, I) -> Ret> 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> PartialEq<unsafe fn(A, B, C, D, E, F, G) -> Ret> for unsafe fn(A, B, C, D, E, F, G) -> Ret
[src]
impl<A, B, const N: usize> PartialEq<[A; N]> for [B] where
B: PartialEq<A>,
[src]
B: PartialEq<A>,
impl PartialEq<NonZeroIsize> for NonZeroIsize
[src]
fn eq(&self, other: &NonZeroIsize) -> bool
[src]
fn ne(&self, other: &NonZeroIsize) -> bool
[src]
impl PartialEq<u8> for u8
[src]
impl<Ret, A, B, C, D, E, F, G, H, I, J, K> PartialEq<extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Ret> 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> PartialEq<unsafe fn(A, B, C, D, E, F, G, H, I) -> Ret> for unsafe fn(A, B, C, D, E, F, G, H, I) -> Ret
[src]
impl PartialEq<i8> for i8
[src]
impl<A, B, C, D, E> PartialEq<(A, B, C, D, E)> for (A, B, C, D, E) where
A: PartialEq<A>,
B: PartialEq<B>,
C: PartialEq<C>,
D: PartialEq<D>,
E: PartialEq<E> + ?Sized,
[src]
A: PartialEq<A>,
B: PartialEq<B>,
C: PartialEq<C>,
D: PartialEq<D>,
E: PartialEq<E> + ?Sized,
fn eq(&self, other: &(A, B, C, D, E)) -> bool
[src]
fn ne(&self, other: &(A, B, C, D, E)) -> bool
[src]
impl<Ret, A, B, C, D> PartialEq<unsafe extern "C" fn(A, B, C, D) -> Ret> for unsafe extern "C" fn(A, B, C, D) -> Ret
[src]
impl<T> PartialEq<Poll<T>> for Poll<T> where
T: PartialEq<T>,
[src]
T: PartialEq<T>,
impl<A, B, const N: usize> PartialEq<[B]> for [A; N] where
A: PartialEq<B>,
[src]
A: PartialEq<B>,
impl<Ret, A, B, C> PartialEq<fn(A, B, C) -> Ret> for fn(A, B, C) -> Ret
[src]
impl<Ret, A, B, C, D, E, F, G, H, I> PartialEq<fn(A, B, C, D, E, F, G, H, I) -> Ret> for fn(A, B, C, D, E, F, G, H, I) -> Ret
[src]
impl<'_, '_, A, B> PartialEq<&'_ B> for &'_ mut A where
A: PartialEq<B> + ?Sized,
B: ?Sized,
[src]
A: PartialEq<B> + ?Sized,
B: ?Sized,
impl PartialEq<f64> for f64
[src]
impl<Ret, A, B, C, D, E, F, G> PartialEq<unsafe extern "C" fn(A, B, C, D, E, F, G) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, G) -> Ret
[src]
impl<T> PartialEq<PhantomData<T>> for PhantomData<T> where
T: ?Sized,
[src]
T: ?Sized,
fn eq(&self, _other: &PhantomData<T>) -> bool
[src]
impl PartialEq<NonZeroU32> for NonZeroU32
[src]
fn eq(&self, other: &NonZeroU32) -> bool
[src]
fn ne(&self, other: &NonZeroU32) -> bool
[src]
impl<Ret, A, B, C, D, E, F, G, H, I> PartialEq<extern "C" fn(A, B, C, D, E, F, G, H, I) -> Ret> for extern "C" fn(A, B, C, D, E, F, G, H, I) -> Ret
[src]
impl PartialEq<u32> for u32
[src]
impl<Ret, A, B, C, D, E, F, G, H, I, J, K> PartialEq<unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Ret
[src]
fn eq(
&self,
other: &unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Ret
) -> bool
[src]
&self,
other: &unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Ret
) -> bool
impl PartialEq<ParseCharError> for ParseCharError
[src]
fn eq(&self, other: &ParseCharError) -> bool
[src]
fn ne(&self, other: &ParseCharError) -> bool
[src]
impl PartialEq<!> for !
[src]
impl PartialEq<f32> for f32
[src]
impl<'b, A, B, const N: usize> PartialEq<&'b mut [B]> for [A; N] where
A: PartialEq<B>,
[src]
A: PartialEq<B>,
fn eq(&self, other: &&'b mut [B]) -> bool
[src]
fn ne(&self, other: &&'b mut [B]) -> bool
[src]
impl<Ret, A, B, C, D, E, F, G, H, I, J> PartialEq<unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, ...) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, ...) -> Ret
[src]
impl<A> PartialEq<(A,)> for (A,) where
A: PartialEq<A> + ?Sized,
[src]
A: PartialEq<A> + ?Sized,
impl<Ret, A, B, C> PartialEq<unsafe extern "C" fn(A, B, C) -> Ret> for unsafe extern "C" fn(A, B, C) -> Ret
[src]
impl<Ret, A, B, C, D> PartialEq<fn(A, B, C, D) -> Ret> for fn(A, B, C, D) -> Ret
[src]
impl<Ret> PartialEq<fn() -> Ret> for fn() -> Ret
[src]
impl<Ret, A, B, C, D, E, F, G, H, I> PartialEq<unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, ...) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, ...) -> Ret
[src]
impl<T> PartialEq<RefCell<T>> for RefCell<T> where
T: PartialEq<T> + ?Sized,
[src]
T: PartialEq<T> + ?Sized,
fn eq(&self, other: &RefCell<T>) -> bool
[src]
Panics
Panics if the value in either RefCell
is currently borrowed.
impl PartialEq<u128> for u128
[src]
impl<A, B, const N: usize> PartialEq<[B; N]> for [A; N] where
A: PartialEq<B>,
[src]
A: PartialEq<B>,
impl PartialEq<NonZeroI64> for NonZeroI64
[src]
fn eq(&self, other: &NonZeroI64) -> bool
[src]
fn ne(&self, other: &NonZeroI64) -> bool
[src]
impl PartialEq<NonZeroUsize> for NonZeroUsize
[src]
fn eq(&self, other: &NonZeroUsize) -> bool
[src]
fn ne(&self, other: &NonZeroUsize) -> bool
[src]
impl<Ret, A, B, C, D, E, F, G, H, I, J> PartialEq<extern "C" fn(A, B, C, D, E, F, G, H, I, J, ...) -> Ret> for extern "C" fn(A, B, C, D, E, F, G, H, I, J, ...) -> Ret
[src]
impl<A, B, C, D, E, F, G> PartialEq<(A, B, C, D, E, F, G)> for (A, B, C, D, E, F, G) where
A: PartialEq<A>,
B: PartialEq<B>,
C: PartialEq<C>,
D: PartialEq<D>,
E: PartialEq<E>,
F: PartialEq<F>,
G: PartialEq<G> + ?Sized,
[src]
A: PartialEq<A>,
B: PartialEq<B>,
C: PartialEq<C>,
D: PartialEq<D>,
E: PartialEq<E>,
F: PartialEq<F>,
G: PartialEq<G> + ?Sized,
fn eq(&self, other: &(A, B, C, D, E, F, G)) -> bool
[src]
fn ne(&self, other: &(A, B, C, D, E, F, G)) -> bool
[src]
impl<Ret, A, B, C, D, E, F, G> PartialEq<fn(A, B, C, D, E, F, G) -> Ret> for fn(A, B, C, D, E, F, G) -> Ret
[src]
impl PartialEq<Ordering> for Ordering
[src]
impl PartialEq<NonZeroI128> for NonZeroI128
[src]
fn eq(&self, other: &NonZeroI128) -> bool
[src]
fn ne(&self, other: &NonZeroI128) -> bool
[src]
impl PartialEq<ParseIntError> for ParseIntError
[src]
fn eq(&self, other: &ParseIntError) -> bool
[src]
fn ne(&self, other: &ParseIntError) -> bool
[src]
impl PartialEq<ParseFloatError> for ParseFloatError
[src]
fn eq(&self, other: &ParseFloatError) -> bool
[src]
fn ne(&self, other: &ParseFloatError) -> bool
[src]
impl<Ret, A> PartialEq<fn(A) -> Ret> for fn(A) -> Ret
[src]
impl<Ret, A, B, C, D, E, F> PartialEq<extern "C" fn(A, B, C, D, E, F, ...) -> Ret> for extern "C" fn(A, B, C, D, E, F, ...) -> Ret
[src]
impl<Ret, A> PartialEq<unsafe fn(A) -> Ret> for unsafe fn(A) -> Ret
[src]
impl<Ret, A, B, C, D, E, F, G, H> PartialEq<unsafe extern "C" fn(A, B, C, D, E, F, G, H, ...) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, G, H, ...) -> Ret
[src]
impl<Ret, A> PartialEq<extern "C" fn(A, ...) -> Ret> for extern "C" fn(A, ...) -> Ret
[src]
impl<Ret, A, B, C> PartialEq<extern "C" fn(A, B, C, ...) -> Ret> for extern "C" fn(A, B, C, ...) -> Ret
[src]
impl<Ret, A, B, C, D, E> PartialEq<fn(A, B, C, D, E) -> Ret> for fn(A, B, C, D, E) -> Ret
[src]
impl PartialEq<TypeId> for TypeId
[src]
impl<'b, A, B, const N: usize> PartialEq<[A; N]> for &'b mut [B] where
B: PartialEq<A>,
[src]
B: PartialEq<A>,
impl<Ret, A, B, C, D> PartialEq<extern "C" fn(A, B, C, D, ...) -> Ret> for extern "C" fn(A, B, C, D, ...) -> Ret
[src]
impl<T> PartialEq<OnceCell<T>> for OnceCell<T> where
T: PartialEq<T>,
[src]
T: PartialEq<T>,
impl<Ret, A, B, C, D, E> PartialEq<extern "C" fn(A, B, C, D, E, ...) -> Ret> for extern "C" fn(A, B, C, D, E, ...) -> Ret
[src]
impl<A, B, C, D, E, F, G, H, I, J, K> PartialEq<(A, B, C, D, E, F, G, H, I, J, K)> for (A, B, C, D, E, F, G, H, I, J, K) where
A: PartialEq<A>,
B: PartialEq<B>,
C: PartialEq<C>,
D: PartialEq<D>,
E: PartialEq<E>,
F: PartialEq<F>,
G: PartialEq<G>,
H: PartialEq<H>,
I: PartialEq<I>,
J: PartialEq<J>,
K: PartialEq<K> + ?Sized,
[src]
A: PartialEq<A>,
B: PartialEq<B>,
C: PartialEq<C>,
D: PartialEq<D>,
E: PartialEq<E>,
F: PartialEq<F>,
G: PartialEq<G>,
H: PartialEq<H>,
I: PartialEq<I>,
J: PartialEq<J>,
K: PartialEq<K> + ?Sized,
fn eq(&self, other: &(A, B, C, D, E, F, G, H, I, J, K)) -> bool
[src]
fn ne(&self, other: &(A, B, C, D, E, F, G, H, I, J, K)) -> bool
[src]
impl<Ret, A, B, C, D> PartialEq<unsafe fn(A, B, C, D) -> Ret> for unsafe fn(A, B, C, D) -> Ret
[src]
impl PartialEq<CpuidResult> for CpuidResult
[src]
fn eq(&self, other: &CpuidResult) -> bool
[src]
fn ne(&self, other: &CpuidResult) -> bool
[src]
impl<Ret, A, B, C, D, E, F, G, H, I, J> PartialEq<extern "C" fn(A, B, C, D, E, F, G, H, I, J) -> Ret> 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> PartialEq<extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret> for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret
[src]
impl PartialEq<IntErrorKind> for IntErrorKind
[src]
fn eq(&self, other: &IntErrorKind) -> bool
[src]
impl<'b, A, B, const N: usize> PartialEq<[A; N]> for &'b [B] where
B: PartialEq<A>,
[src]
B: PartialEq<A>,
impl<Ret> PartialEq<unsafe extern "C" fn() -> Ret> for unsafe extern "C" fn() -> Ret
[src]
impl PartialEq<NonZeroU128> for NonZeroU128
[src]
fn eq(&self, other: &NonZeroU128) -> bool
[src]
fn ne(&self, other: &NonZeroU128) -> bool
[src]
impl PartialEq<RawWaker> for RawWaker
[src]
impl<Ret, A, B> PartialEq<extern "C" fn(A, B) -> Ret> for extern "C" fn(A, B) -> Ret
[src]
impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> PartialEq<extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret> for 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, J> PartialEq<(A, B, C, D, E, F, G, H, I, J)> for (A, B, C, D, E, F, G, H, I, J) where
A: PartialEq<A>,
B: PartialEq<B>,
C: PartialEq<C>,
D: PartialEq<D>,
E: PartialEq<E>,
F: PartialEq<F>,
G: PartialEq<G>,
H: PartialEq<H>,
I: PartialEq<I>,
J: PartialEq<J> + ?Sized,
[src]
A: PartialEq<A>,
B: PartialEq<B>,
C: PartialEq<C>,
D: PartialEq<D>,
E: PartialEq<E>,
F: PartialEq<F>,
G: PartialEq<G>,
H: PartialEq<H>,
I: PartialEq<I>,
J: PartialEq<J> + ?Sized,
fn eq(&self, other: &(A, B, C, D, E, F, G, H, I, J)) -> bool
[src]
fn ne(&self, other: &(A, B, C, D, E, F, G, H, I, J)) -> bool
[src]
impl<Ret, A, B, C> PartialEq<unsafe extern "C" fn(A, B, C, ...) -> Ret> for unsafe extern "C" fn(A, B, C, ...) -> Ret
[src]
impl<Ret, A, B, C, D, E, F, G, H> PartialEq<extern "C" fn(A, B, C, D, E, F, G, H, ...) -> Ret> for extern "C" fn(A, B, C, D, E, F, G, H, ...) -> Ret
[src]
impl<'_, '_, A, B> PartialEq<&'_ mut B> for &'_ mut A where
A: PartialEq<B> + ?Sized,
B: ?Sized,
[src]
A: PartialEq<B> + ?Sized,
B: ?Sized,
impl PartialEq<char> for char
[src]
impl PartialEq<i64> for i64
[src]
impl PartialEq<usize> for usize
[src]
impl<T> PartialEq<Cell<T>> for Cell<T> where
T: PartialEq<T> + Copy,
[src]
T: PartialEq<T> + Copy,
impl<Ret, A, B, C, D, E, F, G, H, I, J, K> PartialEq<extern "C" fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret> for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
[src]
impl PartialEq<i128> for i128
[src]
impl<Ret, A, B, C> PartialEq<extern "C" fn(A, B, C) -> Ret> for extern "C" fn(A, B, C) -> Ret
[src]
impl<Ret, A, B, C> PartialEq<unsafe fn(A, B, C) -> Ret> for unsafe fn(A, B, C) -> Ret
[src]
impl<Ret, A, B, C, D, E> PartialEq<unsafe extern "C" fn(A, B, C, D, E) -> Ret> for unsafe extern "C" fn(A, B, C, D, E) -> Ret
[src]
impl PartialEq<isize> for isize
[src]
impl<T> PartialEq<NonNull<T>> for NonNull<T> where
T: ?Sized,
[src]
T: ?Sized,
impl<Ret, A, B, C, D, E, F, G, H, I, J, K> PartialEq<unsafe fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret> for unsafe fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
[src]
impl<'a> PartialEq<Utf8LossyChunk<'a>> for Utf8LossyChunk<'a>
[src]
fn eq(&self, other: &Utf8LossyChunk<'a>) -> bool
[src]
fn ne(&self, other: &Utf8LossyChunk<'a>) -> bool
[src]
impl PartialEq<str> for str
[src]
impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> PartialEq<fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret> for fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
[src]
impl<A, B, C, D> PartialEq<(A, B, C, D)> for (A, B, C, D) where
A: PartialEq<A>,
B: PartialEq<B>,
C: PartialEq<C>,
D: PartialEq<D> + ?Sized,
[src]
A: PartialEq<A>,
B: PartialEq<B>,
C: PartialEq<C>,
D: PartialEq<D> + ?Sized,
impl<Ret, A, B, C, D, E, F, G, H> PartialEq<extern "C" fn(A, B, C, D, E, F, G, H) -> Ret> for 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, L> PartialEq<unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret
[src]
fn eq(
&self,
other: &unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret
) -> bool
[src]
&self,
other: &unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret
) -> bool
impl PartialEq<CharTryFromError> for CharTryFromError
[src]
fn eq(&self, other: &CharTryFromError) -> bool
[src]
fn ne(&self, other: &CharTryFromError) -> bool
[src]
impl<Ret, A, B, C, D, E, F> PartialEq<unsafe extern "C" fn(A, B, C, D, E, F, ...) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F, ...) -> Ret
[src]
impl PartialEq<NonZeroU64> for NonZeroU64
[src]
fn eq(&self, other: &NonZeroU64) -> bool
[src]
fn ne(&self, other: &NonZeroU64) -> bool
[src]
impl PartialEq<NonZeroI8> for NonZeroI8
[src]
impl<Ret, A, B> PartialEq<extern "C" fn(A, B, ...) -> Ret> for extern "C" fn(A, B, ...) -> Ret
[src]
impl<Ret, A, B> PartialEq<unsafe fn(A, B) -> Ret> for unsafe fn(A, B) -> Ret
[src]
impl<Ret> PartialEq<unsafe fn() -> Ret> for unsafe fn() -> Ret
[src]
impl<Ret, A, B> PartialEq<fn(A, B) -> Ret> for fn(A, B) -> Ret
[src]
impl PartialEq<u16> for u16
[src]
impl PartialEq<i32> for i32
[src]
impl PartialEq<()> for ()
[src]
impl<T> PartialEq<*const T> for *const T where
T: ?Sized,
[src]
T: ?Sized,
impl<Ret, A, B, C, D, E, F, G, H, I, J> PartialEq<unsafe fn(A, B, C, D, E, F, G, H, I, J) -> Ret> for unsafe fn(A, B, C, D, E, F, G, H, I, J) -> Ret
[src]
impl PartialEq<TryFromIntError> for TryFromIntError
[src]
fn eq(&self, other: &TryFromIntError) -> bool
[src]
fn ne(&self, other: &TryFromIntError) -> bool
[src]
impl<Ret, A> PartialEq<unsafe extern "C" fn(A) -> Ret> for unsafe extern "C" fn(A) -> Ret
[src]
impl<A, B, C, D, E, F, G, H> PartialEq<(A, B, C, D, E, F, G, H)> for (A, B, C, D, E, F, G, H) where
A: PartialEq<A>,
B: PartialEq<B>,
C: PartialEq<C>,
D: PartialEq<D>,
E: PartialEq<E>,
F: PartialEq<F>,
G: PartialEq<G>,
H: PartialEq<H> + ?Sized,
[src]
A: PartialEq<A>,
B: PartialEq<B>,
C: PartialEq<C>,
D: PartialEq<D>,
E: PartialEq<E>,
F: PartialEq<F>,
G: PartialEq<G>,
H: PartialEq<H> + ?Sized,
fn eq(&self, other: &(A, B, C, D, E, F, G, H)) -> bool
[src]
fn ne(&self, other: &(A, B, C, D, E, F, G, H)) -> bool
[src]
impl<P, Q> PartialEq<Pin<Q>> for Pin<P> where
P: Deref,
Q: Deref,
<P as Deref>::Target: PartialEq<<Q as Deref>::Target>,
[src]
P: Deref,
Q: Deref,
<P as Deref>::Target: PartialEq<<Q as Deref>::Target>,
impl<Ret, A, B> PartialEq<unsafe extern "C" fn(A, B) -> Ret> for unsafe extern "C" fn(A, B) -> Ret
[src]
impl<A, B, C, D, E, F, G, H, I, J, K, L> PartialEq<(A, B, C, D, E, F, G, H, I, J, K, L)> for (A, B, C, D, E, F, G, H, I, J, K, L) where
A: PartialEq<A>,
B: PartialEq<B>,
C: PartialEq<C>,
D: PartialEq<D>,
E: PartialEq<E>,
F: PartialEq<F>,
G: PartialEq<G>,
H: PartialEq<H>,
I: PartialEq<I>,
J: PartialEq<J>,
K: PartialEq<K>,
L: PartialEq<L> + ?Sized,
[src]
A: PartialEq<A>,
B: PartialEq<B>,
C: PartialEq<C>,
D: PartialEq<D>,
E: PartialEq<E>,
F: PartialEq<F>,
G: PartialEq<G>,
H: PartialEq<H>,
I: PartialEq<I>,
J: PartialEq<J>,
K: PartialEq<K>,
L: PartialEq<L> + ?Sized,
fn eq(&self, other: &(A, B, C, D, E, F, G, H, I, J, K, L)) -> bool
[src]
fn ne(&self, other: &(A, B, C, D, E, F, G, H, I, J, K, L)) -> bool
[src]
impl<Ret, A, B, C, D, E, F, G, H, I> PartialEq<extern "C" fn(A, B, C, D, E, F, G, H, I, ...) -> Ret> for 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, K> PartialEq<unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret> 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> PartialEq<unsafe extern "C" fn(A, B, C, D, E, F) -> Ret> for unsafe extern "C" fn(A, B, C, D, E, F) -> Ret
[src]
impl<Ret, A, B, C, D> PartialEq<unsafe extern "C" fn(A, B, C, D, ...) -> Ret> for unsafe extern "C" fn(A, B, C, D, ...) -> Ret
[src]
impl<'a, 'b> PartialEq<String> for &'a str
[src]
impl<'a, 'b> PartialEq<Cow<'a, str>> for &'b str
[src]
impl<T> PartialEq<Arc<T>> for Arc<T> where
T: PartialEq<T> + ?Sized,
[src]
T: PartialEq<T> + ?Sized,
fn eq(&self, other: &Arc<T>) -> bool
[src]
Equality for two Arc
s.
Two Arc
s are equal if their inner values are equal, even if they are
stored in different allocation.
If T
also implements Eq
(implying reflexivity of equality),
two Arc
s that point to the same allocation are always equal.
Examples
use std::sync::Arc; let five = Arc::new(5); assert!(five == Arc::new(5));
fn ne(&self, other: &Arc<T>) -> bool
[src]
Inequality for two Arc
s.
Two Arc
s are unequal if their inner values are unequal.
If T
also implements Eq
(implying reflexivity of equality),
two Arc
s that point to the same value are never unequal.
Examples
use std::sync::Arc; let five = Arc::new(5); assert!(five != Arc::new(6));
impl<'_, A, B> PartialEq<Vec<B>> for &'_ mut [A] where
A: PartialEq<B>,
[src]
A: PartialEq<B>,
impl<T> PartialEq<Rc<T>> for Rc<T> where
T: PartialEq<T> + ?Sized,
[src]
T: PartialEq<T> + ?Sized,
fn eq(&self, other: &Rc<T>) -> bool
[src]
Equality for two Rc
s.
Two Rc
s are equal if their inner values are equal, even if they are
stored in different allocation.
If T
also implements Eq
(implying reflexivity of equality),
two Rc
s that point to the same allocation are
always equal.
Examples
use std::rc::Rc; let five = Rc::new(5); assert!(five == Rc::new(5));
fn ne(&self, other: &Rc<T>) -> bool
[src]
Inequality for two Rc
s.
Two Rc
s are unequal if their inner values are unequal.
If T
also implements Eq
(implying reflexivity of equality),
two Rc
s that point to the same allocation are
never unequal.
Examples
use std::rc::Rc; let five = Rc::new(5); assert!(five != Rc::new(6));
impl<A, B> PartialEq<Vec<B>> for [A] where
A: PartialEq<B>,
[src]
A: PartialEq<B>,
impl<'a, 'b> PartialEq<String> for str
[src]
impl<'a, 'b> PartialEq<Cow<'a, str>> for str
[src]
impl<'_, A, B> PartialEq<Vec<B>> for &'_ [A] where
A: PartialEq<B>,
[src]
A: PartialEq<B>,
impl PartialEq<_Unwind_Action> for _Unwind_Action
impl PartialEq<_Unwind_Reason_Code> for _Unwind_Reason_Code
impl PartialEq<Msb0> for Msb0
[src]
impl<'_, O1, O2, T1, T2> PartialEq<BitBox<O2, T2>> for &'_ mut BitSlice<O1, T1> where
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
[src]
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
impl<O1, O2, T1, T2> PartialEq<BitVec<O2, T2>> for BitSlice<O1, T1> where
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
[src]
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
impl<'_, O1, O2, T1, T2> PartialEq<BitVec<O2, T2>> for &'_ mut BitSlice<O1, T1> where
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
[src]
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
impl<O, V, Rhs> PartialEq<Rhs> for BitArray<O, V> where
O: BitOrder,
Rhs: ?Sized,
V: BitView,
BitSlice<O, <V as BitView>::Store>: PartialEq<Rhs>,
[src]
O: BitOrder,
Rhs: ?Sized,
V: BitView,
BitSlice<O, <V as BitView>::Store>: PartialEq<Rhs>,
impl<R> PartialEq<BitIdx<R>> for BitIdx<R> where
R: PartialEq<R> + BitRegister,
[src]
R: PartialEq<R> + BitRegister,
impl<O1, O2, T1, T2> PartialEq<BitBox<O2, T2>> for BitSlice<O1, T1> where
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
[src]
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
impl PartialEq<Lsb0> for Lsb0
[src]
impl<O1, O2, T1, T2> PartialEq<BitSlice<O2, T2>> for BitSlice<O1, T1> where
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
[src]
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
Tests if two BitSlice
s are semantically — not bitwise — equal.
It is valid to compare slices of different ordering or memory types.
The equality condition requires that they have the same length and that at each index, the two slices have the same bit value.
impl<'_, O1, O2, T1, T2> PartialEq<BitSlice<O2, T2>> for &'_ BitSlice<O1, T1> where
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
[src]
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
impl<O, V, T> PartialEq<BitArray<O, V>> for BitSlice<O, T> where
O: BitOrder,
T: BitStore,
V: BitView,
[src]
O: BitOrder,
T: BitStore,
V: BitView,
impl<'_, O1, O2, T1, T2> PartialEq<BitVec<O2, T2>> for &'_ BitSlice<O1, T1> where
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
[src]
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
impl<O, T, Rhs> PartialEq<Rhs> for BitBox<O, T> where
O: BitOrder,
Rhs: PartialEq<BitSlice<O, T>> + ?Sized,
T: BitStore,
[src]
O: BitOrder,
Rhs: PartialEq<BitSlice<O, T>> + ?Sized,
T: BitStore,
impl<R> PartialEq<BitSel<R>> for BitSel<R> where
R: PartialEq<R> + BitRegister,
[src]
R: PartialEq<R> + BitRegister,
impl<R> PartialEq<BitMask<R>> for BitMask<R> where
R: PartialEq<R> + BitRegister,
[src]
R: PartialEq<R> + BitRegister,
impl<'_, O1, O2, T1, T2> PartialEq<BitBox<O2, T2>> for &'_ BitSlice<O1, T1> where
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
[src]
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
impl<R> PartialEq<BitPos<R>> for BitPos<R> where
R: PartialEq<R> + BitRegister,
[src]
R: PartialEq<R> + BitRegister,
impl<'_, O1, O2, T1, T2> PartialEq<&'_ BitSlice<O2, T2>> for BitSlice<O1, T1> where
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
[src]
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
impl<O, T, Rhs> PartialEq<Rhs> for BitVec<O, T> where
O: BitOrder,
Rhs: PartialEq<BitSlice<O, T>> + ?Sized,
T: BitStore,
[src]
O: BitOrder,
Rhs: PartialEq<BitSlice<O, T>> + ?Sized,
T: BitStore,
impl<R> PartialEq<BitTail<R>> for BitTail<R> where
R: PartialEq<R> + BitRegister,
[src]
R: PartialEq<R> + BitRegister,
impl<'_, O1, O2, T1, T2> PartialEq<BitSlice<O2, T2>> for &'_ mut BitSlice<O1, T1> where
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
[src]
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
impl<'_, O1, O2, T1, T2> PartialEq<&'_ mut BitSlice<O2, T2>> for BitSlice<O1, T1> where
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
[src]
O1: BitOrder,
O2: BitOrder,
T1: BitStore,
T2: BitStore,
impl PartialEq<ErrorCode> for ErrorCode
[src]
impl PartialEq<Error> for Error
[src]
impl<A> PartialEq<ArrayString<A>> for ArrayString<A> where
A: Array<Item = u8> + Copy,
[src]
A: Array<Item = u8> + Copy,
fn eq(&self, rhs: &ArrayString<A>) -> bool
[src]
impl<A> PartialEq<str> for ArrayString<A> where
A: Array<Item = u8> + Copy,
[src]
A: Array<Item = u8> + Copy,
impl<A> PartialEq<ArrayVec<A>> for ArrayVec<A> where
A: Array,
<A as Array>::Item: PartialEq<<A as Array>::Item>,
[src]
A: Array,
<A as Array>::Item: PartialEq<<A as Array>::Item>,
impl<T> PartialEq<CapacityError<T>> for CapacityError<T> where
T: PartialEq<T>,
[src]
T: PartialEq<T>,
fn eq(&self, other: &CapacityError<T>) -> bool
[src]
fn ne(&self, other: &CapacityError<T>) -> bool
[src]
impl<A> PartialEq<[<A as Array>::Item]> for ArrayVec<A> where
A: Array,
<A as Array>::Item: PartialEq<<A as Array>::Item>,
[src]
A: Array,
<A as Array>::Item: PartialEq<<A as Array>::Item>,
impl<A> PartialEq<ArrayString<A>> for str where
A: Array<Item = u8> + Copy,
[src]
A: Array<Item = u8> + Copy,
fn eq(&self, rhs: &ArrayString<A>) -> bool
[src]
impl PartialEq<Char> for char
impl PartialEq<Error> for Error
impl<'t> PartialEq<Match<'t>> for Match<'t>
impl<'t> PartialEq<Match<'t>> for Match<'t>
impl PartialEq<MatchKind> for MatchKind
impl PartialEq<Match> for Match
impl PartialEq<MatchKind> for MatchKind
impl PartialEq<Position> for Position
impl PartialEq<Anchor> for Anchor
impl PartialEq<AssertionKind> for AssertionKind
impl PartialEq<Concat> for Concat
impl PartialEq<GroupKind> for GroupKind
impl PartialEq<SpecialLiteralKind> for SpecialLiteralKind
impl PartialEq<Utf8Sequence> for Utf8Sequence
impl PartialEq<ClassUnicode> for ClassUnicode
impl PartialEq<SetFlags> for SetFlags
impl PartialEq<CaptureName> for CaptureName
impl PartialEq<Error> for Error
impl PartialEq<Group> for Group
impl PartialEq<Error> for Error
impl PartialEq<Hir> for Hir
impl PartialEq<Repetition> for Repetition
impl PartialEq<Class> for Class
impl PartialEq<ClassSetBinaryOpKind> for ClassSetBinaryOpKind
impl PartialEq<Utf8Range> for Utf8Range
impl PartialEq<HexLiteralKind> for HexLiteralKind
impl PartialEq<GroupKind> for GroupKind
impl PartialEq<Span> for Span
impl PartialEq<FlagsItem> for FlagsItem
impl PartialEq<Literals> for Literals
impl PartialEq<LiteralKind> for LiteralKind
impl PartialEq<ClassAsciiKind> for ClassAsciiKind
impl PartialEq<RepetitionRange> for RepetitionRange
impl PartialEq<FlagsItemKind> for FlagsItemKind
impl PartialEq<ClassBytes> for ClassBytes
impl PartialEq<ClassSetBinaryOp> for ClassSetBinaryOp
impl PartialEq<Ast> for Ast
impl PartialEq<ClassSetItem> for ClassSetItem
impl PartialEq<ClassSetRange> for ClassSetRange
impl PartialEq<Flags> for Flags
impl PartialEq<Literal> for Literal
impl PartialEq<ClassBracketed> for ClassBracketed
impl PartialEq<ClassSet> for ClassSet
impl PartialEq<HirKind> for HirKind
impl PartialEq<Literal> for Literal
impl PartialEq<ClassBytesRange> for ClassBytesRange
impl PartialEq<ClassUnicodeRange> for ClassUnicodeRange
impl PartialEq<Comment> for Comment
impl PartialEq<ClassAscii> for ClassAscii
impl PartialEq<Literal> for Literal
impl PartialEq<Group> for Group
impl PartialEq<WithComments> for WithComments
impl PartialEq<ClassSetUnion> for ClassSetUnion
impl PartialEq<ErrorKind> for ErrorKind
impl PartialEq<Flag> for Flag
impl PartialEq<Alternation> for Alternation
impl PartialEq<Class> for Class
impl PartialEq<Error> for Error
impl PartialEq<ClassUnicodeOpKind> for ClassUnicodeOpKind
impl PartialEq<RepetitionKind> for RepetitionKind
impl PartialEq<RepetitionOp> for RepetitionOp
impl PartialEq<ErrorKind> for ErrorKind
impl PartialEq<ClassUnicode> for ClassUnicode
impl PartialEq<RepetitionKind> for RepetitionKind
impl PartialEq<ClassPerlKind> for ClassPerlKind
impl PartialEq<RepetitionRange> for RepetitionRange
impl PartialEq<Assertion> for Assertion
impl PartialEq<WordBoundary> for WordBoundary
impl PartialEq<Repetition> for Repetition
impl PartialEq<ClassUnicodeKind> for ClassUnicodeKind
impl PartialEq<ClassPerl> for ClassPerl
Loading content...Implementors
impl PartialEq<CompareResult> for CompareResult
[src]
fn eq(&self, other: &CompareResult) -> bool
[src]
impl PartialEq<Needed> for Needed
[src]
impl PartialEq<ErrorKind> for nom::error::ErrorKind
[src]
impl PartialEq<VerboseErrorKind> for VerboseErrorKind
[src]
fn eq(&self, other: &VerboseErrorKind) -> bool
[src]
fn ne(&self, other: &VerboseErrorKind) -> bool
[src]
impl PartialEq<Ordering> for nom::lib::std::cmp::Ordering
[src]
impl PartialEq<TryReserveError> for TryReserveError
[src]
fn eq(&self, other: &TryReserveError) -> bool
[src]
fn ne(&self, other: &TryReserveError) -> bool
[src]
impl PartialEq<Infallible> for Infallible
[src]
fn eq(&self, &Infallible) -> bool
[src]
impl PartialEq<SearchStep> for SearchStep
[src]
fn eq(&self, other: &SearchStep) -> bool
[src]
fn ne(&self, other: &SearchStep) -> bool
[src]
impl PartialEq<Endianness> for Endianness
[src]
fn eq(&self, other: &Endianness) -> bool
[src]
impl PartialEq<AllocError> for AllocError
[src]
fn eq(&self, other: &AllocError) -> bool
[src]
impl PartialEq<Layout> for Layout
[src]
impl PartialEq<LayoutErr> for LayoutErr
[src]
impl PartialEq<Error> for nom::lib::std::fmt::Error
[src]
impl PartialEq<RangeFull> for RangeFull
[src]
impl PartialEq<NoneError> for NoneError
[src]
impl PartialEq<String> for String
[src]
impl PartialEq<ParseBoolError> for ParseBoolError
[src]
fn eq(&self, other: &ParseBoolError) -> bool
[src]
fn ne(&self, other: &ParseBoolError) -> bool
[src]
impl PartialEq<Utf8Error> for Utf8Error
[src]
impl PartialEq<FromUtf8Error> for FromUtf8Error
[src]
fn eq(&self, other: &FromUtf8Error) -> bool
[src]
fn ne(&self, other: &FromUtf8Error) -> bool
[src]
impl<'_, '_, A, B> PartialEq<&'_ [B]> for Cow<'_, [A]> where
A: PartialEq<B> + Clone,
[src]
A: PartialEq<B> + Clone,
impl<'_, '_, A, B> PartialEq<&'_ mut [B]> for Cow<'_, [A]> where
A: PartialEq<B> + Clone,
[src]
A: PartialEq<B> + Clone,
impl<'_, A, B> PartialEq<&'_ [B]> for VecDeque<A> where
A: PartialEq<B>,
[src]
A: PartialEq<B>,
impl<'_, A, B> PartialEq<&'_ [B]> for Vec<A> where
A: PartialEq<B>,
[src]
A: PartialEq<B>,
impl<'_, A, B> PartialEq<&'_ mut [B]> for VecDeque<A> where
A: PartialEq<B>,
[src]
A: PartialEq<B>,
impl<'_, A, B> PartialEq<&'_ mut [B]> for Vec<A> where
A: PartialEq<B>,
[src]
A: PartialEq<B>,
impl<'_, A, B> PartialEq<Vec<B>> for Cow<'_, [A]> where
A: PartialEq<B> + Clone,
[src]
A: PartialEq<B> + Clone,
impl<'_, A, B, const N: usize> PartialEq<&'_ [B; N]> for VecDeque<A> where
A: PartialEq<B>,
[src]
A: PartialEq<B>,
impl<'_, A, B, const N: usize> PartialEq<&'_ [B; N]> for Vec<A> where
A: PartialEq<B>,
[src]
A: PartialEq<B>,
impl<'_, A, B, const N: usize> PartialEq<&'_ mut [B; N]> for VecDeque<A> where
A: PartialEq<B>,
[src]
A: PartialEq<B>,
impl<'a, 'b> PartialEq<&'a str> for String
[src]
impl<'a, 'b> PartialEq<&'a Path> for Cow<'b, OsStr>
[src]
impl<'a, 'b> PartialEq<&'b str> for Cow<'a, str>
[src]
impl<'a, 'b> PartialEq<&'b OsStr> for Cow<'a, OsStr>
[src]
impl<'a, 'b> PartialEq<&'b OsStr> for Cow<'a, Path>
[src]
impl<'a, 'b> PartialEq<&'b Path> for Cow<'a, Path>
[src]
impl<'a, 'b> PartialEq<Cow<'a, str>> for String
[src]
impl<'a, 'b> PartialEq<str> for Cow<'a, str>
[src]
impl<'a, 'b> PartialEq<str> for String
[src]
impl<'a, 'b> PartialEq<String> for Cow<'a, str>
[src]
impl<'a, 'b> PartialEq<OsStr> for Cow<'a, OsStr>
[src]
impl<'a, 'b> PartialEq<OsStr> for Cow<'a, Path>
[src]
impl<'a, 'b> PartialEq<OsString> for Cow<'a, OsStr>
[src]
impl<'a, 'b> PartialEq<OsString> for Cow<'a, Path>
[src]
impl<'a, 'b> PartialEq<Path> for Cow<'a, OsStr>
[src]
impl<'a, 'b> PartialEq<Path> for Cow<'a, Path>
[src]
impl<'a, 'b> PartialEq<PathBuf> for Cow<'a, OsStr>
[src]
impl<'a, 'b> PartialEq<PathBuf> for Cow<'a, Path>
[src]
impl<'a, 'b, B, C> PartialEq<Cow<'b, C>> for Cow<'a, B> where
B: PartialEq<C> + ToOwned + ?Sized,
C: ToOwned + ?Sized,
[src]
B: PartialEq<C> + ToOwned + ?Sized,
C: ToOwned + ?Sized,
impl<A> PartialEq<VecDeque<A>> for VecDeque<A> where
A: PartialEq<A>,
[src]
A: PartialEq<A>,
impl<A, B> PartialEq<[B]> for Vec<A> where
A: PartialEq<B>,
[src]
A: PartialEq<B>,
impl<A, B> PartialEq<Vec<B>> for VecDeque<A> where
A: PartialEq<B>,
[src]
A: PartialEq<B>,
impl<A, B> PartialEq<Vec<B>> for Vec<A> where
A: PartialEq<B>,
[src]
A: PartialEq<B>,
impl<A, B, const N: usize> PartialEq<[B; N]> for VecDeque<A> where
A: PartialEq<B>,
[src]
A: PartialEq<B>,
impl<A, B, const N: usize> PartialEq<[B; N]> for Vec<A> where
A: PartialEq<B>,
[src]
A: PartialEq<B>,
impl<C, B> PartialEq<ControlFlow<C, B>> for ControlFlow<C, B> where
B: PartialEq<B>,
C: PartialEq<C>,
[src]
B: PartialEq<B>,
C: PartialEq<C>,
fn eq(&self, other: &ControlFlow<C, B>) -> bool
[src]
fn ne(&self, other: &ControlFlow<C, B>) -> bool
[src]
impl<E: PartialEq> PartialEq<Err<E>> for Err<E>
[src]
impl<H> PartialEq<BuildHasherDefault<H>> for BuildHasherDefault<H>
[src]
fn eq(&self, _other: &BuildHasherDefault<H>) -> bool
[src]
impl<I: PartialEq> PartialEq<Error<I>> for nom::error::Error<I>
[src]
impl<I: PartialEq> PartialEq<VerboseError<I>> for VerboseError<I>
[src]
fn eq(&self, other: &VerboseError<I>) -> bool
[src]
fn ne(&self, other: &VerboseError<I>) -> bool
[src]
impl<Idx> PartialEq<Range<Idx>> for Range<Idx> where
Idx: PartialEq<Idx>,
[src]
Idx: PartialEq<Idx>,
impl<Idx> PartialEq<RangeFrom<Idx>> for RangeFrom<Idx> where
Idx: PartialEq<Idx>,
[src]
Idx: PartialEq<Idx>,
impl<Idx> PartialEq<RangeInclusive<Idx>> for RangeInclusive<Idx> where
Idx: PartialEq<Idx>,
[src]
Idx: PartialEq<Idx>,
fn eq(&self, other: &RangeInclusive<Idx>) -> bool
[src]
fn ne(&self, other: &RangeInclusive<Idx>) -> bool
[src]
impl<Idx> PartialEq<RangeTo<Idx>> for RangeTo<Idx> where
Idx: PartialEq<Idx>,
[src]
Idx: PartialEq<Idx>,
impl<Idx> PartialEq<RangeToInclusive<Idx>> for RangeToInclusive<Idx> where
Idx: PartialEq<Idx>,
[src]
Idx: PartialEq<Idx>,
fn eq(&self, other: &RangeToInclusive<Idx>) -> bool
[src]
fn ne(&self, other: &RangeToInclusive<Idx>) -> bool
[src]
impl<K, V> PartialEq<BTreeMap<K, V>> for BTreeMap<K, V> where
K: PartialEq<K>,
V: PartialEq<V>,
[src]
K: PartialEq<K>,
V: PartialEq<V>,
impl<K, V, S> PartialEq<HashMap<K, V, S>> for HashMap<K, V, S> where
K: Eq + Hash,
S: BuildHasher,
V: PartialEq<V>,
[src]
K: Eq + Hash,
S: BuildHasher,
V: PartialEq<V>,
impl<T> PartialEq<Bound<T>> for Bound<T> where
T: PartialEq<T>,
[src]
T: PartialEq<T>,
impl<T> PartialEq<Option<T>> for Option<T> where
T: PartialEq<T>,
[src]
T: PartialEq<T>,
impl<T> PartialEq<Reverse<T>> for Reverse<T> where
T: PartialEq<T>,
[src]
T: PartialEq<T>,
impl<T> PartialEq<BTreeSet<T>> for BTreeSet<T> where
T: PartialEq<T>,
[src]
T: PartialEq<T>,
impl<T> PartialEq<LinkedList<T>> for LinkedList<T> where
T: PartialEq<T>,
[src]
T: PartialEq<T>,
fn eq(&self, other: &LinkedList<T>) -> bool
[src]
fn ne(&self, other: &LinkedList<T>) -> bool
[src]
impl<T> PartialEq<Discriminant<T>> for Discriminant<T>
[src]
fn eq(&self, rhs: &Discriminant<T>) -> bool
[src]
impl<T> PartialEq<ManuallyDrop<T>> for ManuallyDrop<T> where
T: PartialEq<T> + ?Sized,
[src]
T: PartialEq<T> + ?Sized,
fn eq(&self, other: &ManuallyDrop<T>) -> bool
[src]
fn ne(&self, other: &ManuallyDrop<T>) -> bool
[src]
impl<T> PartialEq<Box<T>> for Box<T> where
T: PartialEq<T> + ?Sized,
[src]
T: PartialEq<T> + ?Sized,
impl<T, E> PartialEq<Result<T, E>> for Result<T, E> where
E: PartialEq<E>,
T: PartialEq<T>,
[src]
E: PartialEq<E>,
T: PartialEq<T>,
impl<T, S> PartialEq<HashSet<T, S>> for HashSet<T, S> where
S: BuildHasher,
T: Eq + Hash,
[src]
S: BuildHasher,
T: Eq + Hash,
impl<Y, R> PartialEq<GeneratorState<Y, R>> for GeneratorState<Y, R> where
R: PartialEq<R>,
Y: PartialEq<Y>,
[src]
R: PartialEq<R>,
Y: PartialEq<Y>,