• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# automatically generated by the FlatBuffers compiler, do not modify
2
3# namespace: reflection
4
5import flatbuffers
6from flatbuffers.compat import import_numpy
7np = import_numpy()
8
9class Schema(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 = Schema()
16        x.Init(buf, n + offset)
17        return x
18
19    @classmethod
20    def GetRootAsSchema(cls, buf, offset=0):
21        """This method is deprecated. Please switch to GetRootAs."""
22        return cls.GetRootAs(buf, offset)
23    @classmethod
24    def SchemaBufferHasIdentifier(cls, buf, offset, size_prefixed=False):
25        return flatbuffers.util.BufferHasIdentifier(buf, offset, b"\x42\x46\x42\x53", size_prefixed=size_prefixed)
26
27    # Schema
28    def Init(self, buf, pos):
29        self._tab = flatbuffers.table.Table(buf, pos)
30
31    # Schema
32    def Objects(self, j):
33        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(4))
34        if o != 0:
35            x = self._tab.Vector(o)
36            x += flatbuffers.number_types.UOffsetTFlags.py_type(j) * 4
37            x = self._tab.Indirect(x)
38            from reflection.Object import Object
39            obj = Object()
40            obj.Init(self._tab.Bytes, x)
41            return obj
42        return None
43
44    # Schema
45    def ObjectsLength(self):
46        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(4))
47        if o != 0:
48            return self._tab.VectorLen(o)
49        return 0
50
51    # Schema
52    def ObjectsIsNone(self):
53        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(4))
54        return o == 0
55
56    # Schema
57    def Enums(self, j):
58        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(6))
59        if o != 0:
60            x = self._tab.Vector(o)
61            x += flatbuffers.number_types.UOffsetTFlags.py_type(j) * 4
62            x = self._tab.Indirect(x)
63            from reflection.Enum import Enum
64            obj = Enum()
65            obj.Init(self._tab.Bytes, x)
66            return obj
67        return None
68
69    # Schema
70    def EnumsLength(self):
71        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(6))
72        if o != 0:
73            return self._tab.VectorLen(o)
74        return 0
75
76    # Schema
77    def EnumsIsNone(self):
78        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(6))
79        return o == 0
80
81    # Schema
82    def FileIdent(self):
83        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(8))
84        if o != 0:
85            return self._tab.String(o + self._tab.Pos)
86        return None
87
88    # Schema
89    def FileExt(self):
90        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(10))
91        if o != 0:
92            return self._tab.String(o + self._tab.Pos)
93        return None
94
95    # Schema
96    def RootTable(self):
97        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(12))
98        if o != 0:
99            x = self._tab.Indirect(o + self._tab.Pos)
100            from reflection.Object import Object
101            obj = Object()
102            obj.Init(self._tab.Bytes, x)
103            return obj
104        return None
105
106    # Schema
107    def Services(self, j):
108        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(14))
109        if o != 0:
110            x = self._tab.Vector(o)
111            x += flatbuffers.number_types.UOffsetTFlags.py_type(j) * 4
112            x = self._tab.Indirect(x)
113            from reflection.Service import Service
114            obj = Service()
115            obj.Init(self._tab.Bytes, x)
116            return obj
117        return None
118
119    # Schema
120    def ServicesLength(self):
121        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(14))
122        if o != 0:
123            return self._tab.VectorLen(o)
124        return 0
125
126    # Schema
127    def ServicesIsNone(self):
128        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(14))
129        return o == 0
130
131    # Schema
132    def AdvancedFeatures(self):
133        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(16))
134        if o != 0:
135            return self._tab.Get(flatbuffers.number_types.Uint64Flags, o + self._tab.Pos)
136        return 0
137
138    # All the files used in this compilation. Files are relative to where
139    # flatc was invoked.
140    # Schema
141    def FbsFiles(self, j):
142        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(18))
143        if o != 0:
144            x = self._tab.Vector(o)
145            x += flatbuffers.number_types.UOffsetTFlags.py_type(j) * 4
146            x = self._tab.Indirect(x)
147            from reflection.SchemaFile import SchemaFile
148            obj = SchemaFile()
149            obj.Init(self._tab.Bytes, x)
150            return obj
151        return None
152
153    # Schema
154    def FbsFilesLength(self):
155        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(18))
156        if o != 0:
157            return self._tab.VectorLen(o)
158        return 0
159
160    # Schema
161    def FbsFilesIsNone(self):
162        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(18))
163        return o == 0
164
165def SchemaStart(builder):
166    builder.StartObject(8)
167
168def Start(builder):
169    SchemaStart(builder)
170
171def SchemaAddObjects(builder, objects):
172    builder.PrependUOffsetTRelativeSlot(0, flatbuffers.number_types.UOffsetTFlags.py_type(objects), 0)
173
174def AddObjects(builder, objects):
175    SchemaAddObjects(builder, objects)
176
177def SchemaStartObjectsVector(builder, numElems):
178    return builder.StartVector(4, numElems, 4)
179
180def StartObjectsVector(builder, numElems):
181    return SchemaStartObjectsVector(builder, numElems)
182
183def SchemaAddEnums(builder, enums):
184    builder.PrependUOffsetTRelativeSlot(1, flatbuffers.number_types.UOffsetTFlags.py_type(enums), 0)
185
186def AddEnums(builder, enums):
187    SchemaAddEnums(builder, enums)
188
189def SchemaStartEnumsVector(builder, numElems):
190    return builder.StartVector(4, numElems, 4)
191
192def StartEnumsVector(builder, numElems):
193    return SchemaStartEnumsVector(builder, numElems)
194
195def SchemaAddFileIdent(builder, fileIdent):
196    builder.PrependUOffsetTRelativeSlot(2, flatbuffers.number_types.UOffsetTFlags.py_type(fileIdent), 0)
197
198def AddFileIdent(builder, fileIdent):
199    SchemaAddFileIdent(builder, fileIdent)
200
201def SchemaAddFileExt(builder, fileExt):
202    builder.PrependUOffsetTRelativeSlot(3, flatbuffers.number_types.UOffsetTFlags.py_type(fileExt), 0)
203
204def AddFileExt(builder, fileExt):
205    SchemaAddFileExt(builder, fileExt)
206
207def SchemaAddRootTable(builder, rootTable):
208    builder.PrependUOffsetTRelativeSlot(4, flatbuffers.number_types.UOffsetTFlags.py_type(rootTable), 0)
209
210def AddRootTable(builder, rootTable):
211    SchemaAddRootTable(builder, rootTable)
212
213def SchemaAddServices(builder, services):
214    builder.PrependUOffsetTRelativeSlot(5, flatbuffers.number_types.UOffsetTFlags.py_type(services), 0)
215
216def AddServices(builder, services):
217    SchemaAddServices(builder, services)
218
219def SchemaStartServicesVector(builder, numElems):
220    return builder.StartVector(4, numElems, 4)
221
222def StartServicesVector(builder, numElems):
223    return SchemaStartServicesVector(builder, numElems)
224
225def SchemaAddAdvancedFeatures(builder, advancedFeatures):
226    builder.PrependUint64Slot(6, advancedFeatures, 0)
227
228def AddAdvancedFeatures(builder, advancedFeatures):
229    SchemaAddAdvancedFeatures(builder, advancedFeatures)
230
231def SchemaAddFbsFiles(builder, fbsFiles):
232    builder.PrependUOffsetTRelativeSlot(7, flatbuffers.number_types.UOffsetTFlags.py_type(fbsFiles), 0)
233
234def AddFbsFiles(builder, fbsFiles):
235    SchemaAddFbsFiles(builder, fbsFiles)
236
237def SchemaStartFbsFilesVector(builder, numElems):
238    return builder.StartVector(4, numElems, 4)
239
240def StartFbsFilesVector(builder, numElems):
241    return SchemaStartFbsFilesVector(builder, numElems)
242
243def SchemaEnd(builder):
244    return builder.EndObject()
245
246def End(builder):
247    return SchemaEnd(builder)
248