Struct syn::PredicateType
source · pub struct PredicateType {
pub lifetimes: Option<BoundLifetimes>,
pub bounded_ty: Type,
pub colon_token: Colon,
pub bounds: Punctuated<TypeParamBound, Add>,
}
Expand description
A type predicate in a where
clause: for<'c> Foo<'c>: Trait<'c>
.
This type is available only if Syn is built with the "derive"
or
"full"
feature.
Fields§
§lifetimes: Option<BoundLifetimes>
Any lifetimes from a for
binding
bounded_ty: Type
The type being bounded
colon_token: Colon
§bounds: Punctuated<TypeParamBound, Add>
Trait and lifetime bounds (Clone+Send+'static
)
Trait Implementations§
source§impl Clone for PredicateType
impl Clone for PredicateType
source§impl From<PredicateType> for WherePredicate
impl From<PredicateType> for WherePredicate
source§fn from(e: PredicateType) -> WherePredicate
fn from(e: PredicateType) -> WherePredicate
Converts to this type from the input type.
source§impl ToTokens for PredicateType
impl ToTokens for PredicateType
source§fn to_tokens(&self, tokens: &mut TokenStream)
fn to_tokens(&self, tokens: &mut TokenStream)
source§fn to_token_stream(&self) -> TokenStream
fn to_token_stream(&self) -> TokenStream
source§fn into_token_stream(self) -> TokenStreamwhere
Self: Sized,
fn into_token_stream(self) -> TokenStreamwhere Self: Sized,
Auto Trait Implementations§
impl RefUnwindSafe for PredicateType
impl !Send for PredicateType
impl !Sync for PredicateType
impl Unpin for PredicateType
impl UnwindSafe for PredicateType
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> Spanned for Twhere
T: Spanned + ?Sized,
impl<T> Spanned for Twhere T: Spanned + ?Sized,
source§fn span(&self) -> Span
fn span(&self) -> Span
Returns a
Span
covering the complete contents of this syntax tree
node, or Span::call_site()
if this node is empty.