pub enum ExistentialPredicate {
Trait(ExistentialTraitRef),
Projection(ExistentialProjection),
AutoTrait(DefId),
}Expand description
A predicate without Self, for use in dyn Trait.
Reflects [ty::ExistentialPredicate]
Variants§
Trait(ExistentialTraitRef)
E.g. From<u64>. Note that this isn’t T: From<u64> with a given T, this is just
From<u64>. Could be written ?: From<u64>.
Projection(ExistentialProjection)
E.g. Iterator::Item = u64. Could be written <? as Iterator>::Item = u64.
AutoTrait(DefId)
E.g. Send.
Trait Implementations§
Source§impl Clone for ExistentialPredicate
impl Clone for ExistentialPredicate
Source§fn clone(&self) -> ExistentialPredicate
fn clone(&self) -> ExistentialPredicate
Returns a duplicate 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 Debug for ExistentialPredicate
impl Debug for ExistentialPredicate
Source§impl Hash for ExistentialPredicate
impl Hash for ExistentialPredicate
Source§impl PartialEq for ExistentialPredicate
impl PartialEq for ExistentialPredicate
Source§impl<'tcx, S: UnderOwnerState<'tcx>> SInto<S, ExistentialPredicate> for ExistentialPredicate<'tcx>
impl<'tcx, S: UnderOwnerState<'tcx>> SInto<S, ExistentialPredicate> for ExistentialPredicate<'tcx>
fn sinto(&self, state: &S) -> ExistentialPredicate
impl Eq for ExistentialPredicate
impl StructuralPartialEq for ExistentialPredicate
Auto Trait Implementations§
impl Freeze for ExistentialPredicate
impl RefUnwindSafe for ExistentialPredicate
impl Send for ExistentialPredicate
impl Sync for ExistentialPredicate
impl Unpin for ExistentialPredicate
impl UnwindSafe for ExistentialPredicate
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<I, T> ExtractContext<I, ()> for T
impl<I, T> ExtractContext<I, ()> for T
§fn extract_context(self, _original_input: I)
fn extract_context(self, _original_input: I)
Given the context attached to a nom error, and given the original
input to the nom parser, extract more the useful context information. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<I> RecreateContext<I> for I
impl<I> RecreateContext<I> for I
§fn recreate_context(_original_input: I, tail: I) -> I
fn recreate_context(_original_input: I, tail: I) -> I
Given the original input, as well as the context reported by nom,
recreate a context in the original string where the error occurred. Read more