xref: /aosp_15_r20/external/flatbuffers/tests/MyGame/Example/ArrayTable.py (revision 890232f25432b36107d06881e0a25aaa6b473652)
1# automatically generated by the FlatBuffers compiler, do not modify
2
3# namespace: Example
4
5import flatbuffers
6from flatbuffers.compat import import_numpy
7np = import_numpy()
8
9class ArrayTable(object):
10    __slots__ = ['_tab']
11
12    @classmethod
13    def GetRootAs(cls, buf, offset=0):
14        n = flatbuffers.encode.Get(flatbuffers.packer.uoffset, buf, offset)
15        x = ArrayTable()
16        x.Init(buf, n + offset)
17        return x
18
19    @classmethod
20    def GetRootAsArrayTable(cls, buf, offset=0):
21        """This method is deprecated. Please switch to GetRootAs."""
22        return cls.GetRootAs(buf, offset)
23    @classmethod
24    def ArrayTableBufferHasIdentifier(cls, buf, offset, size_prefixed=False):
25        return flatbuffers.util.BufferHasIdentifier(buf, offset, b"\x41\x52\x52\x54", size_prefixed=size_prefixed)
26
27    # ArrayTable
28    def Init(self, buf, pos):
29        self._tab = flatbuffers.table.Table(buf, pos)
30
31    # ArrayTable
32    def A(self):
33        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(4))
34        if o != 0:
35            x = o + self._tab.Pos
36            from MyGame.Example.ArrayStruct import ArrayStruct
37            obj = ArrayStruct()
38            obj.Init(self._tab.Bytes, x)
39            return obj
40        return None
41
42def ArrayTableStart(builder): builder.StartObject(1)
43def Start(builder):
44    return ArrayTableStart(builder)
45def ArrayTableAddA(builder, a): builder.PrependStructSlot(0, flatbuffers.number_types.UOffsetTFlags.py_type(a), 0)
46def AddA(builder, a):
47    return ArrayTableAddA(builder, a)
48def ArrayTableEnd(builder): return builder.EndObject()
49def End(builder):
50    return ArrayTableEnd(builder)
51import MyGame.Example.ArrayStruct
52try:
53    from typing import Optional
54except:
55    pass
56
57class ArrayTableT(object):
58
59    # ArrayTableT
60    def __init__(self):
61        self.a = None  # type: Optional[MyGame.Example.ArrayStruct.ArrayStructT]
62
63    @classmethod
64    def InitFromBuf(cls, buf, pos):
65        arrayTable = ArrayTable()
66        arrayTable.Init(buf, pos)
67        return cls.InitFromObj(arrayTable)
68
69    @classmethod
70    def InitFromObj(cls, arrayTable):
71        x = ArrayTableT()
72        x._UnPack(arrayTable)
73        return x
74
75    # ArrayTableT
76    def _UnPack(self, arrayTable):
77        if arrayTable is None:
78            return
79        if arrayTable.A() is not None:
80            self.a = MyGame.Example.ArrayStruct.ArrayStructT.InitFromObj(arrayTable.A())
81
82    # ArrayTableT
83    def Pack(self, builder):
84        ArrayTableStart(builder)
85        if self.a is not None:
86            a = self.a.Pack(builder)
87            ArrayTableAddA(builder, a)
88        arrayTable = ArrayTableEnd(builder)
89        return arrayTable
90