xref: /aosp_15_r20/external/flatbuffers/python/flatbuffers/reflection/Schema.py (revision 890232f25432b36107d06881e0a25aaa6b473652)
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): builder.StartObject(8)
166def Start(builder):
167    return SchemaStart(builder)
168def SchemaAddObjects(builder, objects): builder.PrependUOffsetTRelativeSlot(0, flatbuffers.number_types.UOffsetTFlags.py_type(objects), 0)
169def AddObjects(builder, objects):
170    return SchemaAddObjects(builder, objects)
171def SchemaStartObjectsVector(builder, numElems): return builder.StartVector(4, numElems, 4)
172def StartObjectsVector(builder, numElems):
173    return SchemaStartObjectsVector(builder, numElems)
174def SchemaAddEnums(builder, enums): builder.PrependUOffsetTRelativeSlot(1, flatbuffers.number_types.UOffsetTFlags.py_type(enums), 0)
175def AddEnums(builder, enums):
176    return SchemaAddEnums(builder, enums)
177def SchemaStartEnumsVector(builder, numElems): return builder.StartVector(4, numElems, 4)
178def StartEnumsVector(builder, numElems):
179    return SchemaStartEnumsVector(builder, numElems)
180def SchemaAddFileIdent(builder, fileIdent): builder.PrependUOffsetTRelativeSlot(2, flatbuffers.number_types.UOffsetTFlags.py_type(fileIdent), 0)
181def AddFileIdent(builder, fileIdent):
182    return SchemaAddFileIdent(builder, fileIdent)
183def SchemaAddFileExt(builder, fileExt): builder.PrependUOffsetTRelativeSlot(3, flatbuffers.number_types.UOffsetTFlags.py_type(fileExt), 0)
184def AddFileExt(builder, fileExt):
185    return SchemaAddFileExt(builder, fileExt)
186def SchemaAddRootTable(builder, rootTable): builder.PrependUOffsetTRelativeSlot(4, flatbuffers.number_types.UOffsetTFlags.py_type(rootTable), 0)
187def AddRootTable(builder, rootTable):
188    return SchemaAddRootTable(builder, rootTable)
189def SchemaAddServices(builder, services): builder.PrependUOffsetTRelativeSlot(5, flatbuffers.number_types.UOffsetTFlags.py_type(services), 0)
190def AddServices(builder, services):
191    return SchemaAddServices(builder, services)
192def SchemaStartServicesVector(builder, numElems): return builder.StartVector(4, numElems, 4)
193def StartServicesVector(builder, numElems):
194    return SchemaStartServicesVector(builder, numElems)
195def SchemaAddAdvancedFeatures(builder, advancedFeatures): builder.PrependUint64Slot(6, advancedFeatures, 0)
196def AddAdvancedFeatures(builder, advancedFeatures):
197    return SchemaAddAdvancedFeatures(builder, advancedFeatures)
198def SchemaAddFbsFiles(builder, fbsFiles): builder.PrependUOffsetTRelativeSlot(7, flatbuffers.number_types.UOffsetTFlags.py_type(fbsFiles), 0)
199def AddFbsFiles(builder, fbsFiles):
200    return SchemaAddFbsFiles(builder, fbsFiles)
201def SchemaStartFbsFilesVector(builder, numElems): return builder.StartVector(4, numElems, 4)
202def StartFbsFilesVector(builder, numElems):
203    return SchemaStartFbsFilesVector(builder, numElems)
204def SchemaEnd(builder): return builder.EndObject()
205def End(builder):
206    return SchemaEnd(builder)