1# we reject a base that is not a struct
2{ 'enum': 'Enum', 'data': [ 'a', 'b' ] }
3{ 'struct': 'Int', 'data': { 'data': 'int' } }
4{ 'struct': 'Str', 'data': { 'data': 'str' } }
5{ 'union': 'Union',
6  'base': { 'type': 'Enum' },
7  'discriminator': 'type',
8  'data': { 'a': 'Int', 'b': 'Str' } }
9{ 'struct': 'MyType', 'base': 'Union', 'data': { 'c': 'int' } }
10