many dynamic fields in struct tested
swap function generation tested
enum swapping via explicit swap specialization, not inlined cast
swap case with fixed tail tested
enum generation tested
optional fields generation
union swap generation added