...
1
2
3 package Example
4
5 import (
6 flatbuffers "github.com/google/flatbuffers/go"
7 )
8
9 type AbilityT struct {
10 Id uint32 `json:"id"`
11 Distance uint32 `json:"distance"`
12 }
13
14 func (t *AbilityT) Pack(builder *flatbuffers.Builder) flatbuffers.UOffsetT {
15 if t == nil {
16 return 0
17 }
18 return CreateAbility(builder, t.Id, t.Distance)
19 }
20 func (rcv *Ability) UnPackTo(t *AbilityT) {
21 t.Id = rcv.Id()
22 t.Distance = rcv.Distance()
23 }
24
25 func (rcv *Ability) UnPack() *AbilityT {
26 if rcv == nil {
27 return nil
28 }
29 t := &AbilityT{}
30 rcv.UnPackTo(t)
31 return t
32 }
33
34 type Ability struct {
35 _tab flatbuffers.Struct
36 }
37
38 func (rcv *Ability) Init(buf []byte, i flatbuffers.UOffsetT) {
39 rcv._tab.Bytes = buf
40 rcv._tab.Pos = i
41 }
42
43 func (rcv *Ability) Table() flatbuffers.Table {
44 return rcv._tab.Table
45 }
46
47 func (rcv *Ability) Id() uint32 {
48 return rcv._tab.GetUint32(rcv._tab.Pos + flatbuffers.UOffsetT(0))
49 }
50 func (rcv *Ability) MutateId(n uint32) bool {
51 return rcv._tab.MutateUint32(rcv._tab.Pos+flatbuffers.UOffsetT(0), n)
52 }
53
54 func (rcv *Ability) Distance() uint32 {
55 return rcv._tab.GetUint32(rcv._tab.Pos + flatbuffers.UOffsetT(4))
56 }
57 func (rcv *Ability) MutateDistance(n uint32) bool {
58 return rcv._tab.MutateUint32(rcv._tab.Pos+flatbuffers.UOffsetT(4), n)
59 }
60
61 func CreateAbility(builder *flatbuffers.Builder, id uint32, distance uint32) flatbuffers.UOffsetT {
62 builder.Prep(4, 8)
63 builder.PrependUint32(distance)
64 builder.PrependUint32(id)
65 return builder.Offset()
66 }
67
View as plain text