| // Copyright 2019 The Go Authors. All rights reserved. | 
 | // Use of this source code is governed by a BSD-style | 
 | // license that can be found in the LICENSE file. | 
 |  | 
 | // Types useful for tests for the 2019 migration from | 
 | // unions to xunions. | 
 |  | 
 | library fidl.test.unionmigration; | 
 |  | 
 | flexible union BasicXUnion { | 
 |     1: int32 i32; | 
 | }; | 
 |  | 
 | flexible resource union BasicResourceXUnion { | 
 |     1: int32 i32; | 
 | }; | 
 |  | 
 | union BasicUnion { | 
 |     1: int32 i32; | 
 | }; | 
 |  | 
 | struct BasicXUnionStruct { | 
 |     BasicXUnion val; | 
 | }; | 
 |  | 
 | resource struct BasicResourceXUnionStruct { | 
 |     BasicResourceXUnion val; | 
 | }; | 
 |  | 
 | struct BasicUnionStruct { | 
 |     BasicUnion val; | 
 | }; | 
 |  | 
 | union SingleVariantUnion { | 
 |     1: uint32 x; | 
 | }; | 
 |  | 
 | struct SingleVariantUnionStruct { | 
 |     SingleVariantUnion u; | 
 | }; | 
 |  | 
 | struct SingleVariantUnionStructWithHeader { | 
 |     // Header exists to emulate the shape of the transaction header. | 
 |     array<uint8>:16 header; | 
 |     SingleVariantUnionStruct body; | 
 | }; |