I'm not sure where you want to handle this. A union is user-defined data or a class type that at any given time contains only one object from its list. So, starting from this, if you have an alliance defined as follows:
union DataType { char ch; integer i; float f; double d; };
You can then use the DataType as a type for defining members in a class, or as a type for defining variables in a stack, like regular types, structures, or classes that you define.
source share