| |
|
|
| |
|
|
| import flatbuffers |
| from flatbuffers.compat import import_numpy |
| np = import_numpy() |
|
|
| class GrammarModel(object): |
| __slots__ = ['_tab'] |
|
|
| @classmethod |
| def GetRootAsGrammarModel(cls, buf, offset): |
| n = flatbuffers.encode.Get(flatbuffers.packer.uoffset, buf, offset) |
| x = GrammarModel() |
| x.Init(buf, n + offset) |
| return x |
|
|
| @classmethod |
| def GrammarModelBufferHasIdentifier(cls, buf, offset, size_prefixed=False): |
| return flatbuffers.util.BufferHasIdentifier(buf, offset, b"\x54\x43\x32\x20", size_prefixed=size_prefixed) |
|
|
| |
| def Init(self, buf, pos): |
| self._tab = flatbuffers.table.Table(buf, pos) |
|
|
| |
| def Rules(self): |
| o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(4)) |
| if o != 0: |
| x = self._tab.Indirect(o + self._tab.Pos) |
| from libtextclassifier3.grammar.RulesSet import RulesSet |
| obj = RulesSet() |
| obj.Init(self._tab.Bytes, x) |
| return obj |
| return None |
|
|
| |
| def RuleClassificationResult(self, j): |
| o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(6)) |
| if o != 0: |
| x = self._tab.Vector(o) |
| x += flatbuffers.number_types.UOffsetTFlags.py_type(j) * 4 |
| x = self._tab.Indirect(x) |
| from libtextclassifier3.GrammarModel_.RuleClassificationResult import RuleClassificationResult |
| obj = RuleClassificationResult() |
| obj.Init(self._tab.Bytes, x) |
| return obj |
| return None |
|
|
| |
| def RuleClassificationResultLength(self): |
| o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(6)) |
| if o != 0: |
| return self._tab.VectorLen(o) |
| return 0 |
|
|
| |
| def RuleClassificationResultIsNone(self): |
| o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(6)) |
| return o == 0 |
|
|
| |
| def ContextLeftNumTokens(self): |
| o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(8)) |
| if o != 0: |
| return self._tab.Get(flatbuffers.number_types.Int32Flags, o + self._tab.Pos) |
| return 0 |
|
|
| |
| def ContextRightNumTokens(self): |
| o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(10)) |
| if o != 0: |
| return self._tab.Get(flatbuffers.number_types.Int32Flags, o + self._tab.Pos) |
| return 0 |
|
|
| |
| def TokenizerOptions(self): |
| o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(12)) |
| if o != 0: |
| x = self._tab.Indirect(o + self._tab.Pos) |
| from libtextclassifier3.GrammarTokenizerOptions import GrammarTokenizerOptions |
| obj = GrammarTokenizerOptions() |
| obj.Init(self._tab.Bytes, x) |
| return obj |
| return None |
|
|
| def GrammarModelStart(builder): builder.StartObject(5) |
| def GrammarModelAddRules(builder, rules): builder.PrependUOffsetTRelativeSlot(0, flatbuffers.number_types.UOffsetTFlags.py_type(rules), 0) |
| def GrammarModelAddRuleClassificationResult(builder, ruleClassificationResult): builder.PrependUOffsetTRelativeSlot(1, flatbuffers.number_types.UOffsetTFlags.py_type(ruleClassificationResult), 0) |
| def GrammarModelStartRuleClassificationResultVector(builder, numElems): return builder.StartVector(4, numElems, 4) |
| def GrammarModelAddContextLeftNumTokens(builder, contextLeftNumTokens): builder.PrependInt32Slot(2, contextLeftNumTokens, 0) |
| def GrammarModelAddContextRightNumTokens(builder, contextRightNumTokens): builder.PrependInt32Slot(3, contextRightNumTokens, 0) |
| def GrammarModelAddTokenizerOptions(builder, tokenizerOptions): builder.PrependUOffsetTRelativeSlot(4, flatbuffers.number_types.UOffsetTFlags.py_type(tokenizerOptions), 0) |
| def GrammarModelEnd(builder): return builder.EndObject() |
|
|