Struct rustc::ty::VariantDef
[−]
[src]
pub struct VariantDef { pub did: DefId, pub name: Name, pub discr: VariantDiscr, pub fields: Vec<FieldDef>, pub ctor_kind: CtorKind, }
🔬 This is a nightly-only experimental API. (
rustc_private
)Fields
did: DefId
🔬 This is a nightly-only experimental API. (
rustc_private
)The variant's DefId. If this is a tuple-like struct, this is the DefId of the struct's ctor.
name: Name
🔬 This is a nightly-only experimental API. (
rustc_private
)discr: VariantDiscr
🔬 This is a nightly-only experimental API. (
rustc_private
)fields: Vec<FieldDef>
🔬 This is a nightly-only experimental API. (
rustc_private
)ctor_kind: CtorKind
🔬 This is a nightly-only experimental API. (
rustc_private
)Methods
impl<'a, 'gcx, 'tcx> VariantDef
[src]
fn uninhabited_from(&self,
visited: &mut FxHashMap<DefId, FxHashSet<&'tcx Substs<'tcx>>>,
tcx: TyCtxt<'a, 'gcx, 'tcx>,
substs: &'tcx Substs<'tcx>,
adt_kind: AdtKind)
-> DefIdForest
visited: &mut FxHashMap<DefId, FxHashSet<&'tcx Substs<'tcx>>>,
tcx: TyCtxt<'a, 'gcx, 'tcx>,
substs: &'tcx Substs<'tcx>,
adt_kind: AdtKind)
-> DefIdForest
🔬 This is a nightly-only experimental API. (
rustc_private
)Calculate the forest of DefIds from which this variant is visibly uninhabited.
impl<'a, 'gcx, 'tcx> VariantDef
[src]
fn find_field_named(&self, name: Name) -> Option<&FieldDef>
🔬 This is a nightly-only experimental API. (
rustc_private
)fn index_of_field_named(&self, name: Name) -> Option<usize>
🔬 This is a nightly-only experimental API. (
rustc_private
)fn field_named(&self, name: Name) -> &FieldDef
🔬 This is a nightly-only experimental API. (
rustc_private
)