By annotating tombstones or validation functions, a zero-overhead optional is possible. This is worth exploring.
Additionally if an optional is only ever used in constant-evaluated context, we can check if the optional is engaged by checking if the value-holding member of the underlying union is the active member.
By annotating tombstones or validation functions, a zero-overhead
optionalis possible. This is worth exploring.Additionally if an optional is only ever used in constant-evaluated context, we can check if the optional is engaged by checking if the value-holding member of the underlying union is the active member.