Struct PredicateType

struct PredicateType { ... }

A type predicate in a where clause: for<'c> Foo<'c>: Trait<'c>.

Fields

lifetimes: Option<BoundLifetimes>

Any lifetimes from a for binding

bounded_ty: Type

The type being bounded

colon_token: Colon
bounds: Punctuated<TypeParamBound, Plus>

Trait and lifetime bounds (Clone+Send+'static)

Implementations

impl Clone for PredicateType

fn clone(self: &Self) -> Self

impl Debug for PredicateType

fn fmt(self: &Self, formatter: &mut Formatter<'_>) -> Result

impl Eq for PredicateType

impl Freeze for PredicateType

impl Hash for PredicateType

fn hash<H>(self: &Self, state: &mut H)
where
    H: Hasher

impl PartialEq for PredicateType

fn eq(self: &Self, other: &Self) -> bool

impl RefUnwindSafe for PredicateType

impl Send for PredicateType

impl Sync for PredicateType

impl ToTokens for PredicateType

fn to_tokens(self: &Self, tokens: &mut TokenStream)

impl Unpin for PredicateType

impl UnsafeUnpin for PredicateType

impl UnwindSafe for PredicateType

impl<T> Any for PredicateType

fn type_id(self: &Self) -> TypeId

impl<T> Borrow for PredicateType

fn borrow(self: &Self) -> &T

impl<T> BorrowMut for PredicateType

fn borrow_mut(self: &mut Self) -> &mut T

impl<T> CloneToUninit for PredicateType

unsafe fn clone_to_uninit(self: &Self, dest: *mut u8)

impl<T> From for PredicateType

fn from(t: T) -> T

Returns the argument unchanged.

impl<T> Spanned for PredicateType

fn span(self: &Self) -> Span

impl<T> ToOwned for PredicateType

fn to_owned(self: &Self) -> T
fn clone_into(self: &Self, target: &mut T)

impl<T, U> Into for PredicateType

fn into(self: Self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

impl<T, U> TryFrom for PredicateType

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

impl<T, U> TryInto for PredicateType

fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error>