Trait wasmtime_environ::__core::marker::StructuralPartialEq
source · pub trait StructuralPartialEq { }
structural_match
)Expand description
Required trait for constants used in pattern matches.
Any type that derives PartialEq
automatically implements this trait,
regardless of whether its type-parameters implement Eq
.
If a const
item contains some type that does not implement this trait,
then that type either (1.) does not implement PartialEq
(which means the
constant will not provide that comparison method, which code generation
assumes is available), or (2.) it implements its own version of
PartialEq
(which we assume does not conform to a structural-equality
comparison).
In either of the two scenarios above, we reject usage of such a constant in a pattern match.
See also the structural match RFC, and issue 63438 which motivated migrating from attribute-based design to this trait.
Implementors§
impl StructuralPartialEq for EntityIndex
impl StructuralPartialEq for FlagValue
impl StructuralPartialEq for GlobalInit
impl StructuralPartialEq for Trap
impl StructuralPartialEq for WasmHeapType
impl StructuralPartialEq for WasmType
impl StructuralPartialEq for BlockType
impl StructuralPartialEq for CanonicalOption
impl StructuralPartialEq for ComponentExternalKind
impl StructuralPartialEq for ComponentOuterAliasKind
impl StructuralPartialEq for ComponentTypeRef
impl StructuralPartialEq for ComponentValType
impl StructuralPartialEq for wasmtime_environ::wasmparser::Encoding
impl StructuralPartialEq for ExternalKind
impl StructuralPartialEq for FrameKind
impl StructuralPartialEq for HeapType
impl StructuralPartialEq for InstantiationArgKind
impl StructuralPartialEq for OuterAliasKind
impl StructuralPartialEq for PrimitiveValType
impl StructuralPartialEq for StorageType
impl StructuralPartialEq for TypeBounds
impl StructuralPartialEq for ValType
impl StructuralPartialEq for AsciiChar
impl StructuralPartialEq for wasmtime_environ::__core::cmp::Ordering
impl StructuralPartialEq for wasmtime_environ::__core::fmt::Alignment
impl StructuralPartialEq for IpAddr
impl StructuralPartialEq for Ipv6MulticastScope
impl StructuralPartialEq for SocketAddr
impl StructuralPartialEq for FpCategory
impl StructuralPartialEq for IntErrorKind
impl StructuralPartialEq for Which
impl StructuralPartialEq for SearchStep
impl StructuralPartialEq for wasmtime_environ::__core::sync::atomic::Ordering
impl StructuralPartialEq for TryReserveErrorKind
impl StructuralPartialEq for BacktraceStatus
impl StructuralPartialEq for VarError
impl StructuralPartialEq for SeekFrom
impl StructuralPartialEq for ErrorKind
impl StructuralPartialEq for Shutdown
impl StructuralPartialEq for BacktraceStyle
impl StructuralPartialEq for RecvTimeoutError
impl StructuralPartialEq for TryRecvError
impl StructuralPartialEq for _Unwind_Action
impl StructuralPartialEq for _Unwind_Reason_Code
impl StructuralPartialEq for DwarfFileType
impl StructuralPartialEq for Format
impl StructuralPartialEq for gimli::common::SectionId
impl StructuralPartialEq for RunTimeEndian
impl StructuralPartialEq for Pointer
impl StructuralPartialEq for gimli::read::Error
impl StructuralPartialEq for ColumnType
impl StructuralPartialEq for Value
impl StructuralPartialEq for ValueType
impl StructuralPartialEq for gimli::write::cfi::CallFrameInstruction
impl StructuralPartialEq for ConvertError
impl StructuralPartialEq for Address
impl StructuralPartialEq for gimli::write::Error
impl StructuralPartialEq for Reference
impl StructuralPartialEq for LineString
impl StructuralPartialEq for gimli::write::loc::Location
impl StructuralPartialEq for gimli::write::range::Range
impl StructuralPartialEq for gimli::write::unit::AttributeValue
impl StructuralPartialEq for AddressSize
impl StructuralPartialEq for object::common::Architecture
impl StructuralPartialEq for object::common::BinaryFormat
impl StructuralPartialEq for ComdatKind
impl StructuralPartialEq for FileFlags
impl StructuralPartialEq for RelocationEncoding
impl StructuralPartialEq for RelocationKind
impl StructuralPartialEq for SectionFlags
impl StructuralPartialEq for SectionKind
impl StructuralPartialEq for SegmentFlags
impl StructuralPartialEq for SymbolKind
impl StructuralPartialEq for SymbolScope
impl StructuralPartialEq for object::endian::Endianness
impl StructuralPartialEq for CompressionFormat
impl StructuralPartialEq for FileKind
impl StructuralPartialEq for ObjectKind
impl StructuralPartialEq for RelocationTarget
impl StructuralPartialEq for object::read::SymbolSection
impl StructuralPartialEq for Mangling
impl StructuralPartialEq for StandardSection
impl StructuralPartialEq for StandardSegment
impl StructuralPartialEq for object::write::SymbolSection
impl StructuralPartialEq for Op
impl StructuralPartialEq for CDataModel
impl StructuralPartialEq for Size
impl StructuralPartialEq for ParseError
impl StructuralPartialEq for Aarch64Architecture
impl StructuralPartialEq for target_lexicon::targets::Architecture
impl StructuralPartialEq for ArmArchitecture
impl StructuralPartialEq for target_lexicon::targets::BinaryFormat
impl StructuralPartialEq for Environment
impl StructuralPartialEq for Mips32Architecture
impl StructuralPartialEq for Mips64Architecture
impl StructuralPartialEq for OperatingSystem
impl StructuralPartialEq for Riscv32Architecture
impl StructuralPartialEq for Riscv64Architecture
impl StructuralPartialEq for Vendor
impl StructuralPartialEq for X86_32Architecture
impl StructuralPartialEq for CallingConvention
impl StructuralPartialEq for target_lexicon::triple::Endianness
impl StructuralPartialEq for PointerWidth
impl StructuralPartialEq for bool
impl StructuralPartialEq for char
impl StructuralPartialEq for i8
impl StructuralPartialEq for i16
impl StructuralPartialEq for i32
impl StructuralPartialEq for i64
impl StructuralPartialEq for i128
impl StructuralPartialEq for isize
impl StructuralPartialEq for str
impl StructuralPartialEq for u8
impl StructuralPartialEq for u16
impl StructuralPartialEq for u32
impl StructuralPartialEq for u64
impl StructuralPartialEq for u128
impl StructuralPartialEq for ()
impl StructuralPartialEq for usize
impl StructuralPartialEq for DataIndex
impl StructuralPartialEq for DefinedFuncIndex
impl StructuralPartialEq for DefinedGlobalIndex
impl StructuralPartialEq for DefinedMemoryIndex
impl StructuralPartialEq for DefinedTableIndex
impl StructuralPartialEq for ElemIndex
impl StructuralPartialEq for FilePos
impl StructuralPartialEq for FuncIndex
impl StructuralPartialEq for FuncRefIndex
impl StructuralPartialEq for Global
impl StructuralPartialEq for GlobalIndex
impl StructuralPartialEq for InstructionAddressMap
impl StructuralPartialEq for Memory
impl StructuralPartialEq for MemoryIndex
impl StructuralPartialEq for OwnedMemoryIndex
impl StructuralPartialEq for SignatureIndex
impl StructuralPartialEq for StaticModuleIndex
impl StructuralPartialEq for Table
impl StructuralPartialEq for TableIndex
impl StructuralPartialEq for Tag
impl StructuralPartialEq for TagIndex
impl StructuralPartialEq for TrapInformation
impl StructuralPartialEq for TypeIndex
impl StructuralPartialEq for WasmFuncType
impl StructuralPartialEq for WasmRefType
impl StructuralPartialEq for ArrayType
impl StructuralPartialEq for FieldType
impl StructuralPartialEq for FuncType
impl StructuralPartialEq for GlobalType
impl StructuralPartialEq for Ieee32
impl StructuralPartialEq for Ieee64
impl StructuralPartialEq for MemoryType
impl StructuralPartialEq for RefType
impl StructuralPartialEq for StructType
impl StructuralPartialEq for TableType
impl StructuralPartialEq for V128
impl StructuralPartialEq for ResourceId
impl StructuralPartialEq for TypeId
impl StructuralPartialEq for AllocError
impl StructuralPartialEq for Layout
impl StructuralPartialEq for LayoutError
impl StructuralPartialEq for CpuidResult
impl StructuralPartialEq for CharTryFromError
impl StructuralPartialEq for DecodeUtf16Error
impl StructuralPartialEq for ParseCharError
impl StructuralPartialEq for TryFromCharError
impl StructuralPartialEq for FromBytesUntilNulError
impl StructuralPartialEq for FromBytesWithNulError
impl StructuralPartialEq for wasmtime_environ::__core::fmt::Error
impl StructuralPartialEq for Assume
impl StructuralPartialEq for AddrParseError
impl StructuralPartialEq for Ipv4Addr
impl StructuralPartialEq for Ipv6Addr
impl StructuralPartialEq for SocketAddrV4
impl StructuralPartialEq for SocketAddrV6
impl StructuralPartialEq for NonZeroI8
impl StructuralPartialEq for NonZeroI16
impl StructuralPartialEq for NonZeroI32
impl StructuralPartialEq for NonZeroI64
impl StructuralPartialEq for NonZeroI128
impl StructuralPartialEq for NonZeroIsize
impl StructuralPartialEq for NonZeroU8
impl StructuralPartialEq for NonZeroU16
impl StructuralPartialEq for NonZeroU32
impl StructuralPartialEq for NonZeroU64
impl StructuralPartialEq for NonZeroU128
impl StructuralPartialEq for NonZeroUsize
impl StructuralPartialEq for ParseFloatError
impl StructuralPartialEq for ParseIntError
impl StructuralPartialEq for TryFromIntError
impl StructuralPartialEq for RangeFull
impl StructuralPartialEq for wasmtime_environ::__core::ptr::Alignment
impl StructuralPartialEq for ParseBoolError
impl StructuralPartialEq for Utf8Error
impl StructuralPartialEq for RawWaker
impl StructuralPartialEq for RawWakerVTable
impl StructuralPartialEq for Duration
impl StructuralPartialEq for TryFromFloatSecsError
impl StructuralPartialEq for alloc::collections::TryReserveError
impl StructuralPartialEq for CString
impl StructuralPartialEq for FromVecWithNulError
impl StructuralPartialEq for IntoStringError
impl StructuralPartialEq for NulError
impl StructuralPartialEq for FromUtf8Error
impl StructuralPartialEq for String
impl StructuralPartialEq for FileType
impl StructuralPartialEq for Permissions
impl StructuralPartialEq for UCred
impl StructuralPartialEq for StripPrefixError
impl StructuralPartialEq for ExitStatus
impl StructuralPartialEq for ExitStatusError
impl StructuralPartialEq for Output
impl StructuralPartialEq for WaitTimeoutResult
impl StructuralPartialEq for RecvError
impl StructuralPartialEq for AccessError
impl StructuralPartialEq for ThreadId
impl StructuralPartialEq for Instant
impl StructuralPartialEq for SystemTime
impl StructuralPartialEq for DebugTypeSignature
impl StructuralPartialEq for DwoId
impl StructuralPartialEq for gimli::common::Encoding
impl StructuralPartialEq for LineEncoding
impl StructuralPartialEq for Register
impl StructuralPartialEq for DwAccess
impl StructuralPartialEq for DwAddr
impl StructuralPartialEq for DwAt
impl StructuralPartialEq for DwAte
impl StructuralPartialEq for DwCc
impl StructuralPartialEq for DwCfa
impl StructuralPartialEq for DwChildren
impl StructuralPartialEq for DwDefaulted
impl StructuralPartialEq for DwDs
impl StructuralPartialEq for DwDsc
impl StructuralPartialEq for DwEhPe
impl StructuralPartialEq for DwEnd
impl StructuralPartialEq for DwForm
impl StructuralPartialEq for DwId
impl StructuralPartialEq for DwIdx
impl StructuralPartialEq for DwInl
impl StructuralPartialEq for DwLang
impl StructuralPartialEq for DwLle
impl StructuralPartialEq for DwLnct
impl StructuralPartialEq for DwLne
impl StructuralPartialEq for DwLns
impl StructuralPartialEq for DwMacro
impl StructuralPartialEq for DwOp
impl StructuralPartialEq for DwOrd
impl StructuralPartialEq for DwRle
impl StructuralPartialEq for DwSect
impl StructuralPartialEq for DwSectV2
impl StructuralPartialEq for DwTag
impl StructuralPartialEq for DwUt
impl StructuralPartialEq for DwVirtuality
impl StructuralPartialEq for DwVis
impl StructuralPartialEq for gimli::endianity::BigEndian
impl StructuralPartialEq for gimli::endianity::LittleEndian
impl StructuralPartialEq for Abbreviation
impl StructuralPartialEq for AttributeSpecification
impl StructuralPartialEq for ArangeEntry
impl StructuralPartialEq for Augmentation
impl StructuralPartialEq for BaseAddresses
impl StructuralPartialEq for SectionBaseAddresses
impl StructuralPartialEq for UnitIndexSection
impl StructuralPartialEq for FileEntryFormat
impl StructuralPartialEq for LineRow
impl StructuralPartialEq for ReaderOffsetId
impl StructuralPartialEq for gimli::read::rnglists::Range
impl StructuralPartialEq for StoreOnHeap
impl StructuralPartialEq for CieId
impl StructuralPartialEq for gimli::write::cfi::CommonInformationEntry
impl StructuralPartialEq for gimli::write::cfi::FrameDescriptionEntry
impl StructuralPartialEq for FileId
impl StructuralPartialEq for DirectoryId
impl StructuralPartialEq for FileInfo
impl StructuralPartialEq for LocationList
impl StructuralPartialEq for LocationListId
impl StructuralPartialEq for gimli::write::op::Expression
impl StructuralPartialEq for RangeList
impl StructuralPartialEq for RangeListId
impl StructuralPartialEq for LineStringId
impl StructuralPartialEq for gimli::write::str::StringId
impl StructuralPartialEq for gimli::write::unit::Attribute
impl StructuralPartialEq for UnitEntryId
impl StructuralPartialEq for UnitId
impl StructuralPartialEq for indexmap::TryReserveError
impl StructuralPartialEq for ParseLevelError
impl StructuralPartialEq for object::endian::BigEndian
impl StructuralPartialEq for object::endian::LittleEndian
impl StructuralPartialEq for CompressedFileRange
impl StructuralPartialEq for object::read::Error
impl StructuralPartialEq for object::read::SectionIndex
impl StructuralPartialEq for object::read::SymbolIndex
impl StructuralPartialEq for object::write::elf::writer::SectionIndex
impl StructuralPartialEq for object::write::elf::writer::SymbolIndex
impl StructuralPartialEq for object::write::string::StringId
impl StructuralPartialEq for ComdatId
impl StructuralPartialEq for object::write::Error
impl StructuralPartialEq for object::write::SectionId
impl StructuralPartialEq for SymbolId
impl StructuralPartialEq for BuildMetadata
impl StructuralPartialEq for Comparator
impl StructuralPartialEq for Prerelease
impl StructuralPartialEq for Version
impl StructuralPartialEq for VersionReq
impl StructuralPartialEq for IgnoredAny
impl StructuralPartialEq for serde::de::value::Error
impl StructuralPartialEq for Triple
impl StructuralPartialEq for PhantomPinned
impl StructuralPartialEq for TryReserveError
impl StructuralPartialEq for TryReserveError
impl<'a> StructuralPartialEq for ComponentDefinedType<'a>
impl<'a> StructuralPartialEq for Component<'a>
impl<'a> StructuralPartialEq for Prefix<'a>
impl<'a> StructuralPartialEq for Unexpected<'a>
impl<'a> StructuralPartialEq for VariantCase<'a>
impl<'a> StructuralPartialEq for wasmtime_environ::__core::panic::Location<'a>
impl<'a> StructuralPartialEq for Utf8Chunk<'a>
impl<'a> StructuralPartialEq for Metadata<'a>
impl<'a> StructuralPartialEq for MetadataBuilder<'a>
impl<'bases, Section, R> StructuralPartialEq for CieOrFde<'bases, Section, R>where R: Reader, Section: UnwindSection<R>,
impl<'bases, Section, R> StructuralPartialEq for PartialFrameDescriptionEntry<'bases, Section, R>where R: Reader, Section: UnwindSection<R>,
impl<'data> StructuralPartialEq for CodeView<'data>
impl<'data> StructuralPartialEq for CompressedData<'data>
impl<'data> StructuralPartialEq for Export<'data>
impl<'data> StructuralPartialEq for Import<'data>
impl<'data> StructuralPartialEq for ObjectMapEntry<'data>
impl<'data> StructuralPartialEq for SymbolMapName<'data>
impl<'data> StructuralPartialEq for Bytes<'data>
impl<'input, Endian> StructuralPartialEq for EndianSlice<'input, Endian>where Endian: Endianity,
impl<B, C> StructuralPartialEq for ControlFlow<B, C>
impl<E> StructuralPartialEq for I16<E>where E: Endian,
impl<E> StructuralPartialEq for I32<E>where E: Endian,
impl<E> StructuralPartialEq for I64<E>where E: Endian,
impl<E> StructuralPartialEq for U16<E>where E: Endian,
impl<E> StructuralPartialEq for U32<E>where E: Endian,
impl<E> StructuralPartialEq for U64<E>where E: Endian,
impl<E> StructuralPartialEq for I16Bytes<E>where E: Endian,
impl<E> StructuralPartialEq for I32Bytes<E>where E: Endian,
impl<E> StructuralPartialEq for I64Bytes<E>where E: Endian,
impl<E> StructuralPartialEq for U16Bytes<E>where E: Endian,
impl<E> StructuralPartialEq for U32Bytes<E>where E: Endian,
impl<E> StructuralPartialEq for U64Bytes<E>where E: Endian,
impl<Idx> StructuralPartialEq for wasmtime_environ::__core::ops::Range<Idx>
impl<Idx> StructuralPartialEq for RangeFrom<Idx>
impl<Idx> StructuralPartialEq for RangeInclusive<Idx>
impl<Idx> StructuralPartialEq for RangeTo<Idx>
impl<Idx> StructuralPartialEq for RangeToInclusive<Idx>
impl<K, V> StructuralPartialEq for PrimaryMap<K, V>where K: EntityRef,
impl<Offset> StructuralPartialEq for UnitType<Offset>where Offset: ReaderOffset,
impl<R> StructuralPartialEq for gimli::read::cfi::CallFrameInstruction<R>where R: Reader,
impl<R> StructuralPartialEq for CfaRule<R>where R: Reader,
impl<R> StructuralPartialEq for RegisterRule<R>where R: Reader,
impl<R> StructuralPartialEq for EvaluationResult<R>where R: Reader,
impl<R> StructuralPartialEq for DebugFrame<R>where R: Reader,
impl<R> StructuralPartialEq for EhFrame<R>where R: Reader,
impl<R> StructuralPartialEq for EhFrameHdr<R>where R: Reader,
impl<R> StructuralPartialEq for LocationListEntry<R>where R: Reader,
impl<R> StructuralPartialEq for gimli::read::op::Expression<R>where R: Reader,
impl<R> StructuralPartialEq for gimli::read::unit::Attribute<R>where R: Reader,
impl<R, A> StructuralPartialEq for UnwindContext<R, A>where R: Reader, A: UnwindContextStorage<R>,
impl<R, Offset> StructuralPartialEq for LineInstruction<R, Offset>where R: Reader<Offset = Offset>, Offset: ReaderOffset,
impl<R, Offset> StructuralPartialEq for gimli::read::op::Location<R, Offset>where R: Reader<Offset = Offset>, Offset: ReaderOffset,
impl<R, Offset> StructuralPartialEq for Operation<R, Offset>where R: Reader<Offset = Offset>, Offset: ReaderOffset,
impl<R, Offset> StructuralPartialEq for gimli::read::unit::AttributeValue<R, Offset>where R: Reader<Offset = Offset>, Offset: ReaderOffset,
impl<R, Offset> StructuralPartialEq for ArangeHeader<R, Offset>where R: Reader<Offset = Offset>, Offset: ReaderOffset,
impl<R, Offset> StructuralPartialEq for gimli::read::cfi::CommonInformationEntry<R, Offset>where R: Reader<Offset = Offset>, Offset: ReaderOffset,
impl<R, Offset> StructuralPartialEq for gimli::read::cfi::FrameDescriptionEntry<R, Offset>where R: Reader<Offset = Offset>, Offset: ReaderOffset,
impl<R, Offset> StructuralPartialEq for CompleteLineProgram<R, Offset>where R: Reader<Offset = Offset>, Offset: ReaderOffset,
impl<R, Offset> StructuralPartialEq for FileEntry<R, Offset>where R: Reader<Offset = Offset>, Offset: ReaderOffset,
impl<R, Offset> StructuralPartialEq for IncompleteLineProgram<R, Offset>where R: Reader<Offset = Offset>, Offset: ReaderOffset,
impl<R, Offset> StructuralPartialEq for LineProgramHeader<R, Offset>where R: Reader<Offset = Offset>, Offset: ReaderOffset,
impl<R, Offset> StructuralPartialEq for Piece<R, Offset>where R: Reader<Offset = Offset>, Offset: ReaderOffset,
impl<R, Offset> StructuralPartialEq for UnitHeader<R, Offset>where R: Reader<Offset = Offset>, Offset: ReaderOffset,
impl<R, S> StructuralPartialEq for UnwindTableRow<R, S>where R: Reader, S: UnwindContextStorage<R>,
impl<Section, Symbol> StructuralPartialEq for SymbolFlags<Section, Symbol>
impl<T> StructuralPartialEq for Bound<T>
impl<T> StructuralPartialEq for Option<T>
impl<T> StructuralPartialEq for Poll<T>
impl<T> StructuralPartialEq for TrySendError<T>
impl<T> StructuralPartialEq for UnitSectionOffset<T>
impl<T> StructuralPartialEq for DieReference<T>
impl<T> StructuralPartialEq for &Twhere T: ?Sized,
impl<T> StructuralPartialEq for [T]
impl<T> StructuralPartialEq for (T₁, T₂, …, Tₙ)
This trait is implemented for tuples up to twelve items long.