1.0.0[][src]Trait nom::lib::std::prelude::v1::v1::PartialEq

#[lang = "eq"]pub trait PartialEq<Rhs = Self> where
    Rhs: ?Sized
{ #[must_use] fn eq(&self, other: &Rhs) -> bool; #[must_use] fn ne(&self, other: &Rhs) -> bool { ... } }

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 implies b == a; and
  • transitive: a == b and b == c implies a == 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 derived on structs, two instances are equal if all fields are equal, and not equal if any fields are not equal. When derived 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 BookFormats to be compared with Books.

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:

ⓘThis example panics
#[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 ==.

Loading content...

Provided methods

#[must_use]fn ne(&self, other: &Rhs) -> bool

This method tests for !=.

Loading content...

Implementations on Foreign Types

impl<'a> PartialEq<OsString> for &'a str[src]

impl<T> PartialEq<SendError<T>> for SendError<T> where
    T: PartialEq<T>, 
[src]

impl<'a, 'b> PartialEq<PathBuf> for &'a Path[src]

impl PartialEq<IpAddr> for Ipv4Addr[src]

impl<'a, 'b> PartialEq<OsString> for Path[src]

impl PartialEq<ErrorKind> for ErrorKind[src]

impl<'a, 'b> PartialEq<OsStr> for PathBuf[src]

impl PartialEq<IpAddr> for Ipv6Addr[src]

impl<T> PartialEq<SyncOnceCell<T>> for SyncOnceCell<T> where
    T: PartialEq<T>, 
[src]

impl PartialEq<OsString> for str[src]

impl PartialEq<FileType> for FileType[src]

impl PartialEq<str> for OsString[src]

impl<'a, 'b> PartialEq<OsString> for &'a OsStr[src]

impl PartialEq<OsStr> for str[src]

impl PartialEq<CString> for CString[src]

impl<'a, 'b> PartialEq<&'a Path> for PathBuf[src]

impl PartialEq<WaitTimeoutResult> for WaitTimeoutResult[src]

impl<'a, 'b> PartialEq<Cow<'a, Path>> for OsString[src]

impl<'a, 'b> PartialEq<OsStr> for Path[src]

impl PartialEq<Instant> for Instant[src]

impl<'a, 'b> PartialEq<&'a OsStr> for Path[src]

impl PartialEq<Ipv4Addr> for Ipv4Addr[src]

impl<'a> PartialEq<PrefixComponent<'a>> for PrefixComponent<'a>[src]

impl<'a, 'b> PartialEq<OsStr> for OsString[src]

impl<'a, 'b> PartialEq<Cow<'a, Path>> for &'b OsStr[src]

impl PartialEq<IntoStringError> for IntoStringError[src]

impl<'a, 'b> PartialEq<OsStr> for &'a Path[src]

impl PartialEq<Ipv6MulticastScope> for Ipv6MulticastScope[src]

impl<'a> PartialEq<Component<'a>> for Component<'a>[src]

impl<'a, 'b> PartialEq<PathBuf> for &'a OsStr[src]

impl<'a, 'b> PartialEq<Cow<'b, OsStr>> for &'a Path[src]

impl PartialEq<Ipv6Addr> for IpAddr[src]

impl PartialEq<FromVecWithNulError> for FromVecWithNulError[src]

impl<'_> PartialEq<&'_ str> for OsString[src]

impl PartialEq<ThreadId> for ThreadId[src]

impl<'a, 'b> PartialEq<Cow<'a, Path>> for &'b Path[src]

impl<'a, 'b> PartialEq<&'a OsStr> for PathBuf[src]

impl PartialEq<Path> for Path[src]

impl<'a, 'b> PartialEq<Cow<'a, OsStr>> for PathBuf[src]

impl<'a, 'b> PartialEq<PathBuf> for OsString[src]

impl PartialEq<IpAddr> for IpAddr[src]

impl PartialEq<SocketAddrV4> for SocketAddrV4[src]

impl<'a, 'b> PartialEq<OsString> for OsStr[src]

impl<'a, 'b> PartialEq<Path> for OsStr[src]

impl<'a, 'b> PartialEq<Cow<'a, Path>> for Path[src]

impl<'a, 'b> PartialEq<Path> for &'a OsStr[src]

impl<'a, 'b> PartialEq<OsString> for PathBuf[src]

impl PartialEq<Shutdown> for Shutdown[src]

impl<'a, 'b> PartialEq<Cow<'a, Path>> for OsStr[src]

impl PartialEq<OsStr> for OsStr[src]

impl PartialEq<CStr> for CStr[src]

impl PartialEq<BacktraceStatus> for BacktraceStatus[src]

impl PartialEq<SystemTime> for SystemTime[src]

impl<'a, 'b> PartialEq<&'a Path> for OsStr[src]

impl PartialEq<AddrParseError> for AddrParseError[src]

impl PartialEq<AccessError> for AccessError[src]

impl<T> PartialEq<Cursor<T>> for Cursor<T> where
    T: PartialEq<T>, 
[src]

impl PartialEq<FromBytesWithNulError> for FromBytesWithNulError[src]

impl<'a, 'b> PartialEq<&'a Path> for OsString[src]

impl PartialEq<ExitStatus> for ExitStatus[src]

impl PartialEq<NulError> for NulError[src]

impl<'a, 'b> PartialEq<Path> for PathBuf[src]

impl<'a, 'b> PartialEq<Cow<'a, OsStr>> for OsStr[src]

impl<'a, 'b> PartialEq<Cow<'a, OsStr>> for OsString[src]

impl PartialEq<SeekFrom> for SeekFrom[src]

impl<'a> PartialEq<Prefix<'a>> for Prefix<'a>[src]

impl PartialEq<Ipv6Addr> for Ipv6Addr[src]

impl<'a> PartialEq<Components<'a>> for Components<'a>[src]

impl PartialEq<StripPrefixError> for StripPrefixError[src]

impl<'a, 'b> PartialEq<Cow<'a, OsStr>> for Path[src]

impl<'a, 'b> PartialEq<Path> for OsString[src]

impl<'a, 'b> PartialEq<PathBuf> for Path[src]

impl PartialEq<OsString> for OsString[src]

impl<'a, 'b> PartialEq<PathBuf> for OsStr[src]

impl PartialEq<str> for OsStr[src]

impl PartialEq<TryRecvError> for TryRecvError[src]

impl PartialEq<Permissions> for Permissions[src]

impl PartialEq<RecvTimeoutError> for RecvTimeoutError[src]

impl PartialEq<Output> for Output[src]

impl PartialEq<RecvError> for RecvError[src]

impl PartialEq<VarError> for VarError[src]

impl<T> PartialEq<TrySendError<T>> for TrySendError<T> where
    T: PartialEq<T>, 
[src]

impl<'a, 'b> PartialEq<OsString> for &'a Path[src]

impl<'a, 'b> PartialEq<&'a OsStr> for OsString[src]

impl<'a, 'b> PartialEq<Cow<'a, Path>> for PathBuf[src]

impl<'a, 'b> PartialEq<Cow<'a, OsStr>> for &'b OsStr[src]

impl PartialEq<PathBuf> for PathBuf[src]

impl PartialEq<SocketAddr> for SocketAddr[src]

impl PartialEq<Ipv4Addr> for IpAddr[src]

impl PartialEq<SocketAddrV6> for SocketAddrV6[src]

impl<T> PartialEq<*mut T> for *mut T where
    T: ?Sized
[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<extern "C" fn(A, B) -> Ret> for extern "C" fn(A, B) -> Ret[src]

impl PartialEq<NonZeroU8> for NonZeroU8[src]

impl<T> PartialEq<RefCell<T>> for RefCell<T> where
    T: PartialEq<T> + ?Sized
[src]

fn eq(&self, other: &RefCell<T>) -> bool[src]

Panics

Panics if the value in either RefCell is currently borrowed.

impl<'_, '_, A, B> PartialEq<&'_ B> for &'_ mut A where
    A: PartialEq<B> + ?Sized,
    B: ?Sized
[src]

impl PartialEq<u64> for u64[src]

impl<T> PartialEq<OnceCell<T>> for OnceCell<T> where
    T: PartialEq<T>, 
[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, 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<Ret, A> PartialEq<extern "C" fn(A, ...) -> Ret> for extern "C" fn(A, ...) -> Ret[src]

impl<A, B, const N: usize> PartialEq<[B]> for [A; N] where
    A: PartialEq<B>, 
[src]

impl<'_, '_, A, B> PartialEq<&'_ B> for &'_ A where
    A: PartialEq<B> + ?Sized,
    B: ?Sized
[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, 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 PartialEq<RawWakerVTable> for RawWakerVTable[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> 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<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> PartialEq<unsafe extern "C" fn() -> Ret> for unsafe extern "C" fn() -> Ret[src]

impl<'b, A, B, const N: usize> PartialEq<&'b mut [B]> for [A; N] where
    A: PartialEq<B>, 
[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 fn(A, B, C, D, E, F) -> Ret> for unsafe fn(A, B, C, D, E, F) -> Ret[src]

impl PartialEq<NonZeroU64> for NonZeroU64[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 PartialEq<NonZeroI64> for NonZeroI64[src]

impl PartialEq<NonZeroU16> for NonZeroU16[src]

impl<'_, '_, A, B> PartialEq<&'_ mut B> for &'_ mut A where
    A: PartialEq<B> + ?Sized,
    B: ?Sized
[src]

impl PartialEq<NonZeroI8> for NonZeroI8[src]

impl PartialEq<NonZeroI128> for NonZeroI128[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<T> PartialEq<Poll<T>> for Poll<T> where
    T: PartialEq<T>, 
[src]

impl PartialEq<u128> for u128[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, 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<T> PartialEq<*const T> for *const T where
    T: ?Sized
[src]

impl<'b, A, B, const N: usize> PartialEq<&'b [B]> for [A; N] where
    A: PartialEq<B>, 
[src]

impl PartialEq<i32> for i32[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 PartialEq<IntErrorKind> for IntErrorKind[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, 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<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 PartialEq<TypeId> for TypeId[src]

impl<A, B, const N: usize> PartialEq<[B; N]> for [A; N] where
    A: PartialEq<B>, 
[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<fn(A, B, C, D, E, F, G) -> Ret> for fn(A, B, C, D, E, F, G) -> Ret[src]

impl<'b, A, B, const N: usize> PartialEq<[A; N]> for &'b [B] where
    B: PartialEq<A>, 
[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]

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> 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 PartialEq<()> for ()[src]

impl PartialEq<!> for ![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<DecodeUtf16Error> for DecodeUtf16Error[src]

impl<Ret, A, B> PartialEq<fn(A, B) -> Ret> for fn(A, B) -> Ret[src]

impl<A> PartialEq<(A,)> for (A,) where
    A: PartialEq<A> + ?Sized
[src]

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<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]

impl<A, B, C> PartialEq<(A, B, C)> for (A, B, C) where
    A: PartialEq<A>,
    B: PartialEq<B>,
    C: PartialEq<C> + ?Sized
[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<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]

impl<Ret> PartialEq<extern "C" fn() -> Ret> for extern "C" fn() -> Ret[src]

impl<Ret> PartialEq<fn() -> Ret> for fn() -> Ret[src]

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]

impl<Ret, A, B> PartialEq<unsafe extern "C" fn(A, B, ...) -> Ret> for unsafe extern "C" fn(A, B, ...) -> Ret[src]

impl PartialEq<isize> for isize[src]

impl PartialEq<usize> for usize[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]

impl PartialEq<NonZeroU128> for NonZeroU128[src]

impl PartialEq<FpCategory> for FpCategory[src]

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 PartialEq<f64> for f64[src]

impl PartialEq<CharTryFromError> for CharTryFromError[src]

impl PartialEq<u32> for u32[src]

impl<Ret, A> PartialEq<extern "C" fn(A) -> Ret> for extern "C" fn(A) -> 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 PartialEq<Duration> for Duration[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<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> PartialEq<unsafe fn() -> Ret> for unsafe fn() -> 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<CpuidResult> for CpuidResult[src]

impl PartialEq<NonZeroI16> for NonZeroI16[src]

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<T> PartialEq<Cell<T>> for Cell<T> where
    T: PartialEq<T> + Copy
[src]

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> 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, 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> 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 PartialEq<ParseCharError> for ParseCharError[src]

impl<'a> PartialEq<Location<'a>> for Location<'a>[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<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<'_, '_, A, B> PartialEq<&'_ mut B> for &'_ A where
    A: PartialEq<B> + ?Sized,
    B: ?Sized
[src]

impl PartialEq<Ordering> for Ordering[src]

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<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 PartialEq<char> for char[src]

impl PartialEq<u8> for u8[src]

impl<T> PartialEq<PhantomData<T>> for PhantomData<T> where
    T: ?Sized
[src]

impl PartialEq<NonZeroUsize> for NonZeroUsize[src]

impl<A, B> PartialEq<(A, B)> for (A, B) where
    A: PartialEq<A>,
    B: PartialEq<B> + ?Sized
[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> 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<Ret, A, B> PartialEq<extern "C" fn(A, B, ...) -> Ret> for extern "C" fn(A, B, ...) -> Ret[src]

impl<'a> PartialEq<Utf8LossyChunk<'a>> for Utf8LossyChunk<'a>[src]

impl<T> PartialEq<NonNull<T>> for NonNull<T> where
    T: ?Sized
[src]

impl PartialEq<bool> for bool[src]

impl<A, B> PartialEq<[B]> for [A] where
    A: PartialEq<B>, 
[src]

impl<Ret, A> PartialEq<fn(A) -> Ret> for fn(A) -> 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, A, B, C> PartialEq<unsafe fn(A, B, C) -> Ret> for unsafe fn(A, B, C) -> 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]

impl PartialEq<NonZeroU32> for NonZeroU32[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, 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, 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 PartialEq<str> for str[src]

impl PartialEq<u16> for u16[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]

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]

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<i8> for i8[src]

impl PartialEq<i128> for i128[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 PartialEq<PhantomPinned> for PhantomPinned[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<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<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<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<RawWaker> for RawWaker[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<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<Ret, A, B, C> PartialEq<extern "C" fn(A, B, C, ...) -> Ret> for extern "C" fn(A, B, C, ...) -> Ret[src]

impl<T> PartialEq<Wrapping<T>> for Wrapping<T> where
    T: PartialEq<T>, 
[src]

impl PartialEq<f32> for f32[src]

impl PartialEq<NonZeroI32> for NonZeroI32[src]

impl<Ret, A> PartialEq<unsafe extern "C" fn(A, ...) -> Ret> for unsafe extern "C" fn(A, ...) -> Ret[src]

impl PartialEq<NonZeroIsize> for NonZeroIsize[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> PartialEq<unsafe extern "C" fn(A, B, C, D, E) -> Ret> for unsafe extern "C" fn(A, B, C, D, E) -> 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]

impl PartialEq<i16> for i16[src]

impl PartialEq<ParseIntError> for ParseIntError[src]

impl PartialEq<ParseFloatError> for ParseFloatError[src]

impl PartialEq<TryFromIntError> for TryFromIntError[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]

impl<Ret, A, B> PartialEq<unsafe fn(A, B) -> Ret> for unsafe fn(A, B) -> Ret[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 PartialEq<i64> for i64[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, 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<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<'b, A, B, const N: usize> PartialEq<[A; N]> for &'b mut [B] where
    B: PartialEq<A>, 
[src]

impl<A, B, const N: usize> PartialEq<[A; N]> for [B] where
    B: PartialEq<A>, 
[src]

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<'a, 'b> PartialEq<Cow<'a, str>> for str[src]

impl<'_, A, B> PartialEq<Vec<B>> for &'_ mut [A] where
    A: PartialEq<B>, 
[src]

impl<T> PartialEq<Rc<T>> for Rc<T> where
    T: PartialEq<T> + ?Sized
[src]

fn eq(&self, other: &Rc<T>) -> bool[src]

Equality for two Rcs.

Two Rcs 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 Rcs 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 Rcs.

Two Rcs are unequal if their inner values are unequal.

If T also implements Eq (implying reflexivity of equality), two Rcs 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<String> for &'a str[src]

impl<'a, 'b> PartialEq<String> for str[src]

impl<T> PartialEq<Arc<T>> for Arc<T> where
    T: PartialEq<T> + ?Sized
[src]

fn eq(&self, other: &Arc<T>) -> bool[src]

Equality for two Arcs.

Two Arcs 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 Arcs 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 Arcs.

Two Arcs are unequal if their inner values are unequal.

If T also implements Eq (implying reflexivity of equality), two Arcs 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<Cow<'a, str>> for &'b str[src]

impl<'_, A, B> PartialEq<Vec<B>> for &'_ [A] where
    A: PartialEq<B>, 
[src]

impl<R> PartialEq<BitPos<R>> for BitPos<R> where
    R: PartialEq<R> + BitRegister
[src]

impl<'_, O1, O2, T1, T2> PartialEq<BitSlice<O2, T2>> for &'_ mut BitSlice<O1, T1> where
    O1: BitOrder,
    O2: BitOrder,
    T1: BitStore,
    T2: BitStore
[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]

impl<R> PartialEq<BitMask<R>> for BitMask<R> where
    R: PartialEq<R> + BitRegister
[src]

impl PartialEq<Msb0> for Msb0[src]

impl<O, V, T> PartialEq<BitArray<O, V>> for BitSlice<O, T> where
    O: BitOrder,
    T: BitStore,
    V: BitView
[src]

impl<O1, O2, T1, T2> PartialEq<BitBox<O2, T2>> for BitSlice<O1, T1> where
    O1: BitOrder,
    O2: BitOrder,
    T1: BitStore,
    T2: BitStore
[src]

impl<'_, O1, O2, T1, T2> PartialEq<BitVec<O2, T2>> for &'_ mut BitSlice<O1, T1> where
    O1: BitOrder,
    O2: BitOrder,
    T1: BitStore,
    T2: BitStore
[src]

impl<O, T, Rhs> PartialEq<Rhs> for BitBox<O, T> where
    O: BitOrder,
    Rhs: PartialEq<BitSlice<O, T>> + ?Sized,
    T: BitStore
[src]

impl<'_, O1, O2, T1, T2> PartialEq<&'_ mut BitSlice<O2, T2>> for BitSlice<O1, T1> where
    O1: BitOrder,
    O2: BitOrder,
    T1: BitStore,
    T2: BitStore
[src]

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]

impl<'_, O1, O2, T1, T2> PartialEq<BitBox<O2, T2>> for &'_ BitSlice<O1, T1> where
    O1: BitOrder,
    O2: BitOrder,
    T1: BitStore,
    T2: BitStore
[src]

impl<'_, O1, O2, T1, T2> PartialEq<&'_ BitSlice<O2, T2>> for BitSlice<O1, T1> where
    O1: BitOrder,
    O2: BitOrder,
    T1: BitStore,
    T2: BitStore
[src]

impl<R> PartialEq<BitSel<R>> for BitSel<R> where
    R: PartialEq<R> + BitRegister
[src]

impl<O1, O2, T1, T2> PartialEq<BitVec<O2, T2>> for BitSlice<O1, T1> where
    O1: BitOrder,
    O2: BitOrder,
    T1: BitStore,
    T2: BitStore
[src]

impl<O1, O2, T1, T2> PartialEq<BitSlice<O2, T2>> for BitSlice<O1, T1> where
    O1: BitOrder,
    O2: BitOrder,
    T1: BitStore,
    T2: BitStore
[src]

Tests if two BitSlices 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<R> PartialEq<BitTail<R>> for BitTail<R> where
    R: PartialEq<R> + BitRegister
[src]

impl<R> PartialEq<BitIdx<R>> for BitIdx<R> where
    R: PartialEq<R> + BitRegister
[src]

impl<O, T, Rhs> PartialEq<Rhs> for BitVec<O, T> where
    O: BitOrder,
    Rhs: PartialEq<BitSlice<O, T>> + ?Sized,
    T: BitStore
[src]

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]

impl<'_, O1, O2, T1, T2> PartialEq<BitVec<O2, T2>> for &'_ BitSlice<O1, T1> where
    O1: BitOrder,
    O2: BitOrder,
    T1: BitStore,
    T2: BitStore
[src]

impl PartialEq<ErrorCode> for ErrorCode[src]

impl PartialEq<Error> for Error[src]

impl<T> PartialEq<CapacityError<T>> for CapacityError<T> where
    T: PartialEq<T>, 
[src]

impl<A> PartialEq<[<A as Array>::Item]> for ArrayVec<A> where
    A: Array,
    <A as Array>::Item: PartialEq<<A as Array>::Item>, 
[src]

impl<A> PartialEq<ArrayVec<A>> for ArrayVec<A> where
    A: Array,
    <A as Array>::Item: PartialEq<<A as Array>::Item>, 
[src]

impl<A> PartialEq<ArrayString<A>> for ArrayString<A> where
    A: Array<Item = u8> + Copy
[src]

impl<A> PartialEq<ArrayString<A>> for str where
    A: Array<Item = u8> + Copy
[src]

impl<A> PartialEq<str> for ArrayString<A> where
    A: Array<Item = u8> + Copy
[src]

impl PartialEq<Char> for char

impl<'t> PartialEq<Match<'t>> for Match<'t>

impl<'t> PartialEq<Match<'t>> for Match<'t>

impl PartialEq<Error> for Error

impl PartialEq<MatchKind> for MatchKind

impl PartialEq<Match> for Match

impl PartialEq<MatchKind> for MatchKind

impl PartialEq<Class> for Class

impl PartialEq<ClassBytesRange> for ClassBytesRange

impl PartialEq<WithComments> for WithComments

impl PartialEq<ClassUnicode> for ClassUnicode

impl PartialEq<Error> for Error

impl PartialEq<WordBoundary> for WordBoundary

impl PartialEq<Literal> for Literal

impl PartialEq<HexLiteralKind> for HexLiteralKind

impl PartialEq<Comment> for Comment

impl PartialEq<ClassAscii> for ClassAscii

impl PartialEq<ErrorKind> for ErrorKind

impl PartialEq<RepetitionRange> for RepetitionRange

impl PartialEq<ClassUnicode> for ClassUnicode

impl PartialEq<Concat> for Concat

impl PartialEq<Flag> for Flag

impl PartialEq<Group> for Group

impl PartialEq<Utf8Range> for Utf8Range

impl PartialEq<ClassSetUnion> for ClassSetUnion

impl PartialEq<Error> for Error

impl PartialEq<RepetitionKind> for RepetitionKind

impl PartialEq<Position> for Position

impl PartialEq<Ast> for Ast

impl PartialEq<ClassUnicodeOpKind> for ClassUnicodeOpKind

impl PartialEq<LiteralKind> for LiteralKind

impl PartialEq<ClassAsciiKind> for ClassAsciiKind

impl PartialEq<ClassSetBinaryOp> for ClassSetBinaryOp

impl PartialEq<RepetitionRange> for RepetitionRange

impl PartialEq<CaptureName> for CaptureName

impl PartialEq<Utf8Sequence> for Utf8Sequence

impl PartialEq<HirKind> for HirKind

impl PartialEq<Span> for Span

impl PartialEq<FlagsItemKind> for FlagsItemKind

impl PartialEq<GroupKind> for GroupKind

impl PartialEq<SetFlags> for SetFlags

impl PartialEq<RepetitionKind> for RepetitionKind

impl PartialEq<Error> for Error

impl PartialEq<Repetition> for Repetition

impl PartialEq<Flags> for Flags

impl PartialEq<SpecialLiteralKind> for SpecialLiteralKind

impl PartialEq<ClassBracketed> for ClassBracketed

impl PartialEq<Repetition> for Repetition

impl PartialEq<RepetitionOp> for RepetitionOp

impl PartialEq<Hir> for Hir

impl PartialEq<ClassUnicodeKind> for ClassUnicodeKind

impl PartialEq<ClassBytes> for ClassBytes

impl PartialEq<FlagsItem> for FlagsItem

impl PartialEq<Literal> for Literal

impl PartialEq<Group> for Group

impl PartialEq<Literals> for Literals

impl PartialEq<Class> for Class

impl PartialEq<ClassUnicodeRange> for ClassUnicodeRange

impl PartialEq<ClassPerl> for ClassPerl

impl PartialEq<Anchor> for Anchor

impl PartialEq<ErrorKind> for ErrorKind

impl PartialEq<Assertion> for Assertion

impl PartialEq<ClassSetBinaryOpKind> for ClassSetBinaryOpKind

impl PartialEq<ClassSetRange> for ClassSetRange

impl PartialEq<AssertionKind> for AssertionKind

impl PartialEq<GroupKind> for GroupKind

impl PartialEq<ClassPerlKind> for ClassPerlKind

impl PartialEq<ClassSet> for ClassSet

impl PartialEq<ClassSetItem> for ClassSetItem

impl PartialEq<Alternation> for Alternation

impl PartialEq<Literal> for Literal

Loading content...

Implementors

impl PartialEq<CompareResult> for CompareResult[src]

impl PartialEq<Needed> for Needed[src]

impl PartialEq<ErrorKind> for nom::error::ErrorKind[src]

impl PartialEq<VerboseErrorKind> for VerboseErrorKind[src]

impl PartialEq<Ordering> for nom::lib::std::cmp::Ordering[src]

impl PartialEq<TryReserveError> for TryReserveError[src]

impl PartialEq<Infallible> for Infallible[src]

impl PartialEq<SearchStep> for SearchStep[src]

impl PartialEq<Endianness> for Endianness[src]

impl PartialEq<AllocError> for AllocError[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]

impl PartialEq<Utf8Error> for Utf8Error[src]

impl PartialEq<FromUtf8Error> for FromUtf8Error[src]

impl<'_, '_, A, B> PartialEq<&'_ [B]> for Cow<'_, [A]> where
    A: PartialEq<B> + Clone
[src]

impl<'_, '_, A, B> PartialEq<&'_ mut [B]> for Cow<'_, [A]> where
    A: PartialEq<B> + Clone
[src]

impl<'_, A, B> PartialEq<&'_ [B]> for VecDeque<A> where
    A: PartialEq<B>, 
[src]

impl<'_, A, B> PartialEq<&'_ [B]> for Vec<A> where
    A: PartialEq<B>, 
[src]

impl<'_, A, B> PartialEq<&'_ mut [B]> for VecDeque<A> where
    A: PartialEq<B>, 
[src]

impl<'_, A, B> PartialEq<&'_ mut [B]> for Vec<A> where
    A: PartialEq<B>, 
[src]

impl<'_, A, B> PartialEq<Vec<B>> for Cow<'_, [A]> where
    A: PartialEq<B> + Clone
[src]

impl<'_, A, B, const N: usize> PartialEq<&'_ [B; N]> for VecDeque<A> where
    A: PartialEq<B>, 
[src]

impl<'_, A, B, const N: usize> PartialEq<&'_ [B; N]> for Vec<A> where
    A: PartialEq<B>, 
[src]

impl<'_, A, B, const N: usize> PartialEq<&'_ mut [B; N]> for VecDeque<A> where
    A: PartialEq<B>, 
[src]

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]

impl<A> PartialEq<VecDeque<A>> for VecDeque<A> where
    A: PartialEq<A>, 
[src]

impl<A, B> PartialEq<Vec<B>> for VecDeque<A> where
    A: PartialEq<B>, 
[src]

impl<A, B> PartialEq<Vec<B>> for Vec<A> where
    A: PartialEq<B>, 
[src]

impl<A, B, const N: usize> PartialEq<[B; N]> for VecDeque<A> where
    A: PartialEq<B>, 
[src]

impl<A, B, const N: usize> PartialEq<[B; N]> for Vec<A> where
    A: PartialEq<B>, 
[src]

impl<C, B> PartialEq<ControlFlow<C, B>> for ControlFlow<C, B> where
    B: PartialEq<B>,
    C: PartialEq<C>, 
[src]

impl<E: PartialEq> PartialEq<Err<E>> for Err<E>[src]

impl<H> PartialEq<BuildHasherDefault<H>> for BuildHasherDefault<H>[src]

impl<I: PartialEq> PartialEq<Error<I>> for nom::error::Error<I>[src]

impl<I: PartialEq> PartialEq<VerboseError<I>> for VerboseError<I>[src]

impl<Idx> PartialEq<Range<Idx>> for Range<Idx> where
    Idx: PartialEq<Idx>, 
[src]

impl<Idx> PartialEq<RangeFrom<Idx>> for RangeFrom<Idx> where
    Idx: PartialEq<Idx>, 
[src]

impl<Idx> PartialEq<RangeInclusive<Idx>> for RangeInclusive<Idx> where
    Idx: PartialEq<Idx>, 
[src]

impl<Idx> PartialEq<RangeTo<Idx>> for RangeTo<Idx> where
    Idx: PartialEq<Idx>, 
[src]

impl<Idx> PartialEq<RangeToInclusive<Idx>> for RangeToInclusive<Idx> where
    Idx: PartialEq<Idx>, 
[src]

impl<K, V> PartialEq<BTreeMap<K, V>> for BTreeMap<K, V> where
    K: PartialEq<K>,
    V: PartialEq<V>, 
[src]

impl<K, V, S> PartialEq<HashMap<K, V, S>> for HashMap<K, V, S> where
    K: Eq + Hash,
    S: BuildHasher,
    V: PartialEq<V>, 
[src]

impl<T> PartialEq<Bound<T>> for Bound<T> where
    T: PartialEq<T>, 
[src]

impl<T> PartialEq<Option<T>> for Option<T> where
    T: PartialEq<T>, 
[src]

impl<T> PartialEq<Reverse<T>> for Reverse<T> where
    T: PartialEq<T>, 
[src]

impl<T> PartialEq<BTreeSet<T>> for BTreeSet<T> where
    T: PartialEq<T>, 
[src]

impl<T> PartialEq<LinkedList<T>> for LinkedList<T> where
    T: PartialEq<T>, 
[src]

impl<T> PartialEq<Discriminant<T>> for Discriminant<T>[src]

impl<T> PartialEq<ManuallyDrop<T>> for ManuallyDrop<T> where
    T: PartialEq<T> + ?Sized
[src]

impl<T> PartialEq<Box<T>> for Box<T> where
    T: PartialEq<T> + ?Sized
[src]

impl<T, E> PartialEq<Result<T, E>> for Result<T, E> where
    E: PartialEq<E>,
    T: PartialEq<T>, 
[src]

impl<T, S> PartialEq<HashSet<T, S>> for HashSet<T, S> where
    S: BuildHasher,
    T: Eq + Hash
[src]

impl<Y, R> PartialEq<GeneratorState<Y, R>> for GeneratorState<Y, R> where
    R: PartialEq<R>,
    Y: PartialEq<Y>, 
[src]

Loading content...