1 // automatically generated by the FlatBuffers compiler, do not modify
2 
3 
4 #ifndef FLATBUFFERS_GENERATED_FLATBUFFERS_LIBTEXTCLASSIFIER3_H_
5 #define FLATBUFFERS_GENERATED_FLATBUFFERS_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 FlatbufferField;
19 struct FlatbufferFieldBuilder;
20 struct FlatbufferFieldT;
21 
22 struct FlatbufferFieldPath;
23 struct FlatbufferFieldPathBuilder;
24 struct FlatbufferFieldPathT;
25 
26 struct FlatbufferFieldT : public flatbuffers::NativeTable {
27   typedef FlatbufferField TableType;
28   std::string field_name{};
29   int32_t field_offset = 0;
30 };
31 
32 struct FlatbufferField FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
33   typedef FlatbufferFieldT NativeTableType;
34   typedef FlatbufferFieldBuilder Builder;
35   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
36     VT_FIELD_NAME = 4,
37     VT_FIELD_OFFSET = 6
38   };
field_nameFLATBUFFERS_FINAL_CLASS39   const flatbuffers::String *field_name() const {
40     return GetPointer<const flatbuffers::String *>(VT_FIELD_NAME);
41   }
field_offsetFLATBUFFERS_FINAL_CLASS42   int32_t field_offset() const {
43     return GetField<int32_t>(VT_FIELD_OFFSET, 0);
44   }
VerifyFLATBUFFERS_FINAL_CLASS45   bool Verify(flatbuffers::Verifier &verifier) const {
46     return VerifyTableStart(verifier) &&
47            VerifyOffset(verifier, VT_FIELD_NAME) &&
48            verifier.VerifyString(field_name()) &&
49            VerifyField<int32_t>(verifier, VT_FIELD_OFFSET, 4) &&
50            verifier.EndTable();
51   }
52   FlatbufferFieldT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
53   void UnPackTo(FlatbufferFieldT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
54   static flatbuffers::Offset<FlatbufferField> Pack(flatbuffers::FlatBufferBuilder &_fbb, const FlatbufferFieldT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
55 };
56 
57 struct FlatbufferFieldBuilder {
58   typedef FlatbufferField Table;
59   flatbuffers::FlatBufferBuilder &fbb_;
60   flatbuffers::uoffset_t start_;
add_field_nameFlatbufferFieldBuilder61   void add_field_name(flatbuffers::Offset<flatbuffers::String> field_name) {
62     fbb_.AddOffset(FlatbufferField::VT_FIELD_NAME, field_name);
63   }
add_field_offsetFlatbufferFieldBuilder64   void add_field_offset(int32_t field_offset) {
65     fbb_.AddElement<int32_t>(FlatbufferField::VT_FIELD_OFFSET, field_offset, 0);
66   }
FlatbufferFieldBuilderFlatbufferFieldBuilder67   explicit FlatbufferFieldBuilder(flatbuffers::FlatBufferBuilder &_fbb)
68         : fbb_(_fbb) {
69     start_ = fbb_.StartTable();
70   }
FinishFlatbufferFieldBuilder71   flatbuffers::Offset<FlatbufferField> Finish() {
72     const auto end = fbb_.EndTable(start_);
73     auto o = flatbuffers::Offset<FlatbufferField>(end);
74     return o;
75   }
76 };
77 
78 inline flatbuffers::Offset<FlatbufferField> CreateFlatbufferField(
79     flatbuffers::FlatBufferBuilder &_fbb,
80     flatbuffers::Offset<flatbuffers::String> field_name = 0,
81     int32_t field_offset = 0) {
82   FlatbufferFieldBuilder builder_(_fbb);
83   builder_.add_field_offset(field_offset);
84   builder_.add_field_name(field_name);
85   return builder_.Finish();
86 }
87 
88 inline flatbuffers::Offset<FlatbufferField> CreateFlatbufferFieldDirect(
89     flatbuffers::FlatBufferBuilder &_fbb,
90     const char *field_name = nullptr,
91     int32_t field_offset = 0) {
92   auto field_name__ = field_name ? _fbb.CreateSharedString(field_name) : 0;
93   return libtextclassifier3::CreateFlatbufferField(
94       _fbb,
95       field_name__,
96       field_offset);
97 }
98 
99 flatbuffers::Offset<FlatbufferField> CreateFlatbufferField(flatbuffers::FlatBufferBuilder &_fbb, const FlatbufferFieldT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
100 
101 struct FlatbufferFieldPathT : public flatbuffers::NativeTable {
102   typedef FlatbufferFieldPath TableType;
103   std::vector<std::unique_ptr<libtextclassifier3::FlatbufferFieldT>> field{};
104   FlatbufferFieldPathT() = default;
105   FlatbufferFieldPathT(const FlatbufferFieldPathT &o);
106   FlatbufferFieldPathT(FlatbufferFieldPathT&&) FLATBUFFERS_NOEXCEPT = default;
107   FlatbufferFieldPathT &operator=(FlatbufferFieldPathT o) FLATBUFFERS_NOEXCEPT;
108 };
109 
110 struct FlatbufferFieldPath FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
111   typedef FlatbufferFieldPathT NativeTableType;
112   typedef FlatbufferFieldPathBuilder Builder;
113   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
114     VT_FIELD = 4
115   };
fieldFLATBUFFERS_FINAL_CLASS116   const flatbuffers::Vector<flatbuffers::Offset<libtextclassifier3::FlatbufferField>> *field() const {
117     return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<libtextclassifier3::FlatbufferField>> *>(VT_FIELD);
118   }
VerifyFLATBUFFERS_FINAL_CLASS119   bool Verify(flatbuffers::Verifier &verifier) const {
120     return VerifyTableStart(verifier) &&
121            VerifyOffset(verifier, VT_FIELD) &&
122            verifier.VerifyVector(field()) &&
123            verifier.VerifyVectorOfTables(field()) &&
124            verifier.EndTable();
125   }
126   FlatbufferFieldPathT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
127   void UnPackTo(FlatbufferFieldPathT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
128   static flatbuffers::Offset<FlatbufferFieldPath> Pack(flatbuffers::FlatBufferBuilder &_fbb, const FlatbufferFieldPathT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
129 };
130 
131 struct FlatbufferFieldPathBuilder {
132   typedef FlatbufferFieldPath Table;
133   flatbuffers::FlatBufferBuilder &fbb_;
134   flatbuffers::uoffset_t start_;
add_fieldFlatbufferFieldPathBuilder135   void add_field(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<libtextclassifier3::FlatbufferField>>> field) {
136     fbb_.AddOffset(FlatbufferFieldPath::VT_FIELD, field);
137   }
FlatbufferFieldPathBuilderFlatbufferFieldPathBuilder138   explicit FlatbufferFieldPathBuilder(flatbuffers::FlatBufferBuilder &_fbb)
139         : fbb_(_fbb) {
140     start_ = fbb_.StartTable();
141   }
FinishFlatbufferFieldPathBuilder142   flatbuffers::Offset<FlatbufferFieldPath> Finish() {
143     const auto end = fbb_.EndTable(start_);
144     auto o = flatbuffers::Offset<FlatbufferFieldPath>(end);
145     return o;
146   }
147 };
148 
149 inline flatbuffers::Offset<FlatbufferFieldPath> CreateFlatbufferFieldPath(
150     flatbuffers::FlatBufferBuilder &_fbb,
151     flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<libtextclassifier3::FlatbufferField>>> field = 0) {
152   FlatbufferFieldPathBuilder builder_(_fbb);
153   builder_.add_field(field);
154   return builder_.Finish();
155 }
156 
157 inline flatbuffers::Offset<FlatbufferFieldPath> CreateFlatbufferFieldPathDirect(
158     flatbuffers::FlatBufferBuilder &_fbb,
159     const std::vector<flatbuffers::Offset<libtextclassifier3::FlatbufferField>> *field = nullptr) {
160   auto field__ = field ? _fbb.CreateVector<flatbuffers::Offset<libtextclassifier3::FlatbufferField>>(*field) : 0;
161   return libtextclassifier3::CreateFlatbufferFieldPath(
162       _fbb,
163       field__);
164 }
165 
166 flatbuffers::Offset<FlatbufferFieldPath> CreateFlatbufferFieldPath(flatbuffers::FlatBufferBuilder &_fbb, const FlatbufferFieldPathT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
167 
UnPack(const flatbuffers::resolver_function_t * _resolver)168 inline FlatbufferFieldT *FlatbufferField::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
169   auto _o = std::unique_ptr<FlatbufferFieldT>(new FlatbufferFieldT());
170   UnPackTo(_o.get(), _resolver);
171   return _o.release();
172 }
173 
UnPackTo(FlatbufferFieldT * _o,const flatbuffers::resolver_function_t * _resolver)174 inline void FlatbufferField::UnPackTo(FlatbufferFieldT *_o, const flatbuffers::resolver_function_t *_resolver) const {
175   (void)_o;
176   (void)_resolver;
177   { auto _e = field_name(); if (_e) _o->field_name = _e->str(); }
178   { auto _e = field_offset(); _o->field_offset = _e; }
179 }
180 
Pack(flatbuffers::FlatBufferBuilder & _fbb,const FlatbufferFieldT * _o,const flatbuffers::rehasher_function_t * _rehasher)181 inline flatbuffers::Offset<FlatbufferField> FlatbufferField::Pack(flatbuffers::FlatBufferBuilder &_fbb, const FlatbufferFieldT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
182   return CreateFlatbufferField(_fbb, _o, _rehasher);
183 }
184 
CreateFlatbufferField(flatbuffers::FlatBufferBuilder & _fbb,const FlatbufferFieldT * _o,const flatbuffers::rehasher_function_t * _rehasher)185 inline flatbuffers::Offset<FlatbufferField> CreateFlatbufferField(flatbuffers::FlatBufferBuilder &_fbb, const FlatbufferFieldT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
186   (void)_rehasher;
187   (void)_o;
188   struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const FlatbufferFieldT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
189   auto _field_name = _o->field_name.empty() ? 0 : _fbb.CreateSharedString(_o->field_name);
190   auto _field_offset = _o->field_offset;
191   return libtextclassifier3::CreateFlatbufferField(
192       _fbb,
193       _field_name,
194       _field_offset);
195 }
196 
FlatbufferFieldPathT(const FlatbufferFieldPathT & o)197 inline FlatbufferFieldPathT::FlatbufferFieldPathT(const FlatbufferFieldPathT &o) {
198   field.reserve(o.field.size());
199   for (const auto &field_ : o.field) { field.emplace_back((field_) ? new libtextclassifier3::FlatbufferFieldT(*field_) : nullptr); }
200 }
201 
202 inline FlatbufferFieldPathT &FlatbufferFieldPathT::operator=(FlatbufferFieldPathT o) FLATBUFFERS_NOEXCEPT {
203   std::swap(field, o.field);
204   return *this;
205 }
206 
UnPack(const flatbuffers::resolver_function_t * _resolver)207 inline FlatbufferFieldPathT *FlatbufferFieldPath::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
208   auto _o = std::unique_ptr<FlatbufferFieldPathT>(new FlatbufferFieldPathT());
209   UnPackTo(_o.get(), _resolver);
210   return _o.release();
211 }
212 
UnPackTo(FlatbufferFieldPathT * _o,const flatbuffers::resolver_function_t * _resolver)213 inline void FlatbufferFieldPath::UnPackTo(FlatbufferFieldPathT *_o, const flatbuffers::resolver_function_t *_resolver) const {
214   (void)_o;
215   (void)_resolver;
216   { auto _e = field(); if (_e) { _o->field.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->field[_i] = std::unique_ptr<libtextclassifier3::FlatbufferFieldT>(_e->Get(_i)->UnPack(_resolver)); } } }
217 }
218 
Pack(flatbuffers::FlatBufferBuilder & _fbb,const FlatbufferFieldPathT * _o,const flatbuffers::rehasher_function_t * _rehasher)219 inline flatbuffers::Offset<FlatbufferFieldPath> FlatbufferFieldPath::Pack(flatbuffers::FlatBufferBuilder &_fbb, const FlatbufferFieldPathT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
220   return CreateFlatbufferFieldPath(_fbb, _o, _rehasher);
221 }
222 
CreateFlatbufferFieldPath(flatbuffers::FlatBufferBuilder & _fbb,const FlatbufferFieldPathT * _o,const flatbuffers::rehasher_function_t * _rehasher)223 inline flatbuffers::Offset<FlatbufferFieldPath> CreateFlatbufferFieldPath(flatbuffers::FlatBufferBuilder &_fbb, const FlatbufferFieldPathT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
224   (void)_rehasher;
225   (void)_o;
226   struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const FlatbufferFieldPathT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
227   auto _field = _o->field.size() ? _fbb.CreateVector<flatbuffers::Offset<libtextclassifier3::FlatbufferField>> (_o->field.size(), [](size_t i, _VectorArgs *__va) { return CreateFlatbufferField(*__va->__fbb, __va->__o->field[i].get(), __va->__rehasher); }, &_va ) : 0;
228   return libtextclassifier3::CreateFlatbufferFieldPath(
229       _fbb,
230       _field);
231 }
232 
233 }  // namespace libtextclassifier3
234 
235 #endif  // FLATBUFFERS_GENERATED_FLATBUFFERS_LIBTEXTCLASSIFIER3_H_
236