ONC+ 開発ガイド

宣言

識別型の共用体は次のように宣言します。

union switch (discriminant-declaration) {
  	case discriminant-value-A:
  		arm-declaration-A;
  	case discriminant-value-B:
  		arm-declaration-B;
  	...
  	default:
  		default-declaration;
 } identifier; 

キーワード case の後には、要素識別子として指定できる値を書きます。デフォルトアームは省略できますが、その場合は要素識別子として定義されていない値を持つものを正しく符号化できません。各アームのサイズは、それぞれ 4 の倍数になります。

識別型の共用体は、要素識別子に続けて、それに対応するアームが符号化されます。