Enum rustc_infer::infer::ValuePairs
source · pub enum ValuePairs<'tcx> {
Regions(ExpectedFound<Region<'tcx>>),
Terms(ExpectedFound<Term<'tcx>>),
Aliases(ExpectedFound<AliasTy<'tcx>>),
TraitRefs(ExpectedFound<TraitRef<'tcx>>),
PolyTraitRefs(ExpectedFound<PolyTraitRef<'tcx>>),
PolySigs(ExpectedFound<PolyFnSig<'tcx>>),
ExistentialTraitRef(ExpectedFound<PolyExistentialTraitRef<'tcx>>),
ExistentialProjection(ExpectedFound<PolyExistentialProjection<'tcx>>),
}
Expand description
See the error_reporting
module for more details.
Variants§
Regions(ExpectedFound<Region<'tcx>>)
Terms(ExpectedFound<Term<'tcx>>)
Aliases(ExpectedFound<AliasTy<'tcx>>)
TraitRefs(ExpectedFound<TraitRef<'tcx>>)
PolyTraitRefs(ExpectedFound<PolyTraitRef<'tcx>>)
PolySigs(ExpectedFound<PolyFnSig<'tcx>>)
ExistentialTraitRef(ExpectedFound<PolyExistentialTraitRef<'tcx>>)
ExistentialProjection(ExpectedFound<PolyExistentialProjection<'tcx>>)
Implementations§
Trait Implementations§
source§impl<'tcx> Clone for ValuePairs<'tcx>
impl<'tcx> Clone for ValuePairs<'tcx>
source§fn clone(&self) -> ValuePairs<'tcx>
fn clone(&self) -> ValuePairs<'tcx>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<'tcx> Debug for ValuePairs<'tcx>
impl<'tcx> Debug for ValuePairs<'tcx>
source§impl<'tcx> PartialEq<ValuePairs<'tcx>> for ValuePairs<'tcx>
impl<'tcx> PartialEq<ValuePairs<'tcx>> for ValuePairs<'tcx>
source§fn eq(&self, other: &ValuePairs<'tcx>) -> bool
fn eq(&self, other: &ValuePairs<'tcx>) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl<'tcx> TypeFoldable<TyCtxt<'tcx>> for ValuePairs<'tcx>
impl<'tcx> TypeFoldable<TyCtxt<'tcx>> for ValuePairs<'tcx>
source§fn try_fold_with<__F: FallibleTypeFolder<TyCtxt<'tcx>>>(
self,
__folder: &mut __F
) -> Result<Self, __F::Error>
fn try_fold_with<__F: FallibleTypeFolder<TyCtxt<'tcx>>>( self, __folder: &mut __F ) -> Result<Self, __F::Error>
source§fn fold_with<F>(self, folder: &mut F) -> Selfwhere
F: TypeFolder<I>,
fn fold_with<F>(self, folder: &mut F) -> Selfwhere F: TypeFolder<I>,
A convenient alternative to
try_fold_with
for use with infallible
folders. Do not override this method, to ensure coherence with
try_fold_with
.source§impl<'tcx> TypeVisitable<TyCtxt<'tcx>> for ValuePairs<'tcx>
impl<'tcx> TypeVisitable<TyCtxt<'tcx>> for ValuePairs<'tcx>
source§fn visit_with<__V: TypeVisitor<TyCtxt<'tcx>>>(
&self,
__visitor: &mut __V
) -> ControlFlow<__V::BreakTy>
fn visit_with<__V: TypeVisitor<TyCtxt<'tcx>>>( &self, __visitor: &mut __V ) -> ControlFlow<__V::BreakTy>
impl<'tcx> Copy for ValuePairs<'tcx>
impl<'tcx> Eq for ValuePairs<'tcx>
impl<'tcx> StructuralEq for ValuePairs<'tcx>
impl<'tcx> StructuralPartialEq for ValuePairs<'tcx>
Auto Trait Implementations§
impl<'tcx> !RefUnwindSafe for ValuePairs<'tcx>
impl<'tcx> Send for ValuePairs<'tcx>
impl<'tcx> Sync for ValuePairs<'tcx>
impl<'tcx> Unpin for ValuePairs<'tcx>
impl<'tcx> !UnwindSafe for ValuePairs<'tcx>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 64 bytes
Size for each variant:
Regions
: 24 bytesTerms
: 24 bytesAliases
: 40 bytesTraitRefs
: 40 bytesPolyTraitRefs
: 56 bytesPolySigs
: 56 bytesExistentialTraitRef
: 56 bytesExistentialProjection
: 64 bytes