Emit a struct with the given derive attributes plus a generated Default impl. Ensure that the
record has an additional private field added to replicate #[non_exhaustive], unless it is
annotated with #[exhaustive].
Expands the Default implementation of the record defined at [custom_struct], with either one
of an additional private field initialized to the unit value, or the recordβs fields verbatim.
Create an uninhabited type that canβt be constructed. It implements Debug, Clone, and
Copy, but these arenβt meaningful for extern types so they should eventually be removed.
Like s, but (1) generates a Default impl for every struct in the block, and (2) adds a
private field to the struct to replicate the effects of the non_exhaustive attribute while
rust-lang/rust#132699 gets sorted out.
Like [s_no_extra_traits], but (1) generates a Default impl for every struct in the block,
and (2) adds a private field to replicate the effects of the built-in non_exhaustive attribute
while rust-lang/rust#132699 gets sorted out.