Example

As an example, consider the following IDL union:

module TMod
  {
    union TUnion switch (long)
    {
      case 5: long lVal;
      case 9, 7: short sVal;
      default: double dVal;
  };};

The following Visual Basic code sets each member:

dim myUnion as TUnion
set myUnion = new TUnion
myUnion.lVal = 43000
myUnion.sVal = 43
myUnion.dVal = 43.43

The following code checks the discriminator and accesses the value if the lVal member is set:

if (myUnion.discriminator = 5) then
  print "Current value is " & myUnion.lVal
endif