Lines Matching full:variants
33 let tags = data.variants.iter().map(|v| { in generate_tag_consts()
91 let variant_structs = data.variants.iter().filter_map(|variant| { in generate_variant_structs()
92 // We don't generate variant structs for unit variants because we only in generate_variant_structs()
137 let fields = data.variants.iter().filter_map(|variant| { in generate_variants_union()
138 // We don't generate variant structs for unit variants because we only in generate_variants_union()
157 // Enums can have variants with no fields, but unions must in generate_variants_union()
179 /// 1. Generate a tag enum. This is an enum with the same repr, variants, and
181 /// on the variants. This gives us access to an enum where the variants have
183 /// 2. Make constants from the variants of the tag enum. We need these because
188 /// 4. Generate a variants union, with one field for each variant struct type.
190 /// the variants union.
229 let has_fields = data.variants().into_iter().flat_map(|(variant, fields)| { in derive_is_bit_valid()
263 … Projection<_, { #zerocopy_crate::STRUCT_VARIANT_ID }, { #zerocopy_crate::ident_id!(variants) }>>() in derive_is_bit_valid()
304 let match_arms = data.variants.iter().map(|variant| { in derive_is_bit_valid()
310 // Unit variants don't need any further validation beyond checking in derive_is_bit_valid()
321 let variant_md = variants.cast::< in derive_is_bit_valid()
349 variants: ___ZerocopyVariants #ty_generics, in derive_is_bit_valid()
433 let variants = #zerocopy_crate::into_inner!(raw_enum.project::< in derive_is_bit_valid() localVariable
436 { #zerocopy_crate::ident_id!(variants) } in derive_is_bit_valid()
675 // variants. in derive_try_from_bytes_enum()
677 .map(|size| enm.fields().is_empty() && enm.variants.len() == 1usize << size) in derive_try_from_bytes_enum()