1 // automatically generated by the FlatBuffers compiler, do not modify
2 
3 
4 #ifndef FLATBUFFERS_GENERATED_CONFIG_TFLITE_OPS_CUSTOM_SENTENCEPIECE_H_
5 #define FLATBUFFERS_GENERATED_CONFIG_TFLITE_OPS_CUSTOM_SENTENCEPIECE_H_
6 
7 #include "flatbuffers/flatbuffers.h"
8 
9 // Ensure the included flatbuffers.h is the same version as when this file was
10 // generated, otherwise it may not be compatible.
11 static_assert(FLATBUFFERS_VERSION_MAJOR == 2 &&
12               FLATBUFFERS_VERSION_MINOR == 0 &&
13               FLATBUFFERS_VERSION_REVISION == 7,
14              "Non-compatible flatbuffers version included");
15 
16 namespace tflite {
17 namespace ops {
18 namespace custom {
19 namespace sentencepiece {
20 
21 struct Trie;
22 struct TrieBuilder;
23 struct TrieT;
24 
25 enum EncoderVersion : int8_t {
26   EncoderVersion_SENTENCE_PIECE = 0,
27   EncoderVersion_MIN = EncoderVersion_SENTENCE_PIECE,
28   EncoderVersion_MAX = EncoderVersion_SENTENCE_PIECE
29 };
30 
EnumValuesEncoderVersion()31 inline const EncoderVersion (&EnumValuesEncoderVersion())[1] {
32   static const EncoderVersion values[] = {
33     EncoderVersion_SENTENCE_PIECE
34   };
35   return values;
36 }
37 
EnumNamesEncoderVersion()38 inline const char * const *EnumNamesEncoderVersion() {
39   static const char * const names[2] = {
40     "SENTENCE_PIECE",
41     nullptr
42   };
43   return names;
44 }
45 
EnumNameEncoderVersion(EncoderVersion e)46 inline const char *EnumNameEncoderVersion(EncoderVersion e) {
47   if (flatbuffers::IsOutRange(e, EncoderVersion_SENTENCE_PIECE, EncoderVersion_SENTENCE_PIECE)) return "";
48   const size_t index = static_cast<size_t>(e);
49   return EnumNamesEncoderVersion()[index];
50 }
51 
52 struct TrieT : public flatbuffers::NativeTable {
53   typedef Trie TableType;
54   std::vector<uint32_t> nodes{};
55 };
56 
57 struct Trie FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
58   typedef TrieT NativeTableType;
59   typedef TrieBuilder Builder;
60   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
61     VT_NODES = 4
62   };
nodesFLATBUFFERS_FINAL_CLASS63   const flatbuffers::Vector<uint32_t> *nodes() const {
64     return GetPointer<const flatbuffers::Vector<uint32_t> *>(VT_NODES);
65   }
VerifyFLATBUFFERS_FINAL_CLASS66   bool Verify(flatbuffers::Verifier &verifier) const {
67     return VerifyTableStart(verifier) &&
68            VerifyOffset(verifier, VT_NODES) &&
69            verifier.VerifyVector(nodes()) &&
70            verifier.EndTable();
71   }
72   TrieT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
73   void UnPackTo(TrieT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
74   static flatbuffers::Offset<Trie> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TrieT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
75 };
76 
77 struct TrieBuilder {
78   typedef Trie Table;
79   flatbuffers::FlatBufferBuilder &fbb_;
80   flatbuffers::uoffset_t start_;
add_nodesTrieBuilder81   void add_nodes(flatbuffers::Offset<flatbuffers::Vector<uint32_t>> nodes) {
82     fbb_.AddOffset(Trie::VT_NODES, nodes);
83   }
TrieBuilderTrieBuilder84   explicit TrieBuilder(flatbuffers::FlatBufferBuilder &_fbb)
85         : fbb_(_fbb) {
86     start_ = fbb_.StartTable();
87   }
FinishTrieBuilder88   flatbuffers::Offset<Trie> Finish() {
89     const auto end = fbb_.EndTable(start_);
90     auto o = flatbuffers::Offset<Trie>(end);
91     return o;
92   }
93 };
94 
95 inline flatbuffers::Offset<Trie> CreateTrie(
96     flatbuffers::FlatBufferBuilder &_fbb,
97     flatbuffers::Offset<flatbuffers::Vector<uint32_t>> nodes = 0) {
98   TrieBuilder builder_(_fbb);
99   builder_.add_nodes(nodes);
100   return builder_.Finish();
101 }
102 
103 inline flatbuffers::Offset<Trie> CreateTrieDirect(
104     flatbuffers::FlatBufferBuilder &_fbb,
105     const std::vector<uint32_t> *nodes = nullptr) {
106   auto nodes__ = nodes ? _fbb.CreateVector<uint32_t>(*nodes) : 0;
107   return tflite::ops::custom::sentencepiece::CreateTrie(
108       _fbb,
109       nodes__);
110 }
111 
112 flatbuffers::Offset<Trie> CreateTrie(flatbuffers::FlatBufferBuilder &_fbb, const TrieT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
113 
UnPack(const flatbuffers::resolver_function_t * _resolver)114 inline TrieT *Trie::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
115   auto _o = std::unique_ptr<TrieT>(new TrieT());
116   UnPackTo(_o.get(), _resolver);
117   return _o.release();
118 }
119 
UnPackTo(TrieT * _o,const flatbuffers::resolver_function_t * _resolver)120 inline void Trie::UnPackTo(TrieT *_o, const flatbuffers::resolver_function_t *_resolver) const {
121   (void)_o;
122   (void)_resolver;
123   { auto _e = nodes(); if (_e) { _o->nodes.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->nodes[_i] = _e->Get(_i); } } }
124 }
125 
Pack(flatbuffers::FlatBufferBuilder & _fbb,const TrieT * _o,const flatbuffers::rehasher_function_t * _rehasher)126 inline flatbuffers::Offset<Trie> Trie::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TrieT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
127   return CreateTrie(_fbb, _o, _rehasher);
128 }
129 
CreateTrie(flatbuffers::FlatBufferBuilder & _fbb,const TrieT * _o,const flatbuffers::rehasher_function_t * _rehasher)130 inline flatbuffers::Offset<Trie> CreateTrie(flatbuffers::FlatBufferBuilder &_fbb, const TrieT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
131   (void)_rehasher;
132   (void)_o;
133   struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TrieT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
134   auto _nodes = _o->nodes.size() ? _fbb.CreateVector(_o->nodes) : 0;
135   return tflite::ops::custom::sentencepiece::CreateTrie(
136       _fbb,
137       _nodes);
138 }
139 
140 }  // namespace sentencepiece
141 }  // namespace custom
142 }  // namespace ops
143 }  // namespace tflite
144 
145 #endif  // FLATBUFFERS_GENERATED_CONFIG_TFLITE_OPS_CUSTOM_SENTENCEPIECE_H_
146