Struct PatIdent

pub struct PatIdent { pub attrs: Vec<Attribute>, pub by_ref: Option<Ref>, pub mutability: Option<Mut>, pub ident: Ident, pub subpat: Option<(At, Box<Pat>)> }

A pattern that binds a new variable: ref mut binding @ SUBPATTERN.

It may also be a unit struct or struct variant (e.g. None), or a constant; these cannot be distinguished syntactically.

Fields

attrs: Vec<Attribute>
by_ref: Option<Ref>
mutability: Option<Mut>
ident: Ident
subpat: Option<(At, Box<Pat>)>

Trait Implementations

impl Clone for PatIdent

fn clone(&self) -> Self

impl ToTokens for PatIdent

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

Auto Trait Implementations

impl !Send for PatIdent

impl !Sync for PatIdent

impl Freeze for PatIdent

impl RefUnwindSafe for PatIdent

impl Unpin for PatIdent

impl UnsafeUnpin for PatIdent

impl UnwindSafe for PatIdent

Blanket Implementations

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

fn type_id(&self) -> TypeId

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

fn borrow(&self) -> &T

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

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

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

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

impl<T> From<T> for PatIdent

fn from(t: T) -> T

Returns the argument unchanged.

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

fn span(&self) -> Span

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

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

impl<T, U> Into<U> for PatIdent 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 PatIdent where U: Into<T>,

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

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

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