Enum syntax_ext::deriving::generic::SubstructureFields
[−]
[src]
pub enum SubstructureFields<'a> {
Struct(&'a VariantData, Vec<FieldInfo<'a>>),
EnumMatching(usize, usize, &'a Variant, Vec<FieldInfo<'a>>),
EnumNonMatchingCollapsed(Vec<Ident>, &'a [Variant], &'a [Ident]),
StaticStruct(&'a VariantData, StaticFields),
StaticEnum(&'a EnumDef, Vec<(Ident, Span, StaticFields)>),
}🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
A summary of the possible sets of fields.
Variants
Struct(&'a VariantData, Vec<FieldInfo<'a>>)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
EnumMatching(usize, usize, &'a Variant, Vec<FieldInfo<'a>>)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Matching variants of the enum: variant index, variant count, ast::Variant,
fields: the field name is only non-None in the case of a struct
variant.
EnumNonMatchingCollapsed(Vec<Ident>, &'a [Variant], &'a [Ident])🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Non-matching variants of the enum, but with all state hidden from
the consequent code. The first component holds Idents for all of
the Self arguments; the second component is a slice of all of the
variants for the enum itself, and the third component is a list of
Idents bound to the variant index values for each of the actual
input Self arguments.
StaticStruct(&'a VariantData, StaticFields)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
A static method where Self is a struct.
StaticEnum(&'a EnumDef, Vec<(Ident, Span, StaticFields)>)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
A static method where Self is an enum.
Trait Implementations
Auto Trait Implementations
impl<'a> !Send for SubstructureFields<'a>
impl<'a> !Send for SubstructureFields<'a>impl<'a> !Sync for SubstructureFields<'a>
impl<'a> !Sync for SubstructureFields<'a>