1 // automatically generated by the FlatBuffers compiler, do not modify
2
3
4 #ifndef FLATBUFFERS_GENERATED_BITVECTOR_LIBTEXTCLASSIFIER3_H_
5 #define FLATBUFFERS_GENERATED_BITVECTOR_LIBTEXTCLASSIFIER3_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 libtextclassifier3 {
17
18 struct BitVectorData;
19 struct BitVectorDataBuilder;
20 struct BitVectorDataT;
21
22 struct DenseBitVectorData;
23 struct DenseBitVectorDataBuilder;
24 struct DenseBitVectorDataT;
25
26 struct SparseBitVectorData;
27 struct SparseBitVectorDataBuilder;
28 struct SparseBitVectorDataT;
29
30 struct BitVectorDataT : public flatbuffers::NativeTable {
31 typedef BitVectorData TableType;
32 std::unique_ptr<libtextclassifier3::DenseBitVectorDataT> dense_data{};
33 std::unique_ptr<libtextclassifier3::SparseBitVectorDataT> sparse_data{};
34 BitVectorDataT() = default;
35 BitVectorDataT(const BitVectorDataT &o);
36 BitVectorDataT(BitVectorDataT&&) FLATBUFFERS_NOEXCEPT = default;
37 BitVectorDataT &operator=(BitVectorDataT o) FLATBUFFERS_NOEXCEPT;
38 };
39
40 struct BitVectorData FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
41 typedef BitVectorDataT NativeTableType;
42 typedef BitVectorDataBuilder Builder;
43 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
44 VT_DENSE_DATA = 4,
45 VT_SPARSE_DATA = 6
46 };
dense_dataFLATBUFFERS_FINAL_CLASS47 const libtextclassifier3::DenseBitVectorData *dense_data() const {
48 return GetPointer<const libtextclassifier3::DenseBitVectorData *>(VT_DENSE_DATA);
49 }
sparse_dataFLATBUFFERS_FINAL_CLASS50 const libtextclassifier3::SparseBitVectorData *sparse_data() const {
51 return GetPointer<const libtextclassifier3::SparseBitVectorData *>(VT_SPARSE_DATA);
52 }
VerifyFLATBUFFERS_FINAL_CLASS53 bool Verify(flatbuffers::Verifier &verifier) const {
54 return VerifyTableStart(verifier) &&
55 VerifyOffset(verifier, VT_DENSE_DATA) &&
56 verifier.VerifyTable(dense_data()) &&
57 VerifyOffset(verifier, VT_SPARSE_DATA) &&
58 verifier.VerifyTable(sparse_data()) &&
59 verifier.EndTable();
60 }
61 BitVectorDataT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
62 void UnPackTo(BitVectorDataT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
63 static flatbuffers::Offset<BitVectorData> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BitVectorDataT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
64 };
65
66 struct BitVectorDataBuilder {
67 typedef BitVectorData Table;
68 flatbuffers::FlatBufferBuilder &fbb_;
69 flatbuffers::uoffset_t start_;
add_dense_dataBitVectorDataBuilder70 void add_dense_data(flatbuffers::Offset<libtextclassifier3::DenseBitVectorData> dense_data) {
71 fbb_.AddOffset(BitVectorData::VT_DENSE_DATA, dense_data);
72 }
add_sparse_dataBitVectorDataBuilder73 void add_sparse_data(flatbuffers::Offset<libtextclassifier3::SparseBitVectorData> sparse_data) {
74 fbb_.AddOffset(BitVectorData::VT_SPARSE_DATA, sparse_data);
75 }
BitVectorDataBuilderBitVectorDataBuilder76 explicit BitVectorDataBuilder(flatbuffers::FlatBufferBuilder &_fbb)
77 : fbb_(_fbb) {
78 start_ = fbb_.StartTable();
79 }
FinishBitVectorDataBuilder80 flatbuffers::Offset<BitVectorData> Finish() {
81 const auto end = fbb_.EndTable(start_);
82 auto o = flatbuffers::Offset<BitVectorData>(end);
83 return o;
84 }
85 };
86
87 inline flatbuffers::Offset<BitVectorData> CreateBitVectorData(
88 flatbuffers::FlatBufferBuilder &_fbb,
89 flatbuffers::Offset<libtextclassifier3::DenseBitVectorData> dense_data = 0,
90 flatbuffers::Offset<libtextclassifier3::SparseBitVectorData> sparse_data = 0) {
91 BitVectorDataBuilder builder_(_fbb);
92 builder_.add_sparse_data(sparse_data);
93 builder_.add_dense_data(dense_data);
94 return builder_.Finish();
95 }
96
97 flatbuffers::Offset<BitVectorData> CreateBitVectorData(flatbuffers::FlatBufferBuilder &_fbb, const BitVectorDataT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
98
99 struct DenseBitVectorDataT : public flatbuffers::NativeTable {
100 typedef DenseBitVectorData TableType;
101 std::vector<uint8_t> data{};
102 int32_t size = 0;
103 };
104
105 struct DenseBitVectorData FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
106 typedef DenseBitVectorDataT NativeTableType;
107 typedef DenseBitVectorDataBuilder Builder;
108 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
109 VT_DATA = 4,
110 VT_SIZE = 6
111 };
dataFLATBUFFERS_FINAL_CLASS112 const flatbuffers::Vector<uint8_t> *data() const {
113 return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_DATA);
114 }
sizeFLATBUFFERS_FINAL_CLASS115 int32_t size() const {
116 return GetField<int32_t>(VT_SIZE, 0);
117 }
VerifyFLATBUFFERS_FINAL_CLASS118 bool Verify(flatbuffers::Verifier &verifier) const {
119 return VerifyTableStart(verifier) &&
120 VerifyOffset(verifier, VT_DATA) &&
121 verifier.VerifyVector(data()) &&
122 VerifyField<int32_t>(verifier, VT_SIZE, 4) &&
123 verifier.EndTable();
124 }
125 DenseBitVectorDataT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
126 void UnPackTo(DenseBitVectorDataT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
127 static flatbuffers::Offset<DenseBitVectorData> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DenseBitVectorDataT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
128 };
129
130 struct DenseBitVectorDataBuilder {
131 typedef DenseBitVectorData Table;
132 flatbuffers::FlatBufferBuilder &fbb_;
133 flatbuffers::uoffset_t start_;
add_dataDenseBitVectorDataBuilder134 void add_data(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> data) {
135 fbb_.AddOffset(DenseBitVectorData::VT_DATA, data);
136 }
add_sizeDenseBitVectorDataBuilder137 void add_size(int32_t size) {
138 fbb_.AddElement<int32_t>(DenseBitVectorData::VT_SIZE, size, 0);
139 }
DenseBitVectorDataBuilderDenseBitVectorDataBuilder140 explicit DenseBitVectorDataBuilder(flatbuffers::FlatBufferBuilder &_fbb)
141 : fbb_(_fbb) {
142 start_ = fbb_.StartTable();
143 }
FinishDenseBitVectorDataBuilder144 flatbuffers::Offset<DenseBitVectorData> Finish() {
145 const auto end = fbb_.EndTable(start_);
146 auto o = flatbuffers::Offset<DenseBitVectorData>(end);
147 return o;
148 }
149 };
150
151 inline flatbuffers::Offset<DenseBitVectorData> CreateDenseBitVectorData(
152 flatbuffers::FlatBufferBuilder &_fbb,
153 flatbuffers::Offset<flatbuffers::Vector<uint8_t>> data = 0,
154 int32_t size = 0) {
155 DenseBitVectorDataBuilder builder_(_fbb);
156 builder_.add_size(size);
157 builder_.add_data(data);
158 return builder_.Finish();
159 }
160
161 inline flatbuffers::Offset<DenseBitVectorData> CreateDenseBitVectorDataDirect(
162 flatbuffers::FlatBufferBuilder &_fbb,
163 const std::vector<uint8_t> *data = nullptr,
164 int32_t size = 0) {
165 auto data__ = data ? _fbb.CreateVector<uint8_t>(*data) : 0;
166 return libtextclassifier3::CreateDenseBitVectorData(
167 _fbb,
168 data__,
169 size);
170 }
171
172 flatbuffers::Offset<DenseBitVectorData> CreateDenseBitVectorData(flatbuffers::FlatBufferBuilder &_fbb, const DenseBitVectorDataT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
173
174 struct SparseBitVectorDataT : public flatbuffers::NativeTable {
175 typedef SparseBitVectorData TableType;
176 std::vector<int32_t> sorted_indices_32{};
177 };
178
179 struct SparseBitVectorData FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
180 typedef SparseBitVectorDataT NativeTableType;
181 typedef SparseBitVectorDataBuilder Builder;
182 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
183 VT_SORTED_INDICES_32 = 4
184 };
sorted_indices_32FLATBUFFERS_FINAL_CLASS185 const flatbuffers::Vector<int32_t> *sorted_indices_32() const {
186 return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_SORTED_INDICES_32);
187 }
VerifyFLATBUFFERS_FINAL_CLASS188 bool Verify(flatbuffers::Verifier &verifier) const {
189 return VerifyTableStart(verifier) &&
190 VerifyOffset(verifier, VT_SORTED_INDICES_32) &&
191 verifier.VerifyVector(sorted_indices_32()) &&
192 verifier.EndTable();
193 }
194 SparseBitVectorDataT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
195 void UnPackTo(SparseBitVectorDataT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
196 static flatbuffers::Offset<SparseBitVectorData> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SparseBitVectorDataT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
197 };
198
199 struct SparseBitVectorDataBuilder {
200 typedef SparseBitVectorData Table;
201 flatbuffers::FlatBufferBuilder &fbb_;
202 flatbuffers::uoffset_t start_;
add_sorted_indices_32SparseBitVectorDataBuilder203 void add_sorted_indices_32(flatbuffers::Offset<flatbuffers::Vector<int32_t>> sorted_indices_32) {
204 fbb_.AddOffset(SparseBitVectorData::VT_SORTED_INDICES_32, sorted_indices_32);
205 }
SparseBitVectorDataBuilderSparseBitVectorDataBuilder206 explicit SparseBitVectorDataBuilder(flatbuffers::FlatBufferBuilder &_fbb)
207 : fbb_(_fbb) {
208 start_ = fbb_.StartTable();
209 }
FinishSparseBitVectorDataBuilder210 flatbuffers::Offset<SparseBitVectorData> Finish() {
211 const auto end = fbb_.EndTable(start_);
212 auto o = flatbuffers::Offset<SparseBitVectorData>(end);
213 return o;
214 }
215 };
216
217 inline flatbuffers::Offset<SparseBitVectorData> CreateSparseBitVectorData(
218 flatbuffers::FlatBufferBuilder &_fbb,
219 flatbuffers::Offset<flatbuffers::Vector<int32_t>> sorted_indices_32 = 0) {
220 SparseBitVectorDataBuilder builder_(_fbb);
221 builder_.add_sorted_indices_32(sorted_indices_32);
222 return builder_.Finish();
223 }
224
225 inline flatbuffers::Offset<SparseBitVectorData> CreateSparseBitVectorDataDirect(
226 flatbuffers::FlatBufferBuilder &_fbb,
227 const std::vector<int32_t> *sorted_indices_32 = nullptr) {
228 auto sorted_indices_32__ = sorted_indices_32 ? _fbb.CreateVector<int32_t>(*sorted_indices_32) : 0;
229 return libtextclassifier3::CreateSparseBitVectorData(
230 _fbb,
231 sorted_indices_32__);
232 }
233
234 flatbuffers::Offset<SparseBitVectorData> CreateSparseBitVectorData(flatbuffers::FlatBufferBuilder &_fbb, const SparseBitVectorDataT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
235
BitVectorDataT(const BitVectorDataT & o)236 inline BitVectorDataT::BitVectorDataT(const BitVectorDataT &o)
237 : dense_data((o.dense_data) ? new libtextclassifier3::DenseBitVectorDataT(*o.dense_data) : nullptr),
238 sparse_data((o.sparse_data) ? new libtextclassifier3::SparseBitVectorDataT(*o.sparse_data) : nullptr) {
239 }
240
241 inline BitVectorDataT &BitVectorDataT::operator=(BitVectorDataT o) FLATBUFFERS_NOEXCEPT {
242 std::swap(dense_data, o.dense_data);
243 std::swap(sparse_data, o.sparse_data);
244 return *this;
245 }
246
UnPack(const flatbuffers::resolver_function_t * _resolver)247 inline BitVectorDataT *BitVectorData::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
248 auto _o = std::unique_ptr<BitVectorDataT>(new BitVectorDataT());
249 UnPackTo(_o.get(), _resolver);
250 return _o.release();
251 }
252
UnPackTo(BitVectorDataT * _o,const flatbuffers::resolver_function_t * _resolver)253 inline void BitVectorData::UnPackTo(BitVectorDataT *_o, const flatbuffers::resolver_function_t *_resolver) const {
254 (void)_o;
255 (void)_resolver;
256 { auto _e = dense_data(); if (_e) _o->dense_data = std::unique_ptr<libtextclassifier3::DenseBitVectorDataT>(_e->UnPack(_resolver)); }
257 { auto _e = sparse_data(); if (_e) _o->sparse_data = std::unique_ptr<libtextclassifier3::SparseBitVectorDataT>(_e->UnPack(_resolver)); }
258 }
259
Pack(flatbuffers::FlatBufferBuilder & _fbb,const BitVectorDataT * _o,const flatbuffers::rehasher_function_t * _rehasher)260 inline flatbuffers::Offset<BitVectorData> BitVectorData::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BitVectorDataT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
261 return CreateBitVectorData(_fbb, _o, _rehasher);
262 }
263
CreateBitVectorData(flatbuffers::FlatBufferBuilder & _fbb,const BitVectorDataT * _o,const flatbuffers::rehasher_function_t * _rehasher)264 inline flatbuffers::Offset<BitVectorData> CreateBitVectorData(flatbuffers::FlatBufferBuilder &_fbb, const BitVectorDataT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
265 (void)_rehasher;
266 (void)_o;
267 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BitVectorDataT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
268 auto _dense_data = _o->dense_data ? CreateDenseBitVectorData(_fbb, _o->dense_data.get(), _rehasher) : 0;
269 auto _sparse_data = _o->sparse_data ? CreateSparseBitVectorData(_fbb, _o->sparse_data.get(), _rehasher) : 0;
270 return libtextclassifier3::CreateBitVectorData(
271 _fbb,
272 _dense_data,
273 _sparse_data);
274 }
275
UnPack(const flatbuffers::resolver_function_t * _resolver)276 inline DenseBitVectorDataT *DenseBitVectorData::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
277 auto _o = std::unique_ptr<DenseBitVectorDataT>(new DenseBitVectorDataT());
278 UnPackTo(_o.get(), _resolver);
279 return _o.release();
280 }
281
UnPackTo(DenseBitVectorDataT * _o,const flatbuffers::resolver_function_t * _resolver)282 inline void DenseBitVectorData::UnPackTo(DenseBitVectorDataT *_o, const flatbuffers::resolver_function_t *_resolver) const {
283 (void)_o;
284 (void)_resolver;
285 { auto _e = data(); if (_e) { _o->data.resize(_e->size()); std::copy(_e->begin(), _e->end(), _o->data.begin()); } }
286 { auto _e = size(); _o->size = _e; }
287 }
288
Pack(flatbuffers::FlatBufferBuilder & _fbb,const DenseBitVectorDataT * _o,const flatbuffers::rehasher_function_t * _rehasher)289 inline flatbuffers::Offset<DenseBitVectorData> DenseBitVectorData::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DenseBitVectorDataT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
290 return CreateDenseBitVectorData(_fbb, _o, _rehasher);
291 }
292
CreateDenseBitVectorData(flatbuffers::FlatBufferBuilder & _fbb,const DenseBitVectorDataT * _o,const flatbuffers::rehasher_function_t * _rehasher)293 inline flatbuffers::Offset<DenseBitVectorData> CreateDenseBitVectorData(flatbuffers::FlatBufferBuilder &_fbb, const DenseBitVectorDataT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
294 (void)_rehasher;
295 (void)_o;
296 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DenseBitVectorDataT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
297 auto _data = _o->data.size() ? _fbb.CreateVector(_o->data) : 0;
298 auto _size = _o->size;
299 return libtextclassifier3::CreateDenseBitVectorData(
300 _fbb,
301 _data,
302 _size);
303 }
304
UnPack(const flatbuffers::resolver_function_t * _resolver)305 inline SparseBitVectorDataT *SparseBitVectorData::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
306 auto _o = std::unique_ptr<SparseBitVectorDataT>(new SparseBitVectorDataT());
307 UnPackTo(_o.get(), _resolver);
308 return _o.release();
309 }
310
UnPackTo(SparseBitVectorDataT * _o,const flatbuffers::resolver_function_t * _resolver)311 inline void SparseBitVectorData::UnPackTo(SparseBitVectorDataT *_o, const flatbuffers::resolver_function_t *_resolver) const {
312 (void)_o;
313 (void)_resolver;
314 { auto _e = sorted_indices_32(); if (_e) { _o->sorted_indices_32.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->sorted_indices_32[_i] = _e->Get(_i); } } }
315 }
316
Pack(flatbuffers::FlatBufferBuilder & _fbb,const SparseBitVectorDataT * _o,const flatbuffers::rehasher_function_t * _rehasher)317 inline flatbuffers::Offset<SparseBitVectorData> SparseBitVectorData::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SparseBitVectorDataT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
318 return CreateSparseBitVectorData(_fbb, _o, _rehasher);
319 }
320
CreateSparseBitVectorData(flatbuffers::FlatBufferBuilder & _fbb,const SparseBitVectorDataT * _o,const flatbuffers::rehasher_function_t * _rehasher)321 inline flatbuffers::Offset<SparseBitVectorData> CreateSparseBitVectorData(flatbuffers::FlatBufferBuilder &_fbb, const SparseBitVectorDataT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
322 (void)_rehasher;
323 (void)_o;
324 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SparseBitVectorDataT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
325 auto _sorted_indices_32 = _o->sorted_indices_32.size() ? _fbb.CreateVector(_o->sorted_indices_32) : 0;
326 return libtextclassifier3::CreateSparseBitVectorData(
327 _fbb,
328 _sorted_indices_32);
329 }
330
331 } // namespace libtextclassifier3
332
333 #endif // FLATBUFFERS_GENERATED_BITVECTOR_LIBTEXTCLASSIFIER3_H_
334