Struct ExprForLoop

pub struct ExprForLoop { pub attrs: Vec<Attribute>, pub label: Option<Label>, pub for_token: For, pub pat: Box<Pat>, pub in_token: In, pub expr: Box<Expr>, pub body: Block }

A for loop: for pat in expr { ... }.

Fields

attrs: Vec<Attribute>
label: Option<Label>
for_token: For
pat: Box<Pat>
in_token: In
expr: Box<Expr>
body: Block

Trait Implementations

impl Clone for ExprForLoop

fn clone(&self) -> Self

impl Parse for ExprForLoop

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

impl ToTokens for ExprForLoop

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

Auto Trait Implementations

impl !Send for ExprForLoop

impl !Sync for ExprForLoop

impl Freeze for ExprForLoop

impl RefUnwindSafe for ExprForLoop

impl Unpin for ExprForLoop

impl UnsafeUnpin for ExprForLoop

impl UnwindSafe for ExprForLoop

Blanket Implementations

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

fn type_id(&self) -> TypeId

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

fn borrow(&self) -> &T

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

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

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

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

impl<T> From<T> for ExprForLoop

fn from(t: T) -> T

Returns the argument unchanged.

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

fn span(&self) -> Span

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

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

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

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

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

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