/Engine/Source/Runtime/Core/Public/Containers/Union.h
Represents a type which is the union of several other types; i.e. it can have a value whose type is of any the union's subtypes. This differs from C union types by being type-safe, and supporting non-trivial data types as subtypes. Since a value for the union must be of a single subtype, the union stores potential values of different subtypes in overlapped memory, and keeps track of which one is currently valid.
template<typename TypeA, typename TypeB, typename TypeC, typename TypeD, typename TypeE, typename TypeF> class TUnion
TTypeCompatible...
A
TTypeCompatible...
B
TTypeCompatible...
C
TTypeCompatible...
D
TTypeCompatible...
E
TTypeCompatible...
F