Function rustc_codegen_llvm::debuginfo::metadata::enums::build_generator_variant_struct_type_di_node
source · pub fn build_generator_variant_struct_type_di_node<'ll, 'tcx>(
cx: &CodegenCx<'ll, 'tcx>,
variant_index: VariantIdx,
generator_type_and_layout: TyAndLayout<'tcx>,
generator_type_di_node: &'ll DIType,
generator_layout: &GeneratorLayout<'tcx>,
state_specific_upvar_names: &IndexSlice<GeneratorSavedLocal, Option<Symbol>>,
common_upvar_names: &[String]
) -> &'ll DITypeExpand description
Build the struct type for describing a single generator state. See build_generator_variant_struct_type_di_node.
DW_TAG_structure_type (top-level type for enum)
DW_TAG_variant_part (variant part)
DW_AT_discr (reference to discriminant DW_TAG_member)
DW_TAG_member (discriminant member)
DW_TAG_variant (variant 1)
DW_TAG_variant (variant 2)
DW_TAG_variant (variant 3)
---> DW_TAG_structure_type (type of variant 1)
---> DW_TAG_structure_type (type of variant 2)
---> DW_TAG_structure_type (type of variant 3)