Struct rustc_ast::ast::Variant [−][src]
pub struct Variant {
pub attrs: AttrVec,
pub id: NodeId,
pub span: Span,
pub vis: Visibility,
pub ident: Ident,
pub data: VariantData,
pub disr_expr: Option<AnonConst>,
pub is_placeholder: bool,
}Expand description
Enum variant.
Fields
attrs: AttrVecAttributes of the variant.
id: NodeIdId of the variant (not the constructor, see VariantData::ctor_id()).
span: SpanSpan
vis: VisibilityThe visibility of the variant. Syntactically accepted but not semantically.
ident: IdentName of the variant.
data: VariantDataFields and constructor id of the variant.
disr_expr: Option<AnonConst>Explicit discriminant, e.g., Foo = 1.
is_placeholder: boolIs a macro placeholder
Trait Implementations
This is true if this AstLike might support ‘custom’ (proc-macro) inner
attributes. Attributes like #![cfg] and #![cfg_attr] are not
considered ‘custom’ attributes Read more
Auto Trait Implementations
impl !RefUnwindSafe for Variant
impl !UnwindSafe for Variant
Blanket Implementations
Mutably borrows from an owned value. Read more
Layout
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference’s “Type Layout” chapter for details on type layout guarantees.
Size: 120 bytes