Trait ibc_primitives::prelude::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
impliesb == a
(required byPartialEq
as well); and - transitive:
a == b
andb == c
impliesa == c
(required byPartialEq
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 derive
d, because Eq
has
no extra methods, it is only informing the compiler that this is an
equivalence relation rather than a partial equivalence relation. Note that
the derive
strategy requires all fields are Eq
, which isn’t
always desired.
§How can I implement Eq
?
If you cannot use the derive
strategy, specify that your type implements
Eq
, which has no methods:
enum BookFormat { Paperback, Hardback, Ebook }
struct Book {
isbn: i32,
format: BookFormat,
}
impl PartialEq for Book {
fn eq(&self, other: &Self) -> bool {
self.isbn == other.isbn
}
}
impl Eq for Book {}
Object Safety§
Implementors§
impl Eq for Expiry
impl Eq for TryReserveErrorKind
impl Eq for AsciiChar
impl Eq for core::cmp::Ordering
impl Eq for Infallible
impl Eq for core::fmt::Alignment
impl Eq for IpAddr
impl Eq for Ipv6MulticastScope
impl Eq for SocketAddr
impl Eq for FpCategory
impl Eq for IntErrorKind
impl Eq for core::sync::atomic::Ordering
impl Eq for BacktraceStatus
impl Eq for VarError
impl Eq for SeekFrom
impl Eq for std::io::error::ErrorKind
impl Eq for Shutdown
impl Eq for BacktraceStyle
impl Eq for RecvTimeoutError
impl Eq for TryRecvError
impl Eq for ParseAlphabetError
impl Eq for base64::decode::DecodeError
impl Eq for DecodeSliceError
impl Eq for EncodeSliceError
impl Eq for DecodePaddingMode
impl Eq for borsh::nostd_io::ErrorKind
impl Eq for Definition
impl Eq for Fields
impl Eq for byte_slice_cast::Error
impl Eq for hashbrown::TryReserveError
impl Eq for ibc_proto::cosmos::gov::v1::ProposalStatus
impl Eq for ibc_proto::cosmos::gov::v1::VoteOption
impl Eq for ibc_proto::cosmos::gov::v1beta1::ProposalStatus
impl Eq for ibc_proto::cosmos::gov::v1beta1::VoteOption
impl Eq for AuthorizationType
impl Eq for BondStatus
impl Eq for Infraction
impl Eq for ibc_proto::cosmos::staking::v1beta1::InfractionType
impl Eq for SignMode
impl Eq for BroadcastMode
impl Eq for OrderBy
impl Eq for VerificationState
impl Eq for EnumType
impl Eq for FieldPresence
impl Eq for JsonFormat
impl Eq for MessageEncoding
impl Eq for RepeatedFieldEncoding
impl Eq for StringFieldValidation
impl Eq for Label
impl Eq for ibc_proto::google::protobuf::field_descriptor_proto::Type
impl Eq for CType
impl Eq for JsType
impl Eq for OptionRetention
impl Eq for OptionTargetType
impl Eq for OptimizeMode
impl Eq for Semantic
impl Eq for IdempotencyLevel
impl Eq for ibc_proto::ibc::applications::interchain_accounts::v1::Type
impl Eq for Order
impl Eq for ResponseResultType
impl Eq for ibc_proto::ibc::core::channel::v1::State
impl Eq for ibc_proto::ibc::core::connection::v1::State
impl Eq for ConsumerPacketDataType
impl Eq for ibc_proto::interchain_security::ccv::v1::InfractionType
impl Eq for HashOp
impl Eq for LengthOp
impl Eq for MetaForm
impl Eq for PortableForm
impl Eq for TypeDefPrimitive
impl Eq for PathError
impl Eq for InstanceType
impl Eq for Category
impl Eq for Value
impl Eq for subtle_encoding::error::Error
impl Eq for tendermint_proto::tendermint::v0_34::abci::CheckTxType
impl Eq for EvidenceType
impl Eq for tendermint_proto::tendermint::v0_34::abci::response_apply_snapshot_chunk::Result
impl Eq for tendermint_proto::tendermint::v0_34::abci::response_offer_snapshot::Result
impl Eq for tendermint_proto::tendermint::v0_34::privval::Errors
impl Eq for tendermint_proto::tendermint::v0_34::types::BlockIdFlag
impl Eq for tendermint_proto::tendermint::v0_34::types::SignedMsgType
impl Eq for tendermint_proto::tendermint::v0_37::abci::CheckTxType
impl Eq for tendermint_proto::tendermint::v0_37::abci::MisbehaviorType
impl Eq for tendermint_proto::tendermint::v0_37::abci::response_apply_snapshot_chunk::Result
impl Eq for tendermint_proto::tendermint::v0_37::abci::response_offer_snapshot::Result
impl Eq for tendermint_proto::tendermint::v0_37::abci::response_process_proposal::ProposalStatus
impl Eq for tendermint_proto::tendermint::v0_37::privval::Errors
impl Eq for tendermint_proto::tendermint::v0_37::types::BlockIdFlag
impl Eq for tendermint_proto::tendermint::v0_37::types::SignedMsgType
impl Eq for tendermint_proto::tendermint::v0_38::abci::CheckTxType
impl Eq for tendermint_proto::tendermint::v0_38::abci::MisbehaviorType
impl Eq for tendermint_proto::tendermint::v0_38::abci::response_apply_snapshot_chunk::Result
impl Eq for tendermint_proto::tendermint::v0_38::abci::response_offer_snapshot::Result
impl Eq for tendermint_proto::tendermint::v0_38::abci::response_process_proposal::ProposalStatus
impl Eq for VerifyStatus
impl Eq for tendermint_proto::tendermint::v0_38::privval::Errors
impl Eq for tendermint_proto::tendermint::v0_38::types::BlockIdFlag
impl Eq for tendermint_proto::tendermint::v0_38::types::SignedMsgType
impl Eq for Code
impl Eq for CheckTxKind
impl Eq for ApplySnapshotChunkResult
impl Eq for tendermint::abci::response::offer_snapshot::OfferSnapshot
impl Eq for tendermint::abci::response::process_proposal::ProcessProposal
impl Eq for tendermint::abci::response::verify_vote_extension::VerifyVoteExtension
impl Eq for BlockSignatureInfo
impl Eq for MisbehaviorKind
impl Eq for tendermint::block::block_id_flag::BlockIdFlag
impl Eq for CommitSig
impl Eq for ErrorDetail
impl Eq for Evidence
impl Eq for tendermint::hash::Algorithm
impl Eq for Hash
impl Eq for TxIndexStatus
impl Eq for tendermint::proposal::msg_type::Type
impl Eq for tendermint::public_key::Algorithm
impl Eq for PublicKey
impl Eq for TendermintKey
impl Eq for tendermint::v0_34::abci::request::ConsensusRequest
impl Eq for tendermint::v0_34::abci::request::InfoRequest
impl Eq for tendermint::v0_34::abci::request::MempoolRequest
impl Eq for tendermint::v0_34::abci::request::Request
impl Eq for tendermint::v0_34::abci::request::SnapshotRequest
impl Eq for tendermint::v0_34::abci::response::ConsensusResponse
impl Eq for tendermint::v0_34::abci::response::InfoResponse
impl Eq for tendermint::v0_34::abci::response::MempoolResponse
impl Eq for tendermint::v0_34::abci::response::Response
impl Eq for tendermint::v0_34::abci::response::SnapshotResponse
impl Eq for tendermint::v0_37::abci::request::ConsensusRequest
impl Eq for tendermint::v0_37::abci::request::InfoRequest
impl Eq for tendermint::v0_37::abci::request::MempoolRequest
impl Eq for tendermint::v0_37::abci::request::Request
impl Eq for tendermint::v0_37::abci::request::SnapshotRequest
impl Eq for tendermint::v0_37::abci::response::ConsensusResponse
impl Eq for tendermint::v0_37::abci::response::InfoResponse
impl Eq for tendermint::v0_37::abci::response::MempoolResponse
impl Eq for tendermint::v0_37::abci::response::Response
impl Eq for tendermint::v0_37::abci::response::SnapshotResponse
impl Eq for tendermint::v0_38::abci::request::ConsensusRequest
impl Eq for tendermint::v0_38::abci::request::InfoRequest
impl Eq for tendermint::v0_38::abci::request::MempoolRequest
impl Eq for tendermint::v0_38::abci::request::Request
impl Eq for tendermint::v0_38::abci::request::SnapshotRequest
impl Eq for tendermint::v0_38::abci::response::ConsensusResponse
impl Eq for tendermint::v0_38::abci::response::InfoResponse
impl Eq for tendermint::v0_38::abci::response::MempoolResponse
impl Eq for tendermint::v0_38::abci::response::Response
impl Eq for tendermint::v0_38::abci::response::SnapshotResponse
impl Eq for tendermint::vote::Type
impl Eq for InvalidFormatDescription
impl Eq for Parse
impl Eq for ParseFromDescription
impl Eq for TryFromParsed
impl Eq for time::format_description::component::Component
impl Eq for MonthRepr
impl Eq for Padding
impl Eq for SubsecondDigits
impl Eq for UnixTimestampPrecision
impl Eq for WeekNumberRepr
impl Eq for WeekdayRepr
impl Eq for YearRepr
impl Eq for OwnedFormatItem
impl Eq for DateKind
impl Eq for FormattedComponents
impl Eq for OffsetPrecision
impl Eq for TimePrecision
impl Eq for time::month::Month
impl Eq for time::weekday::Weekday
impl Eq for SearchStep
impl Eq for bool
impl Eq for char
impl Eq for i8
impl Eq for i16
impl Eq for i32
impl Eq for i64
impl Eq for i128
impl Eq for isize
impl Eq for !
impl Eq for str
impl Eq for u8
impl Eq for u16
impl Eq for u32
impl Eq for u64
impl Eq for u128
impl Eq for ()
impl Eq for usize
impl Eq for Any
impl Eq for ibc_primitives::proto::Duration
impl Eq for ibc_primitives::proto::Timestamp
Implements the unstable/naive version of Eq
: a basic equality check on the internal fields of the Timestamp
.
This implies that normalized_ts != non_normalized_ts
even if normalized_ts == non_normalized_ts.normalized()
.
impl Eq for Signer
impl Eq for ibc_primitives::Timestamp
impl Eq for UnorderedKeyError
impl Eq for alloc::collections::TryReserveError
impl Eq for CString
impl Eq for FromVecWithNulError
impl Eq for IntoStringError
impl Eq for NulError
impl Eq for FromUtf8Error
impl Eq for Layout
impl Eq for LayoutError
impl Eq for AllocError
impl Eq for TypeId
impl Eq for CharTryFromError
impl Eq for ParseCharError
impl Eq for DecodeUtf16Error
impl Eq for TryFromCharError
impl Eq for CpuidResult
impl Eq for CStr
impl Eq for FromBytesUntilNulError
impl Eq for FromBytesWithNulError
impl Eq for core::fmt::Error
impl Eq for PhantomPinned
impl Eq for Assume
impl Eq for Ipv4Addr
impl Eq for Ipv6Addr
impl Eq for AddrParseError
impl Eq for SocketAddrV4
impl Eq for SocketAddrV6
impl Eq for ParseFloatError
impl Eq for core::num::error::ParseIntError
impl Eq for core::num::error::TryFromIntError
impl Eq for RangeFull
impl Eq for core::ptr::alignment::Alignment
impl Eq for core::time::Duration
impl Eq for TryFromFloatSecsError
impl Eq for OsStr
impl Eq for OsString
impl Eq for FileType
impl Eq for Permissions
impl Eq for UCred
impl Eq for Components<'_>
impl Eq for std::path::Path
impl Eq for PathBuf
impl Eq for StripPrefixError
impl Eq for ExitStatus
impl Eq for ExitStatusError
impl Eq for Output
impl Eq for WaitTimeoutResult
impl Eq for RecvError
impl Eq for AccessError
impl Eq for ThreadId
impl Eq for std::time::Instant
impl Eq for SystemTime
impl Eq for Alphabet
impl Eq for DecodeMetadata
impl Eq for BorshSchemaContainer
impl Eq for Bytes
impl Eq for BytesMut
impl Eq for InvalidLength
impl Eq for deranged::ParseIntError
impl Eq for deranged::TryFromIntError
impl Eq for InvalidBufferSize
impl Eq for ed25519::Signature
impl Eq for ibc_proto::ibc::core::client::v1::Height
impl Eq for OptionBool
impl Eq for parity_scale_codec::error::Error
impl Eq for prost::error::DecodeError
impl Eq for EncodeError
impl Eq for MetaType
impl Eq for PortableRegistry
impl Eq for PortableType
impl Eq for Registry
impl Eq for Map<String, Value>
impl Eq for Number
impl Eq for Base64
impl Eq for Hex
impl Eq for Identity
impl Eq for Event
impl Eq for EventAttribute
impl Eq for tendermint::abci::request::apply_snapshot_chunk::ApplySnapshotChunk
impl Eq for tendermint::abci::request::begin_block::BeginBlock
impl Eq for tendermint::abci::request::check_tx::CheckTx
impl Eq for tendermint::abci::request::deliver_tx::DeliverTx
impl Eq for tendermint::abci::request::echo::Echo
impl Eq for tendermint::abci::request::end_block::EndBlock
impl Eq for tendermint::abci::request::extend_vote::ExtendVote
impl Eq for tendermint::abci::request::finalize_block::FinalizeBlock
impl Eq for tendermint::abci::request::info::Info
impl Eq for tendermint::abci::request::init_chain::InitChain
impl Eq for tendermint::abci::request::load_snapshot_chunk::LoadSnapshotChunk
impl Eq for tendermint::abci::request::offer_snapshot::OfferSnapshot
impl Eq for tendermint::abci::request::prepare_proposal::PrepareProposal
impl Eq for tendermint::abci::request::process_proposal::ProcessProposal
impl Eq for tendermint::abci::request::query::Query
impl Eq for tendermint::abci::request::set_option::SetOption
impl Eq for tendermint::abci::request::verify_vote_extension::VerifyVoteExtension
impl Eq for tendermint::abci::response::apply_snapshot_chunk::ApplySnapshotChunk
impl Eq for tendermint::abci::response::begin_block::BeginBlock
impl Eq for tendermint::abci::response::check_tx::CheckTx
impl Eq for tendermint::abci::response::commit::Commit
impl Eq for tendermint::abci::response::deliver_tx::DeliverTx
impl Eq for tendermint::abci::response::echo::Echo
impl Eq for tendermint::abci::response::end_block::EndBlock
impl Eq for Exception
impl Eq for tendermint::abci::response::extend_vote::ExtendVote
impl Eq for tendermint::abci::response::finalize_block::FinalizeBlock
impl Eq for tendermint::abci::response::info::Info
impl Eq for tendermint::abci::response::init_chain::InitChain
impl Eq for ListSnapshots
impl Eq for tendermint::abci::response::load_snapshot_chunk::LoadSnapshotChunk
impl Eq for tendermint::abci::response::prepare_proposal::PrepareProposal
impl Eq for tendermint::abci::response::query::Query
impl Eq for tendermint::abci::response::set_option::SetOption
impl Eq for CommitInfo
impl Eq for ExecTxResult
impl Eq for ExtendedCommitInfo
impl Eq for ExtendedVoteInfo
impl Eq for Misbehavior
impl Eq for Snapshot
impl Eq for Validator
impl Eq for VoteInfo
impl Eq for tendermint::account::Id
impl Eq for tendermint::block::commit::Commit
impl Eq for tendermint::block::header::Header
impl Eq for tendermint::block::header::Version
impl Eq for tendermint::block::height::Height
impl Eq for tendermint::block::id::Id
impl Eq for tendermint::block::parts::Header
impl Eq for Round
impl Eq for SignedHeader
impl Eq for Size
impl Eq for Block
impl Eq for tendermint::chain::id::Id
impl Eq for Channels
impl Eq for AbciParams
impl Eq for tendermint::consensus::params::Params
impl Eq for ValidatorParams
impl Eq for VersionParams
impl Eq for tendermint::consensus::state::State
impl Eq for VerificationKey
impl Eq for BlockIdFlagSubdetail
impl Eq for CryptoSubdetail
impl Eq for DateOutOfRangeSubdetail
impl Eq for DurationOutOfRangeSubdetail
impl Eq for EmptySignatureSubdetail
impl Eq for IntegerOverflowSubdetail
impl Eq for InvalidAbciRequestTypeSubdetail
impl Eq for InvalidAbciResponseTypeSubdetail
impl Eq for InvalidAccountIdLengthSubdetail
impl Eq for InvalidAppHashLengthSubdetail
impl Eq for InvalidBlockSubdetail
impl Eq for InvalidEvidenceSubdetail
impl Eq for InvalidFirstHeaderSubdetail
impl Eq for InvalidHashSizeSubdetail
impl Eq for InvalidKeySubdetail
impl Eq for InvalidMessageTypeSubdetail
impl Eq for InvalidPartSetHeaderSubdetail
impl Eq for InvalidSignatureIdLengthSubdetail
impl Eq for InvalidSignatureSubdetail
impl Eq for InvalidSignedHeaderSubdetail
impl Eq for InvalidTimestampSubdetail
impl Eq for InvalidValidatorAddressSubdetail
impl Eq for InvalidValidatorParamsSubdetail
impl Eq for InvalidVersionParamsSubdetail
impl Eq for LengthSubdetail
impl Eq for MissingConsensusParamsSubdetail
impl Eq for MissingDataSubdetail
impl Eq for MissingEvidenceSubdetail
impl Eq for MissingGenesisTimeSubdetail
impl Eq for MissingHeaderSubdetail
impl Eq for MissingLastCommitInfoSubdetail
impl Eq for MissingMaxAgeDurationSubdetail
impl Eq for MissingPublicKeySubdetail
impl Eq for MissingTimestampSubdetail
impl Eq for MissingValidatorSubdetail
impl Eq for MissingVersionSubdetail
impl Eq for NegativeHeightSubdetail
impl Eq for NegativeMaxAgeNumSubdetail
impl Eq for NegativePolRoundSubdetail
impl Eq for NegativePowerSubdetail
impl Eq for NegativeProofIndexSubdetail
impl Eq for NegativeProofTotalSubdetail
impl Eq for NegativeRoundSubdetail
impl Eq for NegativeValidatorIndexSubdetail
impl Eq for NoProposalFoundSubdetail
impl Eq for NoVoteFoundSubdetail
impl Eq for NonZeroTimestampSubdetail
impl Eq for ParseIntSubdetail
impl Eq for ParseSubdetail
impl Eq for ProposerNotFoundSubdetail
impl Eq for ProtocolSubdetail
impl Eq for SignatureInvalidSubdetail
impl Eq for SignatureSubdetail
impl Eq for SubtleEncodingSubdetail
impl Eq for TimeParseSubdetail
impl Eq for TimestampConversionSubdetail
impl Eq for TimestampNanosOutOfRangeSubdetail
impl Eq for TotalVotingPowerMismatchSubdetail
impl Eq for TotalVotingPowerOverflowSubdetail
impl Eq for TrustThresholdTooLargeSubdetail
impl Eq for TrustThresholdTooSmallSubdetail
impl Eq for UndefinedTrustThresholdSubdetail
impl Eq for UnsupportedApplySnapshotChunkResultSubdetail
impl Eq for UnsupportedCheckTxTypeSubdetail
impl Eq for UnsupportedKeyTypeSubdetail
impl Eq for UnsupportedOfferSnapshotChunkResultSubdetail
impl Eq for UnsupportedProcessProposalStatusSubdetail
impl Eq for UnsupportedVerifyVoteExtensionStatusSubdetail
impl Eq for ConflictingBlock
impl Eq for DuplicateVoteEvidence
impl Eq for tendermint::evidence::Duration
impl Eq for LightClientAttackEvidence
impl Eq for List
impl Eq for tendermint::evidence::Params
impl Eq for AppHash
impl Eq for tendermint::merkle::proof::Proof
impl Eq for ProofOp
impl Eq for ProofOps
impl Eq for Moniker
impl Eq for tendermint::node::id::Id
impl Eq for tendermint::node::info::Info
impl Eq for ListenAddress
impl Eq for OtherInfo
impl Eq for ProtocolVersionInfo
impl Eq for RemoteSignerError
impl Eq for CanonicalProposal
impl Eq for SignProposalRequest
impl Eq for SignedProposalResponse
impl Eq for Proposal
impl Eq for PubKeyRequest
impl Eq for PubKeyResponse
impl Eq for tendermint::signature::Signature
impl Eq for tendermint::time::Time
impl Eq for Timeout
impl Eq for TrustThresholdFraction
impl Eq for tendermint::tx::proof::Proof
impl Eq for tendermint::validator::Info
impl Eq for ProposerPriority
impl Eq for Set
impl Eq for SimpleValidator
impl Eq for Update
impl Eq for tendermint::version::Version
impl Eq for CanonicalVote
impl Eq for Power
impl Eq for SignVoteRequest
impl Eq for SignedVoteResponse
impl Eq for Vote
impl Eq for ValidatorIndex
impl Eq for Date
impl Eq for time::duration::Duration
impl Eq for ComponentRange
impl Eq for ConversionRange
impl Eq for DifferentVariant
impl Eq for InvalidVariant
impl Eq for Day
impl Eq for End
impl Eq for Hour
impl Eq for Ignore
impl Eq for Minute
impl Eq for time::format_description::modifier::Month
impl Eq for OffsetHour
impl Eq for OffsetMinute
impl Eq for OffsetSecond
impl Eq for Ordinal
impl Eq for Period
impl Eq for Second
impl Eq for Subsecond
impl Eq for UnixTimestamp
impl Eq for WeekNumber
impl Eq for time::format_description::modifier::Weekday
impl Eq for Year
impl Eq for Rfc2822
impl Eq for Rfc3339
impl Eq for time::instant::Instant
impl Eq for OffsetDateTime
impl Eq for PrimitiveDateTime
impl Eq for time::time::Time
impl Eq for UtcOffset
impl Eq for ATerm
impl Eq for B0
impl Eq for B1
impl Eq for Z0
impl Eq for Equal
impl Eq for Greater
impl Eq for Less
impl Eq for UTerm
impl Eq for ParseBoolError
impl Eq for Utf8Error
impl Eq for String
impl<'a> Eq for std::path::Component<'a>
impl<'a> Eq for Prefix<'a>
impl<'a> Eq for BorrowedFormatItem<'a>
impl<'a> Eq for Location<'a>
impl<'a> Eq for PrefixComponent<'a>
impl<'a> Eq for Utf8Chunk<'a>
impl<'a, T> Eq for CompactRef<'a, T>where
T: Eq,
impl<'a, T> Eq for Symbol<'a, T>where
T: Eq + 'a,
impl<A> Eq for &A
impl<A> Eq for &mut A
impl<B> Eq for Cow<'_, B>
impl<B, C> Eq for ControlFlow<B, C>
impl<Dyn> Eq for DynMetadata<Dyn>where
Dyn: ?Sized,
impl<F> Eq for Fwhere
F: FnPtr,
impl<H> Eq for BuildHasherDefault<H>
impl<Idx> Eq for Range<Idx>where
Idx: Eq,
impl<Idx> Eq for RangeFrom<Idx>where
Idx: Eq,
impl<Idx> Eq for RangeInclusive<Idx>where
Idx: Eq,
impl<Idx> Eq for RangeTo<Idx>where
Idx: Eq,
impl<Idx> Eq for RangeToInclusive<Idx>where
Idx: Eq,
impl<K, V, A> Eq for BTreeMap<K, V, A>
impl<K, V, S> Eq for std::collections::hash::map::HashMap<K, V, S>
impl<K, V, S, A> Eq for hashbrown::map::HashMap<K, V, S, A>
impl<Ptr> Eq for Pin<Ptr>
impl<T> Eq for Option<T>where
T: Eq,
impl<T> Eq for Bound<T>where
T: Eq,
impl<T> Eq for Poll<T>where
T: Eq,
impl<T> Eq for TrySendError<T>where
T: Eq,
impl<T> Eq for TypeDef<T>
impl<T> Eq for SingleOrVec<T>where
T: Eq,
impl<T> Eq for *const Twhere
T: ?Sized,
impl<T> Eq for *mut Twhere
T: ?Sized,
impl<T> Eq for [T]where
T: Eq,
impl<T> Eq for (T₁, T₂, …, Tₙ)
This trait is implemented for tuples up to twelve items long.