1 // automatically generated by the FlatBuffers compiler, do not modify
2 
3 
4 #ifndef FLATBUFFERS_GENERATED_RESOURCES_LIBTEXTCLASSIFIER3_H_
5 #define FLATBUFFERS_GENERATED_RESOURCES_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 #include "utils/i18n/language-tag_generated.h"
17 #include "utils/zlib/buffer_generated.h"
18 
19 namespace libtextclassifier3 {
20 
21 struct Resource;
22 struct ResourceBuilder;
23 struct ResourceT;
24 
25 struct ResourceEntry;
26 struct ResourceEntryBuilder;
27 struct ResourceEntryT;
28 
29 struct ResourcePool;
30 struct ResourcePoolBuilder;
31 struct ResourcePoolT;
32 
33 struct ResourceT : public flatbuffers::NativeTable {
34   typedef Resource TableType;
35   std::vector<int32_t> locale{};
36   std::string content{};
37 };
38 
39 struct Resource FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
40   typedef ResourceT NativeTableType;
41   typedef ResourceBuilder Builder;
42   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
43     VT_LOCALE = 4,
44     VT_CONTENT = 6
45   };
localeFLATBUFFERS_FINAL_CLASS46   const flatbuffers::Vector<int32_t> *locale() const {
47     return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_LOCALE);
48   }
contentFLATBUFFERS_FINAL_CLASS49   const flatbuffers::String *content() const {
50     return GetPointer<const flatbuffers::String *>(VT_CONTENT);
51   }
VerifyFLATBUFFERS_FINAL_CLASS52   bool Verify(flatbuffers::Verifier &verifier) const {
53     return VerifyTableStart(verifier) &&
54            VerifyOffset(verifier, VT_LOCALE) &&
55            verifier.VerifyVector(locale()) &&
56            VerifyOffset(verifier, VT_CONTENT) &&
57            verifier.VerifyString(content()) &&
58            verifier.EndTable();
59   }
60   ResourceT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
61   void UnPackTo(ResourceT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
62   static flatbuffers::Offset<Resource> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ResourceT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
63 };
64 
65 struct ResourceBuilder {
66   typedef Resource Table;
67   flatbuffers::FlatBufferBuilder &fbb_;
68   flatbuffers::uoffset_t start_;
add_localeResourceBuilder69   void add_locale(flatbuffers::Offset<flatbuffers::Vector<int32_t>> locale) {
70     fbb_.AddOffset(Resource::VT_LOCALE, locale);
71   }
add_contentResourceBuilder72   void add_content(flatbuffers::Offset<flatbuffers::String> content) {
73     fbb_.AddOffset(Resource::VT_CONTENT, content);
74   }
ResourceBuilderResourceBuilder75   explicit ResourceBuilder(flatbuffers::FlatBufferBuilder &_fbb)
76         : fbb_(_fbb) {
77     start_ = fbb_.StartTable();
78   }
FinishResourceBuilder79   flatbuffers::Offset<Resource> Finish() {
80     const auto end = fbb_.EndTable(start_);
81     auto o = flatbuffers::Offset<Resource>(end);
82     return o;
83   }
84 };
85 
86 inline flatbuffers::Offset<Resource> CreateResource(
87     flatbuffers::FlatBufferBuilder &_fbb,
88     flatbuffers::Offset<flatbuffers::Vector<int32_t>> locale = 0,
89     flatbuffers::Offset<flatbuffers::String> content = 0) {
90   ResourceBuilder builder_(_fbb);
91   builder_.add_content(content);
92   builder_.add_locale(locale);
93   return builder_.Finish();
94 }
95 
96 inline flatbuffers::Offset<Resource> CreateResourceDirect(
97     flatbuffers::FlatBufferBuilder &_fbb,
98     const std::vector<int32_t> *locale = nullptr,
99     const char *content = nullptr) {
100   auto locale__ = locale ? _fbb.CreateVector<int32_t>(*locale) : 0;
101   auto content__ = content ? _fbb.CreateSharedString(content) : 0;
102   return libtextclassifier3::CreateResource(
103       _fbb,
104       locale__,
105       content__);
106 }
107 
108 flatbuffers::Offset<Resource> CreateResource(flatbuffers::FlatBufferBuilder &_fbb, const ResourceT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
109 
110 struct ResourceEntryT : public flatbuffers::NativeTable {
111   typedef ResourceEntry TableType;
112   std::string name{};
113   std::vector<std::unique_ptr<libtextclassifier3::ResourceT>> resource{};
114   ResourceEntryT() = default;
115   ResourceEntryT(const ResourceEntryT &o);
116   ResourceEntryT(ResourceEntryT&&) FLATBUFFERS_NOEXCEPT = default;
117   ResourceEntryT &operator=(ResourceEntryT o) FLATBUFFERS_NOEXCEPT;
118 };
119 
120 struct ResourceEntry FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
121   typedef ResourceEntryT NativeTableType;
122   typedef ResourceEntryBuilder Builder;
123   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
124     VT_NAME = 4,
125     VT_RESOURCE = 6
126   };
nameFLATBUFFERS_FINAL_CLASS127   const flatbuffers::String *name() const {
128     return GetPointer<const flatbuffers::String *>(VT_NAME);
129   }
KeyCompareLessThanFLATBUFFERS_FINAL_CLASS130   bool KeyCompareLessThan(const ResourceEntry *o) const {
131     return *name() < *o->name();
132   }
KeyCompareWithValueFLATBUFFERS_FINAL_CLASS133   int KeyCompareWithValue(const char *_name) const {
134     return strcmp(name()->c_str(), _name);
135   }
resourceFLATBUFFERS_FINAL_CLASS136   const flatbuffers::Vector<flatbuffers::Offset<libtextclassifier3::Resource>> *resource() const {
137     return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<libtextclassifier3::Resource>> *>(VT_RESOURCE);
138   }
VerifyFLATBUFFERS_FINAL_CLASS139   bool Verify(flatbuffers::Verifier &verifier) const {
140     return VerifyTableStart(verifier) &&
141            VerifyOffsetRequired(verifier, VT_NAME) &&
142            verifier.VerifyString(name()) &&
143            VerifyOffset(verifier, VT_RESOURCE) &&
144            verifier.VerifyVector(resource()) &&
145            verifier.VerifyVectorOfTables(resource()) &&
146            verifier.EndTable();
147   }
148   ResourceEntryT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
149   void UnPackTo(ResourceEntryT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
150   static flatbuffers::Offset<ResourceEntry> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ResourceEntryT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
151 };
152 
153 struct ResourceEntryBuilder {
154   typedef ResourceEntry Table;
155   flatbuffers::FlatBufferBuilder &fbb_;
156   flatbuffers::uoffset_t start_;
add_nameResourceEntryBuilder157   void add_name(flatbuffers::Offset<flatbuffers::String> name) {
158     fbb_.AddOffset(ResourceEntry::VT_NAME, name);
159   }
add_resourceResourceEntryBuilder160   void add_resource(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<libtextclassifier3::Resource>>> resource) {
161     fbb_.AddOffset(ResourceEntry::VT_RESOURCE, resource);
162   }
ResourceEntryBuilderResourceEntryBuilder163   explicit ResourceEntryBuilder(flatbuffers::FlatBufferBuilder &_fbb)
164         : fbb_(_fbb) {
165     start_ = fbb_.StartTable();
166   }
FinishResourceEntryBuilder167   flatbuffers::Offset<ResourceEntry> Finish() {
168     const auto end = fbb_.EndTable(start_);
169     auto o = flatbuffers::Offset<ResourceEntry>(end);
170     fbb_.Required(o, ResourceEntry::VT_NAME);
171     return o;
172   }
173 };
174 
175 inline flatbuffers::Offset<ResourceEntry> CreateResourceEntry(
176     flatbuffers::FlatBufferBuilder &_fbb,
177     flatbuffers::Offset<flatbuffers::String> name = 0,
178     flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<libtextclassifier3::Resource>>> resource = 0) {
179   ResourceEntryBuilder builder_(_fbb);
180   builder_.add_resource(resource);
181   builder_.add_name(name);
182   return builder_.Finish();
183 }
184 
185 inline flatbuffers::Offset<ResourceEntry> CreateResourceEntryDirect(
186     flatbuffers::FlatBufferBuilder &_fbb,
187     const char *name = nullptr,
188     const std::vector<flatbuffers::Offset<libtextclassifier3::Resource>> *resource = nullptr) {
189   auto name__ = name ? _fbb.CreateSharedString(name) : 0;
190   auto resource__ = resource ? _fbb.CreateVector<flatbuffers::Offset<libtextclassifier3::Resource>>(*resource) : 0;
191   return libtextclassifier3::CreateResourceEntry(
192       _fbb,
193       name__,
194       resource__);
195 }
196 
197 flatbuffers::Offset<ResourceEntry> CreateResourceEntry(flatbuffers::FlatBufferBuilder &_fbb, const ResourceEntryT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
198 
199 struct ResourcePoolT : public flatbuffers::NativeTable {
200   typedef ResourcePool TableType;
201   std::vector<std::unique_ptr<libtextclassifier3::LanguageTagT>> locale{};
202   std::vector<std::unique_ptr<libtextclassifier3::ResourceEntryT>> resource_entry{};
203   ResourcePoolT() = default;
204   ResourcePoolT(const ResourcePoolT &o);
205   ResourcePoolT(ResourcePoolT&&) FLATBUFFERS_NOEXCEPT = default;
206   ResourcePoolT &operator=(ResourcePoolT o) FLATBUFFERS_NOEXCEPT;
207 };
208 
209 struct ResourcePool FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
210   typedef ResourcePoolT NativeTableType;
211   typedef ResourcePoolBuilder Builder;
212   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
213     VT_LOCALE = 4,
214     VT_RESOURCE_ENTRY = 6
215   };
localeFLATBUFFERS_FINAL_CLASS216   const flatbuffers::Vector<flatbuffers::Offset<libtextclassifier3::LanguageTag>> *locale() const {
217     return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<libtextclassifier3::LanguageTag>> *>(VT_LOCALE);
218   }
resource_entryFLATBUFFERS_FINAL_CLASS219   const flatbuffers::Vector<flatbuffers::Offset<libtextclassifier3::ResourceEntry>> *resource_entry() const {
220     return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<libtextclassifier3::ResourceEntry>> *>(VT_RESOURCE_ENTRY);
221   }
VerifyFLATBUFFERS_FINAL_CLASS222   bool Verify(flatbuffers::Verifier &verifier) const {
223     return VerifyTableStart(verifier) &&
224            VerifyOffset(verifier, VT_LOCALE) &&
225            verifier.VerifyVector(locale()) &&
226            verifier.VerifyVectorOfTables(locale()) &&
227            VerifyOffset(verifier, VT_RESOURCE_ENTRY) &&
228            verifier.VerifyVector(resource_entry()) &&
229            verifier.VerifyVectorOfTables(resource_entry()) &&
230            verifier.EndTable();
231   }
232   ResourcePoolT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
233   void UnPackTo(ResourcePoolT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
234   static flatbuffers::Offset<ResourcePool> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ResourcePoolT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
235 };
236 
237 struct ResourcePoolBuilder {
238   typedef ResourcePool Table;
239   flatbuffers::FlatBufferBuilder &fbb_;
240   flatbuffers::uoffset_t start_;
add_localeResourcePoolBuilder241   void add_locale(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<libtextclassifier3::LanguageTag>>> locale) {
242     fbb_.AddOffset(ResourcePool::VT_LOCALE, locale);
243   }
add_resource_entryResourcePoolBuilder244   void add_resource_entry(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<libtextclassifier3::ResourceEntry>>> resource_entry) {
245     fbb_.AddOffset(ResourcePool::VT_RESOURCE_ENTRY, resource_entry);
246   }
ResourcePoolBuilderResourcePoolBuilder247   explicit ResourcePoolBuilder(flatbuffers::FlatBufferBuilder &_fbb)
248         : fbb_(_fbb) {
249     start_ = fbb_.StartTable();
250   }
FinishResourcePoolBuilder251   flatbuffers::Offset<ResourcePool> Finish() {
252     const auto end = fbb_.EndTable(start_);
253     auto o = flatbuffers::Offset<ResourcePool>(end);
254     return o;
255   }
256 };
257 
258 inline flatbuffers::Offset<ResourcePool> CreateResourcePool(
259     flatbuffers::FlatBufferBuilder &_fbb,
260     flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<libtextclassifier3::LanguageTag>>> locale = 0,
261     flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<libtextclassifier3::ResourceEntry>>> resource_entry = 0) {
262   ResourcePoolBuilder builder_(_fbb);
263   builder_.add_resource_entry(resource_entry);
264   builder_.add_locale(locale);
265   return builder_.Finish();
266 }
267 
268 inline flatbuffers::Offset<ResourcePool> CreateResourcePoolDirect(
269     flatbuffers::FlatBufferBuilder &_fbb,
270     const std::vector<flatbuffers::Offset<libtextclassifier3::LanguageTag>> *locale = nullptr,
271     std::vector<flatbuffers::Offset<libtextclassifier3::ResourceEntry>> *resource_entry = nullptr) {
272   auto locale__ = locale ? _fbb.CreateVector<flatbuffers::Offset<libtextclassifier3::LanguageTag>>(*locale) : 0;
273   auto resource_entry__ = resource_entry ? _fbb.CreateVectorOfSortedTables<libtextclassifier3::ResourceEntry>(resource_entry) : 0;
274   return libtextclassifier3::CreateResourcePool(
275       _fbb,
276       locale__,
277       resource_entry__);
278 }
279 
280 flatbuffers::Offset<ResourcePool> CreateResourcePool(flatbuffers::FlatBufferBuilder &_fbb, const ResourcePoolT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
281 
UnPack(const flatbuffers::resolver_function_t * _resolver)282 inline ResourceT *Resource::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
283   auto _o = std::unique_ptr<ResourceT>(new ResourceT());
284   UnPackTo(_o.get(), _resolver);
285   return _o.release();
286 }
287 
UnPackTo(ResourceT * _o,const flatbuffers::resolver_function_t * _resolver)288 inline void Resource::UnPackTo(ResourceT *_o, const flatbuffers::resolver_function_t *_resolver) const {
289   (void)_o;
290   (void)_resolver;
291   { auto _e = locale(); if (_e) { _o->locale.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->locale[_i] = _e->Get(_i); } } }
292   { auto _e = content(); if (_e) _o->content = _e->str(); }
293 }
294 
Pack(flatbuffers::FlatBufferBuilder & _fbb,const ResourceT * _o,const flatbuffers::rehasher_function_t * _rehasher)295 inline flatbuffers::Offset<Resource> Resource::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ResourceT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
296   return CreateResource(_fbb, _o, _rehasher);
297 }
298 
CreateResource(flatbuffers::FlatBufferBuilder & _fbb,const ResourceT * _o,const flatbuffers::rehasher_function_t * _rehasher)299 inline flatbuffers::Offset<Resource> CreateResource(flatbuffers::FlatBufferBuilder &_fbb, const ResourceT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
300   (void)_rehasher;
301   (void)_o;
302   struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ResourceT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
303   auto _locale = _o->locale.size() ? _fbb.CreateVector(_o->locale) : 0;
304   auto _content = _o->content.empty() ? 0 : _fbb.CreateSharedString(_o->content);
305   return libtextclassifier3::CreateResource(
306       _fbb,
307       _locale,
308       _content);
309 }
310 
ResourceEntryT(const ResourceEntryT & o)311 inline ResourceEntryT::ResourceEntryT(const ResourceEntryT &o)
312       : name(o.name) {
313   resource.reserve(o.resource.size());
314   for (const auto &resource_ : o.resource) { resource.emplace_back((resource_) ? new libtextclassifier3::ResourceT(*resource_) : nullptr); }
315 }
316 
317 inline ResourceEntryT &ResourceEntryT::operator=(ResourceEntryT o) FLATBUFFERS_NOEXCEPT {
318   std::swap(name, o.name);
319   std::swap(resource, o.resource);
320   return *this;
321 }
322 
UnPack(const flatbuffers::resolver_function_t * _resolver)323 inline ResourceEntryT *ResourceEntry::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
324   auto _o = std::unique_ptr<ResourceEntryT>(new ResourceEntryT());
325   UnPackTo(_o.get(), _resolver);
326   return _o.release();
327 }
328 
UnPackTo(ResourceEntryT * _o,const flatbuffers::resolver_function_t * _resolver)329 inline void ResourceEntry::UnPackTo(ResourceEntryT *_o, const flatbuffers::resolver_function_t *_resolver) const {
330   (void)_o;
331   (void)_resolver;
332   { auto _e = name(); if (_e) _o->name = _e->str(); }
333   { auto _e = resource(); if (_e) { _o->resource.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->resource[_i] = std::unique_ptr<libtextclassifier3::ResourceT>(_e->Get(_i)->UnPack(_resolver)); } } }
334 }
335 
Pack(flatbuffers::FlatBufferBuilder & _fbb,const ResourceEntryT * _o,const flatbuffers::rehasher_function_t * _rehasher)336 inline flatbuffers::Offset<ResourceEntry> ResourceEntry::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ResourceEntryT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
337   return CreateResourceEntry(_fbb, _o, _rehasher);
338 }
339 
CreateResourceEntry(flatbuffers::FlatBufferBuilder & _fbb,const ResourceEntryT * _o,const flatbuffers::rehasher_function_t * _rehasher)340 inline flatbuffers::Offset<ResourceEntry> CreateResourceEntry(flatbuffers::FlatBufferBuilder &_fbb, const ResourceEntryT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
341   (void)_rehasher;
342   (void)_o;
343   struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ResourceEntryT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
344   auto _name = _fbb.CreateSharedString(_o->name);
345   auto _resource = _o->resource.size() ? _fbb.CreateVector<flatbuffers::Offset<libtextclassifier3::Resource>> (_o->resource.size(), [](size_t i, _VectorArgs *__va) { return CreateResource(*__va->__fbb, __va->__o->resource[i].get(), __va->__rehasher); }, &_va ) : 0;
346   return libtextclassifier3::CreateResourceEntry(
347       _fbb,
348       _name,
349       _resource);
350 }
351 
ResourcePoolT(const ResourcePoolT & o)352 inline ResourcePoolT::ResourcePoolT(const ResourcePoolT &o) {
353   locale.reserve(o.locale.size());
354   for (const auto &locale_ : o.locale) { locale.emplace_back((locale_) ? new libtextclassifier3::LanguageTagT(*locale_) : nullptr); }
355   resource_entry.reserve(o.resource_entry.size());
356   for (const auto &resource_entry_ : o.resource_entry) { resource_entry.emplace_back((resource_entry_) ? new libtextclassifier3::ResourceEntryT(*resource_entry_) : nullptr); }
357 }
358 
359 inline ResourcePoolT &ResourcePoolT::operator=(ResourcePoolT o) FLATBUFFERS_NOEXCEPT {
360   std::swap(locale, o.locale);
361   std::swap(resource_entry, o.resource_entry);
362   return *this;
363 }
364 
UnPack(const flatbuffers::resolver_function_t * _resolver)365 inline ResourcePoolT *ResourcePool::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
366   auto _o = std::unique_ptr<ResourcePoolT>(new ResourcePoolT());
367   UnPackTo(_o.get(), _resolver);
368   return _o.release();
369 }
370 
UnPackTo(ResourcePoolT * _o,const flatbuffers::resolver_function_t * _resolver)371 inline void ResourcePool::UnPackTo(ResourcePoolT *_o, const flatbuffers::resolver_function_t *_resolver) const {
372   (void)_o;
373   (void)_resolver;
374   { auto _e = locale(); if (_e) { _o->locale.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->locale[_i] = std::unique_ptr<libtextclassifier3::LanguageTagT>(_e->Get(_i)->UnPack(_resolver)); } } }
375   { auto _e = resource_entry(); if (_e) { _o->resource_entry.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->resource_entry[_i] = std::unique_ptr<libtextclassifier3::ResourceEntryT>(_e->Get(_i)->UnPack(_resolver)); } } }
376 }
377 
Pack(flatbuffers::FlatBufferBuilder & _fbb,const ResourcePoolT * _o,const flatbuffers::rehasher_function_t * _rehasher)378 inline flatbuffers::Offset<ResourcePool> ResourcePool::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ResourcePoolT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
379   return CreateResourcePool(_fbb, _o, _rehasher);
380 }
381 
CreateResourcePool(flatbuffers::FlatBufferBuilder & _fbb,const ResourcePoolT * _o,const flatbuffers::rehasher_function_t * _rehasher)382 inline flatbuffers::Offset<ResourcePool> CreateResourcePool(flatbuffers::FlatBufferBuilder &_fbb, const ResourcePoolT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
383   (void)_rehasher;
384   (void)_o;
385   struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ResourcePoolT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
386   auto _locale = _o->locale.size() ? _fbb.CreateVector<flatbuffers::Offset<libtextclassifier3::LanguageTag>> (_o->locale.size(), [](size_t i, _VectorArgs *__va) { return CreateLanguageTag(*__va->__fbb, __va->__o->locale[i].get(), __va->__rehasher); }, &_va ) : 0;
387   auto _resource_entry = _o->resource_entry.size() ? _fbb.CreateVector<flatbuffers::Offset<libtextclassifier3::ResourceEntry>> (_o->resource_entry.size(), [](size_t i, _VectorArgs *__va) { return CreateResourceEntry(*__va->__fbb, __va->__o->resource_entry[i].get(), __va->__rehasher); }, &_va ) : 0;
388   return libtextclassifier3::CreateResourcePool(
389       _fbb,
390       _locale,
391       _resource_entry);
392 }
393 
394 }  // namespace libtextclassifier3
395 
396 #endif  // FLATBUFFERS_GENERATED_RESOURCES_LIBTEXTCLASSIFIER3_H_
397