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