xref: /aosp_15_r20/external/flatbuffers/python/flatbuffers/reflection/SchemaFile.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
9# File specific information.
10# Symbols declared within a file may be recovered by iterating over all
11# symbols and examining the `declaration_file` field.
12class SchemaFile(object):
13    __slots__ = ['_tab']
14
15    @classmethod
16    def GetRootAs(cls, buf, offset=0):
17        n = flatbuffers.encode.Get(flatbuffers.packer.uoffset, buf, offset)
18        x = SchemaFile()
19        x.Init(buf, n + offset)
20        return x
21
22    @classmethod
23    def GetRootAsSchemaFile(cls, buf, offset=0):
24        """This method is deprecated. Please switch to GetRootAs."""
25        return cls.GetRootAs(buf, offset)
26    @classmethod
27    def SchemaFileBufferHasIdentifier(cls, buf, offset, size_prefixed=False):
28        return flatbuffers.util.BufferHasIdentifier(buf, offset, b"\x42\x46\x42\x53", size_prefixed=size_prefixed)
29
30    # SchemaFile
31    def Init(self, buf, pos):
32        self._tab = flatbuffers.table.Table(buf, pos)
33
34    # Filename, relative to project root.
35    # SchemaFile
36    def Filename(self):
37        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(4))
38        if o != 0:
39            return self._tab.String(o + self._tab.Pos)
40        return None
41
42    # Names of included files, relative to project root.
43    # SchemaFile
44    def IncludedFilenames(self, j):
45        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(6))
46        if o != 0:
47            a = self._tab.Vector(o)
48            return self._tab.String(a + flatbuffers.number_types.UOffsetTFlags.py_type(j * 4))
49        return ""
50
51    # SchemaFile
52    def IncludedFilenamesLength(self):
53        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(6))
54        if o != 0:
55            return self._tab.VectorLen(o)
56        return 0
57
58    # SchemaFile
59    def IncludedFilenamesIsNone(self):
60        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(6))
61        return o == 0
62
63def SchemaFileStart(builder): builder.StartObject(2)
64def Start(builder):
65    return SchemaFileStart(builder)
66def SchemaFileAddFilename(builder, filename): builder.PrependUOffsetTRelativeSlot(0, flatbuffers.number_types.UOffsetTFlags.py_type(filename), 0)
67def AddFilename(builder, filename):
68    return SchemaFileAddFilename(builder, filename)
69def SchemaFileAddIncludedFilenames(builder, includedFilenames): builder.PrependUOffsetTRelativeSlot(1, flatbuffers.number_types.UOffsetTFlags.py_type(includedFilenames), 0)
70def AddIncludedFilenames(builder, includedFilenames):
71    return SchemaFileAddIncludedFilenames(builder, includedFilenames)
72def SchemaFileStartIncludedFilenamesVector(builder, numElems): return builder.StartVector(4, numElems, 4)
73def StartIncludedFilenamesVector(builder, numElems):
74    return SchemaFileStartIncludedFilenamesVector(builder, numElems)
75def SchemaFileEnd(builder): return builder.EndObject()
76def End(builder):
77    return SchemaFileEnd(builder)