Struct ExprMatch

pub struct ExprMatch { pub attrs: Vec<Attribute>, pub match_token: Match, pub expr: Box<Expr>, pub brace_token: Brace, pub arms: Vec<Arm> }

A match expression: match n { Some(n) => {}, None => {} }.

Fields

attrs: Vec<Attribute>
match_token: Match
expr: Box<Expr>
brace_token: Brace
arms: Vec<Arm>

Trait Implementations

impl Clone for ExprMatch

fn clone(&self) -> Self

impl Parse for ExprMatch

fn parse(input: ParseStream<'_>) -> Result<Self>

impl ToTokens for ExprMatch

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

Auto Trait Implementations

impl !Send for ExprMatch

impl !Sync for ExprMatch

impl Freeze for ExprMatch

impl RefUnwindSafe for ExprMatch

impl Unpin for ExprMatch

impl UnsafeUnpin for ExprMatch

impl UnwindSafe for ExprMatch

Blanket Implementations

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

fn type_id(&self) -> TypeId

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

fn borrow(&self) -> &T

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

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

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

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

impl<T> From<T> for ExprMatch

fn from(t: T) -> T

Returns the argument unchanged.

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

fn span(&self) -> Span

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

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

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

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

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

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