pub type CoercePredicate<'tcx> = CoercePredicate<TyCtxt<'tcx>>;
Aliased Type§
struct CoercePredicate<'tcx> {
pub a: Ty<'tcx>,
pub b: Ty<'tcx>,
}
Fields§
§a: Ty<'tcx>
§b: Ty<'tcx>
Trait Implementations§
Source§impl<'tcx, P: PrettyPrinter<'tcx>> Print<'tcx, P> for CoercePredicate<'tcx>
impl<'tcx, P: PrettyPrinter<'tcx>> Print<'tcx, P> for CoercePredicate<'tcx>
Source§impl<I> Clone for CoercePredicate<I>where
I: Interner,
impl<I> Clone for CoercePredicate<I>where
I: Interner,
Source§fn clone(&self) -> CoercePredicate<I>
fn clone(&self) -> CoercePredicate<I>
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<I> Debug for CoercePredicate<I>where
I: Interner,
impl<I> Debug for CoercePredicate<I>where
I: Interner,
Source§impl<I, __D> Decodable<__D> for CoercePredicate<I>
impl<I, __D> Decodable<__D> for CoercePredicate<I>
fn decode(__decoder: &mut __D) -> CoercePredicate<I>
Source§impl<I> Display for CoercePredicate<I>where
I: Interner,
impl<I> Display for CoercePredicate<I>where
I: Interner,
Source§impl<I, __E> Encodable<__E> for CoercePredicate<I>
impl<I, __E> Encodable<__E> for CoercePredicate<I>
Source§impl<I> Hash for CoercePredicate<I>where
I: Interner,
impl<I> Hash for CoercePredicate<I>where
I: Interner,
Source§impl<I, __CTX> HashStable<__CTX> for CoercePredicate<I>
impl<I, __CTX> HashStable<__CTX> for CoercePredicate<I>
fn hash_stable( &self, __hcx: &mut __CTX, __hasher: &mut StableHasher<SipHasher128>, )
Source§impl<I, J> Lift<J> for CoercePredicate<I>
impl<I, J> Lift<J> for CoercePredicate<I>
type Lifted = CoercePredicate<J>
fn lift_to_interner(self, interner: J) -> Option<CoercePredicate<J>>
Source§impl<I> PartialEq for CoercePredicate<I>where
I: Interner,
impl<I> PartialEq for CoercePredicate<I>where
I: Interner,
Source§impl<I> TypeFoldable<I> for CoercePredicate<I>
impl<I> TypeFoldable<I> for CoercePredicate<I>
Source§fn try_fold_with<__F>(
self,
__folder: &mut __F,
) -> Result<CoercePredicate<I>, <__F as FallibleTypeFolder<I>>::Error>where
__F: FallibleTypeFolder<I>,
fn try_fold_with<__F>(
self,
__folder: &mut __F,
) -> Result<CoercePredicate<I>, <__F as FallibleTypeFolder<I>>::Error>where
__F: FallibleTypeFolder<I>,
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<I> TypeVisitable<I> for CoercePredicate<I>
impl<I> TypeVisitable<I> for CoercePredicate<I>
Source§fn visit_with<__V>(
&self,
__visitor: &mut __V,
) -> <__V as TypeVisitor<I>>::Resultwhere
__V: TypeVisitor<I>,
fn visit_with<__V>(
&self,
__visitor: &mut __V,
) -> <__V as TypeVisitor<I>>::Resultwhere
__V: TypeVisitor<I>,
impl<I> Copy for CoercePredicate<I>where
I: Interner,
impl<I> Eq for CoercePredicate<I>where
I: Interner,
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: 16 bytes