xref: /aosp_15_r20/external/flatbuffers/tests/MyGame/Example/Any.go (revision 890232f25432b36107d06881e0a25aaa6b473652)
1*890232f2SAndroid Build Coastguard Worker// Code generated by the FlatBuffers compiler. DO NOT EDIT.
2*890232f2SAndroid Build Coastguard Worker
3*890232f2SAndroid Build Coastguard Workerpackage Example
4*890232f2SAndroid Build Coastguard Worker
5*890232f2SAndroid Build Coastguard Workerimport (
6*890232f2SAndroid Build Coastguard Worker	"strconv"
7*890232f2SAndroid Build Coastguard Worker
8*890232f2SAndroid Build Coastguard Worker	flatbuffers "github.com/google/flatbuffers/go"
9*890232f2SAndroid Build Coastguard Worker
10*890232f2SAndroid Build Coastguard Worker	MyGame__Example2 "MyGame/Example2"
11*890232f2SAndroid Build Coastguard Worker)
12*890232f2SAndroid Build Coastguard Worker
13*890232f2SAndroid Build Coastguard Workertype Any byte
14*890232f2SAndroid Build Coastguard Worker
15*890232f2SAndroid Build Coastguard Workerconst (
16*890232f2SAndroid Build Coastguard Worker	AnyNONE                    Any = 0
17*890232f2SAndroid Build Coastguard Worker	AnyMonster                 Any = 1
18*890232f2SAndroid Build Coastguard Worker	AnyTestSimpleTableWithEnum Any = 2
19*890232f2SAndroid Build Coastguard Worker	AnyMyGame_Example2_Monster Any = 3
20*890232f2SAndroid Build Coastguard Worker)
21*890232f2SAndroid Build Coastguard Worker
22*890232f2SAndroid Build Coastguard Workervar EnumNamesAny = map[Any]string{
23*890232f2SAndroid Build Coastguard Worker	AnyNONE:                    "NONE",
24*890232f2SAndroid Build Coastguard Worker	AnyMonster:                 "Monster",
25*890232f2SAndroid Build Coastguard Worker	AnyTestSimpleTableWithEnum: "TestSimpleTableWithEnum",
26*890232f2SAndroid Build Coastguard Worker	AnyMyGame_Example2_Monster: "MyGame_Example2_Monster",
27*890232f2SAndroid Build Coastguard Worker}
28*890232f2SAndroid Build Coastguard Worker
29*890232f2SAndroid Build Coastguard Workervar EnumValuesAny = map[string]Any{
30*890232f2SAndroid Build Coastguard Worker	"NONE":                    AnyNONE,
31*890232f2SAndroid Build Coastguard Worker	"Monster":                 AnyMonster,
32*890232f2SAndroid Build Coastguard Worker	"TestSimpleTableWithEnum": AnyTestSimpleTableWithEnum,
33*890232f2SAndroid Build Coastguard Worker	"MyGame_Example2_Monster": AnyMyGame_Example2_Monster,
34*890232f2SAndroid Build Coastguard Worker}
35*890232f2SAndroid Build Coastguard Worker
36*890232f2SAndroid Build Coastguard Workerfunc (v Any) String() string {
37*890232f2SAndroid Build Coastguard Worker	if s, ok := EnumNamesAny[v]; ok {
38*890232f2SAndroid Build Coastguard Worker		return s
39*890232f2SAndroid Build Coastguard Worker	}
40*890232f2SAndroid Build Coastguard Worker	return "Any(" + strconv.FormatInt(int64(v), 10) + ")"
41*890232f2SAndroid Build Coastguard Worker}
42*890232f2SAndroid Build Coastguard Worker
43*890232f2SAndroid Build Coastguard Workertype AnyT struct {
44*890232f2SAndroid Build Coastguard Worker	Type Any
45*890232f2SAndroid Build Coastguard Worker	Value interface{}
46*890232f2SAndroid Build Coastguard Worker}
47*890232f2SAndroid Build Coastguard Worker
48*890232f2SAndroid Build Coastguard Workerfunc (t *AnyT) Pack(builder *flatbuffers.Builder) flatbuffers.UOffsetT {
49*890232f2SAndroid Build Coastguard Worker	if t == nil {
50*890232f2SAndroid Build Coastguard Worker		return 0
51*890232f2SAndroid Build Coastguard Worker	}
52*890232f2SAndroid Build Coastguard Worker	switch t.Type {
53*890232f2SAndroid Build Coastguard Worker	case AnyMonster:
54*890232f2SAndroid Build Coastguard Worker		return t.Value.(*MonsterT).Pack(builder)
55*890232f2SAndroid Build Coastguard Worker	case AnyTestSimpleTableWithEnum:
56*890232f2SAndroid Build Coastguard Worker		return t.Value.(*TestSimpleTableWithEnumT).Pack(builder)
57*890232f2SAndroid Build Coastguard Worker	case AnyMyGame_Example2_Monster:
58*890232f2SAndroid Build Coastguard Worker		return t.Value.(*MyGame__Example2.MonsterT).Pack(builder)
59*890232f2SAndroid Build Coastguard Worker	}
60*890232f2SAndroid Build Coastguard Worker	return 0
61*890232f2SAndroid Build Coastguard Worker}
62*890232f2SAndroid Build Coastguard Worker
63*890232f2SAndroid Build Coastguard Workerfunc (rcv Any) UnPack(table flatbuffers.Table) *AnyT {
64*890232f2SAndroid Build Coastguard Worker	switch rcv {
65*890232f2SAndroid Build Coastguard Worker	case AnyMonster:
66*890232f2SAndroid Build Coastguard Worker		x := Monster{_tab: table}
67*890232f2SAndroid Build Coastguard Worker		return &AnyT{ Type: AnyMonster, Value: x.UnPack() }
68*890232f2SAndroid Build Coastguard Worker	case AnyTestSimpleTableWithEnum:
69*890232f2SAndroid Build Coastguard Worker		x := TestSimpleTableWithEnum{_tab: table}
70*890232f2SAndroid Build Coastguard Worker		return &AnyT{ Type: AnyTestSimpleTableWithEnum, Value: x.UnPack() }
71*890232f2SAndroid Build Coastguard Worker	case AnyMyGame_Example2_Monster:
72*890232f2SAndroid Build Coastguard Worker		x := Monster{_tab: table}
73*890232f2SAndroid Build Coastguard Worker		return &AnyT{ Type: AnyMyGame_Example2_Monster, Value: x.UnPack() }
74*890232f2SAndroid Build Coastguard Worker	}
75*890232f2SAndroid Build Coastguard Worker	return nil
76*890232f2SAndroid Build Coastguard Worker}
77