Assigning to a SumType is @system if any of the SumType's
other members contain pointers or references, since those
members may be reachable through external references, and
overwriting them could therefore lead to memory corruption.
An individual assignment can be @trusted if the caller can
guarantee that, when the assignment occurs, there are no
outstanding references to any such members.
Assigns a value to a SumType.
Assigning to a SumType is @system if any of the SumType's other members contain pointers or references, since those members may be reachable through external references, and overwriting them could therefore lead to memory corruption.
An individual assignment can be @trusted if the caller can guarantee that, when the assignment occurs, there are no outstanding references to any such members.