Struct ExprStruct

pub struct ExprStruct { pub attrs: Vec<Attribute>, pub qself: Option<QSelf>, pub path: Path, pub brace_token: Brace, pub fields: Punctuated<FieldValue, Comma>, pub dot2_token: Option<DotDot>, pub rest: Option<Box<Expr>> }

A struct literal expression: Point { x: 1, y: 1 }.

The rest provides the value of the remaining fields as in S { a: 1, b: 1, ..rest }.

Fields

attrs: Vec<Attribute>
qself: Option<QSelf>
path: Path
brace_token: Brace
fields: Punctuated<FieldValue, Comma>
dot2_token: Option<DotDot>
rest: Option<Box<Expr>>

Trait Implementations

impl Clone for ExprStruct

fn clone(&self) -> Self

impl Parse for ExprStruct

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

impl ToTokens for ExprStruct

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

Auto Trait Implementations

impl !Send for ExprStruct

impl !Sync for ExprStruct

impl Freeze for ExprStruct

impl RefUnwindSafe for ExprStruct

impl Unpin for ExprStruct

impl UnsafeUnpin for ExprStruct

impl UnwindSafe for ExprStruct

Blanket Implementations

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

fn type_id(&self) -> TypeId

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

fn borrow(&self) -> &T

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

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

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

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

impl<T> From<T> for ExprStruct

fn from(t: T) -> T

Returns the argument unchanged.

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

fn span(&self) -> Span

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

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

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

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

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

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