xref: /aosp_15_r20/external/flatbuffers/tests/my-game/example/any.ts (revision 890232f25432b36107d06881e0a25aaa6b473652)
1*890232f2SAndroid Build Coastguard Worker// automatically generated by the FlatBuffers compiler, do not modify
2*890232f2SAndroid Build Coastguard Worker
3*890232f2SAndroid Build Coastguard Workerimport { Monster as MyGame_Example2_Monster, MonsterT as MyGame_Example2_MonsterT } from '../../my-game/example2/monster';
4*890232f2SAndroid Build Coastguard Workerimport { Monster, MonsterT } from '../../my-game/example/monster';
5*890232f2SAndroid Build Coastguard Workerimport { TestSimpleTableWithEnum, TestSimpleTableWithEnumT } from '../../my-game/example/test-simple-table-with-enum';
6*890232f2SAndroid Build Coastguard Worker
7*890232f2SAndroid Build Coastguard Worker
8*890232f2SAndroid Build Coastguard Workerexport enum Any {
9*890232f2SAndroid Build Coastguard Worker  NONE = 0,
10*890232f2SAndroid Build Coastguard Worker  Monster = 1,
11*890232f2SAndroid Build Coastguard Worker  TestSimpleTableWithEnum = 2,
12*890232f2SAndroid Build Coastguard Worker  MyGame_Example2_Monster = 3
13*890232f2SAndroid Build Coastguard Worker}
14*890232f2SAndroid Build Coastguard Worker
15*890232f2SAndroid Build Coastguard Workerexport function unionToAny(
16*890232f2SAndroid Build Coastguard Worker  type: Any,
17*890232f2SAndroid Build Coastguard Worker  accessor: (obj:Monster|MyGame_Example2_Monster|TestSimpleTableWithEnum) => Monster|MyGame_Example2_Monster|TestSimpleTableWithEnum|null
18*890232f2SAndroid Build Coastguard Worker): Monster|MyGame_Example2_Monster|TestSimpleTableWithEnum|null {
19*890232f2SAndroid Build Coastguard Worker  switch(Any[type]) {
20*890232f2SAndroid Build Coastguard Worker    case 'NONE': return null;
21*890232f2SAndroid Build Coastguard Worker    case 'Monster': return accessor(new Monster())! as Monster;
22*890232f2SAndroid Build Coastguard Worker    case 'TestSimpleTableWithEnum': return accessor(new TestSimpleTableWithEnum())! as TestSimpleTableWithEnum;
23*890232f2SAndroid Build Coastguard Worker    case 'MyGame_Example2_Monster': return accessor(new MyGame_Example2_Monster())! as MyGame_Example2_Monster;
24*890232f2SAndroid Build Coastguard Worker    default: return null;
25*890232f2SAndroid Build Coastguard Worker  }
26*890232f2SAndroid Build Coastguard Worker}
27*890232f2SAndroid Build Coastguard Worker
28*890232f2SAndroid Build Coastguard Workerexport function unionListToAny(
29*890232f2SAndroid Build Coastguard Worker  type: Any,
30*890232f2SAndroid Build Coastguard Worker  accessor: (index: number, obj:Monster|MyGame_Example2_Monster|TestSimpleTableWithEnum) => Monster|MyGame_Example2_Monster|TestSimpleTableWithEnum|null,
31*890232f2SAndroid Build Coastguard Worker  index: number
32*890232f2SAndroid Build Coastguard Worker): Monster|MyGame_Example2_Monster|TestSimpleTableWithEnum|null {
33*890232f2SAndroid Build Coastguard Worker  switch(Any[type]) {
34*890232f2SAndroid Build Coastguard Worker    case 'NONE': return null;
35*890232f2SAndroid Build Coastguard Worker    case 'Monster': return accessor(index, new Monster())! as Monster;
36*890232f2SAndroid Build Coastguard Worker    case 'TestSimpleTableWithEnum': return accessor(index, new TestSimpleTableWithEnum())! as TestSimpleTableWithEnum;
37*890232f2SAndroid Build Coastguard Worker    case 'MyGame_Example2_Monster': return accessor(index, new MyGame_Example2_Monster())! as MyGame_Example2_Monster;
38*890232f2SAndroid Build Coastguard Worker    default: return null;
39*890232f2SAndroid Build Coastguard Worker  }
40*890232f2SAndroid Build Coastguard Worker}
41