1 // automatically generated by the FlatBuffers compiler, do not modify
2
3
4 #ifndef FLATBUFFERS_GENERATED_TEXTENCODERCONFIG_LIBTEXTCLASSIFIER3_H_
5 #define FLATBUFFERS_GENERATED_TEXTENCODERCONFIG_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 TextEncoderConfig;
19 struct TextEncoderConfigBuilder;
20 struct TextEncoderConfigT;
21
22 enum SentencePieceMatcherType : int8_t {
23 SentencePieceMatcherType_MAPPED_TRIE = 0,
24 SentencePieceMatcherType_SORTED_STRING_TABLE = 1,
25 SentencePieceMatcherType_MIN = SentencePieceMatcherType_MAPPED_TRIE,
26 SentencePieceMatcherType_MAX = SentencePieceMatcherType_SORTED_STRING_TABLE
27 };
28
EnumValuesSentencePieceMatcherType()29 inline const SentencePieceMatcherType (&EnumValuesSentencePieceMatcherType())[2] {
30 static const SentencePieceMatcherType values[] = {
31 SentencePieceMatcherType_MAPPED_TRIE,
32 SentencePieceMatcherType_SORTED_STRING_TABLE
33 };
34 return values;
35 }
36
EnumNamesSentencePieceMatcherType()37 inline const char * const *EnumNamesSentencePieceMatcherType() {
38 static const char * const names[3] = {
39 "MAPPED_TRIE",
40 "SORTED_STRING_TABLE",
41 nullptr
42 };
43 return names;
44 }
45
EnumNameSentencePieceMatcherType(SentencePieceMatcherType e)46 inline const char *EnumNameSentencePieceMatcherType(SentencePieceMatcherType e) {
47 if (flatbuffers::IsOutRange(e, SentencePieceMatcherType_MAPPED_TRIE, SentencePieceMatcherType_SORTED_STRING_TABLE)) return "";
48 const size_t index = static_cast<size_t>(e);
49 return EnumNamesSentencePieceMatcherType()[index];
50 }
51
52 struct TextEncoderConfigT : public flatbuffers::NativeTable {
53 typedef TextEncoderConfig TableType;
54 int32_t start_code = 0;
55 int32_t end_code = 1;
56 int32_t encoding_offset = 2;
57 int32_t unknown_code = -1;
58 float unknown_score = 0.0f;
59 std::string normalization_charsmap{};
60 std::string normalization_charsmap_values{};
61 bool add_dummy_prefix = true;
62 bool remove_extra_whitespaces = true;
63 bool escape_whitespaces = true;
64 std::vector<float> pieces_scores{};
65 std::string pieces{};
66 std::vector<uint32_t> pieces_offsets{};
67 libtextclassifier3::SentencePieceMatcherType matcher_type = libtextclassifier3::SentencePieceMatcherType_MAPPED_TRIE;
68 };
69
70 struct TextEncoderConfig FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
71 typedef TextEncoderConfigT NativeTableType;
72 typedef TextEncoderConfigBuilder Builder;
73 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
74 VT_START_CODE = 4,
75 VT_END_CODE = 6,
76 VT_ENCODING_OFFSET = 8,
77 VT_UNKNOWN_CODE = 10,
78 VT_UNKNOWN_SCORE = 12,
79 VT_NORMALIZATION_CHARSMAP = 14,
80 VT_NORMALIZATION_CHARSMAP_VALUES = 16,
81 VT_ADD_DUMMY_PREFIX = 18,
82 VT_REMOVE_EXTRA_WHITESPACES = 20,
83 VT_ESCAPE_WHITESPACES = 22,
84 VT_PIECES_SCORES = 24,
85 VT_PIECES = 26,
86 VT_PIECES_OFFSETS = 28,
87 VT_MATCHER_TYPE = 30
88 };
start_codeFLATBUFFERS_FINAL_CLASS89 int32_t start_code() const {
90 return GetField<int32_t>(VT_START_CODE, 0);
91 }
end_codeFLATBUFFERS_FINAL_CLASS92 int32_t end_code() const {
93 return GetField<int32_t>(VT_END_CODE, 1);
94 }
encoding_offsetFLATBUFFERS_FINAL_CLASS95 int32_t encoding_offset() const {
96 return GetField<int32_t>(VT_ENCODING_OFFSET, 2);
97 }
unknown_codeFLATBUFFERS_FINAL_CLASS98 int32_t unknown_code() const {
99 return GetField<int32_t>(VT_UNKNOWN_CODE, -1);
100 }
unknown_scoreFLATBUFFERS_FINAL_CLASS101 float unknown_score() const {
102 return GetField<float>(VT_UNKNOWN_SCORE, 0.0f);
103 }
normalization_charsmapFLATBUFFERS_FINAL_CLASS104 const flatbuffers::String *normalization_charsmap() const {
105 return GetPointer<const flatbuffers::String *>(VT_NORMALIZATION_CHARSMAP);
106 }
normalization_charsmap_valuesFLATBUFFERS_FINAL_CLASS107 const flatbuffers::String *normalization_charsmap_values() const {
108 return GetPointer<const flatbuffers::String *>(VT_NORMALIZATION_CHARSMAP_VALUES);
109 }
add_dummy_prefixFLATBUFFERS_FINAL_CLASS110 bool add_dummy_prefix() const {
111 return GetField<uint8_t>(VT_ADD_DUMMY_PREFIX, 1) != 0;
112 }
remove_extra_whitespacesFLATBUFFERS_FINAL_CLASS113 bool remove_extra_whitespaces() const {
114 return GetField<uint8_t>(VT_REMOVE_EXTRA_WHITESPACES, 1) != 0;
115 }
escape_whitespacesFLATBUFFERS_FINAL_CLASS116 bool escape_whitespaces() const {
117 return GetField<uint8_t>(VT_ESCAPE_WHITESPACES, 1) != 0;
118 }
pieces_scoresFLATBUFFERS_FINAL_CLASS119 const flatbuffers::Vector<float> *pieces_scores() const {
120 return GetPointer<const flatbuffers::Vector<float> *>(VT_PIECES_SCORES);
121 }
piecesFLATBUFFERS_FINAL_CLASS122 const flatbuffers::String *pieces() const {
123 return GetPointer<const flatbuffers::String *>(VT_PIECES);
124 }
pieces_offsetsFLATBUFFERS_FINAL_CLASS125 const flatbuffers::Vector<uint32_t> *pieces_offsets() const {
126 return GetPointer<const flatbuffers::Vector<uint32_t> *>(VT_PIECES_OFFSETS);
127 }
matcher_typeFLATBUFFERS_FINAL_CLASS128 libtextclassifier3::SentencePieceMatcherType matcher_type() const {
129 return static_cast<libtextclassifier3::SentencePieceMatcherType>(GetField<int8_t>(VT_MATCHER_TYPE, 0));
130 }
VerifyFLATBUFFERS_FINAL_CLASS131 bool Verify(flatbuffers::Verifier &verifier) const {
132 return VerifyTableStart(verifier) &&
133 VerifyField<int32_t>(verifier, VT_START_CODE, 4) &&
134 VerifyField<int32_t>(verifier, VT_END_CODE, 4) &&
135 VerifyField<int32_t>(verifier, VT_ENCODING_OFFSET, 4) &&
136 VerifyField<int32_t>(verifier, VT_UNKNOWN_CODE, 4) &&
137 VerifyField<float>(verifier, VT_UNKNOWN_SCORE, 4) &&
138 VerifyOffset(verifier, VT_NORMALIZATION_CHARSMAP) &&
139 verifier.VerifyString(normalization_charsmap()) &&
140 VerifyOffset(verifier, VT_NORMALIZATION_CHARSMAP_VALUES) &&
141 verifier.VerifyString(normalization_charsmap_values()) &&
142 VerifyField<uint8_t>(verifier, VT_ADD_DUMMY_PREFIX, 1) &&
143 VerifyField<uint8_t>(verifier, VT_REMOVE_EXTRA_WHITESPACES, 1) &&
144 VerifyField<uint8_t>(verifier, VT_ESCAPE_WHITESPACES, 1) &&
145 VerifyOffset(verifier, VT_PIECES_SCORES) &&
146 verifier.VerifyVector(pieces_scores()) &&
147 VerifyOffset(verifier, VT_PIECES) &&
148 verifier.VerifyString(pieces()) &&
149 VerifyOffset(verifier, VT_PIECES_OFFSETS) &&
150 verifier.VerifyVector(pieces_offsets()) &&
151 VerifyField<int8_t>(verifier, VT_MATCHER_TYPE, 1) &&
152 verifier.EndTable();
153 }
154 TextEncoderConfigT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
155 void UnPackTo(TextEncoderConfigT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
156 static flatbuffers::Offset<TextEncoderConfig> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TextEncoderConfigT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
157 };
158
159 struct TextEncoderConfigBuilder {
160 typedef TextEncoderConfig Table;
161 flatbuffers::FlatBufferBuilder &fbb_;
162 flatbuffers::uoffset_t start_;
add_start_codeTextEncoderConfigBuilder163 void add_start_code(int32_t start_code) {
164 fbb_.AddElement<int32_t>(TextEncoderConfig::VT_START_CODE, start_code, 0);
165 }
add_end_codeTextEncoderConfigBuilder166 void add_end_code(int32_t end_code) {
167 fbb_.AddElement<int32_t>(TextEncoderConfig::VT_END_CODE, end_code, 1);
168 }
add_encoding_offsetTextEncoderConfigBuilder169 void add_encoding_offset(int32_t encoding_offset) {
170 fbb_.AddElement<int32_t>(TextEncoderConfig::VT_ENCODING_OFFSET, encoding_offset, 2);
171 }
add_unknown_codeTextEncoderConfigBuilder172 void add_unknown_code(int32_t unknown_code) {
173 fbb_.AddElement<int32_t>(TextEncoderConfig::VT_UNKNOWN_CODE, unknown_code, -1);
174 }
add_unknown_scoreTextEncoderConfigBuilder175 void add_unknown_score(float unknown_score) {
176 fbb_.AddElement<float>(TextEncoderConfig::VT_UNKNOWN_SCORE, unknown_score, 0.0f);
177 }
add_normalization_charsmapTextEncoderConfigBuilder178 void add_normalization_charsmap(flatbuffers::Offset<flatbuffers::String> normalization_charsmap) {
179 fbb_.AddOffset(TextEncoderConfig::VT_NORMALIZATION_CHARSMAP, normalization_charsmap);
180 }
add_normalization_charsmap_valuesTextEncoderConfigBuilder181 void add_normalization_charsmap_values(flatbuffers::Offset<flatbuffers::String> normalization_charsmap_values) {
182 fbb_.AddOffset(TextEncoderConfig::VT_NORMALIZATION_CHARSMAP_VALUES, normalization_charsmap_values);
183 }
add_add_dummy_prefixTextEncoderConfigBuilder184 void add_add_dummy_prefix(bool add_dummy_prefix) {
185 fbb_.AddElement<uint8_t>(TextEncoderConfig::VT_ADD_DUMMY_PREFIX, static_cast<uint8_t>(add_dummy_prefix), 1);
186 }
add_remove_extra_whitespacesTextEncoderConfigBuilder187 void add_remove_extra_whitespaces(bool remove_extra_whitespaces) {
188 fbb_.AddElement<uint8_t>(TextEncoderConfig::VT_REMOVE_EXTRA_WHITESPACES, static_cast<uint8_t>(remove_extra_whitespaces), 1);
189 }
add_escape_whitespacesTextEncoderConfigBuilder190 void add_escape_whitespaces(bool escape_whitespaces) {
191 fbb_.AddElement<uint8_t>(TextEncoderConfig::VT_ESCAPE_WHITESPACES, static_cast<uint8_t>(escape_whitespaces), 1);
192 }
add_pieces_scoresTextEncoderConfigBuilder193 void add_pieces_scores(flatbuffers::Offset<flatbuffers::Vector<float>> pieces_scores) {
194 fbb_.AddOffset(TextEncoderConfig::VT_PIECES_SCORES, pieces_scores);
195 }
add_piecesTextEncoderConfigBuilder196 void add_pieces(flatbuffers::Offset<flatbuffers::String> pieces) {
197 fbb_.AddOffset(TextEncoderConfig::VT_PIECES, pieces);
198 }
add_pieces_offsetsTextEncoderConfigBuilder199 void add_pieces_offsets(flatbuffers::Offset<flatbuffers::Vector<uint32_t>> pieces_offsets) {
200 fbb_.AddOffset(TextEncoderConfig::VT_PIECES_OFFSETS, pieces_offsets);
201 }
add_matcher_typeTextEncoderConfigBuilder202 void add_matcher_type(libtextclassifier3::SentencePieceMatcherType matcher_type) {
203 fbb_.AddElement<int8_t>(TextEncoderConfig::VT_MATCHER_TYPE, static_cast<int8_t>(matcher_type), 0);
204 }
TextEncoderConfigBuilderTextEncoderConfigBuilder205 explicit TextEncoderConfigBuilder(flatbuffers::FlatBufferBuilder &_fbb)
206 : fbb_(_fbb) {
207 start_ = fbb_.StartTable();
208 }
FinishTextEncoderConfigBuilder209 flatbuffers::Offset<TextEncoderConfig> Finish() {
210 const auto end = fbb_.EndTable(start_);
211 auto o = flatbuffers::Offset<TextEncoderConfig>(end);
212 return o;
213 }
214 };
215
216 inline flatbuffers::Offset<TextEncoderConfig> CreateTextEncoderConfig(
217 flatbuffers::FlatBufferBuilder &_fbb,
218 int32_t start_code = 0,
219 int32_t end_code = 1,
220 int32_t encoding_offset = 2,
221 int32_t unknown_code = -1,
222 float unknown_score = 0.0f,
223 flatbuffers::Offset<flatbuffers::String> normalization_charsmap = 0,
224 flatbuffers::Offset<flatbuffers::String> normalization_charsmap_values = 0,
225 bool add_dummy_prefix = true,
226 bool remove_extra_whitespaces = true,
227 bool escape_whitespaces = true,
228 flatbuffers::Offset<flatbuffers::Vector<float>> pieces_scores = 0,
229 flatbuffers::Offset<flatbuffers::String> pieces = 0,
230 flatbuffers::Offset<flatbuffers::Vector<uint32_t>> pieces_offsets = 0,
231 libtextclassifier3::SentencePieceMatcherType matcher_type = libtextclassifier3::SentencePieceMatcherType_MAPPED_TRIE) {
232 TextEncoderConfigBuilder builder_(_fbb);
233 builder_.add_pieces_offsets(pieces_offsets);
234 builder_.add_pieces(pieces);
235 builder_.add_pieces_scores(pieces_scores);
236 builder_.add_normalization_charsmap_values(normalization_charsmap_values);
237 builder_.add_normalization_charsmap(normalization_charsmap);
238 builder_.add_unknown_score(unknown_score);
239 builder_.add_unknown_code(unknown_code);
240 builder_.add_encoding_offset(encoding_offset);
241 builder_.add_end_code(end_code);
242 builder_.add_start_code(start_code);
243 builder_.add_matcher_type(matcher_type);
244 builder_.add_escape_whitespaces(escape_whitespaces);
245 builder_.add_remove_extra_whitespaces(remove_extra_whitespaces);
246 builder_.add_add_dummy_prefix(add_dummy_prefix);
247 return builder_.Finish();
248 }
249
250 inline flatbuffers::Offset<TextEncoderConfig> CreateTextEncoderConfigDirect(
251 flatbuffers::FlatBufferBuilder &_fbb,
252 int32_t start_code = 0,
253 int32_t end_code = 1,
254 int32_t encoding_offset = 2,
255 int32_t unknown_code = -1,
256 float unknown_score = 0.0f,
257 const char *normalization_charsmap = nullptr,
258 const char *normalization_charsmap_values = nullptr,
259 bool add_dummy_prefix = true,
260 bool remove_extra_whitespaces = true,
261 bool escape_whitespaces = true,
262 const std::vector<float> *pieces_scores = nullptr,
263 const char *pieces = nullptr,
264 const std::vector<uint32_t> *pieces_offsets = nullptr,
265 libtextclassifier3::SentencePieceMatcherType matcher_type = libtextclassifier3::SentencePieceMatcherType_MAPPED_TRIE) {
266 auto normalization_charsmap__ = normalization_charsmap ? _fbb.CreateString(normalization_charsmap) : 0;
267 auto normalization_charsmap_values__ = normalization_charsmap_values ? _fbb.CreateString(normalization_charsmap_values) : 0;
268 auto pieces_scores__ = pieces_scores ? _fbb.CreateVector<float>(*pieces_scores) : 0;
269 auto pieces__ = pieces ? _fbb.CreateString(pieces) : 0;
270 auto pieces_offsets__ = pieces_offsets ? _fbb.CreateVector<uint32_t>(*pieces_offsets) : 0;
271 return libtextclassifier3::CreateTextEncoderConfig(
272 _fbb,
273 start_code,
274 end_code,
275 encoding_offset,
276 unknown_code,
277 unknown_score,
278 normalization_charsmap__,
279 normalization_charsmap_values__,
280 add_dummy_prefix,
281 remove_extra_whitespaces,
282 escape_whitespaces,
283 pieces_scores__,
284 pieces__,
285 pieces_offsets__,
286 matcher_type);
287 }
288
289 flatbuffers::Offset<TextEncoderConfig> CreateTextEncoderConfig(flatbuffers::FlatBufferBuilder &_fbb, const TextEncoderConfigT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
290
UnPack(const flatbuffers::resolver_function_t * _resolver)291 inline TextEncoderConfigT *TextEncoderConfig::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
292 auto _o = std::unique_ptr<TextEncoderConfigT>(new TextEncoderConfigT());
293 UnPackTo(_o.get(), _resolver);
294 return _o.release();
295 }
296
UnPackTo(TextEncoderConfigT * _o,const flatbuffers::resolver_function_t * _resolver)297 inline void TextEncoderConfig::UnPackTo(TextEncoderConfigT *_o, const flatbuffers::resolver_function_t *_resolver) const {
298 (void)_o;
299 (void)_resolver;
300 { auto _e = start_code(); _o->start_code = _e; }
301 { auto _e = end_code(); _o->end_code = _e; }
302 { auto _e = encoding_offset(); _o->encoding_offset = _e; }
303 { auto _e = unknown_code(); _o->unknown_code = _e; }
304 { auto _e = unknown_score(); _o->unknown_score = _e; }
305 { auto _e = normalization_charsmap(); if (_e) _o->normalization_charsmap = _e->str(); }
306 { auto _e = normalization_charsmap_values(); if (_e) _o->normalization_charsmap_values = _e->str(); }
307 { auto _e = add_dummy_prefix(); _o->add_dummy_prefix = _e; }
308 { auto _e = remove_extra_whitespaces(); _o->remove_extra_whitespaces = _e; }
309 { auto _e = escape_whitespaces(); _o->escape_whitespaces = _e; }
310 { auto _e = pieces_scores(); if (_e) { _o->pieces_scores.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->pieces_scores[_i] = _e->Get(_i); } } }
311 { auto _e = pieces(); if (_e) _o->pieces = _e->str(); }
312 { auto _e = pieces_offsets(); if (_e) { _o->pieces_offsets.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->pieces_offsets[_i] = _e->Get(_i); } } }
313 { auto _e = matcher_type(); _o->matcher_type = _e; }
314 }
315
Pack(flatbuffers::FlatBufferBuilder & _fbb,const TextEncoderConfigT * _o,const flatbuffers::rehasher_function_t * _rehasher)316 inline flatbuffers::Offset<TextEncoderConfig> TextEncoderConfig::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TextEncoderConfigT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
317 return CreateTextEncoderConfig(_fbb, _o, _rehasher);
318 }
319
CreateTextEncoderConfig(flatbuffers::FlatBufferBuilder & _fbb,const TextEncoderConfigT * _o,const flatbuffers::rehasher_function_t * _rehasher)320 inline flatbuffers::Offset<TextEncoderConfig> CreateTextEncoderConfig(flatbuffers::FlatBufferBuilder &_fbb, const TextEncoderConfigT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
321 (void)_rehasher;
322 (void)_o;
323 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TextEncoderConfigT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
324 auto _start_code = _o->start_code;
325 auto _end_code = _o->end_code;
326 auto _encoding_offset = _o->encoding_offset;
327 auto _unknown_code = _o->unknown_code;
328 auto _unknown_score = _o->unknown_score;
329 auto _normalization_charsmap = _o->normalization_charsmap.empty() ? 0 : _fbb.CreateString(_o->normalization_charsmap);
330 auto _normalization_charsmap_values = _o->normalization_charsmap_values.empty() ? 0 : _fbb.CreateString(_o->normalization_charsmap_values);
331 auto _add_dummy_prefix = _o->add_dummy_prefix;
332 auto _remove_extra_whitespaces = _o->remove_extra_whitespaces;
333 auto _escape_whitespaces = _o->escape_whitespaces;
334 auto _pieces_scores = _o->pieces_scores.size() ? _fbb.CreateVector(_o->pieces_scores) : 0;
335 auto _pieces = _o->pieces.empty() ? 0 : _fbb.CreateString(_o->pieces);
336 auto _pieces_offsets = _o->pieces_offsets.size() ? _fbb.CreateVector(_o->pieces_offsets) : 0;
337 auto _matcher_type = _o->matcher_type;
338 return libtextclassifier3::CreateTextEncoderConfig(
339 _fbb,
340 _start_code,
341 _end_code,
342 _encoding_offset,
343 _unknown_code,
344 _unknown_score,
345 _normalization_charsmap,
346 _normalization_charsmap_values,
347 _add_dummy_prefix,
348 _remove_extra_whitespaces,
349 _escape_whitespaces,
350 _pieces_scores,
351 _pieces,
352 _pieces_offsets,
353 _matcher_type);
354 }
355
356 } // namespace libtextclassifier3
357
358 #endif // FLATBUFFERS_GENERATED_TEXTENCODERCONFIG_LIBTEXTCLASSIFIER3_H_
359