Struct PredicateType

pub struct PredicateType { pub attrs: Vec<Attribute>, pub lifetimes: Option<BoundLifetimes>, pub bounded_ty: Type, pub colon_token: Colon, pub bounds: Punctuated<TypeParamBound, Plus> }

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

Fields

attrs: Vec<Attribute>
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)

Trait Implementations

impl Clone for PredicateType

fn clone(&self) -> Self

impl ToTokens for PredicateType

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

Auto Trait Implementations

impl !Send for PredicateType

impl !Sync for PredicateType

impl Freeze for PredicateType

impl RefUnwindSafe for PredicateType

impl Unpin for PredicateType

impl UnsafeUnpin for PredicateType

impl UnwindSafe for PredicateType

Blanket Implementations

impl<T> Any for PredicateType where T: 'static + ?Sized,

fn type_id(&self) -> TypeId

impl<T> Borrow<T> for PredicateType where T: ?Sized,

fn borrow(&self) -> &T

impl<T> BorrowMut<T> for PredicateType where T: ?Sized,

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

impl<T> CloneToUninit for PredicateType where T: Clone,

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

impl<T> From<T> for PredicateType

fn from(t: T) -> T

Returns the argument unchanged.

impl<T> Spanned for PredicateType where T: Spanned + ?Sized,

fn span(&self) -> Span

impl<T> ToOwned for PredicateType where T: Clone,

type Owned = T;
fn to_owned(&self) -> T
fn clone_into(&self, target: &mut T)

impl<T, U> Into<U> for PredicateType where U: From<T>,

fn into(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<U> for PredicateType where U: Into<T>,

type Error = never;
fn try_from(value: U) -> Result<T, never>

impl<T, U> TryInto<U> for PredicateType where U: TryFrom<T>,

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