pub struct Struct {
pub attributes: Vec<Attribute>,
pub _vis: Option<Vis>,
pub _kw_struct: KStruct,
pub name: Ident,
pub generics: Option<GenericParams>,
pub kind: StructKind,
}Expand description
Represents a struct definition.
Fields§
§attributes: Vec<Attribute>Attributes applied to the struct.
_vis: Option<Vis>The visibility modifier of the struct (e.g., pub).
_kw_struct: KStructThe “struct” keyword.
name: IdentThe name of the struct.
generics: Option<GenericParams>Generic parameters for the struct, if any.
kind: StructKindThe variant of struct (unit, tuple, or regular struct with named fields).
Implementations§
Source§impl Struct
impl Struct
Sourcepub fn facet_attributes(&self) -> impl Iterator<Item = &FacetInner>
pub fn facet_attributes(&self) -> impl Iterator<Item = &FacetInner>
Returns an iterator over the FacetInner content of #[facet(...)] attributes
applied to this struct.
Sourcepub fn is_transparent(&self) -> bool
pub fn is_transparent(&self) -> bool
Returns true if the struct is marked #[facet(transparent)].
Trait Implementations§
Source§impl ToTokens for Struct
impl ToTokens for Struct
Source§fn to_tokens(&self, tokens: &mut TokenStream)
fn to_tokens(&self, tokens: &mut TokenStream)
Write
&self to the given TokenStream.Source§fn to_token_iter(
&self,
) -> ShadowCountedIter<'_, <TokenStream as IntoIterator>::IntoIter> ⓘ
fn to_token_iter( &self, ) -> ShadowCountedIter<'_, <TokenStream as IntoIterator>::IntoIter> ⓘ
Convert
&self into a TokenIter object.Source§fn into_token_iter<'a>(
self,
) -> ShadowCountedIter<'a, <TokenStream as IntoIterator>::IntoIter> ⓘwhere
Self: Sized,
fn into_token_iter<'a>(
self,
) -> ShadowCountedIter<'a, <TokenStream as IntoIterator>::IntoIter> ⓘwhere
Self: Sized,
Convert
self into a TokenIter object.Source§fn to_token_stream(&self) -> TokenStream
fn to_token_stream(&self) -> TokenStream
Convert
&self into a TokenStream object.Source§fn into_token_stream(self) -> TokenStreamwhere
Self: Sized,
fn into_token_stream(self) -> TokenStreamwhere
Self: Sized,
Convert
self into a TokenStream object.Auto Trait Implementations§
impl Freeze for Struct
impl RefUnwindSafe for Struct
impl !Send for Struct
impl !Sync for Struct
impl Unpin for Struct
impl UnwindSafe for Struct
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> Parse for Twhere
T: Parser,
impl<T> Parse for Twhere
T: Parser,
Source§fn parse(
tokens: &mut ShadowCountedIter<'_, <TokenStream as IntoIterator>::IntoIter>,
) -> Result<Self, Error>
fn parse( tokens: &mut ShadowCountedIter<'_, <TokenStream as IntoIterator>::IntoIter>, ) -> Result<Self, Error>
This is the user facing API to parse grammatical entities. Calls a
parser() within a
transaction. Commits changes on success and returns the parsed value. Read moreSource§fn parse_all(
tokens: &mut ShadowCountedIter<'_, <TokenStream as IntoIterator>::IntoIter>,
) -> Result<Self, Error>
fn parse_all( tokens: &mut ShadowCountedIter<'_, <TokenStream as IntoIterator>::IntoIter>, ) -> Result<Self, Error>
Exhaustive parsing within a transaction. This is a convenience method that implies a
EndOfStream at the end. Thus it will error if parsing is not exhaustive. Read moreSource§fn parse_with<T>(
tokens: &mut ShadowCountedIter<'_, <TokenStream as IntoIterator>::IntoIter>,
f: impl FnOnce(Self, &mut ShadowCountedIter<'_, <TokenStream as IntoIterator>::IntoIter>) -> Result<T, Error>,
) -> Result<T, Error>
fn parse_with<T>( tokens: &mut ShadowCountedIter<'_, <TokenStream as IntoIterator>::IntoIter>, f: impl FnOnce(Self, &mut ShadowCountedIter<'_, <TokenStream as IntoIterator>::IntoIter>) -> Result<T, Error>, ) -> Result<T, Error>
Parse a value in a transaction, pass it to a
FnOnce(Self, &mut TokenIter) -> Result<T> closure which
creates a new result or returns an Error. Read more