1 // automatically generated by the FlatBuffers compiler, do not modify
2
3
4 #ifndef FLATBUFFERS_GENERATED_LANGUAGETAG_LIBTEXTCLASSIFIER3_H_
5 #define FLATBUFFERS_GENERATED_LANGUAGETAG_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 LanguageTag;
19 struct LanguageTagBuilder;
20 struct LanguageTagT;
21
22 struct LanguageTagT : public flatbuffers::NativeTable {
23 typedef LanguageTag TableType;
24 std::string language{};
25 std::string script{};
26 std::string region{};
27 };
28
29 struct LanguageTag FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
30 typedef LanguageTagT NativeTableType;
31 typedef LanguageTagBuilder Builder;
32 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
33 VT_LANGUAGE = 4,
34 VT_SCRIPT = 6,
35 VT_REGION = 8
36 };
languageFLATBUFFERS_FINAL_CLASS37 const flatbuffers::String *language() const {
38 return GetPointer<const flatbuffers::String *>(VT_LANGUAGE);
39 }
scriptFLATBUFFERS_FINAL_CLASS40 const flatbuffers::String *script() const {
41 return GetPointer<const flatbuffers::String *>(VT_SCRIPT);
42 }
regionFLATBUFFERS_FINAL_CLASS43 const flatbuffers::String *region() const {
44 return GetPointer<const flatbuffers::String *>(VT_REGION);
45 }
VerifyFLATBUFFERS_FINAL_CLASS46 bool Verify(flatbuffers::Verifier &verifier) const {
47 return VerifyTableStart(verifier) &&
48 VerifyOffset(verifier, VT_LANGUAGE) &&
49 verifier.VerifyString(language()) &&
50 VerifyOffset(verifier, VT_SCRIPT) &&
51 verifier.VerifyString(script()) &&
52 VerifyOffset(verifier, VT_REGION) &&
53 verifier.VerifyString(region()) &&
54 verifier.EndTable();
55 }
56 LanguageTagT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
57 void UnPackTo(LanguageTagT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
58 static flatbuffers::Offset<LanguageTag> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LanguageTagT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
59 };
60
61 struct LanguageTagBuilder {
62 typedef LanguageTag Table;
63 flatbuffers::FlatBufferBuilder &fbb_;
64 flatbuffers::uoffset_t start_;
add_languageLanguageTagBuilder65 void add_language(flatbuffers::Offset<flatbuffers::String> language) {
66 fbb_.AddOffset(LanguageTag::VT_LANGUAGE, language);
67 }
add_scriptLanguageTagBuilder68 void add_script(flatbuffers::Offset<flatbuffers::String> script) {
69 fbb_.AddOffset(LanguageTag::VT_SCRIPT, script);
70 }
add_regionLanguageTagBuilder71 void add_region(flatbuffers::Offset<flatbuffers::String> region) {
72 fbb_.AddOffset(LanguageTag::VT_REGION, region);
73 }
LanguageTagBuilderLanguageTagBuilder74 explicit LanguageTagBuilder(flatbuffers::FlatBufferBuilder &_fbb)
75 : fbb_(_fbb) {
76 start_ = fbb_.StartTable();
77 }
FinishLanguageTagBuilder78 flatbuffers::Offset<LanguageTag> Finish() {
79 const auto end = fbb_.EndTable(start_);
80 auto o = flatbuffers::Offset<LanguageTag>(end);
81 return o;
82 }
83 };
84
85 inline flatbuffers::Offset<LanguageTag> CreateLanguageTag(
86 flatbuffers::FlatBufferBuilder &_fbb,
87 flatbuffers::Offset<flatbuffers::String> language = 0,
88 flatbuffers::Offset<flatbuffers::String> script = 0,
89 flatbuffers::Offset<flatbuffers::String> region = 0) {
90 LanguageTagBuilder builder_(_fbb);
91 builder_.add_region(region);
92 builder_.add_script(script);
93 builder_.add_language(language);
94 return builder_.Finish();
95 }
96
97 inline flatbuffers::Offset<LanguageTag> CreateLanguageTagDirect(
98 flatbuffers::FlatBufferBuilder &_fbb,
99 const char *language = nullptr,
100 const char *script = nullptr,
101 const char *region = nullptr) {
102 auto language__ = language ? _fbb.CreateSharedString(language) : 0;
103 auto script__ = script ? _fbb.CreateSharedString(script) : 0;
104 auto region__ = region ? _fbb.CreateSharedString(region) : 0;
105 return libtextclassifier3::CreateLanguageTag(
106 _fbb,
107 language__,
108 script__,
109 region__);
110 }
111
112 flatbuffers::Offset<LanguageTag> CreateLanguageTag(flatbuffers::FlatBufferBuilder &_fbb, const LanguageTagT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
113
UnPack(const flatbuffers::resolver_function_t * _resolver)114 inline LanguageTagT *LanguageTag::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
115 auto _o = std::unique_ptr<LanguageTagT>(new LanguageTagT());
116 UnPackTo(_o.get(), _resolver);
117 return _o.release();
118 }
119
UnPackTo(LanguageTagT * _o,const flatbuffers::resolver_function_t * _resolver)120 inline void LanguageTag::UnPackTo(LanguageTagT *_o, const flatbuffers::resolver_function_t *_resolver) const {
121 (void)_o;
122 (void)_resolver;
123 { auto _e = language(); if (_e) _o->language = _e->str(); }
124 { auto _e = script(); if (_e) _o->script = _e->str(); }
125 { auto _e = region(); if (_e) _o->region = _e->str(); }
126 }
127
Pack(flatbuffers::FlatBufferBuilder & _fbb,const LanguageTagT * _o,const flatbuffers::rehasher_function_t * _rehasher)128 inline flatbuffers::Offset<LanguageTag> LanguageTag::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LanguageTagT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
129 return CreateLanguageTag(_fbb, _o, _rehasher);
130 }
131
CreateLanguageTag(flatbuffers::FlatBufferBuilder & _fbb,const LanguageTagT * _o,const flatbuffers::rehasher_function_t * _rehasher)132 inline flatbuffers::Offset<LanguageTag> CreateLanguageTag(flatbuffers::FlatBufferBuilder &_fbb, const LanguageTagT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
133 (void)_rehasher;
134 (void)_o;
135 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LanguageTagT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
136 auto _language = _o->language.empty() ? 0 : _fbb.CreateSharedString(_o->language);
137 auto _script = _o->script.empty() ? 0 : _fbb.CreateSharedString(_o->script);
138 auto _region = _o->region.empty() ? 0 : _fbb.CreateSharedString(_o->region);
139 return libtextclassifier3::CreateLanguageTag(
140 _fbb,
141 _language,
142 _script,
143 _region);
144 }
145
146 } // namespace libtextclassifier3
147
148 #endif // FLATBUFFERS_GENERATED_LANGUAGETAG_LIBTEXTCLASSIFIER3_H_
149