pub struct Enum {
pub attributes: Vec<Attribute>,
pub _vis: Option<Vis>,
pub _kw_enum: KEnum,
pub name: Ident,
pub generics: Option<GenericParams>,
pub clauses: Option<WhereClauses>,
pub body: BraceGroupContaining<CommaDelimitedVec<EnumVariantLike>>,
}Expand description
Represents an enum definition.
e.g., #[repr(u8)] pub enum MyEnum<T> where T: Clone { Variant1, Variant2(T) }.
Fields§
§attributes: Vec<Attribute>Attributes applied to the enum (e.g., #[repr(...)]).
_vis: Option<Vis>Optional visibility modifier (e.g., pub, pub(crate), etc.).
_kw_enum: KEnumThe enum keyword.
name: IdentThe name of the enum.
generics: Option<GenericParams>Optional generic parameters.
clauses: Option<WhereClauses>Optional where clauses.
body: BraceGroupContaining<CommaDelimitedVec<EnumVariantLike>>The enum variants enclosed in braces {}.
Trait Implementations§
Source§impl ToTokens for Enum
impl ToTokens for Enum
Source§fn to_tokens(&self, tokens: &mut TokenStream)
fn to_tokens(&self, tokens: &mut TokenStream)
Source§fn into_token_iter(self) -> TokenIter ⓘwhere
Self: Sized,
fn into_token_iter(self) -> TokenIter ⓘ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 Enum
impl RefUnwindSafe for Enum
impl !Send for Enum
impl !Sync for Enum
impl Unpin for Enum
impl UnwindSafe for Enum
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> DynamicTokens for T
impl<T> DynamicTokens for T
Source§impl<T> Parse for Twhere
T: Parser,
impl<T> Parse for Twhere
T: Parser,
Source§fn parse(tokens: &mut TokenIter) -> Result<Self, Error>
fn parse(tokens: &mut TokenIter) -> 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 more