1 // automatically generated by the FlatBuffers compiler, do not modify
2
3
4 #ifndef FLATBUFFERS_GENERATED_SCHEMA_TFLITE_H_
5 #define FLATBUFFERS_GENERATED_SCHEMA_TFLITE_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 tflite {
17
18 struct CustomQuantization;
19 struct CustomQuantizationBuilder;
20 struct CustomQuantizationT;
21
22 struct QuantizationParameters;
23 struct QuantizationParametersBuilder;
24 struct QuantizationParametersT;
25
26 struct Int32Vector;
27 struct Int32VectorBuilder;
28 struct Int32VectorT;
29
30 struct Uint16Vector;
31 struct Uint16VectorBuilder;
32 struct Uint16VectorT;
33
34 struct Uint8Vector;
35 struct Uint8VectorBuilder;
36 struct Uint8VectorT;
37
38 struct DimensionMetadata;
39 struct DimensionMetadataBuilder;
40 struct DimensionMetadataT;
41
42 struct SparsityParameters;
43 struct SparsityParametersBuilder;
44 struct SparsityParametersT;
45
46 struct VariantSubType;
47 struct VariantSubTypeBuilder;
48 struct VariantSubTypeT;
49
50 struct Tensor;
51 struct TensorBuilder;
52 struct TensorT;
53
54 struct Conv2DOptions;
55 struct Conv2DOptionsBuilder;
56 struct Conv2DOptionsT;
57
58 struct Conv3DOptions;
59 struct Conv3DOptionsBuilder;
60 struct Conv3DOptionsT;
61
62 struct Pool2DOptions;
63 struct Pool2DOptionsBuilder;
64 struct Pool2DOptionsT;
65
66 struct DepthwiseConv2DOptions;
67 struct DepthwiseConv2DOptionsBuilder;
68 struct DepthwiseConv2DOptionsT;
69
70 struct ConcatEmbeddingsOptions;
71 struct ConcatEmbeddingsOptionsBuilder;
72 struct ConcatEmbeddingsOptionsT;
73
74 struct LSHProjectionOptions;
75 struct LSHProjectionOptionsBuilder;
76 struct LSHProjectionOptionsT;
77
78 struct SVDFOptions;
79 struct SVDFOptionsBuilder;
80 struct SVDFOptionsT;
81
82 struct RNNOptions;
83 struct RNNOptionsBuilder;
84 struct RNNOptionsT;
85
86 struct SequenceRNNOptions;
87 struct SequenceRNNOptionsBuilder;
88 struct SequenceRNNOptionsT;
89
90 struct BidirectionalSequenceRNNOptions;
91 struct BidirectionalSequenceRNNOptionsBuilder;
92 struct BidirectionalSequenceRNNOptionsT;
93
94 struct FullyConnectedOptions;
95 struct FullyConnectedOptionsBuilder;
96 struct FullyConnectedOptionsT;
97
98 struct SoftmaxOptions;
99 struct SoftmaxOptionsBuilder;
100 struct SoftmaxOptionsT;
101
102 struct ConcatenationOptions;
103 struct ConcatenationOptionsBuilder;
104 struct ConcatenationOptionsT;
105
106 struct AddOptions;
107 struct AddOptionsBuilder;
108 struct AddOptionsT;
109
110 struct MulOptions;
111 struct MulOptionsBuilder;
112 struct MulOptionsT;
113
114 struct L2NormOptions;
115 struct L2NormOptionsBuilder;
116 struct L2NormOptionsT;
117
118 struct LocalResponseNormalizationOptions;
119 struct LocalResponseNormalizationOptionsBuilder;
120 struct LocalResponseNormalizationOptionsT;
121
122 struct LSTMOptions;
123 struct LSTMOptionsBuilder;
124 struct LSTMOptionsT;
125
126 struct UnidirectionalSequenceLSTMOptions;
127 struct UnidirectionalSequenceLSTMOptionsBuilder;
128 struct UnidirectionalSequenceLSTMOptionsT;
129
130 struct BidirectionalSequenceLSTMOptions;
131 struct BidirectionalSequenceLSTMOptionsBuilder;
132 struct BidirectionalSequenceLSTMOptionsT;
133
134 struct ResizeBilinearOptions;
135 struct ResizeBilinearOptionsBuilder;
136 struct ResizeBilinearOptionsT;
137
138 struct ResizeNearestNeighborOptions;
139 struct ResizeNearestNeighborOptionsBuilder;
140 struct ResizeNearestNeighborOptionsT;
141
142 struct CallOptions;
143 struct CallOptionsBuilder;
144 struct CallOptionsT;
145
146 struct PadOptions;
147 struct PadOptionsBuilder;
148 struct PadOptionsT;
149
150 struct PadV2Options;
151 struct PadV2OptionsBuilder;
152 struct PadV2OptionsT;
153
154 struct ReshapeOptions;
155 struct ReshapeOptionsBuilder;
156 struct ReshapeOptionsT;
157
158 struct SpaceToBatchNDOptions;
159 struct SpaceToBatchNDOptionsBuilder;
160 struct SpaceToBatchNDOptionsT;
161
162 struct BatchToSpaceNDOptions;
163 struct BatchToSpaceNDOptionsBuilder;
164 struct BatchToSpaceNDOptionsT;
165
166 struct SkipGramOptions;
167 struct SkipGramOptionsBuilder;
168 struct SkipGramOptionsT;
169
170 struct SpaceToDepthOptions;
171 struct SpaceToDepthOptionsBuilder;
172 struct SpaceToDepthOptionsT;
173
174 struct DepthToSpaceOptions;
175 struct DepthToSpaceOptionsBuilder;
176 struct DepthToSpaceOptionsT;
177
178 struct SubOptions;
179 struct SubOptionsBuilder;
180 struct SubOptionsT;
181
182 struct DivOptions;
183 struct DivOptionsBuilder;
184 struct DivOptionsT;
185
186 struct TopKV2Options;
187 struct TopKV2OptionsBuilder;
188 struct TopKV2OptionsT;
189
190 struct EmbeddingLookupSparseOptions;
191 struct EmbeddingLookupSparseOptionsBuilder;
192 struct EmbeddingLookupSparseOptionsT;
193
194 struct GatherOptions;
195 struct GatherOptionsBuilder;
196 struct GatherOptionsT;
197
198 struct TransposeOptions;
199 struct TransposeOptionsBuilder;
200 struct TransposeOptionsT;
201
202 struct ExpOptions;
203 struct ExpOptionsBuilder;
204 struct ExpOptionsT;
205
206 struct CosOptions;
207 struct CosOptionsBuilder;
208 struct CosOptionsT;
209
210 struct ReducerOptions;
211 struct ReducerOptionsBuilder;
212 struct ReducerOptionsT;
213
214 struct SqueezeOptions;
215 struct SqueezeOptionsBuilder;
216 struct SqueezeOptionsT;
217
218 struct SplitOptions;
219 struct SplitOptionsBuilder;
220 struct SplitOptionsT;
221
222 struct SplitVOptions;
223 struct SplitVOptionsBuilder;
224 struct SplitVOptionsT;
225
226 struct StridedSliceOptions;
227 struct StridedSliceOptionsBuilder;
228 struct StridedSliceOptionsT;
229
230 struct LogSoftmaxOptions;
231 struct LogSoftmaxOptionsBuilder;
232 struct LogSoftmaxOptionsT;
233
234 struct CastOptions;
235 struct CastOptionsBuilder;
236 struct CastOptionsT;
237
238 struct DequantizeOptions;
239 struct DequantizeOptionsBuilder;
240 struct DequantizeOptionsT;
241
242 struct MaximumMinimumOptions;
243 struct MaximumMinimumOptionsBuilder;
244 struct MaximumMinimumOptionsT;
245
246 struct TileOptions;
247 struct TileOptionsBuilder;
248 struct TileOptionsT;
249
250 struct ArgMaxOptions;
251 struct ArgMaxOptionsBuilder;
252 struct ArgMaxOptionsT;
253
254 struct ArgMinOptions;
255 struct ArgMinOptionsBuilder;
256 struct ArgMinOptionsT;
257
258 struct GreaterOptions;
259 struct GreaterOptionsBuilder;
260 struct GreaterOptionsT;
261
262 struct GreaterEqualOptions;
263 struct GreaterEqualOptionsBuilder;
264 struct GreaterEqualOptionsT;
265
266 struct LessOptions;
267 struct LessOptionsBuilder;
268 struct LessOptionsT;
269
270 struct LessEqualOptions;
271 struct LessEqualOptionsBuilder;
272 struct LessEqualOptionsT;
273
274 struct NegOptions;
275 struct NegOptionsBuilder;
276 struct NegOptionsT;
277
278 struct SelectOptions;
279 struct SelectOptionsBuilder;
280 struct SelectOptionsT;
281
282 struct SliceOptions;
283 struct SliceOptionsBuilder;
284 struct SliceOptionsT;
285
286 struct TransposeConvOptions;
287 struct TransposeConvOptionsBuilder;
288 struct TransposeConvOptionsT;
289
290 struct ExpandDimsOptions;
291 struct ExpandDimsOptionsBuilder;
292 struct ExpandDimsOptionsT;
293
294 struct SparseToDenseOptions;
295 struct SparseToDenseOptionsBuilder;
296 struct SparseToDenseOptionsT;
297
298 struct EqualOptions;
299 struct EqualOptionsBuilder;
300 struct EqualOptionsT;
301
302 struct NotEqualOptions;
303 struct NotEqualOptionsBuilder;
304 struct NotEqualOptionsT;
305
306 struct ShapeOptions;
307 struct ShapeOptionsBuilder;
308 struct ShapeOptionsT;
309
310 struct RankOptions;
311 struct RankOptionsBuilder;
312 struct RankOptionsT;
313
314 struct PowOptions;
315 struct PowOptionsBuilder;
316 struct PowOptionsT;
317
318 struct FakeQuantOptions;
319 struct FakeQuantOptionsBuilder;
320 struct FakeQuantOptionsT;
321
322 struct PackOptions;
323 struct PackOptionsBuilder;
324 struct PackOptionsT;
325
326 struct LogicalOrOptions;
327 struct LogicalOrOptionsBuilder;
328 struct LogicalOrOptionsT;
329
330 struct OneHotOptions;
331 struct OneHotOptionsBuilder;
332 struct OneHotOptionsT;
333
334 struct AbsOptions;
335 struct AbsOptionsBuilder;
336 struct AbsOptionsT;
337
338 struct HardSwishOptions;
339 struct HardSwishOptionsBuilder;
340 struct HardSwishOptionsT;
341
342 struct LogicalAndOptions;
343 struct LogicalAndOptionsBuilder;
344 struct LogicalAndOptionsT;
345
346 struct LogicalNotOptions;
347 struct LogicalNotOptionsBuilder;
348 struct LogicalNotOptionsT;
349
350 struct UnpackOptions;
351 struct UnpackOptionsBuilder;
352 struct UnpackOptionsT;
353
354 struct FloorDivOptions;
355 struct FloorDivOptionsBuilder;
356 struct FloorDivOptionsT;
357
358 struct SquareOptions;
359 struct SquareOptionsBuilder;
360 struct SquareOptionsT;
361
362 struct ZerosLikeOptions;
363 struct ZerosLikeOptionsBuilder;
364 struct ZerosLikeOptionsT;
365
366 struct FillOptions;
367 struct FillOptionsBuilder;
368 struct FillOptionsT;
369
370 struct FloorModOptions;
371 struct FloorModOptionsBuilder;
372 struct FloorModOptionsT;
373
374 struct RangeOptions;
375 struct RangeOptionsBuilder;
376 struct RangeOptionsT;
377
378 struct LeakyReluOptions;
379 struct LeakyReluOptionsBuilder;
380 struct LeakyReluOptionsT;
381
382 struct SquaredDifferenceOptions;
383 struct SquaredDifferenceOptionsBuilder;
384 struct SquaredDifferenceOptionsT;
385
386 struct MirrorPadOptions;
387 struct MirrorPadOptionsBuilder;
388 struct MirrorPadOptionsT;
389
390 struct UniqueOptions;
391 struct UniqueOptionsBuilder;
392 struct UniqueOptionsT;
393
394 struct ReverseV2Options;
395 struct ReverseV2OptionsBuilder;
396 struct ReverseV2OptionsT;
397
398 struct AddNOptions;
399 struct AddNOptionsBuilder;
400 struct AddNOptionsT;
401
402 struct GatherNdOptions;
403 struct GatherNdOptionsBuilder;
404 struct GatherNdOptionsT;
405
406 struct WhereOptions;
407 struct WhereOptionsBuilder;
408 struct WhereOptionsT;
409
410 struct ReverseSequenceOptions;
411 struct ReverseSequenceOptionsBuilder;
412 struct ReverseSequenceOptionsT;
413
414 struct MatrixDiagOptions;
415 struct MatrixDiagOptionsBuilder;
416 struct MatrixDiagOptionsT;
417
418 struct QuantizeOptions;
419 struct QuantizeOptionsBuilder;
420 struct QuantizeOptionsT;
421
422 struct MatrixSetDiagOptions;
423 struct MatrixSetDiagOptionsBuilder;
424 struct MatrixSetDiagOptionsT;
425
426 struct IfOptions;
427 struct IfOptionsBuilder;
428 struct IfOptionsT;
429
430 struct CallOnceOptions;
431 struct CallOnceOptionsBuilder;
432 struct CallOnceOptionsT;
433
434 struct WhileOptions;
435 struct WhileOptionsBuilder;
436 struct WhileOptionsT;
437
438 struct NonMaxSuppressionV4Options;
439 struct NonMaxSuppressionV4OptionsBuilder;
440 struct NonMaxSuppressionV4OptionsT;
441
442 struct NonMaxSuppressionV5Options;
443 struct NonMaxSuppressionV5OptionsBuilder;
444 struct NonMaxSuppressionV5OptionsT;
445
446 struct ScatterNdOptions;
447 struct ScatterNdOptionsBuilder;
448 struct ScatterNdOptionsT;
449
450 struct SelectV2Options;
451 struct SelectV2OptionsBuilder;
452 struct SelectV2OptionsT;
453
454 struct DensifyOptions;
455 struct DensifyOptionsBuilder;
456 struct DensifyOptionsT;
457
458 struct SegmentSumOptions;
459 struct SegmentSumOptionsBuilder;
460 struct SegmentSumOptionsT;
461
462 struct BatchMatMulOptions;
463 struct BatchMatMulOptionsBuilder;
464 struct BatchMatMulOptionsT;
465
466 struct CumsumOptions;
467 struct CumsumOptionsBuilder;
468 struct CumsumOptionsT;
469
470 struct BroadcastToOptions;
471 struct BroadcastToOptionsBuilder;
472 struct BroadcastToOptionsT;
473
474 struct Rfft2dOptions;
475 struct Rfft2dOptionsBuilder;
476 struct Rfft2dOptionsT;
477
478 struct HashtableOptions;
479 struct HashtableOptionsBuilder;
480 struct HashtableOptionsT;
481
482 struct HashtableFindOptions;
483 struct HashtableFindOptionsBuilder;
484 struct HashtableFindOptionsT;
485
486 struct HashtableImportOptions;
487 struct HashtableImportOptionsBuilder;
488 struct HashtableImportOptionsT;
489
490 struct HashtableSizeOptions;
491 struct HashtableSizeOptionsBuilder;
492 struct HashtableSizeOptionsT;
493
494 struct VarHandleOptions;
495 struct VarHandleOptionsBuilder;
496 struct VarHandleOptionsT;
497
498 struct ReadVariableOptions;
499 struct ReadVariableOptionsBuilder;
500 struct ReadVariableOptionsT;
501
502 struct AssignVariableOptions;
503 struct AssignVariableOptionsBuilder;
504 struct AssignVariableOptionsT;
505
506 struct RandomOptions;
507 struct RandomOptionsBuilder;
508 struct RandomOptionsT;
509
510 struct BucketizeOptions;
511 struct BucketizeOptionsBuilder;
512 struct BucketizeOptionsT;
513
514 struct GeluOptions;
515 struct GeluOptionsBuilder;
516 struct GeluOptionsT;
517
518 struct DynamicUpdateSliceOptions;
519 struct DynamicUpdateSliceOptionsBuilder;
520 struct DynamicUpdateSliceOptionsT;
521
522 struct UnsortedSegmentProdOptions;
523 struct UnsortedSegmentProdOptionsBuilder;
524 struct UnsortedSegmentProdOptionsT;
525
526 struct UnsortedSegmentMaxOptions;
527 struct UnsortedSegmentMaxOptionsBuilder;
528 struct UnsortedSegmentMaxOptionsT;
529
530 struct UnsortedSegmentSumOptions;
531 struct UnsortedSegmentSumOptionsBuilder;
532 struct UnsortedSegmentSumOptionsT;
533
534 struct ATan2Options;
535 struct ATan2OptionsBuilder;
536 struct ATan2OptionsT;
537
538 struct UnsortedSegmentMinOptions;
539 struct UnsortedSegmentMinOptionsBuilder;
540 struct UnsortedSegmentMinOptionsT;
541
542 struct SignOptions;
543 struct SignOptionsBuilder;
544 struct SignOptionsT;
545
546 struct OperatorCode;
547 struct OperatorCodeBuilder;
548 struct OperatorCodeT;
549
550 struct Operator;
551 struct OperatorBuilder;
552 struct OperatorT;
553
554 struct SubGraph;
555 struct SubGraphBuilder;
556 struct SubGraphT;
557
558 struct Buffer;
559 struct BufferBuilder;
560 struct BufferT;
561
562 struct Metadata;
563 struct MetadataBuilder;
564 struct MetadataT;
565
566 struct TensorMap;
567 struct TensorMapBuilder;
568 struct TensorMapT;
569
570 struct SignatureDef;
571 struct SignatureDefBuilder;
572 struct SignatureDefT;
573
574 struct Model;
575 struct ModelBuilder;
576 struct ModelT;
577
578 enum TensorType : int8_t {
579 TensorType_FLOAT32 = 0,
580 TensorType_FLOAT16 = 1,
581 TensorType_INT32 = 2,
582 TensorType_UINT8 = 3,
583 TensorType_INT64 = 4,
584 TensorType_STRING = 5,
585 TensorType_BOOL = 6,
586 TensorType_INT16 = 7,
587 TensorType_COMPLEX64 = 8,
588 TensorType_INT8 = 9,
589 TensorType_FLOAT64 = 10,
590 TensorType_COMPLEX128 = 11,
591 TensorType_UINT64 = 12,
592 TensorType_RESOURCE = 13,
593 TensorType_VARIANT = 14,
594 TensorType_UINT32 = 15,
595 TensorType_UINT16 = 16,
596 TensorType_MIN = TensorType_FLOAT32,
597 TensorType_MAX = TensorType_UINT16
598 };
599
EnumValuesTensorType()600 inline const TensorType (&EnumValuesTensorType())[17] {
601 static const TensorType values[] = {
602 TensorType_FLOAT32,
603 TensorType_FLOAT16,
604 TensorType_INT32,
605 TensorType_UINT8,
606 TensorType_INT64,
607 TensorType_STRING,
608 TensorType_BOOL,
609 TensorType_INT16,
610 TensorType_COMPLEX64,
611 TensorType_INT8,
612 TensorType_FLOAT64,
613 TensorType_COMPLEX128,
614 TensorType_UINT64,
615 TensorType_RESOURCE,
616 TensorType_VARIANT,
617 TensorType_UINT32,
618 TensorType_UINT16
619 };
620 return values;
621 }
622
EnumNamesTensorType()623 inline const char * const *EnumNamesTensorType() {
624 static const char * const names[18] = {
625 "FLOAT32",
626 "FLOAT16",
627 "INT32",
628 "UINT8",
629 "INT64",
630 "STRING",
631 "BOOL",
632 "INT16",
633 "COMPLEX64",
634 "INT8",
635 "FLOAT64",
636 "COMPLEX128",
637 "UINT64",
638 "RESOURCE",
639 "VARIANT",
640 "UINT32",
641 "UINT16",
642 nullptr
643 };
644 return names;
645 }
646
EnumNameTensorType(TensorType e)647 inline const char *EnumNameTensorType(TensorType e) {
648 if (flatbuffers::IsOutRange(e, TensorType_FLOAT32, TensorType_UINT16)) return "";
649 const size_t index = static_cast<size_t>(e);
650 return EnumNamesTensorType()[index];
651 }
652
653 enum QuantizationDetails : uint8_t {
654 QuantizationDetails_NONE = 0,
655 QuantizationDetails_CustomQuantization = 1,
656 QuantizationDetails_MIN = QuantizationDetails_NONE,
657 QuantizationDetails_MAX = QuantizationDetails_CustomQuantization
658 };
659
EnumValuesQuantizationDetails()660 inline const QuantizationDetails (&EnumValuesQuantizationDetails())[2] {
661 static const QuantizationDetails values[] = {
662 QuantizationDetails_NONE,
663 QuantizationDetails_CustomQuantization
664 };
665 return values;
666 }
667
EnumNamesQuantizationDetails()668 inline const char * const *EnumNamesQuantizationDetails() {
669 static const char * const names[3] = {
670 "NONE",
671 "CustomQuantization",
672 nullptr
673 };
674 return names;
675 }
676
EnumNameQuantizationDetails(QuantizationDetails e)677 inline const char *EnumNameQuantizationDetails(QuantizationDetails e) {
678 if (flatbuffers::IsOutRange(e, QuantizationDetails_NONE, QuantizationDetails_CustomQuantization)) return "";
679 const size_t index = static_cast<size_t>(e);
680 return EnumNamesQuantizationDetails()[index];
681 }
682
683 template<typename T> struct QuantizationDetailsTraits {
684 static const QuantizationDetails enum_value = QuantizationDetails_NONE;
685 };
686
687 template<> struct QuantizationDetailsTraits<tflite::CustomQuantization> {
688 static const QuantizationDetails enum_value = QuantizationDetails_CustomQuantization;
689 };
690
691 template<typename T> struct QuantizationDetailsUnionTraits {
692 static const QuantizationDetails enum_value = QuantizationDetails_NONE;
693 };
694
695 template<> struct QuantizationDetailsUnionTraits<tflite::CustomQuantizationT> {
696 static const QuantizationDetails enum_value = QuantizationDetails_CustomQuantization;
697 };
698
699 struct QuantizationDetailsUnion {
700 QuantizationDetails type;
701 void *value;
702
703 QuantizationDetailsUnion() : type(QuantizationDetails_NONE), value(nullptr) {}
704 QuantizationDetailsUnion(QuantizationDetailsUnion&& u) FLATBUFFERS_NOEXCEPT :
705 type(QuantizationDetails_NONE), value(nullptr)
706 { std::swap(type, u.type); std::swap(value, u.value); }
707 QuantizationDetailsUnion(const QuantizationDetailsUnion &);
708 QuantizationDetailsUnion &operator=(const QuantizationDetailsUnion &u)
709 { QuantizationDetailsUnion t(u); std::swap(type, t.type); std::swap(value, t.value); return *this; }
710 QuantizationDetailsUnion &operator=(QuantizationDetailsUnion &&u) FLATBUFFERS_NOEXCEPT
711 { std::swap(type, u.type); std::swap(value, u.value); return *this; }
712 ~QuantizationDetailsUnion() { Reset(); }
713
714 void Reset();
715
716 template <typename T>
717 void Set(T&& val) {
718 typedef typename std::remove_reference<T>::type RT;
719 Reset();
720 type = QuantizationDetailsUnionTraits<RT>::enum_value;
721 if (type != QuantizationDetails_NONE) {
722 value = new RT(std::forward<T>(val));
723 }
724 }
725
726 static void *UnPack(const void *obj, QuantizationDetails type, const flatbuffers::resolver_function_t *resolver);
727 flatbuffers::Offset<void> Pack(flatbuffers::FlatBufferBuilder &_fbb, const flatbuffers::rehasher_function_t *_rehasher = nullptr) const;
728
729 tflite::CustomQuantizationT *AsCustomQuantization() {
730 return type == QuantizationDetails_CustomQuantization ?
731 reinterpret_cast<tflite::CustomQuantizationT *>(value) : nullptr;
732 }
733 const tflite::CustomQuantizationT *AsCustomQuantization() const {
734 return type == QuantizationDetails_CustomQuantization ?
735 reinterpret_cast<const tflite::CustomQuantizationT *>(value) : nullptr;
736 }
737 };
738
739 bool VerifyQuantizationDetails(flatbuffers::Verifier &verifier, const void *obj, QuantizationDetails type);
740 bool VerifyQuantizationDetailsVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<uint8_t> *types);
741
742 enum DimensionType : int8_t {
743 DimensionType_DENSE = 0,
744 DimensionType_SPARSE_CSR = 1,
745 DimensionType_MIN = DimensionType_DENSE,
746 DimensionType_MAX = DimensionType_SPARSE_CSR
747 };
748
749 inline const DimensionType (&EnumValuesDimensionType())[2] {
750 static const DimensionType values[] = {
751 DimensionType_DENSE,
752 DimensionType_SPARSE_CSR
753 };
754 return values;
755 }
756
757 inline const char * const *EnumNamesDimensionType() {
758 static const char * const names[3] = {
759 "DENSE",
760 "SPARSE_CSR",
761 nullptr
762 };
763 return names;
764 }
765
766 inline const char *EnumNameDimensionType(DimensionType e) {
767 if (flatbuffers::IsOutRange(e, DimensionType_DENSE, DimensionType_SPARSE_CSR)) return "";
768 const size_t index = static_cast<size_t>(e);
769 return EnumNamesDimensionType()[index];
770 }
771
772 enum SparseIndexVector : uint8_t {
773 SparseIndexVector_NONE = 0,
774 SparseIndexVector_Int32Vector = 1,
775 SparseIndexVector_Uint16Vector = 2,
776 SparseIndexVector_Uint8Vector = 3,
777 SparseIndexVector_MIN = SparseIndexVector_NONE,
778 SparseIndexVector_MAX = SparseIndexVector_Uint8Vector
779 };
780
781 inline const SparseIndexVector (&EnumValuesSparseIndexVector())[4] {
782 static const SparseIndexVector values[] = {
783 SparseIndexVector_NONE,
784 SparseIndexVector_Int32Vector,
785 SparseIndexVector_Uint16Vector,
786 SparseIndexVector_Uint8Vector
787 };
788 return values;
789 }
790
791 inline const char * const *EnumNamesSparseIndexVector() {
792 static const char * const names[5] = {
793 "NONE",
794 "Int32Vector",
795 "Uint16Vector",
796 "Uint8Vector",
797 nullptr
798 };
799 return names;
800 }
801
802 inline const char *EnumNameSparseIndexVector(SparseIndexVector e) {
803 if (flatbuffers::IsOutRange(e, SparseIndexVector_NONE, SparseIndexVector_Uint8Vector)) return "";
804 const size_t index = static_cast<size_t>(e);
805 return EnumNamesSparseIndexVector()[index];
806 }
807
808 template<typename T> struct SparseIndexVectorTraits {
809 static const SparseIndexVector enum_value = SparseIndexVector_NONE;
810 };
811
812 template<> struct SparseIndexVectorTraits<tflite::Int32Vector> {
813 static const SparseIndexVector enum_value = SparseIndexVector_Int32Vector;
814 };
815
816 template<> struct SparseIndexVectorTraits<tflite::Uint16Vector> {
817 static const SparseIndexVector enum_value = SparseIndexVector_Uint16Vector;
818 };
819
820 template<> struct SparseIndexVectorTraits<tflite::Uint8Vector> {
821 static const SparseIndexVector enum_value = SparseIndexVector_Uint8Vector;
822 };
823
824 template<typename T> struct SparseIndexVectorUnionTraits {
825 static const SparseIndexVector enum_value = SparseIndexVector_NONE;
826 };
827
828 template<> struct SparseIndexVectorUnionTraits<tflite::Int32VectorT> {
829 static const SparseIndexVector enum_value = SparseIndexVector_Int32Vector;
830 };
831
832 template<> struct SparseIndexVectorUnionTraits<tflite::Uint16VectorT> {
833 static const SparseIndexVector enum_value = SparseIndexVector_Uint16Vector;
834 };
835
836 template<> struct SparseIndexVectorUnionTraits<tflite::Uint8VectorT> {
837 static const SparseIndexVector enum_value = SparseIndexVector_Uint8Vector;
838 };
839
840 struct SparseIndexVectorUnion {
841 SparseIndexVector type;
842 void *value;
843
844 SparseIndexVectorUnion() : type(SparseIndexVector_NONE), value(nullptr) {}
845 SparseIndexVectorUnion(SparseIndexVectorUnion&& u) FLATBUFFERS_NOEXCEPT :
846 type(SparseIndexVector_NONE), value(nullptr)
847 { std::swap(type, u.type); std::swap(value, u.value); }
848 SparseIndexVectorUnion(const SparseIndexVectorUnion &);
849 SparseIndexVectorUnion &operator=(const SparseIndexVectorUnion &u)
850 { SparseIndexVectorUnion t(u); std::swap(type, t.type); std::swap(value, t.value); return *this; }
851 SparseIndexVectorUnion &operator=(SparseIndexVectorUnion &&u) FLATBUFFERS_NOEXCEPT
852 { std::swap(type, u.type); std::swap(value, u.value); return *this; }
853 ~SparseIndexVectorUnion() { Reset(); }
854
855 void Reset();
856
857 template <typename T>
858 void Set(T&& val) {
859 typedef typename std::remove_reference<T>::type RT;
860 Reset();
861 type = SparseIndexVectorUnionTraits<RT>::enum_value;
862 if (type != SparseIndexVector_NONE) {
863 value = new RT(std::forward<T>(val));
864 }
865 }
866
867 static void *UnPack(const void *obj, SparseIndexVector type, const flatbuffers::resolver_function_t *resolver);
868 flatbuffers::Offset<void> Pack(flatbuffers::FlatBufferBuilder &_fbb, const flatbuffers::rehasher_function_t *_rehasher = nullptr) const;
869
870 tflite::Int32VectorT *AsInt32Vector() {
871 return type == SparseIndexVector_Int32Vector ?
872 reinterpret_cast<tflite::Int32VectorT *>(value) : nullptr;
873 }
874 const tflite::Int32VectorT *AsInt32Vector() const {
875 return type == SparseIndexVector_Int32Vector ?
876 reinterpret_cast<const tflite::Int32VectorT *>(value) : nullptr;
877 }
878 tflite::Uint16VectorT *AsUint16Vector() {
879 return type == SparseIndexVector_Uint16Vector ?
880 reinterpret_cast<tflite::Uint16VectorT *>(value) : nullptr;
881 }
882 const tflite::Uint16VectorT *AsUint16Vector() const {
883 return type == SparseIndexVector_Uint16Vector ?
884 reinterpret_cast<const tflite::Uint16VectorT *>(value) : nullptr;
885 }
886 tflite::Uint8VectorT *AsUint8Vector() {
887 return type == SparseIndexVector_Uint8Vector ?
888 reinterpret_cast<tflite::Uint8VectorT *>(value) : nullptr;
889 }
890 const tflite::Uint8VectorT *AsUint8Vector() const {
891 return type == SparseIndexVector_Uint8Vector ?
892 reinterpret_cast<const tflite::Uint8VectorT *>(value) : nullptr;
893 }
894 };
895
896 bool VerifySparseIndexVector(flatbuffers::Verifier &verifier, const void *obj, SparseIndexVector type);
897 bool VerifySparseIndexVectorVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<uint8_t> *types);
898
899 enum BuiltinOperator : int32_t {
900 BuiltinOperator_ADD = 0,
901 BuiltinOperator_AVERAGE_POOL_2D = 1,
902 BuiltinOperator_CONCATENATION = 2,
903 BuiltinOperator_CONV_2D = 3,
904 BuiltinOperator_DEPTHWISE_CONV_2D = 4,
905 BuiltinOperator_DEPTH_TO_SPACE = 5,
906 BuiltinOperator_DEQUANTIZE = 6,
907 BuiltinOperator_EMBEDDING_LOOKUP = 7,
908 BuiltinOperator_FLOOR = 8,
909 BuiltinOperator_FULLY_CONNECTED = 9,
910 BuiltinOperator_HASHTABLE_LOOKUP = 10,
911 BuiltinOperator_L2_NORMALIZATION = 11,
912 BuiltinOperator_L2_POOL_2D = 12,
913 BuiltinOperator_LOCAL_RESPONSE_NORMALIZATION = 13,
914 BuiltinOperator_LOGISTIC = 14,
915 BuiltinOperator_LSH_PROJECTION = 15,
916 BuiltinOperator_LSTM = 16,
917 BuiltinOperator_MAX_POOL_2D = 17,
918 BuiltinOperator_MUL = 18,
919 BuiltinOperator_RELU = 19,
920 BuiltinOperator_RELU_N1_TO_1 = 20,
921 BuiltinOperator_RELU6 = 21,
922 BuiltinOperator_RESHAPE = 22,
923 BuiltinOperator_RESIZE_BILINEAR = 23,
924 BuiltinOperator_RNN = 24,
925 BuiltinOperator_SOFTMAX = 25,
926 BuiltinOperator_SPACE_TO_DEPTH = 26,
927 BuiltinOperator_SVDF = 27,
928 BuiltinOperator_TANH = 28,
929 BuiltinOperator_CONCAT_EMBEDDINGS = 29,
930 BuiltinOperator_SKIP_GRAM = 30,
931 BuiltinOperator_CALL = 31,
932 BuiltinOperator_CUSTOM = 32,
933 BuiltinOperator_EMBEDDING_LOOKUP_SPARSE = 33,
934 BuiltinOperator_PAD = 34,
935 BuiltinOperator_UNIDIRECTIONAL_SEQUENCE_RNN = 35,
936 BuiltinOperator_GATHER = 36,
937 BuiltinOperator_BATCH_TO_SPACE_ND = 37,
938 BuiltinOperator_SPACE_TO_BATCH_ND = 38,
939 BuiltinOperator_TRANSPOSE = 39,
940 BuiltinOperator_MEAN = 40,
941 BuiltinOperator_SUB = 41,
942 BuiltinOperator_DIV = 42,
943 BuiltinOperator_SQUEEZE = 43,
944 BuiltinOperator_UNIDIRECTIONAL_SEQUENCE_LSTM = 44,
945 BuiltinOperator_STRIDED_SLICE = 45,
946 BuiltinOperator_BIDIRECTIONAL_SEQUENCE_RNN = 46,
947 BuiltinOperator_EXP = 47,
948 BuiltinOperator_TOPK_V2 = 48,
949 BuiltinOperator_SPLIT = 49,
950 BuiltinOperator_LOG_SOFTMAX = 50,
951 BuiltinOperator_DELEGATE = 51,
952 BuiltinOperator_BIDIRECTIONAL_SEQUENCE_LSTM = 52,
953 BuiltinOperator_CAST = 53,
954 BuiltinOperator_PRELU = 54,
955 BuiltinOperator_MAXIMUM = 55,
956 BuiltinOperator_ARG_MAX = 56,
957 BuiltinOperator_MINIMUM = 57,
958 BuiltinOperator_LESS = 58,
959 BuiltinOperator_NEG = 59,
960 BuiltinOperator_PADV2 = 60,
961 BuiltinOperator_GREATER = 61,
962 BuiltinOperator_GREATER_EQUAL = 62,
963 BuiltinOperator_LESS_EQUAL = 63,
964 BuiltinOperator_SELECT = 64,
965 BuiltinOperator_SLICE = 65,
966 BuiltinOperator_SIN = 66,
967 BuiltinOperator_TRANSPOSE_CONV = 67,
968 BuiltinOperator_SPARSE_TO_DENSE = 68,
969 BuiltinOperator_TILE = 69,
970 BuiltinOperator_EXPAND_DIMS = 70,
971 BuiltinOperator_EQUAL = 71,
972 BuiltinOperator_NOT_EQUAL = 72,
973 BuiltinOperator_LOG = 73,
974 BuiltinOperator_SUM = 74,
975 BuiltinOperator_SQRT = 75,
976 BuiltinOperator_RSQRT = 76,
977 BuiltinOperator_SHAPE = 77,
978 BuiltinOperator_POW = 78,
979 BuiltinOperator_ARG_MIN = 79,
980 BuiltinOperator_FAKE_QUANT = 80,
981 BuiltinOperator_REDUCE_PROD = 81,
982 BuiltinOperator_REDUCE_MAX = 82,
983 BuiltinOperator_PACK = 83,
984 BuiltinOperator_LOGICAL_OR = 84,
985 BuiltinOperator_ONE_HOT = 85,
986 BuiltinOperator_LOGICAL_AND = 86,
987 BuiltinOperator_LOGICAL_NOT = 87,
988 BuiltinOperator_UNPACK = 88,
989 BuiltinOperator_REDUCE_MIN = 89,
990 BuiltinOperator_FLOOR_DIV = 90,
991 BuiltinOperator_REDUCE_ANY = 91,
992 BuiltinOperator_SQUARE = 92,
993 BuiltinOperator_ZEROS_LIKE = 93,
994 BuiltinOperator_FILL = 94,
995 BuiltinOperator_FLOOR_MOD = 95,
996 BuiltinOperator_RANGE = 96,
997 BuiltinOperator_RESIZE_NEAREST_NEIGHBOR = 97,
998 BuiltinOperator_LEAKY_RELU = 98,
999 BuiltinOperator_SQUARED_DIFFERENCE = 99,
1000 BuiltinOperator_MIRROR_PAD = 100,
1001 BuiltinOperator_ABS = 101,
1002 BuiltinOperator_SPLIT_V = 102,
1003 BuiltinOperator_UNIQUE = 103,
1004 BuiltinOperator_CEIL = 104,
1005 BuiltinOperator_REVERSE_V2 = 105,
1006 BuiltinOperator_ADD_N = 106,
1007 BuiltinOperator_GATHER_ND = 107,
1008 BuiltinOperator_COS = 108,
1009 BuiltinOperator_WHERE = 109,
1010 BuiltinOperator_RANK = 110,
1011 BuiltinOperator_ELU = 111,
1012 BuiltinOperator_REVERSE_SEQUENCE = 112,
1013 BuiltinOperator_MATRIX_DIAG = 113,
1014 BuiltinOperator_QUANTIZE = 114,
1015 BuiltinOperator_MATRIX_SET_DIAG = 115,
1016 BuiltinOperator_ROUND = 116,
1017 BuiltinOperator_HARD_SWISH = 117,
1018 BuiltinOperator_IF = 118,
1019 BuiltinOperator_WHILE = 119,
1020 BuiltinOperator_NON_MAX_SUPPRESSION_V4 = 120,
1021 BuiltinOperator_NON_MAX_SUPPRESSION_V5 = 121,
1022 BuiltinOperator_SCATTER_ND = 122,
1023 BuiltinOperator_SELECT_V2 = 123,
1024 BuiltinOperator_DENSIFY = 124,
1025 BuiltinOperator_SEGMENT_SUM = 125,
1026 BuiltinOperator_BATCH_MATMUL = 126,
1027 BuiltinOperator_PLACEHOLDER_FOR_GREATER_OP_CODES = 127,
1028 BuiltinOperator_CUMSUM = 128,
1029 BuiltinOperator_CALL_ONCE = 129,
1030 BuiltinOperator_BROADCAST_TO = 130,
1031 BuiltinOperator_RFFT2D = 131,
1032 BuiltinOperator_CONV_3D = 132,
1033 BuiltinOperator_IMAG = 133,
1034 BuiltinOperator_REAL = 134,
1035 BuiltinOperator_COMPLEX_ABS = 135,
1036 BuiltinOperator_HASHTABLE = 136,
1037 BuiltinOperator_HASHTABLE_FIND = 137,
1038 BuiltinOperator_HASHTABLE_IMPORT = 138,
1039 BuiltinOperator_HASHTABLE_SIZE = 139,
1040 BuiltinOperator_REDUCE_ALL = 140,
1041 BuiltinOperator_CONV_3D_TRANSPOSE = 141,
1042 BuiltinOperator_VAR_HANDLE = 142,
1043 BuiltinOperator_READ_VARIABLE = 143,
1044 BuiltinOperator_ASSIGN_VARIABLE = 144,
1045 BuiltinOperator_BROADCAST_ARGS = 145,
1046 BuiltinOperator_RANDOM_STANDARD_NORMAL = 146,
1047 BuiltinOperator_BUCKETIZE = 147,
1048 BuiltinOperator_RANDOM_UNIFORM = 148,
1049 BuiltinOperator_MULTINOMIAL = 149,
1050 BuiltinOperator_GELU = 150,
1051 BuiltinOperator_DYNAMIC_UPDATE_SLICE = 151,
1052 BuiltinOperator_RELU_0_TO_1 = 152,
1053 BuiltinOperator_UNSORTED_SEGMENT_PROD = 153,
1054 BuiltinOperator_UNSORTED_SEGMENT_MAX = 154,
1055 BuiltinOperator_UNSORTED_SEGMENT_SUM = 155,
1056 BuiltinOperator_ATAN2 = 156,
1057 BuiltinOperator_UNSORTED_SEGMENT_MIN = 157,
1058 BuiltinOperator_SIGN = 158,
1059 BuiltinOperator_MIN = BuiltinOperator_ADD,
1060 BuiltinOperator_MAX = BuiltinOperator_SIGN
1061 };
1062
1063 inline const BuiltinOperator (&EnumValuesBuiltinOperator())[159] {
1064 static const BuiltinOperator values[] = {
1065 BuiltinOperator_ADD,
1066 BuiltinOperator_AVERAGE_POOL_2D,
1067 BuiltinOperator_CONCATENATION,
1068 BuiltinOperator_CONV_2D,
1069 BuiltinOperator_DEPTHWISE_CONV_2D,
1070 BuiltinOperator_DEPTH_TO_SPACE,
1071 BuiltinOperator_DEQUANTIZE,
1072 BuiltinOperator_EMBEDDING_LOOKUP,
1073 BuiltinOperator_FLOOR,
1074 BuiltinOperator_FULLY_CONNECTED,
1075 BuiltinOperator_HASHTABLE_LOOKUP,
1076 BuiltinOperator_L2_NORMALIZATION,
1077 BuiltinOperator_L2_POOL_2D,
1078 BuiltinOperator_LOCAL_RESPONSE_NORMALIZATION,
1079 BuiltinOperator_LOGISTIC,
1080 BuiltinOperator_LSH_PROJECTION,
1081 BuiltinOperator_LSTM,
1082 BuiltinOperator_MAX_POOL_2D,
1083 BuiltinOperator_MUL,
1084 BuiltinOperator_RELU,
1085 BuiltinOperator_RELU_N1_TO_1,
1086 BuiltinOperator_RELU6,
1087 BuiltinOperator_RESHAPE,
1088 BuiltinOperator_RESIZE_BILINEAR,
1089 BuiltinOperator_RNN,
1090 BuiltinOperator_SOFTMAX,
1091 BuiltinOperator_SPACE_TO_DEPTH,
1092 BuiltinOperator_SVDF,
1093 BuiltinOperator_TANH,
1094 BuiltinOperator_CONCAT_EMBEDDINGS,
1095 BuiltinOperator_SKIP_GRAM,
1096 BuiltinOperator_CALL,
1097 BuiltinOperator_CUSTOM,
1098 BuiltinOperator_EMBEDDING_LOOKUP_SPARSE,
1099 BuiltinOperator_PAD,
1100 BuiltinOperator_UNIDIRECTIONAL_SEQUENCE_RNN,
1101 BuiltinOperator_GATHER,
1102 BuiltinOperator_BATCH_TO_SPACE_ND,
1103 BuiltinOperator_SPACE_TO_BATCH_ND,
1104 BuiltinOperator_TRANSPOSE,
1105 BuiltinOperator_MEAN,
1106 BuiltinOperator_SUB,
1107 BuiltinOperator_DIV,
1108 BuiltinOperator_SQUEEZE,
1109 BuiltinOperator_UNIDIRECTIONAL_SEQUENCE_LSTM,
1110 BuiltinOperator_STRIDED_SLICE,
1111 BuiltinOperator_BIDIRECTIONAL_SEQUENCE_RNN,
1112 BuiltinOperator_EXP,
1113 BuiltinOperator_TOPK_V2,
1114 BuiltinOperator_SPLIT,
1115 BuiltinOperator_LOG_SOFTMAX,
1116 BuiltinOperator_DELEGATE,
1117 BuiltinOperator_BIDIRECTIONAL_SEQUENCE_LSTM,
1118 BuiltinOperator_CAST,
1119 BuiltinOperator_PRELU,
1120 BuiltinOperator_MAXIMUM,
1121 BuiltinOperator_ARG_MAX,
1122 BuiltinOperator_MINIMUM,
1123 BuiltinOperator_LESS,
1124 BuiltinOperator_NEG,
1125 BuiltinOperator_PADV2,
1126 BuiltinOperator_GREATER,
1127 BuiltinOperator_GREATER_EQUAL,
1128 BuiltinOperator_LESS_EQUAL,
1129 BuiltinOperator_SELECT,
1130 BuiltinOperator_SLICE,
1131 BuiltinOperator_SIN,
1132 BuiltinOperator_TRANSPOSE_CONV,
1133 BuiltinOperator_SPARSE_TO_DENSE,
1134 BuiltinOperator_TILE,
1135 BuiltinOperator_EXPAND_DIMS,
1136 BuiltinOperator_EQUAL,
1137 BuiltinOperator_NOT_EQUAL,
1138 BuiltinOperator_LOG,
1139 BuiltinOperator_SUM,
1140 BuiltinOperator_SQRT,
1141 BuiltinOperator_RSQRT,
1142 BuiltinOperator_SHAPE,
1143 BuiltinOperator_POW,
1144 BuiltinOperator_ARG_MIN,
1145 BuiltinOperator_FAKE_QUANT,
1146 BuiltinOperator_REDUCE_PROD,
1147 BuiltinOperator_REDUCE_MAX,
1148 BuiltinOperator_PACK,
1149 BuiltinOperator_LOGICAL_OR,
1150 BuiltinOperator_ONE_HOT,
1151 BuiltinOperator_LOGICAL_AND,
1152 BuiltinOperator_LOGICAL_NOT,
1153 BuiltinOperator_UNPACK,
1154 BuiltinOperator_REDUCE_MIN,
1155 BuiltinOperator_FLOOR_DIV,
1156 BuiltinOperator_REDUCE_ANY,
1157 BuiltinOperator_SQUARE,
1158 BuiltinOperator_ZEROS_LIKE,
1159 BuiltinOperator_FILL,
1160 BuiltinOperator_FLOOR_MOD,
1161 BuiltinOperator_RANGE,
1162 BuiltinOperator_RESIZE_NEAREST_NEIGHBOR,
1163 BuiltinOperator_LEAKY_RELU,
1164 BuiltinOperator_SQUARED_DIFFERENCE,
1165 BuiltinOperator_MIRROR_PAD,
1166 BuiltinOperator_ABS,
1167 BuiltinOperator_SPLIT_V,
1168 BuiltinOperator_UNIQUE,
1169 BuiltinOperator_CEIL,
1170 BuiltinOperator_REVERSE_V2,
1171 BuiltinOperator_ADD_N,
1172 BuiltinOperator_GATHER_ND,
1173 BuiltinOperator_COS,
1174 BuiltinOperator_WHERE,
1175 BuiltinOperator_RANK,
1176 BuiltinOperator_ELU,
1177 BuiltinOperator_REVERSE_SEQUENCE,
1178 BuiltinOperator_MATRIX_DIAG,
1179 BuiltinOperator_QUANTIZE,
1180 BuiltinOperator_MATRIX_SET_DIAG,
1181 BuiltinOperator_ROUND,
1182 BuiltinOperator_HARD_SWISH,
1183 BuiltinOperator_IF,
1184 BuiltinOperator_WHILE,
1185 BuiltinOperator_NON_MAX_SUPPRESSION_V4,
1186 BuiltinOperator_NON_MAX_SUPPRESSION_V5,
1187 BuiltinOperator_SCATTER_ND,
1188 BuiltinOperator_SELECT_V2,
1189 BuiltinOperator_DENSIFY,
1190 BuiltinOperator_SEGMENT_SUM,
1191 BuiltinOperator_BATCH_MATMUL,
1192 BuiltinOperator_PLACEHOLDER_FOR_GREATER_OP_CODES,
1193 BuiltinOperator_CUMSUM,
1194 BuiltinOperator_CALL_ONCE,
1195 BuiltinOperator_BROADCAST_TO,
1196 BuiltinOperator_RFFT2D,
1197 BuiltinOperator_CONV_3D,
1198 BuiltinOperator_IMAG,
1199 BuiltinOperator_REAL,
1200 BuiltinOperator_COMPLEX_ABS,
1201 BuiltinOperator_HASHTABLE,
1202 BuiltinOperator_HASHTABLE_FIND,
1203 BuiltinOperator_HASHTABLE_IMPORT,
1204 BuiltinOperator_HASHTABLE_SIZE,
1205 BuiltinOperator_REDUCE_ALL,
1206 BuiltinOperator_CONV_3D_TRANSPOSE,
1207 BuiltinOperator_VAR_HANDLE,
1208 BuiltinOperator_READ_VARIABLE,
1209 BuiltinOperator_ASSIGN_VARIABLE,
1210 BuiltinOperator_BROADCAST_ARGS,
1211 BuiltinOperator_RANDOM_STANDARD_NORMAL,
1212 BuiltinOperator_BUCKETIZE,
1213 BuiltinOperator_RANDOM_UNIFORM,
1214 BuiltinOperator_MULTINOMIAL,
1215 BuiltinOperator_GELU,
1216 BuiltinOperator_DYNAMIC_UPDATE_SLICE,
1217 BuiltinOperator_RELU_0_TO_1,
1218 BuiltinOperator_UNSORTED_SEGMENT_PROD,
1219 BuiltinOperator_UNSORTED_SEGMENT_MAX,
1220 BuiltinOperator_UNSORTED_SEGMENT_SUM,
1221 BuiltinOperator_ATAN2,
1222 BuiltinOperator_UNSORTED_SEGMENT_MIN,
1223 BuiltinOperator_SIGN
1224 };
1225 return values;
1226 }
1227
1228 inline const char * const *EnumNamesBuiltinOperator() {
1229 static const char * const names[160] = {
1230 "ADD",
1231 "AVERAGE_POOL_2D",
1232 "CONCATENATION",
1233 "CONV_2D",
1234 "DEPTHWISE_CONV_2D",
1235 "DEPTH_TO_SPACE",
1236 "DEQUANTIZE",
1237 "EMBEDDING_LOOKUP",
1238 "FLOOR",
1239 "FULLY_CONNECTED",
1240 "HASHTABLE_LOOKUP",
1241 "L2_NORMALIZATION",
1242 "L2_POOL_2D",
1243 "LOCAL_RESPONSE_NORMALIZATION",
1244 "LOGISTIC",
1245 "LSH_PROJECTION",
1246 "LSTM",
1247 "MAX_POOL_2D",
1248 "MUL",
1249 "RELU",
1250 "RELU_N1_TO_1",
1251 "RELU6",
1252 "RESHAPE",
1253 "RESIZE_BILINEAR",
1254 "RNN",
1255 "SOFTMAX",
1256 "SPACE_TO_DEPTH",
1257 "SVDF",
1258 "TANH",
1259 "CONCAT_EMBEDDINGS",
1260 "SKIP_GRAM",
1261 "CALL",
1262 "CUSTOM",
1263 "EMBEDDING_LOOKUP_SPARSE",
1264 "PAD",
1265 "UNIDIRECTIONAL_SEQUENCE_RNN",
1266 "GATHER",
1267 "BATCH_TO_SPACE_ND",
1268 "SPACE_TO_BATCH_ND",
1269 "TRANSPOSE",
1270 "MEAN",
1271 "SUB",
1272 "DIV",
1273 "SQUEEZE",
1274 "UNIDIRECTIONAL_SEQUENCE_LSTM",
1275 "STRIDED_SLICE",
1276 "BIDIRECTIONAL_SEQUENCE_RNN",
1277 "EXP",
1278 "TOPK_V2",
1279 "SPLIT",
1280 "LOG_SOFTMAX",
1281 "DELEGATE",
1282 "BIDIRECTIONAL_SEQUENCE_LSTM",
1283 "CAST",
1284 "PRELU",
1285 "MAXIMUM",
1286 "ARG_MAX",
1287 "MINIMUM",
1288 "LESS",
1289 "NEG",
1290 "PADV2",
1291 "GREATER",
1292 "GREATER_EQUAL",
1293 "LESS_EQUAL",
1294 "SELECT",
1295 "SLICE",
1296 "SIN",
1297 "TRANSPOSE_CONV",
1298 "SPARSE_TO_DENSE",
1299 "TILE",
1300 "EXPAND_DIMS",
1301 "EQUAL",
1302 "NOT_EQUAL",
1303 "LOG",
1304 "SUM",
1305 "SQRT",
1306 "RSQRT",
1307 "SHAPE",
1308 "POW",
1309 "ARG_MIN",
1310 "FAKE_QUANT",
1311 "REDUCE_PROD",
1312 "REDUCE_MAX",
1313 "PACK",
1314 "LOGICAL_OR",
1315 "ONE_HOT",
1316 "LOGICAL_AND",
1317 "LOGICAL_NOT",
1318 "UNPACK",
1319 "REDUCE_MIN",
1320 "FLOOR_DIV",
1321 "REDUCE_ANY",
1322 "SQUARE",
1323 "ZEROS_LIKE",
1324 "FILL",
1325 "FLOOR_MOD",
1326 "RANGE",
1327 "RESIZE_NEAREST_NEIGHBOR",
1328 "LEAKY_RELU",
1329 "SQUARED_DIFFERENCE",
1330 "MIRROR_PAD",
1331 "ABS",
1332 "SPLIT_V",
1333 "UNIQUE",
1334 "CEIL",
1335 "REVERSE_V2",
1336 "ADD_N",
1337 "GATHER_ND",
1338 "COS",
1339 "WHERE",
1340 "RANK",
1341 "ELU",
1342 "REVERSE_SEQUENCE",
1343 "MATRIX_DIAG",
1344 "QUANTIZE",
1345 "MATRIX_SET_DIAG",
1346 "ROUND",
1347 "HARD_SWISH",
1348 "IF",
1349 "WHILE",
1350 "NON_MAX_SUPPRESSION_V4",
1351 "NON_MAX_SUPPRESSION_V5",
1352 "SCATTER_ND",
1353 "SELECT_V2",
1354 "DENSIFY",
1355 "SEGMENT_SUM",
1356 "BATCH_MATMUL",
1357 "PLACEHOLDER_FOR_GREATER_OP_CODES",
1358 "CUMSUM",
1359 "CALL_ONCE",
1360 "BROADCAST_TO",
1361 "RFFT2D",
1362 "CONV_3D",
1363 "IMAG",
1364 "REAL",
1365 "COMPLEX_ABS",
1366 "HASHTABLE",
1367 "HASHTABLE_FIND",
1368 "HASHTABLE_IMPORT",
1369 "HASHTABLE_SIZE",
1370 "REDUCE_ALL",
1371 "CONV_3D_TRANSPOSE",
1372 "VAR_HANDLE",
1373 "READ_VARIABLE",
1374 "ASSIGN_VARIABLE",
1375 "BROADCAST_ARGS",
1376 "RANDOM_STANDARD_NORMAL",
1377 "BUCKETIZE",
1378 "RANDOM_UNIFORM",
1379 "MULTINOMIAL",
1380 "GELU",
1381 "DYNAMIC_UPDATE_SLICE",
1382 "RELU_0_TO_1",
1383 "UNSORTED_SEGMENT_PROD",
1384 "UNSORTED_SEGMENT_MAX",
1385 "UNSORTED_SEGMENT_SUM",
1386 "ATAN2",
1387 "UNSORTED_SEGMENT_MIN",
1388 "SIGN",
1389 nullptr
1390 };
1391 return names;
1392 }
1393
1394 inline const char *EnumNameBuiltinOperator(BuiltinOperator e) {
1395 if (flatbuffers::IsOutRange(e, BuiltinOperator_ADD, BuiltinOperator_SIGN)) return "";
1396 const size_t index = static_cast<size_t>(e);
1397 return EnumNamesBuiltinOperator()[index];
1398 }
1399
1400 enum BuiltinOptions : uint8_t {
1401 BuiltinOptions_NONE = 0,
1402 BuiltinOptions_Conv2DOptions = 1,
1403 BuiltinOptions_DepthwiseConv2DOptions = 2,
1404 BuiltinOptions_ConcatEmbeddingsOptions = 3,
1405 BuiltinOptions_LSHProjectionOptions = 4,
1406 BuiltinOptions_Pool2DOptions = 5,
1407 BuiltinOptions_SVDFOptions = 6,
1408 BuiltinOptions_RNNOptions = 7,
1409 BuiltinOptions_FullyConnectedOptions = 8,
1410 BuiltinOptions_SoftmaxOptions = 9,
1411 BuiltinOptions_ConcatenationOptions = 10,
1412 BuiltinOptions_AddOptions = 11,
1413 BuiltinOptions_L2NormOptions = 12,
1414 BuiltinOptions_LocalResponseNormalizationOptions = 13,
1415 BuiltinOptions_LSTMOptions = 14,
1416 BuiltinOptions_ResizeBilinearOptions = 15,
1417 BuiltinOptions_CallOptions = 16,
1418 BuiltinOptions_ReshapeOptions = 17,
1419 BuiltinOptions_SkipGramOptions = 18,
1420 BuiltinOptions_SpaceToDepthOptions = 19,
1421 BuiltinOptions_EmbeddingLookupSparseOptions = 20,
1422 BuiltinOptions_MulOptions = 21,
1423 BuiltinOptions_PadOptions = 22,
1424 BuiltinOptions_GatherOptions = 23,
1425 BuiltinOptions_BatchToSpaceNDOptions = 24,
1426 BuiltinOptions_SpaceToBatchNDOptions = 25,
1427 BuiltinOptions_TransposeOptions = 26,
1428 BuiltinOptions_ReducerOptions = 27,
1429 BuiltinOptions_SubOptions = 28,
1430 BuiltinOptions_DivOptions = 29,
1431 BuiltinOptions_SqueezeOptions = 30,
1432 BuiltinOptions_SequenceRNNOptions = 31,
1433 BuiltinOptions_StridedSliceOptions = 32,
1434 BuiltinOptions_ExpOptions = 33,
1435 BuiltinOptions_TopKV2Options = 34,
1436 BuiltinOptions_SplitOptions = 35,
1437 BuiltinOptions_LogSoftmaxOptions = 36,
1438 BuiltinOptions_CastOptions = 37,
1439 BuiltinOptions_DequantizeOptions = 38,
1440 BuiltinOptions_MaximumMinimumOptions = 39,
1441 BuiltinOptions_ArgMaxOptions = 40,
1442 BuiltinOptions_LessOptions = 41,
1443 BuiltinOptions_NegOptions = 42,
1444 BuiltinOptions_PadV2Options = 43,
1445 BuiltinOptions_GreaterOptions = 44,
1446 BuiltinOptions_GreaterEqualOptions = 45,
1447 BuiltinOptions_LessEqualOptions = 46,
1448 BuiltinOptions_SelectOptions = 47,
1449 BuiltinOptions_SliceOptions = 48,
1450 BuiltinOptions_TransposeConvOptions = 49,
1451 BuiltinOptions_SparseToDenseOptions = 50,
1452 BuiltinOptions_TileOptions = 51,
1453 BuiltinOptions_ExpandDimsOptions = 52,
1454 BuiltinOptions_EqualOptions = 53,
1455 BuiltinOptions_NotEqualOptions = 54,
1456 BuiltinOptions_ShapeOptions = 55,
1457 BuiltinOptions_PowOptions = 56,
1458 BuiltinOptions_ArgMinOptions = 57,
1459 BuiltinOptions_FakeQuantOptions = 58,
1460 BuiltinOptions_PackOptions = 59,
1461 BuiltinOptions_LogicalOrOptions = 60,
1462 BuiltinOptions_OneHotOptions = 61,
1463 BuiltinOptions_LogicalAndOptions = 62,
1464 BuiltinOptions_LogicalNotOptions = 63,
1465 BuiltinOptions_UnpackOptions = 64,
1466 BuiltinOptions_FloorDivOptions = 65,
1467 BuiltinOptions_SquareOptions = 66,
1468 BuiltinOptions_ZerosLikeOptions = 67,
1469 BuiltinOptions_FillOptions = 68,
1470 BuiltinOptions_BidirectionalSequenceLSTMOptions = 69,
1471 BuiltinOptions_BidirectionalSequenceRNNOptions = 70,
1472 BuiltinOptions_UnidirectionalSequenceLSTMOptions = 71,
1473 BuiltinOptions_FloorModOptions = 72,
1474 BuiltinOptions_RangeOptions = 73,
1475 BuiltinOptions_ResizeNearestNeighborOptions = 74,
1476 BuiltinOptions_LeakyReluOptions = 75,
1477 BuiltinOptions_SquaredDifferenceOptions = 76,
1478 BuiltinOptions_MirrorPadOptions = 77,
1479 BuiltinOptions_AbsOptions = 78,
1480 BuiltinOptions_SplitVOptions = 79,
1481 BuiltinOptions_UniqueOptions = 80,
1482 BuiltinOptions_ReverseV2Options = 81,
1483 BuiltinOptions_AddNOptions = 82,
1484 BuiltinOptions_GatherNdOptions = 83,
1485 BuiltinOptions_CosOptions = 84,
1486 BuiltinOptions_WhereOptions = 85,
1487 BuiltinOptions_RankOptions = 86,
1488 BuiltinOptions_ReverseSequenceOptions = 87,
1489 BuiltinOptions_MatrixDiagOptions = 88,
1490 BuiltinOptions_QuantizeOptions = 89,
1491 BuiltinOptions_MatrixSetDiagOptions = 90,
1492 BuiltinOptions_HardSwishOptions = 91,
1493 BuiltinOptions_IfOptions = 92,
1494 BuiltinOptions_WhileOptions = 93,
1495 BuiltinOptions_DepthToSpaceOptions = 94,
1496 BuiltinOptions_NonMaxSuppressionV4Options = 95,
1497 BuiltinOptions_NonMaxSuppressionV5Options = 96,
1498 BuiltinOptions_ScatterNdOptions = 97,
1499 BuiltinOptions_SelectV2Options = 98,
1500 BuiltinOptions_DensifyOptions = 99,
1501 BuiltinOptions_SegmentSumOptions = 100,
1502 BuiltinOptions_BatchMatMulOptions = 101,
1503 BuiltinOptions_CumsumOptions = 102,
1504 BuiltinOptions_CallOnceOptions = 103,
1505 BuiltinOptions_BroadcastToOptions = 104,
1506 BuiltinOptions_Rfft2dOptions = 105,
1507 BuiltinOptions_Conv3DOptions = 106,
1508 BuiltinOptions_HashtableOptions = 107,
1509 BuiltinOptions_HashtableFindOptions = 108,
1510 BuiltinOptions_HashtableImportOptions = 109,
1511 BuiltinOptions_HashtableSizeOptions = 110,
1512 BuiltinOptions_VarHandleOptions = 111,
1513 BuiltinOptions_ReadVariableOptions = 112,
1514 BuiltinOptions_AssignVariableOptions = 113,
1515 BuiltinOptions_RandomOptions = 114,
1516 BuiltinOptions_BucketizeOptions = 115,
1517 BuiltinOptions_GeluOptions = 116,
1518 BuiltinOptions_DynamicUpdateSliceOptions = 117,
1519 BuiltinOptions_UnsortedSegmentProdOptions = 118,
1520 BuiltinOptions_UnsortedSegmentMaxOptions = 119,
1521 BuiltinOptions_UnsortedSegmentMinOptions = 120,
1522 BuiltinOptions_UnsortedSegmentSumOptions = 121,
1523 BuiltinOptions_ATan2Options = 122,
1524 BuiltinOptions_SignOptions = 123,
1525 BuiltinOptions_MIN = BuiltinOptions_NONE,
1526 BuiltinOptions_MAX = BuiltinOptions_SignOptions
1527 };
1528
1529 inline const BuiltinOptions (&EnumValuesBuiltinOptions())[124] {
1530 static const BuiltinOptions values[] = {
1531 BuiltinOptions_NONE,
1532 BuiltinOptions_Conv2DOptions,
1533 BuiltinOptions_DepthwiseConv2DOptions,
1534 BuiltinOptions_ConcatEmbeddingsOptions,
1535 BuiltinOptions_LSHProjectionOptions,
1536 BuiltinOptions_Pool2DOptions,
1537 BuiltinOptions_SVDFOptions,
1538 BuiltinOptions_RNNOptions,
1539 BuiltinOptions_FullyConnectedOptions,
1540 BuiltinOptions_SoftmaxOptions,
1541 BuiltinOptions_ConcatenationOptions,
1542 BuiltinOptions_AddOptions,
1543 BuiltinOptions_L2NormOptions,
1544 BuiltinOptions_LocalResponseNormalizationOptions,
1545 BuiltinOptions_LSTMOptions,
1546 BuiltinOptions_ResizeBilinearOptions,
1547 BuiltinOptions_CallOptions,
1548 BuiltinOptions_ReshapeOptions,
1549 BuiltinOptions_SkipGramOptions,
1550 BuiltinOptions_SpaceToDepthOptions,
1551 BuiltinOptions_EmbeddingLookupSparseOptions,
1552 BuiltinOptions_MulOptions,
1553 BuiltinOptions_PadOptions,
1554 BuiltinOptions_GatherOptions,
1555 BuiltinOptions_BatchToSpaceNDOptions,
1556 BuiltinOptions_SpaceToBatchNDOptions,
1557 BuiltinOptions_TransposeOptions,
1558 BuiltinOptions_ReducerOptions,
1559 BuiltinOptions_SubOptions,
1560 BuiltinOptions_DivOptions,
1561 BuiltinOptions_SqueezeOptions,
1562 BuiltinOptions_SequenceRNNOptions,
1563 BuiltinOptions_StridedSliceOptions,
1564 BuiltinOptions_ExpOptions,
1565 BuiltinOptions_TopKV2Options,
1566 BuiltinOptions_SplitOptions,
1567 BuiltinOptions_LogSoftmaxOptions,
1568 BuiltinOptions_CastOptions,
1569 BuiltinOptions_DequantizeOptions,
1570 BuiltinOptions_MaximumMinimumOptions,
1571 BuiltinOptions_ArgMaxOptions,
1572 BuiltinOptions_LessOptions,
1573 BuiltinOptions_NegOptions,
1574 BuiltinOptions_PadV2Options,
1575 BuiltinOptions_GreaterOptions,
1576 BuiltinOptions_GreaterEqualOptions,
1577 BuiltinOptions_LessEqualOptions,
1578 BuiltinOptions_SelectOptions,
1579 BuiltinOptions_SliceOptions,
1580 BuiltinOptions_TransposeConvOptions,
1581 BuiltinOptions_SparseToDenseOptions,
1582 BuiltinOptions_TileOptions,
1583 BuiltinOptions_ExpandDimsOptions,
1584 BuiltinOptions_EqualOptions,
1585 BuiltinOptions_NotEqualOptions,
1586 BuiltinOptions_ShapeOptions,
1587 BuiltinOptions_PowOptions,
1588 BuiltinOptions_ArgMinOptions,
1589 BuiltinOptions_FakeQuantOptions,
1590 BuiltinOptions_PackOptions,
1591 BuiltinOptions_LogicalOrOptions,
1592 BuiltinOptions_OneHotOptions,
1593 BuiltinOptions_LogicalAndOptions,
1594 BuiltinOptions_LogicalNotOptions,
1595 BuiltinOptions_UnpackOptions,
1596 BuiltinOptions_FloorDivOptions,
1597 BuiltinOptions_SquareOptions,
1598 BuiltinOptions_ZerosLikeOptions,
1599 BuiltinOptions_FillOptions,
1600 BuiltinOptions_BidirectionalSequenceLSTMOptions,
1601 BuiltinOptions_BidirectionalSequenceRNNOptions,
1602 BuiltinOptions_UnidirectionalSequenceLSTMOptions,
1603 BuiltinOptions_FloorModOptions,
1604 BuiltinOptions_RangeOptions,
1605 BuiltinOptions_ResizeNearestNeighborOptions,
1606 BuiltinOptions_LeakyReluOptions,
1607 BuiltinOptions_SquaredDifferenceOptions,
1608 BuiltinOptions_MirrorPadOptions,
1609 BuiltinOptions_AbsOptions,
1610 BuiltinOptions_SplitVOptions,
1611 BuiltinOptions_UniqueOptions,
1612 BuiltinOptions_ReverseV2Options,
1613 BuiltinOptions_AddNOptions,
1614 BuiltinOptions_GatherNdOptions,
1615 BuiltinOptions_CosOptions,
1616 BuiltinOptions_WhereOptions,
1617 BuiltinOptions_RankOptions,
1618 BuiltinOptions_ReverseSequenceOptions,
1619 BuiltinOptions_MatrixDiagOptions,
1620 BuiltinOptions_QuantizeOptions,
1621 BuiltinOptions_MatrixSetDiagOptions,
1622 BuiltinOptions_HardSwishOptions,
1623 BuiltinOptions_IfOptions,
1624 BuiltinOptions_WhileOptions,
1625 BuiltinOptions_DepthToSpaceOptions,
1626 BuiltinOptions_NonMaxSuppressionV4Options,
1627 BuiltinOptions_NonMaxSuppressionV5Options,
1628 BuiltinOptions_ScatterNdOptions,
1629 BuiltinOptions_SelectV2Options,
1630 BuiltinOptions_DensifyOptions,
1631 BuiltinOptions_SegmentSumOptions,
1632 BuiltinOptions_BatchMatMulOptions,
1633 BuiltinOptions_CumsumOptions,
1634 BuiltinOptions_CallOnceOptions,
1635 BuiltinOptions_BroadcastToOptions,
1636 BuiltinOptions_Rfft2dOptions,
1637 BuiltinOptions_Conv3DOptions,
1638 BuiltinOptions_HashtableOptions,
1639 BuiltinOptions_HashtableFindOptions,
1640 BuiltinOptions_HashtableImportOptions,
1641 BuiltinOptions_HashtableSizeOptions,
1642 BuiltinOptions_VarHandleOptions,
1643 BuiltinOptions_ReadVariableOptions,
1644 BuiltinOptions_AssignVariableOptions,
1645 BuiltinOptions_RandomOptions,
1646 BuiltinOptions_BucketizeOptions,
1647 BuiltinOptions_GeluOptions,
1648 BuiltinOptions_DynamicUpdateSliceOptions,
1649 BuiltinOptions_UnsortedSegmentProdOptions,
1650 BuiltinOptions_UnsortedSegmentMaxOptions,
1651 BuiltinOptions_UnsortedSegmentMinOptions,
1652 BuiltinOptions_UnsortedSegmentSumOptions,
1653 BuiltinOptions_ATan2Options,
1654 BuiltinOptions_SignOptions
1655 };
1656 return values;
1657 }
1658
1659 inline const char * const *EnumNamesBuiltinOptions() {
1660 static const char * const names[125] = {
1661 "NONE",
1662 "Conv2DOptions",
1663 "DepthwiseConv2DOptions",
1664 "ConcatEmbeddingsOptions",
1665 "LSHProjectionOptions",
1666 "Pool2DOptions",
1667 "SVDFOptions",
1668 "RNNOptions",
1669 "FullyConnectedOptions",
1670 "SoftmaxOptions",
1671 "ConcatenationOptions",
1672 "AddOptions",
1673 "L2NormOptions",
1674 "LocalResponseNormalizationOptions",
1675 "LSTMOptions",
1676 "ResizeBilinearOptions",
1677 "CallOptions",
1678 "ReshapeOptions",
1679 "SkipGramOptions",
1680 "SpaceToDepthOptions",
1681 "EmbeddingLookupSparseOptions",
1682 "MulOptions",
1683 "PadOptions",
1684 "GatherOptions",
1685 "BatchToSpaceNDOptions",
1686 "SpaceToBatchNDOptions",
1687 "TransposeOptions",
1688 "ReducerOptions",
1689 "SubOptions",
1690 "DivOptions",
1691 "SqueezeOptions",
1692 "SequenceRNNOptions",
1693 "StridedSliceOptions",
1694 "ExpOptions",
1695 "TopKV2Options",
1696 "SplitOptions",
1697 "LogSoftmaxOptions",
1698 "CastOptions",
1699 "DequantizeOptions",
1700 "MaximumMinimumOptions",
1701 "ArgMaxOptions",
1702 "LessOptions",
1703 "NegOptions",
1704 "PadV2Options",
1705 "GreaterOptions",
1706 "GreaterEqualOptions",
1707 "LessEqualOptions",
1708 "SelectOptions",
1709 "SliceOptions",
1710 "TransposeConvOptions",
1711 "SparseToDenseOptions",
1712 "TileOptions",
1713 "ExpandDimsOptions",
1714 "EqualOptions",
1715 "NotEqualOptions",
1716 "ShapeOptions",
1717 "PowOptions",
1718 "ArgMinOptions",
1719 "FakeQuantOptions",
1720 "PackOptions",
1721 "LogicalOrOptions",
1722 "OneHotOptions",
1723 "LogicalAndOptions",
1724 "LogicalNotOptions",
1725 "UnpackOptions",
1726 "FloorDivOptions",
1727 "SquareOptions",
1728 "ZerosLikeOptions",
1729 "FillOptions",
1730 "BidirectionalSequenceLSTMOptions",
1731 "BidirectionalSequenceRNNOptions",
1732 "UnidirectionalSequenceLSTMOptions",
1733 "FloorModOptions",
1734 "RangeOptions",
1735 "ResizeNearestNeighborOptions",
1736 "LeakyReluOptions",
1737 "SquaredDifferenceOptions",
1738 "MirrorPadOptions",
1739 "AbsOptions",
1740 "SplitVOptions",
1741 "UniqueOptions",
1742 "ReverseV2Options",
1743 "AddNOptions",
1744 "GatherNdOptions",
1745 "CosOptions",
1746 "WhereOptions",
1747 "RankOptions",
1748 "ReverseSequenceOptions",
1749 "MatrixDiagOptions",
1750 "QuantizeOptions",
1751 "MatrixSetDiagOptions",
1752 "HardSwishOptions",
1753 "IfOptions",
1754 "WhileOptions",
1755 "DepthToSpaceOptions",
1756 "NonMaxSuppressionV4Options",
1757 "NonMaxSuppressionV5Options",
1758 "ScatterNdOptions",
1759 "SelectV2Options",
1760 "DensifyOptions",
1761 "SegmentSumOptions",
1762 "BatchMatMulOptions",
1763 "CumsumOptions",
1764 "CallOnceOptions",
1765 "BroadcastToOptions",
1766 "Rfft2dOptions",
1767 "Conv3DOptions",
1768 "HashtableOptions",
1769 "HashtableFindOptions",
1770 "HashtableImportOptions",
1771 "HashtableSizeOptions",
1772 "VarHandleOptions",
1773 "ReadVariableOptions",
1774 "AssignVariableOptions",
1775 "RandomOptions",
1776 "BucketizeOptions",
1777 "GeluOptions",
1778 "DynamicUpdateSliceOptions",
1779 "UnsortedSegmentProdOptions",
1780 "UnsortedSegmentMaxOptions",
1781 "UnsortedSegmentMinOptions",
1782 "UnsortedSegmentSumOptions",
1783 "ATan2Options",
1784 "SignOptions",
1785 nullptr
1786 };
1787 return names;
1788 }
1789
1790 inline const char *EnumNameBuiltinOptions(BuiltinOptions e) {
1791 if (flatbuffers::IsOutRange(e, BuiltinOptions_NONE, BuiltinOptions_SignOptions)) return "";
1792 const size_t index = static_cast<size_t>(e);
1793 return EnumNamesBuiltinOptions()[index];
1794 }
1795
1796 template<typename T> struct BuiltinOptionsTraits {
1797 static const BuiltinOptions enum_value = BuiltinOptions_NONE;
1798 };
1799
1800 template<> struct BuiltinOptionsTraits<tflite::Conv2DOptions> {
1801 static const BuiltinOptions enum_value = BuiltinOptions_Conv2DOptions;
1802 };
1803
1804 template<> struct BuiltinOptionsTraits<tflite::DepthwiseConv2DOptions> {
1805 static const BuiltinOptions enum_value = BuiltinOptions_DepthwiseConv2DOptions;
1806 };
1807
1808 template<> struct BuiltinOptionsTraits<tflite::ConcatEmbeddingsOptions> {
1809 static const BuiltinOptions enum_value = BuiltinOptions_ConcatEmbeddingsOptions;
1810 };
1811
1812 template<> struct BuiltinOptionsTraits<tflite::LSHProjectionOptions> {
1813 static const BuiltinOptions enum_value = BuiltinOptions_LSHProjectionOptions;
1814 };
1815
1816 template<> struct BuiltinOptionsTraits<tflite::Pool2DOptions> {
1817 static const BuiltinOptions enum_value = BuiltinOptions_Pool2DOptions;
1818 };
1819
1820 template<> struct BuiltinOptionsTraits<tflite::SVDFOptions> {
1821 static const BuiltinOptions enum_value = BuiltinOptions_SVDFOptions;
1822 };
1823
1824 template<> struct BuiltinOptionsTraits<tflite::RNNOptions> {
1825 static const BuiltinOptions enum_value = BuiltinOptions_RNNOptions;
1826 };
1827
1828 template<> struct BuiltinOptionsTraits<tflite::FullyConnectedOptions> {
1829 static const BuiltinOptions enum_value = BuiltinOptions_FullyConnectedOptions;
1830 };
1831
1832 template<> struct BuiltinOptionsTraits<tflite::SoftmaxOptions> {
1833 static const BuiltinOptions enum_value = BuiltinOptions_SoftmaxOptions;
1834 };
1835
1836 template<> struct BuiltinOptionsTraits<tflite::ConcatenationOptions> {
1837 static const BuiltinOptions enum_value = BuiltinOptions_ConcatenationOptions;
1838 };
1839
1840 template<> struct BuiltinOptionsTraits<tflite::AddOptions> {
1841 static const BuiltinOptions enum_value = BuiltinOptions_AddOptions;
1842 };
1843
1844 template<> struct BuiltinOptionsTraits<tflite::L2NormOptions> {
1845 static const BuiltinOptions enum_value = BuiltinOptions_L2NormOptions;
1846 };
1847
1848 template<> struct BuiltinOptionsTraits<tflite::LocalResponseNormalizationOptions> {
1849 static const BuiltinOptions enum_value = BuiltinOptions_LocalResponseNormalizationOptions;
1850 };
1851
1852 template<> struct BuiltinOptionsTraits<tflite::LSTMOptions> {
1853 static const BuiltinOptions enum_value = BuiltinOptions_LSTMOptions;
1854 };
1855
1856 template<> struct BuiltinOptionsTraits<tflite::ResizeBilinearOptions> {
1857 static const BuiltinOptions enum_value = BuiltinOptions_ResizeBilinearOptions;
1858 };
1859
1860 template<> struct BuiltinOptionsTraits<tflite::CallOptions> {
1861 static const BuiltinOptions enum_value = BuiltinOptions_CallOptions;
1862 };
1863
1864 template<> struct BuiltinOptionsTraits<tflite::ReshapeOptions> {
1865 static const BuiltinOptions enum_value = BuiltinOptions_ReshapeOptions;
1866 };
1867
1868 template<> struct BuiltinOptionsTraits<tflite::SkipGramOptions> {
1869 static const BuiltinOptions enum_value = BuiltinOptions_SkipGramOptions;
1870 };
1871
1872 template<> struct BuiltinOptionsTraits<tflite::SpaceToDepthOptions> {
1873 static const BuiltinOptions enum_value = BuiltinOptions_SpaceToDepthOptions;
1874 };
1875
1876 template<> struct BuiltinOptionsTraits<tflite::EmbeddingLookupSparseOptions> {
1877 static const BuiltinOptions enum_value = BuiltinOptions_EmbeddingLookupSparseOptions;
1878 };
1879
1880 template<> struct BuiltinOptionsTraits<tflite::MulOptions> {
1881 static const BuiltinOptions enum_value = BuiltinOptions_MulOptions;
1882 };
1883
1884 template<> struct BuiltinOptionsTraits<tflite::PadOptions> {
1885 static const BuiltinOptions enum_value = BuiltinOptions_PadOptions;
1886 };
1887
1888 template<> struct BuiltinOptionsTraits<tflite::GatherOptions> {
1889 static const BuiltinOptions enum_value = BuiltinOptions_GatherOptions;
1890 };
1891
1892 template<> struct BuiltinOptionsTraits<tflite::BatchToSpaceNDOptions> {
1893 static const BuiltinOptions enum_value = BuiltinOptions_BatchToSpaceNDOptions;
1894 };
1895
1896 template<> struct BuiltinOptionsTraits<tflite::SpaceToBatchNDOptions> {
1897 static const BuiltinOptions enum_value = BuiltinOptions_SpaceToBatchNDOptions;
1898 };
1899
1900 template<> struct BuiltinOptionsTraits<tflite::TransposeOptions> {
1901 static const BuiltinOptions enum_value = BuiltinOptions_TransposeOptions;
1902 };
1903
1904 template<> struct BuiltinOptionsTraits<tflite::ReducerOptions> {
1905 static const BuiltinOptions enum_value = BuiltinOptions_ReducerOptions;
1906 };
1907
1908 template<> struct BuiltinOptionsTraits<tflite::SubOptions> {
1909 static const BuiltinOptions enum_value = BuiltinOptions_SubOptions;
1910 };
1911
1912 template<> struct BuiltinOptionsTraits<tflite::DivOptions> {
1913 static const BuiltinOptions enum_value = BuiltinOptions_DivOptions;
1914 };
1915
1916 template<> struct BuiltinOptionsTraits<tflite::SqueezeOptions> {
1917 static const BuiltinOptions enum_value = BuiltinOptions_SqueezeOptions;
1918 };
1919
1920 template<> struct BuiltinOptionsTraits<tflite::SequenceRNNOptions> {
1921 static const BuiltinOptions enum_value = BuiltinOptions_SequenceRNNOptions;
1922 };
1923
1924 template<> struct BuiltinOptionsTraits<tflite::StridedSliceOptions> {
1925 static const BuiltinOptions enum_value = BuiltinOptions_StridedSliceOptions;
1926 };
1927
1928 template<> struct BuiltinOptionsTraits<tflite::ExpOptions> {
1929 static const BuiltinOptions enum_value = BuiltinOptions_ExpOptions;
1930 };
1931
1932 template<> struct BuiltinOptionsTraits<tflite::TopKV2Options> {
1933 static const BuiltinOptions enum_value = BuiltinOptions_TopKV2Options;
1934 };
1935
1936 template<> struct BuiltinOptionsTraits<tflite::SplitOptions> {
1937 static const BuiltinOptions enum_value = BuiltinOptions_SplitOptions;
1938 };
1939
1940 template<> struct BuiltinOptionsTraits<tflite::LogSoftmaxOptions> {
1941 static const BuiltinOptions enum_value = BuiltinOptions_LogSoftmaxOptions;
1942 };
1943
1944 template<> struct BuiltinOptionsTraits<tflite::CastOptions> {
1945 static const BuiltinOptions enum_value = BuiltinOptions_CastOptions;
1946 };
1947
1948 template<> struct BuiltinOptionsTraits<tflite::DequantizeOptions> {
1949 static const BuiltinOptions enum_value = BuiltinOptions_DequantizeOptions;
1950 };
1951
1952 template<> struct BuiltinOptionsTraits<tflite::MaximumMinimumOptions> {
1953 static const BuiltinOptions enum_value = BuiltinOptions_MaximumMinimumOptions;
1954 };
1955
1956 template<> struct BuiltinOptionsTraits<tflite::ArgMaxOptions> {
1957 static const BuiltinOptions enum_value = BuiltinOptions_ArgMaxOptions;
1958 };
1959
1960 template<> struct BuiltinOptionsTraits<tflite::LessOptions> {
1961 static const BuiltinOptions enum_value = BuiltinOptions_LessOptions;
1962 };
1963
1964 template<> struct BuiltinOptionsTraits<tflite::NegOptions> {
1965 static const BuiltinOptions enum_value = BuiltinOptions_NegOptions;
1966 };
1967
1968 template<> struct BuiltinOptionsTraits<tflite::PadV2Options> {
1969 static const BuiltinOptions enum_value = BuiltinOptions_PadV2Options;
1970 };
1971
1972 template<> struct BuiltinOptionsTraits<tflite::GreaterOptions> {
1973 static const BuiltinOptions enum_value = BuiltinOptions_GreaterOptions;
1974 };
1975
1976 template<> struct BuiltinOptionsTraits<tflite::GreaterEqualOptions> {
1977 static const BuiltinOptions enum_value = BuiltinOptions_GreaterEqualOptions;
1978 };
1979
1980 template<> struct BuiltinOptionsTraits<tflite::LessEqualOptions> {
1981 static const BuiltinOptions enum_value = BuiltinOptions_LessEqualOptions;
1982 };
1983
1984 template<> struct BuiltinOptionsTraits<tflite::SelectOptions> {
1985 static const BuiltinOptions enum_value = BuiltinOptions_SelectOptions;
1986 };
1987
1988 template<> struct BuiltinOptionsTraits<tflite::SliceOptions> {
1989 static const BuiltinOptions enum_value = BuiltinOptions_SliceOptions;
1990 };
1991
1992 template<> struct BuiltinOptionsTraits<tflite::TransposeConvOptions> {
1993 static const BuiltinOptions enum_value = BuiltinOptions_TransposeConvOptions;
1994 };
1995
1996 template<> struct BuiltinOptionsTraits<tflite::SparseToDenseOptions> {
1997 static const BuiltinOptions enum_value = BuiltinOptions_SparseToDenseOptions;
1998 };
1999
2000 template<> struct BuiltinOptionsTraits<tflite::TileOptions> {
2001 static const BuiltinOptions enum_value = BuiltinOptions_TileOptions;
2002 };
2003
2004 template<> struct BuiltinOptionsTraits<tflite::ExpandDimsOptions> {
2005 static const BuiltinOptions enum_value = BuiltinOptions_ExpandDimsOptions;
2006 };
2007
2008 template<> struct BuiltinOptionsTraits<tflite::EqualOptions> {
2009 static const BuiltinOptions enum_value = BuiltinOptions_EqualOptions;
2010 };
2011
2012 template<> struct BuiltinOptionsTraits<tflite::NotEqualOptions> {
2013 static const BuiltinOptions enum_value = BuiltinOptions_NotEqualOptions;
2014 };
2015
2016 template<> struct BuiltinOptionsTraits<tflite::ShapeOptions> {
2017 static const BuiltinOptions enum_value = BuiltinOptions_ShapeOptions;
2018 };
2019
2020 template<> struct BuiltinOptionsTraits<tflite::PowOptions> {
2021 static const BuiltinOptions enum_value = BuiltinOptions_PowOptions;
2022 };
2023
2024 template<> struct BuiltinOptionsTraits<tflite::ArgMinOptions> {
2025 static const BuiltinOptions enum_value = BuiltinOptions_ArgMinOptions;
2026 };
2027
2028 template<> struct BuiltinOptionsTraits<tflite::FakeQuantOptions> {
2029 static const BuiltinOptions enum_value = BuiltinOptions_FakeQuantOptions;
2030 };
2031
2032 template<> struct BuiltinOptionsTraits<tflite::PackOptions> {
2033 static const BuiltinOptions enum_value = BuiltinOptions_PackOptions;
2034 };
2035
2036 template<> struct BuiltinOptionsTraits<tflite::LogicalOrOptions> {
2037 static const BuiltinOptions enum_value = BuiltinOptions_LogicalOrOptions;
2038 };
2039
2040 template<> struct BuiltinOptionsTraits<tflite::OneHotOptions> {
2041 static const BuiltinOptions enum_value = BuiltinOptions_OneHotOptions;
2042 };
2043
2044 template<> struct BuiltinOptionsTraits<tflite::LogicalAndOptions> {
2045 static const BuiltinOptions enum_value = BuiltinOptions_LogicalAndOptions;
2046 };
2047
2048 template<> struct BuiltinOptionsTraits<tflite::LogicalNotOptions> {
2049 static const BuiltinOptions enum_value = BuiltinOptions_LogicalNotOptions;
2050 };
2051
2052 template<> struct BuiltinOptionsTraits<tflite::UnpackOptions> {
2053 static const BuiltinOptions enum_value = BuiltinOptions_UnpackOptions;
2054 };
2055
2056 template<> struct BuiltinOptionsTraits<tflite::FloorDivOptions> {
2057 static const BuiltinOptions enum_value = BuiltinOptions_FloorDivOptions;
2058 };
2059
2060 template<> struct BuiltinOptionsTraits<tflite::SquareOptions> {
2061 static const BuiltinOptions enum_value = BuiltinOptions_SquareOptions;
2062 };
2063
2064 template<> struct BuiltinOptionsTraits<tflite::ZerosLikeOptions> {
2065 static const BuiltinOptions enum_value = BuiltinOptions_ZerosLikeOptions;
2066 };
2067
2068 template<> struct BuiltinOptionsTraits<tflite::FillOptions> {
2069 static const BuiltinOptions enum_value = BuiltinOptions_FillOptions;
2070 };
2071
2072 template<> struct BuiltinOptionsTraits<tflite::BidirectionalSequenceLSTMOptions> {
2073 static const BuiltinOptions enum_value = BuiltinOptions_BidirectionalSequenceLSTMOptions;
2074 };
2075
2076 template<> struct BuiltinOptionsTraits<tflite::BidirectionalSequenceRNNOptions> {
2077 static const BuiltinOptions enum_value = BuiltinOptions_BidirectionalSequenceRNNOptions;
2078 };
2079
2080 template<> struct BuiltinOptionsTraits<tflite::UnidirectionalSequenceLSTMOptions> {
2081 static const BuiltinOptions enum_value = BuiltinOptions_UnidirectionalSequenceLSTMOptions;
2082 };
2083
2084 template<> struct BuiltinOptionsTraits<tflite::FloorModOptions> {
2085 static const BuiltinOptions enum_value = BuiltinOptions_FloorModOptions;
2086 };
2087
2088 template<> struct BuiltinOptionsTraits<tflite::RangeOptions> {
2089 static const BuiltinOptions enum_value = BuiltinOptions_RangeOptions;
2090 };
2091
2092 template<> struct BuiltinOptionsTraits<tflite::ResizeNearestNeighborOptions> {
2093 static const BuiltinOptions enum_value = BuiltinOptions_ResizeNearestNeighborOptions;
2094 };
2095
2096 template<> struct BuiltinOptionsTraits<tflite::LeakyReluOptions> {
2097 static const BuiltinOptions enum_value = BuiltinOptions_LeakyReluOptions;
2098 };
2099
2100 template<> struct BuiltinOptionsTraits<tflite::SquaredDifferenceOptions> {
2101 static const BuiltinOptions enum_value = BuiltinOptions_SquaredDifferenceOptions;
2102 };
2103
2104 template<> struct BuiltinOptionsTraits<tflite::MirrorPadOptions> {
2105 static const BuiltinOptions enum_value = BuiltinOptions_MirrorPadOptions;
2106 };
2107
2108 template<> struct BuiltinOptionsTraits<tflite::AbsOptions> {
2109 static const BuiltinOptions enum_value = BuiltinOptions_AbsOptions;
2110 };
2111
2112 template<> struct BuiltinOptionsTraits<tflite::SplitVOptions> {
2113 static const BuiltinOptions enum_value = BuiltinOptions_SplitVOptions;
2114 };
2115
2116 template<> struct BuiltinOptionsTraits<tflite::UniqueOptions> {
2117 static const BuiltinOptions enum_value = BuiltinOptions_UniqueOptions;
2118 };
2119
2120 template<> struct BuiltinOptionsTraits<tflite::ReverseV2Options> {
2121 static const BuiltinOptions enum_value = BuiltinOptions_ReverseV2Options;
2122 };
2123
2124 template<> struct BuiltinOptionsTraits<tflite::AddNOptions> {
2125 static const BuiltinOptions enum_value = BuiltinOptions_AddNOptions;
2126 };
2127
2128 template<> struct BuiltinOptionsTraits<tflite::GatherNdOptions> {
2129 static const BuiltinOptions enum_value = BuiltinOptions_GatherNdOptions;
2130 };
2131
2132 template<> struct BuiltinOptionsTraits<tflite::CosOptions> {
2133 static const BuiltinOptions enum_value = BuiltinOptions_CosOptions;
2134 };
2135
2136 template<> struct BuiltinOptionsTraits<tflite::WhereOptions> {
2137 static const BuiltinOptions enum_value = BuiltinOptions_WhereOptions;
2138 };
2139
2140 template<> struct BuiltinOptionsTraits<tflite::RankOptions> {
2141 static const BuiltinOptions enum_value = BuiltinOptions_RankOptions;
2142 };
2143
2144 template<> struct BuiltinOptionsTraits<tflite::ReverseSequenceOptions> {
2145 static const BuiltinOptions enum_value = BuiltinOptions_ReverseSequenceOptions;
2146 };
2147
2148 template<> struct BuiltinOptionsTraits<tflite::MatrixDiagOptions> {
2149 static const BuiltinOptions enum_value = BuiltinOptions_MatrixDiagOptions;
2150 };
2151
2152 template<> struct BuiltinOptionsTraits<tflite::QuantizeOptions> {
2153 static const BuiltinOptions enum_value = BuiltinOptions_QuantizeOptions;
2154 };
2155
2156 template<> struct BuiltinOptionsTraits<tflite::MatrixSetDiagOptions> {
2157 static const BuiltinOptions enum_value = BuiltinOptions_MatrixSetDiagOptions;
2158 };
2159
2160 template<> struct BuiltinOptionsTraits<tflite::HardSwishOptions> {
2161 static const BuiltinOptions enum_value = BuiltinOptions_HardSwishOptions;
2162 };
2163
2164 template<> struct BuiltinOptionsTraits<tflite::IfOptions> {
2165 static const BuiltinOptions enum_value = BuiltinOptions_IfOptions;
2166 };
2167
2168 template<> struct BuiltinOptionsTraits<tflite::WhileOptions> {
2169 static const BuiltinOptions enum_value = BuiltinOptions_WhileOptions;
2170 };
2171
2172 template<> struct BuiltinOptionsTraits<tflite::DepthToSpaceOptions> {
2173 static const BuiltinOptions enum_value = BuiltinOptions_DepthToSpaceOptions;
2174 };
2175
2176 template<> struct BuiltinOptionsTraits<tflite::NonMaxSuppressionV4Options> {
2177 static const BuiltinOptions enum_value = BuiltinOptions_NonMaxSuppressionV4Options;
2178 };
2179
2180 template<> struct BuiltinOptionsTraits<tflite::NonMaxSuppressionV5Options> {
2181 static const BuiltinOptions enum_value = BuiltinOptions_NonMaxSuppressionV5Options;
2182 };
2183
2184 template<> struct BuiltinOptionsTraits<tflite::ScatterNdOptions> {
2185 static const BuiltinOptions enum_value = BuiltinOptions_ScatterNdOptions;
2186 };
2187
2188 template<> struct BuiltinOptionsTraits<tflite::SelectV2Options> {
2189 static const BuiltinOptions enum_value = BuiltinOptions_SelectV2Options;
2190 };
2191
2192 template<> struct BuiltinOptionsTraits<tflite::DensifyOptions> {
2193 static const BuiltinOptions enum_value = BuiltinOptions_DensifyOptions;
2194 };
2195
2196 template<> struct BuiltinOptionsTraits<tflite::SegmentSumOptions> {
2197 static const BuiltinOptions enum_value = BuiltinOptions_SegmentSumOptions;
2198 };
2199
2200 template<> struct BuiltinOptionsTraits<tflite::BatchMatMulOptions> {
2201 static const BuiltinOptions enum_value = BuiltinOptions_BatchMatMulOptions;
2202 };
2203
2204 template<> struct BuiltinOptionsTraits<tflite::CumsumOptions> {
2205 static const BuiltinOptions enum_value = BuiltinOptions_CumsumOptions;
2206 };
2207
2208 template<> struct BuiltinOptionsTraits<tflite::CallOnceOptions> {
2209 static const BuiltinOptions enum_value = BuiltinOptions_CallOnceOptions;
2210 };
2211
2212 template<> struct BuiltinOptionsTraits<tflite::BroadcastToOptions> {
2213 static const BuiltinOptions enum_value = BuiltinOptions_BroadcastToOptions;
2214 };
2215
2216 template<> struct BuiltinOptionsTraits<tflite::Rfft2dOptions> {
2217 static const BuiltinOptions enum_value = BuiltinOptions_Rfft2dOptions;
2218 };
2219
2220 template<> struct BuiltinOptionsTraits<tflite::Conv3DOptions> {
2221 static const BuiltinOptions enum_value = BuiltinOptions_Conv3DOptions;
2222 };
2223
2224 template<> struct BuiltinOptionsTraits<tflite::HashtableOptions> {
2225 static const BuiltinOptions enum_value = BuiltinOptions_HashtableOptions;
2226 };
2227
2228 template<> struct BuiltinOptionsTraits<tflite::HashtableFindOptions> {
2229 static const BuiltinOptions enum_value = BuiltinOptions_HashtableFindOptions;
2230 };
2231
2232 template<> struct BuiltinOptionsTraits<tflite::HashtableImportOptions> {
2233 static const BuiltinOptions enum_value = BuiltinOptions_HashtableImportOptions;
2234 };
2235
2236 template<> struct BuiltinOptionsTraits<tflite::HashtableSizeOptions> {
2237 static const BuiltinOptions enum_value = BuiltinOptions_HashtableSizeOptions;
2238 };
2239
2240 template<> struct BuiltinOptionsTraits<tflite::VarHandleOptions> {
2241 static const BuiltinOptions enum_value = BuiltinOptions_VarHandleOptions;
2242 };
2243
2244 template<> struct BuiltinOptionsTraits<tflite::ReadVariableOptions> {
2245 static const BuiltinOptions enum_value = BuiltinOptions_ReadVariableOptions;
2246 };
2247
2248 template<> struct BuiltinOptionsTraits<tflite::AssignVariableOptions> {
2249 static const BuiltinOptions enum_value = BuiltinOptions_AssignVariableOptions;
2250 };
2251
2252 template<> struct BuiltinOptionsTraits<tflite::RandomOptions> {
2253 static const BuiltinOptions enum_value = BuiltinOptions_RandomOptions;
2254 };
2255
2256 template<> struct BuiltinOptionsTraits<tflite::BucketizeOptions> {
2257 static const BuiltinOptions enum_value = BuiltinOptions_BucketizeOptions;
2258 };
2259
2260 template<> struct BuiltinOptionsTraits<tflite::GeluOptions> {
2261 static const BuiltinOptions enum_value = BuiltinOptions_GeluOptions;
2262 };
2263
2264 template<> struct BuiltinOptionsTraits<tflite::DynamicUpdateSliceOptions> {
2265 static const BuiltinOptions enum_value = BuiltinOptions_DynamicUpdateSliceOptions;
2266 };
2267
2268 template<> struct BuiltinOptionsTraits<tflite::UnsortedSegmentProdOptions> {
2269 static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentProdOptions;
2270 };
2271
2272 template<> struct BuiltinOptionsTraits<tflite::UnsortedSegmentMaxOptions> {
2273 static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentMaxOptions;
2274 };
2275
2276 template<> struct BuiltinOptionsTraits<tflite::UnsortedSegmentMinOptions> {
2277 static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentMinOptions;
2278 };
2279
2280 template<> struct BuiltinOptionsTraits<tflite::UnsortedSegmentSumOptions> {
2281 static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentSumOptions;
2282 };
2283
2284 template<> struct BuiltinOptionsTraits<tflite::ATan2Options> {
2285 static const BuiltinOptions enum_value = BuiltinOptions_ATan2Options;
2286 };
2287
2288 template<> struct BuiltinOptionsTraits<tflite::SignOptions> {
2289 static const BuiltinOptions enum_value = BuiltinOptions_SignOptions;
2290 };
2291
2292 template<typename T> struct BuiltinOptionsUnionTraits {
2293 static const BuiltinOptions enum_value = BuiltinOptions_NONE;
2294 };
2295
2296 template<> struct BuiltinOptionsUnionTraits<tflite::Conv2DOptionsT> {
2297 static const BuiltinOptions enum_value = BuiltinOptions_Conv2DOptions;
2298 };
2299
2300 template<> struct BuiltinOptionsUnionTraits<tflite::DepthwiseConv2DOptionsT> {
2301 static const BuiltinOptions enum_value = BuiltinOptions_DepthwiseConv2DOptions;
2302 };
2303
2304 template<> struct BuiltinOptionsUnionTraits<tflite::ConcatEmbeddingsOptionsT> {
2305 static const BuiltinOptions enum_value = BuiltinOptions_ConcatEmbeddingsOptions;
2306 };
2307
2308 template<> struct BuiltinOptionsUnionTraits<tflite::LSHProjectionOptionsT> {
2309 static const BuiltinOptions enum_value = BuiltinOptions_LSHProjectionOptions;
2310 };
2311
2312 template<> struct BuiltinOptionsUnionTraits<tflite::Pool2DOptionsT> {
2313 static const BuiltinOptions enum_value = BuiltinOptions_Pool2DOptions;
2314 };
2315
2316 template<> struct BuiltinOptionsUnionTraits<tflite::SVDFOptionsT> {
2317 static const BuiltinOptions enum_value = BuiltinOptions_SVDFOptions;
2318 };
2319
2320 template<> struct BuiltinOptionsUnionTraits<tflite::RNNOptionsT> {
2321 static const BuiltinOptions enum_value = BuiltinOptions_RNNOptions;
2322 };
2323
2324 template<> struct BuiltinOptionsUnionTraits<tflite::FullyConnectedOptionsT> {
2325 static const BuiltinOptions enum_value = BuiltinOptions_FullyConnectedOptions;
2326 };
2327
2328 template<> struct BuiltinOptionsUnionTraits<tflite::SoftmaxOptionsT> {
2329 static const BuiltinOptions enum_value = BuiltinOptions_SoftmaxOptions;
2330 };
2331
2332 template<> struct BuiltinOptionsUnionTraits<tflite::ConcatenationOptionsT> {
2333 static const BuiltinOptions enum_value = BuiltinOptions_ConcatenationOptions;
2334 };
2335
2336 template<> struct BuiltinOptionsUnionTraits<tflite::AddOptionsT> {
2337 static const BuiltinOptions enum_value = BuiltinOptions_AddOptions;
2338 };
2339
2340 template<> struct BuiltinOptionsUnionTraits<tflite::L2NormOptionsT> {
2341 static const BuiltinOptions enum_value = BuiltinOptions_L2NormOptions;
2342 };
2343
2344 template<> struct BuiltinOptionsUnionTraits<tflite::LocalResponseNormalizationOptionsT> {
2345 static const BuiltinOptions enum_value = BuiltinOptions_LocalResponseNormalizationOptions;
2346 };
2347
2348 template<> struct BuiltinOptionsUnionTraits<tflite::LSTMOptionsT> {
2349 static const BuiltinOptions enum_value = BuiltinOptions_LSTMOptions;
2350 };
2351
2352 template<> struct BuiltinOptionsUnionTraits<tflite::ResizeBilinearOptionsT> {
2353 static const BuiltinOptions enum_value = BuiltinOptions_ResizeBilinearOptions;
2354 };
2355
2356 template<> struct BuiltinOptionsUnionTraits<tflite::CallOptionsT> {
2357 static const BuiltinOptions enum_value = BuiltinOptions_CallOptions;
2358 };
2359
2360 template<> struct BuiltinOptionsUnionTraits<tflite::ReshapeOptionsT> {
2361 static const BuiltinOptions enum_value = BuiltinOptions_ReshapeOptions;
2362 };
2363
2364 template<> struct BuiltinOptionsUnionTraits<tflite::SkipGramOptionsT> {
2365 static const BuiltinOptions enum_value = BuiltinOptions_SkipGramOptions;
2366 };
2367
2368 template<> struct BuiltinOptionsUnionTraits<tflite::SpaceToDepthOptionsT> {
2369 static const BuiltinOptions enum_value = BuiltinOptions_SpaceToDepthOptions;
2370 };
2371
2372 template<> struct BuiltinOptionsUnionTraits<tflite::EmbeddingLookupSparseOptionsT> {
2373 static const BuiltinOptions enum_value = BuiltinOptions_EmbeddingLookupSparseOptions;
2374 };
2375
2376 template<> struct BuiltinOptionsUnionTraits<tflite::MulOptionsT> {
2377 static const BuiltinOptions enum_value = BuiltinOptions_MulOptions;
2378 };
2379
2380 template<> struct BuiltinOptionsUnionTraits<tflite::PadOptionsT> {
2381 static const BuiltinOptions enum_value = BuiltinOptions_PadOptions;
2382 };
2383
2384 template<> struct BuiltinOptionsUnionTraits<tflite::GatherOptionsT> {
2385 static const BuiltinOptions enum_value = BuiltinOptions_GatherOptions;
2386 };
2387
2388 template<> struct BuiltinOptionsUnionTraits<tflite::BatchToSpaceNDOptionsT> {
2389 static const BuiltinOptions enum_value = BuiltinOptions_BatchToSpaceNDOptions;
2390 };
2391
2392 template<> struct BuiltinOptionsUnionTraits<tflite::SpaceToBatchNDOptionsT> {
2393 static const BuiltinOptions enum_value = BuiltinOptions_SpaceToBatchNDOptions;
2394 };
2395
2396 template<> struct BuiltinOptionsUnionTraits<tflite::TransposeOptionsT> {
2397 static const BuiltinOptions enum_value = BuiltinOptions_TransposeOptions;
2398 };
2399
2400 template<> struct BuiltinOptionsUnionTraits<tflite::ReducerOptionsT> {
2401 static const BuiltinOptions enum_value = BuiltinOptions_ReducerOptions;
2402 };
2403
2404 template<> struct BuiltinOptionsUnionTraits<tflite::SubOptionsT> {
2405 static const BuiltinOptions enum_value = BuiltinOptions_SubOptions;
2406 };
2407
2408 template<> struct BuiltinOptionsUnionTraits<tflite::DivOptionsT> {
2409 static const BuiltinOptions enum_value = BuiltinOptions_DivOptions;
2410 };
2411
2412 template<> struct BuiltinOptionsUnionTraits<tflite::SqueezeOptionsT> {
2413 static const BuiltinOptions enum_value = BuiltinOptions_SqueezeOptions;
2414 };
2415
2416 template<> struct BuiltinOptionsUnionTraits<tflite::SequenceRNNOptionsT> {
2417 static const BuiltinOptions enum_value = BuiltinOptions_SequenceRNNOptions;
2418 };
2419
2420 template<> struct BuiltinOptionsUnionTraits<tflite::StridedSliceOptionsT> {
2421 static const BuiltinOptions enum_value = BuiltinOptions_StridedSliceOptions;
2422 };
2423
2424 template<> struct BuiltinOptionsUnionTraits<tflite::ExpOptionsT> {
2425 static const BuiltinOptions enum_value = BuiltinOptions_ExpOptions;
2426 };
2427
2428 template<> struct BuiltinOptionsUnionTraits<tflite::TopKV2OptionsT> {
2429 static const BuiltinOptions enum_value = BuiltinOptions_TopKV2Options;
2430 };
2431
2432 template<> struct BuiltinOptionsUnionTraits<tflite::SplitOptionsT> {
2433 static const BuiltinOptions enum_value = BuiltinOptions_SplitOptions;
2434 };
2435
2436 template<> struct BuiltinOptionsUnionTraits<tflite::LogSoftmaxOptionsT> {
2437 static const BuiltinOptions enum_value = BuiltinOptions_LogSoftmaxOptions;
2438 };
2439
2440 template<> struct BuiltinOptionsUnionTraits<tflite::CastOptionsT> {
2441 static const BuiltinOptions enum_value = BuiltinOptions_CastOptions;
2442 };
2443
2444 template<> struct BuiltinOptionsUnionTraits<tflite::DequantizeOptionsT> {
2445 static const BuiltinOptions enum_value = BuiltinOptions_DequantizeOptions;
2446 };
2447
2448 template<> struct BuiltinOptionsUnionTraits<tflite::MaximumMinimumOptionsT> {
2449 static const BuiltinOptions enum_value = BuiltinOptions_MaximumMinimumOptions;
2450 };
2451
2452 template<> struct BuiltinOptionsUnionTraits<tflite::ArgMaxOptionsT> {
2453 static const BuiltinOptions enum_value = BuiltinOptions_ArgMaxOptions;
2454 };
2455
2456 template<> struct BuiltinOptionsUnionTraits<tflite::LessOptionsT> {
2457 static const BuiltinOptions enum_value = BuiltinOptions_LessOptions;
2458 };
2459
2460 template<> struct BuiltinOptionsUnionTraits<tflite::NegOptionsT> {
2461 static const BuiltinOptions enum_value = BuiltinOptions_NegOptions;
2462 };
2463
2464 template<> struct BuiltinOptionsUnionTraits<tflite::PadV2OptionsT> {
2465 static const BuiltinOptions enum_value = BuiltinOptions_PadV2Options;
2466 };
2467
2468 template<> struct BuiltinOptionsUnionTraits<tflite::GreaterOptionsT> {
2469 static const BuiltinOptions enum_value = BuiltinOptions_GreaterOptions;
2470 };
2471
2472 template<> struct BuiltinOptionsUnionTraits<tflite::GreaterEqualOptionsT> {
2473 static const BuiltinOptions enum_value = BuiltinOptions_GreaterEqualOptions;
2474 };
2475
2476 template<> struct BuiltinOptionsUnionTraits<tflite::LessEqualOptionsT> {
2477 static const BuiltinOptions enum_value = BuiltinOptions_LessEqualOptions;
2478 };
2479
2480 template<> struct BuiltinOptionsUnionTraits<tflite::SelectOptionsT> {
2481 static const BuiltinOptions enum_value = BuiltinOptions_SelectOptions;
2482 };
2483
2484 template<> struct BuiltinOptionsUnionTraits<tflite::SliceOptionsT> {
2485 static const BuiltinOptions enum_value = BuiltinOptions_SliceOptions;
2486 };
2487
2488 template<> struct BuiltinOptionsUnionTraits<tflite::TransposeConvOptionsT> {
2489 static const BuiltinOptions enum_value = BuiltinOptions_TransposeConvOptions;
2490 };
2491
2492 template<> struct BuiltinOptionsUnionTraits<tflite::SparseToDenseOptionsT> {
2493 static const BuiltinOptions enum_value = BuiltinOptions_SparseToDenseOptions;
2494 };
2495
2496 template<> struct BuiltinOptionsUnionTraits<tflite::TileOptionsT> {
2497 static const BuiltinOptions enum_value = BuiltinOptions_TileOptions;
2498 };
2499
2500 template<> struct BuiltinOptionsUnionTraits<tflite::ExpandDimsOptionsT> {
2501 static const BuiltinOptions enum_value = BuiltinOptions_ExpandDimsOptions;
2502 };
2503
2504 template<> struct BuiltinOptionsUnionTraits<tflite::EqualOptionsT> {
2505 static const BuiltinOptions enum_value = BuiltinOptions_EqualOptions;
2506 };
2507
2508 template<> struct BuiltinOptionsUnionTraits<tflite::NotEqualOptionsT> {
2509 static const BuiltinOptions enum_value = BuiltinOptions_NotEqualOptions;
2510 };
2511
2512 template<> struct BuiltinOptionsUnionTraits<tflite::ShapeOptionsT> {
2513 static const BuiltinOptions enum_value = BuiltinOptions_ShapeOptions;
2514 };
2515
2516 template<> struct BuiltinOptionsUnionTraits<tflite::PowOptionsT> {
2517 static const BuiltinOptions enum_value = BuiltinOptions_PowOptions;
2518 };
2519
2520 template<> struct BuiltinOptionsUnionTraits<tflite::ArgMinOptionsT> {
2521 static const BuiltinOptions enum_value = BuiltinOptions_ArgMinOptions;
2522 };
2523
2524 template<> struct BuiltinOptionsUnionTraits<tflite::FakeQuantOptionsT> {
2525 static const BuiltinOptions enum_value = BuiltinOptions_FakeQuantOptions;
2526 };
2527
2528 template<> struct BuiltinOptionsUnionTraits<tflite::PackOptionsT> {
2529 static const BuiltinOptions enum_value = BuiltinOptions_PackOptions;
2530 };
2531
2532 template<> struct BuiltinOptionsUnionTraits<tflite::LogicalOrOptionsT> {
2533 static const BuiltinOptions enum_value = BuiltinOptions_LogicalOrOptions;
2534 };
2535
2536 template<> struct BuiltinOptionsUnionTraits<tflite::OneHotOptionsT> {
2537 static const BuiltinOptions enum_value = BuiltinOptions_OneHotOptions;
2538 };
2539
2540 template<> struct BuiltinOptionsUnionTraits<tflite::LogicalAndOptionsT> {
2541 static const BuiltinOptions enum_value = BuiltinOptions_LogicalAndOptions;
2542 };
2543
2544 template<> struct BuiltinOptionsUnionTraits<tflite::LogicalNotOptionsT> {
2545 static const BuiltinOptions enum_value = BuiltinOptions_LogicalNotOptions;
2546 };
2547
2548 template<> struct BuiltinOptionsUnionTraits<tflite::UnpackOptionsT> {
2549 static const BuiltinOptions enum_value = BuiltinOptions_UnpackOptions;
2550 };
2551
2552 template<> struct BuiltinOptionsUnionTraits<tflite::FloorDivOptionsT> {
2553 static const BuiltinOptions enum_value = BuiltinOptions_FloorDivOptions;
2554 };
2555
2556 template<> struct BuiltinOptionsUnionTraits<tflite::SquareOptionsT> {
2557 static const BuiltinOptions enum_value = BuiltinOptions_SquareOptions;
2558 };
2559
2560 template<> struct BuiltinOptionsUnionTraits<tflite::ZerosLikeOptionsT> {
2561 static const BuiltinOptions enum_value = BuiltinOptions_ZerosLikeOptions;
2562 };
2563
2564 template<> struct BuiltinOptionsUnionTraits<tflite::FillOptionsT> {
2565 static const BuiltinOptions enum_value = BuiltinOptions_FillOptions;
2566 };
2567
2568 template<> struct BuiltinOptionsUnionTraits<tflite::BidirectionalSequenceLSTMOptionsT> {
2569 static const BuiltinOptions enum_value = BuiltinOptions_BidirectionalSequenceLSTMOptions;
2570 };
2571
2572 template<> struct BuiltinOptionsUnionTraits<tflite::BidirectionalSequenceRNNOptionsT> {
2573 static const BuiltinOptions enum_value = BuiltinOptions_BidirectionalSequenceRNNOptions;
2574 };
2575
2576 template<> struct BuiltinOptionsUnionTraits<tflite::UnidirectionalSequenceLSTMOptionsT> {
2577 static const BuiltinOptions enum_value = BuiltinOptions_UnidirectionalSequenceLSTMOptions;
2578 };
2579
2580 template<> struct BuiltinOptionsUnionTraits<tflite::FloorModOptionsT> {
2581 static const BuiltinOptions enum_value = BuiltinOptions_FloorModOptions;
2582 };
2583
2584 template<> struct BuiltinOptionsUnionTraits<tflite::RangeOptionsT> {
2585 static const BuiltinOptions enum_value = BuiltinOptions_RangeOptions;
2586 };
2587
2588 template<> struct BuiltinOptionsUnionTraits<tflite::ResizeNearestNeighborOptionsT> {
2589 static const BuiltinOptions enum_value = BuiltinOptions_ResizeNearestNeighborOptions;
2590 };
2591
2592 template<> struct BuiltinOptionsUnionTraits<tflite::LeakyReluOptionsT> {
2593 static const BuiltinOptions enum_value = BuiltinOptions_LeakyReluOptions;
2594 };
2595
2596 template<> struct BuiltinOptionsUnionTraits<tflite::SquaredDifferenceOptionsT> {
2597 static const BuiltinOptions enum_value = BuiltinOptions_SquaredDifferenceOptions;
2598 };
2599
2600 template<> struct BuiltinOptionsUnionTraits<tflite::MirrorPadOptionsT> {
2601 static const BuiltinOptions enum_value = BuiltinOptions_MirrorPadOptions;
2602 };
2603
2604 template<> struct BuiltinOptionsUnionTraits<tflite::AbsOptionsT> {
2605 static const BuiltinOptions enum_value = BuiltinOptions_AbsOptions;
2606 };
2607
2608 template<> struct BuiltinOptionsUnionTraits<tflite::SplitVOptionsT> {
2609 static const BuiltinOptions enum_value = BuiltinOptions_SplitVOptions;
2610 };
2611
2612 template<> struct BuiltinOptionsUnionTraits<tflite::UniqueOptionsT> {
2613 static const BuiltinOptions enum_value = BuiltinOptions_UniqueOptions;
2614 };
2615
2616 template<> struct BuiltinOptionsUnionTraits<tflite::ReverseV2OptionsT> {
2617 static const BuiltinOptions enum_value = BuiltinOptions_ReverseV2Options;
2618 };
2619
2620 template<> struct BuiltinOptionsUnionTraits<tflite::AddNOptionsT> {
2621 static const BuiltinOptions enum_value = BuiltinOptions_AddNOptions;
2622 };
2623
2624 template<> struct BuiltinOptionsUnionTraits<tflite::GatherNdOptionsT> {
2625 static const BuiltinOptions enum_value = BuiltinOptions_GatherNdOptions;
2626 };
2627
2628 template<> struct BuiltinOptionsUnionTraits<tflite::CosOptionsT> {
2629 static const BuiltinOptions enum_value = BuiltinOptions_CosOptions;
2630 };
2631
2632 template<> struct BuiltinOptionsUnionTraits<tflite::WhereOptionsT> {
2633 static const BuiltinOptions enum_value = BuiltinOptions_WhereOptions;
2634 };
2635
2636 template<> struct BuiltinOptionsUnionTraits<tflite::RankOptionsT> {
2637 static const BuiltinOptions enum_value = BuiltinOptions_RankOptions;
2638 };
2639
2640 template<> struct BuiltinOptionsUnionTraits<tflite::ReverseSequenceOptionsT> {
2641 static const BuiltinOptions enum_value = BuiltinOptions_ReverseSequenceOptions;
2642 };
2643
2644 template<> struct BuiltinOptionsUnionTraits<tflite::MatrixDiagOptionsT> {
2645 static const BuiltinOptions enum_value = BuiltinOptions_MatrixDiagOptions;
2646 };
2647
2648 template<> struct BuiltinOptionsUnionTraits<tflite::QuantizeOptionsT> {
2649 static const BuiltinOptions enum_value = BuiltinOptions_QuantizeOptions;
2650 };
2651
2652 template<> struct BuiltinOptionsUnionTraits<tflite::MatrixSetDiagOptionsT> {
2653 static const BuiltinOptions enum_value = BuiltinOptions_MatrixSetDiagOptions;
2654 };
2655
2656 template<> struct BuiltinOptionsUnionTraits<tflite::HardSwishOptionsT> {
2657 static const BuiltinOptions enum_value = BuiltinOptions_HardSwishOptions;
2658 };
2659
2660 template<> struct BuiltinOptionsUnionTraits<tflite::IfOptionsT> {
2661 static const BuiltinOptions enum_value = BuiltinOptions_IfOptions;
2662 };
2663
2664 template<> struct BuiltinOptionsUnionTraits<tflite::WhileOptionsT> {
2665 static const BuiltinOptions enum_value = BuiltinOptions_WhileOptions;
2666 };
2667
2668 template<> struct BuiltinOptionsUnionTraits<tflite::DepthToSpaceOptionsT> {
2669 static const BuiltinOptions enum_value = BuiltinOptions_DepthToSpaceOptions;
2670 };
2671
2672 template<> struct BuiltinOptionsUnionTraits<tflite::NonMaxSuppressionV4OptionsT> {
2673 static const BuiltinOptions enum_value = BuiltinOptions_NonMaxSuppressionV4Options;
2674 };
2675
2676 template<> struct BuiltinOptionsUnionTraits<tflite::NonMaxSuppressionV5OptionsT> {
2677 static const BuiltinOptions enum_value = BuiltinOptions_NonMaxSuppressionV5Options;
2678 };
2679
2680 template<> struct BuiltinOptionsUnionTraits<tflite::ScatterNdOptionsT> {
2681 static const BuiltinOptions enum_value = BuiltinOptions_ScatterNdOptions;
2682 };
2683
2684 template<> struct BuiltinOptionsUnionTraits<tflite::SelectV2OptionsT> {
2685 static const BuiltinOptions enum_value = BuiltinOptions_SelectV2Options;
2686 };
2687
2688 template<> struct BuiltinOptionsUnionTraits<tflite::DensifyOptionsT> {
2689 static const BuiltinOptions enum_value = BuiltinOptions_DensifyOptions;
2690 };
2691
2692 template<> struct BuiltinOptionsUnionTraits<tflite::SegmentSumOptionsT> {
2693 static const BuiltinOptions enum_value = BuiltinOptions_SegmentSumOptions;
2694 };
2695
2696 template<> struct BuiltinOptionsUnionTraits<tflite::BatchMatMulOptionsT> {
2697 static const BuiltinOptions enum_value = BuiltinOptions_BatchMatMulOptions;
2698 };
2699
2700 template<> struct BuiltinOptionsUnionTraits<tflite::CumsumOptionsT> {
2701 static const BuiltinOptions enum_value = BuiltinOptions_CumsumOptions;
2702 };
2703
2704 template<> struct BuiltinOptionsUnionTraits<tflite::CallOnceOptionsT> {
2705 static const BuiltinOptions enum_value = BuiltinOptions_CallOnceOptions;
2706 };
2707
2708 template<> struct BuiltinOptionsUnionTraits<tflite::BroadcastToOptionsT> {
2709 static const BuiltinOptions enum_value = BuiltinOptions_BroadcastToOptions;
2710 };
2711
2712 template<> struct BuiltinOptionsUnionTraits<tflite::Rfft2dOptionsT> {
2713 static const BuiltinOptions enum_value = BuiltinOptions_Rfft2dOptions;
2714 };
2715
2716 template<> struct BuiltinOptionsUnionTraits<tflite::Conv3DOptionsT> {
2717 static const BuiltinOptions enum_value = BuiltinOptions_Conv3DOptions;
2718 };
2719
2720 template<> struct BuiltinOptionsUnionTraits<tflite::HashtableOptionsT> {
2721 static const BuiltinOptions enum_value = BuiltinOptions_HashtableOptions;
2722 };
2723
2724 template<> struct BuiltinOptionsUnionTraits<tflite::HashtableFindOptionsT> {
2725 static const BuiltinOptions enum_value = BuiltinOptions_HashtableFindOptions;
2726 };
2727
2728 template<> struct BuiltinOptionsUnionTraits<tflite::HashtableImportOptionsT> {
2729 static const BuiltinOptions enum_value = BuiltinOptions_HashtableImportOptions;
2730 };
2731
2732 template<> struct BuiltinOptionsUnionTraits<tflite::HashtableSizeOptionsT> {
2733 static const BuiltinOptions enum_value = BuiltinOptions_HashtableSizeOptions;
2734 };
2735
2736 template<> struct BuiltinOptionsUnionTraits<tflite::VarHandleOptionsT> {
2737 static const BuiltinOptions enum_value = BuiltinOptions_VarHandleOptions;
2738 };
2739
2740 template<> struct BuiltinOptionsUnionTraits<tflite::ReadVariableOptionsT> {
2741 static const BuiltinOptions enum_value = BuiltinOptions_ReadVariableOptions;
2742 };
2743
2744 template<> struct BuiltinOptionsUnionTraits<tflite::AssignVariableOptionsT> {
2745 static const BuiltinOptions enum_value = BuiltinOptions_AssignVariableOptions;
2746 };
2747
2748 template<> struct BuiltinOptionsUnionTraits<tflite::RandomOptionsT> {
2749 static const BuiltinOptions enum_value = BuiltinOptions_RandomOptions;
2750 };
2751
2752 template<> struct BuiltinOptionsUnionTraits<tflite::BucketizeOptionsT> {
2753 static const BuiltinOptions enum_value = BuiltinOptions_BucketizeOptions;
2754 };
2755
2756 template<> struct BuiltinOptionsUnionTraits<tflite::GeluOptionsT> {
2757 static const BuiltinOptions enum_value = BuiltinOptions_GeluOptions;
2758 };
2759
2760 template<> struct BuiltinOptionsUnionTraits<tflite::DynamicUpdateSliceOptionsT> {
2761 static const BuiltinOptions enum_value = BuiltinOptions_DynamicUpdateSliceOptions;
2762 };
2763
2764 template<> struct BuiltinOptionsUnionTraits<tflite::UnsortedSegmentProdOptionsT> {
2765 static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentProdOptions;
2766 };
2767
2768 template<> struct BuiltinOptionsUnionTraits<tflite::UnsortedSegmentMaxOptionsT> {
2769 static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentMaxOptions;
2770 };
2771
2772 template<> struct BuiltinOptionsUnionTraits<tflite::UnsortedSegmentMinOptionsT> {
2773 static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentMinOptions;
2774 };
2775
2776 template<> struct BuiltinOptionsUnionTraits<tflite::UnsortedSegmentSumOptionsT> {
2777 static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentSumOptions;
2778 };
2779
2780 template<> struct BuiltinOptionsUnionTraits<tflite::ATan2OptionsT> {
2781 static const BuiltinOptions enum_value = BuiltinOptions_ATan2Options;
2782 };
2783
2784 template<> struct BuiltinOptionsUnionTraits<tflite::SignOptionsT> {
2785 static const BuiltinOptions enum_value = BuiltinOptions_SignOptions;
2786 };
2787
2788 struct BuiltinOptionsUnion {
2789 BuiltinOptions type;
2790 void *value;
2791
2792 BuiltinOptionsUnion() : type(BuiltinOptions_NONE), value(nullptr) {}
2793 BuiltinOptionsUnion(BuiltinOptionsUnion&& u) FLATBUFFERS_NOEXCEPT :
2794 type(BuiltinOptions_NONE), value(nullptr)
2795 { std::swap(type, u.type); std::swap(value, u.value); }
2796 BuiltinOptionsUnion(const BuiltinOptionsUnion &);
2797 BuiltinOptionsUnion &operator=(const BuiltinOptionsUnion &u)
2798 { BuiltinOptionsUnion t(u); std::swap(type, t.type); std::swap(value, t.value); return *this; }
2799 BuiltinOptionsUnion &operator=(BuiltinOptionsUnion &&u) FLATBUFFERS_NOEXCEPT
2800 { std::swap(type, u.type); std::swap(value, u.value); return *this; }
2801 ~BuiltinOptionsUnion() { Reset(); }
2802
2803 void Reset();
2804
2805 template <typename T>
2806 void Set(T&& val) {
2807 typedef typename std::remove_reference<T>::type RT;
2808 Reset();
2809 type = BuiltinOptionsUnionTraits<RT>::enum_value;
2810 if (type != BuiltinOptions_NONE) {
2811 value = new RT(std::forward<T>(val));
2812 }
2813 }
2814
2815 static void *UnPack(const void *obj, BuiltinOptions type, const flatbuffers::resolver_function_t *resolver);
2816 flatbuffers::Offset<void> Pack(flatbuffers::FlatBufferBuilder &_fbb, const flatbuffers::rehasher_function_t *_rehasher = nullptr) const;
2817
2818 tflite::Conv2DOptionsT *AsConv2DOptions() {
2819 return type == BuiltinOptions_Conv2DOptions ?
2820 reinterpret_cast<tflite::Conv2DOptionsT *>(value) : nullptr;
2821 }
2822 const tflite::Conv2DOptionsT *AsConv2DOptions() const {
2823 return type == BuiltinOptions_Conv2DOptions ?
2824 reinterpret_cast<const tflite::Conv2DOptionsT *>(value) : nullptr;
2825 }
2826 tflite::DepthwiseConv2DOptionsT *AsDepthwiseConv2DOptions() {
2827 return type == BuiltinOptions_DepthwiseConv2DOptions ?
2828 reinterpret_cast<tflite::DepthwiseConv2DOptionsT *>(value) : nullptr;
2829 }
2830 const tflite::DepthwiseConv2DOptionsT *AsDepthwiseConv2DOptions() const {
2831 return type == BuiltinOptions_DepthwiseConv2DOptions ?
2832 reinterpret_cast<const tflite::DepthwiseConv2DOptionsT *>(value) : nullptr;
2833 }
2834 tflite::ConcatEmbeddingsOptionsT *AsConcatEmbeddingsOptions() {
2835 return type == BuiltinOptions_ConcatEmbeddingsOptions ?
2836 reinterpret_cast<tflite::ConcatEmbeddingsOptionsT *>(value) : nullptr;
2837 }
2838 const tflite::ConcatEmbeddingsOptionsT *AsConcatEmbeddingsOptions() const {
2839 return type == BuiltinOptions_ConcatEmbeddingsOptions ?
2840 reinterpret_cast<const tflite::ConcatEmbeddingsOptionsT *>(value) : nullptr;
2841 }
2842 tflite::LSHProjectionOptionsT *AsLSHProjectionOptions() {
2843 return type == BuiltinOptions_LSHProjectionOptions ?
2844 reinterpret_cast<tflite::LSHProjectionOptionsT *>(value) : nullptr;
2845 }
2846 const tflite::LSHProjectionOptionsT *AsLSHProjectionOptions() const {
2847 return type == BuiltinOptions_LSHProjectionOptions ?
2848 reinterpret_cast<const tflite::LSHProjectionOptionsT *>(value) : nullptr;
2849 }
2850 tflite::Pool2DOptionsT *AsPool2DOptions() {
2851 return type == BuiltinOptions_Pool2DOptions ?
2852 reinterpret_cast<tflite::Pool2DOptionsT *>(value) : nullptr;
2853 }
2854 const tflite::Pool2DOptionsT *AsPool2DOptions() const {
2855 return type == BuiltinOptions_Pool2DOptions ?
2856 reinterpret_cast<const tflite::Pool2DOptionsT *>(value) : nullptr;
2857 }
2858 tflite::SVDFOptionsT *AsSVDFOptions() {
2859 return type == BuiltinOptions_SVDFOptions ?
2860 reinterpret_cast<tflite::SVDFOptionsT *>(value) : nullptr;
2861 }
2862 const tflite::SVDFOptionsT *AsSVDFOptions() const {
2863 return type == BuiltinOptions_SVDFOptions ?
2864 reinterpret_cast<const tflite::SVDFOptionsT *>(value) : nullptr;
2865 }
2866 tflite::RNNOptionsT *AsRNNOptions() {
2867 return type == BuiltinOptions_RNNOptions ?
2868 reinterpret_cast<tflite::RNNOptionsT *>(value) : nullptr;
2869 }
2870 const tflite::RNNOptionsT *AsRNNOptions() const {
2871 return type == BuiltinOptions_RNNOptions ?
2872 reinterpret_cast<const tflite::RNNOptionsT *>(value) : nullptr;
2873 }
2874 tflite::FullyConnectedOptionsT *AsFullyConnectedOptions() {
2875 return type == BuiltinOptions_FullyConnectedOptions ?
2876 reinterpret_cast<tflite::FullyConnectedOptionsT *>(value) : nullptr;
2877 }
2878 const tflite::FullyConnectedOptionsT *AsFullyConnectedOptions() const {
2879 return type == BuiltinOptions_FullyConnectedOptions ?
2880 reinterpret_cast<const tflite::FullyConnectedOptionsT *>(value) : nullptr;
2881 }
2882 tflite::SoftmaxOptionsT *AsSoftmaxOptions() {
2883 return type == BuiltinOptions_SoftmaxOptions ?
2884 reinterpret_cast<tflite::SoftmaxOptionsT *>(value) : nullptr;
2885 }
2886 const tflite::SoftmaxOptionsT *AsSoftmaxOptions() const {
2887 return type == BuiltinOptions_SoftmaxOptions ?
2888 reinterpret_cast<const tflite::SoftmaxOptionsT *>(value) : nullptr;
2889 }
2890 tflite::ConcatenationOptionsT *AsConcatenationOptions() {
2891 return type == BuiltinOptions_ConcatenationOptions ?
2892 reinterpret_cast<tflite::ConcatenationOptionsT *>(value) : nullptr;
2893 }
2894 const tflite::ConcatenationOptionsT *AsConcatenationOptions() const {
2895 return type == BuiltinOptions_ConcatenationOptions ?
2896 reinterpret_cast<const tflite::ConcatenationOptionsT *>(value) : nullptr;
2897 }
2898 tflite::AddOptionsT *AsAddOptions() {
2899 return type == BuiltinOptions_AddOptions ?
2900 reinterpret_cast<tflite::AddOptionsT *>(value) : nullptr;
2901 }
2902 const tflite::AddOptionsT *AsAddOptions() const {
2903 return type == BuiltinOptions_AddOptions ?
2904 reinterpret_cast<const tflite::AddOptionsT *>(value) : nullptr;
2905 }
2906 tflite::L2NormOptionsT *AsL2NormOptions() {
2907 return type == BuiltinOptions_L2NormOptions ?
2908 reinterpret_cast<tflite::L2NormOptionsT *>(value) : nullptr;
2909 }
2910 const tflite::L2NormOptionsT *AsL2NormOptions() const {
2911 return type == BuiltinOptions_L2NormOptions ?
2912 reinterpret_cast<const tflite::L2NormOptionsT *>(value) : nullptr;
2913 }
2914 tflite::LocalResponseNormalizationOptionsT *AsLocalResponseNormalizationOptions() {
2915 return type == BuiltinOptions_LocalResponseNormalizationOptions ?
2916 reinterpret_cast<tflite::LocalResponseNormalizationOptionsT *>(value) : nullptr;
2917 }
2918 const tflite::LocalResponseNormalizationOptionsT *AsLocalResponseNormalizationOptions() const {
2919 return type == BuiltinOptions_LocalResponseNormalizationOptions ?
2920 reinterpret_cast<const tflite::LocalResponseNormalizationOptionsT *>(value) : nullptr;
2921 }
2922 tflite::LSTMOptionsT *AsLSTMOptions() {
2923 return type == BuiltinOptions_LSTMOptions ?
2924 reinterpret_cast<tflite::LSTMOptionsT *>(value) : nullptr;
2925 }
2926 const tflite::LSTMOptionsT *AsLSTMOptions() const {
2927 return type == BuiltinOptions_LSTMOptions ?
2928 reinterpret_cast<const tflite::LSTMOptionsT *>(value) : nullptr;
2929 }
2930 tflite::ResizeBilinearOptionsT *AsResizeBilinearOptions() {
2931 return type == BuiltinOptions_ResizeBilinearOptions ?
2932 reinterpret_cast<tflite::ResizeBilinearOptionsT *>(value) : nullptr;
2933 }
2934 const tflite::ResizeBilinearOptionsT *AsResizeBilinearOptions() const {
2935 return type == BuiltinOptions_ResizeBilinearOptions ?
2936 reinterpret_cast<const tflite::ResizeBilinearOptionsT *>(value) : nullptr;
2937 }
2938 tflite::CallOptionsT *AsCallOptions() {
2939 return type == BuiltinOptions_CallOptions ?
2940 reinterpret_cast<tflite::CallOptionsT *>(value) : nullptr;
2941 }
2942 const tflite::CallOptionsT *AsCallOptions() const {
2943 return type == BuiltinOptions_CallOptions ?
2944 reinterpret_cast<const tflite::CallOptionsT *>(value) : nullptr;
2945 }
2946 tflite::ReshapeOptionsT *AsReshapeOptions() {
2947 return type == BuiltinOptions_ReshapeOptions ?
2948 reinterpret_cast<tflite::ReshapeOptionsT *>(value) : nullptr;
2949 }
2950 const tflite::ReshapeOptionsT *AsReshapeOptions() const {
2951 return type == BuiltinOptions_ReshapeOptions ?
2952 reinterpret_cast<const tflite::ReshapeOptionsT *>(value) : nullptr;
2953 }
2954 tflite::SkipGramOptionsT *AsSkipGramOptions() {
2955 return type == BuiltinOptions_SkipGramOptions ?
2956 reinterpret_cast<tflite::SkipGramOptionsT *>(value) : nullptr;
2957 }
2958 const tflite::SkipGramOptionsT *AsSkipGramOptions() const {
2959 return type == BuiltinOptions_SkipGramOptions ?
2960 reinterpret_cast<const tflite::SkipGramOptionsT *>(value) : nullptr;
2961 }
2962 tflite::SpaceToDepthOptionsT *AsSpaceToDepthOptions() {
2963 return type == BuiltinOptions_SpaceToDepthOptions ?
2964 reinterpret_cast<tflite::SpaceToDepthOptionsT *>(value) : nullptr;
2965 }
2966 const tflite::SpaceToDepthOptionsT *AsSpaceToDepthOptions() const {
2967 return type == BuiltinOptions_SpaceToDepthOptions ?
2968 reinterpret_cast<const tflite::SpaceToDepthOptionsT *>(value) : nullptr;
2969 }
2970 tflite::EmbeddingLookupSparseOptionsT *AsEmbeddingLookupSparseOptions() {
2971 return type == BuiltinOptions_EmbeddingLookupSparseOptions ?
2972 reinterpret_cast<tflite::EmbeddingLookupSparseOptionsT *>(value) : nullptr;
2973 }
2974 const tflite::EmbeddingLookupSparseOptionsT *AsEmbeddingLookupSparseOptions() const {
2975 return type == BuiltinOptions_EmbeddingLookupSparseOptions ?
2976 reinterpret_cast<const tflite::EmbeddingLookupSparseOptionsT *>(value) : nullptr;
2977 }
2978 tflite::MulOptionsT *AsMulOptions() {
2979 return type == BuiltinOptions_MulOptions ?
2980 reinterpret_cast<tflite::MulOptionsT *>(value) : nullptr;
2981 }
2982 const tflite::MulOptionsT *AsMulOptions() const {
2983 return type == BuiltinOptions_MulOptions ?
2984 reinterpret_cast<const tflite::MulOptionsT *>(value) : nullptr;
2985 }
2986 tflite::PadOptionsT *AsPadOptions() {
2987 return type == BuiltinOptions_PadOptions ?
2988 reinterpret_cast<tflite::PadOptionsT *>(value) : nullptr;
2989 }
2990 const tflite::PadOptionsT *AsPadOptions() const {
2991 return type == BuiltinOptions_PadOptions ?
2992 reinterpret_cast<const tflite::PadOptionsT *>(value) : nullptr;
2993 }
2994 tflite::GatherOptionsT *AsGatherOptions() {
2995 return type == BuiltinOptions_GatherOptions ?
2996 reinterpret_cast<tflite::GatherOptionsT *>(value) : nullptr;
2997 }
2998 const tflite::GatherOptionsT *AsGatherOptions() const {
2999 return type == BuiltinOptions_GatherOptions ?
3000 reinterpret_cast<const tflite::GatherOptionsT *>(value) : nullptr;
3001 }
3002 tflite::BatchToSpaceNDOptionsT *AsBatchToSpaceNDOptions() {
3003 return type == BuiltinOptions_BatchToSpaceNDOptions ?
3004 reinterpret_cast<tflite::BatchToSpaceNDOptionsT *>(value) : nullptr;
3005 }
3006 const tflite::BatchToSpaceNDOptionsT *AsBatchToSpaceNDOptions() const {
3007 return type == BuiltinOptions_BatchToSpaceNDOptions ?
3008 reinterpret_cast<const tflite::BatchToSpaceNDOptionsT *>(value) : nullptr;
3009 }
3010 tflite::SpaceToBatchNDOptionsT *AsSpaceToBatchNDOptions() {
3011 return type == BuiltinOptions_SpaceToBatchNDOptions ?
3012 reinterpret_cast<tflite::SpaceToBatchNDOptionsT *>(value) : nullptr;
3013 }
3014 const tflite::SpaceToBatchNDOptionsT *AsSpaceToBatchNDOptions() const {
3015 return type == BuiltinOptions_SpaceToBatchNDOptions ?
3016 reinterpret_cast<const tflite::SpaceToBatchNDOptionsT *>(value) : nullptr;
3017 }
3018 tflite::TransposeOptionsT *AsTransposeOptions() {
3019 return type == BuiltinOptions_TransposeOptions ?
3020 reinterpret_cast<tflite::TransposeOptionsT *>(value) : nullptr;
3021 }
3022 const tflite::TransposeOptionsT *AsTransposeOptions() const {
3023 return type == BuiltinOptions_TransposeOptions ?
3024 reinterpret_cast<const tflite::TransposeOptionsT *>(value) : nullptr;
3025 }
3026 tflite::ReducerOptionsT *AsReducerOptions() {
3027 return type == BuiltinOptions_ReducerOptions ?
3028 reinterpret_cast<tflite::ReducerOptionsT *>(value) : nullptr;
3029 }
3030 const tflite::ReducerOptionsT *AsReducerOptions() const {
3031 return type == BuiltinOptions_ReducerOptions ?
3032 reinterpret_cast<const tflite::ReducerOptionsT *>(value) : nullptr;
3033 }
3034 tflite::SubOptionsT *AsSubOptions() {
3035 return type == BuiltinOptions_SubOptions ?
3036 reinterpret_cast<tflite::SubOptionsT *>(value) : nullptr;
3037 }
3038 const tflite::SubOptionsT *AsSubOptions() const {
3039 return type == BuiltinOptions_SubOptions ?
3040 reinterpret_cast<const tflite::SubOptionsT *>(value) : nullptr;
3041 }
3042 tflite::DivOptionsT *AsDivOptions() {
3043 return type == BuiltinOptions_DivOptions ?
3044 reinterpret_cast<tflite::DivOptionsT *>(value) : nullptr;
3045 }
3046 const tflite::DivOptionsT *AsDivOptions() const {
3047 return type == BuiltinOptions_DivOptions ?
3048 reinterpret_cast<const tflite::DivOptionsT *>(value) : nullptr;
3049 }
3050 tflite::SqueezeOptionsT *AsSqueezeOptions() {
3051 return type == BuiltinOptions_SqueezeOptions ?
3052 reinterpret_cast<tflite::SqueezeOptionsT *>(value) : nullptr;
3053 }
3054 const tflite::SqueezeOptionsT *AsSqueezeOptions() const {
3055 return type == BuiltinOptions_SqueezeOptions ?
3056 reinterpret_cast<const tflite::SqueezeOptionsT *>(value) : nullptr;
3057 }
3058 tflite::SequenceRNNOptionsT *AsSequenceRNNOptions() {
3059 return type == BuiltinOptions_SequenceRNNOptions ?
3060 reinterpret_cast<tflite::SequenceRNNOptionsT *>(value) : nullptr;
3061 }
3062 const tflite::SequenceRNNOptionsT *AsSequenceRNNOptions() const {
3063 return type == BuiltinOptions_SequenceRNNOptions ?
3064 reinterpret_cast<const tflite::SequenceRNNOptionsT *>(value) : nullptr;
3065 }
3066 tflite::StridedSliceOptionsT *AsStridedSliceOptions() {
3067 return type == BuiltinOptions_StridedSliceOptions ?
3068 reinterpret_cast<tflite::StridedSliceOptionsT *>(value) : nullptr;
3069 }
3070 const tflite::StridedSliceOptionsT *AsStridedSliceOptions() const {
3071 return type == BuiltinOptions_StridedSliceOptions ?
3072 reinterpret_cast<const tflite::StridedSliceOptionsT *>(value) : nullptr;
3073 }
3074 tflite::ExpOptionsT *AsExpOptions() {
3075 return type == BuiltinOptions_ExpOptions ?
3076 reinterpret_cast<tflite::ExpOptionsT *>(value) : nullptr;
3077 }
3078 const tflite::ExpOptionsT *AsExpOptions() const {
3079 return type == BuiltinOptions_ExpOptions ?
3080 reinterpret_cast<const tflite::ExpOptionsT *>(value) : nullptr;
3081 }
3082 tflite::TopKV2OptionsT *AsTopKV2Options() {
3083 return type == BuiltinOptions_TopKV2Options ?
3084 reinterpret_cast<tflite::TopKV2OptionsT *>(value) : nullptr;
3085 }
3086 const tflite::TopKV2OptionsT *AsTopKV2Options() const {
3087 return type == BuiltinOptions_TopKV2Options ?
3088 reinterpret_cast<const tflite::TopKV2OptionsT *>(value) : nullptr;
3089 }
3090 tflite::SplitOptionsT *AsSplitOptions() {
3091 return type == BuiltinOptions_SplitOptions ?
3092 reinterpret_cast<tflite::SplitOptionsT *>(value) : nullptr;
3093 }
3094 const tflite::SplitOptionsT *AsSplitOptions() const {
3095 return type == BuiltinOptions_SplitOptions ?
3096 reinterpret_cast<const tflite::SplitOptionsT *>(value) : nullptr;
3097 }
3098 tflite::LogSoftmaxOptionsT *AsLogSoftmaxOptions() {
3099 return type == BuiltinOptions_LogSoftmaxOptions ?
3100 reinterpret_cast<tflite::LogSoftmaxOptionsT *>(value) : nullptr;
3101 }
3102 const tflite::LogSoftmaxOptionsT *AsLogSoftmaxOptions() const {
3103 return type == BuiltinOptions_LogSoftmaxOptions ?
3104 reinterpret_cast<const tflite::LogSoftmaxOptionsT *>(value) : nullptr;
3105 }
3106 tflite::CastOptionsT *AsCastOptions() {
3107 return type == BuiltinOptions_CastOptions ?
3108 reinterpret_cast<tflite::CastOptionsT *>(value) : nullptr;
3109 }
3110 const tflite::CastOptionsT *AsCastOptions() const {
3111 return type == BuiltinOptions_CastOptions ?
3112 reinterpret_cast<const tflite::CastOptionsT *>(value) : nullptr;
3113 }
3114 tflite::DequantizeOptionsT *AsDequantizeOptions() {
3115 return type == BuiltinOptions_DequantizeOptions ?
3116 reinterpret_cast<tflite::DequantizeOptionsT *>(value) : nullptr;
3117 }
3118 const tflite::DequantizeOptionsT *AsDequantizeOptions() const {
3119 return type == BuiltinOptions_DequantizeOptions ?
3120 reinterpret_cast<const tflite::DequantizeOptionsT *>(value) : nullptr;
3121 }
3122 tflite::MaximumMinimumOptionsT *AsMaximumMinimumOptions() {
3123 return type == BuiltinOptions_MaximumMinimumOptions ?
3124 reinterpret_cast<tflite::MaximumMinimumOptionsT *>(value) : nullptr;
3125 }
3126 const tflite::MaximumMinimumOptionsT *AsMaximumMinimumOptions() const {
3127 return type == BuiltinOptions_MaximumMinimumOptions ?
3128 reinterpret_cast<const tflite::MaximumMinimumOptionsT *>(value) : nullptr;
3129 }
3130 tflite::ArgMaxOptionsT *AsArgMaxOptions() {
3131 return type == BuiltinOptions_ArgMaxOptions ?
3132 reinterpret_cast<tflite::ArgMaxOptionsT *>(value) : nullptr;
3133 }
3134 const tflite::ArgMaxOptionsT *AsArgMaxOptions() const {
3135 return type == BuiltinOptions_ArgMaxOptions ?
3136 reinterpret_cast<const tflite::ArgMaxOptionsT *>(value) : nullptr;
3137 }
3138 tflite::LessOptionsT *AsLessOptions() {
3139 return type == BuiltinOptions_LessOptions ?
3140 reinterpret_cast<tflite::LessOptionsT *>(value) : nullptr;
3141 }
3142 const tflite::LessOptionsT *AsLessOptions() const {
3143 return type == BuiltinOptions_LessOptions ?
3144 reinterpret_cast<const tflite::LessOptionsT *>(value) : nullptr;
3145 }
3146 tflite::NegOptionsT *AsNegOptions() {
3147 return type == BuiltinOptions_NegOptions ?
3148 reinterpret_cast<tflite::NegOptionsT *>(value) : nullptr;
3149 }
3150 const tflite::NegOptionsT *AsNegOptions() const {
3151 return type == BuiltinOptions_NegOptions ?
3152 reinterpret_cast<const tflite::NegOptionsT *>(value) : nullptr;
3153 }
3154 tflite::PadV2OptionsT *AsPadV2Options() {
3155 return type == BuiltinOptions_PadV2Options ?
3156 reinterpret_cast<tflite::PadV2OptionsT *>(value) : nullptr;
3157 }
3158 const tflite::PadV2OptionsT *AsPadV2Options() const {
3159 return type == BuiltinOptions_PadV2Options ?
3160 reinterpret_cast<const tflite::PadV2OptionsT *>(value) : nullptr;
3161 }
3162 tflite::GreaterOptionsT *AsGreaterOptions() {
3163 return type == BuiltinOptions_GreaterOptions ?
3164 reinterpret_cast<tflite::GreaterOptionsT *>(value) : nullptr;
3165 }
3166 const tflite::GreaterOptionsT *AsGreaterOptions() const {
3167 return type == BuiltinOptions_GreaterOptions ?
3168 reinterpret_cast<const tflite::GreaterOptionsT *>(value) : nullptr;
3169 }
3170 tflite::GreaterEqualOptionsT *AsGreaterEqualOptions() {
3171 return type == BuiltinOptions_GreaterEqualOptions ?
3172 reinterpret_cast<tflite::GreaterEqualOptionsT *>(value) : nullptr;
3173 }
3174 const tflite::GreaterEqualOptionsT *AsGreaterEqualOptions() const {
3175 return type == BuiltinOptions_GreaterEqualOptions ?
3176 reinterpret_cast<const tflite::GreaterEqualOptionsT *>(value) : nullptr;
3177 }
3178 tflite::LessEqualOptionsT *AsLessEqualOptions() {
3179 return type == BuiltinOptions_LessEqualOptions ?
3180 reinterpret_cast<tflite::LessEqualOptionsT *>(value) : nullptr;
3181 }
3182 const tflite::LessEqualOptionsT *AsLessEqualOptions() const {
3183 return type == BuiltinOptions_LessEqualOptions ?
3184 reinterpret_cast<const tflite::LessEqualOptionsT *>(value) : nullptr;
3185 }
3186 tflite::SelectOptionsT *AsSelectOptions() {
3187 return type == BuiltinOptions_SelectOptions ?
3188 reinterpret_cast<tflite::SelectOptionsT *>(value) : nullptr;
3189 }
3190 const tflite::SelectOptionsT *AsSelectOptions() const {
3191 return type == BuiltinOptions_SelectOptions ?
3192 reinterpret_cast<const tflite::SelectOptionsT *>(value) : nullptr;
3193 }
3194 tflite::SliceOptionsT *AsSliceOptions() {
3195 return type == BuiltinOptions_SliceOptions ?
3196 reinterpret_cast<tflite::SliceOptionsT *>(value) : nullptr;
3197 }
3198 const tflite::SliceOptionsT *AsSliceOptions() const {
3199 return type == BuiltinOptions_SliceOptions ?
3200 reinterpret_cast<const tflite::SliceOptionsT *>(value) : nullptr;
3201 }
3202 tflite::TransposeConvOptionsT *AsTransposeConvOptions() {
3203 return type == BuiltinOptions_TransposeConvOptions ?
3204 reinterpret_cast<tflite::TransposeConvOptionsT *>(value) : nullptr;
3205 }
3206 const tflite::TransposeConvOptionsT *AsTransposeConvOptions() const {
3207 return type == BuiltinOptions_TransposeConvOptions ?
3208 reinterpret_cast<const tflite::TransposeConvOptionsT *>(value) : nullptr;
3209 }
3210 tflite::SparseToDenseOptionsT *AsSparseToDenseOptions() {
3211 return type == BuiltinOptions_SparseToDenseOptions ?
3212 reinterpret_cast<tflite::SparseToDenseOptionsT *>(value) : nullptr;
3213 }
3214 const tflite::SparseToDenseOptionsT *AsSparseToDenseOptions() const {
3215 return type == BuiltinOptions_SparseToDenseOptions ?
3216 reinterpret_cast<const tflite::SparseToDenseOptionsT *>(value) : nullptr;
3217 }
3218 tflite::TileOptionsT *AsTileOptions() {
3219 return type == BuiltinOptions_TileOptions ?
3220 reinterpret_cast<tflite::TileOptionsT *>(value) : nullptr;
3221 }
3222 const tflite::TileOptionsT *AsTileOptions() const {
3223 return type == BuiltinOptions_TileOptions ?
3224 reinterpret_cast<const tflite::TileOptionsT *>(value) : nullptr;
3225 }
3226 tflite::ExpandDimsOptionsT *AsExpandDimsOptions() {
3227 return type == BuiltinOptions_ExpandDimsOptions ?
3228 reinterpret_cast<tflite::ExpandDimsOptionsT *>(value) : nullptr;
3229 }
3230 const tflite::ExpandDimsOptionsT *AsExpandDimsOptions() const {
3231 return type == BuiltinOptions_ExpandDimsOptions ?
3232 reinterpret_cast<const tflite::ExpandDimsOptionsT *>(value) : nullptr;
3233 }
3234 tflite::EqualOptionsT *AsEqualOptions() {
3235 return type == BuiltinOptions_EqualOptions ?
3236 reinterpret_cast<tflite::EqualOptionsT *>(value) : nullptr;
3237 }
3238 const tflite::EqualOptionsT *AsEqualOptions() const {
3239 return type == BuiltinOptions_EqualOptions ?
3240 reinterpret_cast<const tflite::EqualOptionsT *>(value) : nullptr;
3241 }
3242 tflite::NotEqualOptionsT *AsNotEqualOptions() {
3243 return type == BuiltinOptions_NotEqualOptions ?
3244 reinterpret_cast<tflite::NotEqualOptionsT *>(value) : nullptr;
3245 }
3246 const tflite::NotEqualOptionsT *AsNotEqualOptions() const {
3247 return type == BuiltinOptions_NotEqualOptions ?
3248 reinterpret_cast<const tflite::NotEqualOptionsT *>(value) : nullptr;
3249 }
3250 tflite::ShapeOptionsT *AsShapeOptions() {
3251 return type == BuiltinOptions_ShapeOptions ?
3252 reinterpret_cast<tflite::ShapeOptionsT *>(value) : nullptr;
3253 }
3254 const tflite::ShapeOptionsT *AsShapeOptions() const {
3255 return type == BuiltinOptions_ShapeOptions ?
3256 reinterpret_cast<const tflite::ShapeOptionsT *>(value) : nullptr;
3257 }
3258 tflite::PowOptionsT *AsPowOptions() {
3259 return type == BuiltinOptions_PowOptions ?
3260 reinterpret_cast<tflite::PowOptionsT *>(value) : nullptr;
3261 }
3262 const tflite::PowOptionsT *AsPowOptions() const {
3263 return type == BuiltinOptions_PowOptions ?
3264 reinterpret_cast<const tflite::PowOptionsT *>(value) : nullptr;
3265 }
3266 tflite::ArgMinOptionsT *AsArgMinOptions() {
3267 return type == BuiltinOptions_ArgMinOptions ?
3268 reinterpret_cast<tflite::ArgMinOptionsT *>(value) : nullptr;
3269 }
3270 const tflite::ArgMinOptionsT *AsArgMinOptions() const {
3271 return type == BuiltinOptions_ArgMinOptions ?
3272 reinterpret_cast<const tflite::ArgMinOptionsT *>(value) : nullptr;
3273 }
3274 tflite::FakeQuantOptionsT *AsFakeQuantOptions() {
3275 return type == BuiltinOptions_FakeQuantOptions ?
3276 reinterpret_cast<tflite::FakeQuantOptionsT *>(value) : nullptr;
3277 }
3278 const tflite::FakeQuantOptionsT *AsFakeQuantOptions() const {
3279 return type == BuiltinOptions_FakeQuantOptions ?
3280 reinterpret_cast<const tflite::FakeQuantOptionsT *>(value) : nullptr;
3281 }
3282 tflite::PackOptionsT *AsPackOptions() {
3283 return type == BuiltinOptions_PackOptions ?
3284 reinterpret_cast<tflite::PackOptionsT *>(value) : nullptr;
3285 }
3286 const tflite::PackOptionsT *AsPackOptions() const {
3287 return type == BuiltinOptions_PackOptions ?
3288 reinterpret_cast<const tflite::PackOptionsT *>(value) : nullptr;
3289 }
3290 tflite::LogicalOrOptionsT *AsLogicalOrOptions() {
3291 return type == BuiltinOptions_LogicalOrOptions ?
3292 reinterpret_cast<tflite::LogicalOrOptionsT *>(value) : nullptr;
3293 }
3294 const tflite::LogicalOrOptionsT *AsLogicalOrOptions() const {
3295 return type == BuiltinOptions_LogicalOrOptions ?
3296 reinterpret_cast<const tflite::LogicalOrOptionsT *>(value) : nullptr;
3297 }
3298 tflite::OneHotOptionsT *AsOneHotOptions() {
3299 return type == BuiltinOptions_OneHotOptions ?
3300 reinterpret_cast<tflite::OneHotOptionsT *>(value) : nullptr;
3301 }
3302 const tflite::OneHotOptionsT *AsOneHotOptions() const {
3303 return type == BuiltinOptions_OneHotOptions ?
3304 reinterpret_cast<const tflite::OneHotOptionsT *>(value) : nullptr;
3305 }
3306 tflite::LogicalAndOptionsT *AsLogicalAndOptions() {
3307 return type == BuiltinOptions_LogicalAndOptions ?
3308 reinterpret_cast<tflite::LogicalAndOptionsT *>(value) : nullptr;
3309 }
3310 const tflite::LogicalAndOptionsT *AsLogicalAndOptions() const {
3311 return type == BuiltinOptions_LogicalAndOptions ?
3312 reinterpret_cast<const tflite::LogicalAndOptionsT *>(value) : nullptr;
3313 }
3314 tflite::LogicalNotOptionsT *AsLogicalNotOptions() {
3315 return type == BuiltinOptions_LogicalNotOptions ?
3316 reinterpret_cast<tflite::LogicalNotOptionsT *>(value) : nullptr;
3317 }
3318 const tflite::LogicalNotOptionsT *AsLogicalNotOptions() const {
3319 return type == BuiltinOptions_LogicalNotOptions ?
3320 reinterpret_cast<const tflite::LogicalNotOptionsT *>(value) : nullptr;
3321 }
3322 tflite::UnpackOptionsT *AsUnpackOptions() {
3323 return type == BuiltinOptions_UnpackOptions ?
3324 reinterpret_cast<tflite::UnpackOptionsT *>(value) : nullptr;
3325 }
3326 const tflite::UnpackOptionsT *AsUnpackOptions() const {
3327 return type == BuiltinOptions_UnpackOptions ?
3328 reinterpret_cast<const tflite::UnpackOptionsT *>(value) : nullptr;
3329 }
3330 tflite::FloorDivOptionsT *AsFloorDivOptions() {
3331 return type == BuiltinOptions_FloorDivOptions ?
3332 reinterpret_cast<tflite::FloorDivOptionsT *>(value) : nullptr;
3333 }
3334 const tflite::FloorDivOptionsT *AsFloorDivOptions() const {
3335 return type == BuiltinOptions_FloorDivOptions ?
3336 reinterpret_cast<const tflite::FloorDivOptionsT *>(value) : nullptr;
3337 }
3338 tflite::SquareOptionsT *AsSquareOptions() {
3339 return type == BuiltinOptions_SquareOptions ?
3340 reinterpret_cast<tflite::SquareOptionsT *>(value) : nullptr;
3341 }
3342 const tflite::SquareOptionsT *AsSquareOptions() const {
3343 return type == BuiltinOptions_SquareOptions ?
3344 reinterpret_cast<const tflite::SquareOptionsT *>(value) : nullptr;
3345 }
3346 tflite::ZerosLikeOptionsT *AsZerosLikeOptions() {
3347 return type == BuiltinOptions_ZerosLikeOptions ?
3348 reinterpret_cast<tflite::ZerosLikeOptionsT *>(value) : nullptr;
3349 }
3350 const tflite::ZerosLikeOptionsT *AsZerosLikeOptions() const {
3351 return type == BuiltinOptions_ZerosLikeOptions ?
3352 reinterpret_cast<const tflite::ZerosLikeOptionsT *>(value) : nullptr;
3353 }
3354 tflite::FillOptionsT *AsFillOptions() {
3355 return type == BuiltinOptions_FillOptions ?
3356 reinterpret_cast<tflite::FillOptionsT *>(value) : nullptr;
3357 }
3358 const tflite::FillOptionsT *AsFillOptions() const {
3359 return type == BuiltinOptions_FillOptions ?
3360 reinterpret_cast<const tflite::FillOptionsT *>(value) : nullptr;
3361 }
3362 tflite::BidirectionalSequenceLSTMOptionsT *AsBidirectionalSequenceLSTMOptions() {
3363 return type == BuiltinOptions_BidirectionalSequenceLSTMOptions ?
3364 reinterpret_cast<tflite::BidirectionalSequenceLSTMOptionsT *>(value) : nullptr;
3365 }
3366 const tflite::BidirectionalSequenceLSTMOptionsT *AsBidirectionalSequenceLSTMOptions() const {
3367 return type == BuiltinOptions_BidirectionalSequenceLSTMOptions ?
3368 reinterpret_cast<const tflite::BidirectionalSequenceLSTMOptionsT *>(value) : nullptr;
3369 }
3370 tflite::BidirectionalSequenceRNNOptionsT *AsBidirectionalSequenceRNNOptions() {
3371 return type == BuiltinOptions_BidirectionalSequenceRNNOptions ?
3372 reinterpret_cast<tflite::BidirectionalSequenceRNNOptionsT *>(value) : nullptr;
3373 }
3374 const tflite::BidirectionalSequenceRNNOptionsT *AsBidirectionalSequenceRNNOptions() const {
3375 return type == BuiltinOptions_BidirectionalSequenceRNNOptions ?
3376 reinterpret_cast<const tflite::BidirectionalSequenceRNNOptionsT *>(value) : nullptr;
3377 }
3378 tflite::UnidirectionalSequenceLSTMOptionsT *AsUnidirectionalSequenceLSTMOptions() {
3379 return type == BuiltinOptions_UnidirectionalSequenceLSTMOptions ?
3380 reinterpret_cast<tflite::UnidirectionalSequenceLSTMOptionsT *>(value) : nullptr;
3381 }
3382 const tflite::UnidirectionalSequenceLSTMOptionsT *AsUnidirectionalSequenceLSTMOptions() const {
3383 return type == BuiltinOptions_UnidirectionalSequenceLSTMOptions ?
3384 reinterpret_cast<const tflite::UnidirectionalSequenceLSTMOptionsT *>(value) : nullptr;
3385 }
3386 tflite::FloorModOptionsT *AsFloorModOptions() {
3387 return type == BuiltinOptions_FloorModOptions ?
3388 reinterpret_cast<tflite::FloorModOptionsT *>(value) : nullptr;
3389 }
3390 const tflite::FloorModOptionsT *AsFloorModOptions() const {
3391 return type == BuiltinOptions_FloorModOptions ?
3392 reinterpret_cast<const tflite::FloorModOptionsT *>(value) : nullptr;
3393 }
3394 tflite::RangeOptionsT *AsRangeOptions() {
3395 return type == BuiltinOptions_RangeOptions ?
3396 reinterpret_cast<tflite::RangeOptionsT *>(value) : nullptr;
3397 }
3398 const tflite::RangeOptionsT *AsRangeOptions() const {
3399 return type == BuiltinOptions_RangeOptions ?
3400 reinterpret_cast<const tflite::RangeOptionsT *>(value) : nullptr;
3401 }
3402 tflite::ResizeNearestNeighborOptionsT *AsResizeNearestNeighborOptions() {
3403 return type == BuiltinOptions_ResizeNearestNeighborOptions ?
3404 reinterpret_cast<tflite::ResizeNearestNeighborOptionsT *>(value) : nullptr;
3405 }
3406 const tflite::ResizeNearestNeighborOptionsT *AsResizeNearestNeighborOptions() const {
3407 return type == BuiltinOptions_ResizeNearestNeighborOptions ?
3408 reinterpret_cast<const tflite::ResizeNearestNeighborOptionsT *>(value) : nullptr;
3409 }
3410 tflite::LeakyReluOptionsT *AsLeakyReluOptions() {
3411 return type == BuiltinOptions_LeakyReluOptions ?
3412 reinterpret_cast<tflite::LeakyReluOptionsT *>(value) : nullptr;
3413 }
3414 const tflite::LeakyReluOptionsT *AsLeakyReluOptions() const {
3415 return type == BuiltinOptions_LeakyReluOptions ?
3416 reinterpret_cast<const tflite::LeakyReluOptionsT *>(value) : nullptr;
3417 }
3418 tflite::SquaredDifferenceOptionsT *AsSquaredDifferenceOptions() {
3419 return type == BuiltinOptions_SquaredDifferenceOptions ?
3420 reinterpret_cast<tflite::SquaredDifferenceOptionsT *>(value) : nullptr;
3421 }
3422 const tflite::SquaredDifferenceOptionsT *AsSquaredDifferenceOptions() const {
3423 return type == BuiltinOptions_SquaredDifferenceOptions ?
3424 reinterpret_cast<const tflite::SquaredDifferenceOptionsT *>(value) : nullptr;
3425 }
3426 tflite::MirrorPadOptionsT *AsMirrorPadOptions() {
3427 return type == BuiltinOptions_MirrorPadOptions ?
3428 reinterpret_cast<tflite::MirrorPadOptionsT *>(value) : nullptr;
3429 }
3430 const tflite::MirrorPadOptionsT *AsMirrorPadOptions() const {
3431 return type == BuiltinOptions_MirrorPadOptions ?
3432 reinterpret_cast<const tflite::MirrorPadOptionsT *>(value) : nullptr;
3433 }
3434 tflite::AbsOptionsT *AsAbsOptions() {
3435 return type == BuiltinOptions_AbsOptions ?
3436 reinterpret_cast<tflite::AbsOptionsT *>(value) : nullptr;
3437 }
3438 const tflite::AbsOptionsT *AsAbsOptions() const {
3439 return type == BuiltinOptions_AbsOptions ?
3440 reinterpret_cast<const tflite::AbsOptionsT *>(value) : nullptr;
3441 }
3442 tflite::SplitVOptionsT *AsSplitVOptions() {
3443 return type == BuiltinOptions_SplitVOptions ?
3444 reinterpret_cast<tflite::SplitVOptionsT *>(value) : nullptr;
3445 }
3446 const tflite::SplitVOptionsT *AsSplitVOptions() const {
3447 return type == BuiltinOptions_SplitVOptions ?
3448 reinterpret_cast<const tflite::SplitVOptionsT *>(value) : nullptr;
3449 }
3450 tflite::UniqueOptionsT *AsUniqueOptions() {
3451 return type == BuiltinOptions_UniqueOptions ?
3452 reinterpret_cast<tflite::UniqueOptionsT *>(value) : nullptr;
3453 }
3454 const tflite::UniqueOptionsT *AsUniqueOptions() const {
3455 return type == BuiltinOptions_UniqueOptions ?
3456 reinterpret_cast<const tflite::UniqueOptionsT *>(value) : nullptr;
3457 }
3458 tflite::ReverseV2OptionsT *AsReverseV2Options() {
3459 return type == BuiltinOptions_ReverseV2Options ?
3460 reinterpret_cast<tflite::ReverseV2OptionsT *>(value) : nullptr;
3461 }
3462 const tflite::ReverseV2OptionsT *AsReverseV2Options() const {
3463 return type == BuiltinOptions_ReverseV2Options ?
3464 reinterpret_cast<const tflite::ReverseV2OptionsT *>(value) : nullptr;
3465 }
3466 tflite::AddNOptionsT *AsAddNOptions() {
3467 return type == BuiltinOptions_AddNOptions ?
3468 reinterpret_cast<tflite::AddNOptionsT *>(value) : nullptr;
3469 }
3470 const tflite::AddNOptionsT *AsAddNOptions() const {
3471 return type == BuiltinOptions_AddNOptions ?
3472 reinterpret_cast<const tflite::AddNOptionsT *>(value) : nullptr;
3473 }
3474 tflite::GatherNdOptionsT *AsGatherNdOptions() {
3475 return type == BuiltinOptions_GatherNdOptions ?
3476 reinterpret_cast<tflite::GatherNdOptionsT *>(value) : nullptr;
3477 }
3478 const tflite::GatherNdOptionsT *AsGatherNdOptions() const {
3479 return type == BuiltinOptions_GatherNdOptions ?
3480 reinterpret_cast<const tflite::GatherNdOptionsT *>(value) : nullptr;
3481 }
3482 tflite::CosOptionsT *AsCosOptions() {
3483 return type == BuiltinOptions_CosOptions ?
3484 reinterpret_cast<tflite::CosOptionsT *>(value) : nullptr;
3485 }
3486 const tflite::CosOptionsT *AsCosOptions() const {
3487 return type == BuiltinOptions_CosOptions ?
3488 reinterpret_cast<const tflite::CosOptionsT *>(value) : nullptr;
3489 }
3490 tflite::WhereOptionsT *AsWhereOptions() {
3491 return type == BuiltinOptions_WhereOptions ?
3492 reinterpret_cast<tflite::WhereOptionsT *>(value) : nullptr;
3493 }
3494 const tflite::WhereOptionsT *AsWhereOptions() const {
3495 return type == BuiltinOptions_WhereOptions ?
3496 reinterpret_cast<const tflite::WhereOptionsT *>(value) : nullptr;
3497 }
3498 tflite::RankOptionsT *AsRankOptions() {
3499 return type == BuiltinOptions_RankOptions ?
3500 reinterpret_cast<tflite::RankOptionsT *>(value) : nullptr;
3501 }
3502 const tflite::RankOptionsT *AsRankOptions() const {
3503 return type == BuiltinOptions_RankOptions ?
3504 reinterpret_cast<const tflite::RankOptionsT *>(value) : nullptr;
3505 }
3506 tflite::ReverseSequenceOptionsT *AsReverseSequenceOptions() {
3507 return type == BuiltinOptions_ReverseSequenceOptions ?
3508 reinterpret_cast<tflite::ReverseSequenceOptionsT *>(value) : nullptr;
3509 }
3510 const tflite::ReverseSequenceOptionsT *AsReverseSequenceOptions() const {
3511 return type == BuiltinOptions_ReverseSequenceOptions ?
3512 reinterpret_cast<const tflite::ReverseSequenceOptionsT *>(value) : nullptr;
3513 }
3514 tflite::MatrixDiagOptionsT *AsMatrixDiagOptions() {
3515 return type == BuiltinOptions_MatrixDiagOptions ?
3516 reinterpret_cast<tflite::MatrixDiagOptionsT *>(value) : nullptr;
3517 }
3518 const tflite::MatrixDiagOptionsT *AsMatrixDiagOptions() const {
3519 return type == BuiltinOptions_MatrixDiagOptions ?
3520 reinterpret_cast<const tflite::MatrixDiagOptionsT *>(value) : nullptr;
3521 }
3522 tflite::QuantizeOptionsT *AsQuantizeOptions() {
3523 return type == BuiltinOptions_QuantizeOptions ?
3524 reinterpret_cast<tflite::QuantizeOptionsT *>(value) : nullptr;
3525 }
3526 const tflite::QuantizeOptionsT *AsQuantizeOptions() const {
3527 return type == BuiltinOptions_QuantizeOptions ?
3528 reinterpret_cast<const tflite::QuantizeOptionsT *>(value) : nullptr;
3529 }
3530 tflite::MatrixSetDiagOptionsT *AsMatrixSetDiagOptions() {
3531 return type == BuiltinOptions_MatrixSetDiagOptions ?
3532 reinterpret_cast<tflite::MatrixSetDiagOptionsT *>(value) : nullptr;
3533 }
3534 const tflite::MatrixSetDiagOptionsT *AsMatrixSetDiagOptions() const {
3535 return type == BuiltinOptions_MatrixSetDiagOptions ?
3536 reinterpret_cast<const tflite::MatrixSetDiagOptionsT *>(value) : nullptr;
3537 }
3538 tflite::HardSwishOptionsT *AsHardSwishOptions() {
3539 return type == BuiltinOptions_HardSwishOptions ?
3540 reinterpret_cast<tflite::HardSwishOptionsT *>(value) : nullptr;
3541 }
3542 const tflite::HardSwishOptionsT *AsHardSwishOptions() const {
3543 return type == BuiltinOptions_HardSwishOptions ?
3544 reinterpret_cast<const tflite::HardSwishOptionsT *>(value) : nullptr;
3545 }
3546 tflite::IfOptionsT *AsIfOptions() {
3547 return type == BuiltinOptions_IfOptions ?
3548 reinterpret_cast<tflite::IfOptionsT *>(value) : nullptr;
3549 }
3550 const tflite::IfOptionsT *AsIfOptions() const {
3551 return type == BuiltinOptions_IfOptions ?
3552 reinterpret_cast<const tflite::IfOptionsT *>(value) : nullptr;
3553 }
3554 tflite::WhileOptionsT *AsWhileOptions() {
3555 return type == BuiltinOptions_WhileOptions ?
3556 reinterpret_cast<tflite::WhileOptionsT *>(value) : nullptr;
3557 }
3558 const tflite::WhileOptionsT *AsWhileOptions() const {
3559 return type == BuiltinOptions_WhileOptions ?
3560 reinterpret_cast<const tflite::WhileOptionsT *>(value) : nullptr;
3561 }
3562 tflite::DepthToSpaceOptionsT *AsDepthToSpaceOptions() {
3563 return type == BuiltinOptions_DepthToSpaceOptions ?
3564 reinterpret_cast<tflite::DepthToSpaceOptionsT *>(value) : nullptr;
3565 }
3566 const tflite::DepthToSpaceOptionsT *AsDepthToSpaceOptions() const {
3567 return type == BuiltinOptions_DepthToSpaceOptions ?
3568 reinterpret_cast<const tflite::DepthToSpaceOptionsT *>(value) : nullptr;
3569 }
3570 tflite::NonMaxSuppressionV4OptionsT *AsNonMaxSuppressionV4Options() {
3571 return type == BuiltinOptions_NonMaxSuppressionV4Options ?
3572 reinterpret_cast<tflite::NonMaxSuppressionV4OptionsT *>(value) : nullptr;
3573 }
3574 const tflite::NonMaxSuppressionV4OptionsT *AsNonMaxSuppressionV4Options() const {
3575 return type == BuiltinOptions_NonMaxSuppressionV4Options ?
3576 reinterpret_cast<const tflite::NonMaxSuppressionV4OptionsT *>(value) : nullptr;
3577 }
3578 tflite::NonMaxSuppressionV5OptionsT *AsNonMaxSuppressionV5Options() {
3579 return type == BuiltinOptions_NonMaxSuppressionV5Options ?
3580 reinterpret_cast<tflite::NonMaxSuppressionV5OptionsT *>(value) : nullptr;
3581 }
3582 const tflite::NonMaxSuppressionV5OptionsT *AsNonMaxSuppressionV5Options() const {
3583 return type == BuiltinOptions_NonMaxSuppressionV5Options ?
3584 reinterpret_cast<const tflite::NonMaxSuppressionV5OptionsT *>(value) : nullptr;
3585 }
3586 tflite::ScatterNdOptionsT *AsScatterNdOptions() {
3587 return type == BuiltinOptions_ScatterNdOptions ?
3588 reinterpret_cast<tflite::ScatterNdOptionsT *>(value) : nullptr;
3589 }
3590 const tflite::ScatterNdOptionsT *AsScatterNdOptions() const {
3591 return type == BuiltinOptions_ScatterNdOptions ?
3592 reinterpret_cast<const tflite::ScatterNdOptionsT *>(value) : nullptr;
3593 }
3594 tflite::SelectV2OptionsT *AsSelectV2Options() {
3595 return type == BuiltinOptions_SelectV2Options ?
3596 reinterpret_cast<tflite::SelectV2OptionsT *>(value) : nullptr;
3597 }
3598 const tflite::SelectV2OptionsT *AsSelectV2Options() const {
3599 return type == BuiltinOptions_SelectV2Options ?
3600 reinterpret_cast<const tflite::SelectV2OptionsT *>(value) : nullptr;
3601 }
3602 tflite::DensifyOptionsT *AsDensifyOptions() {
3603 return type == BuiltinOptions_DensifyOptions ?
3604 reinterpret_cast<tflite::DensifyOptionsT *>(value) : nullptr;
3605 }
3606 const tflite::DensifyOptionsT *AsDensifyOptions() const {
3607 return type == BuiltinOptions_DensifyOptions ?
3608 reinterpret_cast<const tflite::DensifyOptionsT *>(value) : nullptr;
3609 }
3610 tflite::SegmentSumOptionsT *AsSegmentSumOptions() {
3611 return type == BuiltinOptions_SegmentSumOptions ?
3612 reinterpret_cast<tflite::SegmentSumOptionsT *>(value) : nullptr;
3613 }
3614 const tflite::SegmentSumOptionsT *AsSegmentSumOptions() const {
3615 return type == BuiltinOptions_SegmentSumOptions ?
3616 reinterpret_cast<const tflite::SegmentSumOptionsT *>(value) : nullptr;
3617 }
3618 tflite::BatchMatMulOptionsT *AsBatchMatMulOptions() {
3619 return type == BuiltinOptions_BatchMatMulOptions ?
3620 reinterpret_cast<tflite::BatchMatMulOptionsT *>(value) : nullptr;
3621 }
3622 const tflite::BatchMatMulOptionsT *AsBatchMatMulOptions() const {
3623 return type == BuiltinOptions_BatchMatMulOptions ?
3624 reinterpret_cast<const tflite::BatchMatMulOptionsT *>(value) : nullptr;
3625 }
3626 tflite::CumsumOptionsT *AsCumsumOptions() {
3627 return type == BuiltinOptions_CumsumOptions ?
3628 reinterpret_cast<tflite::CumsumOptionsT *>(value) : nullptr;
3629 }
3630 const tflite::CumsumOptionsT *AsCumsumOptions() const {
3631 return type == BuiltinOptions_CumsumOptions ?
3632 reinterpret_cast<const tflite::CumsumOptionsT *>(value) : nullptr;
3633 }
3634 tflite::CallOnceOptionsT *AsCallOnceOptions() {
3635 return type == BuiltinOptions_CallOnceOptions ?
3636 reinterpret_cast<tflite::CallOnceOptionsT *>(value) : nullptr;
3637 }
3638 const tflite::CallOnceOptionsT *AsCallOnceOptions() const {
3639 return type == BuiltinOptions_CallOnceOptions ?
3640 reinterpret_cast<const tflite::CallOnceOptionsT *>(value) : nullptr;
3641 }
3642 tflite::BroadcastToOptionsT *AsBroadcastToOptions() {
3643 return type == BuiltinOptions_BroadcastToOptions ?
3644 reinterpret_cast<tflite::BroadcastToOptionsT *>(value) : nullptr;
3645 }
3646 const tflite::BroadcastToOptionsT *AsBroadcastToOptions() const {
3647 return type == BuiltinOptions_BroadcastToOptions ?
3648 reinterpret_cast<const tflite::BroadcastToOptionsT *>(value) : nullptr;
3649 }
3650 tflite::Rfft2dOptionsT *AsRfft2dOptions() {
3651 return type == BuiltinOptions_Rfft2dOptions ?
3652 reinterpret_cast<tflite::Rfft2dOptionsT *>(value) : nullptr;
3653 }
3654 const tflite::Rfft2dOptionsT *AsRfft2dOptions() const {
3655 return type == BuiltinOptions_Rfft2dOptions ?
3656 reinterpret_cast<const tflite::Rfft2dOptionsT *>(value) : nullptr;
3657 }
3658 tflite::Conv3DOptionsT *AsConv3DOptions() {
3659 return type == BuiltinOptions_Conv3DOptions ?
3660 reinterpret_cast<tflite::Conv3DOptionsT *>(value) : nullptr;
3661 }
3662 const tflite::Conv3DOptionsT *AsConv3DOptions() const {
3663 return type == BuiltinOptions_Conv3DOptions ?
3664 reinterpret_cast<const tflite::Conv3DOptionsT *>(value) : nullptr;
3665 }
3666 tflite::HashtableOptionsT *AsHashtableOptions() {
3667 return type == BuiltinOptions_HashtableOptions ?
3668 reinterpret_cast<tflite::HashtableOptionsT *>(value) : nullptr;
3669 }
3670 const tflite::HashtableOptionsT *AsHashtableOptions() const {
3671 return type == BuiltinOptions_HashtableOptions ?
3672 reinterpret_cast<const tflite::HashtableOptionsT *>(value) : nullptr;
3673 }
3674 tflite::HashtableFindOptionsT *AsHashtableFindOptions() {
3675 return type == BuiltinOptions_HashtableFindOptions ?
3676 reinterpret_cast<tflite::HashtableFindOptionsT *>(value) : nullptr;
3677 }
3678 const tflite::HashtableFindOptionsT *AsHashtableFindOptions() const {
3679 return type == BuiltinOptions_HashtableFindOptions ?
3680 reinterpret_cast<const tflite::HashtableFindOptionsT *>(value) : nullptr;
3681 }
3682 tflite::HashtableImportOptionsT *AsHashtableImportOptions() {
3683 return type == BuiltinOptions_HashtableImportOptions ?
3684 reinterpret_cast<tflite::HashtableImportOptionsT *>(value) : nullptr;
3685 }
3686 const tflite::HashtableImportOptionsT *AsHashtableImportOptions() const {
3687 return type == BuiltinOptions_HashtableImportOptions ?
3688 reinterpret_cast<const tflite::HashtableImportOptionsT *>(value) : nullptr;
3689 }
3690 tflite::HashtableSizeOptionsT *AsHashtableSizeOptions() {
3691 return type == BuiltinOptions_HashtableSizeOptions ?
3692 reinterpret_cast<tflite::HashtableSizeOptionsT *>(value) : nullptr;
3693 }
3694 const tflite::HashtableSizeOptionsT *AsHashtableSizeOptions() const {
3695 return type == BuiltinOptions_HashtableSizeOptions ?
3696 reinterpret_cast<const tflite::HashtableSizeOptionsT *>(value) : nullptr;
3697 }
3698 tflite::VarHandleOptionsT *AsVarHandleOptions() {
3699 return type == BuiltinOptions_VarHandleOptions ?
3700 reinterpret_cast<tflite::VarHandleOptionsT *>(value) : nullptr;
3701 }
3702 const tflite::VarHandleOptionsT *AsVarHandleOptions() const {
3703 return type == BuiltinOptions_VarHandleOptions ?
3704 reinterpret_cast<const tflite::VarHandleOptionsT *>(value) : nullptr;
3705 }
3706 tflite::ReadVariableOptionsT *AsReadVariableOptions() {
3707 return type == BuiltinOptions_ReadVariableOptions ?
3708 reinterpret_cast<tflite::ReadVariableOptionsT *>(value) : nullptr;
3709 }
3710 const tflite::ReadVariableOptionsT *AsReadVariableOptions() const {
3711 return type == BuiltinOptions_ReadVariableOptions ?
3712 reinterpret_cast<const tflite::ReadVariableOptionsT *>(value) : nullptr;
3713 }
3714 tflite::AssignVariableOptionsT *AsAssignVariableOptions() {
3715 return type == BuiltinOptions_AssignVariableOptions ?
3716 reinterpret_cast<tflite::AssignVariableOptionsT *>(value) : nullptr;
3717 }
3718 const tflite::AssignVariableOptionsT *AsAssignVariableOptions() const {
3719 return type == BuiltinOptions_AssignVariableOptions ?
3720 reinterpret_cast<const tflite::AssignVariableOptionsT *>(value) : nullptr;
3721 }
3722 tflite::RandomOptionsT *AsRandomOptions() {
3723 return type == BuiltinOptions_RandomOptions ?
3724 reinterpret_cast<tflite::RandomOptionsT *>(value) : nullptr;
3725 }
3726 const tflite::RandomOptionsT *AsRandomOptions() const {
3727 return type == BuiltinOptions_RandomOptions ?
3728 reinterpret_cast<const tflite::RandomOptionsT *>(value) : nullptr;
3729 }
3730 tflite::BucketizeOptionsT *AsBucketizeOptions() {
3731 return type == BuiltinOptions_BucketizeOptions ?
3732 reinterpret_cast<tflite::BucketizeOptionsT *>(value) : nullptr;
3733 }
3734 const tflite::BucketizeOptionsT *AsBucketizeOptions() const {
3735 return type == BuiltinOptions_BucketizeOptions ?
3736 reinterpret_cast<const tflite::BucketizeOptionsT *>(value) : nullptr;
3737 }
3738 tflite::GeluOptionsT *AsGeluOptions() {
3739 return type == BuiltinOptions_GeluOptions ?
3740 reinterpret_cast<tflite::GeluOptionsT *>(value) : nullptr;
3741 }
3742 const tflite::GeluOptionsT *AsGeluOptions() const {
3743 return type == BuiltinOptions_GeluOptions ?
3744 reinterpret_cast<const tflite::GeluOptionsT *>(value) : nullptr;
3745 }
3746 tflite::DynamicUpdateSliceOptionsT *AsDynamicUpdateSliceOptions() {
3747 return type == BuiltinOptions_DynamicUpdateSliceOptions ?
3748 reinterpret_cast<tflite::DynamicUpdateSliceOptionsT *>(value) : nullptr;
3749 }
3750 const tflite::DynamicUpdateSliceOptionsT *AsDynamicUpdateSliceOptions() const {
3751 return type == BuiltinOptions_DynamicUpdateSliceOptions ?
3752 reinterpret_cast<const tflite::DynamicUpdateSliceOptionsT *>(value) : nullptr;
3753 }
3754 tflite::UnsortedSegmentProdOptionsT *AsUnsortedSegmentProdOptions() {
3755 return type == BuiltinOptions_UnsortedSegmentProdOptions ?
3756 reinterpret_cast<tflite::UnsortedSegmentProdOptionsT *>(value) : nullptr;
3757 }
3758 const tflite::UnsortedSegmentProdOptionsT *AsUnsortedSegmentProdOptions() const {
3759 return type == BuiltinOptions_UnsortedSegmentProdOptions ?
3760 reinterpret_cast<const tflite::UnsortedSegmentProdOptionsT *>(value) : nullptr;
3761 }
3762 tflite::UnsortedSegmentMaxOptionsT *AsUnsortedSegmentMaxOptions() {
3763 return type == BuiltinOptions_UnsortedSegmentMaxOptions ?
3764 reinterpret_cast<tflite::UnsortedSegmentMaxOptionsT *>(value) : nullptr;
3765 }
3766 const tflite::UnsortedSegmentMaxOptionsT *AsUnsortedSegmentMaxOptions() const {
3767 return type == BuiltinOptions_UnsortedSegmentMaxOptions ?
3768 reinterpret_cast<const tflite::UnsortedSegmentMaxOptionsT *>(value) : nullptr;
3769 }
3770 tflite::UnsortedSegmentMinOptionsT *AsUnsortedSegmentMinOptions() {
3771 return type == BuiltinOptions_UnsortedSegmentMinOptions ?
3772 reinterpret_cast<tflite::UnsortedSegmentMinOptionsT *>(value) : nullptr;
3773 }
3774 const tflite::UnsortedSegmentMinOptionsT *AsUnsortedSegmentMinOptions() const {
3775 return type == BuiltinOptions_UnsortedSegmentMinOptions ?
3776 reinterpret_cast<const tflite::UnsortedSegmentMinOptionsT *>(value) : nullptr;
3777 }
3778 tflite::UnsortedSegmentSumOptionsT *AsUnsortedSegmentSumOptions() {
3779 return type == BuiltinOptions_UnsortedSegmentSumOptions ?
3780 reinterpret_cast<tflite::UnsortedSegmentSumOptionsT *>(value) : nullptr;
3781 }
3782 const tflite::UnsortedSegmentSumOptionsT *AsUnsortedSegmentSumOptions() const {
3783 return type == BuiltinOptions_UnsortedSegmentSumOptions ?
3784 reinterpret_cast<const tflite::UnsortedSegmentSumOptionsT *>(value) : nullptr;
3785 }
3786 tflite::ATan2OptionsT *AsATan2Options() {
3787 return type == BuiltinOptions_ATan2Options ?
3788 reinterpret_cast<tflite::ATan2OptionsT *>(value) : nullptr;
3789 }
3790 const tflite::ATan2OptionsT *AsATan2Options() const {
3791 return type == BuiltinOptions_ATan2Options ?
3792 reinterpret_cast<const tflite::ATan2OptionsT *>(value) : nullptr;
3793 }
3794 tflite::SignOptionsT *AsSignOptions() {
3795 return type == BuiltinOptions_SignOptions ?
3796 reinterpret_cast<tflite::SignOptionsT *>(value) : nullptr;
3797 }
3798 const tflite::SignOptionsT *AsSignOptions() const {
3799 return type == BuiltinOptions_SignOptions ?
3800 reinterpret_cast<const tflite::SignOptionsT *>(value) : nullptr;
3801 }
3802 };
3803
3804 bool VerifyBuiltinOptions(flatbuffers::Verifier &verifier, const void *obj, BuiltinOptions type);
3805 bool VerifyBuiltinOptionsVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<uint8_t> *types);
3806
3807 enum Padding : int8_t {
3808 Padding_SAME = 0,
3809 Padding_VALID = 1,
3810 Padding_MIN = Padding_SAME,
3811 Padding_MAX = Padding_VALID
3812 };
3813
3814 inline const Padding (&EnumValuesPadding())[2] {
3815 static const Padding values[] = {
3816 Padding_SAME,
3817 Padding_VALID
3818 };
3819 return values;
3820 }
3821
3822 inline const char * const *EnumNamesPadding() {
3823 static const char * const names[3] = {
3824 "SAME",
3825 "VALID",
3826 nullptr
3827 };
3828 return names;
3829 }
3830
3831 inline const char *EnumNamePadding(Padding e) {
3832 if (flatbuffers::IsOutRange(e, Padding_SAME, Padding_VALID)) return "";
3833 const size_t index = static_cast<size_t>(e);
3834 return EnumNamesPadding()[index];
3835 }
3836
3837 enum ActivationFunctionType : int8_t {
3838 ActivationFunctionType_NONE = 0,
3839 ActivationFunctionType_RELU = 1,
3840 ActivationFunctionType_RELU_N1_TO_1 = 2,
3841 ActivationFunctionType_RELU6 = 3,
3842 ActivationFunctionType_TANH = 4,
3843 ActivationFunctionType_SIGN_BIT = 5,
3844 ActivationFunctionType_MIN = ActivationFunctionType_NONE,
3845 ActivationFunctionType_MAX = ActivationFunctionType_SIGN_BIT
3846 };
3847
3848 inline const ActivationFunctionType (&EnumValuesActivationFunctionType())[6] {
3849 static const ActivationFunctionType values[] = {
3850 ActivationFunctionType_NONE,
3851 ActivationFunctionType_RELU,
3852 ActivationFunctionType_RELU_N1_TO_1,
3853 ActivationFunctionType_RELU6,
3854 ActivationFunctionType_TANH,
3855 ActivationFunctionType_SIGN_BIT
3856 };
3857 return values;
3858 }
3859
3860 inline const char * const *EnumNamesActivationFunctionType() {
3861 static const char * const names[7] = {
3862 "NONE",
3863 "RELU",
3864 "RELU_N1_TO_1",
3865 "RELU6",
3866 "TANH",
3867 "SIGN_BIT",
3868 nullptr
3869 };
3870 return names;
3871 }
3872
3873 inline const char *EnumNameActivationFunctionType(ActivationFunctionType e) {
3874 if (flatbuffers::IsOutRange(e, ActivationFunctionType_NONE, ActivationFunctionType_SIGN_BIT)) return "";
3875 const size_t index = static_cast<size_t>(e);
3876 return EnumNamesActivationFunctionType()[index];
3877 }
3878
3879 enum LSHProjectionType : int8_t {
3880 LSHProjectionType_UNKNOWN = 0,
3881 LSHProjectionType_SPARSE = 1,
3882 LSHProjectionType_DENSE = 2,
3883 LSHProjectionType_MIN = LSHProjectionType_UNKNOWN,
3884 LSHProjectionType_MAX = LSHProjectionType_DENSE
3885 };
3886
3887 inline const LSHProjectionType (&EnumValuesLSHProjectionType())[3] {
3888 static const LSHProjectionType values[] = {
3889 LSHProjectionType_UNKNOWN,
3890 LSHProjectionType_SPARSE,
3891 LSHProjectionType_DENSE
3892 };
3893 return values;
3894 }
3895
3896 inline const char * const *EnumNamesLSHProjectionType() {
3897 static const char * const names[4] = {
3898 "UNKNOWN",
3899 "SPARSE",
3900 "DENSE",
3901 nullptr
3902 };
3903 return names;
3904 }
3905
3906 inline const char *EnumNameLSHProjectionType(LSHProjectionType e) {
3907 if (flatbuffers::IsOutRange(e, LSHProjectionType_UNKNOWN, LSHProjectionType_DENSE)) return "";
3908 const size_t index = static_cast<size_t>(e);
3909 return EnumNamesLSHProjectionType()[index];
3910 }
3911
3912 enum FullyConnectedOptionsWeightsFormat : int8_t {
3913 FullyConnectedOptionsWeightsFormat_DEFAULT = 0,
3914 FullyConnectedOptionsWeightsFormat_SHUFFLED4x16INT8 = 1,
3915 FullyConnectedOptionsWeightsFormat_MIN = FullyConnectedOptionsWeightsFormat_DEFAULT,
3916 FullyConnectedOptionsWeightsFormat_MAX = FullyConnectedOptionsWeightsFormat_SHUFFLED4x16INT8
3917 };
3918
3919 inline const FullyConnectedOptionsWeightsFormat (&EnumValuesFullyConnectedOptionsWeightsFormat())[2] {
3920 static const FullyConnectedOptionsWeightsFormat values[] = {
3921 FullyConnectedOptionsWeightsFormat_DEFAULT,
3922 FullyConnectedOptionsWeightsFormat_SHUFFLED4x16INT8
3923 };
3924 return values;
3925 }
3926
3927 inline const char * const *EnumNamesFullyConnectedOptionsWeightsFormat() {
3928 static const char * const names[3] = {
3929 "DEFAULT",
3930 "SHUFFLED4x16INT8",
3931 nullptr
3932 };
3933 return names;
3934 }
3935
3936 inline const char *EnumNameFullyConnectedOptionsWeightsFormat(FullyConnectedOptionsWeightsFormat e) {
3937 if (flatbuffers::IsOutRange(e, FullyConnectedOptionsWeightsFormat_DEFAULT, FullyConnectedOptionsWeightsFormat_SHUFFLED4x16INT8)) return "";
3938 const size_t index = static_cast<size_t>(e);
3939 return EnumNamesFullyConnectedOptionsWeightsFormat()[index];
3940 }
3941
3942 enum LSTMKernelType : int8_t {
3943 LSTMKernelType_FULL = 0,
3944 LSTMKernelType_BASIC = 1,
3945 LSTMKernelType_MIN = LSTMKernelType_FULL,
3946 LSTMKernelType_MAX = LSTMKernelType_BASIC
3947 };
3948
3949 inline const LSTMKernelType (&EnumValuesLSTMKernelType())[2] {
3950 static const LSTMKernelType values[] = {
3951 LSTMKernelType_FULL,
3952 LSTMKernelType_BASIC
3953 };
3954 return values;
3955 }
3956
3957 inline const char * const *EnumNamesLSTMKernelType() {
3958 static const char * const names[3] = {
3959 "FULL",
3960 "BASIC",
3961 nullptr
3962 };
3963 return names;
3964 }
3965
3966 inline const char *EnumNameLSTMKernelType(LSTMKernelType e) {
3967 if (flatbuffers::IsOutRange(e, LSTMKernelType_FULL, LSTMKernelType_BASIC)) return "";
3968 const size_t index = static_cast<size_t>(e);
3969 return EnumNamesLSTMKernelType()[index];
3970 }
3971
3972 enum CombinerType : int8_t {
3973 CombinerType_SUM = 0,
3974 CombinerType_MEAN = 1,
3975 CombinerType_SQRTN = 2,
3976 CombinerType_MIN = CombinerType_SUM,
3977 CombinerType_MAX = CombinerType_SQRTN
3978 };
3979
3980 inline const CombinerType (&EnumValuesCombinerType())[3] {
3981 static const CombinerType values[] = {
3982 CombinerType_SUM,
3983 CombinerType_MEAN,
3984 CombinerType_SQRTN
3985 };
3986 return values;
3987 }
3988
3989 inline const char * const *EnumNamesCombinerType() {
3990 static const char * const names[4] = {
3991 "SUM",
3992 "MEAN",
3993 "SQRTN",
3994 nullptr
3995 };
3996 return names;
3997 }
3998
3999 inline const char *EnumNameCombinerType(CombinerType e) {
4000 if (flatbuffers::IsOutRange(e, CombinerType_SUM, CombinerType_SQRTN)) return "";
4001 const size_t index = static_cast<size_t>(e);
4002 return EnumNamesCombinerType()[index];
4003 }
4004
4005 enum MirrorPadMode : int8_t {
4006 MirrorPadMode_REFLECT = 0,
4007 MirrorPadMode_SYMMETRIC = 1,
4008 MirrorPadMode_MIN = MirrorPadMode_REFLECT,
4009 MirrorPadMode_MAX = MirrorPadMode_SYMMETRIC
4010 };
4011
4012 inline const MirrorPadMode (&EnumValuesMirrorPadMode())[2] {
4013 static const MirrorPadMode values[] = {
4014 MirrorPadMode_REFLECT,
4015 MirrorPadMode_SYMMETRIC
4016 };
4017 return values;
4018 }
4019
4020 inline const char * const *EnumNamesMirrorPadMode() {
4021 static const char * const names[3] = {
4022 "REFLECT",
4023 "SYMMETRIC",
4024 nullptr
4025 };
4026 return names;
4027 }
4028
4029 inline const char *EnumNameMirrorPadMode(MirrorPadMode e) {
4030 if (flatbuffers::IsOutRange(e, MirrorPadMode_REFLECT, MirrorPadMode_SYMMETRIC)) return "";
4031 const size_t index = static_cast<size_t>(e);
4032 return EnumNamesMirrorPadMode()[index];
4033 }
4034
4035 enum CustomOptionsFormat : int8_t {
4036 CustomOptionsFormat_FLEXBUFFERS = 0,
4037 CustomOptionsFormat_MIN = CustomOptionsFormat_FLEXBUFFERS,
4038 CustomOptionsFormat_MAX = CustomOptionsFormat_FLEXBUFFERS
4039 };
4040
4041 inline const CustomOptionsFormat (&EnumValuesCustomOptionsFormat())[1] {
4042 static const CustomOptionsFormat values[] = {
4043 CustomOptionsFormat_FLEXBUFFERS
4044 };
4045 return values;
4046 }
4047
4048 inline const char * const *EnumNamesCustomOptionsFormat() {
4049 static const char * const names[2] = {
4050 "FLEXBUFFERS",
4051 nullptr
4052 };
4053 return names;
4054 }
4055
4056 inline const char *EnumNameCustomOptionsFormat(CustomOptionsFormat e) {
4057 if (flatbuffers::IsOutRange(e, CustomOptionsFormat_FLEXBUFFERS, CustomOptionsFormat_FLEXBUFFERS)) return "";
4058 const size_t index = static_cast<size_t>(e);
4059 return EnumNamesCustomOptionsFormat()[index];
4060 }
4061
4062 struct CustomQuantizationT : public flatbuffers::NativeTable {
4063 typedef CustomQuantization TableType;
4064 std::vector<uint8_t> custom{};
4065 };
4066
4067 struct CustomQuantization FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
4068 typedef CustomQuantizationT NativeTableType;
4069 typedef CustomQuantizationBuilder Builder;
4070 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
4071 VT_CUSTOM = 4
4072 };
4073 const flatbuffers::Vector<uint8_t> *custom() const {
4074 return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_CUSTOM);
4075 }
4076 flatbuffers::Vector<uint8_t> *mutable_custom() {
4077 return GetPointer<flatbuffers::Vector<uint8_t> *>(VT_CUSTOM);
4078 }
4079 bool Verify(flatbuffers::Verifier &verifier) const {
4080 return VerifyTableStart(verifier) &&
4081 VerifyOffset(verifier, VT_CUSTOM) &&
4082 verifier.VerifyVector(custom()) &&
4083 verifier.EndTable();
4084 }
4085 CustomQuantizationT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
4086 void UnPackTo(CustomQuantizationT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
4087 static flatbuffers::Offset<CustomQuantization> Pack(flatbuffers::FlatBufferBuilder &_fbb, const CustomQuantizationT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
4088 };
4089
4090 struct CustomQuantizationBuilder {
4091 typedef CustomQuantization Table;
4092 flatbuffers::FlatBufferBuilder &fbb_;
4093 flatbuffers::uoffset_t start_;
4094 void add_custom(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> custom) {
4095 fbb_.AddOffset(CustomQuantization::VT_CUSTOM, custom);
4096 }
4097 explicit CustomQuantizationBuilder(flatbuffers::FlatBufferBuilder &_fbb)
4098 : fbb_(_fbb) {
4099 start_ = fbb_.StartTable();
4100 }
4101 flatbuffers::Offset<CustomQuantization> Finish() {
4102 const auto end = fbb_.EndTable(start_);
4103 auto o = flatbuffers::Offset<CustomQuantization>(end);
4104 return o;
4105 }
4106 };
4107
4108 inline flatbuffers::Offset<CustomQuantization> CreateCustomQuantization(
4109 flatbuffers::FlatBufferBuilder &_fbb,
4110 flatbuffers::Offset<flatbuffers::Vector<uint8_t>> custom = 0) {
4111 CustomQuantizationBuilder builder_(_fbb);
4112 builder_.add_custom(custom);
4113 return builder_.Finish();
4114 }
4115
4116 inline flatbuffers::Offset<CustomQuantization> CreateCustomQuantizationDirect(
4117 flatbuffers::FlatBufferBuilder &_fbb,
4118 const std::vector<uint8_t> *custom = nullptr) {
4119 if (custom) { _fbb.ForceVectorAlignment(custom->size(), sizeof(uint8_t), 16); }
4120 auto custom__ = custom ? _fbb.CreateVector<uint8_t>(*custom) : 0;
4121 return tflite::CreateCustomQuantization(
4122 _fbb,
4123 custom__);
4124 }
4125
4126 flatbuffers::Offset<CustomQuantization> CreateCustomQuantization(flatbuffers::FlatBufferBuilder &_fbb, const CustomQuantizationT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
4127
4128 struct QuantizationParametersT : public flatbuffers::NativeTable {
4129 typedef QuantizationParameters TableType;
4130 std::vector<float> min{};
4131 std::vector<float> max{};
4132 std::vector<float> scale{};
4133 std::vector<int64_t> zero_point{};
4134 tflite::QuantizationDetailsUnion details{};
4135 int32_t quantized_dimension = 0;
4136 };
4137
4138 struct QuantizationParameters FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
4139 typedef QuantizationParametersT NativeTableType;
4140 typedef QuantizationParametersBuilder Builder;
4141 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
4142 VT_MIN = 4,
4143 VT_MAX = 6,
4144 VT_SCALE = 8,
4145 VT_ZERO_POINT = 10,
4146 VT_DETAILS_TYPE = 12,
4147 VT_DETAILS = 14,
4148 VT_QUANTIZED_DIMENSION = 16
4149 };
4150 const flatbuffers::Vector<float> *min() const {
4151 return GetPointer<const flatbuffers::Vector<float> *>(VT_MIN);
4152 }
4153 flatbuffers::Vector<float> *mutable_min() {
4154 return GetPointer<flatbuffers::Vector<float> *>(VT_MIN);
4155 }
4156 const flatbuffers::Vector<float> *max() const {
4157 return GetPointer<const flatbuffers::Vector<float> *>(VT_MAX);
4158 }
4159 flatbuffers::Vector<float> *mutable_max() {
4160 return GetPointer<flatbuffers::Vector<float> *>(VT_MAX);
4161 }
4162 const flatbuffers::Vector<float> *scale() const {
4163 return GetPointer<const flatbuffers::Vector<float> *>(VT_SCALE);
4164 }
4165 flatbuffers::Vector<float> *mutable_scale() {
4166 return GetPointer<flatbuffers::Vector<float> *>(VT_SCALE);
4167 }
4168 const flatbuffers::Vector<int64_t> *zero_point() const {
4169 return GetPointer<const flatbuffers::Vector<int64_t> *>(VT_ZERO_POINT);
4170 }
4171 flatbuffers::Vector<int64_t> *mutable_zero_point() {
4172 return GetPointer<flatbuffers::Vector<int64_t> *>(VT_ZERO_POINT);
4173 }
4174 tflite::QuantizationDetails details_type() const {
4175 return static_cast<tflite::QuantizationDetails>(GetField<uint8_t>(VT_DETAILS_TYPE, 0));
4176 }
4177 const void *details() const {
4178 return GetPointer<const void *>(VT_DETAILS);
4179 }
4180 template<typename T> const T *details_as() const;
4181 const tflite::CustomQuantization *details_as_CustomQuantization() const {
4182 return details_type() == tflite::QuantizationDetails_CustomQuantization ? static_cast<const tflite::CustomQuantization *>(details()) : nullptr;
4183 }
4184 void *mutable_details() {
4185 return GetPointer<void *>(VT_DETAILS);
4186 }
4187 int32_t quantized_dimension() const {
4188 return GetField<int32_t>(VT_QUANTIZED_DIMENSION, 0);
4189 }
4190 bool mutate_quantized_dimension(int32_t _quantized_dimension = 0) {
4191 return SetField<int32_t>(VT_QUANTIZED_DIMENSION, _quantized_dimension, 0);
4192 }
4193 bool Verify(flatbuffers::Verifier &verifier) const {
4194 return VerifyTableStart(verifier) &&
4195 VerifyOffset(verifier, VT_MIN) &&
4196 verifier.VerifyVector(min()) &&
4197 VerifyOffset(verifier, VT_MAX) &&
4198 verifier.VerifyVector(max()) &&
4199 VerifyOffset(verifier, VT_SCALE) &&
4200 verifier.VerifyVector(scale()) &&
4201 VerifyOffset(verifier, VT_ZERO_POINT) &&
4202 verifier.VerifyVector(zero_point()) &&
4203 VerifyField<uint8_t>(verifier, VT_DETAILS_TYPE, 1) &&
4204 VerifyOffset(verifier, VT_DETAILS) &&
4205 VerifyQuantizationDetails(verifier, details(), details_type()) &&
4206 VerifyField<int32_t>(verifier, VT_QUANTIZED_DIMENSION, 4) &&
4207 verifier.EndTable();
4208 }
4209 QuantizationParametersT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
4210 void UnPackTo(QuantizationParametersT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
4211 static flatbuffers::Offset<QuantizationParameters> Pack(flatbuffers::FlatBufferBuilder &_fbb, const QuantizationParametersT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
4212 };
4213
4214 template<> inline const tflite::CustomQuantization *QuantizationParameters::details_as<tflite::CustomQuantization>() const {
4215 return details_as_CustomQuantization();
4216 }
4217
4218 struct QuantizationParametersBuilder {
4219 typedef QuantizationParameters Table;
4220 flatbuffers::FlatBufferBuilder &fbb_;
4221 flatbuffers::uoffset_t start_;
4222 void add_min(flatbuffers::Offset<flatbuffers::Vector<float>> min) {
4223 fbb_.AddOffset(QuantizationParameters::VT_MIN, min);
4224 }
4225 void add_max(flatbuffers::Offset<flatbuffers::Vector<float>> max) {
4226 fbb_.AddOffset(QuantizationParameters::VT_MAX, max);
4227 }
4228 void add_scale(flatbuffers::Offset<flatbuffers::Vector<float>> scale) {
4229 fbb_.AddOffset(QuantizationParameters::VT_SCALE, scale);
4230 }
4231 void add_zero_point(flatbuffers::Offset<flatbuffers::Vector<int64_t>> zero_point) {
4232 fbb_.AddOffset(QuantizationParameters::VT_ZERO_POINT, zero_point);
4233 }
4234 void add_details_type(tflite::QuantizationDetails details_type) {
4235 fbb_.AddElement<uint8_t>(QuantizationParameters::VT_DETAILS_TYPE, static_cast<uint8_t>(details_type), 0);
4236 }
4237 void add_details(flatbuffers::Offset<void> details) {
4238 fbb_.AddOffset(QuantizationParameters::VT_DETAILS, details);
4239 }
4240 void add_quantized_dimension(int32_t quantized_dimension) {
4241 fbb_.AddElement<int32_t>(QuantizationParameters::VT_QUANTIZED_DIMENSION, quantized_dimension, 0);
4242 }
4243 explicit QuantizationParametersBuilder(flatbuffers::FlatBufferBuilder &_fbb)
4244 : fbb_(_fbb) {
4245 start_ = fbb_.StartTable();
4246 }
4247 flatbuffers::Offset<QuantizationParameters> Finish() {
4248 const auto end = fbb_.EndTable(start_);
4249 auto o = flatbuffers::Offset<QuantizationParameters>(end);
4250 return o;
4251 }
4252 };
4253
4254 inline flatbuffers::Offset<QuantizationParameters> CreateQuantizationParameters(
4255 flatbuffers::FlatBufferBuilder &_fbb,
4256 flatbuffers::Offset<flatbuffers::Vector<float>> min = 0,
4257 flatbuffers::Offset<flatbuffers::Vector<float>> max = 0,
4258 flatbuffers::Offset<flatbuffers::Vector<float>> scale = 0,
4259 flatbuffers::Offset<flatbuffers::Vector<int64_t>> zero_point = 0,
4260 tflite::QuantizationDetails details_type = tflite::QuantizationDetails_NONE,
4261 flatbuffers::Offset<void> details = 0,
4262 int32_t quantized_dimension = 0) {
4263 QuantizationParametersBuilder builder_(_fbb);
4264 builder_.add_quantized_dimension(quantized_dimension);
4265 builder_.add_details(details);
4266 builder_.add_zero_point(zero_point);
4267 builder_.add_scale(scale);
4268 builder_.add_max(max);
4269 builder_.add_min(min);
4270 builder_.add_details_type(details_type);
4271 return builder_.Finish();
4272 }
4273
4274 inline flatbuffers::Offset<QuantizationParameters> CreateQuantizationParametersDirect(
4275 flatbuffers::FlatBufferBuilder &_fbb,
4276 const std::vector<float> *min = nullptr,
4277 const std::vector<float> *max = nullptr,
4278 const std::vector<float> *scale = nullptr,
4279 const std::vector<int64_t> *zero_point = nullptr,
4280 tflite::QuantizationDetails details_type = tflite::QuantizationDetails_NONE,
4281 flatbuffers::Offset<void> details = 0,
4282 int32_t quantized_dimension = 0) {
4283 auto min__ = min ? _fbb.CreateVector<float>(*min) : 0;
4284 auto max__ = max ? _fbb.CreateVector<float>(*max) : 0;
4285 auto scale__ = scale ? _fbb.CreateVector<float>(*scale) : 0;
4286 auto zero_point__ = zero_point ? _fbb.CreateVector<int64_t>(*zero_point) : 0;
4287 return tflite::CreateQuantizationParameters(
4288 _fbb,
4289 min__,
4290 max__,
4291 scale__,
4292 zero_point__,
4293 details_type,
4294 details,
4295 quantized_dimension);
4296 }
4297
4298 flatbuffers::Offset<QuantizationParameters> CreateQuantizationParameters(flatbuffers::FlatBufferBuilder &_fbb, const QuantizationParametersT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
4299
4300 struct Int32VectorT : public flatbuffers::NativeTable {
4301 typedef Int32Vector TableType;
4302 std::vector<int32_t> values{};
4303 };
4304
4305 struct Int32Vector FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
4306 typedef Int32VectorT NativeTableType;
4307 typedef Int32VectorBuilder Builder;
4308 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
4309 VT_VALUES = 4
4310 };
4311 const flatbuffers::Vector<int32_t> *values() const {
4312 return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_VALUES);
4313 }
4314 flatbuffers::Vector<int32_t> *mutable_values() {
4315 return GetPointer<flatbuffers::Vector<int32_t> *>(VT_VALUES);
4316 }
4317 bool Verify(flatbuffers::Verifier &verifier) const {
4318 return VerifyTableStart(verifier) &&
4319 VerifyOffset(verifier, VT_VALUES) &&
4320 verifier.VerifyVector(values()) &&
4321 verifier.EndTable();
4322 }
4323 Int32VectorT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
4324 void UnPackTo(Int32VectorT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
4325 static flatbuffers::Offset<Int32Vector> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Int32VectorT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
4326 };
4327
4328 struct Int32VectorBuilder {
4329 typedef Int32Vector Table;
4330 flatbuffers::FlatBufferBuilder &fbb_;
4331 flatbuffers::uoffset_t start_;
4332 void add_values(flatbuffers::Offset<flatbuffers::Vector<int32_t>> values) {
4333 fbb_.AddOffset(Int32Vector::VT_VALUES, values);
4334 }
4335 explicit Int32VectorBuilder(flatbuffers::FlatBufferBuilder &_fbb)
4336 : fbb_(_fbb) {
4337 start_ = fbb_.StartTable();
4338 }
4339 flatbuffers::Offset<Int32Vector> Finish() {
4340 const auto end = fbb_.EndTable(start_);
4341 auto o = flatbuffers::Offset<Int32Vector>(end);
4342 return o;
4343 }
4344 };
4345
4346 inline flatbuffers::Offset<Int32Vector> CreateInt32Vector(
4347 flatbuffers::FlatBufferBuilder &_fbb,
4348 flatbuffers::Offset<flatbuffers::Vector<int32_t>> values = 0) {
4349 Int32VectorBuilder builder_(_fbb);
4350 builder_.add_values(values);
4351 return builder_.Finish();
4352 }
4353
4354 inline flatbuffers::Offset<Int32Vector> CreateInt32VectorDirect(
4355 flatbuffers::FlatBufferBuilder &_fbb,
4356 const std::vector<int32_t> *values = nullptr) {
4357 auto values__ = values ? _fbb.CreateVector<int32_t>(*values) : 0;
4358 return tflite::CreateInt32Vector(
4359 _fbb,
4360 values__);
4361 }
4362
4363 flatbuffers::Offset<Int32Vector> CreateInt32Vector(flatbuffers::FlatBufferBuilder &_fbb, const Int32VectorT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
4364
4365 struct Uint16VectorT : public flatbuffers::NativeTable {
4366 typedef Uint16Vector TableType;
4367 std::vector<uint16_t> values{};
4368 };
4369
4370 struct Uint16Vector FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
4371 typedef Uint16VectorT NativeTableType;
4372 typedef Uint16VectorBuilder Builder;
4373 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
4374 VT_VALUES = 4
4375 };
4376 const flatbuffers::Vector<uint16_t> *values() const {
4377 return GetPointer<const flatbuffers::Vector<uint16_t> *>(VT_VALUES);
4378 }
4379 flatbuffers::Vector<uint16_t> *mutable_values() {
4380 return GetPointer<flatbuffers::Vector<uint16_t> *>(VT_VALUES);
4381 }
4382 bool Verify(flatbuffers::Verifier &verifier) const {
4383 return VerifyTableStart(verifier) &&
4384 VerifyOffset(verifier, VT_VALUES) &&
4385 verifier.VerifyVector(values()) &&
4386 verifier.EndTable();
4387 }
4388 Uint16VectorT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
4389 void UnPackTo(Uint16VectorT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
4390 static flatbuffers::Offset<Uint16Vector> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Uint16VectorT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
4391 };
4392
4393 struct Uint16VectorBuilder {
4394 typedef Uint16Vector Table;
4395 flatbuffers::FlatBufferBuilder &fbb_;
4396 flatbuffers::uoffset_t start_;
4397 void add_values(flatbuffers::Offset<flatbuffers::Vector<uint16_t>> values) {
4398 fbb_.AddOffset(Uint16Vector::VT_VALUES, values);
4399 }
4400 explicit Uint16VectorBuilder(flatbuffers::FlatBufferBuilder &_fbb)
4401 : fbb_(_fbb) {
4402 start_ = fbb_.StartTable();
4403 }
4404 flatbuffers::Offset<Uint16Vector> Finish() {
4405 const auto end = fbb_.EndTable(start_);
4406 auto o = flatbuffers::Offset<Uint16Vector>(end);
4407 return o;
4408 }
4409 };
4410
4411 inline flatbuffers::Offset<Uint16Vector> CreateUint16Vector(
4412 flatbuffers::FlatBufferBuilder &_fbb,
4413 flatbuffers::Offset<flatbuffers::Vector<uint16_t>> values = 0) {
4414 Uint16VectorBuilder builder_(_fbb);
4415 builder_.add_values(values);
4416 return builder_.Finish();
4417 }
4418
4419 inline flatbuffers::Offset<Uint16Vector> CreateUint16VectorDirect(
4420 flatbuffers::FlatBufferBuilder &_fbb,
4421 const std::vector<uint16_t> *values = nullptr) {
4422 if (values) { _fbb.ForceVectorAlignment(values->size(), sizeof(uint16_t), 4); }
4423 auto values__ = values ? _fbb.CreateVector<uint16_t>(*values) : 0;
4424 return tflite::CreateUint16Vector(
4425 _fbb,
4426 values__);
4427 }
4428
4429 flatbuffers::Offset<Uint16Vector> CreateUint16Vector(flatbuffers::FlatBufferBuilder &_fbb, const Uint16VectorT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
4430
4431 struct Uint8VectorT : public flatbuffers::NativeTable {
4432 typedef Uint8Vector TableType;
4433 std::vector<uint8_t> values{};
4434 };
4435
4436 struct Uint8Vector FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
4437 typedef Uint8VectorT NativeTableType;
4438 typedef Uint8VectorBuilder Builder;
4439 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
4440 VT_VALUES = 4
4441 };
4442 const flatbuffers::Vector<uint8_t> *values() const {
4443 return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_VALUES);
4444 }
4445 flatbuffers::Vector<uint8_t> *mutable_values() {
4446 return GetPointer<flatbuffers::Vector<uint8_t> *>(VT_VALUES);
4447 }
4448 bool Verify(flatbuffers::Verifier &verifier) const {
4449 return VerifyTableStart(verifier) &&
4450 VerifyOffset(verifier, VT_VALUES) &&
4451 verifier.VerifyVector(values()) &&
4452 verifier.EndTable();
4453 }
4454 Uint8VectorT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
4455 void UnPackTo(Uint8VectorT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
4456 static flatbuffers::Offset<Uint8Vector> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Uint8VectorT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
4457 };
4458
4459 struct Uint8VectorBuilder {
4460 typedef Uint8Vector Table;
4461 flatbuffers::FlatBufferBuilder &fbb_;
4462 flatbuffers::uoffset_t start_;
4463 void add_values(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> values) {
4464 fbb_.AddOffset(Uint8Vector::VT_VALUES, values);
4465 }
4466 explicit Uint8VectorBuilder(flatbuffers::FlatBufferBuilder &_fbb)
4467 : fbb_(_fbb) {
4468 start_ = fbb_.StartTable();
4469 }
4470 flatbuffers::Offset<Uint8Vector> Finish() {
4471 const auto end = fbb_.EndTable(start_);
4472 auto o = flatbuffers::Offset<Uint8Vector>(end);
4473 return o;
4474 }
4475 };
4476
4477 inline flatbuffers::Offset<Uint8Vector> CreateUint8Vector(
4478 flatbuffers::FlatBufferBuilder &_fbb,
4479 flatbuffers::Offset<flatbuffers::Vector<uint8_t>> values = 0) {
4480 Uint8VectorBuilder builder_(_fbb);
4481 builder_.add_values(values);
4482 return builder_.Finish();
4483 }
4484
4485 inline flatbuffers::Offset<Uint8Vector> CreateUint8VectorDirect(
4486 flatbuffers::FlatBufferBuilder &_fbb,
4487 const std::vector<uint8_t> *values = nullptr) {
4488 if (values) { _fbb.ForceVectorAlignment(values->size(), sizeof(uint8_t), 4); }
4489 auto values__ = values ? _fbb.CreateVector<uint8_t>(*values) : 0;
4490 return tflite::CreateUint8Vector(
4491 _fbb,
4492 values__);
4493 }
4494
4495 flatbuffers::Offset<Uint8Vector> CreateUint8Vector(flatbuffers::FlatBufferBuilder &_fbb, const Uint8VectorT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
4496
4497 struct DimensionMetadataT : public flatbuffers::NativeTable {
4498 typedef DimensionMetadata TableType;
4499 tflite::DimensionType format = tflite::DimensionType_DENSE;
4500 int32_t dense_size = 0;
4501 tflite::SparseIndexVectorUnion array_segments{};
4502 tflite::SparseIndexVectorUnion array_indices{};
4503 };
4504
4505 struct DimensionMetadata FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
4506 typedef DimensionMetadataT NativeTableType;
4507 typedef DimensionMetadataBuilder Builder;
4508 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
4509 VT_FORMAT = 4,
4510 VT_DENSE_SIZE = 6,
4511 VT_ARRAY_SEGMENTS_TYPE = 8,
4512 VT_ARRAY_SEGMENTS = 10,
4513 VT_ARRAY_INDICES_TYPE = 12,
4514 VT_ARRAY_INDICES = 14
4515 };
4516 tflite::DimensionType format() const {
4517 return static_cast<tflite::DimensionType>(GetField<int8_t>(VT_FORMAT, 0));
4518 }
4519 bool mutate_format(tflite::DimensionType _format = static_cast<tflite::DimensionType>(0)) {
4520 return SetField<int8_t>(VT_FORMAT, static_cast<int8_t>(_format), 0);
4521 }
4522 int32_t dense_size() const {
4523 return GetField<int32_t>(VT_DENSE_SIZE, 0);
4524 }
4525 bool mutate_dense_size(int32_t _dense_size = 0) {
4526 return SetField<int32_t>(VT_DENSE_SIZE, _dense_size, 0);
4527 }
4528 tflite::SparseIndexVector array_segments_type() const {
4529 return static_cast<tflite::SparseIndexVector>(GetField<uint8_t>(VT_ARRAY_SEGMENTS_TYPE, 0));
4530 }
4531 const void *array_segments() const {
4532 return GetPointer<const void *>(VT_ARRAY_SEGMENTS);
4533 }
4534 template<typename T> const T *array_segments_as() const;
4535 const tflite::Int32Vector *array_segments_as_Int32Vector() const {
4536 return array_segments_type() == tflite::SparseIndexVector_Int32Vector ? static_cast<const tflite::Int32Vector *>(array_segments()) : nullptr;
4537 }
4538 const tflite::Uint16Vector *array_segments_as_Uint16Vector() const {
4539 return array_segments_type() == tflite::SparseIndexVector_Uint16Vector ? static_cast<const tflite::Uint16Vector *>(array_segments()) : nullptr;
4540 }
4541 const tflite::Uint8Vector *array_segments_as_Uint8Vector() const {
4542 return array_segments_type() == tflite::SparseIndexVector_Uint8Vector ? static_cast<const tflite::Uint8Vector *>(array_segments()) : nullptr;
4543 }
4544 void *mutable_array_segments() {
4545 return GetPointer<void *>(VT_ARRAY_SEGMENTS);
4546 }
4547 tflite::SparseIndexVector array_indices_type() const {
4548 return static_cast<tflite::SparseIndexVector>(GetField<uint8_t>(VT_ARRAY_INDICES_TYPE, 0));
4549 }
4550 const void *array_indices() const {
4551 return GetPointer<const void *>(VT_ARRAY_INDICES);
4552 }
4553 template<typename T> const T *array_indices_as() const;
4554 const tflite::Int32Vector *array_indices_as_Int32Vector() const {
4555 return array_indices_type() == tflite::SparseIndexVector_Int32Vector ? static_cast<const tflite::Int32Vector *>(array_indices()) : nullptr;
4556 }
4557 const tflite::Uint16Vector *array_indices_as_Uint16Vector() const {
4558 return array_indices_type() == tflite::SparseIndexVector_Uint16Vector ? static_cast<const tflite::Uint16Vector *>(array_indices()) : nullptr;
4559 }
4560 const tflite::Uint8Vector *array_indices_as_Uint8Vector() const {
4561 return array_indices_type() == tflite::SparseIndexVector_Uint8Vector ? static_cast<const tflite::Uint8Vector *>(array_indices()) : nullptr;
4562 }
4563 void *mutable_array_indices() {
4564 return GetPointer<void *>(VT_ARRAY_INDICES);
4565 }
4566 bool Verify(flatbuffers::Verifier &verifier) const {
4567 return VerifyTableStart(verifier) &&
4568 VerifyField<int8_t>(verifier, VT_FORMAT, 1) &&
4569 VerifyField<int32_t>(verifier, VT_DENSE_SIZE, 4) &&
4570 VerifyField<uint8_t>(verifier, VT_ARRAY_SEGMENTS_TYPE, 1) &&
4571 VerifyOffset(verifier, VT_ARRAY_SEGMENTS) &&
4572 VerifySparseIndexVector(verifier, array_segments(), array_segments_type()) &&
4573 VerifyField<uint8_t>(verifier, VT_ARRAY_INDICES_TYPE, 1) &&
4574 VerifyOffset(verifier, VT_ARRAY_INDICES) &&
4575 VerifySparseIndexVector(verifier, array_indices(), array_indices_type()) &&
4576 verifier.EndTable();
4577 }
4578 DimensionMetadataT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
4579 void UnPackTo(DimensionMetadataT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
4580 static flatbuffers::Offset<DimensionMetadata> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DimensionMetadataT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
4581 };
4582
4583 template<> inline const tflite::Int32Vector *DimensionMetadata::array_segments_as<tflite::Int32Vector>() const {
4584 return array_segments_as_Int32Vector();
4585 }
4586
4587 template<> inline const tflite::Uint16Vector *DimensionMetadata::array_segments_as<tflite::Uint16Vector>() const {
4588 return array_segments_as_Uint16Vector();
4589 }
4590
4591 template<> inline const tflite::Uint8Vector *DimensionMetadata::array_segments_as<tflite::Uint8Vector>() const {
4592 return array_segments_as_Uint8Vector();
4593 }
4594
4595 template<> inline const tflite::Int32Vector *DimensionMetadata::array_indices_as<tflite::Int32Vector>() const {
4596 return array_indices_as_Int32Vector();
4597 }
4598
4599 template<> inline const tflite::Uint16Vector *DimensionMetadata::array_indices_as<tflite::Uint16Vector>() const {
4600 return array_indices_as_Uint16Vector();
4601 }
4602
4603 template<> inline const tflite::Uint8Vector *DimensionMetadata::array_indices_as<tflite::Uint8Vector>() const {
4604 return array_indices_as_Uint8Vector();
4605 }
4606
4607 struct DimensionMetadataBuilder {
4608 typedef DimensionMetadata Table;
4609 flatbuffers::FlatBufferBuilder &fbb_;
4610 flatbuffers::uoffset_t start_;
4611 void add_format(tflite::DimensionType format) {
4612 fbb_.AddElement<int8_t>(DimensionMetadata::VT_FORMAT, static_cast<int8_t>(format), 0);
4613 }
4614 void add_dense_size(int32_t dense_size) {
4615 fbb_.AddElement<int32_t>(DimensionMetadata::VT_DENSE_SIZE, dense_size, 0);
4616 }
4617 void add_array_segments_type(tflite::SparseIndexVector array_segments_type) {
4618 fbb_.AddElement<uint8_t>(DimensionMetadata::VT_ARRAY_SEGMENTS_TYPE, static_cast<uint8_t>(array_segments_type), 0);
4619 }
4620 void add_array_segments(flatbuffers::Offset<void> array_segments) {
4621 fbb_.AddOffset(DimensionMetadata::VT_ARRAY_SEGMENTS, array_segments);
4622 }
4623 void add_array_indices_type(tflite::SparseIndexVector array_indices_type) {
4624 fbb_.AddElement<uint8_t>(DimensionMetadata::VT_ARRAY_INDICES_TYPE, static_cast<uint8_t>(array_indices_type), 0);
4625 }
4626 void add_array_indices(flatbuffers::Offset<void> array_indices) {
4627 fbb_.AddOffset(DimensionMetadata::VT_ARRAY_INDICES, array_indices);
4628 }
4629 explicit DimensionMetadataBuilder(flatbuffers::FlatBufferBuilder &_fbb)
4630 : fbb_(_fbb) {
4631 start_ = fbb_.StartTable();
4632 }
4633 flatbuffers::Offset<DimensionMetadata> Finish() {
4634 const auto end = fbb_.EndTable(start_);
4635 auto o = flatbuffers::Offset<DimensionMetadata>(end);
4636 return o;
4637 }
4638 };
4639
4640 inline flatbuffers::Offset<DimensionMetadata> CreateDimensionMetadata(
4641 flatbuffers::FlatBufferBuilder &_fbb,
4642 tflite::DimensionType format = tflite::DimensionType_DENSE,
4643 int32_t dense_size = 0,
4644 tflite::SparseIndexVector array_segments_type = tflite::SparseIndexVector_NONE,
4645 flatbuffers::Offset<void> array_segments = 0,
4646 tflite::SparseIndexVector array_indices_type = tflite::SparseIndexVector_NONE,
4647 flatbuffers::Offset<void> array_indices = 0) {
4648 DimensionMetadataBuilder builder_(_fbb);
4649 builder_.add_array_indices(array_indices);
4650 builder_.add_array_segments(array_segments);
4651 builder_.add_dense_size(dense_size);
4652 builder_.add_array_indices_type(array_indices_type);
4653 builder_.add_array_segments_type(array_segments_type);
4654 builder_.add_format(format);
4655 return builder_.Finish();
4656 }
4657
4658 flatbuffers::Offset<DimensionMetadata> CreateDimensionMetadata(flatbuffers::FlatBufferBuilder &_fbb, const DimensionMetadataT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
4659
4660 struct SparsityParametersT : public flatbuffers::NativeTable {
4661 typedef SparsityParameters TableType;
4662 std::vector<int32_t> traversal_order{};
4663 std::vector<int32_t> block_map{};
4664 std::vector<std::unique_ptr<tflite::DimensionMetadataT>> dim_metadata{};
4665 SparsityParametersT() = default;
4666 SparsityParametersT(const SparsityParametersT &o);
4667 SparsityParametersT(SparsityParametersT&&) FLATBUFFERS_NOEXCEPT = default;
4668 SparsityParametersT &operator=(SparsityParametersT o) FLATBUFFERS_NOEXCEPT;
4669 };
4670
4671 struct SparsityParameters FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
4672 typedef SparsityParametersT NativeTableType;
4673 typedef SparsityParametersBuilder Builder;
4674 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
4675 VT_TRAVERSAL_ORDER = 4,
4676 VT_BLOCK_MAP = 6,
4677 VT_DIM_METADATA = 8
4678 };
4679 const flatbuffers::Vector<int32_t> *traversal_order() const {
4680 return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_TRAVERSAL_ORDER);
4681 }
4682 flatbuffers::Vector<int32_t> *mutable_traversal_order() {
4683 return GetPointer<flatbuffers::Vector<int32_t> *>(VT_TRAVERSAL_ORDER);
4684 }
4685 const flatbuffers::Vector<int32_t> *block_map() const {
4686 return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_BLOCK_MAP);
4687 }
4688 flatbuffers::Vector<int32_t> *mutable_block_map() {
4689 return GetPointer<flatbuffers::Vector<int32_t> *>(VT_BLOCK_MAP);
4690 }
4691 const flatbuffers::Vector<flatbuffers::Offset<tflite::DimensionMetadata>> *dim_metadata() const {
4692 return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::DimensionMetadata>> *>(VT_DIM_METADATA);
4693 }
4694 flatbuffers::Vector<flatbuffers::Offset<tflite::DimensionMetadata>> *mutable_dim_metadata() {
4695 return GetPointer<flatbuffers::Vector<flatbuffers::Offset<tflite::DimensionMetadata>> *>(VT_DIM_METADATA);
4696 }
4697 bool Verify(flatbuffers::Verifier &verifier) const {
4698 return VerifyTableStart(verifier) &&
4699 VerifyOffset(verifier, VT_TRAVERSAL_ORDER) &&
4700 verifier.VerifyVector(traversal_order()) &&
4701 VerifyOffset(verifier, VT_BLOCK_MAP) &&
4702 verifier.VerifyVector(block_map()) &&
4703 VerifyOffset(verifier, VT_DIM_METADATA) &&
4704 verifier.VerifyVector(dim_metadata()) &&
4705 verifier.VerifyVectorOfTables(dim_metadata()) &&
4706 verifier.EndTable();
4707 }
4708 SparsityParametersT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
4709 void UnPackTo(SparsityParametersT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
4710 static flatbuffers::Offset<SparsityParameters> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SparsityParametersT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
4711 };
4712
4713 struct SparsityParametersBuilder {
4714 typedef SparsityParameters Table;
4715 flatbuffers::FlatBufferBuilder &fbb_;
4716 flatbuffers::uoffset_t start_;
4717 void add_traversal_order(flatbuffers::Offset<flatbuffers::Vector<int32_t>> traversal_order) {
4718 fbb_.AddOffset(SparsityParameters::VT_TRAVERSAL_ORDER, traversal_order);
4719 }
4720 void add_block_map(flatbuffers::Offset<flatbuffers::Vector<int32_t>> block_map) {
4721 fbb_.AddOffset(SparsityParameters::VT_BLOCK_MAP, block_map);
4722 }
4723 void add_dim_metadata(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::DimensionMetadata>>> dim_metadata) {
4724 fbb_.AddOffset(SparsityParameters::VT_DIM_METADATA, dim_metadata);
4725 }
4726 explicit SparsityParametersBuilder(flatbuffers::FlatBufferBuilder &_fbb)
4727 : fbb_(_fbb) {
4728 start_ = fbb_.StartTable();
4729 }
4730 flatbuffers::Offset<SparsityParameters> Finish() {
4731 const auto end = fbb_.EndTable(start_);
4732 auto o = flatbuffers::Offset<SparsityParameters>(end);
4733 return o;
4734 }
4735 };
4736
4737 inline flatbuffers::Offset<SparsityParameters> CreateSparsityParameters(
4738 flatbuffers::FlatBufferBuilder &_fbb,
4739 flatbuffers::Offset<flatbuffers::Vector<int32_t>> traversal_order = 0,
4740 flatbuffers::Offset<flatbuffers::Vector<int32_t>> block_map = 0,
4741 flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::DimensionMetadata>>> dim_metadata = 0) {
4742 SparsityParametersBuilder builder_(_fbb);
4743 builder_.add_dim_metadata(dim_metadata);
4744 builder_.add_block_map(block_map);
4745 builder_.add_traversal_order(traversal_order);
4746 return builder_.Finish();
4747 }
4748
4749 inline flatbuffers::Offset<SparsityParameters> CreateSparsityParametersDirect(
4750 flatbuffers::FlatBufferBuilder &_fbb,
4751 const std::vector<int32_t> *traversal_order = nullptr,
4752 const std::vector<int32_t> *block_map = nullptr,
4753 const std::vector<flatbuffers::Offset<tflite::DimensionMetadata>> *dim_metadata = nullptr) {
4754 auto traversal_order__ = traversal_order ? _fbb.CreateVector<int32_t>(*traversal_order) : 0;
4755 auto block_map__ = block_map ? _fbb.CreateVector<int32_t>(*block_map) : 0;
4756 auto dim_metadata__ = dim_metadata ? _fbb.CreateVector<flatbuffers::Offset<tflite::DimensionMetadata>>(*dim_metadata) : 0;
4757 return tflite::CreateSparsityParameters(
4758 _fbb,
4759 traversal_order__,
4760 block_map__,
4761 dim_metadata__);
4762 }
4763
4764 flatbuffers::Offset<SparsityParameters> CreateSparsityParameters(flatbuffers::FlatBufferBuilder &_fbb, const SparsityParametersT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
4765
4766 struct VariantSubTypeT : public flatbuffers::NativeTable {
4767 typedef VariantSubType TableType;
4768 std::vector<int32_t> shape{};
4769 tflite::TensorType type = tflite::TensorType_FLOAT32;
4770 bool has_rank = false;
4771 };
4772
4773 struct VariantSubType FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
4774 typedef VariantSubTypeT NativeTableType;
4775 typedef VariantSubTypeBuilder Builder;
4776 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
4777 VT_SHAPE = 4,
4778 VT_TYPE = 6,
4779 VT_HAS_RANK = 8
4780 };
4781 const flatbuffers::Vector<int32_t> *shape() const {
4782 return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_SHAPE);
4783 }
4784 flatbuffers::Vector<int32_t> *mutable_shape() {
4785 return GetPointer<flatbuffers::Vector<int32_t> *>(VT_SHAPE);
4786 }
4787 tflite::TensorType type() const {
4788 return static_cast<tflite::TensorType>(GetField<int8_t>(VT_TYPE, 0));
4789 }
4790 bool mutate_type(tflite::TensorType _type = static_cast<tflite::TensorType>(0)) {
4791 return SetField<int8_t>(VT_TYPE, static_cast<int8_t>(_type), 0);
4792 }
4793 bool has_rank() const {
4794 return GetField<uint8_t>(VT_HAS_RANK, 0) != 0;
4795 }
4796 bool mutate_has_rank(bool _has_rank = 0) {
4797 return SetField<uint8_t>(VT_HAS_RANK, static_cast<uint8_t>(_has_rank), 0);
4798 }
4799 bool Verify(flatbuffers::Verifier &verifier) const {
4800 return VerifyTableStart(verifier) &&
4801 VerifyOffset(verifier, VT_SHAPE) &&
4802 verifier.VerifyVector(shape()) &&
4803 VerifyField<int8_t>(verifier, VT_TYPE, 1) &&
4804 VerifyField<uint8_t>(verifier, VT_HAS_RANK, 1) &&
4805 verifier.EndTable();
4806 }
4807 VariantSubTypeT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
4808 void UnPackTo(VariantSubTypeT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
4809 static flatbuffers::Offset<VariantSubType> Pack(flatbuffers::FlatBufferBuilder &_fbb, const VariantSubTypeT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
4810 };
4811
4812 struct VariantSubTypeBuilder {
4813 typedef VariantSubType Table;
4814 flatbuffers::FlatBufferBuilder &fbb_;
4815 flatbuffers::uoffset_t start_;
4816 void add_shape(flatbuffers::Offset<flatbuffers::Vector<int32_t>> shape) {
4817 fbb_.AddOffset(VariantSubType::VT_SHAPE, shape);
4818 }
4819 void add_type(tflite::TensorType type) {
4820 fbb_.AddElement<int8_t>(VariantSubType::VT_TYPE, static_cast<int8_t>(type), 0);
4821 }
4822 void add_has_rank(bool has_rank) {
4823 fbb_.AddElement<uint8_t>(VariantSubType::VT_HAS_RANK, static_cast<uint8_t>(has_rank), 0);
4824 }
4825 explicit VariantSubTypeBuilder(flatbuffers::FlatBufferBuilder &_fbb)
4826 : fbb_(_fbb) {
4827 start_ = fbb_.StartTable();
4828 }
4829 flatbuffers::Offset<VariantSubType> Finish() {
4830 const auto end = fbb_.EndTable(start_);
4831 auto o = flatbuffers::Offset<VariantSubType>(end);
4832 return o;
4833 }
4834 };
4835
4836 inline flatbuffers::Offset<VariantSubType> CreateVariantSubType(
4837 flatbuffers::FlatBufferBuilder &_fbb,
4838 flatbuffers::Offset<flatbuffers::Vector<int32_t>> shape = 0,
4839 tflite::TensorType type = tflite::TensorType_FLOAT32,
4840 bool has_rank = false) {
4841 VariantSubTypeBuilder builder_(_fbb);
4842 builder_.add_shape(shape);
4843 builder_.add_has_rank(has_rank);
4844 builder_.add_type(type);
4845 return builder_.Finish();
4846 }
4847
4848 inline flatbuffers::Offset<VariantSubType> CreateVariantSubTypeDirect(
4849 flatbuffers::FlatBufferBuilder &_fbb,
4850 const std::vector<int32_t> *shape = nullptr,
4851 tflite::TensorType type = tflite::TensorType_FLOAT32,
4852 bool has_rank = false) {
4853 auto shape__ = shape ? _fbb.CreateVector<int32_t>(*shape) : 0;
4854 return tflite::CreateVariantSubType(
4855 _fbb,
4856 shape__,
4857 type,
4858 has_rank);
4859 }
4860
4861 flatbuffers::Offset<VariantSubType> CreateVariantSubType(flatbuffers::FlatBufferBuilder &_fbb, const VariantSubTypeT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
4862
4863 struct TensorT : public flatbuffers::NativeTable {
4864 typedef Tensor TableType;
4865 std::vector<int32_t> shape{};
4866 tflite::TensorType type = tflite::TensorType_FLOAT32;
4867 uint32_t buffer = 0;
4868 std::string name{};
4869 std::unique_ptr<tflite::QuantizationParametersT> quantization{};
4870 bool is_variable = false;
4871 std::unique_ptr<tflite::SparsityParametersT> sparsity{};
4872 std::vector<int32_t> shape_signature{};
4873 bool has_rank = false;
4874 std::vector<std::unique_ptr<tflite::VariantSubTypeT>> variant_tensors{};
4875 TensorT() = default;
4876 TensorT(const TensorT &o);
4877 TensorT(TensorT&&) FLATBUFFERS_NOEXCEPT = default;
4878 TensorT &operator=(TensorT o) FLATBUFFERS_NOEXCEPT;
4879 };
4880
4881 struct Tensor FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
4882 typedef TensorT NativeTableType;
4883 typedef TensorBuilder Builder;
4884 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
4885 VT_SHAPE = 4,
4886 VT_TYPE = 6,
4887 VT_BUFFER = 8,
4888 VT_NAME = 10,
4889 VT_QUANTIZATION = 12,
4890 VT_IS_VARIABLE = 14,
4891 VT_SPARSITY = 16,
4892 VT_SHAPE_SIGNATURE = 18,
4893 VT_HAS_RANK = 20,
4894 VT_VARIANT_TENSORS = 22
4895 };
4896 const flatbuffers::Vector<int32_t> *shape() const {
4897 return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_SHAPE);
4898 }
4899 flatbuffers::Vector<int32_t> *mutable_shape() {
4900 return GetPointer<flatbuffers::Vector<int32_t> *>(VT_SHAPE);
4901 }
4902 tflite::TensorType type() const {
4903 return static_cast<tflite::TensorType>(GetField<int8_t>(VT_TYPE, 0));
4904 }
4905 bool mutate_type(tflite::TensorType _type = static_cast<tflite::TensorType>(0)) {
4906 return SetField<int8_t>(VT_TYPE, static_cast<int8_t>(_type), 0);
4907 }
4908 uint32_t buffer() const {
4909 return GetField<uint32_t>(VT_BUFFER, 0);
4910 }
4911 bool mutate_buffer(uint32_t _buffer = 0) {
4912 return SetField<uint32_t>(VT_BUFFER, _buffer, 0);
4913 }
4914 const flatbuffers::String *name() const {
4915 return GetPointer<const flatbuffers::String *>(VT_NAME);
4916 }
4917 flatbuffers::String *mutable_name() {
4918 return GetPointer<flatbuffers::String *>(VT_NAME);
4919 }
4920 const tflite::QuantizationParameters *quantization() const {
4921 return GetPointer<const tflite::QuantizationParameters *>(VT_QUANTIZATION);
4922 }
4923 tflite::QuantizationParameters *mutable_quantization() {
4924 return GetPointer<tflite::QuantizationParameters *>(VT_QUANTIZATION);
4925 }
4926 bool is_variable() const {
4927 return GetField<uint8_t>(VT_IS_VARIABLE, 0) != 0;
4928 }
4929 bool mutate_is_variable(bool _is_variable = 0) {
4930 return SetField<uint8_t>(VT_IS_VARIABLE, static_cast<uint8_t>(_is_variable), 0);
4931 }
4932 const tflite::SparsityParameters *sparsity() const {
4933 return GetPointer<const tflite::SparsityParameters *>(VT_SPARSITY);
4934 }
4935 tflite::SparsityParameters *mutable_sparsity() {
4936 return GetPointer<tflite::SparsityParameters *>(VT_SPARSITY);
4937 }
4938 const flatbuffers::Vector<int32_t> *shape_signature() const {
4939 return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_SHAPE_SIGNATURE);
4940 }
4941 flatbuffers::Vector<int32_t> *mutable_shape_signature() {
4942 return GetPointer<flatbuffers::Vector<int32_t> *>(VT_SHAPE_SIGNATURE);
4943 }
4944 bool has_rank() const {
4945 return GetField<uint8_t>(VT_HAS_RANK, 0) != 0;
4946 }
4947 bool mutate_has_rank(bool _has_rank = 0) {
4948 return SetField<uint8_t>(VT_HAS_RANK, static_cast<uint8_t>(_has_rank), 0);
4949 }
4950 const flatbuffers::Vector<flatbuffers::Offset<tflite::VariantSubType>> *variant_tensors() const {
4951 return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::VariantSubType>> *>(VT_VARIANT_TENSORS);
4952 }
4953 flatbuffers::Vector<flatbuffers::Offset<tflite::VariantSubType>> *mutable_variant_tensors() {
4954 return GetPointer<flatbuffers::Vector<flatbuffers::Offset<tflite::VariantSubType>> *>(VT_VARIANT_TENSORS);
4955 }
4956 bool Verify(flatbuffers::Verifier &verifier) const {
4957 return VerifyTableStart(verifier) &&
4958 VerifyOffset(verifier, VT_SHAPE) &&
4959 verifier.VerifyVector(shape()) &&
4960 VerifyField<int8_t>(verifier, VT_TYPE, 1) &&
4961 VerifyField<uint32_t>(verifier, VT_BUFFER, 4) &&
4962 VerifyOffset(verifier, VT_NAME) &&
4963 verifier.VerifyString(name()) &&
4964 VerifyOffset(verifier, VT_QUANTIZATION) &&
4965 verifier.VerifyTable(quantization()) &&
4966 VerifyField<uint8_t>(verifier, VT_IS_VARIABLE, 1) &&
4967 VerifyOffset(verifier, VT_SPARSITY) &&
4968 verifier.VerifyTable(sparsity()) &&
4969 VerifyOffset(verifier, VT_SHAPE_SIGNATURE) &&
4970 verifier.VerifyVector(shape_signature()) &&
4971 VerifyField<uint8_t>(verifier, VT_HAS_RANK, 1) &&
4972 VerifyOffset(verifier, VT_VARIANT_TENSORS) &&
4973 verifier.VerifyVector(variant_tensors()) &&
4974 verifier.VerifyVectorOfTables(variant_tensors()) &&
4975 verifier.EndTable();
4976 }
4977 TensorT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
4978 void UnPackTo(TensorT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
4979 static flatbuffers::Offset<Tensor> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TensorT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
4980 };
4981
4982 struct TensorBuilder {
4983 typedef Tensor Table;
4984 flatbuffers::FlatBufferBuilder &fbb_;
4985 flatbuffers::uoffset_t start_;
4986 void add_shape(flatbuffers::Offset<flatbuffers::Vector<int32_t>> shape) {
4987 fbb_.AddOffset(Tensor::VT_SHAPE, shape);
4988 }
4989 void add_type(tflite::TensorType type) {
4990 fbb_.AddElement<int8_t>(Tensor::VT_TYPE, static_cast<int8_t>(type), 0);
4991 }
4992 void add_buffer(uint32_t buffer) {
4993 fbb_.AddElement<uint32_t>(Tensor::VT_BUFFER, buffer, 0);
4994 }
4995 void add_name(flatbuffers::Offset<flatbuffers::String> name) {
4996 fbb_.AddOffset(Tensor::VT_NAME, name);
4997 }
4998 void add_quantization(flatbuffers::Offset<tflite::QuantizationParameters> quantization) {
4999 fbb_.AddOffset(Tensor::VT_QUANTIZATION, quantization);
5000 }
5001 void add_is_variable(bool is_variable) {
5002 fbb_.AddElement<uint8_t>(Tensor::VT_IS_VARIABLE, static_cast<uint8_t>(is_variable), 0);
5003 }
5004 void add_sparsity(flatbuffers::Offset<tflite::SparsityParameters> sparsity) {
5005 fbb_.AddOffset(Tensor::VT_SPARSITY, sparsity);
5006 }
5007 void add_shape_signature(flatbuffers::Offset<flatbuffers::Vector<int32_t>> shape_signature) {
5008 fbb_.AddOffset(Tensor::VT_SHAPE_SIGNATURE, shape_signature);
5009 }
5010 void add_has_rank(bool has_rank) {
5011 fbb_.AddElement<uint8_t>(Tensor::VT_HAS_RANK, static_cast<uint8_t>(has_rank), 0);
5012 }
5013 void add_variant_tensors(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::VariantSubType>>> variant_tensors) {
5014 fbb_.AddOffset(Tensor::VT_VARIANT_TENSORS, variant_tensors);
5015 }
5016 explicit TensorBuilder(flatbuffers::FlatBufferBuilder &_fbb)
5017 : fbb_(_fbb) {
5018 start_ = fbb_.StartTable();
5019 }
5020 flatbuffers::Offset<Tensor> Finish() {
5021 const auto end = fbb_.EndTable(start_);
5022 auto o = flatbuffers::Offset<Tensor>(end);
5023 return o;
5024 }
5025 };
5026
5027 inline flatbuffers::Offset<Tensor> CreateTensor(
5028 flatbuffers::FlatBufferBuilder &_fbb,
5029 flatbuffers::Offset<flatbuffers::Vector<int32_t>> shape = 0,
5030 tflite::TensorType type = tflite::TensorType_FLOAT32,
5031 uint32_t buffer = 0,
5032 flatbuffers::Offset<flatbuffers::String> name = 0,
5033 flatbuffers::Offset<tflite::QuantizationParameters> quantization = 0,
5034 bool is_variable = false,
5035 flatbuffers::Offset<tflite::SparsityParameters> sparsity = 0,
5036 flatbuffers::Offset<flatbuffers::Vector<int32_t>> shape_signature = 0,
5037 bool has_rank = false,
5038 flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::VariantSubType>>> variant_tensors = 0) {
5039 TensorBuilder builder_(_fbb);
5040 builder_.add_variant_tensors(variant_tensors);
5041 builder_.add_shape_signature(shape_signature);
5042 builder_.add_sparsity(sparsity);
5043 builder_.add_quantization(quantization);
5044 builder_.add_name(name);
5045 builder_.add_buffer(buffer);
5046 builder_.add_shape(shape);
5047 builder_.add_has_rank(has_rank);
5048 builder_.add_is_variable(is_variable);
5049 builder_.add_type(type);
5050 return builder_.Finish();
5051 }
5052
5053 inline flatbuffers::Offset<Tensor> CreateTensorDirect(
5054 flatbuffers::FlatBufferBuilder &_fbb,
5055 const std::vector<int32_t> *shape = nullptr,
5056 tflite::TensorType type = tflite::TensorType_FLOAT32,
5057 uint32_t buffer = 0,
5058 const char *name = nullptr,
5059 flatbuffers::Offset<tflite::QuantizationParameters> quantization = 0,
5060 bool is_variable = false,
5061 flatbuffers::Offset<tflite::SparsityParameters> sparsity = 0,
5062 const std::vector<int32_t> *shape_signature = nullptr,
5063 bool has_rank = false,
5064 const std::vector<flatbuffers::Offset<tflite::VariantSubType>> *variant_tensors = nullptr) {
5065 auto shape__ = shape ? _fbb.CreateVector<int32_t>(*shape) : 0;
5066 auto name__ = name ? _fbb.CreateString(name) : 0;
5067 auto shape_signature__ = shape_signature ? _fbb.CreateVector<int32_t>(*shape_signature) : 0;
5068 auto variant_tensors__ = variant_tensors ? _fbb.CreateVector<flatbuffers::Offset<tflite::VariantSubType>>(*variant_tensors) : 0;
5069 return tflite::CreateTensor(
5070 _fbb,
5071 shape__,
5072 type,
5073 buffer,
5074 name__,
5075 quantization,
5076 is_variable,
5077 sparsity,
5078 shape_signature__,
5079 has_rank,
5080 variant_tensors__);
5081 }
5082
5083 flatbuffers::Offset<Tensor> CreateTensor(flatbuffers::FlatBufferBuilder &_fbb, const TensorT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
5084
5085 struct Conv2DOptionsT : public flatbuffers::NativeTable {
5086 typedef Conv2DOptions TableType;
5087 tflite::Padding padding = tflite::Padding_SAME;
5088 int32_t stride_w = 0;
5089 int32_t stride_h = 0;
5090 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
5091 int32_t dilation_w_factor = 1;
5092 int32_t dilation_h_factor = 1;
5093 };
5094
5095 struct Conv2DOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
5096 typedef Conv2DOptionsT NativeTableType;
5097 typedef Conv2DOptionsBuilder Builder;
5098 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
5099 VT_PADDING = 4,
5100 VT_STRIDE_W = 6,
5101 VT_STRIDE_H = 8,
5102 VT_FUSED_ACTIVATION_FUNCTION = 10,
5103 VT_DILATION_W_FACTOR = 12,
5104 VT_DILATION_H_FACTOR = 14
5105 };
5106 tflite::Padding padding() const {
5107 return static_cast<tflite::Padding>(GetField<int8_t>(VT_PADDING, 0));
5108 }
5109 bool mutate_padding(tflite::Padding _padding = static_cast<tflite::Padding>(0)) {
5110 return SetField<int8_t>(VT_PADDING, static_cast<int8_t>(_padding), 0);
5111 }
5112 int32_t stride_w() const {
5113 return GetField<int32_t>(VT_STRIDE_W, 0);
5114 }
5115 bool mutate_stride_w(int32_t _stride_w = 0) {
5116 return SetField<int32_t>(VT_STRIDE_W, _stride_w, 0);
5117 }
5118 int32_t stride_h() const {
5119 return GetField<int32_t>(VT_STRIDE_H, 0);
5120 }
5121 bool mutate_stride_h(int32_t _stride_h = 0) {
5122 return SetField<int32_t>(VT_STRIDE_H, _stride_h, 0);
5123 }
5124 tflite::ActivationFunctionType fused_activation_function() const {
5125 return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
5126 }
5127 bool mutate_fused_activation_function(tflite::ActivationFunctionType _fused_activation_function = static_cast<tflite::ActivationFunctionType>(0)) {
5128 return SetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(_fused_activation_function), 0);
5129 }
5130 int32_t dilation_w_factor() const {
5131 return GetField<int32_t>(VT_DILATION_W_FACTOR, 1);
5132 }
5133 bool mutate_dilation_w_factor(int32_t _dilation_w_factor = 1) {
5134 return SetField<int32_t>(VT_DILATION_W_FACTOR, _dilation_w_factor, 1);
5135 }
5136 int32_t dilation_h_factor() const {
5137 return GetField<int32_t>(VT_DILATION_H_FACTOR, 1);
5138 }
5139 bool mutate_dilation_h_factor(int32_t _dilation_h_factor = 1) {
5140 return SetField<int32_t>(VT_DILATION_H_FACTOR, _dilation_h_factor, 1);
5141 }
5142 bool Verify(flatbuffers::Verifier &verifier) const {
5143 return VerifyTableStart(verifier) &&
5144 VerifyField<int8_t>(verifier, VT_PADDING, 1) &&
5145 VerifyField<int32_t>(verifier, VT_STRIDE_W, 4) &&
5146 VerifyField<int32_t>(verifier, VT_STRIDE_H, 4) &&
5147 VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
5148 VerifyField<int32_t>(verifier, VT_DILATION_W_FACTOR, 4) &&
5149 VerifyField<int32_t>(verifier, VT_DILATION_H_FACTOR, 4) &&
5150 verifier.EndTable();
5151 }
5152 Conv2DOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
5153 void UnPackTo(Conv2DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
5154 static flatbuffers::Offset<Conv2DOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Conv2DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
5155 };
5156
5157 struct Conv2DOptionsBuilder {
5158 typedef Conv2DOptions Table;
5159 flatbuffers::FlatBufferBuilder &fbb_;
5160 flatbuffers::uoffset_t start_;
5161 void add_padding(tflite::Padding padding) {
5162 fbb_.AddElement<int8_t>(Conv2DOptions::VT_PADDING, static_cast<int8_t>(padding), 0);
5163 }
5164 void add_stride_w(int32_t stride_w) {
5165 fbb_.AddElement<int32_t>(Conv2DOptions::VT_STRIDE_W, stride_w, 0);
5166 }
5167 void add_stride_h(int32_t stride_h) {
5168 fbb_.AddElement<int32_t>(Conv2DOptions::VT_STRIDE_H, stride_h, 0);
5169 }
5170 void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
5171 fbb_.AddElement<int8_t>(Conv2DOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
5172 }
5173 void add_dilation_w_factor(int32_t dilation_w_factor) {
5174 fbb_.AddElement<int32_t>(Conv2DOptions::VT_DILATION_W_FACTOR, dilation_w_factor, 1);
5175 }
5176 void add_dilation_h_factor(int32_t dilation_h_factor) {
5177 fbb_.AddElement<int32_t>(Conv2DOptions::VT_DILATION_H_FACTOR, dilation_h_factor, 1);
5178 }
5179 explicit Conv2DOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
5180 : fbb_(_fbb) {
5181 start_ = fbb_.StartTable();
5182 }
5183 flatbuffers::Offset<Conv2DOptions> Finish() {
5184 const auto end = fbb_.EndTable(start_);
5185 auto o = flatbuffers::Offset<Conv2DOptions>(end);
5186 return o;
5187 }
5188 };
5189
5190 inline flatbuffers::Offset<Conv2DOptions> CreateConv2DOptions(
5191 flatbuffers::FlatBufferBuilder &_fbb,
5192 tflite::Padding padding = tflite::Padding_SAME,
5193 int32_t stride_w = 0,
5194 int32_t stride_h = 0,
5195 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
5196 int32_t dilation_w_factor = 1,
5197 int32_t dilation_h_factor = 1) {
5198 Conv2DOptionsBuilder builder_(_fbb);
5199 builder_.add_dilation_h_factor(dilation_h_factor);
5200 builder_.add_dilation_w_factor(dilation_w_factor);
5201 builder_.add_stride_h(stride_h);
5202 builder_.add_stride_w(stride_w);
5203 builder_.add_fused_activation_function(fused_activation_function);
5204 builder_.add_padding(padding);
5205 return builder_.Finish();
5206 }
5207
5208 flatbuffers::Offset<Conv2DOptions> CreateConv2DOptions(flatbuffers::FlatBufferBuilder &_fbb, const Conv2DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
5209
5210 struct Conv3DOptionsT : public flatbuffers::NativeTable {
5211 typedef Conv3DOptions TableType;
5212 tflite::Padding padding = tflite::Padding_SAME;
5213 int32_t stride_d = 0;
5214 int32_t stride_w = 0;
5215 int32_t stride_h = 0;
5216 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
5217 int32_t dilation_d_factor = 1;
5218 int32_t dilation_w_factor = 1;
5219 int32_t dilation_h_factor = 1;
5220 };
5221
5222 struct Conv3DOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
5223 typedef Conv3DOptionsT NativeTableType;
5224 typedef Conv3DOptionsBuilder Builder;
5225 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
5226 VT_PADDING = 4,
5227 VT_STRIDE_D = 6,
5228 VT_STRIDE_W = 8,
5229 VT_STRIDE_H = 10,
5230 VT_FUSED_ACTIVATION_FUNCTION = 12,
5231 VT_DILATION_D_FACTOR = 14,
5232 VT_DILATION_W_FACTOR = 16,
5233 VT_DILATION_H_FACTOR = 18
5234 };
5235 tflite::Padding padding() const {
5236 return static_cast<tflite::Padding>(GetField<int8_t>(VT_PADDING, 0));
5237 }
5238 bool mutate_padding(tflite::Padding _padding = static_cast<tflite::Padding>(0)) {
5239 return SetField<int8_t>(VT_PADDING, static_cast<int8_t>(_padding), 0);
5240 }
5241 int32_t stride_d() const {
5242 return GetField<int32_t>(VT_STRIDE_D, 0);
5243 }
5244 bool mutate_stride_d(int32_t _stride_d = 0) {
5245 return SetField<int32_t>(VT_STRIDE_D, _stride_d, 0);
5246 }
5247 int32_t stride_w() const {
5248 return GetField<int32_t>(VT_STRIDE_W, 0);
5249 }
5250 bool mutate_stride_w(int32_t _stride_w = 0) {
5251 return SetField<int32_t>(VT_STRIDE_W, _stride_w, 0);
5252 }
5253 int32_t stride_h() const {
5254 return GetField<int32_t>(VT_STRIDE_H, 0);
5255 }
5256 bool mutate_stride_h(int32_t _stride_h = 0) {
5257 return SetField<int32_t>(VT_STRIDE_H, _stride_h, 0);
5258 }
5259 tflite::ActivationFunctionType fused_activation_function() const {
5260 return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
5261 }
5262 bool mutate_fused_activation_function(tflite::ActivationFunctionType _fused_activation_function = static_cast<tflite::ActivationFunctionType>(0)) {
5263 return SetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(_fused_activation_function), 0);
5264 }
5265 int32_t dilation_d_factor() const {
5266 return GetField<int32_t>(VT_DILATION_D_FACTOR, 1);
5267 }
5268 bool mutate_dilation_d_factor(int32_t _dilation_d_factor = 1) {
5269 return SetField<int32_t>(VT_DILATION_D_FACTOR, _dilation_d_factor, 1);
5270 }
5271 int32_t dilation_w_factor() const {
5272 return GetField<int32_t>(VT_DILATION_W_FACTOR, 1);
5273 }
5274 bool mutate_dilation_w_factor(int32_t _dilation_w_factor = 1) {
5275 return SetField<int32_t>(VT_DILATION_W_FACTOR, _dilation_w_factor, 1);
5276 }
5277 int32_t dilation_h_factor() const {
5278 return GetField<int32_t>(VT_DILATION_H_FACTOR, 1);
5279 }
5280 bool mutate_dilation_h_factor(int32_t _dilation_h_factor = 1) {
5281 return SetField<int32_t>(VT_DILATION_H_FACTOR, _dilation_h_factor, 1);
5282 }
5283 bool Verify(flatbuffers::Verifier &verifier) const {
5284 return VerifyTableStart(verifier) &&
5285 VerifyField<int8_t>(verifier, VT_PADDING, 1) &&
5286 VerifyField<int32_t>(verifier, VT_STRIDE_D, 4) &&
5287 VerifyField<int32_t>(verifier, VT_STRIDE_W, 4) &&
5288 VerifyField<int32_t>(verifier, VT_STRIDE_H, 4) &&
5289 VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
5290 VerifyField<int32_t>(verifier, VT_DILATION_D_FACTOR, 4) &&
5291 VerifyField<int32_t>(verifier, VT_DILATION_W_FACTOR, 4) &&
5292 VerifyField<int32_t>(verifier, VT_DILATION_H_FACTOR, 4) &&
5293 verifier.EndTable();
5294 }
5295 Conv3DOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
5296 void UnPackTo(Conv3DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
5297 static flatbuffers::Offset<Conv3DOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Conv3DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
5298 };
5299
5300 struct Conv3DOptionsBuilder {
5301 typedef Conv3DOptions Table;
5302 flatbuffers::FlatBufferBuilder &fbb_;
5303 flatbuffers::uoffset_t start_;
5304 void add_padding(tflite::Padding padding) {
5305 fbb_.AddElement<int8_t>(Conv3DOptions::VT_PADDING, static_cast<int8_t>(padding), 0);
5306 }
5307 void add_stride_d(int32_t stride_d) {
5308 fbb_.AddElement<int32_t>(Conv3DOptions::VT_STRIDE_D, stride_d, 0);
5309 }
5310 void add_stride_w(int32_t stride_w) {
5311 fbb_.AddElement<int32_t>(Conv3DOptions::VT_STRIDE_W, stride_w, 0);
5312 }
5313 void add_stride_h(int32_t stride_h) {
5314 fbb_.AddElement<int32_t>(Conv3DOptions::VT_STRIDE_H, stride_h, 0);
5315 }
5316 void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
5317 fbb_.AddElement<int8_t>(Conv3DOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
5318 }
5319 void add_dilation_d_factor(int32_t dilation_d_factor) {
5320 fbb_.AddElement<int32_t>(Conv3DOptions::VT_DILATION_D_FACTOR, dilation_d_factor, 1);
5321 }
5322 void add_dilation_w_factor(int32_t dilation_w_factor) {
5323 fbb_.AddElement<int32_t>(Conv3DOptions::VT_DILATION_W_FACTOR, dilation_w_factor, 1);
5324 }
5325 void add_dilation_h_factor(int32_t dilation_h_factor) {
5326 fbb_.AddElement<int32_t>(Conv3DOptions::VT_DILATION_H_FACTOR, dilation_h_factor, 1);
5327 }
5328 explicit Conv3DOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
5329 : fbb_(_fbb) {
5330 start_ = fbb_.StartTable();
5331 }
5332 flatbuffers::Offset<Conv3DOptions> Finish() {
5333 const auto end = fbb_.EndTable(start_);
5334 auto o = flatbuffers::Offset<Conv3DOptions>(end);
5335 return o;
5336 }
5337 };
5338
5339 inline flatbuffers::Offset<Conv3DOptions> CreateConv3DOptions(
5340 flatbuffers::FlatBufferBuilder &_fbb,
5341 tflite::Padding padding = tflite::Padding_SAME,
5342 int32_t stride_d = 0,
5343 int32_t stride_w = 0,
5344 int32_t stride_h = 0,
5345 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
5346 int32_t dilation_d_factor = 1,
5347 int32_t dilation_w_factor = 1,
5348 int32_t dilation_h_factor = 1) {
5349 Conv3DOptionsBuilder builder_(_fbb);
5350 builder_.add_dilation_h_factor(dilation_h_factor);
5351 builder_.add_dilation_w_factor(dilation_w_factor);
5352 builder_.add_dilation_d_factor(dilation_d_factor);
5353 builder_.add_stride_h(stride_h);
5354 builder_.add_stride_w(stride_w);
5355 builder_.add_stride_d(stride_d);
5356 builder_.add_fused_activation_function(fused_activation_function);
5357 builder_.add_padding(padding);
5358 return builder_.Finish();
5359 }
5360
5361 flatbuffers::Offset<Conv3DOptions> CreateConv3DOptions(flatbuffers::FlatBufferBuilder &_fbb, const Conv3DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
5362
5363 struct Pool2DOptionsT : public flatbuffers::NativeTable {
5364 typedef Pool2DOptions TableType;
5365 tflite::Padding padding = tflite::Padding_SAME;
5366 int32_t stride_w = 0;
5367 int32_t stride_h = 0;
5368 int32_t filter_width = 0;
5369 int32_t filter_height = 0;
5370 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
5371 };
5372
5373 struct Pool2DOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
5374 typedef Pool2DOptionsT NativeTableType;
5375 typedef Pool2DOptionsBuilder Builder;
5376 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
5377 VT_PADDING = 4,
5378 VT_STRIDE_W = 6,
5379 VT_STRIDE_H = 8,
5380 VT_FILTER_WIDTH = 10,
5381 VT_FILTER_HEIGHT = 12,
5382 VT_FUSED_ACTIVATION_FUNCTION = 14
5383 };
5384 tflite::Padding padding() const {
5385 return static_cast<tflite::Padding>(GetField<int8_t>(VT_PADDING, 0));
5386 }
5387 bool mutate_padding(tflite::Padding _padding = static_cast<tflite::Padding>(0)) {
5388 return SetField<int8_t>(VT_PADDING, static_cast<int8_t>(_padding), 0);
5389 }
5390 int32_t stride_w() const {
5391 return GetField<int32_t>(VT_STRIDE_W, 0);
5392 }
5393 bool mutate_stride_w(int32_t _stride_w = 0) {
5394 return SetField<int32_t>(VT_STRIDE_W, _stride_w, 0);
5395 }
5396 int32_t stride_h() const {
5397 return GetField<int32_t>(VT_STRIDE_H, 0);
5398 }
5399 bool mutate_stride_h(int32_t _stride_h = 0) {
5400 return SetField<int32_t>(VT_STRIDE_H, _stride_h, 0);
5401 }
5402 int32_t filter_width() const {
5403 return GetField<int32_t>(VT_FILTER_WIDTH, 0);
5404 }
5405 bool mutate_filter_width(int32_t _filter_width = 0) {
5406 return SetField<int32_t>(VT_FILTER_WIDTH, _filter_width, 0);
5407 }
5408 int32_t filter_height() const {
5409 return GetField<int32_t>(VT_FILTER_HEIGHT, 0);
5410 }
5411 bool mutate_filter_height(int32_t _filter_height = 0) {
5412 return SetField<int32_t>(VT_FILTER_HEIGHT, _filter_height, 0);
5413 }
5414 tflite::ActivationFunctionType fused_activation_function() const {
5415 return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
5416 }
5417 bool mutate_fused_activation_function(tflite::ActivationFunctionType _fused_activation_function = static_cast<tflite::ActivationFunctionType>(0)) {
5418 return SetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(_fused_activation_function), 0);
5419 }
5420 bool Verify(flatbuffers::Verifier &verifier) const {
5421 return VerifyTableStart(verifier) &&
5422 VerifyField<int8_t>(verifier, VT_PADDING, 1) &&
5423 VerifyField<int32_t>(verifier, VT_STRIDE_W, 4) &&
5424 VerifyField<int32_t>(verifier, VT_STRIDE_H, 4) &&
5425 VerifyField<int32_t>(verifier, VT_FILTER_WIDTH, 4) &&
5426 VerifyField<int32_t>(verifier, VT_FILTER_HEIGHT, 4) &&
5427 VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
5428 verifier.EndTable();
5429 }
5430 Pool2DOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
5431 void UnPackTo(Pool2DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
5432 static flatbuffers::Offset<Pool2DOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Pool2DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
5433 };
5434
5435 struct Pool2DOptionsBuilder {
5436 typedef Pool2DOptions Table;
5437 flatbuffers::FlatBufferBuilder &fbb_;
5438 flatbuffers::uoffset_t start_;
5439 void add_padding(tflite::Padding padding) {
5440 fbb_.AddElement<int8_t>(Pool2DOptions::VT_PADDING, static_cast<int8_t>(padding), 0);
5441 }
5442 void add_stride_w(int32_t stride_w) {
5443 fbb_.AddElement<int32_t>(Pool2DOptions::VT_STRIDE_W, stride_w, 0);
5444 }
5445 void add_stride_h(int32_t stride_h) {
5446 fbb_.AddElement<int32_t>(Pool2DOptions::VT_STRIDE_H, stride_h, 0);
5447 }
5448 void add_filter_width(int32_t filter_width) {
5449 fbb_.AddElement<int32_t>(Pool2DOptions::VT_FILTER_WIDTH, filter_width, 0);
5450 }
5451 void add_filter_height(int32_t filter_height) {
5452 fbb_.AddElement<int32_t>(Pool2DOptions::VT_FILTER_HEIGHT, filter_height, 0);
5453 }
5454 void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
5455 fbb_.AddElement<int8_t>(Pool2DOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
5456 }
5457 explicit Pool2DOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
5458 : fbb_(_fbb) {
5459 start_ = fbb_.StartTable();
5460 }
5461 flatbuffers::Offset<Pool2DOptions> Finish() {
5462 const auto end = fbb_.EndTable(start_);
5463 auto o = flatbuffers::Offset<Pool2DOptions>(end);
5464 return o;
5465 }
5466 };
5467
5468 inline flatbuffers::Offset<Pool2DOptions> CreatePool2DOptions(
5469 flatbuffers::FlatBufferBuilder &_fbb,
5470 tflite::Padding padding = tflite::Padding_SAME,
5471 int32_t stride_w = 0,
5472 int32_t stride_h = 0,
5473 int32_t filter_width = 0,
5474 int32_t filter_height = 0,
5475 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE) {
5476 Pool2DOptionsBuilder builder_(_fbb);
5477 builder_.add_filter_height(filter_height);
5478 builder_.add_filter_width(filter_width);
5479 builder_.add_stride_h(stride_h);
5480 builder_.add_stride_w(stride_w);
5481 builder_.add_fused_activation_function(fused_activation_function);
5482 builder_.add_padding(padding);
5483 return builder_.Finish();
5484 }
5485
5486 flatbuffers::Offset<Pool2DOptions> CreatePool2DOptions(flatbuffers::FlatBufferBuilder &_fbb, const Pool2DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
5487
5488 struct DepthwiseConv2DOptionsT : public flatbuffers::NativeTable {
5489 typedef DepthwiseConv2DOptions TableType;
5490 tflite::Padding padding = tflite::Padding_SAME;
5491 int32_t stride_w = 0;
5492 int32_t stride_h = 0;
5493 int32_t depth_multiplier = 0;
5494 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
5495 int32_t dilation_w_factor = 1;
5496 int32_t dilation_h_factor = 1;
5497 };
5498
5499 struct DepthwiseConv2DOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
5500 typedef DepthwiseConv2DOptionsT NativeTableType;
5501 typedef DepthwiseConv2DOptionsBuilder Builder;
5502 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
5503 VT_PADDING = 4,
5504 VT_STRIDE_W = 6,
5505 VT_STRIDE_H = 8,
5506 VT_DEPTH_MULTIPLIER = 10,
5507 VT_FUSED_ACTIVATION_FUNCTION = 12,
5508 VT_DILATION_W_FACTOR = 14,
5509 VT_DILATION_H_FACTOR = 16
5510 };
5511 tflite::Padding padding() const {
5512 return static_cast<tflite::Padding>(GetField<int8_t>(VT_PADDING, 0));
5513 }
5514 bool mutate_padding(tflite::Padding _padding = static_cast<tflite::Padding>(0)) {
5515 return SetField<int8_t>(VT_PADDING, static_cast<int8_t>(_padding), 0);
5516 }
5517 int32_t stride_w() const {
5518 return GetField<int32_t>(VT_STRIDE_W, 0);
5519 }
5520 bool mutate_stride_w(int32_t _stride_w = 0) {
5521 return SetField<int32_t>(VT_STRIDE_W, _stride_w, 0);
5522 }
5523 int32_t stride_h() const {
5524 return GetField<int32_t>(VT_STRIDE_H, 0);
5525 }
5526 bool mutate_stride_h(int32_t _stride_h = 0) {
5527 return SetField<int32_t>(VT_STRIDE_H, _stride_h, 0);
5528 }
5529 int32_t depth_multiplier() const {
5530 return GetField<int32_t>(VT_DEPTH_MULTIPLIER, 0);
5531 }
5532 bool mutate_depth_multiplier(int32_t _depth_multiplier = 0) {
5533 return SetField<int32_t>(VT_DEPTH_MULTIPLIER, _depth_multiplier, 0);
5534 }
5535 tflite::ActivationFunctionType fused_activation_function() const {
5536 return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
5537 }
5538 bool mutate_fused_activation_function(tflite::ActivationFunctionType _fused_activation_function = static_cast<tflite::ActivationFunctionType>(0)) {
5539 return SetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(_fused_activation_function), 0);
5540 }
5541 int32_t dilation_w_factor() const {
5542 return GetField<int32_t>(VT_DILATION_W_FACTOR, 1);
5543 }
5544 bool mutate_dilation_w_factor(int32_t _dilation_w_factor = 1) {
5545 return SetField<int32_t>(VT_DILATION_W_FACTOR, _dilation_w_factor, 1);
5546 }
5547 int32_t dilation_h_factor() const {
5548 return GetField<int32_t>(VT_DILATION_H_FACTOR, 1);
5549 }
5550 bool mutate_dilation_h_factor(int32_t _dilation_h_factor = 1) {
5551 return SetField<int32_t>(VT_DILATION_H_FACTOR, _dilation_h_factor, 1);
5552 }
5553 bool Verify(flatbuffers::Verifier &verifier) const {
5554 return VerifyTableStart(verifier) &&
5555 VerifyField<int8_t>(verifier, VT_PADDING, 1) &&
5556 VerifyField<int32_t>(verifier, VT_STRIDE_W, 4) &&
5557 VerifyField<int32_t>(verifier, VT_STRIDE_H, 4) &&
5558 VerifyField<int32_t>(verifier, VT_DEPTH_MULTIPLIER, 4) &&
5559 VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
5560 VerifyField<int32_t>(verifier, VT_DILATION_W_FACTOR, 4) &&
5561 VerifyField<int32_t>(verifier, VT_DILATION_H_FACTOR, 4) &&
5562 verifier.EndTable();
5563 }
5564 DepthwiseConv2DOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
5565 void UnPackTo(DepthwiseConv2DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
5566 static flatbuffers::Offset<DepthwiseConv2DOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DepthwiseConv2DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
5567 };
5568
5569 struct DepthwiseConv2DOptionsBuilder {
5570 typedef DepthwiseConv2DOptions Table;
5571 flatbuffers::FlatBufferBuilder &fbb_;
5572 flatbuffers::uoffset_t start_;
5573 void add_padding(tflite::Padding padding) {
5574 fbb_.AddElement<int8_t>(DepthwiseConv2DOptions::VT_PADDING, static_cast<int8_t>(padding), 0);
5575 }
5576 void add_stride_w(int32_t stride_w) {
5577 fbb_.AddElement<int32_t>(DepthwiseConv2DOptions::VT_STRIDE_W, stride_w, 0);
5578 }
5579 void add_stride_h(int32_t stride_h) {
5580 fbb_.AddElement<int32_t>(DepthwiseConv2DOptions::VT_STRIDE_H, stride_h, 0);
5581 }
5582 void add_depth_multiplier(int32_t depth_multiplier) {
5583 fbb_.AddElement<int32_t>(DepthwiseConv2DOptions::VT_DEPTH_MULTIPLIER, depth_multiplier, 0);
5584 }
5585 void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
5586 fbb_.AddElement<int8_t>(DepthwiseConv2DOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
5587 }
5588 void add_dilation_w_factor(int32_t dilation_w_factor) {
5589 fbb_.AddElement<int32_t>(DepthwiseConv2DOptions::VT_DILATION_W_FACTOR, dilation_w_factor, 1);
5590 }
5591 void add_dilation_h_factor(int32_t dilation_h_factor) {
5592 fbb_.AddElement<int32_t>(DepthwiseConv2DOptions::VT_DILATION_H_FACTOR, dilation_h_factor, 1);
5593 }
5594 explicit DepthwiseConv2DOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
5595 : fbb_(_fbb) {
5596 start_ = fbb_.StartTable();
5597 }
5598 flatbuffers::Offset<DepthwiseConv2DOptions> Finish() {
5599 const auto end = fbb_.EndTable(start_);
5600 auto o = flatbuffers::Offset<DepthwiseConv2DOptions>(end);
5601 return o;
5602 }
5603 };
5604
5605 inline flatbuffers::Offset<DepthwiseConv2DOptions> CreateDepthwiseConv2DOptions(
5606 flatbuffers::FlatBufferBuilder &_fbb,
5607 tflite::Padding padding = tflite::Padding_SAME,
5608 int32_t stride_w = 0,
5609 int32_t stride_h = 0,
5610 int32_t depth_multiplier = 0,
5611 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
5612 int32_t dilation_w_factor = 1,
5613 int32_t dilation_h_factor = 1) {
5614 DepthwiseConv2DOptionsBuilder builder_(_fbb);
5615 builder_.add_dilation_h_factor(dilation_h_factor);
5616 builder_.add_dilation_w_factor(dilation_w_factor);
5617 builder_.add_depth_multiplier(depth_multiplier);
5618 builder_.add_stride_h(stride_h);
5619 builder_.add_stride_w(stride_w);
5620 builder_.add_fused_activation_function(fused_activation_function);
5621 builder_.add_padding(padding);
5622 return builder_.Finish();
5623 }
5624
5625 flatbuffers::Offset<DepthwiseConv2DOptions> CreateDepthwiseConv2DOptions(flatbuffers::FlatBufferBuilder &_fbb, const DepthwiseConv2DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
5626
5627 struct ConcatEmbeddingsOptionsT : public flatbuffers::NativeTable {
5628 typedef ConcatEmbeddingsOptions TableType;
5629 int32_t num_channels = 0;
5630 std::vector<int32_t> num_columns_per_channel{};
5631 std::vector<int32_t> embedding_dim_per_channel{};
5632 };
5633
5634 struct ConcatEmbeddingsOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
5635 typedef ConcatEmbeddingsOptionsT NativeTableType;
5636 typedef ConcatEmbeddingsOptionsBuilder Builder;
5637 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
5638 VT_NUM_CHANNELS = 4,
5639 VT_NUM_COLUMNS_PER_CHANNEL = 6,
5640 VT_EMBEDDING_DIM_PER_CHANNEL = 8
5641 };
5642 int32_t num_channels() const {
5643 return GetField<int32_t>(VT_NUM_CHANNELS, 0);
5644 }
5645 bool mutate_num_channels(int32_t _num_channels = 0) {
5646 return SetField<int32_t>(VT_NUM_CHANNELS, _num_channels, 0);
5647 }
5648 const flatbuffers::Vector<int32_t> *num_columns_per_channel() const {
5649 return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_NUM_COLUMNS_PER_CHANNEL);
5650 }
5651 flatbuffers::Vector<int32_t> *mutable_num_columns_per_channel() {
5652 return GetPointer<flatbuffers::Vector<int32_t> *>(VT_NUM_COLUMNS_PER_CHANNEL);
5653 }
5654 const flatbuffers::Vector<int32_t> *embedding_dim_per_channel() const {
5655 return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_EMBEDDING_DIM_PER_CHANNEL);
5656 }
5657 flatbuffers::Vector<int32_t> *mutable_embedding_dim_per_channel() {
5658 return GetPointer<flatbuffers::Vector<int32_t> *>(VT_EMBEDDING_DIM_PER_CHANNEL);
5659 }
5660 bool Verify(flatbuffers::Verifier &verifier) const {
5661 return VerifyTableStart(verifier) &&
5662 VerifyField<int32_t>(verifier, VT_NUM_CHANNELS, 4) &&
5663 VerifyOffset(verifier, VT_NUM_COLUMNS_PER_CHANNEL) &&
5664 verifier.VerifyVector(num_columns_per_channel()) &&
5665 VerifyOffset(verifier, VT_EMBEDDING_DIM_PER_CHANNEL) &&
5666 verifier.VerifyVector(embedding_dim_per_channel()) &&
5667 verifier.EndTable();
5668 }
5669 ConcatEmbeddingsOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
5670 void UnPackTo(ConcatEmbeddingsOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
5671 static flatbuffers::Offset<ConcatEmbeddingsOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ConcatEmbeddingsOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
5672 };
5673
5674 struct ConcatEmbeddingsOptionsBuilder {
5675 typedef ConcatEmbeddingsOptions Table;
5676 flatbuffers::FlatBufferBuilder &fbb_;
5677 flatbuffers::uoffset_t start_;
5678 void add_num_channels(int32_t num_channels) {
5679 fbb_.AddElement<int32_t>(ConcatEmbeddingsOptions::VT_NUM_CHANNELS, num_channels, 0);
5680 }
5681 void add_num_columns_per_channel(flatbuffers::Offset<flatbuffers::Vector<int32_t>> num_columns_per_channel) {
5682 fbb_.AddOffset(ConcatEmbeddingsOptions::VT_NUM_COLUMNS_PER_CHANNEL, num_columns_per_channel);
5683 }
5684 void add_embedding_dim_per_channel(flatbuffers::Offset<flatbuffers::Vector<int32_t>> embedding_dim_per_channel) {
5685 fbb_.AddOffset(ConcatEmbeddingsOptions::VT_EMBEDDING_DIM_PER_CHANNEL, embedding_dim_per_channel);
5686 }
5687 explicit ConcatEmbeddingsOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
5688 : fbb_(_fbb) {
5689 start_ = fbb_.StartTable();
5690 }
5691 flatbuffers::Offset<ConcatEmbeddingsOptions> Finish() {
5692 const auto end = fbb_.EndTable(start_);
5693 auto o = flatbuffers::Offset<ConcatEmbeddingsOptions>(end);
5694 return o;
5695 }
5696 };
5697
5698 inline flatbuffers::Offset<ConcatEmbeddingsOptions> CreateConcatEmbeddingsOptions(
5699 flatbuffers::FlatBufferBuilder &_fbb,
5700 int32_t num_channels = 0,
5701 flatbuffers::Offset<flatbuffers::Vector<int32_t>> num_columns_per_channel = 0,
5702 flatbuffers::Offset<flatbuffers::Vector<int32_t>> embedding_dim_per_channel = 0) {
5703 ConcatEmbeddingsOptionsBuilder builder_(_fbb);
5704 builder_.add_embedding_dim_per_channel(embedding_dim_per_channel);
5705 builder_.add_num_columns_per_channel(num_columns_per_channel);
5706 builder_.add_num_channels(num_channels);
5707 return builder_.Finish();
5708 }
5709
5710 inline flatbuffers::Offset<ConcatEmbeddingsOptions> CreateConcatEmbeddingsOptionsDirect(
5711 flatbuffers::FlatBufferBuilder &_fbb,
5712 int32_t num_channels = 0,
5713 const std::vector<int32_t> *num_columns_per_channel = nullptr,
5714 const std::vector<int32_t> *embedding_dim_per_channel = nullptr) {
5715 auto num_columns_per_channel__ = num_columns_per_channel ? _fbb.CreateVector<int32_t>(*num_columns_per_channel) : 0;
5716 auto embedding_dim_per_channel__ = embedding_dim_per_channel ? _fbb.CreateVector<int32_t>(*embedding_dim_per_channel) : 0;
5717 return tflite::CreateConcatEmbeddingsOptions(
5718 _fbb,
5719 num_channels,
5720 num_columns_per_channel__,
5721 embedding_dim_per_channel__);
5722 }
5723
5724 flatbuffers::Offset<ConcatEmbeddingsOptions> CreateConcatEmbeddingsOptions(flatbuffers::FlatBufferBuilder &_fbb, const ConcatEmbeddingsOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
5725
5726 struct LSHProjectionOptionsT : public flatbuffers::NativeTable {
5727 typedef LSHProjectionOptions TableType;
5728 tflite::LSHProjectionType type = tflite::LSHProjectionType_UNKNOWN;
5729 };
5730
5731 struct LSHProjectionOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
5732 typedef LSHProjectionOptionsT NativeTableType;
5733 typedef LSHProjectionOptionsBuilder Builder;
5734 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
5735 VT_TYPE = 4
5736 };
5737 tflite::LSHProjectionType type() const {
5738 return static_cast<tflite::LSHProjectionType>(GetField<int8_t>(VT_TYPE, 0));
5739 }
5740 bool mutate_type(tflite::LSHProjectionType _type = static_cast<tflite::LSHProjectionType>(0)) {
5741 return SetField<int8_t>(VT_TYPE, static_cast<int8_t>(_type), 0);
5742 }
5743 bool Verify(flatbuffers::Verifier &verifier) const {
5744 return VerifyTableStart(verifier) &&
5745 VerifyField<int8_t>(verifier, VT_TYPE, 1) &&
5746 verifier.EndTable();
5747 }
5748 LSHProjectionOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
5749 void UnPackTo(LSHProjectionOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
5750 static flatbuffers::Offset<LSHProjectionOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LSHProjectionOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
5751 };
5752
5753 struct LSHProjectionOptionsBuilder {
5754 typedef LSHProjectionOptions Table;
5755 flatbuffers::FlatBufferBuilder &fbb_;
5756 flatbuffers::uoffset_t start_;
5757 void add_type(tflite::LSHProjectionType type) {
5758 fbb_.AddElement<int8_t>(LSHProjectionOptions::VT_TYPE, static_cast<int8_t>(type), 0);
5759 }
5760 explicit LSHProjectionOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
5761 : fbb_(_fbb) {
5762 start_ = fbb_.StartTable();
5763 }
5764 flatbuffers::Offset<LSHProjectionOptions> Finish() {
5765 const auto end = fbb_.EndTable(start_);
5766 auto o = flatbuffers::Offset<LSHProjectionOptions>(end);
5767 return o;
5768 }
5769 };
5770
5771 inline flatbuffers::Offset<LSHProjectionOptions> CreateLSHProjectionOptions(
5772 flatbuffers::FlatBufferBuilder &_fbb,
5773 tflite::LSHProjectionType type = tflite::LSHProjectionType_UNKNOWN) {
5774 LSHProjectionOptionsBuilder builder_(_fbb);
5775 builder_.add_type(type);
5776 return builder_.Finish();
5777 }
5778
5779 flatbuffers::Offset<LSHProjectionOptions> CreateLSHProjectionOptions(flatbuffers::FlatBufferBuilder &_fbb, const LSHProjectionOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
5780
5781 struct SVDFOptionsT : public flatbuffers::NativeTable {
5782 typedef SVDFOptions TableType;
5783 int32_t rank = 0;
5784 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
5785 bool asymmetric_quantize_inputs = false;
5786 };
5787
5788 struct SVDFOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
5789 typedef SVDFOptionsT NativeTableType;
5790 typedef SVDFOptionsBuilder Builder;
5791 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
5792 VT_RANK = 4,
5793 VT_FUSED_ACTIVATION_FUNCTION = 6,
5794 VT_ASYMMETRIC_QUANTIZE_INPUTS = 8
5795 };
5796 int32_t rank() const {
5797 return GetField<int32_t>(VT_RANK, 0);
5798 }
5799 bool mutate_rank(int32_t _rank = 0) {
5800 return SetField<int32_t>(VT_RANK, _rank, 0);
5801 }
5802 tflite::ActivationFunctionType fused_activation_function() const {
5803 return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
5804 }
5805 bool mutate_fused_activation_function(tflite::ActivationFunctionType _fused_activation_function = static_cast<tflite::ActivationFunctionType>(0)) {
5806 return SetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(_fused_activation_function), 0);
5807 }
5808 bool asymmetric_quantize_inputs() const {
5809 return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
5810 }
5811 bool mutate_asymmetric_quantize_inputs(bool _asymmetric_quantize_inputs = 0) {
5812 return SetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(_asymmetric_quantize_inputs), 0);
5813 }
5814 bool Verify(flatbuffers::Verifier &verifier) const {
5815 return VerifyTableStart(verifier) &&
5816 VerifyField<int32_t>(verifier, VT_RANK, 4) &&
5817 VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
5818 VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
5819 verifier.EndTable();
5820 }
5821 SVDFOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
5822 void UnPackTo(SVDFOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
5823 static flatbuffers::Offset<SVDFOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SVDFOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
5824 };
5825
5826 struct SVDFOptionsBuilder {
5827 typedef SVDFOptions Table;
5828 flatbuffers::FlatBufferBuilder &fbb_;
5829 flatbuffers::uoffset_t start_;
5830 void add_rank(int32_t rank) {
5831 fbb_.AddElement<int32_t>(SVDFOptions::VT_RANK, rank, 0);
5832 }
5833 void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
5834 fbb_.AddElement<int8_t>(SVDFOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
5835 }
5836 void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
5837 fbb_.AddElement<uint8_t>(SVDFOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
5838 }
5839 explicit SVDFOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
5840 : fbb_(_fbb) {
5841 start_ = fbb_.StartTable();
5842 }
5843 flatbuffers::Offset<SVDFOptions> Finish() {
5844 const auto end = fbb_.EndTable(start_);
5845 auto o = flatbuffers::Offset<SVDFOptions>(end);
5846 return o;
5847 }
5848 };
5849
5850 inline flatbuffers::Offset<SVDFOptions> CreateSVDFOptions(
5851 flatbuffers::FlatBufferBuilder &_fbb,
5852 int32_t rank = 0,
5853 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
5854 bool asymmetric_quantize_inputs = false) {
5855 SVDFOptionsBuilder builder_(_fbb);
5856 builder_.add_rank(rank);
5857 builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
5858 builder_.add_fused_activation_function(fused_activation_function);
5859 return builder_.Finish();
5860 }
5861
5862 flatbuffers::Offset<SVDFOptions> CreateSVDFOptions(flatbuffers::FlatBufferBuilder &_fbb, const SVDFOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
5863
5864 struct RNNOptionsT : public flatbuffers::NativeTable {
5865 typedef RNNOptions TableType;
5866 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
5867 bool asymmetric_quantize_inputs = false;
5868 };
5869
5870 struct RNNOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
5871 typedef RNNOptionsT NativeTableType;
5872 typedef RNNOptionsBuilder Builder;
5873 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
5874 VT_FUSED_ACTIVATION_FUNCTION = 4,
5875 VT_ASYMMETRIC_QUANTIZE_INPUTS = 6
5876 };
5877 tflite::ActivationFunctionType fused_activation_function() const {
5878 return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
5879 }
5880 bool mutate_fused_activation_function(tflite::ActivationFunctionType _fused_activation_function = static_cast<tflite::ActivationFunctionType>(0)) {
5881 return SetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(_fused_activation_function), 0);
5882 }
5883 bool asymmetric_quantize_inputs() const {
5884 return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
5885 }
5886 bool mutate_asymmetric_quantize_inputs(bool _asymmetric_quantize_inputs = 0) {
5887 return SetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(_asymmetric_quantize_inputs), 0);
5888 }
5889 bool Verify(flatbuffers::Verifier &verifier) const {
5890 return VerifyTableStart(verifier) &&
5891 VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
5892 VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
5893 verifier.EndTable();
5894 }
5895 RNNOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
5896 void UnPackTo(RNNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
5897 static flatbuffers::Offset<RNNOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const RNNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
5898 };
5899
5900 struct RNNOptionsBuilder {
5901 typedef RNNOptions Table;
5902 flatbuffers::FlatBufferBuilder &fbb_;
5903 flatbuffers::uoffset_t start_;
5904 void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
5905 fbb_.AddElement<int8_t>(RNNOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
5906 }
5907 void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
5908 fbb_.AddElement<uint8_t>(RNNOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
5909 }
5910 explicit RNNOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
5911 : fbb_(_fbb) {
5912 start_ = fbb_.StartTable();
5913 }
5914 flatbuffers::Offset<RNNOptions> Finish() {
5915 const auto end = fbb_.EndTable(start_);
5916 auto o = flatbuffers::Offset<RNNOptions>(end);
5917 return o;
5918 }
5919 };
5920
5921 inline flatbuffers::Offset<RNNOptions> CreateRNNOptions(
5922 flatbuffers::FlatBufferBuilder &_fbb,
5923 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
5924 bool asymmetric_quantize_inputs = false) {
5925 RNNOptionsBuilder builder_(_fbb);
5926 builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
5927 builder_.add_fused_activation_function(fused_activation_function);
5928 return builder_.Finish();
5929 }
5930
5931 flatbuffers::Offset<RNNOptions> CreateRNNOptions(flatbuffers::FlatBufferBuilder &_fbb, const RNNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
5932
5933 struct SequenceRNNOptionsT : public flatbuffers::NativeTable {
5934 typedef SequenceRNNOptions TableType;
5935 bool time_major = false;
5936 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
5937 bool asymmetric_quantize_inputs = false;
5938 };
5939
5940 struct SequenceRNNOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
5941 typedef SequenceRNNOptionsT NativeTableType;
5942 typedef SequenceRNNOptionsBuilder Builder;
5943 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
5944 VT_TIME_MAJOR = 4,
5945 VT_FUSED_ACTIVATION_FUNCTION = 6,
5946 VT_ASYMMETRIC_QUANTIZE_INPUTS = 8
5947 };
5948 bool time_major() const {
5949 return GetField<uint8_t>(VT_TIME_MAJOR, 0) != 0;
5950 }
5951 bool mutate_time_major(bool _time_major = 0) {
5952 return SetField<uint8_t>(VT_TIME_MAJOR, static_cast<uint8_t>(_time_major), 0);
5953 }
5954 tflite::ActivationFunctionType fused_activation_function() const {
5955 return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
5956 }
5957 bool mutate_fused_activation_function(tflite::ActivationFunctionType _fused_activation_function = static_cast<tflite::ActivationFunctionType>(0)) {
5958 return SetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(_fused_activation_function), 0);
5959 }
5960 bool asymmetric_quantize_inputs() const {
5961 return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
5962 }
5963 bool mutate_asymmetric_quantize_inputs(bool _asymmetric_quantize_inputs = 0) {
5964 return SetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(_asymmetric_quantize_inputs), 0);
5965 }
5966 bool Verify(flatbuffers::Verifier &verifier) const {
5967 return VerifyTableStart(verifier) &&
5968 VerifyField<uint8_t>(verifier, VT_TIME_MAJOR, 1) &&
5969 VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
5970 VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
5971 verifier.EndTable();
5972 }
5973 SequenceRNNOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
5974 void UnPackTo(SequenceRNNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
5975 static flatbuffers::Offset<SequenceRNNOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SequenceRNNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
5976 };
5977
5978 struct SequenceRNNOptionsBuilder {
5979 typedef SequenceRNNOptions Table;
5980 flatbuffers::FlatBufferBuilder &fbb_;
5981 flatbuffers::uoffset_t start_;
5982 void add_time_major(bool time_major) {
5983 fbb_.AddElement<uint8_t>(SequenceRNNOptions::VT_TIME_MAJOR, static_cast<uint8_t>(time_major), 0);
5984 }
5985 void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
5986 fbb_.AddElement<int8_t>(SequenceRNNOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
5987 }
5988 void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
5989 fbb_.AddElement<uint8_t>(SequenceRNNOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
5990 }
5991 explicit SequenceRNNOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
5992 : fbb_(_fbb) {
5993 start_ = fbb_.StartTable();
5994 }
5995 flatbuffers::Offset<SequenceRNNOptions> Finish() {
5996 const auto end = fbb_.EndTable(start_);
5997 auto o = flatbuffers::Offset<SequenceRNNOptions>(end);
5998 return o;
5999 }
6000 };
6001
6002 inline flatbuffers::Offset<SequenceRNNOptions> CreateSequenceRNNOptions(
6003 flatbuffers::FlatBufferBuilder &_fbb,
6004 bool time_major = false,
6005 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
6006 bool asymmetric_quantize_inputs = false) {
6007 SequenceRNNOptionsBuilder builder_(_fbb);
6008 builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
6009 builder_.add_fused_activation_function(fused_activation_function);
6010 builder_.add_time_major(time_major);
6011 return builder_.Finish();
6012 }
6013
6014 flatbuffers::Offset<SequenceRNNOptions> CreateSequenceRNNOptions(flatbuffers::FlatBufferBuilder &_fbb, const SequenceRNNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6015
6016 struct BidirectionalSequenceRNNOptionsT : public flatbuffers::NativeTable {
6017 typedef BidirectionalSequenceRNNOptions TableType;
6018 bool time_major = false;
6019 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
6020 bool merge_outputs = false;
6021 bool asymmetric_quantize_inputs = false;
6022 };
6023
6024 struct BidirectionalSequenceRNNOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
6025 typedef BidirectionalSequenceRNNOptionsT NativeTableType;
6026 typedef BidirectionalSequenceRNNOptionsBuilder Builder;
6027 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
6028 VT_TIME_MAJOR = 4,
6029 VT_FUSED_ACTIVATION_FUNCTION = 6,
6030 VT_MERGE_OUTPUTS = 8,
6031 VT_ASYMMETRIC_QUANTIZE_INPUTS = 10
6032 };
6033 bool time_major() const {
6034 return GetField<uint8_t>(VT_TIME_MAJOR, 0) != 0;
6035 }
6036 bool mutate_time_major(bool _time_major = 0) {
6037 return SetField<uint8_t>(VT_TIME_MAJOR, static_cast<uint8_t>(_time_major), 0);
6038 }
6039 tflite::ActivationFunctionType fused_activation_function() const {
6040 return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
6041 }
6042 bool mutate_fused_activation_function(tflite::ActivationFunctionType _fused_activation_function = static_cast<tflite::ActivationFunctionType>(0)) {
6043 return SetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(_fused_activation_function), 0);
6044 }
6045 bool merge_outputs() const {
6046 return GetField<uint8_t>(VT_MERGE_OUTPUTS, 0) != 0;
6047 }
6048 bool mutate_merge_outputs(bool _merge_outputs = 0) {
6049 return SetField<uint8_t>(VT_MERGE_OUTPUTS, static_cast<uint8_t>(_merge_outputs), 0);
6050 }
6051 bool asymmetric_quantize_inputs() const {
6052 return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
6053 }
6054 bool mutate_asymmetric_quantize_inputs(bool _asymmetric_quantize_inputs = 0) {
6055 return SetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(_asymmetric_quantize_inputs), 0);
6056 }
6057 bool Verify(flatbuffers::Verifier &verifier) const {
6058 return VerifyTableStart(verifier) &&
6059 VerifyField<uint8_t>(verifier, VT_TIME_MAJOR, 1) &&
6060 VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
6061 VerifyField<uint8_t>(verifier, VT_MERGE_OUTPUTS, 1) &&
6062 VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
6063 verifier.EndTable();
6064 }
6065 BidirectionalSequenceRNNOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6066 void UnPackTo(BidirectionalSequenceRNNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6067 static flatbuffers::Offset<BidirectionalSequenceRNNOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceRNNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6068 };
6069
6070 struct BidirectionalSequenceRNNOptionsBuilder {
6071 typedef BidirectionalSequenceRNNOptions Table;
6072 flatbuffers::FlatBufferBuilder &fbb_;
6073 flatbuffers::uoffset_t start_;
6074 void add_time_major(bool time_major) {
6075 fbb_.AddElement<uint8_t>(BidirectionalSequenceRNNOptions::VT_TIME_MAJOR, static_cast<uint8_t>(time_major), 0);
6076 }
6077 void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
6078 fbb_.AddElement<int8_t>(BidirectionalSequenceRNNOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
6079 }
6080 void add_merge_outputs(bool merge_outputs) {
6081 fbb_.AddElement<uint8_t>(BidirectionalSequenceRNNOptions::VT_MERGE_OUTPUTS, static_cast<uint8_t>(merge_outputs), 0);
6082 }
6083 void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
6084 fbb_.AddElement<uint8_t>(BidirectionalSequenceRNNOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
6085 }
6086 explicit BidirectionalSequenceRNNOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
6087 : fbb_(_fbb) {
6088 start_ = fbb_.StartTable();
6089 }
6090 flatbuffers::Offset<BidirectionalSequenceRNNOptions> Finish() {
6091 const auto end = fbb_.EndTable(start_);
6092 auto o = flatbuffers::Offset<BidirectionalSequenceRNNOptions>(end);
6093 return o;
6094 }
6095 };
6096
6097 inline flatbuffers::Offset<BidirectionalSequenceRNNOptions> CreateBidirectionalSequenceRNNOptions(
6098 flatbuffers::FlatBufferBuilder &_fbb,
6099 bool time_major = false,
6100 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
6101 bool merge_outputs = false,
6102 bool asymmetric_quantize_inputs = false) {
6103 BidirectionalSequenceRNNOptionsBuilder builder_(_fbb);
6104 builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
6105 builder_.add_merge_outputs(merge_outputs);
6106 builder_.add_fused_activation_function(fused_activation_function);
6107 builder_.add_time_major(time_major);
6108 return builder_.Finish();
6109 }
6110
6111 flatbuffers::Offset<BidirectionalSequenceRNNOptions> CreateBidirectionalSequenceRNNOptions(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceRNNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6112
6113 struct FullyConnectedOptionsT : public flatbuffers::NativeTable {
6114 typedef FullyConnectedOptions TableType;
6115 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
6116 tflite::FullyConnectedOptionsWeightsFormat weights_format = tflite::FullyConnectedOptionsWeightsFormat_DEFAULT;
6117 bool keep_num_dims = false;
6118 bool asymmetric_quantize_inputs = false;
6119 };
6120
6121 struct FullyConnectedOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
6122 typedef FullyConnectedOptionsT NativeTableType;
6123 typedef FullyConnectedOptionsBuilder Builder;
6124 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
6125 VT_FUSED_ACTIVATION_FUNCTION = 4,
6126 VT_WEIGHTS_FORMAT = 6,
6127 VT_KEEP_NUM_DIMS = 8,
6128 VT_ASYMMETRIC_QUANTIZE_INPUTS = 10
6129 };
6130 tflite::ActivationFunctionType fused_activation_function() const {
6131 return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
6132 }
6133 bool mutate_fused_activation_function(tflite::ActivationFunctionType _fused_activation_function = static_cast<tflite::ActivationFunctionType>(0)) {
6134 return SetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(_fused_activation_function), 0);
6135 }
6136 tflite::FullyConnectedOptionsWeightsFormat weights_format() const {
6137 return static_cast<tflite::FullyConnectedOptionsWeightsFormat>(GetField<int8_t>(VT_WEIGHTS_FORMAT, 0));
6138 }
6139 bool mutate_weights_format(tflite::FullyConnectedOptionsWeightsFormat _weights_format = static_cast<tflite::FullyConnectedOptionsWeightsFormat>(0)) {
6140 return SetField<int8_t>(VT_WEIGHTS_FORMAT, static_cast<int8_t>(_weights_format), 0);
6141 }
6142 bool keep_num_dims() const {
6143 return GetField<uint8_t>(VT_KEEP_NUM_DIMS, 0) != 0;
6144 }
6145 bool mutate_keep_num_dims(bool _keep_num_dims = 0) {
6146 return SetField<uint8_t>(VT_KEEP_NUM_DIMS, static_cast<uint8_t>(_keep_num_dims), 0);
6147 }
6148 bool asymmetric_quantize_inputs() const {
6149 return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
6150 }
6151 bool mutate_asymmetric_quantize_inputs(bool _asymmetric_quantize_inputs = 0) {
6152 return SetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(_asymmetric_quantize_inputs), 0);
6153 }
6154 bool Verify(flatbuffers::Verifier &verifier) const {
6155 return VerifyTableStart(verifier) &&
6156 VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
6157 VerifyField<int8_t>(verifier, VT_WEIGHTS_FORMAT, 1) &&
6158 VerifyField<uint8_t>(verifier, VT_KEEP_NUM_DIMS, 1) &&
6159 VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
6160 verifier.EndTable();
6161 }
6162 FullyConnectedOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6163 void UnPackTo(FullyConnectedOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6164 static flatbuffers::Offset<FullyConnectedOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const FullyConnectedOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6165 };
6166
6167 struct FullyConnectedOptionsBuilder {
6168 typedef FullyConnectedOptions Table;
6169 flatbuffers::FlatBufferBuilder &fbb_;
6170 flatbuffers::uoffset_t start_;
6171 void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
6172 fbb_.AddElement<int8_t>(FullyConnectedOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
6173 }
6174 void add_weights_format(tflite::FullyConnectedOptionsWeightsFormat weights_format) {
6175 fbb_.AddElement<int8_t>(FullyConnectedOptions::VT_WEIGHTS_FORMAT, static_cast<int8_t>(weights_format), 0);
6176 }
6177 void add_keep_num_dims(bool keep_num_dims) {
6178 fbb_.AddElement<uint8_t>(FullyConnectedOptions::VT_KEEP_NUM_DIMS, static_cast<uint8_t>(keep_num_dims), 0);
6179 }
6180 void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
6181 fbb_.AddElement<uint8_t>(FullyConnectedOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
6182 }
6183 explicit FullyConnectedOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
6184 : fbb_(_fbb) {
6185 start_ = fbb_.StartTable();
6186 }
6187 flatbuffers::Offset<FullyConnectedOptions> Finish() {
6188 const auto end = fbb_.EndTable(start_);
6189 auto o = flatbuffers::Offset<FullyConnectedOptions>(end);
6190 return o;
6191 }
6192 };
6193
6194 inline flatbuffers::Offset<FullyConnectedOptions> CreateFullyConnectedOptions(
6195 flatbuffers::FlatBufferBuilder &_fbb,
6196 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
6197 tflite::FullyConnectedOptionsWeightsFormat weights_format = tflite::FullyConnectedOptionsWeightsFormat_DEFAULT,
6198 bool keep_num_dims = false,
6199 bool asymmetric_quantize_inputs = false) {
6200 FullyConnectedOptionsBuilder builder_(_fbb);
6201 builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
6202 builder_.add_keep_num_dims(keep_num_dims);
6203 builder_.add_weights_format(weights_format);
6204 builder_.add_fused_activation_function(fused_activation_function);
6205 return builder_.Finish();
6206 }
6207
6208 flatbuffers::Offset<FullyConnectedOptions> CreateFullyConnectedOptions(flatbuffers::FlatBufferBuilder &_fbb, const FullyConnectedOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6209
6210 struct SoftmaxOptionsT : public flatbuffers::NativeTable {
6211 typedef SoftmaxOptions TableType;
6212 float beta = 0.0f;
6213 };
6214
6215 struct SoftmaxOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
6216 typedef SoftmaxOptionsT NativeTableType;
6217 typedef SoftmaxOptionsBuilder Builder;
6218 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
6219 VT_BETA = 4
6220 };
6221 float beta() const {
6222 return GetField<float>(VT_BETA, 0.0f);
6223 }
6224 bool mutate_beta(float _beta = 0.0f) {
6225 return SetField<float>(VT_BETA, _beta, 0.0f);
6226 }
6227 bool Verify(flatbuffers::Verifier &verifier) const {
6228 return VerifyTableStart(verifier) &&
6229 VerifyField<float>(verifier, VT_BETA, 4) &&
6230 verifier.EndTable();
6231 }
6232 SoftmaxOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6233 void UnPackTo(SoftmaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6234 static flatbuffers::Offset<SoftmaxOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SoftmaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6235 };
6236
6237 struct SoftmaxOptionsBuilder {
6238 typedef SoftmaxOptions Table;
6239 flatbuffers::FlatBufferBuilder &fbb_;
6240 flatbuffers::uoffset_t start_;
6241 void add_beta(float beta) {
6242 fbb_.AddElement<float>(SoftmaxOptions::VT_BETA, beta, 0.0f);
6243 }
6244 explicit SoftmaxOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
6245 : fbb_(_fbb) {
6246 start_ = fbb_.StartTable();
6247 }
6248 flatbuffers::Offset<SoftmaxOptions> Finish() {
6249 const auto end = fbb_.EndTable(start_);
6250 auto o = flatbuffers::Offset<SoftmaxOptions>(end);
6251 return o;
6252 }
6253 };
6254
6255 inline flatbuffers::Offset<SoftmaxOptions> CreateSoftmaxOptions(
6256 flatbuffers::FlatBufferBuilder &_fbb,
6257 float beta = 0.0f) {
6258 SoftmaxOptionsBuilder builder_(_fbb);
6259 builder_.add_beta(beta);
6260 return builder_.Finish();
6261 }
6262
6263 flatbuffers::Offset<SoftmaxOptions> CreateSoftmaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const SoftmaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6264
6265 struct ConcatenationOptionsT : public flatbuffers::NativeTable {
6266 typedef ConcatenationOptions TableType;
6267 int32_t axis = 0;
6268 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
6269 };
6270
6271 struct ConcatenationOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
6272 typedef ConcatenationOptionsT NativeTableType;
6273 typedef ConcatenationOptionsBuilder Builder;
6274 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
6275 VT_AXIS = 4,
6276 VT_FUSED_ACTIVATION_FUNCTION = 6
6277 };
6278 int32_t axis() const {
6279 return GetField<int32_t>(VT_AXIS, 0);
6280 }
6281 bool mutate_axis(int32_t _axis = 0) {
6282 return SetField<int32_t>(VT_AXIS, _axis, 0);
6283 }
6284 tflite::ActivationFunctionType fused_activation_function() const {
6285 return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
6286 }
6287 bool mutate_fused_activation_function(tflite::ActivationFunctionType _fused_activation_function = static_cast<tflite::ActivationFunctionType>(0)) {
6288 return SetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(_fused_activation_function), 0);
6289 }
6290 bool Verify(flatbuffers::Verifier &verifier) const {
6291 return VerifyTableStart(verifier) &&
6292 VerifyField<int32_t>(verifier, VT_AXIS, 4) &&
6293 VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
6294 verifier.EndTable();
6295 }
6296 ConcatenationOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6297 void UnPackTo(ConcatenationOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6298 static flatbuffers::Offset<ConcatenationOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ConcatenationOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6299 };
6300
6301 struct ConcatenationOptionsBuilder {
6302 typedef ConcatenationOptions Table;
6303 flatbuffers::FlatBufferBuilder &fbb_;
6304 flatbuffers::uoffset_t start_;
6305 void add_axis(int32_t axis) {
6306 fbb_.AddElement<int32_t>(ConcatenationOptions::VT_AXIS, axis, 0);
6307 }
6308 void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
6309 fbb_.AddElement<int8_t>(ConcatenationOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
6310 }
6311 explicit ConcatenationOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
6312 : fbb_(_fbb) {
6313 start_ = fbb_.StartTable();
6314 }
6315 flatbuffers::Offset<ConcatenationOptions> Finish() {
6316 const auto end = fbb_.EndTable(start_);
6317 auto o = flatbuffers::Offset<ConcatenationOptions>(end);
6318 return o;
6319 }
6320 };
6321
6322 inline flatbuffers::Offset<ConcatenationOptions> CreateConcatenationOptions(
6323 flatbuffers::FlatBufferBuilder &_fbb,
6324 int32_t axis = 0,
6325 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE) {
6326 ConcatenationOptionsBuilder builder_(_fbb);
6327 builder_.add_axis(axis);
6328 builder_.add_fused_activation_function(fused_activation_function);
6329 return builder_.Finish();
6330 }
6331
6332 flatbuffers::Offset<ConcatenationOptions> CreateConcatenationOptions(flatbuffers::FlatBufferBuilder &_fbb, const ConcatenationOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6333
6334 struct AddOptionsT : public flatbuffers::NativeTable {
6335 typedef AddOptions TableType;
6336 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
6337 bool pot_scale_int16 = true;
6338 };
6339
6340 struct AddOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
6341 typedef AddOptionsT NativeTableType;
6342 typedef AddOptionsBuilder Builder;
6343 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
6344 VT_FUSED_ACTIVATION_FUNCTION = 4,
6345 VT_POT_SCALE_INT16 = 6
6346 };
6347 tflite::ActivationFunctionType fused_activation_function() const {
6348 return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
6349 }
6350 bool mutate_fused_activation_function(tflite::ActivationFunctionType _fused_activation_function = static_cast<tflite::ActivationFunctionType>(0)) {
6351 return SetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(_fused_activation_function), 0);
6352 }
6353 bool pot_scale_int16() const {
6354 return GetField<uint8_t>(VT_POT_SCALE_INT16, 1) != 0;
6355 }
6356 bool mutate_pot_scale_int16(bool _pot_scale_int16 = 1) {
6357 return SetField<uint8_t>(VT_POT_SCALE_INT16, static_cast<uint8_t>(_pot_scale_int16), 1);
6358 }
6359 bool Verify(flatbuffers::Verifier &verifier) const {
6360 return VerifyTableStart(verifier) &&
6361 VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
6362 VerifyField<uint8_t>(verifier, VT_POT_SCALE_INT16, 1) &&
6363 verifier.EndTable();
6364 }
6365 AddOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6366 void UnPackTo(AddOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6367 static flatbuffers::Offset<AddOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const AddOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6368 };
6369
6370 struct AddOptionsBuilder {
6371 typedef AddOptions Table;
6372 flatbuffers::FlatBufferBuilder &fbb_;
6373 flatbuffers::uoffset_t start_;
6374 void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
6375 fbb_.AddElement<int8_t>(AddOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
6376 }
6377 void add_pot_scale_int16(bool pot_scale_int16) {
6378 fbb_.AddElement<uint8_t>(AddOptions::VT_POT_SCALE_INT16, static_cast<uint8_t>(pot_scale_int16), 1);
6379 }
6380 explicit AddOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
6381 : fbb_(_fbb) {
6382 start_ = fbb_.StartTable();
6383 }
6384 flatbuffers::Offset<AddOptions> Finish() {
6385 const auto end = fbb_.EndTable(start_);
6386 auto o = flatbuffers::Offset<AddOptions>(end);
6387 return o;
6388 }
6389 };
6390
6391 inline flatbuffers::Offset<AddOptions> CreateAddOptions(
6392 flatbuffers::FlatBufferBuilder &_fbb,
6393 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
6394 bool pot_scale_int16 = true) {
6395 AddOptionsBuilder builder_(_fbb);
6396 builder_.add_pot_scale_int16(pot_scale_int16);
6397 builder_.add_fused_activation_function(fused_activation_function);
6398 return builder_.Finish();
6399 }
6400
6401 flatbuffers::Offset<AddOptions> CreateAddOptions(flatbuffers::FlatBufferBuilder &_fbb, const AddOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6402
6403 struct MulOptionsT : public flatbuffers::NativeTable {
6404 typedef MulOptions TableType;
6405 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
6406 };
6407
6408 struct MulOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
6409 typedef MulOptionsT NativeTableType;
6410 typedef MulOptionsBuilder Builder;
6411 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
6412 VT_FUSED_ACTIVATION_FUNCTION = 4
6413 };
6414 tflite::ActivationFunctionType fused_activation_function() const {
6415 return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
6416 }
6417 bool mutate_fused_activation_function(tflite::ActivationFunctionType _fused_activation_function = static_cast<tflite::ActivationFunctionType>(0)) {
6418 return SetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(_fused_activation_function), 0);
6419 }
6420 bool Verify(flatbuffers::Verifier &verifier) const {
6421 return VerifyTableStart(verifier) &&
6422 VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
6423 verifier.EndTable();
6424 }
6425 MulOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6426 void UnPackTo(MulOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6427 static flatbuffers::Offset<MulOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const MulOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6428 };
6429
6430 struct MulOptionsBuilder {
6431 typedef MulOptions Table;
6432 flatbuffers::FlatBufferBuilder &fbb_;
6433 flatbuffers::uoffset_t start_;
6434 void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
6435 fbb_.AddElement<int8_t>(MulOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
6436 }
6437 explicit MulOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
6438 : fbb_(_fbb) {
6439 start_ = fbb_.StartTable();
6440 }
6441 flatbuffers::Offset<MulOptions> Finish() {
6442 const auto end = fbb_.EndTable(start_);
6443 auto o = flatbuffers::Offset<MulOptions>(end);
6444 return o;
6445 }
6446 };
6447
6448 inline flatbuffers::Offset<MulOptions> CreateMulOptions(
6449 flatbuffers::FlatBufferBuilder &_fbb,
6450 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE) {
6451 MulOptionsBuilder builder_(_fbb);
6452 builder_.add_fused_activation_function(fused_activation_function);
6453 return builder_.Finish();
6454 }
6455
6456 flatbuffers::Offset<MulOptions> CreateMulOptions(flatbuffers::FlatBufferBuilder &_fbb, const MulOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6457
6458 struct L2NormOptionsT : public flatbuffers::NativeTable {
6459 typedef L2NormOptions TableType;
6460 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
6461 };
6462
6463 struct L2NormOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
6464 typedef L2NormOptionsT NativeTableType;
6465 typedef L2NormOptionsBuilder Builder;
6466 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
6467 VT_FUSED_ACTIVATION_FUNCTION = 4
6468 };
6469 tflite::ActivationFunctionType fused_activation_function() const {
6470 return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
6471 }
6472 bool mutate_fused_activation_function(tflite::ActivationFunctionType _fused_activation_function = static_cast<tflite::ActivationFunctionType>(0)) {
6473 return SetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(_fused_activation_function), 0);
6474 }
6475 bool Verify(flatbuffers::Verifier &verifier) const {
6476 return VerifyTableStart(verifier) &&
6477 VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
6478 verifier.EndTable();
6479 }
6480 L2NormOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6481 void UnPackTo(L2NormOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6482 static flatbuffers::Offset<L2NormOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const L2NormOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6483 };
6484
6485 struct L2NormOptionsBuilder {
6486 typedef L2NormOptions Table;
6487 flatbuffers::FlatBufferBuilder &fbb_;
6488 flatbuffers::uoffset_t start_;
6489 void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
6490 fbb_.AddElement<int8_t>(L2NormOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
6491 }
6492 explicit L2NormOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
6493 : fbb_(_fbb) {
6494 start_ = fbb_.StartTable();
6495 }
6496 flatbuffers::Offset<L2NormOptions> Finish() {
6497 const auto end = fbb_.EndTable(start_);
6498 auto o = flatbuffers::Offset<L2NormOptions>(end);
6499 return o;
6500 }
6501 };
6502
6503 inline flatbuffers::Offset<L2NormOptions> CreateL2NormOptions(
6504 flatbuffers::FlatBufferBuilder &_fbb,
6505 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE) {
6506 L2NormOptionsBuilder builder_(_fbb);
6507 builder_.add_fused_activation_function(fused_activation_function);
6508 return builder_.Finish();
6509 }
6510
6511 flatbuffers::Offset<L2NormOptions> CreateL2NormOptions(flatbuffers::FlatBufferBuilder &_fbb, const L2NormOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6512
6513 struct LocalResponseNormalizationOptionsT : public flatbuffers::NativeTable {
6514 typedef LocalResponseNormalizationOptions TableType;
6515 int32_t radius = 0;
6516 float bias = 0.0f;
6517 float alpha = 0.0f;
6518 float beta = 0.0f;
6519 };
6520
6521 struct LocalResponseNormalizationOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
6522 typedef LocalResponseNormalizationOptionsT NativeTableType;
6523 typedef LocalResponseNormalizationOptionsBuilder Builder;
6524 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
6525 VT_RADIUS = 4,
6526 VT_BIAS = 6,
6527 VT_ALPHA = 8,
6528 VT_BETA = 10
6529 };
6530 int32_t radius() const {
6531 return GetField<int32_t>(VT_RADIUS, 0);
6532 }
6533 bool mutate_radius(int32_t _radius = 0) {
6534 return SetField<int32_t>(VT_RADIUS, _radius, 0);
6535 }
6536 float bias() const {
6537 return GetField<float>(VT_BIAS, 0.0f);
6538 }
6539 bool mutate_bias(float _bias = 0.0f) {
6540 return SetField<float>(VT_BIAS, _bias, 0.0f);
6541 }
6542 float alpha() const {
6543 return GetField<float>(VT_ALPHA, 0.0f);
6544 }
6545 bool mutate_alpha(float _alpha = 0.0f) {
6546 return SetField<float>(VT_ALPHA, _alpha, 0.0f);
6547 }
6548 float beta() const {
6549 return GetField<float>(VT_BETA, 0.0f);
6550 }
6551 bool mutate_beta(float _beta = 0.0f) {
6552 return SetField<float>(VT_BETA, _beta, 0.0f);
6553 }
6554 bool Verify(flatbuffers::Verifier &verifier) const {
6555 return VerifyTableStart(verifier) &&
6556 VerifyField<int32_t>(verifier, VT_RADIUS, 4) &&
6557 VerifyField<float>(verifier, VT_BIAS, 4) &&
6558 VerifyField<float>(verifier, VT_ALPHA, 4) &&
6559 VerifyField<float>(verifier, VT_BETA, 4) &&
6560 verifier.EndTable();
6561 }
6562 LocalResponseNormalizationOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6563 void UnPackTo(LocalResponseNormalizationOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6564 static flatbuffers::Offset<LocalResponseNormalizationOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LocalResponseNormalizationOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6565 };
6566
6567 struct LocalResponseNormalizationOptionsBuilder {
6568 typedef LocalResponseNormalizationOptions Table;
6569 flatbuffers::FlatBufferBuilder &fbb_;
6570 flatbuffers::uoffset_t start_;
6571 void add_radius(int32_t radius) {
6572 fbb_.AddElement<int32_t>(LocalResponseNormalizationOptions::VT_RADIUS, radius, 0);
6573 }
6574 void add_bias(float bias) {
6575 fbb_.AddElement<float>(LocalResponseNormalizationOptions::VT_BIAS, bias, 0.0f);
6576 }
6577 void add_alpha(float alpha) {
6578 fbb_.AddElement<float>(LocalResponseNormalizationOptions::VT_ALPHA, alpha, 0.0f);
6579 }
6580 void add_beta(float beta) {
6581 fbb_.AddElement<float>(LocalResponseNormalizationOptions::VT_BETA, beta, 0.0f);
6582 }
6583 explicit LocalResponseNormalizationOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
6584 : fbb_(_fbb) {
6585 start_ = fbb_.StartTable();
6586 }
6587 flatbuffers::Offset<LocalResponseNormalizationOptions> Finish() {
6588 const auto end = fbb_.EndTable(start_);
6589 auto o = flatbuffers::Offset<LocalResponseNormalizationOptions>(end);
6590 return o;
6591 }
6592 };
6593
6594 inline flatbuffers::Offset<LocalResponseNormalizationOptions> CreateLocalResponseNormalizationOptions(
6595 flatbuffers::FlatBufferBuilder &_fbb,
6596 int32_t radius = 0,
6597 float bias = 0.0f,
6598 float alpha = 0.0f,
6599 float beta = 0.0f) {
6600 LocalResponseNormalizationOptionsBuilder builder_(_fbb);
6601 builder_.add_beta(beta);
6602 builder_.add_alpha(alpha);
6603 builder_.add_bias(bias);
6604 builder_.add_radius(radius);
6605 return builder_.Finish();
6606 }
6607
6608 flatbuffers::Offset<LocalResponseNormalizationOptions> CreateLocalResponseNormalizationOptions(flatbuffers::FlatBufferBuilder &_fbb, const LocalResponseNormalizationOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6609
6610 struct LSTMOptionsT : public flatbuffers::NativeTable {
6611 typedef LSTMOptions TableType;
6612 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
6613 float cell_clip = 0.0f;
6614 float proj_clip = 0.0f;
6615 tflite::LSTMKernelType kernel_type = tflite::LSTMKernelType_FULL;
6616 bool asymmetric_quantize_inputs = false;
6617 };
6618
6619 struct LSTMOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
6620 typedef LSTMOptionsT NativeTableType;
6621 typedef LSTMOptionsBuilder Builder;
6622 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
6623 VT_FUSED_ACTIVATION_FUNCTION = 4,
6624 VT_CELL_CLIP = 6,
6625 VT_PROJ_CLIP = 8,
6626 VT_KERNEL_TYPE = 10,
6627 VT_ASYMMETRIC_QUANTIZE_INPUTS = 12
6628 };
6629 tflite::ActivationFunctionType fused_activation_function() const {
6630 return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
6631 }
6632 bool mutate_fused_activation_function(tflite::ActivationFunctionType _fused_activation_function = static_cast<tflite::ActivationFunctionType>(0)) {
6633 return SetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(_fused_activation_function), 0);
6634 }
6635 float cell_clip() const {
6636 return GetField<float>(VT_CELL_CLIP, 0.0f);
6637 }
6638 bool mutate_cell_clip(float _cell_clip = 0.0f) {
6639 return SetField<float>(VT_CELL_CLIP, _cell_clip, 0.0f);
6640 }
6641 float proj_clip() const {
6642 return GetField<float>(VT_PROJ_CLIP, 0.0f);
6643 }
6644 bool mutate_proj_clip(float _proj_clip = 0.0f) {
6645 return SetField<float>(VT_PROJ_CLIP, _proj_clip, 0.0f);
6646 }
6647 tflite::LSTMKernelType kernel_type() const {
6648 return static_cast<tflite::LSTMKernelType>(GetField<int8_t>(VT_KERNEL_TYPE, 0));
6649 }
6650 bool mutate_kernel_type(tflite::LSTMKernelType _kernel_type = static_cast<tflite::LSTMKernelType>(0)) {
6651 return SetField<int8_t>(VT_KERNEL_TYPE, static_cast<int8_t>(_kernel_type), 0);
6652 }
6653 bool asymmetric_quantize_inputs() const {
6654 return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
6655 }
6656 bool mutate_asymmetric_quantize_inputs(bool _asymmetric_quantize_inputs = 0) {
6657 return SetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(_asymmetric_quantize_inputs), 0);
6658 }
6659 bool Verify(flatbuffers::Verifier &verifier) const {
6660 return VerifyTableStart(verifier) &&
6661 VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
6662 VerifyField<float>(verifier, VT_CELL_CLIP, 4) &&
6663 VerifyField<float>(verifier, VT_PROJ_CLIP, 4) &&
6664 VerifyField<int8_t>(verifier, VT_KERNEL_TYPE, 1) &&
6665 VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
6666 verifier.EndTable();
6667 }
6668 LSTMOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6669 void UnPackTo(LSTMOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6670 static flatbuffers::Offset<LSTMOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LSTMOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6671 };
6672
6673 struct LSTMOptionsBuilder {
6674 typedef LSTMOptions Table;
6675 flatbuffers::FlatBufferBuilder &fbb_;
6676 flatbuffers::uoffset_t start_;
6677 void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
6678 fbb_.AddElement<int8_t>(LSTMOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
6679 }
6680 void add_cell_clip(float cell_clip) {
6681 fbb_.AddElement<float>(LSTMOptions::VT_CELL_CLIP, cell_clip, 0.0f);
6682 }
6683 void add_proj_clip(float proj_clip) {
6684 fbb_.AddElement<float>(LSTMOptions::VT_PROJ_CLIP, proj_clip, 0.0f);
6685 }
6686 void add_kernel_type(tflite::LSTMKernelType kernel_type) {
6687 fbb_.AddElement<int8_t>(LSTMOptions::VT_KERNEL_TYPE, static_cast<int8_t>(kernel_type), 0);
6688 }
6689 void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
6690 fbb_.AddElement<uint8_t>(LSTMOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
6691 }
6692 explicit LSTMOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
6693 : fbb_(_fbb) {
6694 start_ = fbb_.StartTable();
6695 }
6696 flatbuffers::Offset<LSTMOptions> Finish() {
6697 const auto end = fbb_.EndTable(start_);
6698 auto o = flatbuffers::Offset<LSTMOptions>(end);
6699 return o;
6700 }
6701 };
6702
6703 inline flatbuffers::Offset<LSTMOptions> CreateLSTMOptions(
6704 flatbuffers::FlatBufferBuilder &_fbb,
6705 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
6706 float cell_clip = 0.0f,
6707 float proj_clip = 0.0f,
6708 tflite::LSTMKernelType kernel_type = tflite::LSTMKernelType_FULL,
6709 bool asymmetric_quantize_inputs = false) {
6710 LSTMOptionsBuilder builder_(_fbb);
6711 builder_.add_proj_clip(proj_clip);
6712 builder_.add_cell_clip(cell_clip);
6713 builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
6714 builder_.add_kernel_type(kernel_type);
6715 builder_.add_fused_activation_function(fused_activation_function);
6716 return builder_.Finish();
6717 }
6718
6719 flatbuffers::Offset<LSTMOptions> CreateLSTMOptions(flatbuffers::FlatBufferBuilder &_fbb, const LSTMOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6720
6721 struct UnidirectionalSequenceLSTMOptionsT : public flatbuffers::NativeTable {
6722 typedef UnidirectionalSequenceLSTMOptions TableType;
6723 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
6724 float cell_clip = 0.0f;
6725 float proj_clip = 0.0f;
6726 bool time_major = false;
6727 bool asymmetric_quantize_inputs = false;
6728 };
6729
6730 struct UnidirectionalSequenceLSTMOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
6731 typedef UnidirectionalSequenceLSTMOptionsT NativeTableType;
6732 typedef UnidirectionalSequenceLSTMOptionsBuilder Builder;
6733 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
6734 VT_FUSED_ACTIVATION_FUNCTION = 4,
6735 VT_CELL_CLIP = 6,
6736 VT_PROJ_CLIP = 8,
6737 VT_TIME_MAJOR = 10,
6738 VT_ASYMMETRIC_QUANTIZE_INPUTS = 12
6739 };
6740 tflite::ActivationFunctionType fused_activation_function() const {
6741 return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
6742 }
6743 bool mutate_fused_activation_function(tflite::ActivationFunctionType _fused_activation_function = static_cast<tflite::ActivationFunctionType>(0)) {
6744 return SetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(_fused_activation_function), 0);
6745 }
6746 float cell_clip() const {
6747 return GetField<float>(VT_CELL_CLIP, 0.0f);
6748 }
6749 bool mutate_cell_clip(float _cell_clip = 0.0f) {
6750 return SetField<float>(VT_CELL_CLIP, _cell_clip, 0.0f);
6751 }
6752 float proj_clip() const {
6753 return GetField<float>(VT_PROJ_CLIP, 0.0f);
6754 }
6755 bool mutate_proj_clip(float _proj_clip = 0.0f) {
6756 return SetField<float>(VT_PROJ_CLIP, _proj_clip, 0.0f);
6757 }
6758 bool time_major() const {
6759 return GetField<uint8_t>(VT_TIME_MAJOR, 0) != 0;
6760 }
6761 bool mutate_time_major(bool _time_major = 0) {
6762 return SetField<uint8_t>(VT_TIME_MAJOR, static_cast<uint8_t>(_time_major), 0);
6763 }
6764 bool asymmetric_quantize_inputs() const {
6765 return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
6766 }
6767 bool mutate_asymmetric_quantize_inputs(bool _asymmetric_quantize_inputs = 0) {
6768 return SetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(_asymmetric_quantize_inputs), 0);
6769 }
6770 bool Verify(flatbuffers::Verifier &verifier) const {
6771 return VerifyTableStart(verifier) &&
6772 VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
6773 VerifyField<float>(verifier, VT_CELL_CLIP, 4) &&
6774 VerifyField<float>(verifier, VT_PROJ_CLIP, 4) &&
6775 VerifyField<uint8_t>(verifier, VT_TIME_MAJOR, 1) &&
6776 VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
6777 verifier.EndTable();
6778 }
6779 UnidirectionalSequenceLSTMOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6780 void UnPackTo(UnidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6781 static flatbuffers::Offset<UnidirectionalSequenceLSTMOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnidirectionalSequenceLSTMOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6782 };
6783
6784 struct UnidirectionalSequenceLSTMOptionsBuilder {
6785 typedef UnidirectionalSequenceLSTMOptions Table;
6786 flatbuffers::FlatBufferBuilder &fbb_;
6787 flatbuffers::uoffset_t start_;
6788 void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
6789 fbb_.AddElement<int8_t>(UnidirectionalSequenceLSTMOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
6790 }
6791 void add_cell_clip(float cell_clip) {
6792 fbb_.AddElement<float>(UnidirectionalSequenceLSTMOptions::VT_CELL_CLIP, cell_clip, 0.0f);
6793 }
6794 void add_proj_clip(float proj_clip) {
6795 fbb_.AddElement<float>(UnidirectionalSequenceLSTMOptions::VT_PROJ_CLIP, proj_clip, 0.0f);
6796 }
6797 void add_time_major(bool time_major) {
6798 fbb_.AddElement<uint8_t>(UnidirectionalSequenceLSTMOptions::VT_TIME_MAJOR, static_cast<uint8_t>(time_major), 0);
6799 }
6800 void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
6801 fbb_.AddElement<uint8_t>(UnidirectionalSequenceLSTMOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
6802 }
6803 explicit UnidirectionalSequenceLSTMOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
6804 : fbb_(_fbb) {
6805 start_ = fbb_.StartTable();
6806 }
6807 flatbuffers::Offset<UnidirectionalSequenceLSTMOptions> Finish() {
6808 const auto end = fbb_.EndTable(start_);
6809 auto o = flatbuffers::Offset<UnidirectionalSequenceLSTMOptions>(end);
6810 return o;
6811 }
6812 };
6813
6814 inline flatbuffers::Offset<UnidirectionalSequenceLSTMOptions> CreateUnidirectionalSequenceLSTMOptions(
6815 flatbuffers::FlatBufferBuilder &_fbb,
6816 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
6817 float cell_clip = 0.0f,
6818 float proj_clip = 0.0f,
6819 bool time_major = false,
6820 bool asymmetric_quantize_inputs = false) {
6821 UnidirectionalSequenceLSTMOptionsBuilder builder_(_fbb);
6822 builder_.add_proj_clip(proj_clip);
6823 builder_.add_cell_clip(cell_clip);
6824 builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
6825 builder_.add_time_major(time_major);
6826 builder_.add_fused_activation_function(fused_activation_function);
6827 return builder_.Finish();
6828 }
6829
6830 flatbuffers::Offset<UnidirectionalSequenceLSTMOptions> CreateUnidirectionalSequenceLSTMOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6831
6832 struct BidirectionalSequenceLSTMOptionsT : public flatbuffers::NativeTable {
6833 typedef BidirectionalSequenceLSTMOptions TableType;
6834 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
6835 float cell_clip = 0.0f;
6836 float proj_clip = 0.0f;
6837 bool merge_outputs = false;
6838 bool time_major = true;
6839 bool asymmetric_quantize_inputs = false;
6840 };
6841
6842 struct BidirectionalSequenceLSTMOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
6843 typedef BidirectionalSequenceLSTMOptionsT NativeTableType;
6844 typedef BidirectionalSequenceLSTMOptionsBuilder Builder;
6845 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
6846 VT_FUSED_ACTIVATION_FUNCTION = 4,
6847 VT_CELL_CLIP = 6,
6848 VT_PROJ_CLIP = 8,
6849 VT_MERGE_OUTPUTS = 10,
6850 VT_TIME_MAJOR = 12,
6851 VT_ASYMMETRIC_QUANTIZE_INPUTS = 14
6852 };
6853 tflite::ActivationFunctionType fused_activation_function() const {
6854 return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
6855 }
6856 bool mutate_fused_activation_function(tflite::ActivationFunctionType _fused_activation_function = static_cast<tflite::ActivationFunctionType>(0)) {
6857 return SetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(_fused_activation_function), 0);
6858 }
6859 float cell_clip() const {
6860 return GetField<float>(VT_CELL_CLIP, 0.0f);
6861 }
6862 bool mutate_cell_clip(float _cell_clip = 0.0f) {
6863 return SetField<float>(VT_CELL_CLIP, _cell_clip, 0.0f);
6864 }
6865 float proj_clip() const {
6866 return GetField<float>(VT_PROJ_CLIP, 0.0f);
6867 }
6868 bool mutate_proj_clip(float _proj_clip = 0.0f) {
6869 return SetField<float>(VT_PROJ_CLIP, _proj_clip, 0.0f);
6870 }
6871 bool merge_outputs() const {
6872 return GetField<uint8_t>(VT_MERGE_OUTPUTS, 0) != 0;
6873 }
6874 bool mutate_merge_outputs(bool _merge_outputs = 0) {
6875 return SetField<uint8_t>(VT_MERGE_OUTPUTS, static_cast<uint8_t>(_merge_outputs), 0);
6876 }
6877 bool time_major() const {
6878 return GetField<uint8_t>(VT_TIME_MAJOR, 1) != 0;
6879 }
6880 bool mutate_time_major(bool _time_major = 1) {
6881 return SetField<uint8_t>(VT_TIME_MAJOR, static_cast<uint8_t>(_time_major), 1);
6882 }
6883 bool asymmetric_quantize_inputs() const {
6884 return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
6885 }
6886 bool mutate_asymmetric_quantize_inputs(bool _asymmetric_quantize_inputs = 0) {
6887 return SetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(_asymmetric_quantize_inputs), 0);
6888 }
6889 bool Verify(flatbuffers::Verifier &verifier) const {
6890 return VerifyTableStart(verifier) &&
6891 VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
6892 VerifyField<float>(verifier, VT_CELL_CLIP, 4) &&
6893 VerifyField<float>(verifier, VT_PROJ_CLIP, 4) &&
6894 VerifyField<uint8_t>(verifier, VT_MERGE_OUTPUTS, 1) &&
6895 VerifyField<uint8_t>(verifier, VT_TIME_MAJOR, 1) &&
6896 VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
6897 verifier.EndTable();
6898 }
6899 BidirectionalSequenceLSTMOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6900 void UnPackTo(BidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6901 static flatbuffers::Offset<BidirectionalSequenceLSTMOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceLSTMOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6902 };
6903
6904 struct BidirectionalSequenceLSTMOptionsBuilder {
6905 typedef BidirectionalSequenceLSTMOptions Table;
6906 flatbuffers::FlatBufferBuilder &fbb_;
6907 flatbuffers::uoffset_t start_;
6908 void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
6909 fbb_.AddElement<int8_t>(BidirectionalSequenceLSTMOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
6910 }
6911 void add_cell_clip(float cell_clip) {
6912 fbb_.AddElement<float>(BidirectionalSequenceLSTMOptions::VT_CELL_CLIP, cell_clip, 0.0f);
6913 }
6914 void add_proj_clip(float proj_clip) {
6915 fbb_.AddElement<float>(BidirectionalSequenceLSTMOptions::VT_PROJ_CLIP, proj_clip, 0.0f);
6916 }
6917 void add_merge_outputs(bool merge_outputs) {
6918 fbb_.AddElement<uint8_t>(BidirectionalSequenceLSTMOptions::VT_MERGE_OUTPUTS, static_cast<uint8_t>(merge_outputs), 0);
6919 }
6920 void add_time_major(bool time_major) {
6921 fbb_.AddElement<uint8_t>(BidirectionalSequenceLSTMOptions::VT_TIME_MAJOR, static_cast<uint8_t>(time_major), 1);
6922 }
6923 void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
6924 fbb_.AddElement<uint8_t>(BidirectionalSequenceLSTMOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
6925 }
6926 explicit BidirectionalSequenceLSTMOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
6927 : fbb_(_fbb) {
6928 start_ = fbb_.StartTable();
6929 }
6930 flatbuffers::Offset<BidirectionalSequenceLSTMOptions> Finish() {
6931 const auto end = fbb_.EndTable(start_);
6932 auto o = flatbuffers::Offset<BidirectionalSequenceLSTMOptions>(end);
6933 return o;
6934 }
6935 };
6936
6937 inline flatbuffers::Offset<BidirectionalSequenceLSTMOptions> CreateBidirectionalSequenceLSTMOptions(
6938 flatbuffers::FlatBufferBuilder &_fbb,
6939 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
6940 float cell_clip = 0.0f,
6941 float proj_clip = 0.0f,
6942 bool merge_outputs = false,
6943 bool time_major = true,
6944 bool asymmetric_quantize_inputs = false) {
6945 BidirectionalSequenceLSTMOptionsBuilder builder_(_fbb);
6946 builder_.add_proj_clip(proj_clip);
6947 builder_.add_cell_clip(cell_clip);
6948 builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
6949 builder_.add_time_major(time_major);
6950 builder_.add_merge_outputs(merge_outputs);
6951 builder_.add_fused_activation_function(fused_activation_function);
6952 return builder_.Finish();
6953 }
6954
6955 flatbuffers::Offset<BidirectionalSequenceLSTMOptions> CreateBidirectionalSequenceLSTMOptions(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6956
6957 struct ResizeBilinearOptionsT : public flatbuffers::NativeTable {
6958 typedef ResizeBilinearOptions TableType;
6959 bool align_corners = false;
6960 bool half_pixel_centers = false;
6961 };
6962
6963 struct ResizeBilinearOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
6964 typedef ResizeBilinearOptionsT NativeTableType;
6965 typedef ResizeBilinearOptionsBuilder Builder;
6966 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
6967 VT_ALIGN_CORNERS = 8,
6968 VT_HALF_PIXEL_CENTERS = 10
6969 };
6970 bool align_corners() const {
6971 return GetField<uint8_t>(VT_ALIGN_CORNERS, 0) != 0;
6972 }
6973 bool mutate_align_corners(bool _align_corners = 0) {
6974 return SetField<uint8_t>(VT_ALIGN_CORNERS, static_cast<uint8_t>(_align_corners), 0);
6975 }
6976 bool half_pixel_centers() const {
6977 return GetField<uint8_t>(VT_HALF_PIXEL_CENTERS, 0) != 0;
6978 }
6979 bool mutate_half_pixel_centers(bool _half_pixel_centers = 0) {
6980 return SetField<uint8_t>(VT_HALF_PIXEL_CENTERS, static_cast<uint8_t>(_half_pixel_centers), 0);
6981 }
6982 bool Verify(flatbuffers::Verifier &verifier) const {
6983 return VerifyTableStart(verifier) &&
6984 VerifyField<uint8_t>(verifier, VT_ALIGN_CORNERS, 1) &&
6985 VerifyField<uint8_t>(verifier, VT_HALF_PIXEL_CENTERS, 1) &&
6986 verifier.EndTable();
6987 }
6988 ResizeBilinearOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6989 void UnPackTo(ResizeBilinearOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
6990 static flatbuffers::Offset<ResizeBilinearOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ResizeBilinearOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
6991 };
6992
6993 struct ResizeBilinearOptionsBuilder {
6994 typedef ResizeBilinearOptions Table;
6995 flatbuffers::FlatBufferBuilder &fbb_;
6996 flatbuffers::uoffset_t start_;
6997 void add_align_corners(bool align_corners) {
6998 fbb_.AddElement<uint8_t>(ResizeBilinearOptions::VT_ALIGN_CORNERS, static_cast<uint8_t>(align_corners), 0);
6999 }
7000 void add_half_pixel_centers(bool half_pixel_centers) {
7001 fbb_.AddElement<uint8_t>(ResizeBilinearOptions::VT_HALF_PIXEL_CENTERS, static_cast<uint8_t>(half_pixel_centers), 0);
7002 }
7003 explicit ResizeBilinearOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
7004 : fbb_(_fbb) {
7005 start_ = fbb_.StartTable();
7006 }
7007 flatbuffers::Offset<ResizeBilinearOptions> Finish() {
7008 const auto end = fbb_.EndTable(start_);
7009 auto o = flatbuffers::Offset<ResizeBilinearOptions>(end);
7010 return o;
7011 }
7012 };
7013
7014 inline flatbuffers::Offset<ResizeBilinearOptions> CreateResizeBilinearOptions(
7015 flatbuffers::FlatBufferBuilder &_fbb,
7016 bool align_corners = false,
7017 bool half_pixel_centers = false) {
7018 ResizeBilinearOptionsBuilder builder_(_fbb);
7019 builder_.add_half_pixel_centers(half_pixel_centers);
7020 builder_.add_align_corners(align_corners);
7021 return builder_.Finish();
7022 }
7023
7024 flatbuffers::Offset<ResizeBilinearOptions> CreateResizeBilinearOptions(flatbuffers::FlatBufferBuilder &_fbb, const ResizeBilinearOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7025
7026 struct ResizeNearestNeighborOptionsT : public flatbuffers::NativeTable {
7027 typedef ResizeNearestNeighborOptions TableType;
7028 bool align_corners = false;
7029 bool half_pixel_centers = false;
7030 };
7031
7032 struct ResizeNearestNeighborOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
7033 typedef ResizeNearestNeighborOptionsT NativeTableType;
7034 typedef ResizeNearestNeighborOptionsBuilder Builder;
7035 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
7036 VT_ALIGN_CORNERS = 4,
7037 VT_HALF_PIXEL_CENTERS = 6
7038 };
7039 bool align_corners() const {
7040 return GetField<uint8_t>(VT_ALIGN_CORNERS, 0) != 0;
7041 }
7042 bool mutate_align_corners(bool _align_corners = 0) {
7043 return SetField<uint8_t>(VT_ALIGN_CORNERS, static_cast<uint8_t>(_align_corners), 0);
7044 }
7045 bool half_pixel_centers() const {
7046 return GetField<uint8_t>(VT_HALF_PIXEL_CENTERS, 0) != 0;
7047 }
7048 bool mutate_half_pixel_centers(bool _half_pixel_centers = 0) {
7049 return SetField<uint8_t>(VT_HALF_PIXEL_CENTERS, static_cast<uint8_t>(_half_pixel_centers), 0);
7050 }
7051 bool Verify(flatbuffers::Verifier &verifier) const {
7052 return VerifyTableStart(verifier) &&
7053 VerifyField<uint8_t>(verifier, VT_ALIGN_CORNERS, 1) &&
7054 VerifyField<uint8_t>(verifier, VT_HALF_PIXEL_CENTERS, 1) &&
7055 verifier.EndTable();
7056 }
7057 ResizeNearestNeighborOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7058 void UnPackTo(ResizeNearestNeighborOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7059 static flatbuffers::Offset<ResizeNearestNeighborOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ResizeNearestNeighborOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7060 };
7061
7062 struct ResizeNearestNeighborOptionsBuilder {
7063 typedef ResizeNearestNeighborOptions Table;
7064 flatbuffers::FlatBufferBuilder &fbb_;
7065 flatbuffers::uoffset_t start_;
7066 void add_align_corners(bool align_corners) {
7067 fbb_.AddElement<uint8_t>(ResizeNearestNeighborOptions::VT_ALIGN_CORNERS, static_cast<uint8_t>(align_corners), 0);
7068 }
7069 void add_half_pixel_centers(bool half_pixel_centers) {
7070 fbb_.AddElement<uint8_t>(ResizeNearestNeighborOptions::VT_HALF_PIXEL_CENTERS, static_cast<uint8_t>(half_pixel_centers), 0);
7071 }
7072 explicit ResizeNearestNeighborOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
7073 : fbb_(_fbb) {
7074 start_ = fbb_.StartTable();
7075 }
7076 flatbuffers::Offset<ResizeNearestNeighborOptions> Finish() {
7077 const auto end = fbb_.EndTable(start_);
7078 auto o = flatbuffers::Offset<ResizeNearestNeighborOptions>(end);
7079 return o;
7080 }
7081 };
7082
7083 inline flatbuffers::Offset<ResizeNearestNeighborOptions> CreateResizeNearestNeighborOptions(
7084 flatbuffers::FlatBufferBuilder &_fbb,
7085 bool align_corners = false,
7086 bool half_pixel_centers = false) {
7087 ResizeNearestNeighborOptionsBuilder builder_(_fbb);
7088 builder_.add_half_pixel_centers(half_pixel_centers);
7089 builder_.add_align_corners(align_corners);
7090 return builder_.Finish();
7091 }
7092
7093 flatbuffers::Offset<ResizeNearestNeighborOptions> CreateResizeNearestNeighborOptions(flatbuffers::FlatBufferBuilder &_fbb, const ResizeNearestNeighborOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7094
7095 struct CallOptionsT : public flatbuffers::NativeTable {
7096 typedef CallOptions TableType;
7097 uint32_t subgraph = 0;
7098 };
7099
7100 struct CallOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
7101 typedef CallOptionsT NativeTableType;
7102 typedef CallOptionsBuilder Builder;
7103 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
7104 VT_SUBGRAPH = 4
7105 };
7106 uint32_t subgraph() const {
7107 return GetField<uint32_t>(VT_SUBGRAPH, 0);
7108 }
7109 bool mutate_subgraph(uint32_t _subgraph = 0) {
7110 return SetField<uint32_t>(VT_SUBGRAPH, _subgraph, 0);
7111 }
7112 bool Verify(flatbuffers::Verifier &verifier) const {
7113 return VerifyTableStart(verifier) &&
7114 VerifyField<uint32_t>(verifier, VT_SUBGRAPH, 4) &&
7115 verifier.EndTable();
7116 }
7117 CallOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7118 void UnPackTo(CallOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7119 static flatbuffers::Offset<CallOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const CallOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7120 };
7121
7122 struct CallOptionsBuilder {
7123 typedef CallOptions Table;
7124 flatbuffers::FlatBufferBuilder &fbb_;
7125 flatbuffers::uoffset_t start_;
7126 void add_subgraph(uint32_t subgraph) {
7127 fbb_.AddElement<uint32_t>(CallOptions::VT_SUBGRAPH, subgraph, 0);
7128 }
7129 explicit CallOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
7130 : fbb_(_fbb) {
7131 start_ = fbb_.StartTable();
7132 }
7133 flatbuffers::Offset<CallOptions> Finish() {
7134 const auto end = fbb_.EndTable(start_);
7135 auto o = flatbuffers::Offset<CallOptions>(end);
7136 return o;
7137 }
7138 };
7139
7140 inline flatbuffers::Offset<CallOptions> CreateCallOptions(
7141 flatbuffers::FlatBufferBuilder &_fbb,
7142 uint32_t subgraph = 0) {
7143 CallOptionsBuilder builder_(_fbb);
7144 builder_.add_subgraph(subgraph);
7145 return builder_.Finish();
7146 }
7147
7148 flatbuffers::Offset<CallOptions> CreateCallOptions(flatbuffers::FlatBufferBuilder &_fbb, const CallOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7149
7150 struct PadOptionsT : public flatbuffers::NativeTable {
7151 typedef PadOptions TableType;
7152 };
7153
7154 struct PadOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
7155 typedef PadOptionsT NativeTableType;
7156 typedef PadOptionsBuilder Builder;
7157 bool Verify(flatbuffers::Verifier &verifier) const {
7158 return VerifyTableStart(verifier) &&
7159 verifier.EndTable();
7160 }
7161 PadOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7162 void UnPackTo(PadOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7163 static flatbuffers::Offset<PadOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const PadOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7164 };
7165
7166 struct PadOptionsBuilder {
7167 typedef PadOptions Table;
7168 flatbuffers::FlatBufferBuilder &fbb_;
7169 flatbuffers::uoffset_t start_;
7170 explicit PadOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
7171 : fbb_(_fbb) {
7172 start_ = fbb_.StartTable();
7173 }
7174 flatbuffers::Offset<PadOptions> Finish() {
7175 const auto end = fbb_.EndTable(start_);
7176 auto o = flatbuffers::Offset<PadOptions>(end);
7177 return o;
7178 }
7179 };
7180
7181 inline flatbuffers::Offset<PadOptions> CreatePadOptions(
7182 flatbuffers::FlatBufferBuilder &_fbb) {
7183 PadOptionsBuilder builder_(_fbb);
7184 return builder_.Finish();
7185 }
7186
7187 flatbuffers::Offset<PadOptions> CreatePadOptions(flatbuffers::FlatBufferBuilder &_fbb, const PadOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7188
7189 struct PadV2OptionsT : public flatbuffers::NativeTable {
7190 typedef PadV2Options TableType;
7191 };
7192
7193 struct PadV2Options FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
7194 typedef PadV2OptionsT NativeTableType;
7195 typedef PadV2OptionsBuilder Builder;
7196 bool Verify(flatbuffers::Verifier &verifier) const {
7197 return VerifyTableStart(verifier) &&
7198 verifier.EndTable();
7199 }
7200 PadV2OptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7201 void UnPackTo(PadV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7202 static flatbuffers::Offset<PadV2Options> Pack(flatbuffers::FlatBufferBuilder &_fbb, const PadV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7203 };
7204
7205 struct PadV2OptionsBuilder {
7206 typedef PadV2Options Table;
7207 flatbuffers::FlatBufferBuilder &fbb_;
7208 flatbuffers::uoffset_t start_;
7209 explicit PadV2OptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
7210 : fbb_(_fbb) {
7211 start_ = fbb_.StartTable();
7212 }
7213 flatbuffers::Offset<PadV2Options> Finish() {
7214 const auto end = fbb_.EndTable(start_);
7215 auto o = flatbuffers::Offset<PadV2Options>(end);
7216 return o;
7217 }
7218 };
7219
7220 inline flatbuffers::Offset<PadV2Options> CreatePadV2Options(
7221 flatbuffers::FlatBufferBuilder &_fbb) {
7222 PadV2OptionsBuilder builder_(_fbb);
7223 return builder_.Finish();
7224 }
7225
7226 flatbuffers::Offset<PadV2Options> CreatePadV2Options(flatbuffers::FlatBufferBuilder &_fbb, const PadV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7227
7228 struct ReshapeOptionsT : public flatbuffers::NativeTable {
7229 typedef ReshapeOptions TableType;
7230 std::vector<int32_t> new_shape{};
7231 };
7232
7233 struct ReshapeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
7234 typedef ReshapeOptionsT NativeTableType;
7235 typedef ReshapeOptionsBuilder Builder;
7236 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
7237 VT_NEW_SHAPE = 4
7238 };
7239 const flatbuffers::Vector<int32_t> *new_shape() const {
7240 return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_NEW_SHAPE);
7241 }
7242 flatbuffers::Vector<int32_t> *mutable_new_shape() {
7243 return GetPointer<flatbuffers::Vector<int32_t> *>(VT_NEW_SHAPE);
7244 }
7245 bool Verify(flatbuffers::Verifier &verifier) const {
7246 return VerifyTableStart(verifier) &&
7247 VerifyOffset(verifier, VT_NEW_SHAPE) &&
7248 verifier.VerifyVector(new_shape()) &&
7249 verifier.EndTable();
7250 }
7251 ReshapeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7252 void UnPackTo(ReshapeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7253 static flatbuffers::Offset<ReshapeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReshapeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7254 };
7255
7256 struct ReshapeOptionsBuilder {
7257 typedef ReshapeOptions Table;
7258 flatbuffers::FlatBufferBuilder &fbb_;
7259 flatbuffers::uoffset_t start_;
7260 void add_new_shape(flatbuffers::Offset<flatbuffers::Vector<int32_t>> new_shape) {
7261 fbb_.AddOffset(ReshapeOptions::VT_NEW_SHAPE, new_shape);
7262 }
7263 explicit ReshapeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
7264 : fbb_(_fbb) {
7265 start_ = fbb_.StartTable();
7266 }
7267 flatbuffers::Offset<ReshapeOptions> Finish() {
7268 const auto end = fbb_.EndTable(start_);
7269 auto o = flatbuffers::Offset<ReshapeOptions>(end);
7270 return o;
7271 }
7272 };
7273
7274 inline flatbuffers::Offset<ReshapeOptions> CreateReshapeOptions(
7275 flatbuffers::FlatBufferBuilder &_fbb,
7276 flatbuffers::Offset<flatbuffers::Vector<int32_t>> new_shape = 0) {
7277 ReshapeOptionsBuilder builder_(_fbb);
7278 builder_.add_new_shape(new_shape);
7279 return builder_.Finish();
7280 }
7281
7282 inline flatbuffers::Offset<ReshapeOptions> CreateReshapeOptionsDirect(
7283 flatbuffers::FlatBufferBuilder &_fbb,
7284 const std::vector<int32_t> *new_shape = nullptr) {
7285 auto new_shape__ = new_shape ? _fbb.CreateVector<int32_t>(*new_shape) : 0;
7286 return tflite::CreateReshapeOptions(
7287 _fbb,
7288 new_shape__);
7289 }
7290
7291 flatbuffers::Offset<ReshapeOptions> CreateReshapeOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReshapeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7292
7293 struct SpaceToBatchNDOptionsT : public flatbuffers::NativeTable {
7294 typedef SpaceToBatchNDOptions TableType;
7295 };
7296
7297 struct SpaceToBatchNDOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
7298 typedef SpaceToBatchNDOptionsT NativeTableType;
7299 typedef SpaceToBatchNDOptionsBuilder Builder;
7300 bool Verify(flatbuffers::Verifier &verifier) const {
7301 return VerifyTableStart(verifier) &&
7302 verifier.EndTable();
7303 }
7304 SpaceToBatchNDOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7305 void UnPackTo(SpaceToBatchNDOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7306 static flatbuffers::Offset<SpaceToBatchNDOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToBatchNDOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7307 };
7308
7309 struct SpaceToBatchNDOptionsBuilder {
7310 typedef SpaceToBatchNDOptions Table;
7311 flatbuffers::FlatBufferBuilder &fbb_;
7312 flatbuffers::uoffset_t start_;
7313 explicit SpaceToBatchNDOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
7314 : fbb_(_fbb) {
7315 start_ = fbb_.StartTable();
7316 }
7317 flatbuffers::Offset<SpaceToBatchNDOptions> Finish() {
7318 const auto end = fbb_.EndTable(start_);
7319 auto o = flatbuffers::Offset<SpaceToBatchNDOptions>(end);
7320 return o;
7321 }
7322 };
7323
7324 inline flatbuffers::Offset<SpaceToBatchNDOptions> CreateSpaceToBatchNDOptions(
7325 flatbuffers::FlatBufferBuilder &_fbb) {
7326 SpaceToBatchNDOptionsBuilder builder_(_fbb);
7327 return builder_.Finish();
7328 }
7329
7330 flatbuffers::Offset<SpaceToBatchNDOptions> CreateSpaceToBatchNDOptions(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToBatchNDOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7331
7332 struct BatchToSpaceNDOptionsT : public flatbuffers::NativeTable {
7333 typedef BatchToSpaceNDOptions TableType;
7334 };
7335
7336 struct BatchToSpaceNDOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
7337 typedef BatchToSpaceNDOptionsT NativeTableType;
7338 typedef BatchToSpaceNDOptionsBuilder Builder;
7339 bool Verify(flatbuffers::Verifier &verifier) const {
7340 return VerifyTableStart(verifier) &&
7341 verifier.EndTable();
7342 }
7343 BatchToSpaceNDOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7344 void UnPackTo(BatchToSpaceNDOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7345 static flatbuffers::Offset<BatchToSpaceNDOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BatchToSpaceNDOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7346 };
7347
7348 struct BatchToSpaceNDOptionsBuilder {
7349 typedef BatchToSpaceNDOptions Table;
7350 flatbuffers::FlatBufferBuilder &fbb_;
7351 flatbuffers::uoffset_t start_;
7352 explicit BatchToSpaceNDOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
7353 : fbb_(_fbb) {
7354 start_ = fbb_.StartTable();
7355 }
7356 flatbuffers::Offset<BatchToSpaceNDOptions> Finish() {
7357 const auto end = fbb_.EndTable(start_);
7358 auto o = flatbuffers::Offset<BatchToSpaceNDOptions>(end);
7359 return o;
7360 }
7361 };
7362
7363 inline flatbuffers::Offset<BatchToSpaceNDOptions> CreateBatchToSpaceNDOptions(
7364 flatbuffers::FlatBufferBuilder &_fbb) {
7365 BatchToSpaceNDOptionsBuilder builder_(_fbb);
7366 return builder_.Finish();
7367 }
7368
7369 flatbuffers::Offset<BatchToSpaceNDOptions> CreateBatchToSpaceNDOptions(flatbuffers::FlatBufferBuilder &_fbb, const BatchToSpaceNDOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7370
7371 struct SkipGramOptionsT : public flatbuffers::NativeTable {
7372 typedef SkipGramOptions TableType;
7373 int32_t ngram_size = 0;
7374 int32_t max_skip_size = 0;
7375 bool include_all_ngrams = false;
7376 };
7377
7378 struct SkipGramOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
7379 typedef SkipGramOptionsT NativeTableType;
7380 typedef SkipGramOptionsBuilder Builder;
7381 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
7382 VT_NGRAM_SIZE = 4,
7383 VT_MAX_SKIP_SIZE = 6,
7384 VT_INCLUDE_ALL_NGRAMS = 8
7385 };
7386 int32_t ngram_size() const {
7387 return GetField<int32_t>(VT_NGRAM_SIZE, 0);
7388 }
7389 bool mutate_ngram_size(int32_t _ngram_size = 0) {
7390 return SetField<int32_t>(VT_NGRAM_SIZE, _ngram_size, 0);
7391 }
7392 int32_t max_skip_size() const {
7393 return GetField<int32_t>(VT_MAX_SKIP_SIZE, 0);
7394 }
7395 bool mutate_max_skip_size(int32_t _max_skip_size = 0) {
7396 return SetField<int32_t>(VT_MAX_SKIP_SIZE, _max_skip_size, 0);
7397 }
7398 bool include_all_ngrams() const {
7399 return GetField<uint8_t>(VT_INCLUDE_ALL_NGRAMS, 0) != 0;
7400 }
7401 bool mutate_include_all_ngrams(bool _include_all_ngrams = 0) {
7402 return SetField<uint8_t>(VT_INCLUDE_ALL_NGRAMS, static_cast<uint8_t>(_include_all_ngrams), 0);
7403 }
7404 bool Verify(flatbuffers::Verifier &verifier) const {
7405 return VerifyTableStart(verifier) &&
7406 VerifyField<int32_t>(verifier, VT_NGRAM_SIZE, 4) &&
7407 VerifyField<int32_t>(verifier, VT_MAX_SKIP_SIZE, 4) &&
7408 VerifyField<uint8_t>(verifier, VT_INCLUDE_ALL_NGRAMS, 1) &&
7409 verifier.EndTable();
7410 }
7411 SkipGramOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7412 void UnPackTo(SkipGramOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7413 static flatbuffers::Offset<SkipGramOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SkipGramOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7414 };
7415
7416 struct SkipGramOptionsBuilder {
7417 typedef SkipGramOptions Table;
7418 flatbuffers::FlatBufferBuilder &fbb_;
7419 flatbuffers::uoffset_t start_;
7420 void add_ngram_size(int32_t ngram_size) {
7421 fbb_.AddElement<int32_t>(SkipGramOptions::VT_NGRAM_SIZE, ngram_size, 0);
7422 }
7423 void add_max_skip_size(int32_t max_skip_size) {
7424 fbb_.AddElement<int32_t>(SkipGramOptions::VT_MAX_SKIP_SIZE, max_skip_size, 0);
7425 }
7426 void add_include_all_ngrams(bool include_all_ngrams) {
7427 fbb_.AddElement<uint8_t>(SkipGramOptions::VT_INCLUDE_ALL_NGRAMS, static_cast<uint8_t>(include_all_ngrams), 0);
7428 }
7429 explicit SkipGramOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
7430 : fbb_(_fbb) {
7431 start_ = fbb_.StartTable();
7432 }
7433 flatbuffers::Offset<SkipGramOptions> Finish() {
7434 const auto end = fbb_.EndTable(start_);
7435 auto o = flatbuffers::Offset<SkipGramOptions>(end);
7436 return o;
7437 }
7438 };
7439
7440 inline flatbuffers::Offset<SkipGramOptions> CreateSkipGramOptions(
7441 flatbuffers::FlatBufferBuilder &_fbb,
7442 int32_t ngram_size = 0,
7443 int32_t max_skip_size = 0,
7444 bool include_all_ngrams = false) {
7445 SkipGramOptionsBuilder builder_(_fbb);
7446 builder_.add_max_skip_size(max_skip_size);
7447 builder_.add_ngram_size(ngram_size);
7448 builder_.add_include_all_ngrams(include_all_ngrams);
7449 return builder_.Finish();
7450 }
7451
7452 flatbuffers::Offset<SkipGramOptions> CreateSkipGramOptions(flatbuffers::FlatBufferBuilder &_fbb, const SkipGramOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7453
7454 struct SpaceToDepthOptionsT : public flatbuffers::NativeTable {
7455 typedef SpaceToDepthOptions TableType;
7456 int32_t block_size = 0;
7457 };
7458
7459 struct SpaceToDepthOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
7460 typedef SpaceToDepthOptionsT NativeTableType;
7461 typedef SpaceToDepthOptionsBuilder Builder;
7462 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
7463 VT_BLOCK_SIZE = 4
7464 };
7465 int32_t block_size() const {
7466 return GetField<int32_t>(VT_BLOCK_SIZE, 0);
7467 }
7468 bool mutate_block_size(int32_t _block_size = 0) {
7469 return SetField<int32_t>(VT_BLOCK_SIZE, _block_size, 0);
7470 }
7471 bool Verify(flatbuffers::Verifier &verifier) const {
7472 return VerifyTableStart(verifier) &&
7473 VerifyField<int32_t>(verifier, VT_BLOCK_SIZE, 4) &&
7474 verifier.EndTable();
7475 }
7476 SpaceToDepthOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7477 void UnPackTo(SpaceToDepthOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7478 static flatbuffers::Offset<SpaceToDepthOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToDepthOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7479 };
7480
7481 struct SpaceToDepthOptionsBuilder {
7482 typedef SpaceToDepthOptions Table;
7483 flatbuffers::FlatBufferBuilder &fbb_;
7484 flatbuffers::uoffset_t start_;
7485 void add_block_size(int32_t block_size) {
7486 fbb_.AddElement<int32_t>(SpaceToDepthOptions::VT_BLOCK_SIZE, block_size, 0);
7487 }
7488 explicit SpaceToDepthOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
7489 : fbb_(_fbb) {
7490 start_ = fbb_.StartTable();
7491 }
7492 flatbuffers::Offset<SpaceToDepthOptions> Finish() {
7493 const auto end = fbb_.EndTable(start_);
7494 auto o = flatbuffers::Offset<SpaceToDepthOptions>(end);
7495 return o;
7496 }
7497 };
7498
7499 inline flatbuffers::Offset<SpaceToDepthOptions> CreateSpaceToDepthOptions(
7500 flatbuffers::FlatBufferBuilder &_fbb,
7501 int32_t block_size = 0) {
7502 SpaceToDepthOptionsBuilder builder_(_fbb);
7503 builder_.add_block_size(block_size);
7504 return builder_.Finish();
7505 }
7506
7507 flatbuffers::Offset<SpaceToDepthOptions> CreateSpaceToDepthOptions(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToDepthOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7508
7509 struct DepthToSpaceOptionsT : public flatbuffers::NativeTable {
7510 typedef DepthToSpaceOptions TableType;
7511 int32_t block_size = 0;
7512 };
7513
7514 struct DepthToSpaceOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
7515 typedef DepthToSpaceOptionsT NativeTableType;
7516 typedef DepthToSpaceOptionsBuilder Builder;
7517 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
7518 VT_BLOCK_SIZE = 4
7519 };
7520 int32_t block_size() const {
7521 return GetField<int32_t>(VT_BLOCK_SIZE, 0);
7522 }
7523 bool mutate_block_size(int32_t _block_size = 0) {
7524 return SetField<int32_t>(VT_BLOCK_SIZE, _block_size, 0);
7525 }
7526 bool Verify(flatbuffers::Verifier &verifier) const {
7527 return VerifyTableStart(verifier) &&
7528 VerifyField<int32_t>(verifier, VT_BLOCK_SIZE, 4) &&
7529 verifier.EndTable();
7530 }
7531 DepthToSpaceOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7532 void UnPackTo(DepthToSpaceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7533 static flatbuffers::Offset<DepthToSpaceOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DepthToSpaceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7534 };
7535
7536 struct DepthToSpaceOptionsBuilder {
7537 typedef DepthToSpaceOptions Table;
7538 flatbuffers::FlatBufferBuilder &fbb_;
7539 flatbuffers::uoffset_t start_;
7540 void add_block_size(int32_t block_size) {
7541 fbb_.AddElement<int32_t>(DepthToSpaceOptions::VT_BLOCK_SIZE, block_size, 0);
7542 }
7543 explicit DepthToSpaceOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
7544 : fbb_(_fbb) {
7545 start_ = fbb_.StartTable();
7546 }
7547 flatbuffers::Offset<DepthToSpaceOptions> Finish() {
7548 const auto end = fbb_.EndTable(start_);
7549 auto o = flatbuffers::Offset<DepthToSpaceOptions>(end);
7550 return o;
7551 }
7552 };
7553
7554 inline flatbuffers::Offset<DepthToSpaceOptions> CreateDepthToSpaceOptions(
7555 flatbuffers::FlatBufferBuilder &_fbb,
7556 int32_t block_size = 0) {
7557 DepthToSpaceOptionsBuilder builder_(_fbb);
7558 builder_.add_block_size(block_size);
7559 return builder_.Finish();
7560 }
7561
7562 flatbuffers::Offset<DepthToSpaceOptions> CreateDepthToSpaceOptions(flatbuffers::FlatBufferBuilder &_fbb, const DepthToSpaceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7563
7564 struct SubOptionsT : public flatbuffers::NativeTable {
7565 typedef SubOptions TableType;
7566 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
7567 bool pot_scale_int16 = true;
7568 };
7569
7570 struct SubOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
7571 typedef SubOptionsT NativeTableType;
7572 typedef SubOptionsBuilder Builder;
7573 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
7574 VT_FUSED_ACTIVATION_FUNCTION = 4,
7575 VT_POT_SCALE_INT16 = 6
7576 };
7577 tflite::ActivationFunctionType fused_activation_function() const {
7578 return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
7579 }
7580 bool mutate_fused_activation_function(tflite::ActivationFunctionType _fused_activation_function = static_cast<tflite::ActivationFunctionType>(0)) {
7581 return SetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(_fused_activation_function), 0);
7582 }
7583 bool pot_scale_int16() const {
7584 return GetField<uint8_t>(VT_POT_SCALE_INT16, 1) != 0;
7585 }
7586 bool mutate_pot_scale_int16(bool _pot_scale_int16 = 1) {
7587 return SetField<uint8_t>(VT_POT_SCALE_INT16, static_cast<uint8_t>(_pot_scale_int16), 1);
7588 }
7589 bool Verify(flatbuffers::Verifier &verifier) const {
7590 return VerifyTableStart(verifier) &&
7591 VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
7592 VerifyField<uint8_t>(verifier, VT_POT_SCALE_INT16, 1) &&
7593 verifier.EndTable();
7594 }
7595 SubOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7596 void UnPackTo(SubOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7597 static flatbuffers::Offset<SubOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SubOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7598 };
7599
7600 struct SubOptionsBuilder {
7601 typedef SubOptions Table;
7602 flatbuffers::FlatBufferBuilder &fbb_;
7603 flatbuffers::uoffset_t start_;
7604 void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
7605 fbb_.AddElement<int8_t>(SubOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
7606 }
7607 void add_pot_scale_int16(bool pot_scale_int16) {
7608 fbb_.AddElement<uint8_t>(SubOptions::VT_POT_SCALE_INT16, static_cast<uint8_t>(pot_scale_int16), 1);
7609 }
7610 explicit SubOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
7611 : fbb_(_fbb) {
7612 start_ = fbb_.StartTable();
7613 }
7614 flatbuffers::Offset<SubOptions> Finish() {
7615 const auto end = fbb_.EndTable(start_);
7616 auto o = flatbuffers::Offset<SubOptions>(end);
7617 return o;
7618 }
7619 };
7620
7621 inline flatbuffers::Offset<SubOptions> CreateSubOptions(
7622 flatbuffers::FlatBufferBuilder &_fbb,
7623 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
7624 bool pot_scale_int16 = true) {
7625 SubOptionsBuilder builder_(_fbb);
7626 builder_.add_pot_scale_int16(pot_scale_int16);
7627 builder_.add_fused_activation_function(fused_activation_function);
7628 return builder_.Finish();
7629 }
7630
7631 flatbuffers::Offset<SubOptions> CreateSubOptions(flatbuffers::FlatBufferBuilder &_fbb, const SubOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7632
7633 struct DivOptionsT : public flatbuffers::NativeTable {
7634 typedef DivOptions TableType;
7635 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
7636 };
7637
7638 struct DivOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
7639 typedef DivOptionsT NativeTableType;
7640 typedef DivOptionsBuilder Builder;
7641 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
7642 VT_FUSED_ACTIVATION_FUNCTION = 4
7643 };
7644 tflite::ActivationFunctionType fused_activation_function() const {
7645 return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
7646 }
7647 bool mutate_fused_activation_function(tflite::ActivationFunctionType _fused_activation_function = static_cast<tflite::ActivationFunctionType>(0)) {
7648 return SetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(_fused_activation_function), 0);
7649 }
7650 bool Verify(flatbuffers::Verifier &verifier) const {
7651 return VerifyTableStart(verifier) &&
7652 VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
7653 verifier.EndTable();
7654 }
7655 DivOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7656 void UnPackTo(DivOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7657 static flatbuffers::Offset<DivOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DivOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7658 };
7659
7660 struct DivOptionsBuilder {
7661 typedef DivOptions Table;
7662 flatbuffers::FlatBufferBuilder &fbb_;
7663 flatbuffers::uoffset_t start_;
7664 void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
7665 fbb_.AddElement<int8_t>(DivOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
7666 }
7667 explicit DivOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
7668 : fbb_(_fbb) {
7669 start_ = fbb_.StartTable();
7670 }
7671 flatbuffers::Offset<DivOptions> Finish() {
7672 const auto end = fbb_.EndTable(start_);
7673 auto o = flatbuffers::Offset<DivOptions>(end);
7674 return o;
7675 }
7676 };
7677
7678 inline flatbuffers::Offset<DivOptions> CreateDivOptions(
7679 flatbuffers::FlatBufferBuilder &_fbb,
7680 tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE) {
7681 DivOptionsBuilder builder_(_fbb);
7682 builder_.add_fused_activation_function(fused_activation_function);
7683 return builder_.Finish();
7684 }
7685
7686 flatbuffers::Offset<DivOptions> CreateDivOptions(flatbuffers::FlatBufferBuilder &_fbb, const DivOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7687
7688 struct TopKV2OptionsT : public flatbuffers::NativeTable {
7689 typedef TopKV2Options TableType;
7690 };
7691
7692 struct TopKV2Options FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
7693 typedef TopKV2OptionsT NativeTableType;
7694 typedef TopKV2OptionsBuilder Builder;
7695 bool Verify(flatbuffers::Verifier &verifier) const {
7696 return VerifyTableStart(verifier) &&
7697 verifier.EndTable();
7698 }
7699 TopKV2OptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7700 void UnPackTo(TopKV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7701 static flatbuffers::Offset<TopKV2Options> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TopKV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7702 };
7703
7704 struct TopKV2OptionsBuilder {
7705 typedef TopKV2Options Table;
7706 flatbuffers::FlatBufferBuilder &fbb_;
7707 flatbuffers::uoffset_t start_;
7708 explicit TopKV2OptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
7709 : fbb_(_fbb) {
7710 start_ = fbb_.StartTable();
7711 }
7712 flatbuffers::Offset<TopKV2Options> Finish() {
7713 const auto end = fbb_.EndTable(start_);
7714 auto o = flatbuffers::Offset<TopKV2Options>(end);
7715 return o;
7716 }
7717 };
7718
7719 inline flatbuffers::Offset<TopKV2Options> CreateTopKV2Options(
7720 flatbuffers::FlatBufferBuilder &_fbb) {
7721 TopKV2OptionsBuilder builder_(_fbb);
7722 return builder_.Finish();
7723 }
7724
7725 flatbuffers::Offset<TopKV2Options> CreateTopKV2Options(flatbuffers::FlatBufferBuilder &_fbb, const TopKV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7726
7727 struct EmbeddingLookupSparseOptionsT : public flatbuffers::NativeTable {
7728 typedef EmbeddingLookupSparseOptions TableType;
7729 tflite::CombinerType combiner = tflite::CombinerType_SUM;
7730 };
7731
7732 struct EmbeddingLookupSparseOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
7733 typedef EmbeddingLookupSparseOptionsT NativeTableType;
7734 typedef EmbeddingLookupSparseOptionsBuilder Builder;
7735 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
7736 VT_COMBINER = 4
7737 };
7738 tflite::CombinerType combiner() const {
7739 return static_cast<tflite::CombinerType>(GetField<int8_t>(VT_COMBINER, 0));
7740 }
7741 bool mutate_combiner(tflite::CombinerType _combiner = static_cast<tflite::CombinerType>(0)) {
7742 return SetField<int8_t>(VT_COMBINER, static_cast<int8_t>(_combiner), 0);
7743 }
7744 bool Verify(flatbuffers::Verifier &verifier) const {
7745 return VerifyTableStart(verifier) &&
7746 VerifyField<int8_t>(verifier, VT_COMBINER, 1) &&
7747 verifier.EndTable();
7748 }
7749 EmbeddingLookupSparseOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7750 void UnPackTo(EmbeddingLookupSparseOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7751 static flatbuffers::Offset<EmbeddingLookupSparseOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const EmbeddingLookupSparseOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7752 };
7753
7754 struct EmbeddingLookupSparseOptionsBuilder {
7755 typedef EmbeddingLookupSparseOptions Table;
7756 flatbuffers::FlatBufferBuilder &fbb_;
7757 flatbuffers::uoffset_t start_;
7758 void add_combiner(tflite::CombinerType combiner) {
7759 fbb_.AddElement<int8_t>(EmbeddingLookupSparseOptions::VT_COMBINER, static_cast<int8_t>(combiner), 0);
7760 }
7761 explicit EmbeddingLookupSparseOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
7762 : fbb_(_fbb) {
7763 start_ = fbb_.StartTable();
7764 }
7765 flatbuffers::Offset<EmbeddingLookupSparseOptions> Finish() {
7766 const auto end = fbb_.EndTable(start_);
7767 auto o = flatbuffers::Offset<EmbeddingLookupSparseOptions>(end);
7768 return o;
7769 }
7770 };
7771
7772 inline flatbuffers::Offset<EmbeddingLookupSparseOptions> CreateEmbeddingLookupSparseOptions(
7773 flatbuffers::FlatBufferBuilder &_fbb,
7774 tflite::CombinerType combiner = tflite::CombinerType_SUM) {
7775 EmbeddingLookupSparseOptionsBuilder builder_(_fbb);
7776 builder_.add_combiner(combiner);
7777 return builder_.Finish();
7778 }
7779
7780 flatbuffers::Offset<EmbeddingLookupSparseOptions> CreateEmbeddingLookupSparseOptions(flatbuffers::FlatBufferBuilder &_fbb, const EmbeddingLookupSparseOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7781
7782 struct GatherOptionsT : public flatbuffers::NativeTable {
7783 typedef GatherOptions TableType;
7784 int32_t axis = 0;
7785 int32_t batch_dims = 0;
7786 };
7787
7788 struct GatherOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
7789 typedef GatherOptionsT NativeTableType;
7790 typedef GatherOptionsBuilder Builder;
7791 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
7792 VT_AXIS = 4,
7793 VT_BATCH_DIMS = 6
7794 };
7795 int32_t axis() const {
7796 return GetField<int32_t>(VT_AXIS, 0);
7797 }
7798 bool mutate_axis(int32_t _axis = 0) {
7799 return SetField<int32_t>(VT_AXIS, _axis, 0);
7800 }
7801 int32_t batch_dims() const {
7802 return GetField<int32_t>(VT_BATCH_DIMS, 0);
7803 }
7804 bool mutate_batch_dims(int32_t _batch_dims = 0) {
7805 return SetField<int32_t>(VT_BATCH_DIMS, _batch_dims, 0);
7806 }
7807 bool Verify(flatbuffers::Verifier &verifier) const {
7808 return VerifyTableStart(verifier) &&
7809 VerifyField<int32_t>(verifier, VT_AXIS, 4) &&
7810 VerifyField<int32_t>(verifier, VT_BATCH_DIMS, 4) &&
7811 verifier.EndTable();
7812 }
7813 GatherOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7814 void UnPackTo(GatherOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7815 static flatbuffers::Offset<GatherOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const GatherOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7816 };
7817
7818 struct GatherOptionsBuilder {
7819 typedef GatherOptions Table;
7820 flatbuffers::FlatBufferBuilder &fbb_;
7821 flatbuffers::uoffset_t start_;
7822 void add_axis(int32_t axis) {
7823 fbb_.AddElement<int32_t>(GatherOptions::VT_AXIS, axis, 0);
7824 }
7825 void add_batch_dims(int32_t batch_dims) {
7826 fbb_.AddElement<int32_t>(GatherOptions::VT_BATCH_DIMS, batch_dims, 0);
7827 }
7828 explicit GatherOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
7829 : fbb_(_fbb) {
7830 start_ = fbb_.StartTable();
7831 }
7832 flatbuffers::Offset<GatherOptions> Finish() {
7833 const auto end = fbb_.EndTable(start_);
7834 auto o = flatbuffers::Offset<GatherOptions>(end);
7835 return o;
7836 }
7837 };
7838
7839 inline flatbuffers::Offset<GatherOptions> CreateGatherOptions(
7840 flatbuffers::FlatBufferBuilder &_fbb,
7841 int32_t axis = 0,
7842 int32_t batch_dims = 0) {
7843 GatherOptionsBuilder builder_(_fbb);
7844 builder_.add_batch_dims(batch_dims);
7845 builder_.add_axis(axis);
7846 return builder_.Finish();
7847 }
7848
7849 flatbuffers::Offset<GatherOptions> CreateGatherOptions(flatbuffers::FlatBufferBuilder &_fbb, const GatherOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7850
7851 struct TransposeOptionsT : public flatbuffers::NativeTable {
7852 typedef TransposeOptions TableType;
7853 };
7854
7855 struct TransposeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
7856 typedef TransposeOptionsT NativeTableType;
7857 typedef TransposeOptionsBuilder Builder;
7858 bool Verify(flatbuffers::Verifier &verifier) const {
7859 return VerifyTableStart(verifier) &&
7860 verifier.EndTable();
7861 }
7862 TransposeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7863 void UnPackTo(TransposeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7864 static flatbuffers::Offset<TransposeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TransposeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7865 };
7866
7867 struct TransposeOptionsBuilder {
7868 typedef TransposeOptions Table;
7869 flatbuffers::FlatBufferBuilder &fbb_;
7870 flatbuffers::uoffset_t start_;
7871 explicit TransposeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
7872 : fbb_(_fbb) {
7873 start_ = fbb_.StartTable();
7874 }
7875 flatbuffers::Offset<TransposeOptions> Finish() {
7876 const auto end = fbb_.EndTable(start_);
7877 auto o = flatbuffers::Offset<TransposeOptions>(end);
7878 return o;
7879 }
7880 };
7881
7882 inline flatbuffers::Offset<TransposeOptions> CreateTransposeOptions(
7883 flatbuffers::FlatBufferBuilder &_fbb) {
7884 TransposeOptionsBuilder builder_(_fbb);
7885 return builder_.Finish();
7886 }
7887
7888 flatbuffers::Offset<TransposeOptions> CreateTransposeOptions(flatbuffers::FlatBufferBuilder &_fbb, const TransposeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7889
7890 struct ExpOptionsT : public flatbuffers::NativeTable {
7891 typedef ExpOptions TableType;
7892 };
7893
7894 struct ExpOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
7895 typedef ExpOptionsT NativeTableType;
7896 typedef ExpOptionsBuilder Builder;
7897 bool Verify(flatbuffers::Verifier &verifier) const {
7898 return VerifyTableStart(verifier) &&
7899 verifier.EndTable();
7900 }
7901 ExpOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7902 void UnPackTo(ExpOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7903 static flatbuffers::Offset<ExpOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ExpOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7904 };
7905
7906 struct ExpOptionsBuilder {
7907 typedef ExpOptions Table;
7908 flatbuffers::FlatBufferBuilder &fbb_;
7909 flatbuffers::uoffset_t start_;
7910 explicit ExpOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
7911 : fbb_(_fbb) {
7912 start_ = fbb_.StartTable();
7913 }
7914 flatbuffers::Offset<ExpOptions> Finish() {
7915 const auto end = fbb_.EndTable(start_);
7916 auto o = flatbuffers::Offset<ExpOptions>(end);
7917 return o;
7918 }
7919 };
7920
7921 inline flatbuffers::Offset<ExpOptions> CreateExpOptions(
7922 flatbuffers::FlatBufferBuilder &_fbb) {
7923 ExpOptionsBuilder builder_(_fbb);
7924 return builder_.Finish();
7925 }
7926
7927 flatbuffers::Offset<ExpOptions> CreateExpOptions(flatbuffers::FlatBufferBuilder &_fbb, const ExpOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7928
7929 struct CosOptionsT : public flatbuffers::NativeTable {
7930 typedef CosOptions TableType;
7931 };
7932
7933 struct CosOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
7934 typedef CosOptionsT NativeTableType;
7935 typedef CosOptionsBuilder Builder;
7936 bool Verify(flatbuffers::Verifier &verifier) const {
7937 return VerifyTableStart(verifier) &&
7938 verifier.EndTable();
7939 }
7940 CosOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7941 void UnPackTo(CosOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7942 static flatbuffers::Offset<CosOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const CosOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7943 };
7944
7945 struct CosOptionsBuilder {
7946 typedef CosOptions Table;
7947 flatbuffers::FlatBufferBuilder &fbb_;
7948 flatbuffers::uoffset_t start_;
7949 explicit CosOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
7950 : fbb_(_fbb) {
7951 start_ = fbb_.StartTable();
7952 }
7953 flatbuffers::Offset<CosOptions> Finish() {
7954 const auto end = fbb_.EndTable(start_);
7955 auto o = flatbuffers::Offset<CosOptions>(end);
7956 return o;
7957 }
7958 };
7959
7960 inline flatbuffers::Offset<CosOptions> CreateCosOptions(
7961 flatbuffers::FlatBufferBuilder &_fbb) {
7962 CosOptionsBuilder builder_(_fbb);
7963 return builder_.Finish();
7964 }
7965
7966 flatbuffers::Offset<CosOptions> CreateCosOptions(flatbuffers::FlatBufferBuilder &_fbb, const CosOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7967
7968 struct ReducerOptionsT : public flatbuffers::NativeTable {
7969 typedef ReducerOptions TableType;
7970 bool keep_dims = false;
7971 };
7972
7973 struct ReducerOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
7974 typedef ReducerOptionsT NativeTableType;
7975 typedef ReducerOptionsBuilder Builder;
7976 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
7977 VT_KEEP_DIMS = 4
7978 };
7979 bool keep_dims() const {
7980 return GetField<uint8_t>(VT_KEEP_DIMS, 0) != 0;
7981 }
7982 bool mutate_keep_dims(bool _keep_dims = 0) {
7983 return SetField<uint8_t>(VT_KEEP_DIMS, static_cast<uint8_t>(_keep_dims), 0);
7984 }
7985 bool Verify(flatbuffers::Verifier &verifier) const {
7986 return VerifyTableStart(verifier) &&
7987 VerifyField<uint8_t>(verifier, VT_KEEP_DIMS, 1) &&
7988 verifier.EndTable();
7989 }
7990 ReducerOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7991 void UnPackTo(ReducerOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
7992 static flatbuffers::Offset<ReducerOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReducerOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
7993 };
7994
7995 struct ReducerOptionsBuilder {
7996 typedef ReducerOptions Table;
7997 flatbuffers::FlatBufferBuilder &fbb_;
7998 flatbuffers::uoffset_t start_;
7999 void add_keep_dims(bool keep_dims) {
8000 fbb_.AddElement<uint8_t>(ReducerOptions::VT_KEEP_DIMS, static_cast<uint8_t>(keep_dims), 0);
8001 }
8002 explicit ReducerOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
8003 : fbb_(_fbb) {
8004 start_ = fbb_.StartTable();
8005 }
8006 flatbuffers::Offset<ReducerOptions> Finish() {
8007 const auto end = fbb_.EndTable(start_);
8008 auto o = flatbuffers::Offset<ReducerOptions>(end);
8009 return o;
8010 }
8011 };
8012
8013 inline flatbuffers::Offset<ReducerOptions> CreateReducerOptions(
8014 flatbuffers::FlatBufferBuilder &_fbb,
8015 bool keep_dims = false) {
8016 ReducerOptionsBuilder builder_(_fbb);
8017 builder_.add_keep_dims(keep_dims);
8018 return builder_.Finish();
8019 }
8020
8021 flatbuffers::Offset<ReducerOptions> CreateReducerOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReducerOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8022
8023 struct SqueezeOptionsT : public flatbuffers::NativeTable {
8024 typedef SqueezeOptions TableType;
8025 std::vector<int32_t> squeeze_dims{};
8026 };
8027
8028 struct SqueezeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
8029 typedef SqueezeOptionsT NativeTableType;
8030 typedef SqueezeOptionsBuilder Builder;
8031 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
8032 VT_SQUEEZE_DIMS = 4
8033 };
8034 const flatbuffers::Vector<int32_t> *squeeze_dims() const {
8035 return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_SQUEEZE_DIMS);
8036 }
8037 flatbuffers::Vector<int32_t> *mutable_squeeze_dims() {
8038 return GetPointer<flatbuffers::Vector<int32_t> *>(VT_SQUEEZE_DIMS);
8039 }
8040 bool Verify(flatbuffers::Verifier &verifier) const {
8041 return VerifyTableStart(verifier) &&
8042 VerifyOffset(verifier, VT_SQUEEZE_DIMS) &&
8043 verifier.VerifyVector(squeeze_dims()) &&
8044 verifier.EndTable();
8045 }
8046 SqueezeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8047 void UnPackTo(SqueezeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8048 static flatbuffers::Offset<SqueezeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SqueezeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8049 };
8050
8051 struct SqueezeOptionsBuilder {
8052 typedef SqueezeOptions Table;
8053 flatbuffers::FlatBufferBuilder &fbb_;
8054 flatbuffers::uoffset_t start_;
8055 void add_squeeze_dims(flatbuffers::Offset<flatbuffers::Vector<int32_t>> squeeze_dims) {
8056 fbb_.AddOffset(SqueezeOptions::VT_SQUEEZE_DIMS, squeeze_dims);
8057 }
8058 explicit SqueezeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
8059 : fbb_(_fbb) {
8060 start_ = fbb_.StartTable();
8061 }
8062 flatbuffers::Offset<SqueezeOptions> Finish() {
8063 const auto end = fbb_.EndTable(start_);
8064 auto o = flatbuffers::Offset<SqueezeOptions>(end);
8065 return o;
8066 }
8067 };
8068
8069 inline flatbuffers::Offset<SqueezeOptions> CreateSqueezeOptions(
8070 flatbuffers::FlatBufferBuilder &_fbb,
8071 flatbuffers::Offset<flatbuffers::Vector<int32_t>> squeeze_dims = 0) {
8072 SqueezeOptionsBuilder builder_(_fbb);
8073 builder_.add_squeeze_dims(squeeze_dims);
8074 return builder_.Finish();
8075 }
8076
8077 inline flatbuffers::Offset<SqueezeOptions> CreateSqueezeOptionsDirect(
8078 flatbuffers::FlatBufferBuilder &_fbb,
8079 const std::vector<int32_t> *squeeze_dims = nullptr) {
8080 auto squeeze_dims__ = squeeze_dims ? _fbb.CreateVector<int32_t>(*squeeze_dims) : 0;
8081 return tflite::CreateSqueezeOptions(
8082 _fbb,
8083 squeeze_dims__);
8084 }
8085
8086 flatbuffers::Offset<SqueezeOptions> CreateSqueezeOptions(flatbuffers::FlatBufferBuilder &_fbb, const SqueezeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8087
8088 struct SplitOptionsT : public flatbuffers::NativeTable {
8089 typedef SplitOptions TableType;
8090 int32_t num_splits = 0;
8091 };
8092
8093 struct SplitOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
8094 typedef SplitOptionsT NativeTableType;
8095 typedef SplitOptionsBuilder Builder;
8096 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
8097 VT_NUM_SPLITS = 4
8098 };
8099 int32_t num_splits() const {
8100 return GetField<int32_t>(VT_NUM_SPLITS, 0);
8101 }
8102 bool mutate_num_splits(int32_t _num_splits = 0) {
8103 return SetField<int32_t>(VT_NUM_SPLITS, _num_splits, 0);
8104 }
8105 bool Verify(flatbuffers::Verifier &verifier) const {
8106 return VerifyTableStart(verifier) &&
8107 VerifyField<int32_t>(verifier, VT_NUM_SPLITS, 4) &&
8108 verifier.EndTable();
8109 }
8110 SplitOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8111 void UnPackTo(SplitOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8112 static flatbuffers::Offset<SplitOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SplitOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8113 };
8114
8115 struct SplitOptionsBuilder {
8116 typedef SplitOptions Table;
8117 flatbuffers::FlatBufferBuilder &fbb_;
8118 flatbuffers::uoffset_t start_;
8119 void add_num_splits(int32_t num_splits) {
8120 fbb_.AddElement<int32_t>(SplitOptions::VT_NUM_SPLITS, num_splits, 0);
8121 }
8122 explicit SplitOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
8123 : fbb_(_fbb) {
8124 start_ = fbb_.StartTable();
8125 }
8126 flatbuffers::Offset<SplitOptions> Finish() {
8127 const auto end = fbb_.EndTable(start_);
8128 auto o = flatbuffers::Offset<SplitOptions>(end);
8129 return o;
8130 }
8131 };
8132
8133 inline flatbuffers::Offset<SplitOptions> CreateSplitOptions(
8134 flatbuffers::FlatBufferBuilder &_fbb,
8135 int32_t num_splits = 0) {
8136 SplitOptionsBuilder builder_(_fbb);
8137 builder_.add_num_splits(num_splits);
8138 return builder_.Finish();
8139 }
8140
8141 flatbuffers::Offset<SplitOptions> CreateSplitOptions(flatbuffers::FlatBufferBuilder &_fbb, const SplitOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8142
8143 struct SplitVOptionsT : public flatbuffers::NativeTable {
8144 typedef SplitVOptions TableType;
8145 int32_t num_splits = 0;
8146 };
8147
8148 struct SplitVOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
8149 typedef SplitVOptionsT NativeTableType;
8150 typedef SplitVOptionsBuilder Builder;
8151 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
8152 VT_NUM_SPLITS = 4
8153 };
8154 int32_t num_splits() const {
8155 return GetField<int32_t>(VT_NUM_SPLITS, 0);
8156 }
8157 bool mutate_num_splits(int32_t _num_splits = 0) {
8158 return SetField<int32_t>(VT_NUM_SPLITS, _num_splits, 0);
8159 }
8160 bool Verify(flatbuffers::Verifier &verifier) const {
8161 return VerifyTableStart(verifier) &&
8162 VerifyField<int32_t>(verifier, VT_NUM_SPLITS, 4) &&
8163 verifier.EndTable();
8164 }
8165 SplitVOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8166 void UnPackTo(SplitVOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8167 static flatbuffers::Offset<SplitVOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SplitVOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8168 };
8169
8170 struct SplitVOptionsBuilder {
8171 typedef SplitVOptions Table;
8172 flatbuffers::FlatBufferBuilder &fbb_;
8173 flatbuffers::uoffset_t start_;
8174 void add_num_splits(int32_t num_splits) {
8175 fbb_.AddElement<int32_t>(SplitVOptions::VT_NUM_SPLITS, num_splits, 0);
8176 }
8177 explicit SplitVOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
8178 : fbb_(_fbb) {
8179 start_ = fbb_.StartTable();
8180 }
8181 flatbuffers::Offset<SplitVOptions> Finish() {
8182 const auto end = fbb_.EndTable(start_);
8183 auto o = flatbuffers::Offset<SplitVOptions>(end);
8184 return o;
8185 }
8186 };
8187
8188 inline flatbuffers::Offset<SplitVOptions> CreateSplitVOptions(
8189 flatbuffers::FlatBufferBuilder &_fbb,
8190 int32_t num_splits = 0) {
8191 SplitVOptionsBuilder builder_(_fbb);
8192 builder_.add_num_splits(num_splits);
8193 return builder_.Finish();
8194 }
8195
8196 flatbuffers::Offset<SplitVOptions> CreateSplitVOptions(flatbuffers::FlatBufferBuilder &_fbb, const SplitVOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8197
8198 struct StridedSliceOptionsT : public flatbuffers::NativeTable {
8199 typedef StridedSliceOptions TableType;
8200 int32_t begin_mask = 0;
8201 int32_t end_mask = 0;
8202 int32_t ellipsis_mask = 0;
8203 int32_t new_axis_mask = 0;
8204 int32_t shrink_axis_mask = 0;
8205 };
8206
8207 struct StridedSliceOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
8208 typedef StridedSliceOptionsT NativeTableType;
8209 typedef StridedSliceOptionsBuilder Builder;
8210 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
8211 VT_BEGIN_MASK = 4,
8212 VT_END_MASK = 6,
8213 VT_ELLIPSIS_MASK = 8,
8214 VT_NEW_AXIS_MASK = 10,
8215 VT_SHRINK_AXIS_MASK = 12
8216 };
8217 int32_t begin_mask() const {
8218 return GetField<int32_t>(VT_BEGIN_MASK, 0);
8219 }
8220 bool mutate_begin_mask(int32_t _begin_mask = 0) {
8221 return SetField<int32_t>(VT_BEGIN_MASK, _begin_mask, 0);
8222 }
8223 int32_t end_mask() const {
8224 return GetField<int32_t>(VT_END_MASK, 0);
8225 }
8226 bool mutate_end_mask(int32_t _end_mask = 0) {
8227 return SetField<int32_t>(VT_END_MASK, _end_mask, 0);
8228 }
8229 int32_t ellipsis_mask() const {
8230 return GetField<int32_t>(VT_ELLIPSIS_MASK, 0);
8231 }
8232 bool mutate_ellipsis_mask(int32_t _ellipsis_mask = 0) {
8233 return SetField<int32_t>(VT_ELLIPSIS_MASK, _ellipsis_mask, 0);
8234 }
8235 int32_t new_axis_mask() const {
8236 return GetField<int32_t>(VT_NEW_AXIS_MASK, 0);
8237 }
8238 bool mutate_new_axis_mask(int32_t _new_axis_mask = 0) {
8239 return SetField<int32_t>(VT_NEW_AXIS_MASK, _new_axis_mask, 0);
8240 }
8241 int32_t shrink_axis_mask() const {
8242 return GetField<int32_t>(VT_SHRINK_AXIS_MASK, 0);
8243 }
8244 bool mutate_shrink_axis_mask(int32_t _shrink_axis_mask = 0) {
8245 return SetField<int32_t>(VT_SHRINK_AXIS_MASK, _shrink_axis_mask, 0);
8246 }
8247 bool Verify(flatbuffers::Verifier &verifier) const {
8248 return VerifyTableStart(verifier) &&
8249 VerifyField<int32_t>(verifier, VT_BEGIN_MASK, 4) &&
8250 VerifyField<int32_t>(verifier, VT_END_MASK, 4) &&
8251 VerifyField<int32_t>(verifier, VT_ELLIPSIS_MASK, 4) &&
8252 VerifyField<int32_t>(verifier, VT_NEW_AXIS_MASK, 4) &&
8253 VerifyField<int32_t>(verifier, VT_SHRINK_AXIS_MASK, 4) &&
8254 verifier.EndTable();
8255 }
8256 StridedSliceOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8257 void UnPackTo(StridedSliceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8258 static flatbuffers::Offset<StridedSliceOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const StridedSliceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8259 };
8260
8261 struct StridedSliceOptionsBuilder {
8262 typedef StridedSliceOptions Table;
8263 flatbuffers::FlatBufferBuilder &fbb_;
8264 flatbuffers::uoffset_t start_;
8265 void add_begin_mask(int32_t begin_mask) {
8266 fbb_.AddElement<int32_t>(StridedSliceOptions::VT_BEGIN_MASK, begin_mask, 0);
8267 }
8268 void add_end_mask(int32_t end_mask) {
8269 fbb_.AddElement<int32_t>(StridedSliceOptions::VT_END_MASK, end_mask, 0);
8270 }
8271 void add_ellipsis_mask(int32_t ellipsis_mask) {
8272 fbb_.AddElement<int32_t>(StridedSliceOptions::VT_ELLIPSIS_MASK, ellipsis_mask, 0);
8273 }
8274 void add_new_axis_mask(int32_t new_axis_mask) {
8275 fbb_.AddElement<int32_t>(StridedSliceOptions::VT_NEW_AXIS_MASK, new_axis_mask, 0);
8276 }
8277 void add_shrink_axis_mask(int32_t shrink_axis_mask) {
8278 fbb_.AddElement<int32_t>(StridedSliceOptions::VT_SHRINK_AXIS_MASK, shrink_axis_mask, 0);
8279 }
8280 explicit StridedSliceOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
8281 : fbb_(_fbb) {
8282 start_ = fbb_.StartTable();
8283 }
8284 flatbuffers::Offset<StridedSliceOptions> Finish() {
8285 const auto end = fbb_.EndTable(start_);
8286 auto o = flatbuffers::Offset<StridedSliceOptions>(end);
8287 return o;
8288 }
8289 };
8290
8291 inline flatbuffers::Offset<StridedSliceOptions> CreateStridedSliceOptions(
8292 flatbuffers::FlatBufferBuilder &_fbb,
8293 int32_t begin_mask = 0,
8294 int32_t end_mask = 0,
8295 int32_t ellipsis_mask = 0,
8296 int32_t new_axis_mask = 0,
8297 int32_t shrink_axis_mask = 0) {
8298 StridedSliceOptionsBuilder builder_(_fbb);
8299 builder_.add_shrink_axis_mask(shrink_axis_mask);
8300 builder_.add_new_axis_mask(new_axis_mask);
8301 builder_.add_ellipsis_mask(ellipsis_mask);
8302 builder_.add_end_mask(end_mask);
8303 builder_.add_begin_mask(begin_mask);
8304 return builder_.Finish();
8305 }
8306
8307 flatbuffers::Offset<StridedSliceOptions> CreateStridedSliceOptions(flatbuffers::FlatBufferBuilder &_fbb, const StridedSliceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8308
8309 struct LogSoftmaxOptionsT : public flatbuffers::NativeTable {
8310 typedef LogSoftmaxOptions TableType;
8311 };
8312
8313 struct LogSoftmaxOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
8314 typedef LogSoftmaxOptionsT NativeTableType;
8315 typedef LogSoftmaxOptionsBuilder Builder;
8316 bool Verify(flatbuffers::Verifier &verifier) const {
8317 return VerifyTableStart(verifier) &&
8318 verifier.EndTable();
8319 }
8320 LogSoftmaxOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8321 void UnPackTo(LogSoftmaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8322 static flatbuffers::Offset<LogSoftmaxOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogSoftmaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8323 };
8324
8325 struct LogSoftmaxOptionsBuilder {
8326 typedef LogSoftmaxOptions Table;
8327 flatbuffers::FlatBufferBuilder &fbb_;
8328 flatbuffers::uoffset_t start_;
8329 explicit LogSoftmaxOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
8330 : fbb_(_fbb) {
8331 start_ = fbb_.StartTable();
8332 }
8333 flatbuffers::Offset<LogSoftmaxOptions> Finish() {
8334 const auto end = fbb_.EndTable(start_);
8335 auto o = flatbuffers::Offset<LogSoftmaxOptions>(end);
8336 return o;
8337 }
8338 };
8339
8340 inline flatbuffers::Offset<LogSoftmaxOptions> CreateLogSoftmaxOptions(
8341 flatbuffers::FlatBufferBuilder &_fbb) {
8342 LogSoftmaxOptionsBuilder builder_(_fbb);
8343 return builder_.Finish();
8344 }
8345
8346 flatbuffers::Offset<LogSoftmaxOptions> CreateLogSoftmaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogSoftmaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8347
8348 struct CastOptionsT : public flatbuffers::NativeTable {
8349 typedef CastOptions TableType;
8350 tflite::TensorType in_data_type = tflite::TensorType_FLOAT32;
8351 tflite::TensorType out_data_type = tflite::TensorType_FLOAT32;
8352 };
8353
8354 struct CastOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
8355 typedef CastOptionsT NativeTableType;
8356 typedef CastOptionsBuilder Builder;
8357 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
8358 VT_IN_DATA_TYPE = 4,
8359 VT_OUT_DATA_TYPE = 6
8360 };
8361 tflite::TensorType in_data_type() const {
8362 return static_cast<tflite::TensorType>(GetField<int8_t>(VT_IN_DATA_TYPE, 0));
8363 }
8364 bool mutate_in_data_type(tflite::TensorType _in_data_type = static_cast<tflite::TensorType>(0)) {
8365 return SetField<int8_t>(VT_IN_DATA_TYPE, static_cast<int8_t>(_in_data_type), 0);
8366 }
8367 tflite::TensorType out_data_type() const {
8368 return static_cast<tflite::TensorType>(GetField<int8_t>(VT_OUT_DATA_TYPE, 0));
8369 }
8370 bool mutate_out_data_type(tflite::TensorType _out_data_type = static_cast<tflite::TensorType>(0)) {
8371 return SetField<int8_t>(VT_OUT_DATA_TYPE, static_cast<int8_t>(_out_data_type), 0);
8372 }
8373 bool Verify(flatbuffers::Verifier &verifier) const {
8374 return VerifyTableStart(verifier) &&
8375 VerifyField<int8_t>(verifier, VT_IN_DATA_TYPE, 1) &&
8376 VerifyField<int8_t>(verifier, VT_OUT_DATA_TYPE, 1) &&
8377 verifier.EndTable();
8378 }
8379 CastOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8380 void UnPackTo(CastOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8381 static flatbuffers::Offset<CastOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const CastOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8382 };
8383
8384 struct CastOptionsBuilder {
8385 typedef CastOptions Table;
8386 flatbuffers::FlatBufferBuilder &fbb_;
8387 flatbuffers::uoffset_t start_;
8388 void add_in_data_type(tflite::TensorType in_data_type) {
8389 fbb_.AddElement<int8_t>(CastOptions::VT_IN_DATA_TYPE, static_cast<int8_t>(in_data_type), 0);
8390 }
8391 void add_out_data_type(tflite::TensorType out_data_type) {
8392 fbb_.AddElement<int8_t>(CastOptions::VT_OUT_DATA_TYPE, static_cast<int8_t>(out_data_type), 0);
8393 }
8394 explicit CastOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
8395 : fbb_(_fbb) {
8396 start_ = fbb_.StartTable();
8397 }
8398 flatbuffers::Offset<CastOptions> Finish() {
8399 const auto end = fbb_.EndTable(start_);
8400 auto o = flatbuffers::Offset<CastOptions>(end);
8401 return o;
8402 }
8403 };
8404
8405 inline flatbuffers::Offset<CastOptions> CreateCastOptions(
8406 flatbuffers::FlatBufferBuilder &_fbb,
8407 tflite::TensorType in_data_type = tflite::TensorType_FLOAT32,
8408 tflite::TensorType out_data_type = tflite::TensorType_FLOAT32) {
8409 CastOptionsBuilder builder_(_fbb);
8410 builder_.add_out_data_type(out_data_type);
8411 builder_.add_in_data_type(in_data_type);
8412 return builder_.Finish();
8413 }
8414
8415 flatbuffers::Offset<CastOptions> CreateCastOptions(flatbuffers::FlatBufferBuilder &_fbb, const CastOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8416
8417 struct DequantizeOptionsT : public flatbuffers::NativeTable {
8418 typedef DequantizeOptions TableType;
8419 };
8420
8421 struct DequantizeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
8422 typedef DequantizeOptionsT NativeTableType;
8423 typedef DequantizeOptionsBuilder Builder;
8424 bool Verify(flatbuffers::Verifier &verifier) const {
8425 return VerifyTableStart(verifier) &&
8426 verifier.EndTable();
8427 }
8428 DequantizeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8429 void UnPackTo(DequantizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8430 static flatbuffers::Offset<DequantizeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DequantizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8431 };
8432
8433 struct DequantizeOptionsBuilder {
8434 typedef DequantizeOptions Table;
8435 flatbuffers::FlatBufferBuilder &fbb_;
8436 flatbuffers::uoffset_t start_;
8437 explicit DequantizeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
8438 : fbb_(_fbb) {
8439 start_ = fbb_.StartTable();
8440 }
8441 flatbuffers::Offset<DequantizeOptions> Finish() {
8442 const auto end = fbb_.EndTable(start_);
8443 auto o = flatbuffers::Offset<DequantizeOptions>(end);
8444 return o;
8445 }
8446 };
8447
8448 inline flatbuffers::Offset<DequantizeOptions> CreateDequantizeOptions(
8449 flatbuffers::FlatBufferBuilder &_fbb) {
8450 DequantizeOptionsBuilder builder_(_fbb);
8451 return builder_.Finish();
8452 }
8453
8454 flatbuffers::Offset<DequantizeOptions> CreateDequantizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const DequantizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8455
8456 struct MaximumMinimumOptionsT : public flatbuffers::NativeTable {
8457 typedef MaximumMinimumOptions TableType;
8458 };
8459
8460 struct MaximumMinimumOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
8461 typedef MaximumMinimumOptionsT NativeTableType;
8462 typedef MaximumMinimumOptionsBuilder Builder;
8463 bool Verify(flatbuffers::Verifier &verifier) const {
8464 return VerifyTableStart(verifier) &&
8465 verifier.EndTable();
8466 }
8467 MaximumMinimumOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8468 void UnPackTo(MaximumMinimumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8469 static flatbuffers::Offset<MaximumMinimumOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const MaximumMinimumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8470 };
8471
8472 struct MaximumMinimumOptionsBuilder {
8473 typedef MaximumMinimumOptions Table;
8474 flatbuffers::FlatBufferBuilder &fbb_;
8475 flatbuffers::uoffset_t start_;
8476 explicit MaximumMinimumOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
8477 : fbb_(_fbb) {
8478 start_ = fbb_.StartTable();
8479 }
8480 flatbuffers::Offset<MaximumMinimumOptions> Finish() {
8481 const auto end = fbb_.EndTable(start_);
8482 auto o = flatbuffers::Offset<MaximumMinimumOptions>(end);
8483 return o;
8484 }
8485 };
8486
8487 inline flatbuffers::Offset<MaximumMinimumOptions> CreateMaximumMinimumOptions(
8488 flatbuffers::FlatBufferBuilder &_fbb) {
8489 MaximumMinimumOptionsBuilder builder_(_fbb);
8490 return builder_.Finish();
8491 }
8492
8493 flatbuffers::Offset<MaximumMinimumOptions> CreateMaximumMinimumOptions(flatbuffers::FlatBufferBuilder &_fbb, const MaximumMinimumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8494
8495 struct TileOptionsT : public flatbuffers::NativeTable {
8496 typedef TileOptions TableType;
8497 };
8498
8499 struct TileOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
8500 typedef TileOptionsT NativeTableType;
8501 typedef TileOptionsBuilder Builder;
8502 bool Verify(flatbuffers::Verifier &verifier) const {
8503 return VerifyTableStart(verifier) &&
8504 verifier.EndTable();
8505 }
8506 TileOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8507 void UnPackTo(TileOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8508 static flatbuffers::Offset<TileOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TileOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8509 };
8510
8511 struct TileOptionsBuilder {
8512 typedef TileOptions Table;
8513 flatbuffers::FlatBufferBuilder &fbb_;
8514 flatbuffers::uoffset_t start_;
8515 explicit TileOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
8516 : fbb_(_fbb) {
8517 start_ = fbb_.StartTable();
8518 }
8519 flatbuffers::Offset<TileOptions> Finish() {
8520 const auto end = fbb_.EndTable(start_);
8521 auto o = flatbuffers::Offset<TileOptions>(end);
8522 return o;
8523 }
8524 };
8525
8526 inline flatbuffers::Offset<TileOptions> CreateTileOptions(
8527 flatbuffers::FlatBufferBuilder &_fbb) {
8528 TileOptionsBuilder builder_(_fbb);
8529 return builder_.Finish();
8530 }
8531
8532 flatbuffers::Offset<TileOptions> CreateTileOptions(flatbuffers::FlatBufferBuilder &_fbb, const TileOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8533
8534 struct ArgMaxOptionsT : public flatbuffers::NativeTable {
8535 typedef ArgMaxOptions TableType;
8536 tflite::TensorType output_type = tflite::TensorType_FLOAT32;
8537 };
8538
8539 struct ArgMaxOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
8540 typedef ArgMaxOptionsT NativeTableType;
8541 typedef ArgMaxOptionsBuilder Builder;
8542 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
8543 VT_OUTPUT_TYPE = 4
8544 };
8545 tflite::TensorType output_type() const {
8546 return static_cast<tflite::TensorType>(GetField<int8_t>(VT_OUTPUT_TYPE, 0));
8547 }
8548 bool mutate_output_type(tflite::TensorType _output_type = static_cast<tflite::TensorType>(0)) {
8549 return SetField<int8_t>(VT_OUTPUT_TYPE, static_cast<int8_t>(_output_type), 0);
8550 }
8551 bool Verify(flatbuffers::Verifier &verifier) const {
8552 return VerifyTableStart(verifier) &&
8553 VerifyField<int8_t>(verifier, VT_OUTPUT_TYPE, 1) &&
8554 verifier.EndTable();
8555 }
8556 ArgMaxOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8557 void UnPackTo(ArgMaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8558 static flatbuffers::Offset<ArgMaxOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ArgMaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8559 };
8560
8561 struct ArgMaxOptionsBuilder {
8562 typedef ArgMaxOptions Table;
8563 flatbuffers::FlatBufferBuilder &fbb_;
8564 flatbuffers::uoffset_t start_;
8565 void add_output_type(tflite::TensorType output_type) {
8566 fbb_.AddElement<int8_t>(ArgMaxOptions::VT_OUTPUT_TYPE, static_cast<int8_t>(output_type), 0);
8567 }
8568 explicit ArgMaxOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
8569 : fbb_(_fbb) {
8570 start_ = fbb_.StartTable();
8571 }
8572 flatbuffers::Offset<ArgMaxOptions> Finish() {
8573 const auto end = fbb_.EndTable(start_);
8574 auto o = flatbuffers::Offset<ArgMaxOptions>(end);
8575 return o;
8576 }
8577 };
8578
8579 inline flatbuffers::Offset<ArgMaxOptions> CreateArgMaxOptions(
8580 flatbuffers::FlatBufferBuilder &_fbb,
8581 tflite::TensorType output_type = tflite::TensorType_FLOAT32) {
8582 ArgMaxOptionsBuilder builder_(_fbb);
8583 builder_.add_output_type(output_type);
8584 return builder_.Finish();
8585 }
8586
8587 flatbuffers::Offset<ArgMaxOptions> CreateArgMaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const ArgMaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8588
8589 struct ArgMinOptionsT : public flatbuffers::NativeTable {
8590 typedef ArgMinOptions TableType;
8591 tflite::TensorType output_type = tflite::TensorType_FLOAT32;
8592 };
8593
8594 struct ArgMinOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
8595 typedef ArgMinOptionsT NativeTableType;
8596 typedef ArgMinOptionsBuilder Builder;
8597 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
8598 VT_OUTPUT_TYPE = 4
8599 };
8600 tflite::TensorType output_type() const {
8601 return static_cast<tflite::TensorType>(GetField<int8_t>(VT_OUTPUT_TYPE, 0));
8602 }
8603 bool mutate_output_type(tflite::TensorType _output_type = static_cast<tflite::TensorType>(0)) {
8604 return SetField<int8_t>(VT_OUTPUT_TYPE, static_cast<int8_t>(_output_type), 0);
8605 }
8606 bool Verify(flatbuffers::Verifier &verifier) const {
8607 return VerifyTableStart(verifier) &&
8608 VerifyField<int8_t>(verifier, VT_OUTPUT_TYPE, 1) &&
8609 verifier.EndTable();
8610 }
8611 ArgMinOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8612 void UnPackTo(ArgMinOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8613 static flatbuffers::Offset<ArgMinOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ArgMinOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8614 };
8615
8616 struct ArgMinOptionsBuilder {
8617 typedef ArgMinOptions Table;
8618 flatbuffers::FlatBufferBuilder &fbb_;
8619 flatbuffers::uoffset_t start_;
8620 void add_output_type(tflite::TensorType output_type) {
8621 fbb_.AddElement<int8_t>(ArgMinOptions::VT_OUTPUT_TYPE, static_cast<int8_t>(output_type), 0);
8622 }
8623 explicit ArgMinOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
8624 : fbb_(_fbb) {
8625 start_ = fbb_.StartTable();
8626 }
8627 flatbuffers::Offset<ArgMinOptions> Finish() {
8628 const auto end = fbb_.EndTable(start_);
8629 auto o = flatbuffers::Offset<ArgMinOptions>(end);
8630 return o;
8631 }
8632 };
8633
8634 inline flatbuffers::Offset<ArgMinOptions> CreateArgMinOptions(
8635 flatbuffers::FlatBufferBuilder &_fbb,
8636 tflite::TensorType output_type = tflite::TensorType_FLOAT32) {
8637 ArgMinOptionsBuilder builder_(_fbb);
8638 builder_.add_output_type(output_type);
8639 return builder_.Finish();
8640 }
8641
8642 flatbuffers::Offset<ArgMinOptions> CreateArgMinOptions(flatbuffers::FlatBufferBuilder &_fbb, const ArgMinOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8643
8644 struct GreaterOptionsT : public flatbuffers::NativeTable {
8645 typedef GreaterOptions TableType;
8646 };
8647
8648 struct GreaterOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
8649 typedef GreaterOptionsT NativeTableType;
8650 typedef GreaterOptionsBuilder Builder;
8651 bool Verify(flatbuffers::Verifier &verifier) const {
8652 return VerifyTableStart(verifier) &&
8653 verifier.EndTable();
8654 }
8655 GreaterOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8656 void UnPackTo(GreaterOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8657 static flatbuffers::Offset<GreaterOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const GreaterOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8658 };
8659
8660 struct GreaterOptionsBuilder {
8661 typedef GreaterOptions Table;
8662 flatbuffers::FlatBufferBuilder &fbb_;
8663 flatbuffers::uoffset_t start_;
8664 explicit GreaterOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
8665 : fbb_(_fbb) {
8666 start_ = fbb_.StartTable();
8667 }
8668 flatbuffers::Offset<GreaterOptions> Finish() {
8669 const auto end = fbb_.EndTable(start_);
8670 auto o = flatbuffers::Offset<GreaterOptions>(end);
8671 return o;
8672 }
8673 };
8674
8675 inline flatbuffers::Offset<GreaterOptions> CreateGreaterOptions(
8676 flatbuffers::FlatBufferBuilder &_fbb) {
8677 GreaterOptionsBuilder builder_(_fbb);
8678 return builder_.Finish();
8679 }
8680
8681 flatbuffers::Offset<GreaterOptions> CreateGreaterOptions(flatbuffers::FlatBufferBuilder &_fbb, const GreaterOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8682
8683 struct GreaterEqualOptionsT : public flatbuffers::NativeTable {
8684 typedef GreaterEqualOptions TableType;
8685 };
8686
8687 struct GreaterEqualOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
8688 typedef GreaterEqualOptionsT NativeTableType;
8689 typedef GreaterEqualOptionsBuilder Builder;
8690 bool Verify(flatbuffers::Verifier &verifier) const {
8691 return VerifyTableStart(verifier) &&
8692 verifier.EndTable();
8693 }
8694 GreaterEqualOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8695 void UnPackTo(GreaterEqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8696 static flatbuffers::Offset<GreaterEqualOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const GreaterEqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8697 };
8698
8699 struct GreaterEqualOptionsBuilder {
8700 typedef GreaterEqualOptions Table;
8701 flatbuffers::FlatBufferBuilder &fbb_;
8702 flatbuffers::uoffset_t start_;
8703 explicit GreaterEqualOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
8704 : fbb_(_fbb) {
8705 start_ = fbb_.StartTable();
8706 }
8707 flatbuffers::Offset<GreaterEqualOptions> Finish() {
8708 const auto end = fbb_.EndTable(start_);
8709 auto o = flatbuffers::Offset<GreaterEqualOptions>(end);
8710 return o;
8711 }
8712 };
8713
8714 inline flatbuffers::Offset<GreaterEqualOptions> CreateGreaterEqualOptions(
8715 flatbuffers::FlatBufferBuilder &_fbb) {
8716 GreaterEqualOptionsBuilder builder_(_fbb);
8717 return builder_.Finish();
8718 }
8719
8720 flatbuffers::Offset<GreaterEqualOptions> CreateGreaterEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const GreaterEqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8721
8722 struct LessOptionsT : public flatbuffers::NativeTable {
8723 typedef LessOptions TableType;
8724 };
8725
8726 struct LessOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
8727 typedef LessOptionsT NativeTableType;
8728 typedef LessOptionsBuilder Builder;
8729 bool Verify(flatbuffers::Verifier &verifier) const {
8730 return VerifyTableStart(verifier) &&
8731 verifier.EndTable();
8732 }
8733 LessOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8734 void UnPackTo(LessOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8735 static flatbuffers::Offset<LessOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LessOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8736 };
8737
8738 struct LessOptionsBuilder {
8739 typedef LessOptions Table;
8740 flatbuffers::FlatBufferBuilder &fbb_;
8741 flatbuffers::uoffset_t start_;
8742 explicit LessOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
8743 : fbb_(_fbb) {
8744 start_ = fbb_.StartTable();
8745 }
8746 flatbuffers::Offset<LessOptions> Finish() {
8747 const auto end = fbb_.EndTable(start_);
8748 auto o = flatbuffers::Offset<LessOptions>(end);
8749 return o;
8750 }
8751 };
8752
8753 inline flatbuffers::Offset<LessOptions> CreateLessOptions(
8754 flatbuffers::FlatBufferBuilder &_fbb) {
8755 LessOptionsBuilder builder_(_fbb);
8756 return builder_.Finish();
8757 }
8758
8759 flatbuffers::Offset<LessOptions> CreateLessOptions(flatbuffers::FlatBufferBuilder &_fbb, const LessOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8760
8761 struct LessEqualOptionsT : public flatbuffers::NativeTable {
8762 typedef LessEqualOptions TableType;
8763 };
8764
8765 struct LessEqualOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
8766 typedef LessEqualOptionsT NativeTableType;
8767 typedef LessEqualOptionsBuilder Builder;
8768 bool Verify(flatbuffers::Verifier &verifier) const {
8769 return VerifyTableStart(verifier) &&
8770 verifier.EndTable();
8771 }
8772 LessEqualOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8773 void UnPackTo(LessEqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8774 static flatbuffers::Offset<LessEqualOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LessEqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8775 };
8776
8777 struct LessEqualOptionsBuilder {
8778 typedef LessEqualOptions Table;
8779 flatbuffers::FlatBufferBuilder &fbb_;
8780 flatbuffers::uoffset_t start_;
8781 explicit LessEqualOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
8782 : fbb_(_fbb) {
8783 start_ = fbb_.StartTable();
8784 }
8785 flatbuffers::Offset<LessEqualOptions> Finish() {
8786 const auto end = fbb_.EndTable(start_);
8787 auto o = flatbuffers::Offset<LessEqualOptions>(end);
8788 return o;
8789 }
8790 };
8791
8792 inline flatbuffers::Offset<LessEqualOptions> CreateLessEqualOptions(
8793 flatbuffers::FlatBufferBuilder &_fbb) {
8794 LessEqualOptionsBuilder builder_(_fbb);
8795 return builder_.Finish();
8796 }
8797
8798 flatbuffers::Offset<LessEqualOptions> CreateLessEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const LessEqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8799
8800 struct NegOptionsT : public flatbuffers::NativeTable {
8801 typedef NegOptions TableType;
8802 };
8803
8804 struct NegOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
8805 typedef NegOptionsT NativeTableType;
8806 typedef NegOptionsBuilder Builder;
8807 bool Verify(flatbuffers::Verifier &verifier) const {
8808 return VerifyTableStart(verifier) &&
8809 verifier.EndTable();
8810 }
8811 NegOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8812 void UnPackTo(NegOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8813 static flatbuffers::Offset<NegOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const NegOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8814 };
8815
8816 struct NegOptionsBuilder {
8817 typedef NegOptions Table;
8818 flatbuffers::FlatBufferBuilder &fbb_;
8819 flatbuffers::uoffset_t start_;
8820 explicit NegOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
8821 : fbb_(_fbb) {
8822 start_ = fbb_.StartTable();
8823 }
8824 flatbuffers::Offset<NegOptions> Finish() {
8825 const auto end = fbb_.EndTable(start_);
8826 auto o = flatbuffers::Offset<NegOptions>(end);
8827 return o;
8828 }
8829 };
8830
8831 inline flatbuffers::Offset<NegOptions> CreateNegOptions(
8832 flatbuffers::FlatBufferBuilder &_fbb) {
8833 NegOptionsBuilder builder_(_fbb);
8834 return builder_.Finish();
8835 }
8836
8837 flatbuffers::Offset<NegOptions> CreateNegOptions(flatbuffers::FlatBufferBuilder &_fbb, const NegOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8838
8839 struct SelectOptionsT : public flatbuffers::NativeTable {
8840 typedef SelectOptions TableType;
8841 };
8842
8843 struct SelectOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
8844 typedef SelectOptionsT NativeTableType;
8845 typedef SelectOptionsBuilder Builder;
8846 bool Verify(flatbuffers::Verifier &verifier) const {
8847 return VerifyTableStart(verifier) &&
8848 verifier.EndTable();
8849 }
8850 SelectOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8851 void UnPackTo(SelectOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8852 static flatbuffers::Offset<SelectOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SelectOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8853 };
8854
8855 struct SelectOptionsBuilder {
8856 typedef SelectOptions Table;
8857 flatbuffers::FlatBufferBuilder &fbb_;
8858 flatbuffers::uoffset_t start_;
8859 explicit SelectOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
8860 : fbb_(_fbb) {
8861 start_ = fbb_.StartTable();
8862 }
8863 flatbuffers::Offset<SelectOptions> Finish() {
8864 const auto end = fbb_.EndTable(start_);
8865 auto o = flatbuffers::Offset<SelectOptions>(end);
8866 return o;
8867 }
8868 };
8869
8870 inline flatbuffers::Offset<SelectOptions> CreateSelectOptions(
8871 flatbuffers::FlatBufferBuilder &_fbb) {
8872 SelectOptionsBuilder builder_(_fbb);
8873 return builder_.Finish();
8874 }
8875
8876 flatbuffers::Offset<SelectOptions> CreateSelectOptions(flatbuffers::FlatBufferBuilder &_fbb, const SelectOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8877
8878 struct SliceOptionsT : public flatbuffers::NativeTable {
8879 typedef SliceOptions TableType;
8880 };
8881
8882 struct SliceOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
8883 typedef SliceOptionsT NativeTableType;
8884 typedef SliceOptionsBuilder Builder;
8885 bool Verify(flatbuffers::Verifier &verifier) const {
8886 return VerifyTableStart(verifier) &&
8887 verifier.EndTable();
8888 }
8889 SliceOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8890 void UnPackTo(SliceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8891 static flatbuffers::Offset<SliceOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SliceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8892 };
8893
8894 struct SliceOptionsBuilder {
8895 typedef SliceOptions Table;
8896 flatbuffers::FlatBufferBuilder &fbb_;
8897 flatbuffers::uoffset_t start_;
8898 explicit SliceOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
8899 : fbb_(_fbb) {
8900 start_ = fbb_.StartTable();
8901 }
8902 flatbuffers::Offset<SliceOptions> Finish() {
8903 const auto end = fbb_.EndTable(start_);
8904 auto o = flatbuffers::Offset<SliceOptions>(end);
8905 return o;
8906 }
8907 };
8908
8909 inline flatbuffers::Offset<SliceOptions> CreateSliceOptions(
8910 flatbuffers::FlatBufferBuilder &_fbb) {
8911 SliceOptionsBuilder builder_(_fbb);
8912 return builder_.Finish();
8913 }
8914
8915 flatbuffers::Offset<SliceOptions> CreateSliceOptions(flatbuffers::FlatBufferBuilder &_fbb, const SliceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8916
8917 struct TransposeConvOptionsT : public flatbuffers::NativeTable {
8918 typedef TransposeConvOptions TableType;
8919 tflite::Padding padding = tflite::Padding_SAME;
8920 int32_t stride_w = 0;
8921 int32_t stride_h = 0;
8922 };
8923
8924 struct TransposeConvOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
8925 typedef TransposeConvOptionsT NativeTableType;
8926 typedef TransposeConvOptionsBuilder Builder;
8927 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
8928 VT_PADDING = 4,
8929 VT_STRIDE_W = 6,
8930 VT_STRIDE_H = 8
8931 };
8932 tflite::Padding padding() const {
8933 return static_cast<tflite::Padding>(GetField<int8_t>(VT_PADDING, 0));
8934 }
8935 bool mutate_padding(tflite::Padding _padding = static_cast<tflite::Padding>(0)) {
8936 return SetField<int8_t>(VT_PADDING, static_cast<int8_t>(_padding), 0);
8937 }
8938 int32_t stride_w() const {
8939 return GetField<int32_t>(VT_STRIDE_W, 0);
8940 }
8941 bool mutate_stride_w(int32_t _stride_w = 0) {
8942 return SetField<int32_t>(VT_STRIDE_W, _stride_w, 0);
8943 }
8944 int32_t stride_h() const {
8945 return GetField<int32_t>(VT_STRIDE_H, 0);
8946 }
8947 bool mutate_stride_h(int32_t _stride_h = 0) {
8948 return SetField<int32_t>(VT_STRIDE_H, _stride_h, 0);
8949 }
8950 bool Verify(flatbuffers::Verifier &verifier) const {
8951 return VerifyTableStart(verifier) &&
8952 VerifyField<int8_t>(verifier, VT_PADDING, 1) &&
8953 VerifyField<int32_t>(verifier, VT_STRIDE_W, 4) &&
8954 VerifyField<int32_t>(verifier, VT_STRIDE_H, 4) &&
8955 verifier.EndTable();
8956 }
8957 TransposeConvOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8958 void UnPackTo(TransposeConvOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
8959 static flatbuffers::Offset<TransposeConvOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TransposeConvOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8960 };
8961
8962 struct TransposeConvOptionsBuilder {
8963 typedef TransposeConvOptions Table;
8964 flatbuffers::FlatBufferBuilder &fbb_;
8965 flatbuffers::uoffset_t start_;
8966 void add_padding(tflite::Padding padding) {
8967 fbb_.AddElement<int8_t>(TransposeConvOptions::VT_PADDING, static_cast<int8_t>(padding), 0);
8968 }
8969 void add_stride_w(int32_t stride_w) {
8970 fbb_.AddElement<int32_t>(TransposeConvOptions::VT_STRIDE_W, stride_w, 0);
8971 }
8972 void add_stride_h(int32_t stride_h) {
8973 fbb_.AddElement<int32_t>(TransposeConvOptions::VT_STRIDE_H, stride_h, 0);
8974 }
8975 explicit TransposeConvOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
8976 : fbb_(_fbb) {
8977 start_ = fbb_.StartTable();
8978 }
8979 flatbuffers::Offset<TransposeConvOptions> Finish() {
8980 const auto end = fbb_.EndTable(start_);
8981 auto o = flatbuffers::Offset<TransposeConvOptions>(end);
8982 return o;
8983 }
8984 };
8985
8986 inline flatbuffers::Offset<TransposeConvOptions> CreateTransposeConvOptions(
8987 flatbuffers::FlatBufferBuilder &_fbb,
8988 tflite::Padding padding = tflite::Padding_SAME,
8989 int32_t stride_w = 0,
8990 int32_t stride_h = 0) {
8991 TransposeConvOptionsBuilder builder_(_fbb);
8992 builder_.add_stride_h(stride_h);
8993 builder_.add_stride_w(stride_w);
8994 builder_.add_padding(padding);
8995 return builder_.Finish();
8996 }
8997
8998 flatbuffers::Offset<TransposeConvOptions> CreateTransposeConvOptions(flatbuffers::FlatBufferBuilder &_fbb, const TransposeConvOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
8999
9000 struct ExpandDimsOptionsT : public flatbuffers::NativeTable {
9001 typedef ExpandDimsOptions TableType;
9002 };
9003
9004 struct ExpandDimsOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9005 typedef ExpandDimsOptionsT NativeTableType;
9006 typedef ExpandDimsOptionsBuilder Builder;
9007 bool Verify(flatbuffers::Verifier &verifier) const {
9008 return VerifyTableStart(verifier) &&
9009 verifier.EndTable();
9010 }
9011 ExpandDimsOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9012 void UnPackTo(ExpandDimsOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9013 static flatbuffers::Offset<ExpandDimsOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ExpandDimsOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9014 };
9015
9016 struct ExpandDimsOptionsBuilder {
9017 typedef ExpandDimsOptions Table;
9018 flatbuffers::FlatBufferBuilder &fbb_;
9019 flatbuffers::uoffset_t start_;
9020 explicit ExpandDimsOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
9021 : fbb_(_fbb) {
9022 start_ = fbb_.StartTable();
9023 }
9024 flatbuffers::Offset<ExpandDimsOptions> Finish() {
9025 const auto end = fbb_.EndTable(start_);
9026 auto o = flatbuffers::Offset<ExpandDimsOptions>(end);
9027 return o;
9028 }
9029 };
9030
9031 inline flatbuffers::Offset<ExpandDimsOptions> CreateExpandDimsOptions(
9032 flatbuffers::FlatBufferBuilder &_fbb) {
9033 ExpandDimsOptionsBuilder builder_(_fbb);
9034 return builder_.Finish();
9035 }
9036
9037 flatbuffers::Offset<ExpandDimsOptions> CreateExpandDimsOptions(flatbuffers::FlatBufferBuilder &_fbb, const ExpandDimsOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9038
9039 struct SparseToDenseOptionsT : public flatbuffers::NativeTable {
9040 typedef SparseToDenseOptions TableType;
9041 bool validate_indices = false;
9042 };
9043
9044 struct SparseToDenseOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9045 typedef SparseToDenseOptionsT NativeTableType;
9046 typedef SparseToDenseOptionsBuilder Builder;
9047 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
9048 VT_VALIDATE_INDICES = 4
9049 };
9050 bool validate_indices() const {
9051 return GetField<uint8_t>(VT_VALIDATE_INDICES, 0) != 0;
9052 }
9053 bool mutate_validate_indices(bool _validate_indices = 0) {
9054 return SetField<uint8_t>(VT_VALIDATE_INDICES, static_cast<uint8_t>(_validate_indices), 0);
9055 }
9056 bool Verify(flatbuffers::Verifier &verifier) const {
9057 return VerifyTableStart(verifier) &&
9058 VerifyField<uint8_t>(verifier, VT_VALIDATE_INDICES, 1) &&
9059 verifier.EndTable();
9060 }
9061 SparseToDenseOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9062 void UnPackTo(SparseToDenseOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9063 static flatbuffers::Offset<SparseToDenseOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SparseToDenseOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9064 };
9065
9066 struct SparseToDenseOptionsBuilder {
9067 typedef SparseToDenseOptions Table;
9068 flatbuffers::FlatBufferBuilder &fbb_;
9069 flatbuffers::uoffset_t start_;
9070 void add_validate_indices(bool validate_indices) {
9071 fbb_.AddElement<uint8_t>(SparseToDenseOptions::VT_VALIDATE_INDICES, static_cast<uint8_t>(validate_indices), 0);
9072 }
9073 explicit SparseToDenseOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
9074 : fbb_(_fbb) {
9075 start_ = fbb_.StartTable();
9076 }
9077 flatbuffers::Offset<SparseToDenseOptions> Finish() {
9078 const auto end = fbb_.EndTable(start_);
9079 auto o = flatbuffers::Offset<SparseToDenseOptions>(end);
9080 return o;
9081 }
9082 };
9083
9084 inline flatbuffers::Offset<SparseToDenseOptions> CreateSparseToDenseOptions(
9085 flatbuffers::FlatBufferBuilder &_fbb,
9086 bool validate_indices = false) {
9087 SparseToDenseOptionsBuilder builder_(_fbb);
9088 builder_.add_validate_indices(validate_indices);
9089 return builder_.Finish();
9090 }
9091
9092 flatbuffers::Offset<SparseToDenseOptions> CreateSparseToDenseOptions(flatbuffers::FlatBufferBuilder &_fbb, const SparseToDenseOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9093
9094 struct EqualOptionsT : public flatbuffers::NativeTable {
9095 typedef EqualOptions TableType;
9096 };
9097
9098 struct EqualOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9099 typedef EqualOptionsT NativeTableType;
9100 typedef EqualOptionsBuilder Builder;
9101 bool Verify(flatbuffers::Verifier &verifier) const {
9102 return VerifyTableStart(verifier) &&
9103 verifier.EndTable();
9104 }
9105 EqualOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9106 void UnPackTo(EqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9107 static flatbuffers::Offset<EqualOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const EqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9108 };
9109
9110 struct EqualOptionsBuilder {
9111 typedef EqualOptions Table;
9112 flatbuffers::FlatBufferBuilder &fbb_;
9113 flatbuffers::uoffset_t start_;
9114 explicit EqualOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
9115 : fbb_(_fbb) {
9116 start_ = fbb_.StartTable();
9117 }
9118 flatbuffers::Offset<EqualOptions> Finish() {
9119 const auto end = fbb_.EndTable(start_);
9120 auto o = flatbuffers::Offset<EqualOptions>(end);
9121 return o;
9122 }
9123 };
9124
9125 inline flatbuffers::Offset<EqualOptions> CreateEqualOptions(
9126 flatbuffers::FlatBufferBuilder &_fbb) {
9127 EqualOptionsBuilder builder_(_fbb);
9128 return builder_.Finish();
9129 }
9130
9131 flatbuffers::Offset<EqualOptions> CreateEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const EqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9132
9133 struct NotEqualOptionsT : public flatbuffers::NativeTable {
9134 typedef NotEqualOptions TableType;
9135 };
9136
9137 struct NotEqualOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9138 typedef NotEqualOptionsT NativeTableType;
9139 typedef NotEqualOptionsBuilder Builder;
9140 bool Verify(flatbuffers::Verifier &verifier) const {
9141 return VerifyTableStart(verifier) &&
9142 verifier.EndTable();
9143 }
9144 NotEqualOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9145 void UnPackTo(NotEqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9146 static flatbuffers::Offset<NotEqualOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const NotEqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9147 };
9148
9149 struct NotEqualOptionsBuilder {
9150 typedef NotEqualOptions Table;
9151 flatbuffers::FlatBufferBuilder &fbb_;
9152 flatbuffers::uoffset_t start_;
9153 explicit NotEqualOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
9154 : fbb_(_fbb) {
9155 start_ = fbb_.StartTable();
9156 }
9157 flatbuffers::Offset<NotEqualOptions> Finish() {
9158 const auto end = fbb_.EndTable(start_);
9159 auto o = flatbuffers::Offset<NotEqualOptions>(end);
9160 return o;
9161 }
9162 };
9163
9164 inline flatbuffers::Offset<NotEqualOptions> CreateNotEqualOptions(
9165 flatbuffers::FlatBufferBuilder &_fbb) {
9166 NotEqualOptionsBuilder builder_(_fbb);
9167 return builder_.Finish();
9168 }
9169
9170 flatbuffers::Offset<NotEqualOptions> CreateNotEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const NotEqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9171
9172 struct ShapeOptionsT : public flatbuffers::NativeTable {
9173 typedef ShapeOptions TableType;
9174 tflite::TensorType out_type = tflite::TensorType_FLOAT32;
9175 };
9176
9177 struct ShapeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9178 typedef ShapeOptionsT NativeTableType;
9179 typedef ShapeOptionsBuilder Builder;
9180 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
9181 VT_OUT_TYPE = 4
9182 };
9183 tflite::TensorType out_type() const {
9184 return static_cast<tflite::TensorType>(GetField<int8_t>(VT_OUT_TYPE, 0));
9185 }
9186 bool mutate_out_type(tflite::TensorType _out_type = static_cast<tflite::TensorType>(0)) {
9187 return SetField<int8_t>(VT_OUT_TYPE, static_cast<int8_t>(_out_type), 0);
9188 }
9189 bool Verify(flatbuffers::Verifier &verifier) const {
9190 return VerifyTableStart(verifier) &&
9191 VerifyField<int8_t>(verifier, VT_OUT_TYPE, 1) &&
9192 verifier.EndTable();
9193 }
9194 ShapeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9195 void UnPackTo(ShapeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9196 static flatbuffers::Offset<ShapeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ShapeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9197 };
9198
9199 struct ShapeOptionsBuilder {
9200 typedef ShapeOptions Table;
9201 flatbuffers::FlatBufferBuilder &fbb_;
9202 flatbuffers::uoffset_t start_;
9203 void add_out_type(tflite::TensorType out_type) {
9204 fbb_.AddElement<int8_t>(ShapeOptions::VT_OUT_TYPE, static_cast<int8_t>(out_type), 0);
9205 }
9206 explicit ShapeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
9207 : fbb_(_fbb) {
9208 start_ = fbb_.StartTable();
9209 }
9210 flatbuffers::Offset<ShapeOptions> Finish() {
9211 const auto end = fbb_.EndTable(start_);
9212 auto o = flatbuffers::Offset<ShapeOptions>(end);
9213 return o;
9214 }
9215 };
9216
9217 inline flatbuffers::Offset<ShapeOptions> CreateShapeOptions(
9218 flatbuffers::FlatBufferBuilder &_fbb,
9219 tflite::TensorType out_type = tflite::TensorType_FLOAT32) {
9220 ShapeOptionsBuilder builder_(_fbb);
9221 builder_.add_out_type(out_type);
9222 return builder_.Finish();
9223 }
9224
9225 flatbuffers::Offset<ShapeOptions> CreateShapeOptions(flatbuffers::FlatBufferBuilder &_fbb, const ShapeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9226
9227 struct RankOptionsT : public flatbuffers::NativeTable {
9228 typedef RankOptions TableType;
9229 };
9230
9231 struct RankOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9232 typedef RankOptionsT NativeTableType;
9233 typedef RankOptionsBuilder Builder;
9234 bool Verify(flatbuffers::Verifier &verifier) const {
9235 return VerifyTableStart(verifier) &&
9236 verifier.EndTable();
9237 }
9238 RankOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9239 void UnPackTo(RankOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9240 static flatbuffers::Offset<RankOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const RankOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9241 };
9242
9243 struct RankOptionsBuilder {
9244 typedef RankOptions Table;
9245 flatbuffers::FlatBufferBuilder &fbb_;
9246 flatbuffers::uoffset_t start_;
9247 explicit RankOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
9248 : fbb_(_fbb) {
9249 start_ = fbb_.StartTable();
9250 }
9251 flatbuffers::Offset<RankOptions> Finish() {
9252 const auto end = fbb_.EndTable(start_);
9253 auto o = flatbuffers::Offset<RankOptions>(end);
9254 return o;
9255 }
9256 };
9257
9258 inline flatbuffers::Offset<RankOptions> CreateRankOptions(
9259 flatbuffers::FlatBufferBuilder &_fbb) {
9260 RankOptionsBuilder builder_(_fbb);
9261 return builder_.Finish();
9262 }
9263
9264 flatbuffers::Offset<RankOptions> CreateRankOptions(flatbuffers::FlatBufferBuilder &_fbb, const RankOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9265
9266 struct PowOptionsT : public flatbuffers::NativeTable {
9267 typedef PowOptions TableType;
9268 };
9269
9270 struct PowOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9271 typedef PowOptionsT NativeTableType;
9272 typedef PowOptionsBuilder Builder;
9273 bool Verify(flatbuffers::Verifier &verifier) const {
9274 return VerifyTableStart(verifier) &&
9275 verifier.EndTable();
9276 }
9277 PowOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9278 void UnPackTo(PowOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9279 static flatbuffers::Offset<PowOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const PowOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9280 };
9281
9282 struct PowOptionsBuilder {
9283 typedef PowOptions Table;
9284 flatbuffers::FlatBufferBuilder &fbb_;
9285 flatbuffers::uoffset_t start_;
9286 explicit PowOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
9287 : fbb_(_fbb) {
9288 start_ = fbb_.StartTable();
9289 }
9290 flatbuffers::Offset<PowOptions> Finish() {
9291 const auto end = fbb_.EndTable(start_);
9292 auto o = flatbuffers::Offset<PowOptions>(end);
9293 return o;
9294 }
9295 };
9296
9297 inline flatbuffers::Offset<PowOptions> CreatePowOptions(
9298 flatbuffers::FlatBufferBuilder &_fbb) {
9299 PowOptionsBuilder builder_(_fbb);
9300 return builder_.Finish();
9301 }
9302
9303 flatbuffers::Offset<PowOptions> CreatePowOptions(flatbuffers::FlatBufferBuilder &_fbb, const PowOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9304
9305 struct FakeQuantOptionsT : public flatbuffers::NativeTable {
9306 typedef FakeQuantOptions TableType;
9307 float min = 0.0f;
9308 float max = 0.0f;
9309 int32_t num_bits = 0;
9310 bool narrow_range = false;
9311 };
9312
9313 struct FakeQuantOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9314 typedef FakeQuantOptionsT NativeTableType;
9315 typedef FakeQuantOptionsBuilder Builder;
9316 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
9317 VT_MIN = 4,
9318 VT_MAX = 6,
9319 VT_NUM_BITS = 8,
9320 VT_NARROW_RANGE = 10
9321 };
9322 float min() const {
9323 return GetField<float>(VT_MIN, 0.0f);
9324 }
9325 bool mutate_min(float _min = 0.0f) {
9326 return SetField<float>(VT_MIN, _min, 0.0f);
9327 }
9328 float max() const {
9329 return GetField<float>(VT_MAX, 0.0f);
9330 }
9331 bool mutate_max(float _max = 0.0f) {
9332 return SetField<float>(VT_MAX, _max, 0.0f);
9333 }
9334 int32_t num_bits() const {
9335 return GetField<int32_t>(VT_NUM_BITS, 0);
9336 }
9337 bool mutate_num_bits(int32_t _num_bits = 0) {
9338 return SetField<int32_t>(VT_NUM_BITS, _num_bits, 0);
9339 }
9340 bool narrow_range() const {
9341 return GetField<uint8_t>(VT_NARROW_RANGE, 0) != 0;
9342 }
9343 bool mutate_narrow_range(bool _narrow_range = 0) {
9344 return SetField<uint8_t>(VT_NARROW_RANGE, static_cast<uint8_t>(_narrow_range), 0);
9345 }
9346 bool Verify(flatbuffers::Verifier &verifier) const {
9347 return VerifyTableStart(verifier) &&
9348 VerifyField<float>(verifier, VT_MIN, 4) &&
9349 VerifyField<float>(verifier, VT_MAX, 4) &&
9350 VerifyField<int32_t>(verifier, VT_NUM_BITS, 4) &&
9351 VerifyField<uint8_t>(verifier, VT_NARROW_RANGE, 1) &&
9352 verifier.EndTable();
9353 }
9354 FakeQuantOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9355 void UnPackTo(FakeQuantOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9356 static flatbuffers::Offset<FakeQuantOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const FakeQuantOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9357 };
9358
9359 struct FakeQuantOptionsBuilder {
9360 typedef FakeQuantOptions Table;
9361 flatbuffers::FlatBufferBuilder &fbb_;
9362 flatbuffers::uoffset_t start_;
9363 void add_min(float min) {
9364 fbb_.AddElement<float>(FakeQuantOptions::VT_MIN, min, 0.0f);
9365 }
9366 void add_max(float max) {
9367 fbb_.AddElement<float>(FakeQuantOptions::VT_MAX, max, 0.0f);
9368 }
9369 void add_num_bits(int32_t num_bits) {
9370 fbb_.AddElement<int32_t>(FakeQuantOptions::VT_NUM_BITS, num_bits, 0);
9371 }
9372 void add_narrow_range(bool narrow_range) {
9373 fbb_.AddElement<uint8_t>(FakeQuantOptions::VT_NARROW_RANGE, static_cast<uint8_t>(narrow_range), 0);
9374 }
9375 explicit FakeQuantOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
9376 : fbb_(_fbb) {
9377 start_ = fbb_.StartTable();
9378 }
9379 flatbuffers::Offset<FakeQuantOptions> Finish() {
9380 const auto end = fbb_.EndTable(start_);
9381 auto o = flatbuffers::Offset<FakeQuantOptions>(end);
9382 return o;
9383 }
9384 };
9385
9386 inline flatbuffers::Offset<FakeQuantOptions> CreateFakeQuantOptions(
9387 flatbuffers::FlatBufferBuilder &_fbb,
9388 float min = 0.0f,
9389 float max = 0.0f,
9390 int32_t num_bits = 0,
9391 bool narrow_range = false) {
9392 FakeQuantOptionsBuilder builder_(_fbb);
9393 builder_.add_num_bits(num_bits);
9394 builder_.add_max(max);
9395 builder_.add_min(min);
9396 builder_.add_narrow_range(narrow_range);
9397 return builder_.Finish();
9398 }
9399
9400 flatbuffers::Offset<FakeQuantOptions> CreateFakeQuantOptions(flatbuffers::FlatBufferBuilder &_fbb, const FakeQuantOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9401
9402 struct PackOptionsT : public flatbuffers::NativeTable {
9403 typedef PackOptions TableType;
9404 int32_t values_count = 0;
9405 int32_t axis = 0;
9406 };
9407
9408 struct PackOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9409 typedef PackOptionsT NativeTableType;
9410 typedef PackOptionsBuilder Builder;
9411 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
9412 VT_VALUES_COUNT = 4,
9413 VT_AXIS = 6
9414 };
9415 int32_t values_count() const {
9416 return GetField<int32_t>(VT_VALUES_COUNT, 0);
9417 }
9418 bool mutate_values_count(int32_t _values_count = 0) {
9419 return SetField<int32_t>(VT_VALUES_COUNT, _values_count, 0);
9420 }
9421 int32_t axis() const {
9422 return GetField<int32_t>(VT_AXIS, 0);
9423 }
9424 bool mutate_axis(int32_t _axis = 0) {
9425 return SetField<int32_t>(VT_AXIS, _axis, 0);
9426 }
9427 bool Verify(flatbuffers::Verifier &verifier) const {
9428 return VerifyTableStart(verifier) &&
9429 VerifyField<int32_t>(verifier, VT_VALUES_COUNT, 4) &&
9430 VerifyField<int32_t>(verifier, VT_AXIS, 4) &&
9431 verifier.EndTable();
9432 }
9433 PackOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9434 void UnPackTo(PackOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9435 static flatbuffers::Offset<PackOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const PackOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9436 };
9437
9438 struct PackOptionsBuilder {
9439 typedef PackOptions Table;
9440 flatbuffers::FlatBufferBuilder &fbb_;
9441 flatbuffers::uoffset_t start_;
9442 void add_values_count(int32_t values_count) {
9443 fbb_.AddElement<int32_t>(PackOptions::VT_VALUES_COUNT, values_count, 0);
9444 }
9445 void add_axis(int32_t axis) {
9446 fbb_.AddElement<int32_t>(PackOptions::VT_AXIS, axis, 0);
9447 }
9448 explicit PackOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
9449 : fbb_(_fbb) {
9450 start_ = fbb_.StartTable();
9451 }
9452 flatbuffers::Offset<PackOptions> Finish() {
9453 const auto end = fbb_.EndTable(start_);
9454 auto o = flatbuffers::Offset<PackOptions>(end);
9455 return o;
9456 }
9457 };
9458
9459 inline flatbuffers::Offset<PackOptions> CreatePackOptions(
9460 flatbuffers::FlatBufferBuilder &_fbb,
9461 int32_t values_count = 0,
9462 int32_t axis = 0) {
9463 PackOptionsBuilder builder_(_fbb);
9464 builder_.add_axis(axis);
9465 builder_.add_values_count(values_count);
9466 return builder_.Finish();
9467 }
9468
9469 flatbuffers::Offset<PackOptions> CreatePackOptions(flatbuffers::FlatBufferBuilder &_fbb, const PackOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9470
9471 struct LogicalOrOptionsT : public flatbuffers::NativeTable {
9472 typedef LogicalOrOptions TableType;
9473 };
9474
9475 struct LogicalOrOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9476 typedef LogicalOrOptionsT NativeTableType;
9477 typedef LogicalOrOptionsBuilder Builder;
9478 bool Verify(flatbuffers::Verifier &verifier) const {
9479 return VerifyTableStart(verifier) &&
9480 verifier.EndTable();
9481 }
9482 LogicalOrOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9483 void UnPackTo(LogicalOrOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9484 static flatbuffers::Offset<LogicalOrOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogicalOrOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9485 };
9486
9487 struct LogicalOrOptionsBuilder {
9488 typedef LogicalOrOptions Table;
9489 flatbuffers::FlatBufferBuilder &fbb_;
9490 flatbuffers::uoffset_t start_;
9491 explicit LogicalOrOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
9492 : fbb_(_fbb) {
9493 start_ = fbb_.StartTable();
9494 }
9495 flatbuffers::Offset<LogicalOrOptions> Finish() {
9496 const auto end = fbb_.EndTable(start_);
9497 auto o = flatbuffers::Offset<LogicalOrOptions>(end);
9498 return o;
9499 }
9500 };
9501
9502 inline flatbuffers::Offset<LogicalOrOptions> CreateLogicalOrOptions(
9503 flatbuffers::FlatBufferBuilder &_fbb) {
9504 LogicalOrOptionsBuilder builder_(_fbb);
9505 return builder_.Finish();
9506 }
9507
9508 flatbuffers::Offset<LogicalOrOptions> CreateLogicalOrOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogicalOrOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9509
9510 struct OneHotOptionsT : public flatbuffers::NativeTable {
9511 typedef OneHotOptions TableType;
9512 int32_t axis = 0;
9513 };
9514
9515 struct OneHotOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9516 typedef OneHotOptionsT NativeTableType;
9517 typedef OneHotOptionsBuilder Builder;
9518 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
9519 VT_AXIS = 4
9520 };
9521 int32_t axis() const {
9522 return GetField<int32_t>(VT_AXIS, 0);
9523 }
9524 bool mutate_axis(int32_t _axis = 0) {
9525 return SetField<int32_t>(VT_AXIS, _axis, 0);
9526 }
9527 bool Verify(flatbuffers::Verifier &verifier) const {
9528 return VerifyTableStart(verifier) &&
9529 VerifyField<int32_t>(verifier, VT_AXIS, 4) &&
9530 verifier.EndTable();
9531 }
9532 OneHotOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9533 void UnPackTo(OneHotOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9534 static flatbuffers::Offset<OneHotOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const OneHotOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9535 };
9536
9537 struct OneHotOptionsBuilder {
9538 typedef OneHotOptions Table;
9539 flatbuffers::FlatBufferBuilder &fbb_;
9540 flatbuffers::uoffset_t start_;
9541 void add_axis(int32_t axis) {
9542 fbb_.AddElement<int32_t>(OneHotOptions::VT_AXIS, axis, 0);
9543 }
9544 explicit OneHotOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
9545 : fbb_(_fbb) {
9546 start_ = fbb_.StartTable();
9547 }
9548 flatbuffers::Offset<OneHotOptions> Finish() {
9549 const auto end = fbb_.EndTable(start_);
9550 auto o = flatbuffers::Offset<OneHotOptions>(end);
9551 return o;
9552 }
9553 };
9554
9555 inline flatbuffers::Offset<OneHotOptions> CreateOneHotOptions(
9556 flatbuffers::FlatBufferBuilder &_fbb,
9557 int32_t axis = 0) {
9558 OneHotOptionsBuilder builder_(_fbb);
9559 builder_.add_axis(axis);
9560 return builder_.Finish();
9561 }
9562
9563 flatbuffers::Offset<OneHotOptions> CreateOneHotOptions(flatbuffers::FlatBufferBuilder &_fbb, const OneHotOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9564
9565 struct AbsOptionsT : public flatbuffers::NativeTable {
9566 typedef AbsOptions TableType;
9567 };
9568
9569 struct AbsOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9570 typedef AbsOptionsT NativeTableType;
9571 typedef AbsOptionsBuilder Builder;
9572 bool Verify(flatbuffers::Verifier &verifier) const {
9573 return VerifyTableStart(verifier) &&
9574 verifier.EndTable();
9575 }
9576 AbsOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9577 void UnPackTo(AbsOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9578 static flatbuffers::Offset<AbsOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const AbsOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9579 };
9580
9581 struct AbsOptionsBuilder {
9582 typedef AbsOptions Table;
9583 flatbuffers::FlatBufferBuilder &fbb_;
9584 flatbuffers::uoffset_t start_;
9585 explicit AbsOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
9586 : fbb_(_fbb) {
9587 start_ = fbb_.StartTable();
9588 }
9589 flatbuffers::Offset<AbsOptions> Finish() {
9590 const auto end = fbb_.EndTable(start_);
9591 auto o = flatbuffers::Offset<AbsOptions>(end);
9592 return o;
9593 }
9594 };
9595
9596 inline flatbuffers::Offset<AbsOptions> CreateAbsOptions(
9597 flatbuffers::FlatBufferBuilder &_fbb) {
9598 AbsOptionsBuilder builder_(_fbb);
9599 return builder_.Finish();
9600 }
9601
9602 flatbuffers::Offset<AbsOptions> CreateAbsOptions(flatbuffers::FlatBufferBuilder &_fbb, const AbsOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9603
9604 struct HardSwishOptionsT : public flatbuffers::NativeTable {
9605 typedef HardSwishOptions TableType;
9606 };
9607
9608 struct HardSwishOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9609 typedef HardSwishOptionsT NativeTableType;
9610 typedef HardSwishOptionsBuilder Builder;
9611 bool Verify(flatbuffers::Verifier &verifier) const {
9612 return VerifyTableStart(verifier) &&
9613 verifier.EndTable();
9614 }
9615 HardSwishOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9616 void UnPackTo(HardSwishOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9617 static flatbuffers::Offset<HardSwishOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const HardSwishOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9618 };
9619
9620 struct HardSwishOptionsBuilder {
9621 typedef HardSwishOptions Table;
9622 flatbuffers::FlatBufferBuilder &fbb_;
9623 flatbuffers::uoffset_t start_;
9624 explicit HardSwishOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
9625 : fbb_(_fbb) {
9626 start_ = fbb_.StartTable();
9627 }
9628 flatbuffers::Offset<HardSwishOptions> Finish() {
9629 const auto end = fbb_.EndTable(start_);
9630 auto o = flatbuffers::Offset<HardSwishOptions>(end);
9631 return o;
9632 }
9633 };
9634
9635 inline flatbuffers::Offset<HardSwishOptions> CreateHardSwishOptions(
9636 flatbuffers::FlatBufferBuilder &_fbb) {
9637 HardSwishOptionsBuilder builder_(_fbb);
9638 return builder_.Finish();
9639 }
9640
9641 flatbuffers::Offset<HardSwishOptions> CreateHardSwishOptions(flatbuffers::FlatBufferBuilder &_fbb, const HardSwishOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9642
9643 struct LogicalAndOptionsT : public flatbuffers::NativeTable {
9644 typedef LogicalAndOptions TableType;
9645 };
9646
9647 struct LogicalAndOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9648 typedef LogicalAndOptionsT NativeTableType;
9649 typedef LogicalAndOptionsBuilder Builder;
9650 bool Verify(flatbuffers::Verifier &verifier) const {
9651 return VerifyTableStart(verifier) &&
9652 verifier.EndTable();
9653 }
9654 LogicalAndOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9655 void UnPackTo(LogicalAndOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9656 static flatbuffers::Offset<LogicalAndOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogicalAndOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9657 };
9658
9659 struct LogicalAndOptionsBuilder {
9660 typedef LogicalAndOptions Table;
9661 flatbuffers::FlatBufferBuilder &fbb_;
9662 flatbuffers::uoffset_t start_;
9663 explicit LogicalAndOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
9664 : fbb_(_fbb) {
9665 start_ = fbb_.StartTable();
9666 }
9667 flatbuffers::Offset<LogicalAndOptions> Finish() {
9668 const auto end = fbb_.EndTable(start_);
9669 auto o = flatbuffers::Offset<LogicalAndOptions>(end);
9670 return o;
9671 }
9672 };
9673
9674 inline flatbuffers::Offset<LogicalAndOptions> CreateLogicalAndOptions(
9675 flatbuffers::FlatBufferBuilder &_fbb) {
9676 LogicalAndOptionsBuilder builder_(_fbb);
9677 return builder_.Finish();
9678 }
9679
9680 flatbuffers::Offset<LogicalAndOptions> CreateLogicalAndOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogicalAndOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9681
9682 struct LogicalNotOptionsT : public flatbuffers::NativeTable {
9683 typedef LogicalNotOptions TableType;
9684 };
9685
9686 struct LogicalNotOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9687 typedef LogicalNotOptionsT NativeTableType;
9688 typedef LogicalNotOptionsBuilder Builder;
9689 bool Verify(flatbuffers::Verifier &verifier) const {
9690 return VerifyTableStart(verifier) &&
9691 verifier.EndTable();
9692 }
9693 LogicalNotOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9694 void UnPackTo(LogicalNotOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9695 static flatbuffers::Offset<LogicalNotOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogicalNotOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9696 };
9697
9698 struct LogicalNotOptionsBuilder {
9699 typedef LogicalNotOptions Table;
9700 flatbuffers::FlatBufferBuilder &fbb_;
9701 flatbuffers::uoffset_t start_;
9702 explicit LogicalNotOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
9703 : fbb_(_fbb) {
9704 start_ = fbb_.StartTable();
9705 }
9706 flatbuffers::Offset<LogicalNotOptions> Finish() {
9707 const auto end = fbb_.EndTable(start_);
9708 auto o = flatbuffers::Offset<LogicalNotOptions>(end);
9709 return o;
9710 }
9711 };
9712
9713 inline flatbuffers::Offset<LogicalNotOptions> CreateLogicalNotOptions(
9714 flatbuffers::FlatBufferBuilder &_fbb) {
9715 LogicalNotOptionsBuilder builder_(_fbb);
9716 return builder_.Finish();
9717 }
9718
9719 flatbuffers::Offset<LogicalNotOptions> CreateLogicalNotOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogicalNotOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9720
9721 struct UnpackOptionsT : public flatbuffers::NativeTable {
9722 typedef UnpackOptions TableType;
9723 int32_t num = 0;
9724 int32_t axis = 0;
9725 };
9726
9727 struct UnpackOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9728 typedef UnpackOptionsT NativeTableType;
9729 typedef UnpackOptionsBuilder Builder;
9730 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
9731 VT_NUM = 4,
9732 VT_AXIS = 6
9733 };
9734 int32_t num() const {
9735 return GetField<int32_t>(VT_NUM, 0);
9736 }
9737 bool mutate_num(int32_t _num = 0) {
9738 return SetField<int32_t>(VT_NUM, _num, 0);
9739 }
9740 int32_t axis() const {
9741 return GetField<int32_t>(VT_AXIS, 0);
9742 }
9743 bool mutate_axis(int32_t _axis = 0) {
9744 return SetField<int32_t>(VT_AXIS, _axis, 0);
9745 }
9746 bool Verify(flatbuffers::Verifier &verifier) const {
9747 return VerifyTableStart(verifier) &&
9748 VerifyField<int32_t>(verifier, VT_NUM, 4) &&
9749 VerifyField<int32_t>(verifier, VT_AXIS, 4) &&
9750 verifier.EndTable();
9751 }
9752 UnpackOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9753 void UnPackTo(UnpackOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9754 static flatbuffers::Offset<UnpackOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnpackOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9755 };
9756
9757 struct UnpackOptionsBuilder {
9758 typedef UnpackOptions Table;
9759 flatbuffers::FlatBufferBuilder &fbb_;
9760 flatbuffers::uoffset_t start_;
9761 void add_num(int32_t num) {
9762 fbb_.AddElement<int32_t>(UnpackOptions::VT_NUM, num, 0);
9763 }
9764 void add_axis(int32_t axis) {
9765 fbb_.AddElement<int32_t>(UnpackOptions::VT_AXIS, axis, 0);
9766 }
9767 explicit UnpackOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
9768 : fbb_(_fbb) {
9769 start_ = fbb_.StartTable();
9770 }
9771 flatbuffers::Offset<UnpackOptions> Finish() {
9772 const auto end = fbb_.EndTable(start_);
9773 auto o = flatbuffers::Offset<UnpackOptions>(end);
9774 return o;
9775 }
9776 };
9777
9778 inline flatbuffers::Offset<UnpackOptions> CreateUnpackOptions(
9779 flatbuffers::FlatBufferBuilder &_fbb,
9780 int32_t num = 0,
9781 int32_t axis = 0) {
9782 UnpackOptionsBuilder builder_(_fbb);
9783 builder_.add_axis(axis);
9784 builder_.add_num(num);
9785 return builder_.Finish();
9786 }
9787
9788 flatbuffers::Offset<UnpackOptions> CreateUnpackOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnpackOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9789
9790 struct FloorDivOptionsT : public flatbuffers::NativeTable {
9791 typedef FloorDivOptions TableType;
9792 };
9793
9794 struct FloorDivOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9795 typedef FloorDivOptionsT NativeTableType;
9796 typedef FloorDivOptionsBuilder Builder;
9797 bool Verify(flatbuffers::Verifier &verifier) const {
9798 return VerifyTableStart(verifier) &&
9799 verifier.EndTable();
9800 }
9801 FloorDivOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9802 void UnPackTo(FloorDivOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9803 static flatbuffers::Offset<FloorDivOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const FloorDivOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9804 };
9805
9806 struct FloorDivOptionsBuilder {
9807 typedef FloorDivOptions Table;
9808 flatbuffers::FlatBufferBuilder &fbb_;
9809 flatbuffers::uoffset_t start_;
9810 explicit FloorDivOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
9811 : fbb_(_fbb) {
9812 start_ = fbb_.StartTable();
9813 }
9814 flatbuffers::Offset<FloorDivOptions> Finish() {
9815 const auto end = fbb_.EndTable(start_);
9816 auto o = flatbuffers::Offset<FloorDivOptions>(end);
9817 return o;
9818 }
9819 };
9820
9821 inline flatbuffers::Offset<FloorDivOptions> CreateFloorDivOptions(
9822 flatbuffers::FlatBufferBuilder &_fbb) {
9823 FloorDivOptionsBuilder builder_(_fbb);
9824 return builder_.Finish();
9825 }
9826
9827 flatbuffers::Offset<FloorDivOptions> CreateFloorDivOptions(flatbuffers::FlatBufferBuilder &_fbb, const FloorDivOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9828
9829 struct SquareOptionsT : public flatbuffers::NativeTable {
9830 typedef SquareOptions TableType;
9831 };
9832
9833 struct SquareOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9834 typedef SquareOptionsT NativeTableType;
9835 typedef SquareOptionsBuilder Builder;
9836 bool Verify(flatbuffers::Verifier &verifier) const {
9837 return VerifyTableStart(verifier) &&
9838 verifier.EndTable();
9839 }
9840 SquareOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9841 void UnPackTo(SquareOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9842 static flatbuffers::Offset<SquareOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SquareOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9843 };
9844
9845 struct SquareOptionsBuilder {
9846 typedef SquareOptions Table;
9847 flatbuffers::FlatBufferBuilder &fbb_;
9848 flatbuffers::uoffset_t start_;
9849 explicit SquareOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
9850 : fbb_(_fbb) {
9851 start_ = fbb_.StartTable();
9852 }
9853 flatbuffers::Offset<SquareOptions> Finish() {
9854 const auto end = fbb_.EndTable(start_);
9855 auto o = flatbuffers::Offset<SquareOptions>(end);
9856 return o;
9857 }
9858 };
9859
9860 inline flatbuffers::Offset<SquareOptions> CreateSquareOptions(
9861 flatbuffers::FlatBufferBuilder &_fbb) {
9862 SquareOptionsBuilder builder_(_fbb);
9863 return builder_.Finish();
9864 }
9865
9866 flatbuffers::Offset<SquareOptions> CreateSquareOptions(flatbuffers::FlatBufferBuilder &_fbb, const SquareOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9867
9868 struct ZerosLikeOptionsT : public flatbuffers::NativeTable {
9869 typedef ZerosLikeOptions TableType;
9870 };
9871
9872 struct ZerosLikeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9873 typedef ZerosLikeOptionsT NativeTableType;
9874 typedef ZerosLikeOptionsBuilder Builder;
9875 bool Verify(flatbuffers::Verifier &verifier) const {
9876 return VerifyTableStart(verifier) &&
9877 verifier.EndTable();
9878 }
9879 ZerosLikeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9880 void UnPackTo(ZerosLikeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9881 static flatbuffers::Offset<ZerosLikeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ZerosLikeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9882 };
9883
9884 struct ZerosLikeOptionsBuilder {
9885 typedef ZerosLikeOptions Table;
9886 flatbuffers::FlatBufferBuilder &fbb_;
9887 flatbuffers::uoffset_t start_;
9888 explicit ZerosLikeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
9889 : fbb_(_fbb) {
9890 start_ = fbb_.StartTable();
9891 }
9892 flatbuffers::Offset<ZerosLikeOptions> Finish() {
9893 const auto end = fbb_.EndTable(start_);
9894 auto o = flatbuffers::Offset<ZerosLikeOptions>(end);
9895 return o;
9896 }
9897 };
9898
9899 inline flatbuffers::Offset<ZerosLikeOptions> CreateZerosLikeOptions(
9900 flatbuffers::FlatBufferBuilder &_fbb) {
9901 ZerosLikeOptionsBuilder builder_(_fbb);
9902 return builder_.Finish();
9903 }
9904
9905 flatbuffers::Offset<ZerosLikeOptions> CreateZerosLikeOptions(flatbuffers::FlatBufferBuilder &_fbb, const ZerosLikeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9906
9907 struct FillOptionsT : public flatbuffers::NativeTable {
9908 typedef FillOptions TableType;
9909 };
9910
9911 struct FillOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9912 typedef FillOptionsT NativeTableType;
9913 typedef FillOptionsBuilder Builder;
9914 bool Verify(flatbuffers::Verifier &verifier) const {
9915 return VerifyTableStart(verifier) &&
9916 verifier.EndTable();
9917 }
9918 FillOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9919 void UnPackTo(FillOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9920 static flatbuffers::Offset<FillOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const FillOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9921 };
9922
9923 struct FillOptionsBuilder {
9924 typedef FillOptions Table;
9925 flatbuffers::FlatBufferBuilder &fbb_;
9926 flatbuffers::uoffset_t start_;
9927 explicit FillOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
9928 : fbb_(_fbb) {
9929 start_ = fbb_.StartTable();
9930 }
9931 flatbuffers::Offset<FillOptions> Finish() {
9932 const auto end = fbb_.EndTable(start_);
9933 auto o = flatbuffers::Offset<FillOptions>(end);
9934 return o;
9935 }
9936 };
9937
9938 inline flatbuffers::Offset<FillOptions> CreateFillOptions(
9939 flatbuffers::FlatBufferBuilder &_fbb) {
9940 FillOptionsBuilder builder_(_fbb);
9941 return builder_.Finish();
9942 }
9943
9944 flatbuffers::Offset<FillOptions> CreateFillOptions(flatbuffers::FlatBufferBuilder &_fbb, const FillOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9945
9946 struct FloorModOptionsT : public flatbuffers::NativeTable {
9947 typedef FloorModOptions TableType;
9948 };
9949
9950 struct FloorModOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9951 typedef FloorModOptionsT NativeTableType;
9952 typedef FloorModOptionsBuilder Builder;
9953 bool Verify(flatbuffers::Verifier &verifier) const {
9954 return VerifyTableStart(verifier) &&
9955 verifier.EndTable();
9956 }
9957 FloorModOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9958 void UnPackTo(FloorModOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9959 static flatbuffers::Offset<FloorModOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const FloorModOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9960 };
9961
9962 struct FloorModOptionsBuilder {
9963 typedef FloorModOptions Table;
9964 flatbuffers::FlatBufferBuilder &fbb_;
9965 flatbuffers::uoffset_t start_;
9966 explicit FloorModOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
9967 : fbb_(_fbb) {
9968 start_ = fbb_.StartTable();
9969 }
9970 flatbuffers::Offset<FloorModOptions> Finish() {
9971 const auto end = fbb_.EndTable(start_);
9972 auto o = flatbuffers::Offset<FloorModOptions>(end);
9973 return o;
9974 }
9975 };
9976
9977 inline flatbuffers::Offset<FloorModOptions> CreateFloorModOptions(
9978 flatbuffers::FlatBufferBuilder &_fbb) {
9979 FloorModOptionsBuilder builder_(_fbb);
9980 return builder_.Finish();
9981 }
9982
9983 flatbuffers::Offset<FloorModOptions> CreateFloorModOptions(flatbuffers::FlatBufferBuilder &_fbb, const FloorModOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9984
9985 struct RangeOptionsT : public flatbuffers::NativeTable {
9986 typedef RangeOptions TableType;
9987 };
9988
9989 struct RangeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
9990 typedef RangeOptionsT NativeTableType;
9991 typedef RangeOptionsBuilder Builder;
9992 bool Verify(flatbuffers::Verifier &verifier) const {
9993 return VerifyTableStart(verifier) &&
9994 verifier.EndTable();
9995 }
9996 RangeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9997 void UnPackTo(RangeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
9998 static flatbuffers::Offset<RangeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const RangeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
9999 };
10000
10001 struct RangeOptionsBuilder {
10002 typedef RangeOptions Table;
10003 flatbuffers::FlatBufferBuilder &fbb_;
10004 flatbuffers::uoffset_t start_;
10005 explicit RangeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10006 : fbb_(_fbb) {
10007 start_ = fbb_.StartTable();
10008 }
10009 flatbuffers::Offset<RangeOptions> Finish() {
10010 const auto end = fbb_.EndTable(start_);
10011 auto o = flatbuffers::Offset<RangeOptions>(end);
10012 return o;
10013 }
10014 };
10015
10016 inline flatbuffers::Offset<RangeOptions> CreateRangeOptions(
10017 flatbuffers::FlatBufferBuilder &_fbb) {
10018 RangeOptionsBuilder builder_(_fbb);
10019 return builder_.Finish();
10020 }
10021
10022 flatbuffers::Offset<RangeOptions> CreateRangeOptions(flatbuffers::FlatBufferBuilder &_fbb, const RangeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10023
10024 struct LeakyReluOptionsT : public flatbuffers::NativeTable {
10025 typedef LeakyReluOptions TableType;
10026 float alpha = 0.0f;
10027 };
10028
10029 struct LeakyReluOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
10030 typedef LeakyReluOptionsT NativeTableType;
10031 typedef LeakyReluOptionsBuilder Builder;
10032 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
10033 VT_ALPHA = 4
10034 };
10035 float alpha() const {
10036 return GetField<float>(VT_ALPHA, 0.0f);
10037 }
10038 bool mutate_alpha(float _alpha = 0.0f) {
10039 return SetField<float>(VT_ALPHA, _alpha, 0.0f);
10040 }
10041 bool Verify(flatbuffers::Verifier &verifier) const {
10042 return VerifyTableStart(verifier) &&
10043 VerifyField<float>(verifier, VT_ALPHA, 4) &&
10044 verifier.EndTable();
10045 }
10046 LeakyReluOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10047 void UnPackTo(LeakyReluOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10048 static flatbuffers::Offset<LeakyReluOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LeakyReluOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10049 };
10050
10051 struct LeakyReluOptionsBuilder {
10052 typedef LeakyReluOptions Table;
10053 flatbuffers::FlatBufferBuilder &fbb_;
10054 flatbuffers::uoffset_t start_;
10055 void add_alpha(float alpha) {
10056 fbb_.AddElement<float>(LeakyReluOptions::VT_ALPHA, alpha, 0.0f);
10057 }
10058 explicit LeakyReluOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10059 : fbb_(_fbb) {
10060 start_ = fbb_.StartTable();
10061 }
10062 flatbuffers::Offset<LeakyReluOptions> Finish() {
10063 const auto end = fbb_.EndTable(start_);
10064 auto o = flatbuffers::Offset<LeakyReluOptions>(end);
10065 return o;
10066 }
10067 };
10068
10069 inline flatbuffers::Offset<LeakyReluOptions> CreateLeakyReluOptions(
10070 flatbuffers::FlatBufferBuilder &_fbb,
10071 float alpha = 0.0f) {
10072 LeakyReluOptionsBuilder builder_(_fbb);
10073 builder_.add_alpha(alpha);
10074 return builder_.Finish();
10075 }
10076
10077 flatbuffers::Offset<LeakyReluOptions> CreateLeakyReluOptions(flatbuffers::FlatBufferBuilder &_fbb, const LeakyReluOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10078
10079 struct SquaredDifferenceOptionsT : public flatbuffers::NativeTable {
10080 typedef SquaredDifferenceOptions TableType;
10081 };
10082
10083 struct SquaredDifferenceOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
10084 typedef SquaredDifferenceOptionsT NativeTableType;
10085 typedef SquaredDifferenceOptionsBuilder Builder;
10086 bool Verify(flatbuffers::Verifier &verifier) const {
10087 return VerifyTableStart(verifier) &&
10088 verifier.EndTable();
10089 }
10090 SquaredDifferenceOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10091 void UnPackTo(SquaredDifferenceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10092 static flatbuffers::Offset<SquaredDifferenceOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SquaredDifferenceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10093 };
10094
10095 struct SquaredDifferenceOptionsBuilder {
10096 typedef SquaredDifferenceOptions Table;
10097 flatbuffers::FlatBufferBuilder &fbb_;
10098 flatbuffers::uoffset_t start_;
10099 explicit SquaredDifferenceOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10100 : fbb_(_fbb) {
10101 start_ = fbb_.StartTable();
10102 }
10103 flatbuffers::Offset<SquaredDifferenceOptions> Finish() {
10104 const auto end = fbb_.EndTable(start_);
10105 auto o = flatbuffers::Offset<SquaredDifferenceOptions>(end);
10106 return o;
10107 }
10108 };
10109
10110 inline flatbuffers::Offset<SquaredDifferenceOptions> CreateSquaredDifferenceOptions(
10111 flatbuffers::FlatBufferBuilder &_fbb) {
10112 SquaredDifferenceOptionsBuilder builder_(_fbb);
10113 return builder_.Finish();
10114 }
10115
10116 flatbuffers::Offset<SquaredDifferenceOptions> CreateSquaredDifferenceOptions(flatbuffers::FlatBufferBuilder &_fbb, const SquaredDifferenceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10117
10118 struct MirrorPadOptionsT : public flatbuffers::NativeTable {
10119 typedef MirrorPadOptions TableType;
10120 tflite::MirrorPadMode mode = tflite::MirrorPadMode_REFLECT;
10121 };
10122
10123 struct MirrorPadOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
10124 typedef MirrorPadOptionsT NativeTableType;
10125 typedef MirrorPadOptionsBuilder Builder;
10126 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
10127 VT_MODE = 4
10128 };
10129 tflite::MirrorPadMode mode() const {
10130 return static_cast<tflite::MirrorPadMode>(GetField<int8_t>(VT_MODE, 0));
10131 }
10132 bool mutate_mode(tflite::MirrorPadMode _mode = static_cast<tflite::MirrorPadMode>(0)) {
10133 return SetField<int8_t>(VT_MODE, static_cast<int8_t>(_mode), 0);
10134 }
10135 bool Verify(flatbuffers::Verifier &verifier) const {
10136 return VerifyTableStart(verifier) &&
10137 VerifyField<int8_t>(verifier, VT_MODE, 1) &&
10138 verifier.EndTable();
10139 }
10140 MirrorPadOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10141 void UnPackTo(MirrorPadOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10142 static flatbuffers::Offset<MirrorPadOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const MirrorPadOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10143 };
10144
10145 struct MirrorPadOptionsBuilder {
10146 typedef MirrorPadOptions Table;
10147 flatbuffers::FlatBufferBuilder &fbb_;
10148 flatbuffers::uoffset_t start_;
10149 void add_mode(tflite::MirrorPadMode mode) {
10150 fbb_.AddElement<int8_t>(MirrorPadOptions::VT_MODE, static_cast<int8_t>(mode), 0);
10151 }
10152 explicit MirrorPadOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10153 : fbb_(_fbb) {
10154 start_ = fbb_.StartTable();
10155 }
10156 flatbuffers::Offset<MirrorPadOptions> Finish() {
10157 const auto end = fbb_.EndTable(start_);
10158 auto o = flatbuffers::Offset<MirrorPadOptions>(end);
10159 return o;
10160 }
10161 };
10162
10163 inline flatbuffers::Offset<MirrorPadOptions> CreateMirrorPadOptions(
10164 flatbuffers::FlatBufferBuilder &_fbb,
10165 tflite::MirrorPadMode mode = tflite::MirrorPadMode_REFLECT) {
10166 MirrorPadOptionsBuilder builder_(_fbb);
10167 builder_.add_mode(mode);
10168 return builder_.Finish();
10169 }
10170
10171 flatbuffers::Offset<MirrorPadOptions> CreateMirrorPadOptions(flatbuffers::FlatBufferBuilder &_fbb, const MirrorPadOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10172
10173 struct UniqueOptionsT : public flatbuffers::NativeTable {
10174 typedef UniqueOptions TableType;
10175 tflite::TensorType idx_out_type = tflite::TensorType_INT32;
10176 };
10177
10178 struct UniqueOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
10179 typedef UniqueOptionsT NativeTableType;
10180 typedef UniqueOptionsBuilder Builder;
10181 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
10182 VT_IDX_OUT_TYPE = 4
10183 };
10184 tflite::TensorType idx_out_type() const {
10185 return static_cast<tflite::TensorType>(GetField<int8_t>(VT_IDX_OUT_TYPE, 2));
10186 }
10187 bool mutate_idx_out_type(tflite::TensorType _idx_out_type = static_cast<tflite::TensorType>(2)) {
10188 return SetField<int8_t>(VT_IDX_OUT_TYPE, static_cast<int8_t>(_idx_out_type), 2);
10189 }
10190 bool Verify(flatbuffers::Verifier &verifier) const {
10191 return VerifyTableStart(verifier) &&
10192 VerifyField<int8_t>(verifier, VT_IDX_OUT_TYPE, 1) &&
10193 verifier.EndTable();
10194 }
10195 UniqueOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10196 void UnPackTo(UniqueOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10197 static flatbuffers::Offset<UniqueOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const UniqueOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10198 };
10199
10200 struct UniqueOptionsBuilder {
10201 typedef UniqueOptions Table;
10202 flatbuffers::FlatBufferBuilder &fbb_;
10203 flatbuffers::uoffset_t start_;
10204 void add_idx_out_type(tflite::TensorType idx_out_type) {
10205 fbb_.AddElement<int8_t>(UniqueOptions::VT_IDX_OUT_TYPE, static_cast<int8_t>(idx_out_type), 2);
10206 }
10207 explicit UniqueOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10208 : fbb_(_fbb) {
10209 start_ = fbb_.StartTable();
10210 }
10211 flatbuffers::Offset<UniqueOptions> Finish() {
10212 const auto end = fbb_.EndTable(start_);
10213 auto o = flatbuffers::Offset<UniqueOptions>(end);
10214 return o;
10215 }
10216 };
10217
10218 inline flatbuffers::Offset<UniqueOptions> CreateUniqueOptions(
10219 flatbuffers::FlatBufferBuilder &_fbb,
10220 tflite::TensorType idx_out_type = tflite::TensorType_INT32) {
10221 UniqueOptionsBuilder builder_(_fbb);
10222 builder_.add_idx_out_type(idx_out_type);
10223 return builder_.Finish();
10224 }
10225
10226 flatbuffers::Offset<UniqueOptions> CreateUniqueOptions(flatbuffers::FlatBufferBuilder &_fbb, const UniqueOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10227
10228 struct ReverseV2OptionsT : public flatbuffers::NativeTable {
10229 typedef ReverseV2Options TableType;
10230 };
10231
10232 struct ReverseV2Options FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
10233 typedef ReverseV2OptionsT NativeTableType;
10234 typedef ReverseV2OptionsBuilder Builder;
10235 bool Verify(flatbuffers::Verifier &verifier) const {
10236 return VerifyTableStart(verifier) &&
10237 verifier.EndTable();
10238 }
10239 ReverseV2OptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10240 void UnPackTo(ReverseV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10241 static flatbuffers::Offset<ReverseV2Options> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReverseV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10242 };
10243
10244 struct ReverseV2OptionsBuilder {
10245 typedef ReverseV2Options Table;
10246 flatbuffers::FlatBufferBuilder &fbb_;
10247 flatbuffers::uoffset_t start_;
10248 explicit ReverseV2OptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10249 : fbb_(_fbb) {
10250 start_ = fbb_.StartTable();
10251 }
10252 flatbuffers::Offset<ReverseV2Options> Finish() {
10253 const auto end = fbb_.EndTable(start_);
10254 auto o = flatbuffers::Offset<ReverseV2Options>(end);
10255 return o;
10256 }
10257 };
10258
10259 inline flatbuffers::Offset<ReverseV2Options> CreateReverseV2Options(
10260 flatbuffers::FlatBufferBuilder &_fbb) {
10261 ReverseV2OptionsBuilder builder_(_fbb);
10262 return builder_.Finish();
10263 }
10264
10265 flatbuffers::Offset<ReverseV2Options> CreateReverseV2Options(flatbuffers::FlatBufferBuilder &_fbb, const ReverseV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10266
10267 struct AddNOptionsT : public flatbuffers::NativeTable {
10268 typedef AddNOptions TableType;
10269 };
10270
10271 struct AddNOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
10272 typedef AddNOptionsT NativeTableType;
10273 typedef AddNOptionsBuilder Builder;
10274 bool Verify(flatbuffers::Verifier &verifier) const {
10275 return VerifyTableStart(verifier) &&
10276 verifier.EndTable();
10277 }
10278 AddNOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10279 void UnPackTo(AddNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10280 static flatbuffers::Offset<AddNOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const AddNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10281 };
10282
10283 struct AddNOptionsBuilder {
10284 typedef AddNOptions Table;
10285 flatbuffers::FlatBufferBuilder &fbb_;
10286 flatbuffers::uoffset_t start_;
10287 explicit AddNOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10288 : fbb_(_fbb) {
10289 start_ = fbb_.StartTable();
10290 }
10291 flatbuffers::Offset<AddNOptions> Finish() {
10292 const auto end = fbb_.EndTable(start_);
10293 auto o = flatbuffers::Offset<AddNOptions>(end);
10294 return o;
10295 }
10296 };
10297
10298 inline flatbuffers::Offset<AddNOptions> CreateAddNOptions(
10299 flatbuffers::FlatBufferBuilder &_fbb) {
10300 AddNOptionsBuilder builder_(_fbb);
10301 return builder_.Finish();
10302 }
10303
10304 flatbuffers::Offset<AddNOptions> CreateAddNOptions(flatbuffers::FlatBufferBuilder &_fbb, const AddNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10305
10306 struct GatherNdOptionsT : public flatbuffers::NativeTable {
10307 typedef GatherNdOptions TableType;
10308 };
10309
10310 struct GatherNdOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
10311 typedef GatherNdOptionsT NativeTableType;
10312 typedef GatherNdOptionsBuilder Builder;
10313 bool Verify(flatbuffers::Verifier &verifier) const {
10314 return VerifyTableStart(verifier) &&
10315 verifier.EndTable();
10316 }
10317 GatherNdOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10318 void UnPackTo(GatherNdOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10319 static flatbuffers::Offset<GatherNdOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const GatherNdOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10320 };
10321
10322 struct GatherNdOptionsBuilder {
10323 typedef GatherNdOptions Table;
10324 flatbuffers::FlatBufferBuilder &fbb_;
10325 flatbuffers::uoffset_t start_;
10326 explicit GatherNdOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10327 : fbb_(_fbb) {
10328 start_ = fbb_.StartTable();
10329 }
10330 flatbuffers::Offset<GatherNdOptions> Finish() {
10331 const auto end = fbb_.EndTable(start_);
10332 auto o = flatbuffers::Offset<GatherNdOptions>(end);
10333 return o;
10334 }
10335 };
10336
10337 inline flatbuffers::Offset<GatherNdOptions> CreateGatherNdOptions(
10338 flatbuffers::FlatBufferBuilder &_fbb) {
10339 GatherNdOptionsBuilder builder_(_fbb);
10340 return builder_.Finish();
10341 }
10342
10343 flatbuffers::Offset<GatherNdOptions> CreateGatherNdOptions(flatbuffers::FlatBufferBuilder &_fbb, const GatherNdOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10344
10345 struct WhereOptionsT : public flatbuffers::NativeTable {
10346 typedef WhereOptions TableType;
10347 };
10348
10349 struct WhereOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
10350 typedef WhereOptionsT NativeTableType;
10351 typedef WhereOptionsBuilder Builder;
10352 bool Verify(flatbuffers::Verifier &verifier) const {
10353 return VerifyTableStart(verifier) &&
10354 verifier.EndTable();
10355 }
10356 WhereOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10357 void UnPackTo(WhereOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10358 static flatbuffers::Offset<WhereOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const WhereOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10359 };
10360
10361 struct WhereOptionsBuilder {
10362 typedef WhereOptions Table;
10363 flatbuffers::FlatBufferBuilder &fbb_;
10364 flatbuffers::uoffset_t start_;
10365 explicit WhereOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10366 : fbb_(_fbb) {
10367 start_ = fbb_.StartTable();
10368 }
10369 flatbuffers::Offset<WhereOptions> Finish() {
10370 const auto end = fbb_.EndTable(start_);
10371 auto o = flatbuffers::Offset<WhereOptions>(end);
10372 return o;
10373 }
10374 };
10375
10376 inline flatbuffers::Offset<WhereOptions> CreateWhereOptions(
10377 flatbuffers::FlatBufferBuilder &_fbb) {
10378 WhereOptionsBuilder builder_(_fbb);
10379 return builder_.Finish();
10380 }
10381
10382 flatbuffers::Offset<WhereOptions> CreateWhereOptions(flatbuffers::FlatBufferBuilder &_fbb, const WhereOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10383
10384 struct ReverseSequenceOptionsT : public flatbuffers::NativeTable {
10385 typedef ReverseSequenceOptions TableType;
10386 int32_t seq_dim = 0;
10387 int32_t batch_dim = 0;
10388 };
10389
10390 struct ReverseSequenceOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
10391 typedef ReverseSequenceOptionsT NativeTableType;
10392 typedef ReverseSequenceOptionsBuilder Builder;
10393 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
10394 VT_SEQ_DIM = 4,
10395 VT_BATCH_DIM = 6
10396 };
10397 int32_t seq_dim() const {
10398 return GetField<int32_t>(VT_SEQ_DIM, 0);
10399 }
10400 bool mutate_seq_dim(int32_t _seq_dim = 0) {
10401 return SetField<int32_t>(VT_SEQ_DIM, _seq_dim, 0);
10402 }
10403 int32_t batch_dim() const {
10404 return GetField<int32_t>(VT_BATCH_DIM, 0);
10405 }
10406 bool mutate_batch_dim(int32_t _batch_dim = 0) {
10407 return SetField<int32_t>(VT_BATCH_DIM, _batch_dim, 0);
10408 }
10409 bool Verify(flatbuffers::Verifier &verifier) const {
10410 return VerifyTableStart(verifier) &&
10411 VerifyField<int32_t>(verifier, VT_SEQ_DIM, 4) &&
10412 VerifyField<int32_t>(verifier, VT_BATCH_DIM, 4) &&
10413 verifier.EndTable();
10414 }
10415 ReverseSequenceOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10416 void UnPackTo(ReverseSequenceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10417 static flatbuffers::Offset<ReverseSequenceOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReverseSequenceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10418 };
10419
10420 struct ReverseSequenceOptionsBuilder {
10421 typedef ReverseSequenceOptions Table;
10422 flatbuffers::FlatBufferBuilder &fbb_;
10423 flatbuffers::uoffset_t start_;
10424 void add_seq_dim(int32_t seq_dim) {
10425 fbb_.AddElement<int32_t>(ReverseSequenceOptions::VT_SEQ_DIM, seq_dim, 0);
10426 }
10427 void add_batch_dim(int32_t batch_dim) {
10428 fbb_.AddElement<int32_t>(ReverseSequenceOptions::VT_BATCH_DIM, batch_dim, 0);
10429 }
10430 explicit ReverseSequenceOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10431 : fbb_(_fbb) {
10432 start_ = fbb_.StartTable();
10433 }
10434 flatbuffers::Offset<ReverseSequenceOptions> Finish() {
10435 const auto end = fbb_.EndTable(start_);
10436 auto o = flatbuffers::Offset<ReverseSequenceOptions>(end);
10437 return o;
10438 }
10439 };
10440
10441 inline flatbuffers::Offset<ReverseSequenceOptions> CreateReverseSequenceOptions(
10442 flatbuffers::FlatBufferBuilder &_fbb,
10443 int32_t seq_dim = 0,
10444 int32_t batch_dim = 0) {
10445 ReverseSequenceOptionsBuilder builder_(_fbb);
10446 builder_.add_batch_dim(batch_dim);
10447 builder_.add_seq_dim(seq_dim);
10448 return builder_.Finish();
10449 }
10450
10451 flatbuffers::Offset<ReverseSequenceOptions> CreateReverseSequenceOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReverseSequenceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10452
10453 struct MatrixDiagOptionsT : public flatbuffers::NativeTable {
10454 typedef MatrixDiagOptions TableType;
10455 };
10456
10457 struct MatrixDiagOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
10458 typedef MatrixDiagOptionsT NativeTableType;
10459 typedef MatrixDiagOptionsBuilder Builder;
10460 bool Verify(flatbuffers::Verifier &verifier) const {
10461 return VerifyTableStart(verifier) &&
10462 verifier.EndTable();
10463 }
10464 MatrixDiagOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10465 void UnPackTo(MatrixDiagOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10466 static flatbuffers::Offset<MatrixDiagOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const MatrixDiagOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10467 };
10468
10469 struct MatrixDiagOptionsBuilder {
10470 typedef MatrixDiagOptions Table;
10471 flatbuffers::FlatBufferBuilder &fbb_;
10472 flatbuffers::uoffset_t start_;
10473 explicit MatrixDiagOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10474 : fbb_(_fbb) {
10475 start_ = fbb_.StartTable();
10476 }
10477 flatbuffers::Offset<MatrixDiagOptions> Finish() {
10478 const auto end = fbb_.EndTable(start_);
10479 auto o = flatbuffers::Offset<MatrixDiagOptions>(end);
10480 return o;
10481 }
10482 };
10483
10484 inline flatbuffers::Offset<MatrixDiagOptions> CreateMatrixDiagOptions(
10485 flatbuffers::FlatBufferBuilder &_fbb) {
10486 MatrixDiagOptionsBuilder builder_(_fbb);
10487 return builder_.Finish();
10488 }
10489
10490 flatbuffers::Offset<MatrixDiagOptions> CreateMatrixDiagOptions(flatbuffers::FlatBufferBuilder &_fbb, const MatrixDiagOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10491
10492 struct QuantizeOptionsT : public flatbuffers::NativeTable {
10493 typedef QuantizeOptions TableType;
10494 };
10495
10496 struct QuantizeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
10497 typedef QuantizeOptionsT NativeTableType;
10498 typedef QuantizeOptionsBuilder Builder;
10499 bool Verify(flatbuffers::Verifier &verifier) const {
10500 return VerifyTableStart(verifier) &&
10501 verifier.EndTable();
10502 }
10503 QuantizeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10504 void UnPackTo(QuantizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10505 static flatbuffers::Offset<QuantizeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const QuantizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10506 };
10507
10508 struct QuantizeOptionsBuilder {
10509 typedef QuantizeOptions Table;
10510 flatbuffers::FlatBufferBuilder &fbb_;
10511 flatbuffers::uoffset_t start_;
10512 explicit QuantizeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10513 : fbb_(_fbb) {
10514 start_ = fbb_.StartTable();
10515 }
10516 flatbuffers::Offset<QuantizeOptions> Finish() {
10517 const auto end = fbb_.EndTable(start_);
10518 auto o = flatbuffers::Offset<QuantizeOptions>(end);
10519 return o;
10520 }
10521 };
10522
10523 inline flatbuffers::Offset<QuantizeOptions> CreateQuantizeOptions(
10524 flatbuffers::FlatBufferBuilder &_fbb) {
10525 QuantizeOptionsBuilder builder_(_fbb);
10526 return builder_.Finish();
10527 }
10528
10529 flatbuffers::Offset<QuantizeOptions> CreateQuantizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const QuantizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10530
10531 struct MatrixSetDiagOptionsT : public flatbuffers::NativeTable {
10532 typedef MatrixSetDiagOptions TableType;
10533 };
10534
10535 struct MatrixSetDiagOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
10536 typedef MatrixSetDiagOptionsT NativeTableType;
10537 typedef MatrixSetDiagOptionsBuilder Builder;
10538 bool Verify(flatbuffers::Verifier &verifier) const {
10539 return VerifyTableStart(verifier) &&
10540 verifier.EndTable();
10541 }
10542 MatrixSetDiagOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10543 void UnPackTo(MatrixSetDiagOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10544 static flatbuffers::Offset<MatrixSetDiagOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const MatrixSetDiagOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10545 };
10546
10547 struct MatrixSetDiagOptionsBuilder {
10548 typedef MatrixSetDiagOptions Table;
10549 flatbuffers::FlatBufferBuilder &fbb_;
10550 flatbuffers::uoffset_t start_;
10551 explicit MatrixSetDiagOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10552 : fbb_(_fbb) {
10553 start_ = fbb_.StartTable();
10554 }
10555 flatbuffers::Offset<MatrixSetDiagOptions> Finish() {
10556 const auto end = fbb_.EndTable(start_);
10557 auto o = flatbuffers::Offset<MatrixSetDiagOptions>(end);
10558 return o;
10559 }
10560 };
10561
10562 inline flatbuffers::Offset<MatrixSetDiagOptions> CreateMatrixSetDiagOptions(
10563 flatbuffers::FlatBufferBuilder &_fbb) {
10564 MatrixSetDiagOptionsBuilder builder_(_fbb);
10565 return builder_.Finish();
10566 }
10567
10568 flatbuffers::Offset<MatrixSetDiagOptions> CreateMatrixSetDiagOptions(flatbuffers::FlatBufferBuilder &_fbb, const MatrixSetDiagOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10569
10570 struct IfOptionsT : public flatbuffers::NativeTable {
10571 typedef IfOptions TableType;
10572 int32_t then_subgraph_index = 0;
10573 int32_t else_subgraph_index = 0;
10574 };
10575
10576 struct IfOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
10577 typedef IfOptionsT NativeTableType;
10578 typedef IfOptionsBuilder Builder;
10579 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
10580 VT_THEN_SUBGRAPH_INDEX = 4,
10581 VT_ELSE_SUBGRAPH_INDEX = 6
10582 };
10583 int32_t then_subgraph_index() const {
10584 return GetField<int32_t>(VT_THEN_SUBGRAPH_INDEX, 0);
10585 }
10586 bool mutate_then_subgraph_index(int32_t _then_subgraph_index = 0) {
10587 return SetField<int32_t>(VT_THEN_SUBGRAPH_INDEX, _then_subgraph_index, 0);
10588 }
10589 int32_t else_subgraph_index() const {
10590 return GetField<int32_t>(VT_ELSE_SUBGRAPH_INDEX, 0);
10591 }
10592 bool mutate_else_subgraph_index(int32_t _else_subgraph_index = 0) {
10593 return SetField<int32_t>(VT_ELSE_SUBGRAPH_INDEX, _else_subgraph_index, 0);
10594 }
10595 bool Verify(flatbuffers::Verifier &verifier) const {
10596 return VerifyTableStart(verifier) &&
10597 VerifyField<int32_t>(verifier, VT_THEN_SUBGRAPH_INDEX, 4) &&
10598 VerifyField<int32_t>(verifier, VT_ELSE_SUBGRAPH_INDEX, 4) &&
10599 verifier.EndTable();
10600 }
10601 IfOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10602 void UnPackTo(IfOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10603 static flatbuffers::Offset<IfOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const IfOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10604 };
10605
10606 struct IfOptionsBuilder {
10607 typedef IfOptions Table;
10608 flatbuffers::FlatBufferBuilder &fbb_;
10609 flatbuffers::uoffset_t start_;
10610 void add_then_subgraph_index(int32_t then_subgraph_index) {
10611 fbb_.AddElement<int32_t>(IfOptions::VT_THEN_SUBGRAPH_INDEX, then_subgraph_index, 0);
10612 }
10613 void add_else_subgraph_index(int32_t else_subgraph_index) {
10614 fbb_.AddElement<int32_t>(IfOptions::VT_ELSE_SUBGRAPH_INDEX, else_subgraph_index, 0);
10615 }
10616 explicit IfOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10617 : fbb_(_fbb) {
10618 start_ = fbb_.StartTable();
10619 }
10620 flatbuffers::Offset<IfOptions> Finish() {
10621 const auto end = fbb_.EndTable(start_);
10622 auto o = flatbuffers::Offset<IfOptions>(end);
10623 return o;
10624 }
10625 };
10626
10627 inline flatbuffers::Offset<IfOptions> CreateIfOptions(
10628 flatbuffers::FlatBufferBuilder &_fbb,
10629 int32_t then_subgraph_index = 0,
10630 int32_t else_subgraph_index = 0) {
10631 IfOptionsBuilder builder_(_fbb);
10632 builder_.add_else_subgraph_index(else_subgraph_index);
10633 builder_.add_then_subgraph_index(then_subgraph_index);
10634 return builder_.Finish();
10635 }
10636
10637 flatbuffers::Offset<IfOptions> CreateIfOptions(flatbuffers::FlatBufferBuilder &_fbb, const IfOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10638
10639 struct CallOnceOptionsT : public flatbuffers::NativeTable {
10640 typedef CallOnceOptions TableType;
10641 int32_t init_subgraph_index = 0;
10642 };
10643
10644 struct CallOnceOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
10645 typedef CallOnceOptionsT NativeTableType;
10646 typedef CallOnceOptionsBuilder Builder;
10647 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
10648 VT_INIT_SUBGRAPH_INDEX = 4
10649 };
10650 int32_t init_subgraph_index() const {
10651 return GetField<int32_t>(VT_INIT_SUBGRAPH_INDEX, 0);
10652 }
10653 bool mutate_init_subgraph_index(int32_t _init_subgraph_index = 0) {
10654 return SetField<int32_t>(VT_INIT_SUBGRAPH_INDEX, _init_subgraph_index, 0);
10655 }
10656 bool Verify(flatbuffers::Verifier &verifier) const {
10657 return VerifyTableStart(verifier) &&
10658 VerifyField<int32_t>(verifier, VT_INIT_SUBGRAPH_INDEX, 4) &&
10659 verifier.EndTable();
10660 }
10661 CallOnceOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10662 void UnPackTo(CallOnceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10663 static flatbuffers::Offset<CallOnceOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const CallOnceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10664 };
10665
10666 struct CallOnceOptionsBuilder {
10667 typedef CallOnceOptions Table;
10668 flatbuffers::FlatBufferBuilder &fbb_;
10669 flatbuffers::uoffset_t start_;
10670 void add_init_subgraph_index(int32_t init_subgraph_index) {
10671 fbb_.AddElement<int32_t>(CallOnceOptions::VT_INIT_SUBGRAPH_INDEX, init_subgraph_index, 0);
10672 }
10673 explicit CallOnceOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10674 : fbb_(_fbb) {
10675 start_ = fbb_.StartTable();
10676 }
10677 flatbuffers::Offset<CallOnceOptions> Finish() {
10678 const auto end = fbb_.EndTable(start_);
10679 auto o = flatbuffers::Offset<CallOnceOptions>(end);
10680 return o;
10681 }
10682 };
10683
10684 inline flatbuffers::Offset<CallOnceOptions> CreateCallOnceOptions(
10685 flatbuffers::FlatBufferBuilder &_fbb,
10686 int32_t init_subgraph_index = 0) {
10687 CallOnceOptionsBuilder builder_(_fbb);
10688 builder_.add_init_subgraph_index(init_subgraph_index);
10689 return builder_.Finish();
10690 }
10691
10692 flatbuffers::Offset<CallOnceOptions> CreateCallOnceOptions(flatbuffers::FlatBufferBuilder &_fbb, const CallOnceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10693
10694 struct WhileOptionsT : public flatbuffers::NativeTable {
10695 typedef WhileOptions TableType;
10696 int32_t cond_subgraph_index = 0;
10697 int32_t body_subgraph_index = 0;
10698 };
10699
10700 struct WhileOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
10701 typedef WhileOptionsT NativeTableType;
10702 typedef WhileOptionsBuilder Builder;
10703 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
10704 VT_COND_SUBGRAPH_INDEX = 4,
10705 VT_BODY_SUBGRAPH_INDEX = 6
10706 };
10707 int32_t cond_subgraph_index() const {
10708 return GetField<int32_t>(VT_COND_SUBGRAPH_INDEX, 0);
10709 }
10710 bool mutate_cond_subgraph_index(int32_t _cond_subgraph_index = 0) {
10711 return SetField<int32_t>(VT_COND_SUBGRAPH_INDEX, _cond_subgraph_index, 0);
10712 }
10713 int32_t body_subgraph_index() const {
10714 return GetField<int32_t>(VT_BODY_SUBGRAPH_INDEX, 0);
10715 }
10716 bool mutate_body_subgraph_index(int32_t _body_subgraph_index = 0) {
10717 return SetField<int32_t>(VT_BODY_SUBGRAPH_INDEX, _body_subgraph_index, 0);
10718 }
10719 bool Verify(flatbuffers::Verifier &verifier) const {
10720 return VerifyTableStart(verifier) &&
10721 VerifyField<int32_t>(verifier, VT_COND_SUBGRAPH_INDEX, 4) &&
10722 VerifyField<int32_t>(verifier, VT_BODY_SUBGRAPH_INDEX, 4) &&
10723 verifier.EndTable();
10724 }
10725 WhileOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10726 void UnPackTo(WhileOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10727 static flatbuffers::Offset<WhileOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const WhileOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10728 };
10729
10730 struct WhileOptionsBuilder {
10731 typedef WhileOptions Table;
10732 flatbuffers::FlatBufferBuilder &fbb_;
10733 flatbuffers::uoffset_t start_;
10734 void add_cond_subgraph_index(int32_t cond_subgraph_index) {
10735 fbb_.AddElement<int32_t>(WhileOptions::VT_COND_SUBGRAPH_INDEX, cond_subgraph_index, 0);
10736 }
10737 void add_body_subgraph_index(int32_t body_subgraph_index) {
10738 fbb_.AddElement<int32_t>(WhileOptions::VT_BODY_SUBGRAPH_INDEX, body_subgraph_index, 0);
10739 }
10740 explicit WhileOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10741 : fbb_(_fbb) {
10742 start_ = fbb_.StartTable();
10743 }
10744 flatbuffers::Offset<WhileOptions> Finish() {
10745 const auto end = fbb_.EndTable(start_);
10746 auto o = flatbuffers::Offset<WhileOptions>(end);
10747 return o;
10748 }
10749 };
10750
10751 inline flatbuffers::Offset<WhileOptions> CreateWhileOptions(
10752 flatbuffers::FlatBufferBuilder &_fbb,
10753 int32_t cond_subgraph_index = 0,
10754 int32_t body_subgraph_index = 0) {
10755 WhileOptionsBuilder builder_(_fbb);
10756 builder_.add_body_subgraph_index(body_subgraph_index);
10757 builder_.add_cond_subgraph_index(cond_subgraph_index);
10758 return builder_.Finish();
10759 }
10760
10761 flatbuffers::Offset<WhileOptions> CreateWhileOptions(flatbuffers::FlatBufferBuilder &_fbb, const WhileOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10762
10763 struct NonMaxSuppressionV4OptionsT : public flatbuffers::NativeTable {
10764 typedef NonMaxSuppressionV4Options TableType;
10765 };
10766
10767 struct NonMaxSuppressionV4Options FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
10768 typedef NonMaxSuppressionV4OptionsT NativeTableType;
10769 typedef NonMaxSuppressionV4OptionsBuilder Builder;
10770 bool Verify(flatbuffers::Verifier &verifier) const {
10771 return VerifyTableStart(verifier) &&
10772 verifier.EndTable();
10773 }
10774 NonMaxSuppressionV4OptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10775 void UnPackTo(NonMaxSuppressionV4OptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10776 static flatbuffers::Offset<NonMaxSuppressionV4Options> Pack(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV4OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10777 };
10778
10779 struct NonMaxSuppressionV4OptionsBuilder {
10780 typedef NonMaxSuppressionV4Options Table;
10781 flatbuffers::FlatBufferBuilder &fbb_;
10782 flatbuffers::uoffset_t start_;
10783 explicit NonMaxSuppressionV4OptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10784 : fbb_(_fbb) {
10785 start_ = fbb_.StartTable();
10786 }
10787 flatbuffers::Offset<NonMaxSuppressionV4Options> Finish() {
10788 const auto end = fbb_.EndTable(start_);
10789 auto o = flatbuffers::Offset<NonMaxSuppressionV4Options>(end);
10790 return o;
10791 }
10792 };
10793
10794 inline flatbuffers::Offset<NonMaxSuppressionV4Options> CreateNonMaxSuppressionV4Options(
10795 flatbuffers::FlatBufferBuilder &_fbb) {
10796 NonMaxSuppressionV4OptionsBuilder builder_(_fbb);
10797 return builder_.Finish();
10798 }
10799
10800 flatbuffers::Offset<NonMaxSuppressionV4Options> CreateNonMaxSuppressionV4Options(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV4OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10801
10802 struct NonMaxSuppressionV5OptionsT : public flatbuffers::NativeTable {
10803 typedef NonMaxSuppressionV5Options TableType;
10804 };
10805
10806 struct NonMaxSuppressionV5Options FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
10807 typedef NonMaxSuppressionV5OptionsT NativeTableType;
10808 typedef NonMaxSuppressionV5OptionsBuilder Builder;
10809 bool Verify(flatbuffers::Verifier &verifier) const {
10810 return VerifyTableStart(verifier) &&
10811 verifier.EndTable();
10812 }
10813 NonMaxSuppressionV5OptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10814 void UnPackTo(NonMaxSuppressionV5OptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10815 static flatbuffers::Offset<NonMaxSuppressionV5Options> Pack(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV5OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10816 };
10817
10818 struct NonMaxSuppressionV5OptionsBuilder {
10819 typedef NonMaxSuppressionV5Options Table;
10820 flatbuffers::FlatBufferBuilder &fbb_;
10821 flatbuffers::uoffset_t start_;
10822 explicit NonMaxSuppressionV5OptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10823 : fbb_(_fbb) {
10824 start_ = fbb_.StartTable();
10825 }
10826 flatbuffers::Offset<NonMaxSuppressionV5Options> Finish() {
10827 const auto end = fbb_.EndTable(start_);
10828 auto o = flatbuffers::Offset<NonMaxSuppressionV5Options>(end);
10829 return o;
10830 }
10831 };
10832
10833 inline flatbuffers::Offset<NonMaxSuppressionV5Options> CreateNonMaxSuppressionV5Options(
10834 flatbuffers::FlatBufferBuilder &_fbb) {
10835 NonMaxSuppressionV5OptionsBuilder builder_(_fbb);
10836 return builder_.Finish();
10837 }
10838
10839 flatbuffers::Offset<NonMaxSuppressionV5Options> CreateNonMaxSuppressionV5Options(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV5OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10840
10841 struct ScatterNdOptionsT : public flatbuffers::NativeTable {
10842 typedef ScatterNdOptions TableType;
10843 };
10844
10845 struct ScatterNdOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
10846 typedef ScatterNdOptionsT NativeTableType;
10847 typedef ScatterNdOptionsBuilder Builder;
10848 bool Verify(flatbuffers::Verifier &verifier) const {
10849 return VerifyTableStart(verifier) &&
10850 verifier.EndTable();
10851 }
10852 ScatterNdOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10853 void UnPackTo(ScatterNdOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10854 static flatbuffers::Offset<ScatterNdOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ScatterNdOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10855 };
10856
10857 struct ScatterNdOptionsBuilder {
10858 typedef ScatterNdOptions Table;
10859 flatbuffers::FlatBufferBuilder &fbb_;
10860 flatbuffers::uoffset_t start_;
10861 explicit ScatterNdOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10862 : fbb_(_fbb) {
10863 start_ = fbb_.StartTable();
10864 }
10865 flatbuffers::Offset<ScatterNdOptions> Finish() {
10866 const auto end = fbb_.EndTable(start_);
10867 auto o = flatbuffers::Offset<ScatterNdOptions>(end);
10868 return o;
10869 }
10870 };
10871
10872 inline flatbuffers::Offset<ScatterNdOptions> CreateScatterNdOptions(
10873 flatbuffers::FlatBufferBuilder &_fbb) {
10874 ScatterNdOptionsBuilder builder_(_fbb);
10875 return builder_.Finish();
10876 }
10877
10878 flatbuffers::Offset<ScatterNdOptions> CreateScatterNdOptions(flatbuffers::FlatBufferBuilder &_fbb, const ScatterNdOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10879
10880 struct SelectV2OptionsT : public flatbuffers::NativeTable {
10881 typedef SelectV2Options TableType;
10882 };
10883
10884 struct SelectV2Options FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
10885 typedef SelectV2OptionsT NativeTableType;
10886 typedef SelectV2OptionsBuilder Builder;
10887 bool Verify(flatbuffers::Verifier &verifier) const {
10888 return VerifyTableStart(verifier) &&
10889 verifier.EndTable();
10890 }
10891 SelectV2OptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10892 void UnPackTo(SelectV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10893 static flatbuffers::Offset<SelectV2Options> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SelectV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10894 };
10895
10896 struct SelectV2OptionsBuilder {
10897 typedef SelectV2Options Table;
10898 flatbuffers::FlatBufferBuilder &fbb_;
10899 flatbuffers::uoffset_t start_;
10900 explicit SelectV2OptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10901 : fbb_(_fbb) {
10902 start_ = fbb_.StartTable();
10903 }
10904 flatbuffers::Offset<SelectV2Options> Finish() {
10905 const auto end = fbb_.EndTable(start_);
10906 auto o = flatbuffers::Offset<SelectV2Options>(end);
10907 return o;
10908 }
10909 };
10910
10911 inline flatbuffers::Offset<SelectV2Options> CreateSelectV2Options(
10912 flatbuffers::FlatBufferBuilder &_fbb) {
10913 SelectV2OptionsBuilder builder_(_fbb);
10914 return builder_.Finish();
10915 }
10916
10917 flatbuffers::Offset<SelectV2Options> CreateSelectV2Options(flatbuffers::FlatBufferBuilder &_fbb, const SelectV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10918
10919 struct DensifyOptionsT : public flatbuffers::NativeTable {
10920 typedef DensifyOptions TableType;
10921 };
10922
10923 struct DensifyOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
10924 typedef DensifyOptionsT NativeTableType;
10925 typedef DensifyOptionsBuilder Builder;
10926 bool Verify(flatbuffers::Verifier &verifier) const {
10927 return VerifyTableStart(verifier) &&
10928 verifier.EndTable();
10929 }
10930 DensifyOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10931 void UnPackTo(DensifyOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10932 static flatbuffers::Offset<DensifyOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DensifyOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10933 };
10934
10935 struct DensifyOptionsBuilder {
10936 typedef DensifyOptions Table;
10937 flatbuffers::FlatBufferBuilder &fbb_;
10938 flatbuffers::uoffset_t start_;
10939 explicit DensifyOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10940 : fbb_(_fbb) {
10941 start_ = fbb_.StartTable();
10942 }
10943 flatbuffers::Offset<DensifyOptions> Finish() {
10944 const auto end = fbb_.EndTable(start_);
10945 auto o = flatbuffers::Offset<DensifyOptions>(end);
10946 return o;
10947 }
10948 };
10949
10950 inline flatbuffers::Offset<DensifyOptions> CreateDensifyOptions(
10951 flatbuffers::FlatBufferBuilder &_fbb) {
10952 DensifyOptionsBuilder builder_(_fbb);
10953 return builder_.Finish();
10954 }
10955
10956 flatbuffers::Offset<DensifyOptions> CreateDensifyOptions(flatbuffers::FlatBufferBuilder &_fbb, const DensifyOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10957
10958 struct SegmentSumOptionsT : public flatbuffers::NativeTable {
10959 typedef SegmentSumOptions TableType;
10960 };
10961
10962 struct SegmentSumOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
10963 typedef SegmentSumOptionsT NativeTableType;
10964 typedef SegmentSumOptionsBuilder Builder;
10965 bool Verify(flatbuffers::Verifier &verifier) const {
10966 return VerifyTableStart(verifier) &&
10967 verifier.EndTable();
10968 }
10969 SegmentSumOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10970 void UnPackTo(SegmentSumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
10971 static flatbuffers::Offset<SegmentSumOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SegmentSumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10972 };
10973
10974 struct SegmentSumOptionsBuilder {
10975 typedef SegmentSumOptions Table;
10976 flatbuffers::FlatBufferBuilder &fbb_;
10977 flatbuffers::uoffset_t start_;
10978 explicit SegmentSumOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
10979 : fbb_(_fbb) {
10980 start_ = fbb_.StartTable();
10981 }
10982 flatbuffers::Offset<SegmentSumOptions> Finish() {
10983 const auto end = fbb_.EndTable(start_);
10984 auto o = flatbuffers::Offset<SegmentSumOptions>(end);
10985 return o;
10986 }
10987 };
10988
10989 inline flatbuffers::Offset<SegmentSumOptions> CreateSegmentSumOptions(
10990 flatbuffers::FlatBufferBuilder &_fbb) {
10991 SegmentSumOptionsBuilder builder_(_fbb);
10992 return builder_.Finish();
10993 }
10994
10995 flatbuffers::Offset<SegmentSumOptions> CreateSegmentSumOptions(flatbuffers::FlatBufferBuilder &_fbb, const SegmentSumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
10996
10997 struct BatchMatMulOptionsT : public flatbuffers::NativeTable {
10998 typedef BatchMatMulOptions TableType;
10999 bool adj_x = false;
11000 bool adj_y = false;
11001 bool asymmetric_quantize_inputs = false;
11002 };
11003
11004 struct BatchMatMulOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
11005 typedef BatchMatMulOptionsT NativeTableType;
11006 typedef BatchMatMulOptionsBuilder Builder;
11007 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
11008 VT_ADJ_X = 4,
11009 VT_ADJ_Y = 6,
11010 VT_ASYMMETRIC_QUANTIZE_INPUTS = 8
11011 };
11012 bool adj_x() const {
11013 return GetField<uint8_t>(VT_ADJ_X, 0) != 0;
11014 }
11015 bool mutate_adj_x(bool _adj_x = 0) {
11016 return SetField<uint8_t>(VT_ADJ_X, static_cast<uint8_t>(_adj_x), 0);
11017 }
11018 bool adj_y() const {
11019 return GetField<uint8_t>(VT_ADJ_Y, 0) != 0;
11020 }
11021 bool mutate_adj_y(bool _adj_y = 0) {
11022 return SetField<uint8_t>(VT_ADJ_Y, static_cast<uint8_t>(_adj_y), 0);
11023 }
11024 bool asymmetric_quantize_inputs() const {
11025 return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
11026 }
11027 bool mutate_asymmetric_quantize_inputs(bool _asymmetric_quantize_inputs = 0) {
11028 return SetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(_asymmetric_quantize_inputs), 0);
11029 }
11030 bool Verify(flatbuffers::Verifier &verifier) const {
11031 return VerifyTableStart(verifier) &&
11032 VerifyField<uint8_t>(verifier, VT_ADJ_X, 1) &&
11033 VerifyField<uint8_t>(verifier, VT_ADJ_Y, 1) &&
11034 VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
11035 verifier.EndTable();
11036 }
11037 BatchMatMulOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11038 void UnPackTo(BatchMatMulOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11039 static flatbuffers::Offset<BatchMatMulOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BatchMatMulOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11040 };
11041
11042 struct BatchMatMulOptionsBuilder {
11043 typedef BatchMatMulOptions Table;
11044 flatbuffers::FlatBufferBuilder &fbb_;
11045 flatbuffers::uoffset_t start_;
11046 void add_adj_x(bool adj_x) {
11047 fbb_.AddElement<uint8_t>(BatchMatMulOptions::VT_ADJ_X, static_cast<uint8_t>(adj_x), 0);
11048 }
11049 void add_adj_y(bool adj_y) {
11050 fbb_.AddElement<uint8_t>(BatchMatMulOptions::VT_ADJ_Y, static_cast<uint8_t>(adj_y), 0);
11051 }
11052 void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
11053 fbb_.AddElement<uint8_t>(BatchMatMulOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
11054 }
11055 explicit BatchMatMulOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
11056 : fbb_(_fbb) {
11057 start_ = fbb_.StartTable();
11058 }
11059 flatbuffers::Offset<BatchMatMulOptions> Finish() {
11060 const auto end = fbb_.EndTable(start_);
11061 auto o = flatbuffers::Offset<BatchMatMulOptions>(end);
11062 return o;
11063 }
11064 };
11065
11066 inline flatbuffers::Offset<BatchMatMulOptions> CreateBatchMatMulOptions(
11067 flatbuffers::FlatBufferBuilder &_fbb,
11068 bool adj_x = false,
11069 bool adj_y = false,
11070 bool asymmetric_quantize_inputs = false) {
11071 BatchMatMulOptionsBuilder builder_(_fbb);
11072 builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
11073 builder_.add_adj_y(adj_y);
11074 builder_.add_adj_x(adj_x);
11075 return builder_.Finish();
11076 }
11077
11078 flatbuffers::Offset<BatchMatMulOptions> CreateBatchMatMulOptions(flatbuffers::FlatBufferBuilder &_fbb, const BatchMatMulOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11079
11080 struct CumsumOptionsT : public flatbuffers::NativeTable {
11081 typedef CumsumOptions TableType;
11082 bool exclusive = false;
11083 bool reverse = false;
11084 };
11085
11086 struct CumsumOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
11087 typedef CumsumOptionsT NativeTableType;
11088 typedef CumsumOptionsBuilder Builder;
11089 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
11090 VT_EXCLUSIVE = 4,
11091 VT_REVERSE = 6
11092 };
11093 bool exclusive() const {
11094 return GetField<uint8_t>(VT_EXCLUSIVE, 0) != 0;
11095 }
11096 bool mutate_exclusive(bool _exclusive = 0) {
11097 return SetField<uint8_t>(VT_EXCLUSIVE, static_cast<uint8_t>(_exclusive), 0);
11098 }
11099 bool reverse() const {
11100 return GetField<uint8_t>(VT_REVERSE, 0) != 0;
11101 }
11102 bool mutate_reverse(bool _reverse = 0) {
11103 return SetField<uint8_t>(VT_REVERSE, static_cast<uint8_t>(_reverse), 0);
11104 }
11105 bool Verify(flatbuffers::Verifier &verifier) const {
11106 return VerifyTableStart(verifier) &&
11107 VerifyField<uint8_t>(verifier, VT_EXCLUSIVE, 1) &&
11108 VerifyField<uint8_t>(verifier, VT_REVERSE, 1) &&
11109 verifier.EndTable();
11110 }
11111 CumsumOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11112 void UnPackTo(CumsumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11113 static flatbuffers::Offset<CumsumOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const CumsumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11114 };
11115
11116 struct CumsumOptionsBuilder {
11117 typedef CumsumOptions Table;
11118 flatbuffers::FlatBufferBuilder &fbb_;
11119 flatbuffers::uoffset_t start_;
11120 void add_exclusive(bool exclusive) {
11121 fbb_.AddElement<uint8_t>(CumsumOptions::VT_EXCLUSIVE, static_cast<uint8_t>(exclusive), 0);
11122 }
11123 void add_reverse(bool reverse) {
11124 fbb_.AddElement<uint8_t>(CumsumOptions::VT_REVERSE, static_cast<uint8_t>(reverse), 0);
11125 }
11126 explicit CumsumOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
11127 : fbb_(_fbb) {
11128 start_ = fbb_.StartTable();
11129 }
11130 flatbuffers::Offset<CumsumOptions> Finish() {
11131 const auto end = fbb_.EndTable(start_);
11132 auto o = flatbuffers::Offset<CumsumOptions>(end);
11133 return o;
11134 }
11135 };
11136
11137 inline flatbuffers::Offset<CumsumOptions> CreateCumsumOptions(
11138 flatbuffers::FlatBufferBuilder &_fbb,
11139 bool exclusive = false,
11140 bool reverse = false) {
11141 CumsumOptionsBuilder builder_(_fbb);
11142 builder_.add_reverse(reverse);
11143 builder_.add_exclusive(exclusive);
11144 return builder_.Finish();
11145 }
11146
11147 flatbuffers::Offset<CumsumOptions> CreateCumsumOptions(flatbuffers::FlatBufferBuilder &_fbb, const CumsumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11148
11149 struct BroadcastToOptionsT : public flatbuffers::NativeTable {
11150 typedef BroadcastToOptions TableType;
11151 };
11152
11153 struct BroadcastToOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
11154 typedef BroadcastToOptionsT NativeTableType;
11155 typedef BroadcastToOptionsBuilder Builder;
11156 bool Verify(flatbuffers::Verifier &verifier) const {
11157 return VerifyTableStart(verifier) &&
11158 verifier.EndTable();
11159 }
11160 BroadcastToOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11161 void UnPackTo(BroadcastToOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11162 static flatbuffers::Offset<BroadcastToOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BroadcastToOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11163 };
11164
11165 struct BroadcastToOptionsBuilder {
11166 typedef BroadcastToOptions Table;
11167 flatbuffers::FlatBufferBuilder &fbb_;
11168 flatbuffers::uoffset_t start_;
11169 explicit BroadcastToOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
11170 : fbb_(_fbb) {
11171 start_ = fbb_.StartTable();
11172 }
11173 flatbuffers::Offset<BroadcastToOptions> Finish() {
11174 const auto end = fbb_.EndTable(start_);
11175 auto o = flatbuffers::Offset<BroadcastToOptions>(end);
11176 return o;
11177 }
11178 };
11179
11180 inline flatbuffers::Offset<BroadcastToOptions> CreateBroadcastToOptions(
11181 flatbuffers::FlatBufferBuilder &_fbb) {
11182 BroadcastToOptionsBuilder builder_(_fbb);
11183 return builder_.Finish();
11184 }
11185
11186 flatbuffers::Offset<BroadcastToOptions> CreateBroadcastToOptions(flatbuffers::FlatBufferBuilder &_fbb, const BroadcastToOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11187
11188 struct Rfft2dOptionsT : public flatbuffers::NativeTable {
11189 typedef Rfft2dOptions TableType;
11190 };
11191
11192 struct Rfft2dOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
11193 typedef Rfft2dOptionsT NativeTableType;
11194 typedef Rfft2dOptionsBuilder Builder;
11195 bool Verify(flatbuffers::Verifier &verifier) const {
11196 return VerifyTableStart(verifier) &&
11197 verifier.EndTable();
11198 }
11199 Rfft2dOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11200 void UnPackTo(Rfft2dOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11201 static flatbuffers::Offset<Rfft2dOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Rfft2dOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11202 };
11203
11204 struct Rfft2dOptionsBuilder {
11205 typedef Rfft2dOptions Table;
11206 flatbuffers::FlatBufferBuilder &fbb_;
11207 flatbuffers::uoffset_t start_;
11208 explicit Rfft2dOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
11209 : fbb_(_fbb) {
11210 start_ = fbb_.StartTable();
11211 }
11212 flatbuffers::Offset<Rfft2dOptions> Finish() {
11213 const auto end = fbb_.EndTable(start_);
11214 auto o = flatbuffers::Offset<Rfft2dOptions>(end);
11215 return o;
11216 }
11217 };
11218
11219 inline flatbuffers::Offset<Rfft2dOptions> CreateRfft2dOptions(
11220 flatbuffers::FlatBufferBuilder &_fbb) {
11221 Rfft2dOptionsBuilder builder_(_fbb);
11222 return builder_.Finish();
11223 }
11224
11225 flatbuffers::Offset<Rfft2dOptions> CreateRfft2dOptions(flatbuffers::FlatBufferBuilder &_fbb, const Rfft2dOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11226
11227 struct HashtableOptionsT : public flatbuffers::NativeTable {
11228 typedef HashtableOptions TableType;
11229 int32_t table_id = 0;
11230 tflite::TensorType key_dtype = tflite::TensorType_FLOAT32;
11231 tflite::TensorType value_dtype = tflite::TensorType_FLOAT32;
11232 };
11233
11234 struct HashtableOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
11235 typedef HashtableOptionsT NativeTableType;
11236 typedef HashtableOptionsBuilder Builder;
11237 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
11238 VT_TABLE_ID = 4,
11239 VT_KEY_DTYPE = 6,
11240 VT_VALUE_DTYPE = 8
11241 };
11242 int32_t table_id() const {
11243 return GetField<int32_t>(VT_TABLE_ID, 0);
11244 }
11245 bool mutate_table_id(int32_t _table_id = 0) {
11246 return SetField<int32_t>(VT_TABLE_ID, _table_id, 0);
11247 }
11248 tflite::TensorType key_dtype() const {
11249 return static_cast<tflite::TensorType>(GetField<int8_t>(VT_KEY_DTYPE, 0));
11250 }
11251 bool mutate_key_dtype(tflite::TensorType _key_dtype = static_cast<tflite::TensorType>(0)) {
11252 return SetField<int8_t>(VT_KEY_DTYPE, static_cast<int8_t>(_key_dtype), 0);
11253 }
11254 tflite::TensorType value_dtype() const {
11255 return static_cast<tflite::TensorType>(GetField<int8_t>(VT_VALUE_DTYPE, 0));
11256 }
11257 bool mutate_value_dtype(tflite::TensorType _value_dtype = static_cast<tflite::TensorType>(0)) {
11258 return SetField<int8_t>(VT_VALUE_DTYPE, static_cast<int8_t>(_value_dtype), 0);
11259 }
11260 bool Verify(flatbuffers::Verifier &verifier) const {
11261 return VerifyTableStart(verifier) &&
11262 VerifyField<int32_t>(verifier, VT_TABLE_ID, 4) &&
11263 VerifyField<int8_t>(verifier, VT_KEY_DTYPE, 1) &&
11264 VerifyField<int8_t>(verifier, VT_VALUE_DTYPE, 1) &&
11265 verifier.EndTable();
11266 }
11267 HashtableOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11268 void UnPackTo(HashtableOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11269 static flatbuffers::Offset<HashtableOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11270 };
11271
11272 struct HashtableOptionsBuilder {
11273 typedef HashtableOptions Table;
11274 flatbuffers::FlatBufferBuilder &fbb_;
11275 flatbuffers::uoffset_t start_;
11276 void add_table_id(int32_t table_id) {
11277 fbb_.AddElement<int32_t>(HashtableOptions::VT_TABLE_ID, table_id, 0);
11278 }
11279 void add_key_dtype(tflite::TensorType key_dtype) {
11280 fbb_.AddElement<int8_t>(HashtableOptions::VT_KEY_DTYPE, static_cast<int8_t>(key_dtype), 0);
11281 }
11282 void add_value_dtype(tflite::TensorType value_dtype) {
11283 fbb_.AddElement<int8_t>(HashtableOptions::VT_VALUE_DTYPE, static_cast<int8_t>(value_dtype), 0);
11284 }
11285 explicit HashtableOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
11286 : fbb_(_fbb) {
11287 start_ = fbb_.StartTable();
11288 }
11289 flatbuffers::Offset<HashtableOptions> Finish() {
11290 const auto end = fbb_.EndTable(start_);
11291 auto o = flatbuffers::Offset<HashtableOptions>(end);
11292 return o;
11293 }
11294 };
11295
11296 inline flatbuffers::Offset<HashtableOptions> CreateHashtableOptions(
11297 flatbuffers::FlatBufferBuilder &_fbb,
11298 int32_t table_id = 0,
11299 tflite::TensorType key_dtype = tflite::TensorType_FLOAT32,
11300 tflite::TensorType value_dtype = tflite::TensorType_FLOAT32) {
11301 HashtableOptionsBuilder builder_(_fbb);
11302 builder_.add_table_id(table_id);
11303 builder_.add_value_dtype(value_dtype);
11304 builder_.add_key_dtype(key_dtype);
11305 return builder_.Finish();
11306 }
11307
11308 flatbuffers::Offset<HashtableOptions> CreateHashtableOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11309
11310 struct HashtableFindOptionsT : public flatbuffers::NativeTable {
11311 typedef HashtableFindOptions TableType;
11312 };
11313
11314 struct HashtableFindOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
11315 typedef HashtableFindOptionsT NativeTableType;
11316 typedef HashtableFindOptionsBuilder Builder;
11317 bool Verify(flatbuffers::Verifier &verifier) const {
11318 return VerifyTableStart(verifier) &&
11319 verifier.EndTable();
11320 }
11321 HashtableFindOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11322 void UnPackTo(HashtableFindOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11323 static flatbuffers::Offset<HashtableFindOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableFindOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11324 };
11325
11326 struct HashtableFindOptionsBuilder {
11327 typedef HashtableFindOptions Table;
11328 flatbuffers::FlatBufferBuilder &fbb_;
11329 flatbuffers::uoffset_t start_;
11330 explicit HashtableFindOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
11331 : fbb_(_fbb) {
11332 start_ = fbb_.StartTable();
11333 }
11334 flatbuffers::Offset<HashtableFindOptions> Finish() {
11335 const auto end = fbb_.EndTable(start_);
11336 auto o = flatbuffers::Offset<HashtableFindOptions>(end);
11337 return o;
11338 }
11339 };
11340
11341 inline flatbuffers::Offset<HashtableFindOptions> CreateHashtableFindOptions(
11342 flatbuffers::FlatBufferBuilder &_fbb) {
11343 HashtableFindOptionsBuilder builder_(_fbb);
11344 return builder_.Finish();
11345 }
11346
11347 flatbuffers::Offset<HashtableFindOptions> CreateHashtableFindOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableFindOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11348
11349 struct HashtableImportOptionsT : public flatbuffers::NativeTable {
11350 typedef HashtableImportOptions TableType;
11351 };
11352
11353 struct HashtableImportOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
11354 typedef HashtableImportOptionsT NativeTableType;
11355 typedef HashtableImportOptionsBuilder Builder;
11356 bool Verify(flatbuffers::Verifier &verifier) const {
11357 return VerifyTableStart(verifier) &&
11358 verifier.EndTable();
11359 }
11360 HashtableImportOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11361 void UnPackTo(HashtableImportOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11362 static flatbuffers::Offset<HashtableImportOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableImportOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11363 };
11364
11365 struct HashtableImportOptionsBuilder {
11366 typedef HashtableImportOptions Table;
11367 flatbuffers::FlatBufferBuilder &fbb_;
11368 flatbuffers::uoffset_t start_;
11369 explicit HashtableImportOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
11370 : fbb_(_fbb) {
11371 start_ = fbb_.StartTable();
11372 }
11373 flatbuffers::Offset<HashtableImportOptions> Finish() {
11374 const auto end = fbb_.EndTable(start_);
11375 auto o = flatbuffers::Offset<HashtableImportOptions>(end);
11376 return o;
11377 }
11378 };
11379
11380 inline flatbuffers::Offset<HashtableImportOptions> CreateHashtableImportOptions(
11381 flatbuffers::FlatBufferBuilder &_fbb) {
11382 HashtableImportOptionsBuilder builder_(_fbb);
11383 return builder_.Finish();
11384 }
11385
11386 flatbuffers::Offset<HashtableImportOptions> CreateHashtableImportOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableImportOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11387
11388 struct HashtableSizeOptionsT : public flatbuffers::NativeTable {
11389 typedef HashtableSizeOptions TableType;
11390 };
11391
11392 struct HashtableSizeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
11393 typedef HashtableSizeOptionsT NativeTableType;
11394 typedef HashtableSizeOptionsBuilder Builder;
11395 bool Verify(flatbuffers::Verifier &verifier) const {
11396 return VerifyTableStart(verifier) &&
11397 verifier.EndTable();
11398 }
11399 HashtableSizeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11400 void UnPackTo(HashtableSizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11401 static flatbuffers::Offset<HashtableSizeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableSizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11402 };
11403
11404 struct HashtableSizeOptionsBuilder {
11405 typedef HashtableSizeOptions Table;
11406 flatbuffers::FlatBufferBuilder &fbb_;
11407 flatbuffers::uoffset_t start_;
11408 explicit HashtableSizeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
11409 : fbb_(_fbb) {
11410 start_ = fbb_.StartTable();
11411 }
11412 flatbuffers::Offset<HashtableSizeOptions> Finish() {
11413 const auto end = fbb_.EndTable(start_);
11414 auto o = flatbuffers::Offset<HashtableSizeOptions>(end);
11415 return o;
11416 }
11417 };
11418
11419 inline flatbuffers::Offset<HashtableSizeOptions> CreateHashtableSizeOptions(
11420 flatbuffers::FlatBufferBuilder &_fbb) {
11421 HashtableSizeOptionsBuilder builder_(_fbb);
11422 return builder_.Finish();
11423 }
11424
11425 flatbuffers::Offset<HashtableSizeOptions> CreateHashtableSizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableSizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11426
11427 struct VarHandleOptionsT : public flatbuffers::NativeTable {
11428 typedef VarHandleOptions TableType;
11429 std::string container{};
11430 std::string shared_name{};
11431 };
11432
11433 struct VarHandleOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
11434 typedef VarHandleOptionsT NativeTableType;
11435 typedef VarHandleOptionsBuilder Builder;
11436 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
11437 VT_CONTAINER = 4,
11438 VT_SHARED_NAME = 6
11439 };
11440 const flatbuffers::String *container() const {
11441 return GetPointer<const flatbuffers::String *>(VT_CONTAINER);
11442 }
11443 flatbuffers::String *mutable_container() {
11444 return GetPointer<flatbuffers::String *>(VT_CONTAINER);
11445 }
11446 const flatbuffers::String *shared_name() const {
11447 return GetPointer<const flatbuffers::String *>(VT_SHARED_NAME);
11448 }
11449 flatbuffers::String *mutable_shared_name() {
11450 return GetPointer<flatbuffers::String *>(VT_SHARED_NAME);
11451 }
11452 bool Verify(flatbuffers::Verifier &verifier) const {
11453 return VerifyTableStart(verifier) &&
11454 VerifyOffset(verifier, VT_CONTAINER) &&
11455 verifier.VerifyString(container()) &&
11456 VerifyOffset(verifier, VT_SHARED_NAME) &&
11457 verifier.VerifyString(shared_name()) &&
11458 verifier.EndTable();
11459 }
11460 VarHandleOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11461 void UnPackTo(VarHandleOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11462 static flatbuffers::Offset<VarHandleOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const VarHandleOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11463 };
11464
11465 struct VarHandleOptionsBuilder {
11466 typedef VarHandleOptions Table;
11467 flatbuffers::FlatBufferBuilder &fbb_;
11468 flatbuffers::uoffset_t start_;
11469 void add_container(flatbuffers::Offset<flatbuffers::String> container) {
11470 fbb_.AddOffset(VarHandleOptions::VT_CONTAINER, container);
11471 }
11472 void add_shared_name(flatbuffers::Offset<flatbuffers::String> shared_name) {
11473 fbb_.AddOffset(VarHandleOptions::VT_SHARED_NAME, shared_name);
11474 }
11475 explicit VarHandleOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
11476 : fbb_(_fbb) {
11477 start_ = fbb_.StartTable();
11478 }
11479 flatbuffers::Offset<VarHandleOptions> Finish() {
11480 const auto end = fbb_.EndTable(start_);
11481 auto o = flatbuffers::Offset<VarHandleOptions>(end);
11482 return o;
11483 }
11484 };
11485
11486 inline flatbuffers::Offset<VarHandleOptions> CreateVarHandleOptions(
11487 flatbuffers::FlatBufferBuilder &_fbb,
11488 flatbuffers::Offset<flatbuffers::String> container = 0,
11489 flatbuffers::Offset<flatbuffers::String> shared_name = 0) {
11490 VarHandleOptionsBuilder builder_(_fbb);
11491 builder_.add_shared_name(shared_name);
11492 builder_.add_container(container);
11493 return builder_.Finish();
11494 }
11495
11496 inline flatbuffers::Offset<VarHandleOptions> CreateVarHandleOptionsDirect(
11497 flatbuffers::FlatBufferBuilder &_fbb,
11498 const char *container = nullptr,
11499 const char *shared_name = nullptr) {
11500 auto container__ = container ? _fbb.CreateString(container) : 0;
11501 auto shared_name__ = shared_name ? _fbb.CreateString(shared_name) : 0;
11502 return tflite::CreateVarHandleOptions(
11503 _fbb,
11504 container__,
11505 shared_name__);
11506 }
11507
11508 flatbuffers::Offset<VarHandleOptions> CreateVarHandleOptions(flatbuffers::FlatBufferBuilder &_fbb, const VarHandleOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11509
11510 struct ReadVariableOptionsT : public flatbuffers::NativeTable {
11511 typedef ReadVariableOptions TableType;
11512 };
11513
11514 struct ReadVariableOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
11515 typedef ReadVariableOptionsT NativeTableType;
11516 typedef ReadVariableOptionsBuilder Builder;
11517 bool Verify(flatbuffers::Verifier &verifier) const {
11518 return VerifyTableStart(verifier) &&
11519 verifier.EndTable();
11520 }
11521 ReadVariableOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11522 void UnPackTo(ReadVariableOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11523 static flatbuffers::Offset<ReadVariableOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReadVariableOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11524 };
11525
11526 struct ReadVariableOptionsBuilder {
11527 typedef ReadVariableOptions Table;
11528 flatbuffers::FlatBufferBuilder &fbb_;
11529 flatbuffers::uoffset_t start_;
11530 explicit ReadVariableOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
11531 : fbb_(_fbb) {
11532 start_ = fbb_.StartTable();
11533 }
11534 flatbuffers::Offset<ReadVariableOptions> Finish() {
11535 const auto end = fbb_.EndTable(start_);
11536 auto o = flatbuffers::Offset<ReadVariableOptions>(end);
11537 return o;
11538 }
11539 };
11540
11541 inline flatbuffers::Offset<ReadVariableOptions> CreateReadVariableOptions(
11542 flatbuffers::FlatBufferBuilder &_fbb) {
11543 ReadVariableOptionsBuilder builder_(_fbb);
11544 return builder_.Finish();
11545 }
11546
11547 flatbuffers::Offset<ReadVariableOptions> CreateReadVariableOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReadVariableOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11548
11549 struct AssignVariableOptionsT : public flatbuffers::NativeTable {
11550 typedef AssignVariableOptions TableType;
11551 };
11552
11553 struct AssignVariableOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
11554 typedef AssignVariableOptionsT NativeTableType;
11555 typedef AssignVariableOptionsBuilder Builder;
11556 bool Verify(flatbuffers::Verifier &verifier) const {
11557 return VerifyTableStart(verifier) &&
11558 verifier.EndTable();
11559 }
11560 AssignVariableOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11561 void UnPackTo(AssignVariableOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11562 static flatbuffers::Offset<AssignVariableOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const AssignVariableOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11563 };
11564
11565 struct AssignVariableOptionsBuilder {
11566 typedef AssignVariableOptions Table;
11567 flatbuffers::FlatBufferBuilder &fbb_;
11568 flatbuffers::uoffset_t start_;
11569 explicit AssignVariableOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
11570 : fbb_(_fbb) {
11571 start_ = fbb_.StartTable();
11572 }
11573 flatbuffers::Offset<AssignVariableOptions> Finish() {
11574 const auto end = fbb_.EndTable(start_);
11575 auto o = flatbuffers::Offset<AssignVariableOptions>(end);
11576 return o;
11577 }
11578 };
11579
11580 inline flatbuffers::Offset<AssignVariableOptions> CreateAssignVariableOptions(
11581 flatbuffers::FlatBufferBuilder &_fbb) {
11582 AssignVariableOptionsBuilder builder_(_fbb);
11583 return builder_.Finish();
11584 }
11585
11586 flatbuffers::Offset<AssignVariableOptions> CreateAssignVariableOptions(flatbuffers::FlatBufferBuilder &_fbb, const AssignVariableOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11587
11588 struct RandomOptionsT : public flatbuffers::NativeTable {
11589 typedef RandomOptions TableType;
11590 int64_t seed = 0;
11591 int64_t seed2 = 0;
11592 };
11593
11594 struct RandomOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
11595 typedef RandomOptionsT NativeTableType;
11596 typedef RandomOptionsBuilder Builder;
11597 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
11598 VT_SEED = 4,
11599 VT_SEED2 = 6
11600 };
11601 int64_t seed() const {
11602 return GetField<int64_t>(VT_SEED, 0);
11603 }
11604 bool mutate_seed(int64_t _seed = 0) {
11605 return SetField<int64_t>(VT_SEED, _seed, 0);
11606 }
11607 int64_t seed2() const {
11608 return GetField<int64_t>(VT_SEED2, 0);
11609 }
11610 bool mutate_seed2(int64_t _seed2 = 0) {
11611 return SetField<int64_t>(VT_SEED2, _seed2, 0);
11612 }
11613 bool Verify(flatbuffers::Verifier &verifier) const {
11614 return VerifyTableStart(verifier) &&
11615 VerifyField<int64_t>(verifier, VT_SEED, 8) &&
11616 VerifyField<int64_t>(verifier, VT_SEED2, 8) &&
11617 verifier.EndTable();
11618 }
11619 RandomOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11620 void UnPackTo(RandomOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11621 static flatbuffers::Offset<RandomOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const RandomOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11622 };
11623
11624 struct RandomOptionsBuilder {
11625 typedef RandomOptions Table;
11626 flatbuffers::FlatBufferBuilder &fbb_;
11627 flatbuffers::uoffset_t start_;
11628 void add_seed(int64_t seed) {
11629 fbb_.AddElement<int64_t>(RandomOptions::VT_SEED, seed, 0);
11630 }
11631 void add_seed2(int64_t seed2) {
11632 fbb_.AddElement<int64_t>(RandomOptions::VT_SEED2, seed2, 0);
11633 }
11634 explicit RandomOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
11635 : fbb_(_fbb) {
11636 start_ = fbb_.StartTable();
11637 }
11638 flatbuffers::Offset<RandomOptions> Finish() {
11639 const auto end = fbb_.EndTable(start_);
11640 auto o = flatbuffers::Offset<RandomOptions>(end);
11641 return o;
11642 }
11643 };
11644
11645 inline flatbuffers::Offset<RandomOptions> CreateRandomOptions(
11646 flatbuffers::FlatBufferBuilder &_fbb,
11647 int64_t seed = 0,
11648 int64_t seed2 = 0) {
11649 RandomOptionsBuilder builder_(_fbb);
11650 builder_.add_seed2(seed2);
11651 builder_.add_seed(seed);
11652 return builder_.Finish();
11653 }
11654
11655 flatbuffers::Offset<RandomOptions> CreateRandomOptions(flatbuffers::FlatBufferBuilder &_fbb, const RandomOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11656
11657 struct BucketizeOptionsT : public flatbuffers::NativeTable {
11658 typedef BucketizeOptions TableType;
11659 std::vector<float> boundaries{};
11660 };
11661
11662 struct BucketizeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
11663 typedef BucketizeOptionsT NativeTableType;
11664 typedef BucketizeOptionsBuilder Builder;
11665 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
11666 VT_BOUNDARIES = 4
11667 };
11668 const flatbuffers::Vector<float> *boundaries() const {
11669 return GetPointer<const flatbuffers::Vector<float> *>(VT_BOUNDARIES);
11670 }
11671 flatbuffers::Vector<float> *mutable_boundaries() {
11672 return GetPointer<flatbuffers::Vector<float> *>(VT_BOUNDARIES);
11673 }
11674 bool Verify(flatbuffers::Verifier &verifier) const {
11675 return VerifyTableStart(verifier) &&
11676 VerifyOffset(verifier, VT_BOUNDARIES) &&
11677 verifier.VerifyVector(boundaries()) &&
11678 verifier.EndTable();
11679 }
11680 BucketizeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11681 void UnPackTo(BucketizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11682 static flatbuffers::Offset<BucketizeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BucketizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11683 };
11684
11685 struct BucketizeOptionsBuilder {
11686 typedef BucketizeOptions Table;
11687 flatbuffers::FlatBufferBuilder &fbb_;
11688 flatbuffers::uoffset_t start_;
11689 void add_boundaries(flatbuffers::Offset<flatbuffers::Vector<float>> boundaries) {
11690 fbb_.AddOffset(BucketizeOptions::VT_BOUNDARIES, boundaries);
11691 }
11692 explicit BucketizeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
11693 : fbb_(_fbb) {
11694 start_ = fbb_.StartTable();
11695 }
11696 flatbuffers::Offset<BucketizeOptions> Finish() {
11697 const auto end = fbb_.EndTable(start_);
11698 auto o = flatbuffers::Offset<BucketizeOptions>(end);
11699 return o;
11700 }
11701 };
11702
11703 inline flatbuffers::Offset<BucketizeOptions> CreateBucketizeOptions(
11704 flatbuffers::FlatBufferBuilder &_fbb,
11705 flatbuffers::Offset<flatbuffers::Vector<float>> boundaries = 0) {
11706 BucketizeOptionsBuilder builder_(_fbb);
11707 builder_.add_boundaries(boundaries);
11708 return builder_.Finish();
11709 }
11710
11711 inline flatbuffers::Offset<BucketizeOptions> CreateBucketizeOptionsDirect(
11712 flatbuffers::FlatBufferBuilder &_fbb,
11713 const std::vector<float> *boundaries = nullptr) {
11714 auto boundaries__ = boundaries ? _fbb.CreateVector<float>(*boundaries) : 0;
11715 return tflite::CreateBucketizeOptions(
11716 _fbb,
11717 boundaries__);
11718 }
11719
11720 flatbuffers::Offset<BucketizeOptions> CreateBucketizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const BucketizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11721
11722 struct GeluOptionsT : public flatbuffers::NativeTable {
11723 typedef GeluOptions TableType;
11724 bool approximate = false;
11725 };
11726
11727 struct GeluOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
11728 typedef GeluOptionsT NativeTableType;
11729 typedef GeluOptionsBuilder Builder;
11730 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
11731 VT_APPROXIMATE = 4
11732 };
11733 bool approximate() const {
11734 return GetField<uint8_t>(VT_APPROXIMATE, 0) != 0;
11735 }
11736 bool mutate_approximate(bool _approximate = 0) {
11737 return SetField<uint8_t>(VT_APPROXIMATE, static_cast<uint8_t>(_approximate), 0);
11738 }
11739 bool Verify(flatbuffers::Verifier &verifier) const {
11740 return VerifyTableStart(verifier) &&
11741 VerifyField<uint8_t>(verifier, VT_APPROXIMATE, 1) &&
11742 verifier.EndTable();
11743 }
11744 GeluOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11745 void UnPackTo(GeluOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11746 static flatbuffers::Offset<GeluOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const GeluOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11747 };
11748
11749 struct GeluOptionsBuilder {
11750 typedef GeluOptions Table;
11751 flatbuffers::FlatBufferBuilder &fbb_;
11752 flatbuffers::uoffset_t start_;
11753 void add_approximate(bool approximate) {
11754 fbb_.AddElement<uint8_t>(GeluOptions::VT_APPROXIMATE, static_cast<uint8_t>(approximate), 0);
11755 }
11756 explicit GeluOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
11757 : fbb_(_fbb) {
11758 start_ = fbb_.StartTable();
11759 }
11760 flatbuffers::Offset<GeluOptions> Finish() {
11761 const auto end = fbb_.EndTable(start_);
11762 auto o = flatbuffers::Offset<GeluOptions>(end);
11763 return o;
11764 }
11765 };
11766
11767 inline flatbuffers::Offset<GeluOptions> CreateGeluOptions(
11768 flatbuffers::FlatBufferBuilder &_fbb,
11769 bool approximate = false) {
11770 GeluOptionsBuilder builder_(_fbb);
11771 builder_.add_approximate(approximate);
11772 return builder_.Finish();
11773 }
11774
11775 flatbuffers::Offset<GeluOptions> CreateGeluOptions(flatbuffers::FlatBufferBuilder &_fbb, const GeluOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11776
11777 struct DynamicUpdateSliceOptionsT : public flatbuffers::NativeTable {
11778 typedef DynamicUpdateSliceOptions TableType;
11779 };
11780
11781 struct DynamicUpdateSliceOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
11782 typedef DynamicUpdateSliceOptionsT NativeTableType;
11783 typedef DynamicUpdateSliceOptionsBuilder Builder;
11784 bool Verify(flatbuffers::Verifier &verifier) const {
11785 return VerifyTableStart(verifier) &&
11786 verifier.EndTable();
11787 }
11788 DynamicUpdateSliceOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11789 void UnPackTo(DynamicUpdateSliceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11790 static flatbuffers::Offset<DynamicUpdateSliceOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DynamicUpdateSliceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11791 };
11792
11793 struct DynamicUpdateSliceOptionsBuilder {
11794 typedef DynamicUpdateSliceOptions Table;
11795 flatbuffers::FlatBufferBuilder &fbb_;
11796 flatbuffers::uoffset_t start_;
11797 explicit DynamicUpdateSliceOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
11798 : fbb_(_fbb) {
11799 start_ = fbb_.StartTable();
11800 }
11801 flatbuffers::Offset<DynamicUpdateSliceOptions> Finish() {
11802 const auto end = fbb_.EndTable(start_);
11803 auto o = flatbuffers::Offset<DynamicUpdateSliceOptions>(end);
11804 return o;
11805 }
11806 };
11807
11808 inline flatbuffers::Offset<DynamicUpdateSliceOptions> CreateDynamicUpdateSliceOptions(
11809 flatbuffers::FlatBufferBuilder &_fbb) {
11810 DynamicUpdateSliceOptionsBuilder builder_(_fbb);
11811 return builder_.Finish();
11812 }
11813
11814 flatbuffers::Offset<DynamicUpdateSliceOptions> CreateDynamicUpdateSliceOptions(flatbuffers::FlatBufferBuilder &_fbb, const DynamicUpdateSliceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11815
11816 struct UnsortedSegmentProdOptionsT : public flatbuffers::NativeTable {
11817 typedef UnsortedSegmentProdOptions TableType;
11818 };
11819
11820 struct UnsortedSegmentProdOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
11821 typedef UnsortedSegmentProdOptionsT NativeTableType;
11822 typedef UnsortedSegmentProdOptionsBuilder Builder;
11823 bool Verify(flatbuffers::Verifier &verifier) const {
11824 return VerifyTableStart(verifier) &&
11825 verifier.EndTable();
11826 }
11827 UnsortedSegmentProdOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11828 void UnPackTo(UnsortedSegmentProdOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11829 static flatbuffers::Offset<UnsortedSegmentProdOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentProdOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11830 };
11831
11832 struct UnsortedSegmentProdOptionsBuilder {
11833 typedef UnsortedSegmentProdOptions Table;
11834 flatbuffers::FlatBufferBuilder &fbb_;
11835 flatbuffers::uoffset_t start_;
11836 explicit UnsortedSegmentProdOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
11837 : fbb_(_fbb) {
11838 start_ = fbb_.StartTable();
11839 }
11840 flatbuffers::Offset<UnsortedSegmentProdOptions> Finish() {
11841 const auto end = fbb_.EndTable(start_);
11842 auto o = flatbuffers::Offset<UnsortedSegmentProdOptions>(end);
11843 return o;
11844 }
11845 };
11846
11847 inline flatbuffers::Offset<UnsortedSegmentProdOptions> CreateUnsortedSegmentProdOptions(
11848 flatbuffers::FlatBufferBuilder &_fbb) {
11849 UnsortedSegmentProdOptionsBuilder builder_(_fbb);
11850 return builder_.Finish();
11851 }
11852
11853 flatbuffers::Offset<UnsortedSegmentProdOptions> CreateUnsortedSegmentProdOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentProdOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11854
11855 struct UnsortedSegmentMaxOptionsT : public flatbuffers::NativeTable {
11856 typedef UnsortedSegmentMaxOptions TableType;
11857 };
11858
11859 struct UnsortedSegmentMaxOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
11860 typedef UnsortedSegmentMaxOptionsT NativeTableType;
11861 typedef UnsortedSegmentMaxOptionsBuilder Builder;
11862 bool Verify(flatbuffers::Verifier &verifier) const {
11863 return VerifyTableStart(verifier) &&
11864 verifier.EndTable();
11865 }
11866 UnsortedSegmentMaxOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11867 void UnPackTo(UnsortedSegmentMaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11868 static flatbuffers::Offset<UnsortedSegmentMaxOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11869 };
11870
11871 struct UnsortedSegmentMaxOptionsBuilder {
11872 typedef UnsortedSegmentMaxOptions Table;
11873 flatbuffers::FlatBufferBuilder &fbb_;
11874 flatbuffers::uoffset_t start_;
11875 explicit UnsortedSegmentMaxOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
11876 : fbb_(_fbb) {
11877 start_ = fbb_.StartTable();
11878 }
11879 flatbuffers::Offset<UnsortedSegmentMaxOptions> Finish() {
11880 const auto end = fbb_.EndTable(start_);
11881 auto o = flatbuffers::Offset<UnsortedSegmentMaxOptions>(end);
11882 return o;
11883 }
11884 };
11885
11886 inline flatbuffers::Offset<UnsortedSegmentMaxOptions> CreateUnsortedSegmentMaxOptions(
11887 flatbuffers::FlatBufferBuilder &_fbb) {
11888 UnsortedSegmentMaxOptionsBuilder builder_(_fbb);
11889 return builder_.Finish();
11890 }
11891
11892 flatbuffers::Offset<UnsortedSegmentMaxOptions> CreateUnsortedSegmentMaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11893
11894 struct UnsortedSegmentSumOptionsT : public flatbuffers::NativeTable {
11895 typedef UnsortedSegmentSumOptions TableType;
11896 };
11897
11898 struct UnsortedSegmentSumOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
11899 typedef UnsortedSegmentSumOptionsT NativeTableType;
11900 typedef UnsortedSegmentSumOptionsBuilder Builder;
11901 bool Verify(flatbuffers::Verifier &verifier) const {
11902 return VerifyTableStart(verifier) &&
11903 verifier.EndTable();
11904 }
11905 UnsortedSegmentSumOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11906 void UnPackTo(UnsortedSegmentSumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11907 static flatbuffers::Offset<UnsortedSegmentSumOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentSumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11908 };
11909
11910 struct UnsortedSegmentSumOptionsBuilder {
11911 typedef UnsortedSegmentSumOptions Table;
11912 flatbuffers::FlatBufferBuilder &fbb_;
11913 flatbuffers::uoffset_t start_;
11914 explicit UnsortedSegmentSumOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
11915 : fbb_(_fbb) {
11916 start_ = fbb_.StartTable();
11917 }
11918 flatbuffers::Offset<UnsortedSegmentSumOptions> Finish() {
11919 const auto end = fbb_.EndTable(start_);
11920 auto o = flatbuffers::Offset<UnsortedSegmentSumOptions>(end);
11921 return o;
11922 }
11923 };
11924
11925 inline flatbuffers::Offset<UnsortedSegmentSumOptions> CreateUnsortedSegmentSumOptions(
11926 flatbuffers::FlatBufferBuilder &_fbb) {
11927 UnsortedSegmentSumOptionsBuilder builder_(_fbb);
11928 return builder_.Finish();
11929 }
11930
11931 flatbuffers::Offset<UnsortedSegmentSumOptions> CreateUnsortedSegmentSumOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentSumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11932
11933 struct ATan2OptionsT : public flatbuffers::NativeTable {
11934 typedef ATan2Options TableType;
11935 };
11936
11937 struct ATan2Options FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
11938 typedef ATan2OptionsT NativeTableType;
11939 typedef ATan2OptionsBuilder Builder;
11940 bool Verify(flatbuffers::Verifier &verifier) const {
11941 return VerifyTableStart(verifier) &&
11942 verifier.EndTable();
11943 }
11944 ATan2OptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11945 void UnPackTo(ATan2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11946 static flatbuffers::Offset<ATan2Options> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ATan2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11947 };
11948
11949 struct ATan2OptionsBuilder {
11950 typedef ATan2Options Table;
11951 flatbuffers::FlatBufferBuilder &fbb_;
11952 flatbuffers::uoffset_t start_;
11953 explicit ATan2OptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
11954 : fbb_(_fbb) {
11955 start_ = fbb_.StartTable();
11956 }
11957 flatbuffers::Offset<ATan2Options> Finish() {
11958 const auto end = fbb_.EndTable(start_);
11959 auto o = flatbuffers::Offset<ATan2Options>(end);
11960 return o;
11961 }
11962 };
11963
11964 inline flatbuffers::Offset<ATan2Options> CreateATan2Options(
11965 flatbuffers::FlatBufferBuilder &_fbb) {
11966 ATan2OptionsBuilder builder_(_fbb);
11967 return builder_.Finish();
11968 }
11969
11970 flatbuffers::Offset<ATan2Options> CreateATan2Options(flatbuffers::FlatBufferBuilder &_fbb, const ATan2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11971
11972 struct UnsortedSegmentMinOptionsT : public flatbuffers::NativeTable {
11973 typedef UnsortedSegmentMinOptions TableType;
11974 };
11975
11976 struct UnsortedSegmentMinOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
11977 typedef UnsortedSegmentMinOptionsT NativeTableType;
11978 typedef UnsortedSegmentMinOptionsBuilder Builder;
11979 bool Verify(flatbuffers::Verifier &verifier) const {
11980 return VerifyTableStart(verifier) &&
11981 verifier.EndTable();
11982 }
11983 UnsortedSegmentMinOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11984 void UnPackTo(UnsortedSegmentMinOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
11985 static flatbuffers::Offset<UnsortedSegmentMinOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMinOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
11986 };
11987
11988 struct UnsortedSegmentMinOptionsBuilder {
11989 typedef UnsortedSegmentMinOptions Table;
11990 flatbuffers::FlatBufferBuilder &fbb_;
11991 flatbuffers::uoffset_t start_;
11992 explicit UnsortedSegmentMinOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
11993 : fbb_(_fbb) {
11994 start_ = fbb_.StartTable();
11995 }
11996 flatbuffers::Offset<UnsortedSegmentMinOptions> Finish() {
11997 const auto end = fbb_.EndTable(start_);
11998 auto o = flatbuffers::Offset<UnsortedSegmentMinOptions>(end);
11999 return o;
12000 }
12001 };
12002
12003 inline flatbuffers::Offset<UnsortedSegmentMinOptions> CreateUnsortedSegmentMinOptions(
12004 flatbuffers::FlatBufferBuilder &_fbb) {
12005 UnsortedSegmentMinOptionsBuilder builder_(_fbb);
12006 return builder_.Finish();
12007 }
12008
12009 flatbuffers::Offset<UnsortedSegmentMinOptions> CreateUnsortedSegmentMinOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMinOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
12010
12011 struct SignOptionsT : public flatbuffers::NativeTable {
12012 typedef SignOptions TableType;
12013 };
12014
12015 struct SignOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
12016 typedef SignOptionsT NativeTableType;
12017 typedef SignOptionsBuilder Builder;
12018 bool Verify(flatbuffers::Verifier &verifier) const {
12019 return VerifyTableStart(verifier) &&
12020 verifier.EndTable();
12021 }
12022 SignOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
12023 void UnPackTo(SignOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
12024 static flatbuffers::Offset<SignOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SignOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
12025 };
12026
12027 struct SignOptionsBuilder {
12028 typedef SignOptions Table;
12029 flatbuffers::FlatBufferBuilder &fbb_;
12030 flatbuffers::uoffset_t start_;
12031 explicit SignOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
12032 : fbb_(_fbb) {
12033 start_ = fbb_.StartTable();
12034 }
12035 flatbuffers::Offset<SignOptions> Finish() {
12036 const auto end = fbb_.EndTable(start_);
12037 auto o = flatbuffers::Offset<SignOptions>(end);
12038 return o;
12039 }
12040 };
12041
12042 inline flatbuffers::Offset<SignOptions> CreateSignOptions(
12043 flatbuffers::FlatBufferBuilder &_fbb) {
12044 SignOptionsBuilder builder_(_fbb);
12045 return builder_.Finish();
12046 }
12047
12048 flatbuffers::Offset<SignOptions> CreateSignOptions(flatbuffers::FlatBufferBuilder &_fbb, const SignOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
12049
12050 struct OperatorCodeT : public flatbuffers::NativeTable {
12051 typedef OperatorCode TableType;
12052 int8_t deprecated_builtin_code = 0;
12053 std::string custom_code{};
12054 int32_t version = 1;
12055 tflite::BuiltinOperator builtin_code = tflite::BuiltinOperator_ADD;
12056 };
12057
12058 struct OperatorCode FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
12059 typedef OperatorCodeT NativeTableType;
12060 typedef OperatorCodeBuilder Builder;
12061 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
12062 VT_DEPRECATED_BUILTIN_CODE = 4,
12063 VT_CUSTOM_CODE = 6,
12064 VT_VERSION = 8,
12065 VT_BUILTIN_CODE = 10
12066 };
12067 int8_t deprecated_builtin_code() const {
12068 return GetField<int8_t>(VT_DEPRECATED_BUILTIN_CODE, 0);
12069 }
12070 bool mutate_deprecated_builtin_code(int8_t _deprecated_builtin_code = 0) {
12071 return SetField<int8_t>(VT_DEPRECATED_BUILTIN_CODE, _deprecated_builtin_code, 0);
12072 }
12073 const flatbuffers::String *custom_code() const {
12074 return GetPointer<const flatbuffers::String *>(VT_CUSTOM_CODE);
12075 }
12076 flatbuffers::String *mutable_custom_code() {
12077 return GetPointer<flatbuffers::String *>(VT_CUSTOM_CODE);
12078 }
12079 int32_t version() const {
12080 return GetField<int32_t>(VT_VERSION, 1);
12081 }
12082 bool mutate_version(int32_t _version = 1) {
12083 return SetField<int32_t>(VT_VERSION, _version, 1);
12084 }
12085 tflite::BuiltinOperator builtin_code() const {
12086 return static_cast<tflite::BuiltinOperator>(GetField<int32_t>(VT_BUILTIN_CODE, 0));
12087 }
12088 bool mutate_builtin_code(tflite::BuiltinOperator _builtin_code = static_cast<tflite::BuiltinOperator>(0)) {
12089 return SetField<int32_t>(VT_BUILTIN_CODE, static_cast<int32_t>(_builtin_code), 0);
12090 }
12091 bool Verify(flatbuffers::Verifier &verifier) const {
12092 return VerifyTableStart(verifier) &&
12093 VerifyField<int8_t>(verifier, VT_DEPRECATED_BUILTIN_CODE, 1) &&
12094 VerifyOffset(verifier, VT_CUSTOM_CODE) &&
12095 verifier.VerifyString(custom_code()) &&
12096 VerifyField<int32_t>(verifier, VT_VERSION, 4) &&
12097 VerifyField<int32_t>(verifier, VT_BUILTIN_CODE, 4) &&
12098 verifier.EndTable();
12099 }
12100 OperatorCodeT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
12101 void UnPackTo(OperatorCodeT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
12102 static flatbuffers::Offset<OperatorCode> Pack(flatbuffers::FlatBufferBuilder &_fbb, const OperatorCodeT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
12103 };
12104
12105 struct OperatorCodeBuilder {
12106 typedef OperatorCode Table;
12107 flatbuffers::FlatBufferBuilder &fbb_;
12108 flatbuffers::uoffset_t start_;
12109 void add_deprecated_builtin_code(int8_t deprecated_builtin_code) {
12110 fbb_.AddElement<int8_t>(OperatorCode::VT_DEPRECATED_BUILTIN_CODE, deprecated_builtin_code, 0);
12111 }
12112 void add_custom_code(flatbuffers::Offset<flatbuffers::String> custom_code) {
12113 fbb_.AddOffset(OperatorCode::VT_CUSTOM_CODE, custom_code);
12114 }
12115 void add_version(int32_t version) {
12116 fbb_.AddElement<int32_t>(OperatorCode::VT_VERSION, version, 1);
12117 }
12118 void add_builtin_code(tflite::BuiltinOperator builtin_code) {
12119 fbb_.AddElement<int32_t>(OperatorCode::VT_BUILTIN_CODE, static_cast<int32_t>(builtin_code), 0);
12120 }
12121 explicit OperatorCodeBuilder(flatbuffers::FlatBufferBuilder &_fbb)
12122 : fbb_(_fbb) {
12123 start_ = fbb_.StartTable();
12124 }
12125 flatbuffers::Offset<OperatorCode> Finish() {
12126 const auto end = fbb_.EndTable(start_);
12127 auto o = flatbuffers::Offset<OperatorCode>(end);
12128 return o;
12129 }
12130 };
12131
12132 inline flatbuffers::Offset<OperatorCode> CreateOperatorCode(
12133 flatbuffers::FlatBufferBuilder &_fbb,
12134 int8_t deprecated_builtin_code = 0,
12135 flatbuffers::Offset<flatbuffers::String> custom_code = 0,
12136 int32_t version = 1,
12137 tflite::BuiltinOperator builtin_code = tflite::BuiltinOperator_ADD) {
12138 OperatorCodeBuilder builder_(_fbb);
12139 builder_.add_builtin_code(builtin_code);
12140 builder_.add_version(version);
12141 builder_.add_custom_code(custom_code);
12142 builder_.add_deprecated_builtin_code(deprecated_builtin_code);
12143 return builder_.Finish();
12144 }
12145
12146 inline flatbuffers::Offset<OperatorCode> CreateOperatorCodeDirect(
12147 flatbuffers::FlatBufferBuilder &_fbb,
12148 int8_t deprecated_builtin_code = 0,
12149 const char *custom_code = nullptr,
12150 int32_t version = 1,
12151 tflite::BuiltinOperator builtin_code = tflite::BuiltinOperator_ADD) {
12152 auto custom_code__ = custom_code ? _fbb.CreateString(custom_code) : 0;
12153 return tflite::CreateOperatorCode(
12154 _fbb,
12155 deprecated_builtin_code,
12156 custom_code__,
12157 version,
12158 builtin_code);
12159 }
12160
12161 flatbuffers::Offset<OperatorCode> CreateOperatorCode(flatbuffers::FlatBufferBuilder &_fbb, const OperatorCodeT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
12162
12163 struct OperatorT : public flatbuffers::NativeTable {
12164 typedef Operator TableType;
12165 uint32_t opcode_index = 0;
12166 std::vector<int32_t> inputs{};
12167 std::vector<int32_t> outputs{};
12168 tflite::BuiltinOptionsUnion builtin_options{};
12169 std::vector<uint8_t> custom_options{};
12170 tflite::CustomOptionsFormat custom_options_format = tflite::CustomOptionsFormat_FLEXBUFFERS;
12171 std::vector<bool> mutating_variable_inputs{};
12172 std::vector<int32_t> intermediates{};
12173 };
12174
12175 struct Operator FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
12176 typedef OperatorT NativeTableType;
12177 typedef OperatorBuilder Builder;
12178 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
12179 VT_OPCODE_INDEX = 4,
12180 VT_INPUTS = 6,
12181 VT_OUTPUTS = 8,
12182 VT_BUILTIN_OPTIONS_TYPE = 10,
12183 VT_BUILTIN_OPTIONS = 12,
12184 VT_CUSTOM_OPTIONS = 14,
12185 VT_CUSTOM_OPTIONS_FORMAT = 16,
12186 VT_MUTATING_VARIABLE_INPUTS = 18,
12187 VT_INTERMEDIATES = 20
12188 };
12189 uint32_t opcode_index() const {
12190 return GetField<uint32_t>(VT_OPCODE_INDEX, 0);
12191 }
12192 bool mutate_opcode_index(uint32_t _opcode_index = 0) {
12193 return SetField<uint32_t>(VT_OPCODE_INDEX, _opcode_index, 0);
12194 }
12195 const flatbuffers::Vector<int32_t> *inputs() const {
12196 return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_INPUTS);
12197 }
12198 flatbuffers::Vector<int32_t> *mutable_inputs() {
12199 return GetPointer<flatbuffers::Vector<int32_t> *>(VT_INPUTS);
12200 }
12201 const flatbuffers::Vector<int32_t> *outputs() const {
12202 return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_OUTPUTS);
12203 }
12204 flatbuffers::Vector<int32_t> *mutable_outputs() {
12205 return GetPointer<flatbuffers::Vector<int32_t> *>(VT_OUTPUTS);
12206 }
12207 tflite::BuiltinOptions builtin_options_type() const {
12208 return static_cast<tflite::BuiltinOptions>(GetField<uint8_t>(VT_BUILTIN_OPTIONS_TYPE, 0));
12209 }
12210 const void *builtin_options() const {
12211 return GetPointer<const void *>(VT_BUILTIN_OPTIONS);
12212 }
12213 template<typename T> const T *builtin_options_as() const;
12214 const tflite::Conv2DOptions *builtin_options_as_Conv2DOptions() const {
12215 return builtin_options_type() == tflite::BuiltinOptions_Conv2DOptions ? static_cast<const tflite::Conv2DOptions *>(builtin_options()) : nullptr;
12216 }
12217 const tflite::DepthwiseConv2DOptions *builtin_options_as_DepthwiseConv2DOptions() const {
12218 return builtin_options_type() == tflite::BuiltinOptions_DepthwiseConv2DOptions ? static_cast<const tflite::DepthwiseConv2DOptions *>(builtin_options()) : nullptr;
12219 }
12220 const tflite::ConcatEmbeddingsOptions *builtin_options_as_ConcatEmbeddingsOptions() const {
12221 return builtin_options_type() == tflite::BuiltinOptions_ConcatEmbeddingsOptions ? static_cast<const tflite::ConcatEmbeddingsOptions *>(builtin_options()) : nullptr;
12222 }
12223 const tflite::LSHProjectionOptions *builtin_options_as_LSHProjectionOptions() const {
12224 return builtin_options_type() == tflite::BuiltinOptions_LSHProjectionOptions ? static_cast<const tflite::LSHProjectionOptions *>(builtin_options()) : nullptr;
12225 }
12226 const tflite::Pool2DOptions *builtin_options_as_Pool2DOptions() const {
12227 return builtin_options_type() == tflite::BuiltinOptions_Pool2DOptions ? static_cast<const tflite::Pool2DOptions *>(builtin_options()) : nullptr;
12228 }
12229 const tflite::SVDFOptions *builtin_options_as_SVDFOptions() const {
12230 return builtin_options_type() == tflite::BuiltinOptions_SVDFOptions ? static_cast<const tflite::SVDFOptions *>(builtin_options()) : nullptr;
12231 }
12232 const tflite::RNNOptions *builtin_options_as_RNNOptions() const {
12233 return builtin_options_type() == tflite::BuiltinOptions_RNNOptions ? static_cast<const tflite::RNNOptions *>(builtin_options()) : nullptr;
12234 }
12235 const tflite::FullyConnectedOptions *builtin_options_as_FullyConnectedOptions() const {
12236 return builtin_options_type() == tflite::BuiltinOptions_FullyConnectedOptions ? static_cast<const tflite::FullyConnectedOptions *>(builtin_options()) : nullptr;
12237 }
12238 const tflite::SoftmaxOptions *builtin_options_as_SoftmaxOptions() const {
12239 return builtin_options_type() == tflite::BuiltinOptions_SoftmaxOptions ? static_cast<const tflite::SoftmaxOptions *>(builtin_options()) : nullptr;
12240 }
12241 const tflite::ConcatenationOptions *builtin_options_as_ConcatenationOptions() const {
12242 return builtin_options_type() == tflite::BuiltinOptions_ConcatenationOptions ? static_cast<const tflite::ConcatenationOptions *>(builtin_options()) : nullptr;
12243 }
12244 const tflite::AddOptions *builtin_options_as_AddOptions() const {
12245 return builtin_options_type() == tflite::BuiltinOptions_AddOptions ? static_cast<const tflite::AddOptions *>(builtin_options()) : nullptr;
12246 }
12247 const tflite::L2NormOptions *builtin_options_as_L2NormOptions() const {
12248 return builtin_options_type() == tflite::BuiltinOptions_L2NormOptions ? static_cast<const tflite::L2NormOptions *>(builtin_options()) : nullptr;
12249 }
12250 const tflite::LocalResponseNormalizationOptions *builtin_options_as_LocalResponseNormalizationOptions() const {
12251 return builtin_options_type() == tflite::BuiltinOptions_LocalResponseNormalizationOptions ? static_cast<const tflite::LocalResponseNormalizationOptions *>(builtin_options()) : nullptr;
12252 }
12253 const tflite::LSTMOptions *builtin_options_as_LSTMOptions() const {
12254 return builtin_options_type() == tflite::BuiltinOptions_LSTMOptions ? static_cast<const tflite::LSTMOptions *>(builtin_options()) : nullptr;
12255 }
12256 const tflite::ResizeBilinearOptions *builtin_options_as_ResizeBilinearOptions() const {
12257 return builtin_options_type() == tflite::BuiltinOptions_ResizeBilinearOptions ? static_cast<const tflite::ResizeBilinearOptions *>(builtin_options()) : nullptr;
12258 }
12259 const tflite::CallOptions *builtin_options_as_CallOptions() const {
12260 return builtin_options_type() == tflite::BuiltinOptions_CallOptions ? static_cast<const tflite::CallOptions *>(builtin_options()) : nullptr;
12261 }
12262 const tflite::ReshapeOptions *builtin_options_as_ReshapeOptions() const {
12263 return builtin_options_type() == tflite::BuiltinOptions_ReshapeOptions ? static_cast<const tflite::ReshapeOptions *>(builtin_options()) : nullptr;
12264 }
12265 const tflite::SkipGramOptions *builtin_options_as_SkipGramOptions() const {
12266 return builtin_options_type() == tflite::BuiltinOptions_SkipGramOptions ? static_cast<const tflite::SkipGramOptions *>(builtin_options()) : nullptr;
12267 }
12268 const tflite::SpaceToDepthOptions *builtin_options_as_SpaceToDepthOptions() const {
12269 return builtin_options_type() == tflite::BuiltinOptions_SpaceToDepthOptions ? static_cast<const tflite::SpaceToDepthOptions *>(builtin_options()) : nullptr;
12270 }
12271 const tflite::EmbeddingLookupSparseOptions *builtin_options_as_EmbeddingLookupSparseOptions() const {
12272 return builtin_options_type() == tflite::BuiltinOptions_EmbeddingLookupSparseOptions ? static_cast<const tflite::EmbeddingLookupSparseOptions *>(builtin_options()) : nullptr;
12273 }
12274 const tflite::MulOptions *builtin_options_as_MulOptions() const {
12275 return builtin_options_type() == tflite::BuiltinOptions_MulOptions ? static_cast<const tflite::MulOptions *>(builtin_options()) : nullptr;
12276 }
12277 const tflite::PadOptions *builtin_options_as_PadOptions() const {
12278 return builtin_options_type() == tflite::BuiltinOptions_PadOptions ? static_cast<const tflite::PadOptions *>(builtin_options()) : nullptr;
12279 }
12280 const tflite::GatherOptions *builtin_options_as_GatherOptions() const {
12281 return builtin_options_type() == tflite::BuiltinOptions_GatherOptions ? static_cast<const tflite::GatherOptions *>(builtin_options()) : nullptr;
12282 }
12283 const tflite::BatchToSpaceNDOptions *builtin_options_as_BatchToSpaceNDOptions() const {
12284 return builtin_options_type() == tflite::BuiltinOptions_BatchToSpaceNDOptions ? static_cast<const tflite::BatchToSpaceNDOptions *>(builtin_options()) : nullptr;
12285 }
12286 const tflite::SpaceToBatchNDOptions *builtin_options_as_SpaceToBatchNDOptions() const {
12287 return builtin_options_type() == tflite::BuiltinOptions_SpaceToBatchNDOptions ? static_cast<const tflite::SpaceToBatchNDOptions *>(builtin_options()) : nullptr;
12288 }
12289 const tflite::TransposeOptions *builtin_options_as_TransposeOptions() const {
12290 return builtin_options_type() == tflite::BuiltinOptions_TransposeOptions ? static_cast<const tflite::TransposeOptions *>(builtin_options()) : nullptr;
12291 }
12292 const tflite::ReducerOptions *builtin_options_as_ReducerOptions() const {
12293 return builtin_options_type() == tflite::BuiltinOptions_ReducerOptions ? static_cast<const tflite::ReducerOptions *>(builtin_options()) : nullptr;
12294 }
12295 const tflite::SubOptions *builtin_options_as_SubOptions() const {
12296 return builtin_options_type() == tflite::BuiltinOptions_SubOptions ? static_cast<const tflite::SubOptions *>(builtin_options()) : nullptr;
12297 }
12298 const tflite::DivOptions *builtin_options_as_DivOptions() const {
12299 return builtin_options_type() == tflite::BuiltinOptions_DivOptions ? static_cast<const tflite::DivOptions *>(builtin_options()) : nullptr;
12300 }
12301 const tflite::SqueezeOptions *builtin_options_as_SqueezeOptions() const {
12302 return builtin_options_type() == tflite::BuiltinOptions_SqueezeOptions ? static_cast<const tflite::SqueezeOptions *>(builtin_options()) : nullptr;
12303 }
12304 const tflite::SequenceRNNOptions *builtin_options_as_SequenceRNNOptions() const {
12305 return builtin_options_type() == tflite::BuiltinOptions_SequenceRNNOptions ? static_cast<const tflite::SequenceRNNOptions *>(builtin_options()) : nullptr;
12306 }
12307 const tflite::StridedSliceOptions *builtin_options_as_StridedSliceOptions() const {
12308 return builtin_options_type() == tflite::BuiltinOptions_StridedSliceOptions ? static_cast<const tflite::StridedSliceOptions *>(builtin_options()) : nullptr;
12309 }
12310 const tflite::ExpOptions *builtin_options_as_ExpOptions() const {
12311 return builtin_options_type() == tflite::BuiltinOptions_ExpOptions ? static_cast<const tflite::ExpOptions *>(builtin_options()) : nullptr;
12312 }
12313 const tflite::TopKV2Options *builtin_options_as_TopKV2Options() const {
12314 return builtin_options_type() == tflite::BuiltinOptions_TopKV2Options ? static_cast<const tflite::TopKV2Options *>(builtin_options()) : nullptr;
12315 }
12316 const tflite::SplitOptions *builtin_options_as_SplitOptions() const {
12317 return builtin_options_type() == tflite::BuiltinOptions_SplitOptions ? static_cast<const tflite::SplitOptions *>(builtin_options()) : nullptr;
12318 }
12319 const tflite::LogSoftmaxOptions *builtin_options_as_LogSoftmaxOptions() const {
12320 return builtin_options_type() == tflite::BuiltinOptions_LogSoftmaxOptions ? static_cast<const tflite::LogSoftmaxOptions *>(builtin_options()) : nullptr;
12321 }
12322 const tflite::CastOptions *builtin_options_as_CastOptions() const {
12323 return builtin_options_type() == tflite::BuiltinOptions_CastOptions ? static_cast<const tflite::CastOptions *>(builtin_options()) : nullptr;
12324 }
12325 const tflite::DequantizeOptions *builtin_options_as_DequantizeOptions() const {
12326 return builtin_options_type() == tflite::BuiltinOptions_DequantizeOptions ? static_cast<const tflite::DequantizeOptions *>(builtin_options()) : nullptr;
12327 }
12328 const tflite::MaximumMinimumOptions *builtin_options_as_MaximumMinimumOptions() const {
12329 return builtin_options_type() == tflite::BuiltinOptions_MaximumMinimumOptions ? static_cast<const tflite::MaximumMinimumOptions *>(builtin_options()) : nullptr;
12330 }
12331 const tflite::ArgMaxOptions *builtin_options_as_ArgMaxOptions() const {
12332 return builtin_options_type() == tflite::BuiltinOptions_ArgMaxOptions ? static_cast<const tflite::ArgMaxOptions *>(builtin_options()) : nullptr;
12333 }
12334 const tflite::LessOptions *builtin_options_as_LessOptions() const {
12335 return builtin_options_type() == tflite::BuiltinOptions_LessOptions ? static_cast<const tflite::LessOptions *>(builtin_options()) : nullptr;
12336 }
12337 const tflite::NegOptions *builtin_options_as_NegOptions() const {
12338 return builtin_options_type() == tflite::BuiltinOptions_NegOptions ? static_cast<const tflite::NegOptions *>(builtin_options()) : nullptr;
12339 }
12340 const tflite::PadV2Options *builtin_options_as_PadV2Options() const {
12341 return builtin_options_type() == tflite::BuiltinOptions_PadV2Options ? static_cast<const tflite::PadV2Options *>(builtin_options()) : nullptr;
12342 }
12343 const tflite::GreaterOptions *builtin_options_as_GreaterOptions() const {
12344 return builtin_options_type() == tflite::BuiltinOptions_GreaterOptions ? static_cast<const tflite::GreaterOptions *>(builtin_options()) : nullptr;
12345 }
12346 const tflite::GreaterEqualOptions *builtin_options_as_GreaterEqualOptions() const {
12347 return builtin_options_type() == tflite::BuiltinOptions_GreaterEqualOptions ? static_cast<const tflite::GreaterEqualOptions *>(builtin_options()) : nullptr;
12348 }
12349 const tflite::LessEqualOptions *builtin_options_as_LessEqualOptions() const {
12350 return builtin_options_type() == tflite::BuiltinOptions_LessEqualOptions ? static_cast<const tflite::LessEqualOptions *>(builtin_options()) : nullptr;
12351 }
12352 const tflite::SelectOptions *builtin_options_as_SelectOptions() const {
12353 return builtin_options_type() == tflite::BuiltinOptions_SelectOptions ? static_cast<const tflite::SelectOptions *>(builtin_options()) : nullptr;
12354 }
12355 const tflite::SliceOptions *builtin_options_as_SliceOptions() const {
12356 return builtin_options_type() == tflite::BuiltinOptions_SliceOptions ? static_cast<const tflite::SliceOptions *>(builtin_options()) : nullptr;
12357 }
12358 const tflite::TransposeConvOptions *builtin_options_as_TransposeConvOptions() const {
12359 return builtin_options_type() == tflite::BuiltinOptions_TransposeConvOptions ? static_cast<const tflite::TransposeConvOptions *>(builtin_options()) : nullptr;
12360 }
12361 const tflite::SparseToDenseOptions *builtin_options_as_SparseToDenseOptions() const {
12362 return builtin_options_type() == tflite::BuiltinOptions_SparseToDenseOptions ? static_cast<const tflite::SparseToDenseOptions *>(builtin_options()) : nullptr;
12363 }
12364 const tflite::TileOptions *builtin_options_as_TileOptions() const {
12365 return builtin_options_type() == tflite::BuiltinOptions_TileOptions ? static_cast<const tflite::TileOptions *>(builtin_options()) : nullptr;
12366 }
12367 const tflite::ExpandDimsOptions *builtin_options_as_ExpandDimsOptions() const {
12368 return builtin_options_type() == tflite::BuiltinOptions_ExpandDimsOptions ? static_cast<const tflite::ExpandDimsOptions *>(builtin_options()) : nullptr;
12369 }
12370 const tflite::EqualOptions *builtin_options_as_EqualOptions() const {
12371 return builtin_options_type() == tflite::BuiltinOptions_EqualOptions ? static_cast<const tflite::EqualOptions *>(builtin_options()) : nullptr;
12372 }
12373 const tflite::NotEqualOptions *builtin_options_as_NotEqualOptions() const {
12374 return builtin_options_type() == tflite::BuiltinOptions_NotEqualOptions ? static_cast<const tflite::NotEqualOptions *>(builtin_options()) : nullptr;
12375 }
12376 const tflite::ShapeOptions *builtin_options_as_ShapeOptions() const {
12377 return builtin_options_type() == tflite::BuiltinOptions_ShapeOptions ? static_cast<const tflite::ShapeOptions *>(builtin_options()) : nullptr;
12378 }
12379 const tflite::PowOptions *builtin_options_as_PowOptions() const {
12380 return builtin_options_type() == tflite::BuiltinOptions_PowOptions ? static_cast<const tflite::PowOptions *>(builtin_options()) : nullptr;
12381 }
12382 const tflite::ArgMinOptions *builtin_options_as_ArgMinOptions() const {
12383 return builtin_options_type() == tflite::BuiltinOptions_ArgMinOptions ? static_cast<const tflite::ArgMinOptions *>(builtin_options()) : nullptr;
12384 }
12385 const tflite::FakeQuantOptions *builtin_options_as_FakeQuantOptions() const {
12386 return builtin_options_type() == tflite::BuiltinOptions_FakeQuantOptions ? static_cast<const tflite::FakeQuantOptions *>(builtin_options()) : nullptr;
12387 }
12388 const tflite::PackOptions *builtin_options_as_PackOptions() const {
12389 return builtin_options_type() == tflite::BuiltinOptions_PackOptions ? static_cast<const tflite::PackOptions *>(builtin_options()) : nullptr;
12390 }
12391 const tflite::LogicalOrOptions *builtin_options_as_LogicalOrOptions() const {
12392 return builtin_options_type() == tflite::BuiltinOptions_LogicalOrOptions ? static_cast<const tflite::LogicalOrOptions *>(builtin_options()) : nullptr;
12393 }
12394 const tflite::OneHotOptions *builtin_options_as_OneHotOptions() const {
12395 return builtin_options_type() == tflite::BuiltinOptions_OneHotOptions ? static_cast<const tflite::OneHotOptions *>(builtin_options()) : nullptr;
12396 }
12397 const tflite::LogicalAndOptions *builtin_options_as_LogicalAndOptions() const {
12398 return builtin_options_type() == tflite::BuiltinOptions_LogicalAndOptions ? static_cast<const tflite::LogicalAndOptions *>(builtin_options()) : nullptr;
12399 }
12400 const tflite::LogicalNotOptions *builtin_options_as_LogicalNotOptions() const {
12401 return builtin_options_type() == tflite::BuiltinOptions_LogicalNotOptions ? static_cast<const tflite::LogicalNotOptions *>(builtin_options()) : nullptr;
12402 }
12403 const tflite::UnpackOptions *builtin_options_as_UnpackOptions() const {
12404 return builtin_options_type() == tflite::BuiltinOptions_UnpackOptions ? static_cast<const tflite::UnpackOptions *>(builtin_options()) : nullptr;
12405 }
12406 const tflite::FloorDivOptions *builtin_options_as_FloorDivOptions() const {
12407 return builtin_options_type() == tflite::BuiltinOptions_FloorDivOptions ? static_cast<const tflite::FloorDivOptions *>(builtin_options()) : nullptr;
12408 }
12409 const tflite::SquareOptions *builtin_options_as_SquareOptions() const {
12410 return builtin_options_type() == tflite::BuiltinOptions_SquareOptions ? static_cast<const tflite::SquareOptions *>(builtin_options()) : nullptr;
12411 }
12412 const tflite::ZerosLikeOptions *builtin_options_as_ZerosLikeOptions() const {
12413 return builtin_options_type() == tflite::BuiltinOptions_ZerosLikeOptions ? static_cast<const tflite::ZerosLikeOptions *>(builtin_options()) : nullptr;
12414 }
12415 const tflite::FillOptions *builtin_options_as_FillOptions() const {
12416 return builtin_options_type() == tflite::BuiltinOptions_FillOptions ? static_cast<const tflite::FillOptions *>(builtin_options()) : nullptr;
12417 }
12418 const tflite::BidirectionalSequenceLSTMOptions *builtin_options_as_BidirectionalSequenceLSTMOptions() const {
12419 return builtin_options_type() == tflite::BuiltinOptions_BidirectionalSequenceLSTMOptions ? static_cast<const tflite::BidirectionalSequenceLSTMOptions *>(builtin_options()) : nullptr;
12420 }
12421 const tflite::BidirectionalSequenceRNNOptions *builtin_options_as_BidirectionalSequenceRNNOptions() const {
12422 return builtin_options_type() == tflite::BuiltinOptions_BidirectionalSequenceRNNOptions ? static_cast<const tflite::BidirectionalSequenceRNNOptions *>(builtin_options()) : nullptr;
12423 }
12424 const tflite::UnidirectionalSequenceLSTMOptions *builtin_options_as_UnidirectionalSequenceLSTMOptions() const {
12425 return builtin_options_type() == tflite::BuiltinOptions_UnidirectionalSequenceLSTMOptions ? static_cast<const tflite::UnidirectionalSequenceLSTMOptions *>(builtin_options()) : nullptr;
12426 }
12427 const tflite::FloorModOptions *builtin_options_as_FloorModOptions() const {
12428 return builtin_options_type() == tflite::BuiltinOptions_FloorModOptions ? static_cast<const tflite::FloorModOptions *>(builtin_options()) : nullptr;
12429 }
12430 const tflite::RangeOptions *builtin_options_as_RangeOptions() const {
12431 return builtin_options_type() == tflite::BuiltinOptions_RangeOptions ? static_cast<const tflite::RangeOptions *>(builtin_options()) : nullptr;
12432 }
12433 const tflite::ResizeNearestNeighborOptions *builtin_options_as_ResizeNearestNeighborOptions() const {
12434 return builtin_options_type() == tflite::BuiltinOptions_ResizeNearestNeighborOptions ? static_cast<const tflite::ResizeNearestNeighborOptions *>(builtin_options()) : nullptr;
12435 }
12436 const tflite::LeakyReluOptions *builtin_options_as_LeakyReluOptions() const {
12437 return builtin_options_type() == tflite::BuiltinOptions_LeakyReluOptions ? static_cast<const tflite::LeakyReluOptions *>(builtin_options()) : nullptr;
12438 }
12439 const tflite::SquaredDifferenceOptions *builtin_options_as_SquaredDifferenceOptions() const {
12440 return builtin_options_type() == tflite::BuiltinOptions_SquaredDifferenceOptions ? static_cast<const tflite::SquaredDifferenceOptions *>(builtin_options()) : nullptr;
12441 }
12442 const tflite::MirrorPadOptions *builtin_options_as_MirrorPadOptions() const {
12443 return builtin_options_type() == tflite::BuiltinOptions_MirrorPadOptions ? static_cast<const tflite::MirrorPadOptions *>(builtin_options()) : nullptr;
12444 }
12445 const tflite::AbsOptions *builtin_options_as_AbsOptions() const {
12446 return builtin_options_type() == tflite::BuiltinOptions_AbsOptions ? static_cast<const tflite::AbsOptions *>(builtin_options()) : nullptr;
12447 }
12448 const tflite::SplitVOptions *builtin_options_as_SplitVOptions() const {
12449 return builtin_options_type() == tflite::BuiltinOptions_SplitVOptions ? static_cast<const tflite::SplitVOptions *>(builtin_options()) : nullptr;
12450 }
12451 const tflite::UniqueOptions *builtin_options_as_UniqueOptions() const {
12452 return builtin_options_type() == tflite::BuiltinOptions_UniqueOptions ? static_cast<const tflite::UniqueOptions *>(builtin_options()) : nullptr;
12453 }
12454 const tflite::ReverseV2Options *builtin_options_as_ReverseV2Options() const {
12455 return builtin_options_type() == tflite::BuiltinOptions_ReverseV2Options ? static_cast<const tflite::ReverseV2Options *>(builtin_options()) : nullptr;
12456 }
12457 const tflite::AddNOptions *builtin_options_as_AddNOptions() const {
12458 return builtin_options_type() == tflite::BuiltinOptions_AddNOptions ? static_cast<const tflite::AddNOptions *>(builtin_options()) : nullptr;
12459 }
12460 const tflite::GatherNdOptions *builtin_options_as_GatherNdOptions() const {
12461 return builtin_options_type() == tflite::BuiltinOptions_GatherNdOptions ? static_cast<const tflite::GatherNdOptions *>(builtin_options()) : nullptr;
12462 }
12463 const tflite::CosOptions *builtin_options_as_CosOptions() const {
12464 return builtin_options_type() == tflite::BuiltinOptions_CosOptions ? static_cast<const tflite::CosOptions *>(builtin_options()) : nullptr;
12465 }
12466 const tflite::WhereOptions *builtin_options_as_WhereOptions() const {
12467 return builtin_options_type() == tflite::BuiltinOptions_WhereOptions ? static_cast<const tflite::WhereOptions *>(builtin_options()) : nullptr;
12468 }
12469 const tflite::RankOptions *builtin_options_as_RankOptions() const {
12470 return builtin_options_type() == tflite::BuiltinOptions_RankOptions ? static_cast<const tflite::RankOptions *>(builtin_options()) : nullptr;
12471 }
12472 const tflite::ReverseSequenceOptions *builtin_options_as_ReverseSequenceOptions() const {
12473 return builtin_options_type() == tflite::BuiltinOptions_ReverseSequenceOptions ? static_cast<const tflite::ReverseSequenceOptions *>(builtin_options()) : nullptr;
12474 }
12475 const tflite::MatrixDiagOptions *builtin_options_as_MatrixDiagOptions() const {
12476 return builtin_options_type() == tflite::BuiltinOptions_MatrixDiagOptions ? static_cast<const tflite::MatrixDiagOptions *>(builtin_options()) : nullptr;
12477 }
12478 const tflite::QuantizeOptions *builtin_options_as_QuantizeOptions() const {
12479 return builtin_options_type() == tflite::BuiltinOptions_QuantizeOptions ? static_cast<const tflite::QuantizeOptions *>(builtin_options()) : nullptr;
12480 }
12481 const tflite::MatrixSetDiagOptions *builtin_options_as_MatrixSetDiagOptions() const {
12482 return builtin_options_type() == tflite::BuiltinOptions_MatrixSetDiagOptions ? static_cast<const tflite::MatrixSetDiagOptions *>(builtin_options()) : nullptr;
12483 }
12484 const tflite::HardSwishOptions *builtin_options_as_HardSwishOptions() const {
12485 return builtin_options_type() == tflite::BuiltinOptions_HardSwishOptions ? static_cast<const tflite::HardSwishOptions *>(builtin_options()) : nullptr;
12486 }
12487 const tflite::IfOptions *builtin_options_as_IfOptions() const {
12488 return builtin_options_type() == tflite::BuiltinOptions_IfOptions ? static_cast<const tflite::IfOptions *>(builtin_options()) : nullptr;
12489 }
12490 const tflite::WhileOptions *builtin_options_as_WhileOptions() const {
12491 return builtin_options_type() == tflite::BuiltinOptions_WhileOptions ? static_cast<const tflite::WhileOptions *>(builtin_options()) : nullptr;
12492 }
12493 const tflite::DepthToSpaceOptions *builtin_options_as_DepthToSpaceOptions() const {
12494 return builtin_options_type() == tflite::BuiltinOptions_DepthToSpaceOptions ? static_cast<const tflite::DepthToSpaceOptions *>(builtin_options()) : nullptr;
12495 }
12496 const tflite::NonMaxSuppressionV4Options *builtin_options_as_NonMaxSuppressionV4Options() const {
12497 return builtin_options_type() == tflite::BuiltinOptions_NonMaxSuppressionV4Options ? static_cast<const tflite::NonMaxSuppressionV4Options *>(builtin_options()) : nullptr;
12498 }
12499 const tflite::NonMaxSuppressionV5Options *builtin_options_as_NonMaxSuppressionV5Options() const {
12500 return builtin_options_type() == tflite::BuiltinOptions_NonMaxSuppressionV5Options ? static_cast<const tflite::NonMaxSuppressionV5Options *>(builtin_options()) : nullptr;
12501 }
12502 const tflite::ScatterNdOptions *builtin_options_as_ScatterNdOptions() const {
12503 return builtin_options_type() == tflite::BuiltinOptions_ScatterNdOptions ? static_cast<const tflite::ScatterNdOptions *>(builtin_options()) : nullptr;
12504 }
12505 const tflite::SelectV2Options *builtin_options_as_SelectV2Options() const {
12506 return builtin_options_type() == tflite::BuiltinOptions_SelectV2Options ? static_cast<const tflite::SelectV2Options *>(builtin_options()) : nullptr;
12507 }
12508 const tflite::DensifyOptions *builtin_options_as_DensifyOptions() const {
12509 return builtin_options_type() == tflite::BuiltinOptions_DensifyOptions ? static_cast<const tflite::DensifyOptions *>(builtin_options()) : nullptr;
12510 }
12511 const tflite::SegmentSumOptions *builtin_options_as_SegmentSumOptions() const {
12512 return builtin_options_type() == tflite::BuiltinOptions_SegmentSumOptions ? static_cast<const tflite::SegmentSumOptions *>(builtin_options()) : nullptr;
12513 }
12514 const tflite::BatchMatMulOptions *builtin_options_as_BatchMatMulOptions() const {
12515 return builtin_options_type() == tflite::BuiltinOptions_BatchMatMulOptions ? static_cast<const tflite::BatchMatMulOptions *>(builtin_options()) : nullptr;
12516 }
12517 const tflite::CumsumOptions *builtin_options_as_CumsumOptions() const {
12518 return builtin_options_type() == tflite::BuiltinOptions_CumsumOptions ? static_cast<const tflite::CumsumOptions *>(builtin_options()) : nullptr;
12519 }
12520 const tflite::CallOnceOptions *builtin_options_as_CallOnceOptions() const {
12521 return builtin_options_type() == tflite::BuiltinOptions_CallOnceOptions ? static_cast<const tflite::CallOnceOptions *>(builtin_options()) : nullptr;
12522 }
12523 const tflite::BroadcastToOptions *builtin_options_as_BroadcastToOptions() const {
12524 return builtin_options_type() == tflite::BuiltinOptions_BroadcastToOptions ? static_cast<const tflite::BroadcastToOptions *>(builtin_options()) : nullptr;
12525 }
12526 const tflite::Rfft2dOptions *builtin_options_as_Rfft2dOptions() const {
12527 return builtin_options_type() == tflite::BuiltinOptions_Rfft2dOptions ? static_cast<const tflite::Rfft2dOptions *>(builtin_options()) : nullptr;
12528 }
12529 const tflite::Conv3DOptions *builtin_options_as_Conv3DOptions() const {
12530 return builtin_options_type() == tflite::BuiltinOptions_Conv3DOptions ? static_cast<const tflite::Conv3DOptions *>(builtin_options()) : nullptr;
12531 }
12532 const tflite::HashtableOptions *builtin_options_as_HashtableOptions() const {
12533 return builtin_options_type() == tflite::BuiltinOptions_HashtableOptions ? static_cast<const tflite::HashtableOptions *>(builtin_options()) : nullptr;
12534 }
12535 const tflite::HashtableFindOptions *builtin_options_as_HashtableFindOptions() const {
12536 return builtin_options_type() == tflite::BuiltinOptions_HashtableFindOptions ? static_cast<const tflite::HashtableFindOptions *>(builtin_options()) : nullptr;
12537 }
12538 const tflite::HashtableImportOptions *builtin_options_as_HashtableImportOptions() const {
12539 return builtin_options_type() == tflite::BuiltinOptions_HashtableImportOptions ? static_cast<const tflite::HashtableImportOptions *>(builtin_options()) : nullptr;
12540 }
12541 const tflite::HashtableSizeOptions *builtin_options_as_HashtableSizeOptions() const {
12542 return builtin_options_type() == tflite::BuiltinOptions_HashtableSizeOptions ? static_cast<const tflite::HashtableSizeOptions *>(builtin_options()) : nullptr;
12543 }
12544 const tflite::VarHandleOptions *builtin_options_as_VarHandleOptions() const {
12545 return builtin_options_type() == tflite::BuiltinOptions_VarHandleOptions ? static_cast<const tflite::VarHandleOptions *>(builtin_options()) : nullptr;
12546 }
12547 const tflite::ReadVariableOptions *builtin_options_as_ReadVariableOptions() const {
12548 return builtin_options_type() == tflite::BuiltinOptions_ReadVariableOptions ? static_cast<const tflite::ReadVariableOptions *>(builtin_options()) : nullptr;
12549 }
12550 const tflite::AssignVariableOptions *builtin_options_as_AssignVariableOptions() const {
12551 return builtin_options_type() == tflite::BuiltinOptions_AssignVariableOptions ? static_cast<const tflite::AssignVariableOptions *>(builtin_options()) : nullptr;
12552 }
12553 const tflite::RandomOptions *builtin_options_as_RandomOptions() const {
12554 return builtin_options_type() == tflite::BuiltinOptions_RandomOptions ? static_cast<const tflite::RandomOptions *>(builtin_options()) : nullptr;
12555 }
12556 const tflite::BucketizeOptions *builtin_options_as_BucketizeOptions() const {
12557 return builtin_options_type() == tflite::BuiltinOptions_BucketizeOptions ? static_cast<const tflite::BucketizeOptions *>(builtin_options()) : nullptr;
12558 }
12559 const tflite::GeluOptions *builtin_options_as_GeluOptions() const {
12560 return builtin_options_type() == tflite::BuiltinOptions_GeluOptions ? static_cast<const tflite::GeluOptions *>(builtin_options()) : nullptr;
12561 }
12562 const tflite::DynamicUpdateSliceOptions *builtin_options_as_DynamicUpdateSliceOptions() const {
12563 return builtin_options_type() == tflite::BuiltinOptions_DynamicUpdateSliceOptions ? static_cast<const tflite::DynamicUpdateSliceOptions *>(builtin_options()) : nullptr;
12564 }
12565 const tflite::UnsortedSegmentProdOptions *builtin_options_as_UnsortedSegmentProdOptions() const {
12566 return builtin_options_type() == tflite::BuiltinOptions_UnsortedSegmentProdOptions ? static_cast<const tflite::UnsortedSegmentProdOptions *>(builtin_options()) : nullptr;
12567 }
12568 const tflite::UnsortedSegmentMaxOptions *builtin_options_as_UnsortedSegmentMaxOptions() const {
12569 return builtin_options_type() == tflite::BuiltinOptions_UnsortedSegmentMaxOptions ? static_cast<const tflite::UnsortedSegmentMaxOptions *>(builtin_options()) : nullptr;
12570 }
12571 const tflite::UnsortedSegmentMinOptions *builtin_options_as_UnsortedSegmentMinOptions() const {
12572 return builtin_options_type() == tflite::BuiltinOptions_UnsortedSegmentMinOptions ? static_cast<const tflite::UnsortedSegmentMinOptions *>(builtin_options()) : nullptr;
12573 }
12574 const tflite::UnsortedSegmentSumOptions *builtin_options_as_UnsortedSegmentSumOptions() const {
12575 return builtin_options_type() == tflite::BuiltinOptions_UnsortedSegmentSumOptions ? static_cast<const tflite::UnsortedSegmentSumOptions *>(builtin_options()) : nullptr;
12576 }
12577 const tflite::ATan2Options *builtin_options_as_ATan2Options() const {
12578 return builtin_options_type() == tflite::BuiltinOptions_ATan2Options ? static_cast<const tflite::ATan2Options *>(builtin_options()) : nullptr;
12579 }
12580 const tflite::SignOptions *builtin_options_as_SignOptions() const {
12581 return builtin_options_type() == tflite::BuiltinOptions_SignOptions ? static_cast<const tflite::SignOptions *>(builtin_options()) : nullptr;
12582 }
12583 void *mutable_builtin_options() {
12584 return GetPointer<void *>(VT_BUILTIN_OPTIONS);
12585 }
12586 const flatbuffers::Vector<uint8_t> *custom_options() const {
12587 return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_CUSTOM_OPTIONS);
12588 }
12589 flatbuffers::Vector<uint8_t> *mutable_custom_options() {
12590 return GetPointer<flatbuffers::Vector<uint8_t> *>(VT_CUSTOM_OPTIONS);
12591 }
12592 tflite::CustomOptionsFormat custom_options_format() const {
12593 return static_cast<tflite::CustomOptionsFormat>(GetField<int8_t>(VT_CUSTOM_OPTIONS_FORMAT, 0));
12594 }
12595 bool mutate_custom_options_format(tflite::CustomOptionsFormat _custom_options_format = static_cast<tflite::CustomOptionsFormat>(0)) {
12596 return SetField<int8_t>(VT_CUSTOM_OPTIONS_FORMAT, static_cast<int8_t>(_custom_options_format), 0);
12597 }
12598 const flatbuffers::Vector<uint8_t> *mutating_variable_inputs() const {
12599 return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_MUTATING_VARIABLE_INPUTS);
12600 }
12601 flatbuffers::Vector<uint8_t> *mutable_mutating_variable_inputs() {
12602 return GetPointer<flatbuffers::Vector<uint8_t> *>(VT_MUTATING_VARIABLE_INPUTS);
12603 }
12604 const flatbuffers::Vector<int32_t> *intermediates() const {
12605 return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_INTERMEDIATES);
12606 }
12607 flatbuffers::Vector<int32_t> *mutable_intermediates() {
12608 return GetPointer<flatbuffers::Vector<int32_t> *>(VT_INTERMEDIATES);
12609 }
12610 bool Verify(flatbuffers::Verifier &verifier) const {
12611 return VerifyTableStart(verifier) &&
12612 VerifyField<uint32_t>(verifier, VT_OPCODE_INDEX, 4) &&
12613 VerifyOffset(verifier, VT_INPUTS) &&
12614 verifier.VerifyVector(inputs()) &&
12615 VerifyOffset(verifier, VT_OUTPUTS) &&
12616 verifier.VerifyVector(outputs()) &&
12617 VerifyField<uint8_t>(verifier, VT_BUILTIN_OPTIONS_TYPE, 1) &&
12618 VerifyOffset(verifier, VT_BUILTIN_OPTIONS) &&
12619 VerifyBuiltinOptions(verifier, builtin_options(), builtin_options_type()) &&
12620 VerifyOffset(verifier, VT_CUSTOM_OPTIONS) &&
12621 verifier.VerifyVector(custom_options()) &&
12622 VerifyField<int8_t>(verifier, VT_CUSTOM_OPTIONS_FORMAT, 1) &&
12623 VerifyOffset(verifier, VT_MUTATING_VARIABLE_INPUTS) &&
12624 verifier.VerifyVector(mutating_variable_inputs()) &&
12625 VerifyOffset(verifier, VT_INTERMEDIATES) &&
12626 verifier.VerifyVector(intermediates()) &&
12627 verifier.EndTable();
12628 }
12629 OperatorT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
12630 void UnPackTo(OperatorT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
12631 static flatbuffers::Offset<Operator> Pack(flatbuffers::FlatBufferBuilder &_fbb, const OperatorT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
12632 };
12633
12634 template<> inline const tflite::Conv2DOptions *Operator::builtin_options_as<tflite::Conv2DOptions>() const {
12635 return builtin_options_as_Conv2DOptions();
12636 }
12637
12638 template<> inline const tflite::DepthwiseConv2DOptions *Operator::builtin_options_as<tflite::DepthwiseConv2DOptions>() const {
12639 return builtin_options_as_DepthwiseConv2DOptions();
12640 }
12641
12642 template<> inline const tflite::ConcatEmbeddingsOptions *Operator::builtin_options_as<tflite::ConcatEmbeddingsOptions>() const {
12643 return builtin_options_as_ConcatEmbeddingsOptions();
12644 }
12645
12646 template<> inline const tflite::LSHProjectionOptions *Operator::builtin_options_as<tflite::LSHProjectionOptions>() const {
12647 return builtin_options_as_LSHProjectionOptions();
12648 }
12649
12650 template<> inline const tflite::Pool2DOptions *Operator::builtin_options_as<tflite::Pool2DOptions>() const {
12651 return builtin_options_as_Pool2DOptions();
12652 }
12653
12654 template<> inline const tflite::SVDFOptions *Operator::builtin_options_as<tflite::SVDFOptions>() const {
12655 return builtin_options_as_SVDFOptions();
12656 }
12657
12658 template<> inline const tflite::RNNOptions *Operator::builtin_options_as<tflite::RNNOptions>() const {
12659 return builtin_options_as_RNNOptions();
12660 }
12661
12662 template<> inline const tflite::FullyConnectedOptions *Operator::builtin_options_as<tflite::FullyConnectedOptions>() const {
12663 return builtin_options_as_FullyConnectedOptions();
12664 }
12665
12666 template<> inline const tflite::SoftmaxOptions *Operator::builtin_options_as<tflite::SoftmaxOptions>() const {
12667 return builtin_options_as_SoftmaxOptions();
12668 }
12669
12670 template<> inline const tflite::ConcatenationOptions *Operator::builtin_options_as<tflite::ConcatenationOptions>() const {
12671 return builtin_options_as_ConcatenationOptions();
12672 }
12673
12674 template<> inline const tflite::AddOptions *Operator::builtin_options_as<tflite::AddOptions>() const {
12675 return builtin_options_as_AddOptions();
12676 }
12677
12678 template<> inline const tflite::L2NormOptions *Operator::builtin_options_as<tflite::L2NormOptions>() const {
12679 return builtin_options_as_L2NormOptions();
12680 }
12681
12682 template<> inline const tflite::LocalResponseNormalizationOptions *Operator::builtin_options_as<tflite::LocalResponseNormalizationOptions>() const {
12683 return builtin_options_as_LocalResponseNormalizationOptions();
12684 }
12685
12686 template<> inline const tflite::LSTMOptions *Operator::builtin_options_as<tflite::LSTMOptions>() const {
12687 return builtin_options_as_LSTMOptions();
12688 }
12689
12690 template<> inline const tflite::ResizeBilinearOptions *Operator::builtin_options_as<tflite::ResizeBilinearOptions>() const {
12691 return builtin_options_as_ResizeBilinearOptions();
12692 }
12693
12694 template<> inline const tflite::CallOptions *Operator::builtin_options_as<tflite::CallOptions>() const {
12695 return builtin_options_as_CallOptions();
12696 }
12697
12698 template<> inline const tflite::ReshapeOptions *Operator::builtin_options_as<tflite::ReshapeOptions>() const {
12699 return builtin_options_as_ReshapeOptions();
12700 }
12701
12702 template<> inline const tflite::SkipGramOptions *Operator::builtin_options_as<tflite::SkipGramOptions>() const {
12703 return builtin_options_as_SkipGramOptions();
12704 }
12705
12706 template<> inline const tflite::SpaceToDepthOptions *Operator::builtin_options_as<tflite::SpaceToDepthOptions>() const {
12707 return builtin_options_as_SpaceToDepthOptions();
12708 }
12709
12710 template<> inline const tflite::EmbeddingLookupSparseOptions *Operator::builtin_options_as<tflite::EmbeddingLookupSparseOptions>() const {
12711 return builtin_options_as_EmbeddingLookupSparseOptions();
12712 }
12713
12714 template<> inline const tflite::MulOptions *Operator::builtin_options_as<tflite::MulOptions>() const {
12715 return builtin_options_as_MulOptions();
12716 }
12717
12718 template<> inline const tflite::PadOptions *Operator::builtin_options_as<tflite::PadOptions>() const {
12719 return builtin_options_as_PadOptions();
12720 }
12721
12722 template<> inline const tflite::GatherOptions *Operator::builtin_options_as<tflite::GatherOptions>() const {
12723 return builtin_options_as_GatherOptions();
12724 }
12725
12726 template<> inline const tflite::BatchToSpaceNDOptions *Operator::builtin_options_as<tflite::BatchToSpaceNDOptions>() const {
12727 return builtin_options_as_BatchToSpaceNDOptions();
12728 }
12729
12730 template<> inline const tflite::SpaceToBatchNDOptions *Operator::builtin_options_as<tflite::SpaceToBatchNDOptions>() const {
12731 return builtin_options_as_SpaceToBatchNDOptions();
12732 }
12733
12734 template<> inline const tflite::TransposeOptions *Operator::builtin_options_as<tflite::TransposeOptions>() const {
12735 return builtin_options_as_TransposeOptions();
12736 }
12737
12738 template<> inline const tflite::ReducerOptions *Operator::builtin_options_as<tflite::ReducerOptions>() const {
12739 return builtin_options_as_ReducerOptions();
12740 }
12741
12742 template<> inline const tflite::SubOptions *Operator::builtin_options_as<tflite::SubOptions>() const {
12743 return builtin_options_as_SubOptions();
12744 }
12745
12746 template<> inline const tflite::DivOptions *Operator::builtin_options_as<tflite::DivOptions>() const {
12747 return builtin_options_as_DivOptions();
12748 }
12749
12750 template<> inline const tflite::SqueezeOptions *Operator::builtin_options_as<tflite::SqueezeOptions>() const {
12751 return builtin_options_as_SqueezeOptions();
12752 }
12753
12754 template<> inline const tflite::SequenceRNNOptions *Operator::builtin_options_as<tflite::SequenceRNNOptions>() const {
12755 return builtin_options_as_SequenceRNNOptions();
12756 }
12757
12758 template<> inline const tflite::StridedSliceOptions *Operator::builtin_options_as<tflite::StridedSliceOptions>() const {
12759 return builtin_options_as_StridedSliceOptions();
12760 }
12761
12762 template<> inline const tflite::ExpOptions *Operator::builtin_options_as<tflite::ExpOptions>() const {
12763 return builtin_options_as_ExpOptions();
12764 }
12765
12766 template<> inline const tflite::TopKV2Options *Operator::builtin_options_as<tflite::TopKV2Options>() const {
12767 return builtin_options_as_TopKV2Options();
12768 }
12769
12770 template<> inline const tflite::SplitOptions *Operator::builtin_options_as<tflite::SplitOptions>() const {
12771 return builtin_options_as_SplitOptions();
12772 }
12773
12774 template<> inline const tflite::LogSoftmaxOptions *Operator::builtin_options_as<tflite::LogSoftmaxOptions>() const {
12775 return builtin_options_as_LogSoftmaxOptions();
12776 }
12777
12778 template<> inline const tflite::CastOptions *Operator::builtin_options_as<tflite::CastOptions>() const {
12779 return builtin_options_as_CastOptions();
12780 }
12781
12782 template<> inline const tflite::DequantizeOptions *Operator::builtin_options_as<tflite::DequantizeOptions>() const {
12783 return builtin_options_as_DequantizeOptions();
12784 }
12785
12786 template<> inline const tflite::MaximumMinimumOptions *Operator::builtin_options_as<tflite::MaximumMinimumOptions>() const {
12787 return builtin_options_as_MaximumMinimumOptions();
12788 }
12789
12790 template<> inline const tflite::ArgMaxOptions *Operator::builtin_options_as<tflite::ArgMaxOptions>() const {
12791 return builtin_options_as_ArgMaxOptions();
12792 }
12793
12794 template<> inline const tflite::LessOptions *Operator::builtin_options_as<tflite::LessOptions>() const {
12795 return builtin_options_as_LessOptions();
12796 }
12797
12798 template<> inline const tflite::NegOptions *Operator::builtin_options_as<tflite::NegOptions>() const {
12799 return builtin_options_as_NegOptions();
12800 }
12801
12802 template<> inline const tflite::PadV2Options *Operator::builtin_options_as<tflite::PadV2Options>() const {
12803 return builtin_options_as_PadV2Options();
12804 }
12805
12806 template<> inline const tflite::GreaterOptions *Operator::builtin_options_as<tflite::GreaterOptions>() const {
12807 return builtin_options_as_GreaterOptions();
12808 }
12809
12810 template<> inline const tflite::GreaterEqualOptions *Operator::builtin_options_as<tflite::GreaterEqualOptions>() const {
12811 return builtin_options_as_GreaterEqualOptions();
12812 }
12813
12814 template<> inline const tflite::LessEqualOptions *Operator::builtin_options_as<tflite::LessEqualOptions>() const {
12815 return builtin_options_as_LessEqualOptions();
12816 }
12817
12818 template<> inline const tflite::SelectOptions *Operator::builtin_options_as<tflite::SelectOptions>() const {
12819 return builtin_options_as_SelectOptions();
12820 }
12821
12822 template<> inline const tflite::SliceOptions *Operator::builtin_options_as<tflite::SliceOptions>() const {
12823 return builtin_options_as_SliceOptions();
12824 }
12825
12826 template<> inline const tflite::TransposeConvOptions *Operator::builtin_options_as<tflite::TransposeConvOptions>() const {
12827 return builtin_options_as_TransposeConvOptions();
12828 }
12829
12830 template<> inline const tflite::SparseToDenseOptions *Operator::builtin_options_as<tflite::SparseToDenseOptions>() const {
12831 return builtin_options_as_SparseToDenseOptions();
12832 }
12833
12834 template<> inline const tflite::TileOptions *Operator::builtin_options_as<tflite::TileOptions>() const {
12835 return builtin_options_as_TileOptions();
12836 }
12837
12838 template<> inline const tflite::ExpandDimsOptions *Operator::builtin_options_as<tflite::ExpandDimsOptions>() const {
12839 return builtin_options_as_ExpandDimsOptions();
12840 }
12841
12842 template<> inline const tflite::EqualOptions *Operator::builtin_options_as<tflite::EqualOptions>() const {
12843 return builtin_options_as_EqualOptions();
12844 }
12845
12846 template<> inline const tflite::NotEqualOptions *Operator::builtin_options_as<tflite::NotEqualOptions>() const {
12847 return builtin_options_as_NotEqualOptions();
12848 }
12849
12850 template<> inline const tflite::ShapeOptions *Operator::builtin_options_as<tflite::ShapeOptions>() const {
12851 return builtin_options_as_ShapeOptions();
12852 }
12853
12854 template<> inline const tflite::PowOptions *Operator::builtin_options_as<tflite::PowOptions>() const {
12855 return builtin_options_as_PowOptions();
12856 }
12857
12858 template<> inline const tflite::ArgMinOptions *Operator::builtin_options_as<tflite::ArgMinOptions>() const {
12859 return builtin_options_as_ArgMinOptions();
12860 }
12861
12862 template<> inline const tflite::FakeQuantOptions *Operator::builtin_options_as<tflite::FakeQuantOptions>() const {
12863 return builtin_options_as_FakeQuantOptions();
12864 }
12865
12866 template<> inline const tflite::PackOptions *Operator::builtin_options_as<tflite::PackOptions>() const {
12867 return builtin_options_as_PackOptions();
12868 }
12869
12870 template<> inline const tflite::LogicalOrOptions *Operator::builtin_options_as<tflite::LogicalOrOptions>() const {
12871 return builtin_options_as_LogicalOrOptions();
12872 }
12873
12874 template<> inline const tflite::OneHotOptions *Operator::builtin_options_as<tflite::OneHotOptions>() const {
12875 return builtin_options_as_OneHotOptions();
12876 }
12877
12878 template<> inline const tflite::LogicalAndOptions *Operator::builtin_options_as<tflite::LogicalAndOptions>() const {
12879 return builtin_options_as_LogicalAndOptions();
12880 }
12881
12882 template<> inline const tflite::LogicalNotOptions *Operator::builtin_options_as<tflite::LogicalNotOptions>() const {
12883 return builtin_options_as_LogicalNotOptions();
12884 }
12885
12886 template<> inline const tflite::UnpackOptions *Operator::builtin_options_as<tflite::UnpackOptions>() const {
12887 return builtin_options_as_UnpackOptions();
12888 }
12889
12890 template<> inline const tflite::FloorDivOptions *Operator::builtin_options_as<tflite::FloorDivOptions>() const {
12891 return builtin_options_as_FloorDivOptions();
12892 }
12893
12894 template<> inline const tflite::SquareOptions *Operator::builtin_options_as<tflite::SquareOptions>() const {
12895 return builtin_options_as_SquareOptions();
12896 }
12897
12898 template<> inline const tflite::ZerosLikeOptions *Operator::builtin_options_as<tflite::ZerosLikeOptions>() const {
12899 return builtin_options_as_ZerosLikeOptions();
12900 }
12901
12902 template<> inline const tflite::FillOptions *Operator::builtin_options_as<tflite::FillOptions>() const {
12903 return builtin_options_as_FillOptions();
12904 }
12905
12906 template<> inline const tflite::BidirectionalSequenceLSTMOptions *Operator::builtin_options_as<tflite::BidirectionalSequenceLSTMOptions>() const {
12907 return builtin_options_as_BidirectionalSequenceLSTMOptions();
12908 }
12909
12910 template<> inline const tflite::BidirectionalSequenceRNNOptions *Operator::builtin_options_as<tflite::BidirectionalSequenceRNNOptions>() const {
12911 return builtin_options_as_BidirectionalSequenceRNNOptions();
12912 }
12913
12914 template<> inline const tflite::UnidirectionalSequenceLSTMOptions *Operator::builtin_options_as<tflite::UnidirectionalSequenceLSTMOptions>() const {
12915 return builtin_options_as_UnidirectionalSequenceLSTMOptions();
12916 }
12917
12918 template<> inline const tflite::FloorModOptions *Operator::builtin_options_as<tflite::FloorModOptions>() const {
12919 return builtin_options_as_FloorModOptions();
12920 }
12921
12922 template<> inline const tflite::RangeOptions *Operator::builtin_options_as<tflite::RangeOptions>() const {
12923 return builtin_options_as_RangeOptions();
12924 }
12925
12926 template<> inline const tflite::ResizeNearestNeighborOptions *Operator::builtin_options_as<tflite::ResizeNearestNeighborOptions>() const {
12927 return builtin_options_as_ResizeNearestNeighborOptions();
12928 }
12929
12930 template<> inline const tflite::LeakyReluOptions *Operator::builtin_options_as<tflite::LeakyReluOptions>() const {
12931 return builtin_options_as_LeakyReluOptions();
12932 }
12933
12934 template<> inline const tflite::SquaredDifferenceOptions *Operator::builtin_options_as<tflite::SquaredDifferenceOptions>() const {
12935 return builtin_options_as_SquaredDifferenceOptions();
12936 }
12937
12938 template<> inline const tflite::MirrorPadOptions *Operator::builtin_options_as<tflite::MirrorPadOptions>() const {
12939 return builtin_options_as_MirrorPadOptions();
12940 }
12941
12942 template<> inline const tflite::AbsOptions *Operator::builtin_options_as<tflite::AbsOptions>() const {
12943 return builtin_options_as_AbsOptions();
12944 }
12945
12946 template<> inline const tflite::SplitVOptions *Operator::builtin_options_as<tflite::SplitVOptions>() const {
12947 return builtin_options_as_SplitVOptions();
12948 }
12949
12950 template<> inline const tflite::UniqueOptions *Operator::builtin_options_as<tflite::UniqueOptions>() const {
12951 return builtin_options_as_UniqueOptions();
12952 }
12953
12954 template<> inline const tflite::ReverseV2Options *Operator::builtin_options_as<tflite::ReverseV2Options>() const {
12955 return builtin_options_as_ReverseV2Options();
12956 }
12957
12958 template<> inline const tflite::AddNOptions *Operator::builtin_options_as<tflite::AddNOptions>() const {
12959 return builtin_options_as_AddNOptions();
12960 }
12961
12962 template<> inline const tflite::GatherNdOptions *Operator::builtin_options_as<tflite::GatherNdOptions>() const {
12963 return builtin_options_as_GatherNdOptions();
12964 }
12965
12966 template<> inline const tflite::CosOptions *Operator::builtin_options_as<tflite::CosOptions>() const {
12967 return builtin_options_as_CosOptions();
12968 }
12969
12970 template<> inline const tflite::WhereOptions *Operator::builtin_options_as<tflite::WhereOptions>() const {
12971 return builtin_options_as_WhereOptions();
12972 }
12973
12974 template<> inline const tflite::RankOptions *Operator::builtin_options_as<tflite::RankOptions>() const {
12975 return builtin_options_as_RankOptions();
12976 }
12977
12978 template<> inline const tflite::ReverseSequenceOptions *Operator::builtin_options_as<tflite::ReverseSequenceOptions>() const {
12979 return builtin_options_as_ReverseSequenceOptions();
12980 }
12981
12982 template<> inline const tflite::MatrixDiagOptions *Operator::builtin_options_as<tflite::MatrixDiagOptions>() const {
12983 return builtin_options_as_MatrixDiagOptions();
12984 }
12985
12986 template<> inline const tflite::QuantizeOptions *Operator::builtin_options_as<tflite::QuantizeOptions>() const {
12987 return builtin_options_as_QuantizeOptions();
12988 }
12989
12990 template<> inline const tflite::MatrixSetDiagOptions *Operator::builtin_options_as<tflite::MatrixSetDiagOptions>() const {
12991 return builtin_options_as_MatrixSetDiagOptions();
12992 }
12993
12994 template<> inline const tflite::HardSwishOptions *Operator::builtin_options_as<tflite::HardSwishOptions>() const {
12995 return builtin_options_as_HardSwishOptions();
12996 }
12997
12998 template<> inline const tflite::IfOptions *Operator::builtin_options_as<tflite::IfOptions>() const {
12999 return builtin_options_as_IfOptions();
13000 }
13001
13002 template<> inline const tflite::WhileOptions *Operator::builtin_options_as<tflite::WhileOptions>() const {
13003 return builtin_options_as_WhileOptions();
13004 }
13005
13006 template<> inline const tflite::DepthToSpaceOptions *Operator::builtin_options_as<tflite::DepthToSpaceOptions>() const {
13007 return builtin_options_as_DepthToSpaceOptions();
13008 }
13009
13010 template<> inline const tflite::NonMaxSuppressionV4Options *Operator::builtin_options_as<tflite::NonMaxSuppressionV4Options>() const {
13011 return builtin_options_as_NonMaxSuppressionV4Options();
13012 }
13013
13014 template<> inline const tflite::NonMaxSuppressionV5Options *Operator::builtin_options_as<tflite::NonMaxSuppressionV5Options>() const {
13015 return builtin_options_as_NonMaxSuppressionV5Options();
13016 }
13017
13018 template<> inline const tflite::ScatterNdOptions *Operator::builtin_options_as<tflite::ScatterNdOptions>() const {
13019 return builtin_options_as_ScatterNdOptions();
13020 }
13021
13022 template<> inline const tflite::SelectV2Options *Operator::builtin_options_as<tflite::SelectV2Options>() const {
13023 return builtin_options_as_SelectV2Options();
13024 }
13025
13026 template<> inline const tflite::DensifyOptions *Operator::builtin_options_as<tflite::DensifyOptions>() const {
13027 return builtin_options_as_DensifyOptions();
13028 }
13029
13030 template<> inline const tflite::SegmentSumOptions *Operator::builtin_options_as<tflite::SegmentSumOptions>() const {
13031 return builtin_options_as_SegmentSumOptions();
13032 }
13033
13034 template<> inline const tflite::BatchMatMulOptions *Operator::builtin_options_as<tflite::BatchMatMulOptions>() const {
13035 return builtin_options_as_BatchMatMulOptions();
13036 }
13037
13038 template<> inline const tflite::CumsumOptions *Operator::builtin_options_as<tflite::CumsumOptions>() const {
13039 return builtin_options_as_CumsumOptions();
13040 }
13041
13042 template<> inline const tflite::CallOnceOptions *Operator::builtin_options_as<tflite::CallOnceOptions>() const {
13043 return builtin_options_as_CallOnceOptions();
13044 }
13045
13046 template<> inline const tflite::BroadcastToOptions *Operator::builtin_options_as<tflite::BroadcastToOptions>() const {
13047 return builtin_options_as_BroadcastToOptions();
13048 }
13049
13050 template<> inline const tflite::Rfft2dOptions *Operator::builtin_options_as<tflite::Rfft2dOptions>() const {
13051 return builtin_options_as_Rfft2dOptions();
13052 }
13053
13054 template<> inline const tflite::Conv3DOptions *Operator::builtin_options_as<tflite::Conv3DOptions>() const {
13055 return builtin_options_as_Conv3DOptions();
13056 }
13057
13058 template<> inline const tflite::HashtableOptions *Operator::builtin_options_as<tflite::HashtableOptions>() const {
13059 return builtin_options_as_HashtableOptions();
13060 }
13061
13062 template<> inline const tflite::HashtableFindOptions *Operator::builtin_options_as<tflite::HashtableFindOptions>() const {
13063 return builtin_options_as_HashtableFindOptions();
13064 }
13065
13066 template<> inline const tflite::HashtableImportOptions *Operator::builtin_options_as<tflite::HashtableImportOptions>() const {
13067 return builtin_options_as_HashtableImportOptions();
13068 }
13069
13070 template<> inline const tflite::HashtableSizeOptions *Operator::builtin_options_as<tflite::HashtableSizeOptions>() const {
13071 return builtin_options_as_HashtableSizeOptions();
13072 }
13073
13074 template<> inline const tflite::VarHandleOptions *Operator::builtin_options_as<tflite::VarHandleOptions>() const {
13075 return builtin_options_as_VarHandleOptions();
13076 }
13077
13078 template<> inline const tflite::ReadVariableOptions *Operator::builtin_options_as<tflite::ReadVariableOptions>() const {
13079 return builtin_options_as_ReadVariableOptions();
13080 }
13081
13082 template<> inline const tflite::AssignVariableOptions *Operator::builtin_options_as<tflite::AssignVariableOptions>() const {
13083 return builtin_options_as_AssignVariableOptions();
13084 }
13085
13086 template<> inline const tflite::RandomOptions *Operator::builtin_options_as<tflite::RandomOptions>() const {
13087 return builtin_options_as_RandomOptions();
13088 }
13089
13090 template<> inline const tflite::BucketizeOptions *Operator::builtin_options_as<tflite::BucketizeOptions>() const {
13091 return builtin_options_as_BucketizeOptions();
13092 }
13093
13094 template<> inline const tflite::GeluOptions *Operator::builtin_options_as<tflite::GeluOptions>() const {
13095 return builtin_options_as_GeluOptions();
13096 }
13097
13098 template<> inline const tflite::DynamicUpdateSliceOptions *Operator::builtin_options_as<tflite::DynamicUpdateSliceOptions>() const {
13099 return builtin_options_as_DynamicUpdateSliceOptions();
13100 }
13101
13102 template<> inline const tflite::UnsortedSegmentProdOptions *Operator::builtin_options_as<tflite::UnsortedSegmentProdOptions>() const {
13103 return builtin_options_as_UnsortedSegmentProdOptions();
13104 }
13105
13106 template<> inline const tflite::UnsortedSegmentMaxOptions *Operator::builtin_options_as<tflite::UnsortedSegmentMaxOptions>() const {
13107 return builtin_options_as_UnsortedSegmentMaxOptions();
13108 }
13109
13110 template<> inline const tflite::UnsortedSegmentMinOptions *Operator::builtin_options_as<tflite::UnsortedSegmentMinOptions>() const {
13111 return builtin_options_as_UnsortedSegmentMinOptions();
13112 }
13113
13114 template<> inline const tflite::UnsortedSegmentSumOptions *Operator::builtin_options_as<tflite::UnsortedSegmentSumOptions>() const {
13115 return builtin_options_as_UnsortedSegmentSumOptions();
13116 }
13117
13118 template<> inline const tflite::ATan2Options *Operator::builtin_options_as<tflite::ATan2Options>() const {
13119 return builtin_options_as_ATan2Options();
13120 }
13121
13122 template<> inline const tflite::SignOptions *Operator::builtin_options_as<tflite::SignOptions>() const {
13123 return builtin_options_as_SignOptions();
13124 }
13125
13126 struct OperatorBuilder {
13127 typedef Operator Table;
13128 flatbuffers::FlatBufferBuilder &fbb_;
13129 flatbuffers::uoffset_t start_;
13130 void add_opcode_index(uint32_t opcode_index) {
13131 fbb_.AddElement<uint32_t>(Operator::VT_OPCODE_INDEX, opcode_index, 0);
13132 }
13133 void add_inputs(flatbuffers::Offset<flatbuffers::Vector<int32_t>> inputs) {
13134 fbb_.AddOffset(Operator::VT_INPUTS, inputs);
13135 }
13136 void add_outputs(flatbuffers::Offset<flatbuffers::Vector<int32_t>> outputs) {
13137 fbb_.AddOffset(Operator::VT_OUTPUTS, outputs);
13138 }
13139 void add_builtin_options_type(tflite::BuiltinOptions builtin_options_type) {
13140 fbb_.AddElement<uint8_t>(Operator::VT_BUILTIN_OPTIONS_TYPE, static_cast<uint8_t>(builtin_options_type), 0);
13141 }
13142 void add_builtin_options(flatbuffers::Offset<void> builtin_options) {
13143 fbb_.AddOffset(Operator::VT_BUILTIN_OPTIONS, builtin_options);
13144 }
13145 void add_custom_options(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> custom_options) {
13146 fbb_.AddOffset(Operator::VT_CUSTOM_OPTIONS, custom_options);
13147 }
13148 void add_custom_options_format(tflite::CustomOptionsFormat custom_options_format) {
13149 fbb_.AddElement<int8_t>(Operator::VT_CUSTOM_OPTIONS_FORMAT, static_cast<int8_t>(custom_options_format), 0);
13150 }
13151 void add_mutating_variable_inputs(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> mutating_variable_inputs) {
13152 fbb_.AddOffset(Operator::VT_MUTATING_VARIABLE_INPUTS, mutating_variable_inputs);
13153 }
13154 void add_intermediates(flatbuffers::Offset<flatbuffers::Vector<int32_t>> intermediates) {
13155 fbb_.AddOffset(Operator::VT_INTERMEDIATES, intermediates);
13156 }
13157 explicit OperatorBuilder(flatbuffers::FlatBufferBuilder &_fbb)
13158 : fbb_(_fbb) {
13159 start_ = fbb_.StartTable();
13160 }
13161 flatbuffers::Offset<Operator> Finish() {
13162 const auto end = fbb_.EndTable(start_);
13163 auto o = flatbuffers::Offset<Operator>(end);
13164 return o;
13165 }
13166 };
13167
13168 inline flatbuffers::Offset<Operator> CreateOperator(
13169 flatbuffers::FlatBufferBuilder &_fbb,
13170 uint32_t opcode_index = 0,
13171 flatbuffers::Offset<flatbuffers::Vector<int32_t>> inputs = 0,
13172 flatbuffers::Offset<flatbuffers::Vector<int32_t>> outputs = 0,
13173 tflite::BuiltinOptions builtin_options_type = tflite::BuiltinOptions_NONE,
13174 flatbuffers::Offset<void> builtin_options = 0,
13175 flatbuffers::Offset<flatbuffers::Vector<uint8_t>> custom_options = 0,
13176 tflite::CustomOptionsFormat custom_options_format = tflite::CustomOptionsFormat_FLEXBUFFERS,
13177 flatbuffers::Offset<flatbuffers::Vector<uint8_t>> mutating_variable_inputs = 0,
13178 flatbuffers::Offset<flatbuffers::Vector<int32_t>> intermediates = 0) {
13179 OperatorBuilder builder_(_fbb);
13180 builder_.add_intermediates(intermediates);
13181 builder_.add_mutating_variable_inputs(mutating_variable_inputs);
13182 builder_.add_custom_options(custom_options);
13183 builder_.add_builtin_options(builtin_options);
13184 builder_.add_outputs(outputs);
13185 builder_.add_inputs(inputs);
13186 builder_.add_opcode_index(opcode_index);
13187 builder_.add_custom_options_format(custom_options_format);
13188 builder_.add_builtin_options_type(builtin_options_type);
13189 return builder_.Finish();
13190 }
13191
13192 inline flatbuffers::Offset<Operator> CreateOperatorDirect(
13193 flatbuffers::FlatBufferBuilder &_fbb,
13194 uint32_t opcode_index = 0,
13195 const std::vector<int32_t> *inputs = nullptr,
13196 const std::vector<int32_t> *outputs = nullptr,
13197 tflite::BuiltinOptions builtin_options_type = tflite::BuiltinOptions_NONE,
13198 flatbuffers::Offset<void> builtin_options = 0,
13199 const std::vector<uint8_t> *custom_options = nullptr,
13200 tflite::CustomOptionsFormat custom_options_format = tflite::CustomOptionsFormat_FLEXBUFFERS,
13201 const std::vector<uint8_t> *mutating_variable_inputs = nullptr,
13202 const std::vector<int32_t> *intermediates = nullptr) {
13203 auto inputs__ = inputs ? _fbb.CreateVector<int32_t>(*inputs) : 0;
13204 auto outputs__ = outputs ? _fbb.CreateVector<int32_t>(*outputs) : 0;
13205 auto custom_options__ = custom_options ? _fbb.CreateVector<uint8_t>(*custom_options) : 0;
13206 auto mutating_variable_inputs__ = mutating_variable_inputs ? _fbb.CreateVector<uint8_t>(*mutating_variable_inputs) : 0;
13207 auto intermediates__ = intermediates ? _fbb.CreateVector<int32_t>(*intermediates) : 0;
13208 return tflite::CreateOperator(
13209 _fbb,
13210 opcode_index,
13211 inputs__,
13212 outputs__,
13213 builtin_options_type,
13214 builtin_options,
13215 custom_options__,
13216 custom_options_format,
13217 mutating_variable_inputs__,
13218 intermediates__);
13219 }
13220
13221 flatbuffers::Offset<Operator> CreateOperator(flatbuffers::FlatBufferBuilder &_fbb, const OperatorT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
13222
13223 struct SubGraphT : public flatbuffers::NativeTable {
13224 typedef SubGraph TableType;
13225 std::vector<std::unique_ptr<tflite::TensorT>> tensors{};
13226 std::vector<int32_t> inputs{};
13227 std::vector<int32_t> outputs{};
13228 std::vector<std::unique_ptr<tflite::OperatorT>> operators{};
13229 std::string name{};
13230 SubGraphT() = default;
13231 SubGraphT(const SubGraphT &o);
13232 SubGraphT(SubGraphT&&) FLATBUFFERS_NOEXCEPT = default;
13233 SubGraphT &operator=(SubGraphT o) FLATBUFFERS_NOEXCEPT;
13234 };
13235
13236 struct SubGraph FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
13237 typedef SubGraphT NativeTableType;
13238 typedef SubGraphBuilder Builder;
13239 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
13240 VT_TENSORS = 4,
13241 VT_INPUTS = 6,
13242 VT_OUTPUTS = 8,
13243 VT_OPERATORS = 10,
13244 VT_NAME = 12
13245 };
13246 const flatbuffers::Vector<flatbuffers::Offset<tflite::Tensor>> *tensors() const {
13247 return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::Tensor>> *>(VT_TENSORS);
13248 }
13249 flatbuffers::Vector<flatbuffers::Offset<tflite::Tensor>> *mutable_tensors() {
13250 return GetPointer<flatbuffers::Vector<flatbuffers::Offset<tflite::Tensor>> *>(VT_TENSORS);
13251 }
13252 const flatbuffers::Vector<int32_t> *inputs() const {
13253 return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_INPUTS);
13254 }
13255 flatbuffers::Vector<int32_t> *mutable_inputs() {
13256 return GetPointer<flatbuffers::Vector<int32_t> *>(VT_INPUTS);
13257 }
13258 const flatbuffers::Vector<int32_t> *outputs() const {
13259 return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_OUTPUTS);
13260 }
13261 flatbuffers::Vector<int32_t> *mutable_outputs() {
13262 return GetPointer<flatbuffers::Vector<int32_t> *>(VT_OUTPUTS);
13263 }
13264 const flatbuffers::Vector<flatbuffers::Offset<tflite::Operator>> *operators() const {
13265 return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::Operator>> *>(VT_OPERATORS);
13266 }
13267 flatbuffers::Vector<flatbuffers::Offset<tflite::Operator>> *mutable_operators() {
13268 return GetPointer<flatbuffers::Vector<flatbuffers::Offset<tflite::Operator>> *>(VT_OPERATORS);
13269 }
13270 const flatbuffers::String *name() const {
13271 return GetPointer<const flatbuffers::String *>(VT_NAME);
13272 }
13273 flatbuffers::String *mutable_name() {
13274 return GetPointer<flatbuffers::String *>(VT_NAME);
13275 }
13276 bool Verify(flatbuffers::Verifier &verifier) const {
13277 return VerifyTableStart(verifier) &&
13278 VerifyOffset(verifier, VT_TENSORS) &&
13279 verifier.VerifyVector(tensors()) &&
13280 verifier.VerifyVectorOfTables(tensors()) &&
13281 VerifyOffset(verifier, VT_INPUTS) &&
13282 verifier.VerifyVector(inputs()) &&
13283 VerifyOffset(verifier, VT_OUTPUTS) &&
13284 verifier.VerifyVector(outputs()) &&
13285 VerifyOffset(verifier, VT_OPERATORS) &&
13286 verifier.VerifyVector(operators()) &&
13287 verifier.VerifyVectorOfTables(operators()) &&
13288 VerifyOffset(verifier, VT_NAME) &&
13289 verifier.VerifyString(name()) &&
13290 verifier.EndTable();
13291 }
13292 SubGraphT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
13293 void UnPackTo(SubGraphT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
13294 static flatbuffers::Offset<SubGraph> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SubGraphT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
13295 };
13296
13297 struct SubGraphBuilder {
13298 typedef SubGraph Table;
13299 flatbuffers::FlatBufferBuilder &fbb_;
13300 flatbuffers::uoffset_t start_;
13301 void add_tensors(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Tensor>>> tensors) {
13302 fbb_.AddOffset(SubGraph::VT_TENSORS, tensors);
13303 }
13304 void add_inputs(flatbuffers::Offset<flatbuffers::Vector<int32_t>> inputs) {
13305 fbb_.AddOffset(SubGraph::VT_INPUTS, inputs);
13306 }
13307 void add_outputs(flatbuffers::Offset<flatbuffers::Vector<int32_t>> outputs) {
13308 fbb_.AddOffset(SubGraph::VT_OUTPUTS, outputs);
13309 }
13310 void add_operators(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Operator>>> operators) {
13311 fbb_.AddOffset(SubGraph::VT_OPERATORS, operators);
13312 }
13313 void add_name(flatbuffers::Offset<flatbuffers::String> name) {
13314 fbb_.AddOffset(SubGraph::VT_NAME, name);
13315 }
13316 explicit SubGraphBuilder(flatbuffers::FlatBufferBuilder &_fbb)
13317 : fbb_(_fbb) {
13318 start_ = fbb_.StartTable();
13319 }
13320 flatbuffers::Offset<SubGraph> Finish() {
13321 const auto end = fbb_.EndTable(start_);
13322 auto o = flatbuffers::Offset<SubGraph>(end);
13323 return o;
13324 }
13325 };
13326
13327 inline flatbuffers::Offset<SubGraph> CreateSubGraph(
13328 flatbuffers::FlatBufferBuilder &_fbb,
13329 flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Tensor>>> tensors = 0,
13330 flatbuffers::Offset<flatbuffers::Vector<int32_t>> inputs = 0,
13331 flatbuffers::Offset<flatbuffers::Vector<int32_t>> outputs = 0,
13332 flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Operator>>> operators = 0,
13333 flatbuffers::Offset<flatbuffers::String> name = 0) {
13334 SubGraphBuilder builder_(_fbb);
13335 builder_.add_name(name);
13336 builder_.add_operators(operators);
13337 builder_.add_outputs(outputs);
13338 builder_.add_inputs(inputs);
13339 builder_.add_tensors(tensors);
13340 return builder_.Finish();
13341 }
13342
13343 inline flatbuffers::Offset<SubGraph> CreateSubGraphDirect(
13344 flatbuffers::FlatBufferBuilder &_fbb,
13345 const std::vector<flatbuffers::Offset<tflite::Tensor>> *tensors = nullptr,
13346 const std::vector<int32_t> *inputs = nullptr,
13347 const std::vector<int32_t> *outputs = nullptr,
13348 const std::vector<flatbuffers::Offset<tflite::Operator>> *operators = nullptr,
13349 const char *name = nullptr) {
13350 auto tensors__ = tensors ? _fbb.CreateVector<flatbuffers::Offset<tflite::Tensor>>(*tensors) : 0;
13351 auto inputs__ = inputs ? _fbb.CreateVector<int32_t>(*inputs) : 0;
13352 auto outputs__ = outputs ? _fbb.CreateVector<int32_t>(*outputs) : 0;
13353 auto operators__ = operators ? _fbb.CreateVector<flatbuffers::Offset<tflite::Operator>>(*operators) : 0;
13354 auto name__ = name ? _fbb.CreateString(name) : 0;
13355 return tflite::CreateSubGraph(
13356 _fbb,
13357 tensors__,
13358 inputs__,
13359 outputs__,
13360 operators__,
13361 name__);
13362 }
13363
13364 flatbuffers::Offset<SubGraph> CreateSubGraph(flatbuffers::FlatBufferBuilder &_fbb, const SubGraphT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
13365
13366 struct BufferT : public flatbuffers::NativeTable {
13367 typedef Buffer TableType;
13368 std::vector<uint8_t> data{};
13369 };
13370
13371 struct Buffer FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
13372 typedef BufferT NativeTableType;
13373 typedef BufferBuilder Builder;
13374 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
13375 VT_DATA = 4
13376 };
13377 const flatbuffers::Vector<uint8_t> *data() const {
13378 return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_DATA);
13379 }
13380 flatbuffers::Vector<uint8_t> *mutable_data() {
13381 return GetPointer<flatbuffers::Vector<uint8_t> *>(VT_DATA);
13382 }
13383 bool Verify(flatbuffers::Verifier &verifier) const {
13384 return VerifyTableStart(verifier) &&
13385 VerifyOffset(verifier, VT_DATA) &&
13386 verifier.VerifyVector(data()) &&
13387 verifier.EndTable();
13388 }
13389 BufferT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
13390 void UnPackTo(BufferT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
13391 static flatbuffers::Offset<Buffer> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BufferT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
13392 };
13393
13394 struct BufferBuilder {
13395 typedef Buffer Table;
13396 flatbuffers::FlatBufferBuilder &fbb_;
13397 flatbuffers::uoffset_t start_;
13398 void add_data(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> data) {
13399 fbb_.AddOffset(Buffer::VT_DATA, data);
13400 }
13401 explicit BufferBuilder(flatbuffers::FlatBufferBuilder &_fbb)
13402 : fbb_(_fbb) {
13403 start_ = fbb_.StartTable();
13404 }
13405 flatbuffers::Offset<Buffer> Finish() {
13406 const auto end = fbb_.EndTable(start_);
13407 auto o = flatbuffers::Offset<Buffer>(end);
13408 return o;
13409 }
13410 };
13411
13412 inline flatbuffers::Offset<Buffer> CreateBuffer(
13413 flatbuffers::FlatBufferBuilder &_fbb,
13414 flatbuffers::Offset<flatbuffers::Vector<uint8_t>> data = 0) {
13415 BufferBuilder builder_(_fbb);
13416 builder_.add_data(data);
13417 return builder_.Finish();
13418 }
13419
13420 inline flatbuffers::Offset<Buffer> CreateBufferDirect(
13421 flatbuffers::FlatBufferBuilder &_fbb,
13422 const std::vector<uint8_t> *data = nullptr) {
13423 if (data) { _fbb.ForceVectorAlignment(data->size(), sizeof(uint8_t), 16); }
13424 auto data__ = data ? _fbb.CreateVector<uint8_t>(*data) : 0;
13425 return tflite::CreateBuffer(
13426 _fbb,
13427 data__);
13428 }
13429
13430 flatbuffers::Offset<Buffer> CreateBuffer(flatbuffers::FlatBufferBuilder &_fbb, const BufferT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
13431
13432 struct MetadataT : public flatbuffers::NativeTable {
13433 typedef Metadata TableType;
13434 std::string name{};
13435 uint32_t buffer = 0;
13436 };
13437
13438 struct Metadata FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
13439 typedef MetadataT NativeTableType;
13440 typedef MetadataBuilder Builder;
13441 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
13442 VT_NAME = 4,
13443 VT_BUFFER = 6
13444 };
13445 const flatbuffers::String *name() const {
13446 return GetPointer<const flatbuffers::String *>(VT_NAME);
13447 }
13448 flatbuffers::String *mutable_name() {
13449 return GetPointer<flatbuffers::String *>(VT_NAME);
13450 }
13451 uint32_t buffer() const {
13452 return GetField<uint32_t>(VT_BUFFER, 0);
13453 }
13454 bool mutate_buffer(uint32_t _buffer = 0) {
13455 return SetField<uint32_t>(VT_BUFFER, _buffer, 0);
13456 }
13457 bool Verify(flatbuffers::Verifier &verifier) const {
13458 return VerifyTableStart(verifier) &&
13459 VerifyOffset(verifier, VT_NAME) &&
13460 verifier.VerifyString(name()) &&
13461 VerifyField<uint32_t>(verifier, VT_BUFFER, 4) &&
13462 verifier.EndTable();
13463 }
13464 MetadataT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
13465 void UnPackTo(MetadataT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
13466 static flatbuffers::Offset<Metadata> Pack(flatbuffers::FlatBufferBuilder &_fbb, const MetadataT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
13467 };
13468
13469 struct MetadataBuilder {
13470 typedef Metadata Table;
13471 flatbuffers::FlatBufferBuilder &fbb_;
13472 flatbuffers::uoffset_t start_;
13473 void add_name(flatbuffers::Offset<flatbuffers::String> name) {
13474 fbb_.AddOffset(Metadata::VT_NAME, name);
13475 }
13476 void add_buffer(uint32_t buffer) {
13477 fbb_.AddElement<uint32_t>(Metadata::VT_BUFFER, buffer, 0);
13478 }
13479 explicit MetadataBuilder(flatbuffers::FlatBufferBuilder &_fbb)
13480 : fbb_(_fbb) {
13481 start_ = fbb_.StartTable();
13482 }
13483 flatbuffers::Offset<Metadata> Finish() {
13484 const auto end = fbb_.EndTable(start_);
13485 auto o = flatbuffers::Offset<Metadata>(end);
13486 return o;
13487 }
13488 };
13489
13490 inline flatbuffers::Offset<Metadata> CreateMetadata(
13491 flatbuffers::FlatBufferBuilder &_fbb,
13492 flatbuffers::Offset<flatbuffers::String> name = 0,
13493 uint32_t buffer = 0) {
13494 MetadataBuilder builder_(_fbb);
13495 builder_.add_buffer(buffer);
13496 builder_.add_name(name);
13497 return builder_.Finish();
13498 }
13499
13500 inline flatbuffers::Offset<Metadata> CreateMetadataDirect(
13501 flatbuffers::FlatBufferBuilder &_fbb,
13502 const char *name = nullptr,
13503 uint32_t buffer = 0) {
13504 auto name__ = name ? _fbb.CreateString(name) : 0;
13505 return tflite::CreateMetadata(
13506 _fbb,
13507 name__,
13508 buffer);
13509 }
13510
13511 flatbuffers::Offset<Metadata> CreateMetadata(flatbuffers::FlatBufferBuilder &_fbb, const MetadataT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
13512
13513 struct TensorMapT : public flatbuffers::NativeTable {
13514 typedef TensorMap TableType;
13515 std::string name{};
13516 uint32_t tensor_index = 0;
13517 };
13518
13519 struct TensorMap FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
13520 typedef TensorMapT NativeTableType;
13521 typedef TensorMapBuilder Builder;
13522 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
13523 VT_NAME = 4,
13524 VT_TENSOR_INDEX = 6
13525 };
13526 const flatbuffers::String *name() const {
13527 return GetPointer<const flatbuffers::String *>(VT_NAME);
13528 }
13529 flatbuffers::String *mutable_name() {
13530 return GetPointer<flatbuffers::String *>(VT_NAME);
13531 }
13532 uint32_t tensor_index() const {
13533 return GetField<uint32_t>(VT_TENSOR_INDEX, 0);
13534 }
13535 bool mutate_tensor_index(uint32_t _tensor_index = 0) {
13536 return SetField<uint32_t>(VT_TENSOR_INDEX, _tensor_index, 0);
13537 }
13538 bool Verify(flatbuffers::Verifier &verifier) const {
13539 return VerifyTableStart(verifier) &&
13540 VerifyOffset(verifier, VT_NAME) &&
13541 verifier.VerifyString(name()) &&
13542 VerifyField<uint32_t>(verifier, VT_TENSOR_INDEX, 4) &&
13543 verifier.EndTable();
13544 }
13545 TensorMapT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
13546 void UnPackTo(TensorMapT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
13547 static flatbuffers::Offset<TensorMap> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TensorMapT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
13548 };
13549
13550 struct TensorMapBuilder {
13551 typedef TensorMap Table;
13552 flatbuffers::FlatBufferBuilder &fbb_;
13553 flatbuffers::uoffset_t start_;
13554 void add_name(flatbuffers::Offset<flatbuffers::String> name) {
13555 fbb_.AddOffset(TensorMap::VT_NAME, name);
13556 }
13557 void add_tensor_index(uint32_t tensor_index) {
13558 fbb_.AddElement<uint32_t>(TensorMap::VT_TENSOR_INDEX, tensor_index, 0);
13559 }
13560 explicit TensorMapBuilder(flatbuffers::FlatBufferBuilder &_fbb)
13561 : fbb_(_fbb) {
13562 start_ = fbb_.StartTable();
13563 }
13564 flatbuffers::Offset<TensorMap> Finish() {
13565 const auto end = fbb_.EndTable(start_);
13566 auto o = flatbuffers::Offset<TensorMap>(end);
13567 return o;
13568 }
13569 };
13570
13571 inline flatbuffers::Offset<TensorMap> CreateTensorMap(
13572 flatbuffers::FlatBufferBuilder &_fbb,
13573 flatbuffers::Offset<flatbuffers::String> name = 0,
13574 uint32_t tensor_index = 0) {
13575 TensorMapBuilder builder_(_fbb);
13576 builder_.add_tensor_index(tensor_index);
13577 builder_.add_name(name);
13578 return builder_.Finish();
13579 }
13580
13581 inline flatbuffers::Offset<TensorMap> CreateTensorMapDirect(
13582 flatbuffers::FlatBufferBuilder &_fbb,
13583 const char *name = nullptr,
13584 uint32_t tensor_index = 0) {
13585 auto name__ = name ? _fbb.CreateString(name) : 0;
13586 return tflite::CreateTensorMap(
13587 _fbb,
13588 name__,
13589 tensor_index);
13590 }
13591
13592 flatbuffers::Offset<TensorMap> CreateTensorMap(flatbuffers::FlatBufferBuilder &_fbb, const TensorMapT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
13593
13594 struct SignatureDefT : public flatbuffers::NativeTable {
13595 typedef SignatureDef TableType;
13596 std::vector<std::unique_ptr<tflite::TensorMapT>> inputs{};
13597 std::vector<std::unique_ptr<tflite::TensorMapT>> outputs{};
13598 std::string signature_key{};
13599 uint32_t subgraph_index = 0;
13600 SignatureDefT() = default;
13601 SignatureDefT(const SignatureDefT &o);
13602 SignatureDefT(SignatureDefT&&) FLATBUFFERS_NOEXCEPT = default;
13603 SignatureDefT &operator=(SignatureDefT o) FLATBUFFERS_NOEXCEPT;
13604 };
13605
13606 struct SignatureDef FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
13607 typedef SignatureDefT NativeTableType;
13608 typedef SignatureDefBuilder Builder;
13609 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
13610 VT_INPUTS = 4,
13611 VT_OUTPUTS = 6,
13612 VT_SIGNATURE_KEY = 8,
13613 VT_SUBGRAPH_INDEX = 12
13614 };
13615 const flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>> *inputs() const {
13616 return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>> *>(VT_INPUTS);
13617 }
13618 flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>> *mutable_inputs() {
13619 return GetPointer<flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>> *>(VT_INPUTS);
13620 }
13621 const flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>> *outputs() const {
13622 return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>> *>(VT_OUTPUTS);
13623 }
13624 flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>> *mutable_outputs() {
13625 return GetPointer<flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>> *>(VT_OUTPUTS);
13626 }
13627 const flatbuffers::String *signature_key() const {
13628 return GetPointer<const flatbuffers::String *>(VT_SIGNATURE_KEY);
13629 }
13630 flatbuffers::String *mutable_signature_key() {
13631 return GetPointer<flatbuffers::String *>(VT_SIGNATURE_KEY);
13632 }
13633 uint32_t subgraph_index() const {
13634 return GetField<uint32_t>(VT_SUBGRAPH_INDEX, 0);
13635 }
13636 bool mutate_subgraph_index(uint32_t _subgraph_index = 0) {
13637 return SetField<uint32_t>(VT_SUBGRAPH_INDEX, _subgraph_index, 0);
13638 }
13639 bool Verify(flatbuffers::Verifier &verifier) const {
13640 return VerifyTableStart(verifier) &&
13641 VerifyOffset(verifier, VT_INPUTS) &&
13642 verifier.VerifyVector(inputs()) &&
13643 verifier.VerifyVectorOfTables(inputs()) &&
13644 VerifyOffset(verifier, VT_OUTPUTS) &&
13645 verifier.VerifyVector(outputs()) &&
13646 verifier.VerifyVectorOfTables(outputs()) &&
13647 VerifyOffset(verifier, VT_SIGNATURE_KEY) &&
13648 verifier.VerifyString(signature_key()) &&
13649 VerifyField<uint32_t>(verifier, VT_SUBGRAPH_INDEX, 4) &&
13650 verifier.EndTable();
13651 }
13652 SignatureDefT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
13653 void UnPackTo(SignatureDefT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
13654 static flatbuffers::Offset<SignatureDef> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SignatureDefT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
13655 };
13656
13657 struct SignatureDefBuilder {
13658 typedef SignatureDef Table;
13659 flatbuffers::FlatBufferBuilder &fbb_;
13660 flatbuffers::uoffset_t start_;
13661 void add_inputs(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>>> inputs) {
13662 fbb_.AddOffset(SignatureDef::VT_INPUTS, inputs);
13663 }
13664 void add_outputs(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>>> outputs) {
13665 fbb_.AddOffset(SignatureDef::VT_OUTPUTS, outputs);
13666 }
13667 void add_signature_key(flatbuffers::Offset<flatbuffers::String> signature_key) {
13668 fbb_.AddOffset(SignatureDef::VT_SIGNATURE_KEY, signature_key);
13669 }
13670 void add_subgraph_index(uint32_t subgraph_index) {
13671 fbb_.AddElement<uint32_t>(SignatureDef::VT_SUBGRAPH_INDEX, subgraph_index, 0);
13672 }
13673 explicit SignatureDefBuilder(flatbuffers::FlatBufferBuilder &_fbb)
13674 : fbb_(_fbb) {
13675 start_ = fbb_.StartTable();
13676 }
13677 flatbuffers::Offset<SignatureDef> Finish() {
13678 const auto end = fbb_.EndTable(start_);
13679 auto o = flatbuffers::Offset<SignatureDef>(end);
13680 return o;
13681 }
13682 };
13683
13684 inline flatbuffers::Offset<SignatureDef> CreateSignatureDef(
13685 flatbuffers::FlatBufferBuilder &_fbb,
13686 flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>>> inputs = 0,
13687 flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>>> outputs = 0,
13688 flatbuffers::Offset<flatbuffers::String> signature_key = 0,
13689 uint32_t subgraph_index = 0) {
13690 SignatureDefBuilder builder_(_fbb);
13691 builder_.add_subgraph_index(subgraph_index);
13692 builder_.add_signature_key(signature_key);
13693 builder_.add_outputs(outputs);
13694 builder_.add_inputs(inputs);
13695 return builder_.Finish();
13696 }
13697
13698 inline flatbuffers::Offset<SignatureDef> CreateSignatureDefDirect(
13699 flatbuffers::FlatBufferBuilder &_fbb,
13700 const std::vector<flatbuffers::Offset<tflite::TensorMap>> *inputs = nullptr,
13701 const std::vector<flatbuffers::Offset<tflite::TensorMap>> *outputs = nullptr,
13702 const char *signature_key = nullptr,
13703 uint32_t subgraph_index = 0) {
13704 auto inputs__ = inputs ? _fbb.CreateVector<flatbuffers::Offset<tflite::TensorMap>>(*inputs) : 0;
13705 auto outputs__ = outputs ? _fbb.CreateVector<flatbuffers::Offset<tflite::TensorMap>>(*outputs) : 0;
13706 auto signature_key__ = signature_key ? _fbb.CreateString(signature_key) : 0;
13707 return tflite::CreateSignatureDef(
13708 _fbb,
13709 inputs__,
13710 outputs__,
13711 signature_key__,
13712 subgraph_index);
13713 }
13714
13715 flatbuffers::Offset<SignatureDef> CreateSignatureDef(flatbuffers::FlatBufferBuilder &_fbb, const SignatureDefT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
13716
13717 struct ModelT : public flatbuffers::NativeTable {
13718 typedef Model TableType;
13719 uint32_t version = 0;
13720 std::vector<std::unique_ptr<tflite::OperatorCodeT>> operator_codes{};
13721 std::vector<std::unique_ptr<tflite::SubGraphT>> subgraphs{};
13722 std::string description{};
13723 std::vector<std::unique_ptr<tflite::BufferT>> buffers{};
13724 std::vector<int32_t> metadata_buffer{};
13725 std::vector<std::unique_ptr<tflite::MetadataT>> metadata{};
13726 std::vector<std::unique_ptr<tflite::SignatureDefT>> signature_defs{};
13727 ModelT() = default;
13728 ModelT(const ModelT &o);
13729 ModelT(ModelT&&) FLATBUFFERS_NOEXCEPT = default;
13730 ModelT &operator=(ModelT o) FLATBUFFERS_NOEXCEPT;
13731 };
13732
13733 struct Model FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
13734 typedef ModelT NativeTableType;
13735 typedef ModelBuilder Builder;
13736 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
13737 VT_VERSION = 4,
13738 VT_OPERATOR_CODES = 6,
13739 VT_SUBGRAPHS = 8,
13740 VT_DESCRIPTION = 10,
13741 VT_BUFFERS = 12,
13742 VT_METADATA_BUFFER = 14,
13743 VT_METADATA = 16,
13744 VT_SIGNATURE_DEFS = 18
13745 };
13746 uint32_t version() const {
13747 return GetField<uint32_t>(VT_VERSION, 0);
13748 }
13749 bool mutate_version(uint32_t _version = 0) {
13750 return SetField<uint32_t>(VT_VERSION, _version, 0);
13751 }
13752 const flatbuffers::Vector<flatbuffers::Offset<tflite::OperatorCode>> *operator_codes() const {
13753 return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::OperatorCode>> *>(VT_OPERATOR_CODES);
13754 }
13755 flatbuffers::Vector<flatbuffers::Offset<tflite::OperatorCode>> *mutable_operator_codes() {
13756 return GetPointer<flatbuffers::Vector<flatbuffers::Offset<tflite::OperatorCode>> *>(VT_OPERATOR_CODES);
13757 }
13758 const flatbuffers::Vector<flatbuffers::Offset<tflite::SubGraph>> *subgraphs() const {
13759 return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::SubGraph>> *>(VT_SUBGRAPHS);
13760 }
13761 flatbuffers::Vector<flatbuffers::Offset<tflite::SubGraph>> *mutable_subgraphs() {
13762 return GetPointer<flatbuffers::Vector<flatbuffers::Offset<tflite::SubGraph>> *>(VT_SUBGRAPHS);
13763 }
13764 const flatbuffers::String *description() const {
13765 return GetPointer<const flatbuffers::String *>(VT_DESCRIPTION);
13766 }
13767 flatbuffers::String *mutable_description() {
13768 return GetPointer<flatbuffers::String *>(VT_DESCRIPTION);
13769 }
13770 const flatbuffers::Vector<flatbuffers::Offset<tflite::Buffer>> *buffers() const {
13771 return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::Buffer>> *>(VT_BUFFERS);
13772 }
13773 flatbuffers::Vector<flatbuffers::Offset<tflite::Buffer>> *mutable_buffers() {
13774 return GetPointer<flatbuffers::Vector<flatbuffers::Offset<tflite::Buffer>> *>(VT_BUFFERS);
13775 }
13776 const flatbuffers::Vector<int32_t> *metadata_buffer() const {
13777 return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_METADATA_BUFFER);
13778 }
13779 flatbuffers::Vector<int32_t> *mutable_metadata_buffer() {
13780 return GetPointer<flatbuffers::Vector<int32_t> *>(VT_METADATA_BUFFER);
13781 }
13782 const flatbuffers::Vector<flatbuffers::Offset<tflite::Metadata>> *metadata() const {
13783 return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::Metadata>> *>(VT_METADATA);
13784 }
13785 flatbuffers::Vector<flatbuffers::Offset<tflite::Metadata>> *mutable_metadata() {
13786 return GetPointer<flatbuffers::Vector<flatbuffers::Offset<tflite::Metadata>> *>(VT_METADATA);
13787 }
13788 const flatbuffers::Vector<flatbuffers::Offset<tflite::SignatureDef>> *signature_defs() const {
13789 return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::SignatureDef>> *>(VT_SIGNATURE_DEFS);
13790 }
13791 flatbuffers::Vector<flatbuffers::Offset<tflite::SignatureDef>> *mutable_signature_defs() {
13792 return GetPointer<flatbuffers::Vector<flatbuffers::Offset<tflite::SignatureDef>> *>(VT_SIGNATURE_DEFS);
13793 }
13794 bool Verify(flatbuffers::Verifier &verifier) const {
13795 return VerifyTableStart(verifier) &&
13796 VerifyField<uint32_t>(verifier, VT_VERSION, 4) &&
13797 VerifyOffset(verifier, VT_OPERATOR_CODES) &&
13798 verifier.VerifyVector(operator_codes()) &&
13799 verifier.VerifyVectorOfTables(operator_codes()) &&
13800 VerifyOffset(verifier, VT_SUBGRAPHS) &&
13801 verifier.VerifyVector(subgraphs()) &&
13802 verifier.VerifyVectorOfTables(subgraphs()) &&
13803 VerifyOffset(verifier, VT_DESCRIPTION) &&
13804 verifier.VerifyString(description()) &&
13805 VerifyOffset(verifier, VT_BUFFERS) &&
13806 verifier.VerifyVector(buffers()) &&
13807 verifier.VerifyVectorOfTables(buffers()) &&
13808 VerifyOffset(verifier, VT_METADATA_BUFFER) &&
13809 verifier.VerifyVector(metadata_buffer()) &&
13810 VerifyOffset(verifier, VT_METADATA) &&
13811 verifier.VerifyVector(metadata()) &&
13812 verifier.VerifyVectorOfTables(metadata()) &&
13813 VerifyOffset(verifier, VT_SIGNATURE_DEFS) &&
13814 verifier.VerifyVector(signature_defs()) &&
13815 verifier.VerifyVectorOfTables(signature_defs()) &&
13816 verifier.EndTable();
13817 }
13818 ModelT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
13819 void UnPackTo(ModelT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
13820 static flatbuffers::Offset<Model> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ModelT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
13821 };
13822
13823 struct ModelBuilder {
13824 typedef Model Table;
13825 flatbuffers::FlatBufferBuilder &fbb_;
13826 flatbuffers::uoffset_t start_;
13827 void add_version(uint32_t version) {
13828 fbb_.AddElement<uint32_t>(Model::VT_VERSION, version, 0);
13829 }
13830 void add_operator_codes(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::OperatorCode>>> operator_codes) {
13831 fbb_.AddOffset(Model::VT_OPERATOR_CODES, operator_codes);
13832 }
13833 void add_subgraphs(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::SubGraph>>> subgraphs) {
13834 fbb_.AddOffset(Model::VT_SUBGRAPHS, subgraphs);
13835 }
13836 void add_description(flatbuffers::Offset<flatbuffers::String> description) {
13837 fbb_.AddOffset(Model::VT_DESCRIPTION, description);
13838 }
13839 void add_buffers(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Buffer>>> buffers) {
13840 fbb_.AddOffset(Model::VT_BUFFERS, buffers);
13841 }
13842 void add_metadata_buffer(flatbuffers::Offset<flatbuffers::Vector<int32_t>> metadata_buffer) {
13843 fbb_.AddOffset(Model::VT_METADATA_BUFFER, metadata_buffer);
13844 }
13845 void add_metadata(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Metadata>>> metadata) {
13846 fbb_.AddOffset(Model::VT_METADATA, metadata);
13847 }
13848 void add_signature_defs(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::SignatureDef>>> signature_defs) {
13849 fbb_.AddOffset(Model::VT_SIGNATURE_DEFS, signature_defs);
13850 }
13851 explicit ModelBuilder(flatbuffers::FlatBufferBuilder &_fbb)
13852 : fbb_(_fbb) {
13853 start_ = fbb_.StartTable();
13854 }
13855 flatbuffers::Offset<Model> Finish() {
13856 const auto end = fbb_.EndTable(start_);
13857 auto o = flatbuffers::Offset<Model>(end);
13858 return o;
13859 }
13860 };
13861
13862 inline flatbuffers::Offset<Model> CreateModel(
13863 flatbuffers::FlatBufferBuilder &_fbb,
13864 uint32_t version = 0,
13865 flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::OperatorCode>>> operator_codes = 0,
13866 flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::SubGraph>>> subgraphs = 0,
13867 flatbuffers::Offset<flatbuffers::String> description = 0,
13868 flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Buffer>>> buffers = 0,
13869 flatbuffers::Offset<flatbuffers::Vector<int32_t>> metadata_buffer = 0,
13870 flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Metadata>>> metadata = 0,
13871 flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::SignatureDef>>> signature_defs = 0) {
13872 ModelBuilder builder_(_fbb);
13873 builder_.add_signature_defs(signature_defs);
13874 builder_.add_metadata(metadata);
13875 builder_.add_metadata_buffer(metadata_buffer);
13876 builder_.add_buffers(buffers);
13877 builder_.add_description(description);
13878 builder_.add_subgraphs(subgraphs);
13879 builder_.add_operator_codes(operator_codes);
13880 builder_.add_version(version);
13881 return builder_.Finish();
13882 }
13883
13884 inline flatbuffers::Offset<Model> CreateModelDirect(
13885 flatbuffers::FlatBufferBuilder &_fbb,
13886 uint32_t version = 0,
13887 const std::vector<flatbuffers::Offset<tflite::OperatorCode>> *operator_codes = nullptr,
13888 const std::vector<flatbuffers::Offset<tflite::SubGraph>> *subgraphs = nullptr,
13889 const char *description = nullptr,
13890 const std::vector<flatbuffers::Offset<tflite::Buffer>> *buffers = nullptr,
13891 const std::vector<int32_t> *metadata_buffer = nullptr,
13892 const std::vector<flatbuffers::Offset<tflite::Metadata>> *metadata = nullptr,
13893 const std::vector<flatbuffers::Offset<tflite::SignatureDef>> *signature_defs = nullptr) {
13894 auto operator_codes__ = operator_codes ? _fbb.CreateVector<flatbuffers::Offset<tflite::OperatorCode>>(*operator_codes) : 0;
13895 auto subgraphs__ = subgraphs ? _fbb.CreateVector<flatbuffers::Offset<tflite::SubGraph>>(*subgraphs) : 0;
13896 auto description__ = description ? _fbb.CreateString(description) : 0;
13897 auto buffers__ = buffers ? _fbb.CreateVector<flatbuffers::Offset<tflite::Buffer>>(*buffers) : 0;
13898 auto metadata_buffer__ = metadata_buffer ? _fbb.CreateVector<int32_t>(*metadata_buffer) : 0;
13899 auto metadata__ = metadata ? _fbb.CreateVector<flatbuffers::Offset<tflite::Metadata>>(*metadata) : 0;
13900 auto signature_defs__ = signature_defs ? _fbb.CreateVector<flatbuffers::Offset<tflite::SignatureDef>>(*signature_defs) : 0;
13901 return tflite::CreateModel(
13902 _fbb,
13903 version,
13904 operator_codes__,
13905 subgraphs__,
13906 description__,
13907 buffers__,
13908 metadata_buffer__,
13909 metadata__,
13910 signature_defs__);
13911 }
13912
13913 flatbuffers::Offset<Model> CreateModel(flatbuffers::FlatBufferBuilder &_fbb, const ModelT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
13914
13915 inline CustomQuantizationT *CustomQuantization::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
13916 auto _o = std::unique_ptr<CustomQuantizationT>(new CustomQuantizationT());
13917 UnPackTo(_o.get(), _resolver);
13918 return _o.release();
13919 }
13920
13921 inline void CustomQuantization::UnPackTo(CustomQuantizationT *_o, const flatbuffers::resolver_function_t *_resolver) const {
13922 (void)_o;
13923 (void)_resolver;
13924 { auto _e = custom(); if (_e) { _o->custom.resize(_e->size()); std::copy(_e->begin(), _e->end(), _o->custom.begin()); } }
13925 }
13926
13927 inline flatbuffers::Offset<CustomQuantization> CustomQuantization::Pack(flatbuffers::FlatBufferBuilder &_fbb, const CustomQuantizationT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
13928 return CreateCustomQuantization(_fbb, _o, _rehasher);
13929 }
13930
13931 inline flatbuffers::Offset<CustomQuantization> CreateCustomQuantization(flatbuffers::FlatBufferBuilder &_fbb, const CustomQuantizationT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
13932 (void)_rehasher;
13933 (void)_o;
13934 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const CustomQuantizationT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
13935 _fbb.ForceVectorAlignment(_o->custom.size(), sizeof(uint8_t), 16);
13936 auto _custom = _o->custom.size() ? _fbb.CreateVector(_o->custom) : 0;
13937 return tflite::CreateCustomQuantization(
13938 _fbb,
13939 _custom);
13940 }
13941
13942 inline QuantizationParametersT *QuantizationParameters::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
13943 auto _o = std::unique_ptr<QuantizationParametersT>(new QuantizationParametersT());
13944 UnPackTo(_o.get(), _resolver);
13945 return _o.release();
13946 }
13947
13948 inline void QuantizationParameters::UnPackTo(QuantizationParametersT *_o, const flatbuffers::resolver_function_t *_resolver) const {
13949 (void)_o;
13950 (void)_resolver;
13951 { auto _e = min(); if (_e) { _o->min.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->min[_i] = _e->Get(_i); } } }
13952 { auto _e = max(); if (_e) { _o->max.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->max[_i] = _e->Get(_i); } } }
13953 { auto _e = scale(); if (_e) { _o->scale.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->scale[_i] = _e->Get(_i); } } }
13954 { auto _e = zero_point(); if (_e) { _o->zero_point.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->zero_point[_i] = _e->Get(_i); } } }
13955 { auto _e = details_type(); _o->details.type = _e; }
13956 { auto _e = details(); if (_e) _o->details.value = tflite::QuantizationDetailsUnion::UnPack(_e, details_type(), _resolver); }
13957 { auto _e = quantized_dimension(); _o->quantized_dimension = _e; }
13958 }
13959
13960 inline flatbuffers::Offset<QuantizationParameters> QuantizationParameters::Pack(flatbuffers::FlatBufferBuilder &_fbb, const QuantizationParametersT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
13961 return CreateQuantizationParameters(_fbb, _o, _rehasher);
13962 }
13963
13964 inline flatbuffers::Offset<QuantizationParameters> CreateQuantizationParameters(flatbuffers::FlatBufferBuilder &_fbb, const QuantizationParametersT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
13965 (void)_rehasher;
13966 (void)_o;
13967 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const QuantizationParametersT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
13968 auto _min = _o->min.size() ? _fbb.CreateVector(_o->min) : 0;
13969 auto _max = _o->max.size() ? _fbb.CreateVector(_o->max) : 0;
13970 auto _scale = _o->scale.size() ? _fbb.CreateVector(_o->scale) : 0;
13971 auto _zero_point = _o->zero_point.size() ? _fbb.CreateVector(_o->zero_point) : 0;
13972 auto _details_type = _o->details.type;
13973 auto _details = _o->details.Pack(_fbb);
13974 auto _quantized_dimension = _o->quantized_dimension;
13975 return tflite::CreateQuantizationParameters(
13976 _fbb,
13977 _min,
13978 _max,
13979 _scale,
13980 _zero_point,
13981 _details_type,
13982 _details,
13983 _quantized_dimension);
13984 }
13985
13986 inline Int32VectorT *Int32Vector::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
13987 auto _o = std::unique_ptr<Int32VectorT>(new Int32VectorT());
13988 UnPackTo(_o.get(), _resolver);
13989 return _o.release();
13990 }
13991
13992 inline void Int32Vector::UnPackTo(Int32VectorT *_o, const flatbuffers::resolver_function_t *_resolver) const {
13993 (void)_o;
13994 (void)_resolver;
13995 { auto _e = values(); if (_e) { _o->values.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->values[_i] = _e->Get(_i); } } }
13996 }
13997
13998 inline flatbuffers::Offset<Int32Vector> Int32Vector::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Int32VectorT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
13999 return CreateInt32Vector(_fbb, _o, _rehasher);
14000 }
14001
14002 inline flatbuffers::Offset<Int32Vector> CreateInt32Vector(flatbuffers::FlatBufferBuilder &_fbb, const Int32VectorT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14003 (void)_rehasher;
14004 (void)_o;
14005 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Int32VectorT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14006 auto _values = _o->values.size() ? _fbb.CreateVector(_o->values) : 0;
14007 return tflite::CreateInt32Vector(
14008 _fbb,
14009 _values);
14010 }
14011
14012 inline Uint16VectorT *Uint16Vector::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14013 auto _o = std::unique_ptr<Uint16VectorT>(new Uint16VectorT());
14014 UnPackTo(_o.get(), _resolver);
14015 return _o.release();
14016 }
14017
14018 inline void Uint16Vector::UnPackTo(Uint16VectorT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14019 (void)_o;
14020 (void)_resolver;
14021 { auto _e = values(); if (_e) { _o->values.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->values[_i] = _e->Get(_i); } } }
14022 }
14023
14024 inline flatbuffers::Offset<Uint16Vector> Uint16Vector::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Uint16VectorT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14025 return CreateUint16Vector(_fbb, _o, _rehasher);
14026 }
14027
14028 inline flatbuffers::Offset<Uint16Vector> CreateUint16Vector(flatbuffers::FlatBufferBuilder &_fbb, const Uint16VectorT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14029 (void)_rehasher;
14030 (void)_o;
14031 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Uint16VectorT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14032 _fbb.ForceVectorAlignment(_o->values.size(), sizeof(uint16_t), 4);
14033 auto _values = _o->values.size() ? _fbb.CreateVector(_o->values) : 0;
14034 return tflite::CreateUint16Vector(
14035 _fbb,
14036 _values);
14037 }
14038
14039 inline Uint8VectorT *Uint8Vector::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14040 auto _o = std::unique_ptr<Uint8VectorT>(new Uint8VectorT());
14041 UnPackTo(_o.get(), _resolver);
14042 return _o.release();
14043 }
14044
14045 inline void Uint8Vector::UnPackTo(Uint8VectorT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14046 (void)_o;
14047 (void)_resolver;
14048 { auto _e = values(); if (_e) { _o->values.resize(_e->size()); std::copy(_e->begin(), _e->end(), _o->values.begin()); } }
14049 }
14050
14051 inline flatbuffers::Offset<Uint8Vector> Uint8Vector::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Uint8VectorT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14052 return CreateUint8Vector(_fbb, _o, _rehasher);
14053 }
14054
14055 inline flatbuffers::Offset<Uint8Vector> CreateUint8Vector(flatbuffers::FlatBufferBuilder &_fbb, const Uint8VectorT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14056 (void)_rehasher;
14057 (void)_o;
14058 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Uint8VectorT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14059 _fbb.ForceVectorAlignment(_o->values.size(), sizeof(uint8_t), 4);
14060 auto _values = _o->values.size() ? _fbb.CreateVector(_o->values) : 0;
14061 return tflite::CreateUint8Vector(
14062 _fbb,
14063 _values);
14064 }
14065
14066 inline DimensionMetadataT *DimensionMetadata::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14067 auto _o = std::unique_ptr<DimensionMetadataT>(new DimensionMetadataT());
14068 UnPackTo(_o.get(), _resolver);
14069 return _o.release();
14070 }
14071
14072 inline void DimensionMetadata::UnPackTo(DimensionMetadataT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14073 (void)_o;
14074 (void)_resolver;
14075 { auto _e = format(); _o->format = _e; }
14076 { auto _e = dense_size(); _o->dense_size = _e; }
14077 { auto _e = array_segments_type(); _o->array_segments.type = _e; }
14078 { auto _e = array_segments(); if (_e) _o->array_segments.value = tflite::SparseIndexVectorUnion::UnPack(_e, array_segments_type(), _resolver); }
14079 { auto _e = array_indices_type(); _o->array_indices.type = _e; }
14080 { auto _e = array_indices(); if (_e) _o->array_indices.value = tflite::SparseIndexVectorUnion::UnPack(_e, array_indices_type(), _resolver); }
14081 }
14082
14083 inline flatbuffers::Offset<DimensionMetadata> DimensionMetadata::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DimensionMetadataT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14084 return CreateDimensionMetadata(_fbb, _o, _rehasher);
14085 }
14086
14087 inline flatbuffers::Offset<DimensionMetadata> CreateDimensionMetadata(flatbuffers::FlatBufferBuilder &_fbb, const DimensionMetadataT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14088 (void)_rehasher;
14089 (void)_o;
14090 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DimensionMetadataT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14091 auto _format = _o->format;
14092 auto _dense_size = _o->dense_size;
14093 auto _array_segments_type = _o->array_segments.type;
14094 auto _array_segments = _o->array_segments.Pack(_fbb);
14095 auto _array_indices_type = _o->array_indices.type;
14096 auto _array_indices = _o->array_indices.Pack(_fbb);
14097 return tflite::CreateDimensionMetadata(
14098 _fbb,
14099 _format,
14100 _dense_size,
14101 _array_segments_type,
14102 _array_segments,
14103 _array_indices_type,
14104 _array_indices);
14105 }
14106
14107 inline SparsityParametersT::SparsityParametersT(const SparsityParametersT &o)
14108 : traversal_order(o.traversal_order),
14109 block_map(o.block_map) {
14110 dim_metadata.reserve(o.dim_metadata.size());
14111 for (const auto &dim_metadata_ : o.dim_metadata) { dim_metadata.emplace_back((dim_metadata_) ? new tflite::DimensionMetadataT(*dim_metadata_) : nullptr); }
14112 }
14113
14114 inline SparsityParametersT &SparsityParametersT::operator=(SparsityParametersT o) FLATBUFFERS_NOEXCEPT {
14115 std::swap(traversal_order, o.traversal_order);
14116 std::swap(block_map, o.block_map);
14117 std::swap(dim_metadata, o.dim_metadata);
14118 return *this;
14119 }
14120
14121 inline SparsityParametersT *SparsityParameters::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14122 auto _o = std::unique_ptr<SparsityParametersT>(new SparsityParametersT());
14123 UnPackTo(_o.get(), _resolver);
14124 return _o.release();
14125 }
14126
14127 inline void SparsityParameters::UnPackTo(SparsityParametersT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14128 (void)_o;
14129 (void)_resolver;
14130 { auto _e = traversal_order(); if (_e) { _o->traversal_order.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->traversal_order[_i] = _e->Get(_i); } } }
14131 { auto _e = block_map(); if (_e) { _o->block_map.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->block_map[_i] = _e->Get(_i); } } }
14132 { auto _e = dim_metadata(); if (_e) { _o->dim_metadata.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->dim_metadata[_i] = std::unique_ptr<tflite::DimensionMetadataT>(_e->Get(_i)->UnPack(_resolver)); } } }
14133 }
14134
14135 inline flatbuffers::Offset<SparsityParameters> SparsityParameters::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SparsityParametersT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14136 return CreateSparsityParameters(_fbb, _o, _rehasher);
14137 }
14138
14139 inline flatbuffers::Offset<SparsityParameters> CreateSparsityParameters(flatbuffers::FlatBufferBuilder &_fbb, const SparsityParametersT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14140 (void)_rehasher;
14141 (void)_o;
14142 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SparsityParametersT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14143 auto _traversal_order = _o->traversal_order.size() ? _fbb.CreateVector(_o->traversal_order) : 0;
14144 auto _block_map = _o->block_map.size() ? _fbb.CreateVector(_o->block_map) : 0;
14145 auto _dim_metadata = _o->dim_metadata.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::DimensionMetadata>> (_o->dim_metadata.size(), [](size_t i, _VectorArgs *__va) { return CreateDimensionMetadata(*__va->__fbb, __va->__o->dim_metadata[i].get(), __va->__rehasher); }, &_va ) : 0;
14146 return tflite::CreateSparsityParameters(
14147 _fbb,
14148 _traversal_order,
14149 _block_map,
14150 _dim_metadata);
14151 }
14152
14153 inline VariantSubTypeT *VariantSubType::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14154 auto _o = std::unique_ptr<VariantSubTypeT>(new VariantSubTypeT());
14155 UnPackTo(_o.get(), _resolver);
14156 return _o.release();
14157 }
14158
14159 inline void VariantSubType::UnPackTo(VariantSubTypeT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14160 (void)_o;
14161 (void)_resolver;
14162 { auto _e = shape(); if (_e) { _o->shape.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->shape[_i] = _e->Get(_i); } } }
14163 { auto _e = type(); _o->type = _e; }
14164 { auto _e = has_rank(); _o->has_rank = _e; }
14165 }
14166
14167 inline flatbuffers::Offset<VariantSubType> VariantSubType::Pack(flatbuffers::FlatBufferBuilder &_fbb, const VariantSubTypeT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14168 return CreateVariantSubType(_fbb, _o, _rehasher);
14169 }
14170
14171 inline flatbuffers::Offset<VariantSubType> CreateVariantSubType(flatbuffers::FlatBufferBuilder &_fbb, const VariantSubTypeT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14172 (void)_rehasher;
14173 (void)_o;
14174 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const VariantSubTypeT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14175 auto _shape = _o->shape.size() ? _fbb.CreateVector(_o->shape) : 0;
14176 auto _type = _o->type;
14177 auto _has_rank = _o->has_rank;
14178 return tflite::CreateVariantSubType(
14179 _fbb,
14180 _shape,
14181 _type,
14182 _has_rank);
14183 }
14184
14185 inline TensorT::TensorT(const TensorT &o)
14186 : shape(o.shape),
14187 type(o.type),
14188 buffer(o.buffer),
14189 name(o.name),
14190 quantization((o.quantization) ? new tflite::QuantizationParametersT(*o.quantization) : nullptr),
14191 is_variable(o.is_variable),
14192 sparsity((o.sparsity) ? new tflite::SparsityParametersT(*o.sparsity) : nullptr),
14193 shape_signature(o.shape_signature),
14194 has_rank(o.has_rank) {
14195 variant_tensors.reserve(o.variant_tensors.size());
14196 for (const auto &variant_tensors_ : o.variant_tensors) { variant_tensors.emplace_back((variant_tensors_) ? new tflite::VariantSubTypeT(*variant_tensors_) : nullptr); }
14197 }
14198
14199 inline TensorT &TensorT::operator=(TensorT o) FLATBUFFERS_NOEXCEPT {
14200 std::swap(shape, o.shape);
14201 std::swap(type, o.type);
14202 std::swap(buffer, o.buffer);
14203 std::swap(name, o.name);
14204 std::swap(quantization, o.quantization);
14205 std::swap(is_variable, o.is_variable);
14206 std::swap(sparsity, o.sparsity);
14207 std::swap(shape_signature, o.shape_signature);
14208 std::swap(has_rank, o.has_rank);
14209 std::swap(variant_tensors, o.variant_tensors);
14210 return *this;
14211 }
14212
14213 inline TensorT *Tensor::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14214 auto _o = std::unique_ptr<TensorT>(new TensorT());
14215 UnPackTo(_o.get(), _resolver);
14216 return _o.release();
14217 }
14218
14219 inline void Tensor::UnPackTo(TensorT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14220 (void)_o;
14221 (void)_resolver;
14222 { auto _e = shape(); if (_e) { _o->shape.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->shape[_i] = _e->Get(_i); } } }
14223 { auto _e = type(); _o->type = _e; }
14224 { auto _e = buffer(); _o->buffer = _e; }
14225 { auto _e = name(); if (_e) _o->name = _e->str(); }
14226 { auto _e = quantization(); if (_e) _o->quantization = std::unique_ptr<tflite::QuantizationParametersT>(_e->UnPack(_resolver)); }
14227 { auto _e = is_variable(); _o->is_variable = _e; }
14228 { auto _e = sparsity(); if (_e) _o->sparsity = std::unique_ptr<tflite::SparsityParametersT>(_e->UnPack(_resolver)); }
14229 { auto _e = shape_signature(); if (_e) { _o->shape_signature.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->shape_signature[_i] = _e->Get(_i); } } }
14230 { auto _e = has_rank(); _o->has_rank = _e; }
14231 { auto _e = variant_tensors(); if (_e) { _o->variant_tensors.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->variant_tensors[_i] = std::unique_ptr<tflite::VariantSubTypeT>(_e->Get(_i)->UnPack(_resolver)); } } }
14232 }
14233
14234 inline flatbuffers::Offset<Tensor> Tensor::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TensorT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14235 return CreateTensor(_fbb, _o, _rehasher);
14236 }
14237
14238 inline flatbuffers::Offset<Tensor> CreateTensor(flatbuffers::FlatBufferBuilder &_fbb, const TensorT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14239 (void)_rehasher;
14240 (void)_o;
14241 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TensorT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14242 auto _shape = _o->shape.size() ? _fbb.CreateVector(_o->shape) : 0;
14243 auto _type = _o->type;
14244 auto _buffer = _o->buffer;
14245 auto _name = _o->name.empty() ? 0 : _fbb.CreateString(_o->name);
14246 auto _quantization = _o->quantization ? CreateQuantizationParameters(_fbb, _o->quantization.get(), _rehasher) : 0;
14247 auto _is_variable = _o->is_variable;
14248 auto _sparsity = _o->sparsity ? CreateSparsityParameters(_fbb, _o->sparsity.get(), _rehasher) : 0;
14249 auto _shape_signature = _o->shape_signature.size() ? _fbb.CreateVector(_o->shape_signature) : 0;
14250 auto _has_rank = _o->has_rank;
14251 auto _variant_tensors = _o->variant_tensors.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::VariantSubType>> (_o->variant_tensors.size(), [](size_t i, _VectorArgs *__va) { return CreateVariantSubType(*__va->__fbb, __va->__o->variant_tensors[i].get(), __va->__rehasher); }, &_va ) : 0;
14252 return tflite::CreateTensor(
14253 _fbb,
14254 _shape,
14255 _type,
14256 _buffer,
14257 _name,
14258 _quantization,
14259 _is_variable,
14260 _sparsity,
14261 _shape_signature,
14262 _has_rank,
14263 _variant_tensors);
14264 }
14265
14266 inline Conv2DOptionsT *Conv2DOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14267 auto _o = std::unique_ptr<Conv2DOptionsT>(new Conv2DOptionsT());
14268 UnPackTo(_o.get(), _resolver);
14269 return _o.release();
14270 }
14271
14272 inline void Conv2DOptions::UnPackTo(Conv2DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14273 (void)_o;
14274 (void)_resolver;
14275 { auto _e = padding(); _o->padding = _e; }
14276 { auto _e = stride_w(); _o->stride_w = _e; }
14277 { auto _e = stride_h(); _o->stride_h = _e; }
14278 { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
14279 { auto _e = dilation_w_factor(); _o->dilation_w_factor = _e; }
14280 { auto _e = dilation_h_factor(); _o->dilation_h_factor = _e; }
14281 }
14282
14283 inline flatbuffers::Offset<Conv2DOptions> Conv2DOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Conv2DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14284 return CreateConv2DOptions(_fbb, _o, _rehasher);
14285 }
14286
14287 inline flatbuffers::Offset<Conv2DOptions> CreateConv2DOptions(flatbuffers::FlatBufferBuilder &_fbb, const Conv2DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14288 (void)_rehasher;
14289 (void)_o;
14290 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Conv2DOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14291 auto _padding = _o->padding;
14292 auto _stride_w = _o->stride_w;
14293 auto _stride_h = _o->stride_h;
14294 auto _fused_activation_function = _o->fused_activation_function;
14295 auto _dilation_w_factor = _o->dilation_w_factor;
14296 auto _dilation_h_factor = _o->dilation_h_factor;
14297 return tflite::CreateConv2DOptions(
14298 _fbb,
14299 _padding,
14300 _stride_w,
14301 _stride_h,
14302 _fused_activation_function,
14303 _dilation_w_factor,
14304 _dilation_h_factor);
14305 }
14306
14307 inline Conv3DOptionsT *Conv3DOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14308 auto _o = std::unique_ptr<Conv3DOptionsT>(new Conv3DOptionsT());
14309 UnPackTo(_o.get(), _resolver);
14310 return _o.release();
14311 }
14312
14313 inline void Conv3DOptions::UnPackTo(Conv3DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14314 (void)_o;
14315 (void)_resolver;
14316 { auto _e = padding(); _o->padding = _e; }
14317 { auto _e = stride_d(); _o->stride_d = _e; }
14318 { auto _e = stride_w(); _o->stride_w = _e; }
14319 { auto _e = stride_h(); _o->stride_h = _e; }
14320 { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
14321 { auto _e = dilation_d_factor(); _o->dilation_d_factor = _e; }
14322 { auto _e = dilation_w_factor(); _o->dilation_w_factor = _e; }
14323 { auto _e = dilation_h_factor(); _o->dilation_h_factor = _e; }
14324 }
14325
14326 inline flatbuffers::Offset<Conv3DOptions> Conv3DOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Conv3DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14327 return CreateConv3DOptions(_fbb, _o, _rehasher);
14328 }
14329
14330 inline flatbuffers::Offset<Conv3DOptions> CreateConv3DOptions(flatbuffers::FlatBufferBuilder &_fbb, const Conv3DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14331 (void)_rehasher;
14332 (void)_o;
14333 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Conv3DOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14334 auto _padding = _o->padding;
14335 auto _stride_d = _o->stride_d;
14336 auto _stride_w = _o->stride_w;
14337 auto _stride_h = _o->stride_h;
14338 auto _fused_activation_function = _o->fused_activation_function;
14339 auto _dilation_d_factor = _o->dilation_d_factor;
14340 auto _dilation_w_factor = _o->dilation_w_factor;
14341 auto _dilation_h_factor = _o->dilation_h_factor;
14342 return tflite::CreateConv3DOptions(
14343 _fbb,
14344 _padding,
14345 _stride_d,
14346 _stride_w,
14347 _stride_h,
14348 _fused_activation_function,
14349 _dilation_d_factor,
14350 _dilation_w_factor,
14351 _dilation_h_factor);
14352 }
14353
14354 inline Pool2DOptionsT *Pool2DOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14355 auto _o = std::unique_ptr<Pool2DOptionsT>(new Pool2DOptionsT());
14356 UnPackTo(_o.get(), _resolver);
14357 return _o.release();
14358 }
14359
14360 inline void Pool2DOptions::UnPackTo(Pool2DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14361 (void)_o;
14362 (void)_resolver;
14363 { auto _e = padding(); _o->padding = _e; }
14364 { auto _e = stride_w(); _o->stride_w = _e; }
14365 { auto _e = stride_h(); _o->stride_h = _e; }
14366 { auto _e = filter_width(); _o->filter_width = _e; }
14367 { auto _e = filter_height(); _o->filter_height = _e; }
14368 { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
14369 }
14370
14371 inline flatbuffers::Offset<Pool2DOptions> Pool2DOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Pool2DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14372 return CreatePool2DOptions(_fbb, _o, _rehasher);
14373 }
14374
14375 inline flatbuffers::Offset<Pool2DOptions> CreatePool2DOptions(flatbuffers::FlatBufferBuilder &_fbb, const Pool2DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14376 (void)_rehasher;
14377 (void)_o;
14378 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Pool2DOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14379 auto _padding = _o->padding;
14380 auto _stride_w = _o->stride_w;
14381 auto _stride_h = _o->stride_h;
14382 auto _filter_width = _o->filter_width;
14383 auto _filter_height = _o->filter_height;
14384 auto _fused_activation_function = _o->fused_activation_function;
14385 return tflite::CreatePool2DOptions(
14386 _fbb,
14387 _padding,
14388 _stride_w,
14389 _stride_h,
14390 _filter_width,
14391 _filter_height,
14392 _fused_activation_function);
14393 }
14394
14395 inline DepthwiseConv2DOptionsT *DepthwiseConv2DOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14396 auto _o = std::unique_ptr<DepthwiseConv2DOptionsT>(new DepthwiseConv2DOptionsT());
14397 UnPackTo(_o.get(), _resolver);
14398 return _o.release();
14399 }
14400
14401 inline void DepthwiseConv2DOptions::UnPackTo(DepthwiseConv2DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14402 (void)_o;
14403 (void)_resolver;
14404 { auto _e = padding(); _o->padding = _e; }
14405 { auto _e = stride_w(); _o->stride_w = _e; }
14406 { auto _e = stride_h(); _o->stride_h = _e; }
14407 { auto _e = depth_multiplier(); _o->depth_multiplier = _e; }
14408 { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
14409 { auto _e = dilation_w_factor(); _o->dilation_w_factor = _e; }
14410 { auto _e = dilation_h_factor(); _o->dilation_h_factor = _e; }
14411 }
14412
14413 inline flatbuffers::Offset<DepthwiseConv2DOptions> DepthwiseConv2DOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DepthwiseConv2DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14414 return CreateDepthwiseConv2DOptions(_fbb, _o, _rehasher);
14415 }
14416
14417 inline flatbuffers::Offset<DepthwiseConv2DOptions> CreateDepthwiseConv2DOptions(flatbuffers::FlatBufferBuilder &_fbb, const DepthwiseConv2DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14418 (void)_rehasher;
14419 (void)_o;
14420 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DepthwiseConv2DOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14421 auto _padding = _o->padding;
14422 auto _stride_w = _o->stride_w;
14423 auto _stride_h = _o->stride_h;
14424 auto _depth_multiplier = _o->depth_multiplier;
14425 auto _fused_activation_function = _o->fused_activation_function;
14426 auto _dilation_w_factor = _o->dilation_w_factor;
14427 auto _dilation_h_factor = _o->dilation_h_factor;
14428 return tflite::CreateDepthwiseConv2DOptions(
14429 _fbb,
14430 _padding,
14431 _stride_w,
14432 _stride_h,
14433 _depth_multiplier,
14434 _fused_activation_function,
14435 _dilation_w_factor,
14436 _dilation_h_factor);
14437 }
14438
14439 inline ConcatEmbeddingsOptionsT *ConcatEmbeddingsOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14440 auto _o = std::unique_ptr<ConcatEmbeddingsOptionsT>(new ConcatEmbeddingsOptionsT());
14441 UnPackTo(_o.get(), _resolver);
14442 return _o.release();
14443 }
14444
14445 inline void ConcatEmbeddingsOptions::UnPackTo(ConcatEmbeddingsOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14446 (void)_o;
14447 (void)_resolver;
14448 { auto _e = num_channels(); _o->num_channels = _e; }
14449 { auto _e = num_columns_per_channel(); if (_e) { _o->num_columns_per_channel.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->num_columns_per_channel[_i] = _e->Get(_i); } } }
14450 { auto _e = embedding_dim_per_channel(); if (_e) { _o->embedding_dim_per_channel.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->embedding_dim_per_channel[_i] = _e->Get(_i); } } }
14451 }
14452
14453 inline flatbuffers::Offset<ConcatEmbeddingsOptions> ConcatEmbeddingsOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ConcatEmbeddingsOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14454 return CreateConcatEmbeddingsOptions(_fbb, _o, _rehasher);
14455 }
14456
14457 inline flatbuffers::Offset<ConcatEmbeddingsOptions> CreateConcatEmbeddingsOptions(flatbuffers::FlatBufferBuilder &_fbb, const ConcatEmbeddingsOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14458 (void)_rehasher;
14459 (void)_o;
14460 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ConcatEmbeddingsOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14461 auto _num_channels = _o->num_channels;
14462 auto _num_columns_per_channel = _o->num_columns_per_channel.size() ? _fbb.CreateVector(_o->num_columns_per_channel) : 0;
14463 auto _embedding_dim_per_channel = _o->embedding_dim_per_channel.size() ? _fbb.CreateVector(_o->embedding_dim_per_channel) : 0;
14464 return tflite::CreateConcatEmbeddingsOptions(
14465 _fbb,
14466 _num_channels,
14467 _num_columns_per_channel,
14468 _embedding_dim_per_channel);
14469 }
14470
14471 inline LSHProjectionOptionsT *LSHProjectionOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14472 auto _o = std::unique_ptr<LSHProjectionOptionsT>(new LSHProjectionOptionsT());
14473 UnPackTo(_o.get(), _resolver);
14474 return _o.release();
14475 }
14476
14477 inline void LSHProjectionOptions::UnPackTo(LSHProjectionOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14478 (void)_o;
14479 (void)_resolver;
14480 { auto _e = type(); _o->type = _e; }
14481 }
14482
14483 inline flatbuffers::Offset<LSHProjectionOptions> LSHProjectionOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LSHProjectionOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14484 return CreateLSHProjectionOptions(_fbb, _o, _rehasher);
14485 }
14486
14487 inline flatbuffers::Offset<LSHProjectionOptions> CreateLSHProjectionOptions(flatbuffers::FlatBufferBuilder &_fbb, const LSHProjectionOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14488 (void)_rehasher;
14489 (void)_o;
14490 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LSHProjectionOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14491 auto _type = _o->type;
14492 return tflite::CreateLSHProjectionOptions(
14493 _fbb,
14494 _type);
14495 }
14496
14497 inline SVDFOptionsT *SVDFOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14498 auto _o = std::unique_ptr<SVDFOptionsT>(new SVDFOptionsT());
14499 UnPackTo(_o.get(), _resolver);
14500 return _o.release();
14501 }
14502
14503 inline void SVDFOptions::UnPackTo(SVDFOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14504 (void)_o;
14505 (void)_resolver;
14506 { auto _e = rank(); _o->rank = _e; }
14507 { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
14508 { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
14509 }
14510
14511 inline flatbuffers::Offset<SVDFOptions> SVDFOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SVDFOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14512 return CreateSVDFOptions(_fbb, _o, _rehasher);
14513 }
14514
14515 inline flatbuffers::Offset<SVDFOptions> CreateSVDFOptions(flatbuffers::FlatBufferBuilder &_fbb, const SVDFOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14516 (void)_rehasher;
14517 (void)_o;
14518 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SVDFOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14519 auto _rank = _o->rank;
14520 auto _fused_activation_function = _o->fused_activation_function;
14521 auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
14522 return tflite::CreateSVDFOptions(
14523 _fbb,
14524 _rank,
14525 _fused_activation_function,
14526 _asymmetric_quantize_inputs);
14527 }
14528
14529 inline RNNOptionsT *RNNOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14530 auto _o = std::unique_ptr<RNNOptionsT>(new RNNOptionsT());
14531 UnPackTo(_o.get(), _resolver);
14532 return _o.release();
14533 }
14534
14535 inline void RNNOptions::UnPackTo(RNNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14536 (void)_o;
14537 (void)_resolver;
14538 { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
14539 { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
14540 }
14541
14542 inline flatbuffers::Offset<RNNOptions> RNNOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const RNNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14543 return CreateRNNOptions(_fbb, _o, _rehasher);
14544 }
14545
14546 inline flatbuffers::Offset<RNNOptions> CreateRNNOptions(flatbuffers::FlatBufferBuilder &_fbb, const RNNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14547 (void)_rehasher;
14548 (void)_o;
14549 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const RNNOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14550 auto _fused_activation_function = _o->fused_activation_function;
14551 auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
14552 return tflite::CreateRNNOptions(
14553 _fbb,
14554 _fused_activation_function,
14555 _asymmetric_quantize_inputs);
14556 }
14557
14558 inline SequenceRNNOptionsT *SequenceRNNOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14559 auto _o = std::unique_ptr<SequenceRNNOptionsT>(new SequenceRNNOptionsT());
14560 UnPackTo(_o.get(), _resolver);
14561 return _o.release();
14562 }
14563
14564 inline void SequenceRNNOptions::UnPackTo(SequenceRNNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14565 (void)_o;
14566 (void)_resolver;
14567 { auto _e = time_major(); _o->time_major = _e; }
14568 { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
14569 { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
14570 }
14571
14572 inline flatbuffers::Offset<SequenceRNNOptions> SequenceRNNOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SequenceRNNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14573 return CreateSequenceRNNOptions(_fbb, _o, _rehasher);
14574 }
14575
14576 inline flatbuffers::Offset<SequenceRNNOptions> CreateSequenceRNNOptions(flatbuffers::FlatBufferBuilder &_fbb, const SequenceRNNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14577 (void)_rehasher;
14578 (void)_o;
14579 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SequenceRNNOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14580 auto _time_major = _o->time_major;
14581 auto _fused_activation_function = _o->fused_activation_function;
14582 auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
14583 return tflite::CreateSequenceRNNOptions(
14584 _fbb,
14585 _time_major,
14586 _fused_activation_function,
14587 _asymmetric_quantize_inputs);
14588 }
14589
14590 inline BidirectionalSequenceRNNOptionsT *BidirectionalSequenceRNNOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14591 auto _o = std::unique_ptr<BidirectionalSequenceRNNOptionsT>(new BidirectionalSequenceRNNOptionsT());
14592 UnPackTo(_o.get(), _resolver);
14593 return _o.release();
14594 }
14595
14596 inline void BidirectionalSequenceRNNOptions::UnPackTo(BidirectionalSequenceRNNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14597 (void)_o;
14598 (void)_resolver;
14599 { auto _e = time_major(); _o->time_major = _e; }
14600 { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
14601 { auto _e = merge_outputs(); _o->merge_outputs = _e; }
14602 { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
14603 }
14604
14605 inline flatbuffers::Offset<BidirectionalSequenceRNNOptions> BidirectionalSequenceRNNOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceRNNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14606 return CreateBidirectionalSequenceRNNOptions(_fbb, _o, _rehasher);
14607 }
14608
14609 inline flatbuffers::Offset<BidirectionalSequenceRNNOptions> CreateBidirectionalSequenceRNNOptions(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceRNNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14610 (void)_rehasher;
14611 (void)_o;
14612 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BidirectionalSequenceRNNOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14613 auto _time_major = _o->time_major;
14614 auto _fused_activation_function = _o->fused_activation_function;
14615 auto _merge_outputs = _o->merge_outputs;
14616 auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
14617 return tflite::CreateBidirectionalSequenceRNNOptions(
14618 _fbb,
14619 _time_major,
14620 _fused_activation_function,
14621 _merge_outputs,
14622 _asymmetric_quantize_inputs);
14623 }
14624
14625 inline FullyConnectedOptionsT *FullyConnectedOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14626 auto _o = std::unique_ptr<FullyConnectedOptionsT>(new FullyConnectedOptionsT());
14627 UnPackTo(_o.get(), _resolver);
14628 return _o.release();
14629 }
14630
14631 inline void FullyConnectedOptions::UnPackTo(FullyConnectedOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14632 (void)_o;
14633 (void)_resolver;
14634 { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
14635 { auto _e = weights_format(); _o->weights_format = _e; }
14636 { auto _e = keep_num_dims(); _o->keep_num_dims = _e; }
14637 { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
14638 }
14639
14640 inline flatbuffers::Offset<FullyConnectedOptions> FullyConnectedOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const FullyConnectedOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14641 return CreateFullyConnectedOptions(_fbb, _o, _rehasher);
14642 }
14643
14644 inline flatbuffers::Offset<FullyConnectedOptions> CreateFullyConnectedOptions(flatbuffers::FlatBufferBuilder &_fbb, const FullyConnectedOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14645 (void)_rehasher;
14646 (void)_o;
14647 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const FullyConnectedOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14648 auto _fused_activation_function = _o->fused_activation_function;
14649 auto _weights_format = _o->weights_format;
14650 auto _keep_num_dims = _o->keep_num_dims;
14651 auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
14652 return tflite::CreateFullyConnectedOptions(
14653 _fbb,
14654 _fused_activation_function,
14655 _weights_format,
14656 _keep_num_dims,
14657 _asymmetric_quantize_inputs);
14658 }
14659
14660 inline SoftmaxOptionsT *SoftmaxOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14661 auto _o = std::unique_ptr<SoftmaxOptionsT>(new SoftmaxOptionsT());
14662 UnPackTo(_o.get(), _resolver);
14663 return _o.release();
14664 }
14665
14666 inline void SoftmaxOptions::UnPackTo(SoftmaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14667 (void)_o;
14668 (void)_resolver;
14669 { auto _e = beta(); _o->beta = _e; }
14670 }
14671
14672 inline flatbuffers::Offset<SoftmaxOptions> SoftmaxOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SoftmaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14673 return CreateSoftmaxOptions(_fbb, _o, _rehasher);
14674 }
14675
14676 inline flatbuffers::Offset<SoftmaxOptions> CreateSoftmaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const SoftmaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14677 (void)_rehasher;
14678 (void)_o;
14679 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SoftmaxOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14680 auto _beta = _o->beta;
14681 return tflite::CreateSoftmaxOptions(
14682 _fbb,
14683 _beta);
14684 }
14685
14686 inline ConcatenationOptionsT *ConcatenationOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14687 auto _o = std::unique_ptr<ConcatenationOptionsT>(new ConcatenationOptionsT());
14688 UnPackTo(_o.get(), _resolver);
14689 return _o.release();
14690 }
14691
14692 inline void ConcatenationOptions::UnPackTo(ConcatenationOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14693 (void)_o;
14694 (void)_resolver;
14695 { auto _e = axis(); _o->axis = _e; }
14696 { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
14697 }
14698
14699 inline flatbuffers::Offset<ConcatenationOptions> ConcatenationOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ConcatenationOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14700 return CreateConcatenationOptions(_fbb, _o, _rehasher);
14701 }
14702
14703 inline flatbuffers::Offset<ConcatenationOptions> CreateConcatenationOptions(flatbuffers::FlatBufferBuilder &_fbb, const ConcatenationOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14704 (void)_rehasher;
14705 (void)_o;
14706 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ConcatenationOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14707 auto _axis = _o->axis;
14708 auto _fused_activation_function = _o->fused_activation_function;
14709 return tflite::CreateConcatenationOptions(
14710 _fbb,
14711 _axis,
14712 _fused_activation_function);
14713 }
14714
14715 inline AddOptionsT *AddOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14716 auto _o = std::unique_ptr<AddOptionsT>(new AddOptionsT());
14717 UnPackTo(_o.get(), _resolver);
14718 return _o.release();
14719 }
14720
14721 inline void AddOptions::UnPackTo(AddOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14722 (void)_o;
14723 (void)_resolver;
14724 { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
14725 { auto _e = pot_scale_int16(); _o->pot_scale_int16 = _e; }
14726 }
14727
14728 inline flatbuffers::Offset<AddOptions> AddOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const AddOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14729 return CreateAddOptions(_fbb, _o, _rehasher);
14730 }
14731
14732 inline flatbuffers::Offset<AddOptions> CreateAddOptions(flatbuffers::FlatBufferBuilder &_fbb, const AddOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14733 (void)_rehasher;
14734 (void)_o;
14735 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const AddOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14736 auto _fused_activation_function = _o->fused_activation_function;
14737 auto _pot_scale_int16 = _o->pot_scale_int16;
14738 return tflite::CreateAddOptions(
14739 _fbb,
14740 _fused_activation_function,
14741 _pot_scale_int16);
14742 }
14743
14744 inline MulOptionsT *MulOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14745 auto _o = std::unique_ptr<MulOptionsT>(new MulOptionsT());
14746 UnPackTo(_o.get(), _resolver);
14747 return _o.release();
14748 }
14749
14750 inline void MulOptions::UnPackTo(MulOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14751 (void)_o;
14752 (void)_resolver;
14753 { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
14754 }
14755
14756 inline flatbuffers::Offset<MulOptions> MulOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const MulOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14757 return CreateMulOptions(_fbb, _o, _rehasher);
14758 }
14759
14760 inline flatbuffers::Offset<MulOptions> CreateMulOptions(flatbuffers::FlatBufferBuilder &_fbb, const MulOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14761 (void)_rehasher;
14762 (void)_o;
14763 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const MulOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14764 auto _fused_activation_function = _o->fused_activation_function;
14765 return tflite::CreateMulOptions(
14766 _fbb,
14767 _fused_activation_function);
14768 }
14769
14770 inline L2NormOptionsT *L2NormOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14771 auto _o = std::unique_ptr<L2NormOptionsT>(new L2NormOptionsT());
14772 UnPackTo(_o.get(), _resolver);
14773 return _o.release();
14774 }
14775
14776 inline void L2NormOptions::UnPackTo(L2NormOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14777 (void)_o;
14778 (void)_resolver;
14779 { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
14780 }
14781
14782 inline flatbuffers::Offset<L2NormOptions> L2NormOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const L2NormOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14783 return CreateL2NormOptions(_fbb, _o, _rehasher);
14784 }
14785
14786 inline flatbuffers::Offset<L2NormOptions> CreateL2NormOptions(flatbuffers::FlatBufferBuilder &_fbb, const L2NormOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14787 (void)_rehasher;
14788 (void)_o;
14789 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const L2NormOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14790 auto _fused_activation_function = _o->fused_activation_function;
14791 return tflite::CreateL2NormOptions(
14792 _fbb,
14793 _fused_activation_function);
14794 }
14795
14796 inline LocalResponseNormalizationOptionsT *LocalResponseNormalizationOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14797 auto _o = std::unique_ptr<LocalResponseNormalizationOptionsT>(new LocalResponseNormalizationOptionsT());
14798 UnPackTo(_o.get(), _resolver);
14799 return _o.release();
14800 }
14801
14802 inline void LocalResponseNormalizationOptions::UnPackTo(LocalResponseNormalizationOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14803 (void)_o;
14804 (void)_resolver;
14805 { auto _e = radius(); _o->radius = _e; }
14806 { auto _e = bias(); _o->bias = _e; }
14807 { auto _e = alpha(); _o->alpha = _e; }
14808 { auto _e = beta(); _o->beta = _e; }
14809 }
14810
14811 inline flatbuffers::Offset<LocalResponseNormalizationOptions> LocalResponseNormalizationOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LocalResponseNormalizationOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14812 return CreateLocalResponseNormalizationOptions(_fbb, _o, _rehasher);
14813 }
14814
14815 inline flatbuffers::Offset<LocalResponseNormalizationOptions> CreateLocalResponseNormalizationOptions(flatbuffers::FlatBufferBuilder &_fbb, const LocalResponseNormalizationOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14816 (void)_rehasher;
14817 (void)_o;
14818 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LocalResponseNormalizationOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14819 auto _radius = _o->radius;
14820 auto _bias = _o->bias;
14821 auto _alpha = _o->alpha;
14822 auto _beta = _o->beta;
14823 return tflite::CreateLocalResponseNormalizationOptions(
14824 _fbb,
14825 _radius,
14826 _bias,
14827 _alpha,
14828 _beta);
14829 }
14830
14831 inline LSTMOptionsT *LSTMOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14832 auto _o = std::unique_ptr<LSTMOptionsT>(new LSTMOptionsT());
14833 UnPackTo(_o.get(), _resolver);
14834 return _o.release();
14835 }
14836
14837 inline void LSTMOptions::UnPackTo(LSTMOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14838 (void)_o;
14839 (void)_resolver;
14840 { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
14841 { auto _e = cell_clip(); _o->cell_clip = _e; }
14842 { auto _e = proj_clip(); _o->proj_clip = _e; }
14843 { auto _e = kernel_type(); _o->kernel_type = _e; }
14844 { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
14845 }
14846
14847 inline flatbuffers::Offset<LSTMOptions> LSTMOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LSTMOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14848 return CreateLSTMOptions(_fbb, _o, _rehasher);
14849 }
14850
14851 inline flatbuffers::Offset<LSTMOptions> CreateLSTMOptions(flatbuffers::FlatBufferBuilder &_fbb, const LSTMOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14852 (void)_rehasher;
14853 (void)_o;
14854 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LSTMOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14855 auto _fused_activation_function = _o->fused_activation_function;
14856 auto _cell_clip = _o->cell_clip;
14857 auto _proj_clip = _o->proj_clip;
14858 auto _kernel_type = _o->kernel_type;
14859 auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
14860 return tflite::CreateLSTMOptions(
14861 _fbb,
14862 _fused_activation_function,
14863 _cell_clip,
14864 _proj_clip,
14865 _kernel_type,
14866 _asymmetric_quantize_inputs);
14867 }
14868
14869 inline UnidirectionalSequenceLSTMOptionsT *UnidirectionalSequenceLSTMOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14870 auto _o = std::unique_ptr<UnidirectionalSequenceLSTMOptionsT>(new UnidirectionalSequenceLSTMOptionsT());
14871 UnPackTo(_o.get(), _resolver);
14872 return _o.release();
14873 }
14874
14875 inline void UnidirectionalSequenceLSTMOptions::UnPackTo(UnidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14876 (void)_o;
14877 (void)_resolver;
14878 { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
14879 { auto _e = cell_clip(); _o->cell_clip = _e; }
14880 { auto _e = proj_clip(); _o->proj_clip = _e; }
14881 { auto _e = time_major(); _o->time_major = _e; }
14882 { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
14883 }
14884
14885 inline flatbuffers::Offset<UnidirectionalSequenceLSTMOptions> UnidirectionalSequenceLSTMOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnidirectionalSequenceLSTMOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14886 return CreateUnidirectionalSequenceLSTMOptions(_fbb, _o, _rehasher);
14887 }
14888
14889 inline flatbuffers::Offset<UnidirectionalSequenceLSTMOptions> CreateUnidirectionalSequenceLSTMOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14890 (void)_rehasher;
14891 (void)_o;
14892 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const UnidirectionalSequenceLSTMOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14893 auto _fused_activation_function = _o->fused_activation_function;
14894 auto _cell_clip = _o->cell_clip;
14895 auto _proj_clip = _o->proj_clip;
14896 auto _time_major = _o->time_major;
14897 auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
14898 return tflite::CreateUnidirectionalSequenceLSTMOptions(
14899 _fbb,
14900 _fused_activation_function,
14901 _cell_clip,
14902 _proj_clip,
14903 _time_major,
14904 _asymmetric_quantize_inputs);
14905 }
14906
14907 inline BidirectionalSequenceLSTMOptionsT *BidirectionalSequenceLSTMOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14908 auto _o = std::unique_ptr<BidirectionalSequenceLSTMOptionsT>(new BidirectionalSequenceLSTMOptionsT());
14909 UnPackTo(_o.get(), _resolver);
14910 return _o.release();
14911 }
14912
14913 inline void BidirectionalSequenceLSTMOptions::UnPackTo(BidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14914 (void)_o;
14915 (void)_resolver;
14916 { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
14917 { auto _e = cell_clip(); _o->cell_clip = _e; }
14918 { auto _e = proj_clip(); _o->proj_clip = _e; }
14919 { auto _e = merge_outputs(); _o->merge_outputs = _e; }
14920 { auto _e = time_major(); _o->time_major = _e; }
14921 { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
14922 }
14923
14924 inline flatbuffers::Offset<BidirectionalSequenceLSTMOptions> BidirectionalSequenceLSTMOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceLSTMOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14925 return CreateBidirectionalSequenceLSTMOptions(_fbb, _o, _rehasher);
14926 }
14927
14928 inline flatbuffers::Offset<BidirectionalSequenceLSTMOptions> CreateBidirectionalSequenceLSTMOptions(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14929 (void)_rehasher;
14930 (void)_o;
14931 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BidirectionalSequenceLSTMOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14932 auto _fused_activation_function = _o->fused_activation_function;
14933 auto _cell_clip = _o->cell_clip;
14934 auto _proj_clip = _o->proj_clip;
14935 auto _merge_outputs = _o->merge_outputs;
14936 auto _time_major = _o->time_major;
14937 auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
14938 return tflite::CreateBidirectionalSequenceLSTMOptions(
14939 _fbb,
14940 _fused_activation_function,
14941 _cell_clip,
14942 _proj_clip,
14943 _merge_outputs,
14944 _time_major,
14945 _asymmetric_quantize_inputs);
14946 }
14947
14948 inline ResizeBilinearOptionsT *ResizeBilinearOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14949 auto _o = std::unique_ptr<ResizeBilinearOptionsT>(new ResizeBilinearOptionsT());
14950 UnPackTo(_o.get(), _resolver);
14951 return _o.release();
14952 }
14953
14954 inline void ResizeBilinearOptions::UnPackTo(ResizeBilinearOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14955 (void)_o;
14956 (void)_resolver;
14957 { auto _e = align_corners(); _o->align_corners = _e; }
14958 { auto _e = half_pixel_centers(); _o->half_pixel_centers = _e; }
14959 }
14960
14961 inline flatbuffers::Offset<ResizeBilinearOptions> ResizeBilinearOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ResizeBilinearOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14962 return CreateResizeBilinearOptions(_fbb, _o, _rehasher);
14963 }
14964
14965 inline flatbuffers::Offset<ResizeBilinearOptions> CreateResizeBilinearOptions(flatbuffers::FlatBufferBuilder &_fbb, const ResizeBilinearOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14966 (void)_rehasher;
14967 (void)_o;
14968 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ResizeBilinearOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14969 auto _align_corners = _o->align_corners;
14970 auto _half_pixel_centers = _o->half_pixel_centers;
14971 return tflite::CreateResizeBilinearOptions(
14972 _fbb,
14973 _align_corners,
14974 _half_pixel_centers);
14975 }
14976
14977 inline ResizeNearestNeighborOptionsT *ResizeNearestNeighborOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
14978 auto _o = std::unique_ptr<ResizeNearestNeighborOptionsT>(new ResizeNearestNeighborOptionsT());
14979 UnPackTo(_o.get(), _resolver);
14980 return _o.release();
14981 }
14982
14983 inline void ResizeNearestNeighborOptions::UnPackTo(ResizeNearestNeighborOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
14984 (void)_o;
14985 (void)_resolver;
14986 { auto _e = align_corners(); _o->align_corners = _e; }
14987 { auto _e = half_pixel_centers(); _o->half_pixel_centers = _e; }
14988 }
14989
14990 inline flatbuffers::Offset<ResizeNearestNeighborOptions> ResizeNearestNeighborOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ResizeNearestNeighborOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
14991 return CreateResizeNearestNeighborOptions(_fbb, _o, _rehasher);
14992 }
14993
14994 inline flatbuffers::Offset<ResizeNearestNeighborOptions> CreateResizeNearestNeighborOptions(flatbuffers::FlatBufferBuilder &_fbb, const ResizeNearestNeighborOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
14995 (void)_rehasher;
14996 (void)_o;
14997 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ResizeNearestNeighborOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
14998 auto _align_corners = _o->align_corners;
14999 auto _half_pixel_centers = _o->half_pixel_centers;
15000 return tflite::CreateResizeNearestNeighborOptions(
15001 _fbb,
15002 _align_corners,
15003 _half_pixel_centers);
15004 }
15005
15006 inline CallOptionsT *CallOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15007 auto _o = std::unique_ptr<CallOptionsT>(new CallOptionsT());
15008 UnPackTo(_o.get(), _resolver);
15009 return _o.release();
15010 }
15011
15012 inline void CallOptions::UnPackTo(CallOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15013 (void)_o;
15014 (void)_resolver;
15015 { auto _e = subgraph(); _o->subgraph = _e; }
15016 }
15017
15018 inline flatbuffers::Offset<CallOptions> CallOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const CallOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15019 return CreateCallOptions(_fbb, _o, _rehasher);
15020 }
15021
15022 inline flatbuffers::Offset<CallOptions> CreateCallOptions(flatbuffers::FlatBufferBuilder &_fbb, const CallOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15023 (void)_rehasher;
15024 (void)_o;
15025 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const CallOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15026 auto _subgraph = _o->subgraph;
15027 return tflite::CreateCallOptions(
15028 _fbb,
15029 _subgraph);
15030 }
15031
15032 inline PadOptionsT *PadOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15033 auto _o = std::unique_ptr<PadOptionsT>(new PadOptionsT());
15034 UnPackTo(_o.get(), _resolver);
15035 return _o.release();
15036 }
15037
15038 inline void PadOptions::UnPackTo(PadOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15039 (void)_o;
15040 (void)_resolver;
15041 }
15042
15043 inline flatbuffers::Offset<PadOptions> PadOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const PadOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15044 return CreatePadOptions(_fbb, _o, _rehasher);
15045 }
15046
15047 inline flatbuffers::Offset<PadOptions> CreatePadOptions(flatbuffers::FlatBufferBuilder &_fbb, const PadOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15048 (void)_rehasher;
15049 (void)_o;
15050 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const PadOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15051 return tflite::CreatePadOptions(
15052 _fbb);
15053 }
15054
15055 inline PadV2OptionsT *PadV2Options::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15056 auto _o = std::unique_ptr<PadV2OptionsT>(new PadV2OptionsT());
15057 UnPackTo(_o.get(), _resolver);
15058 return _o.release();
15059 }
15060
15061 inline void PadV2Options::UnPackTo(PadV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15062 (void)_o;
15063 (void)_resolver;
15064 }
15065
15066 inline flatbuffers::Offset<PadV2Options> PadV2Options::Pack(flatbuffers::FlatBufferBuilder &_fbb, const PadV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15067 return CreatePadV2Options(_fbb, _o, _rehasher);
15068 }
15069
15070 inline flatbuffers::Offset<PadV2Options> CreatePadV2Options(flatbuffers::FlatBufferBuilder &_fbb, const PadV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15071 (void)_rehasher;
15072 (void)_o;
15073 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const PadV2OptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15074 return tflite::CreatePadV2Options(
15075 _fbb);
15076 }
15077
15078 inline ReshapeOptionsT *ReshapeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15079 auto _o = std::unique_ptr<ReshapeOptionsT>(new ReshapeOptionsT());
15080 UnPackTo(_o.get(), _resolver);
15081 return _o.release();
15082 }
15083
15084 inline void ReshapeOptions::UnPackTo(ReshapeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15085 (void)_o;
15086 (void)_resolver;
15087 { auto _e = new_shape(); if (_e) { _o->new_shape.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->new_shape[_i] = _e->Get(_i); } } }
15088 }
15089
15090 inline flatbuffers::Offset<ReshapeOptions> ReshapeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReshapeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15091 return CreateReshapeOptions(_fbb, _o, _rehasher);
15092 }
15093
15094 inline flatbuffers::Offset<ReshapeOptions> CreateReshapeOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReshapeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15095 (void)_rehasher;
15096 (void)_o;
15097 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ReshapeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15098 auto _new_shape = _o->new_shape.size() ? _fbb.CreateVector(_o->new_shape) : 0;
15099 return tflite::CreateReshapeOptions(
15100 _fbb,
15101 _new_shape);
15102 }
15103
15104 inline SpaceToBatchNDOptionsT *SpaceToBatchNDOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15105 auto _o = std::unique_ptr<SpaceToBatchNDOptionsT>(new SpaceToBatchNDOptionsT());
15106 UnPackTo(_o.get(), _resolver);
15107 return _o.release();
15108 }
15109
15110 inline void SpaceToBatchNDOptions::UnPackTo(SpaceToBatchNDOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15111 (void)_o;
15112 (void)_resolver;
15113 }
15114
15115 inline flatbuffers::Offset<SpaceToBatchNDOptions> SpaceToBatchNDOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToBatchNDOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15116 return CreateSpaceToBatchNDOptions(_fbb, _o, _rehasher);
15117 }
15118
15119 inline flatbuffers::Offset<SpaceToBatchNDOptions> CreateSpaceToBatchNDOptions(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToBatchNDOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15120 (void)_rehasher;
15121 (void)_o;
15122 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SpaceToBatchNDOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15123 return tflite::CreateSpaceToBatchNDOptions(
15124 _fbb);
15125 }
15126
15127 inline BatchToSpaceNDOptionsT *BatchToSpaceNDOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15128 auto _o = std::unique_ptr<BatchToSpaceNDOptionsT>(new BatchToSpaceNDOptionsT());
15129 UnPackTo(_o.get(), _resolver);
15130 return _o.release();
15131 }
15132
15133 inline void BatchToSpaceNDOptions::UnPackTo(BatchToSpaceNDOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15134 (void)_o;
15135 (void)_resolver;
15136 }
15137
15138 inline flatbuffers::Offset<BatchToSpaceNDOptions> BatchToSpaceNDOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BatchToSpaceNDOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15139 return CreateBatchToSpaceNDOptions(_fbb, _o, _rehasher);
15140 }
15141
15142 inline flatbuffers::Offset<BatchToSpaceNDOptions> CreateBatchToSpaceNDOptions(flatbuffers::FlatBufferBuilder &_fbb, const BatchToSpaceNDOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15143 (void)_rehasher;
15144 (void)_o;
15145 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BatchToSpaceNDOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15146 return tflite::CreateBatchToSpaceNDOptions(
15147 _fbb);
15148 }
15149
15150 inline SkipGramOptionsT *SkipGramOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15151 auto _o = std::unique_ptr<SkipGramOptionsT>(new SkipGramOptionsT());
15152 UnPackTo(_o.get(), _resolver);
15153 return _o.release();
15154 }
15155
15156 inline void SkipGramOptions::UnPackTo(SkipGramOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15157 (void)_o;
15158 (void)_resolver;
15159 { auto _e = ngram_size(); _o->ngram_size = _e; }
15160 { auto _e = max_skip_size(); _o->max_skip_size = _e; }
15161 { auto _e = include_all_ngrams(); _o->include_all_ngrams = _e; }
15162 }
15163
15164 inline flatbuffers::Offset<SkipGramOptions> SkipGramOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SkipGramOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15165 return CreateSkipGramOptions(_fbb, _o, _rehasher);
15166 }
15167
15168 inline flatbuffers::Offset<SkipGramOptions> CreateSkipGramOptions(flatbuffers::FlatBufferBuilder &_fbb, const SkipGramOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15169 (void)_rehasher;
15170 (void)_o;
15171 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SkipGramOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15172 auto _ngram_size = _o->ngram_size;
15173 auto _max_skip_size = _o->max_skip_size;
15174 auto _include_all_ngrams = _o->include_all_ngrams;
15175 return tflite::CreateSkipGramOptions(
15176 _fbb,
15177 _ngram_size,
15178 _max_skip_size,
15179 _include_all_ngrams);
15180 }
15181
15182 inline SpaceToDepthOptionsT *SpaceToDepthOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15183 auto _o = std::unique_ptr<SpaceToDepthOptionsT>(new SpaceToDepthOptionsT());
15184 UnPackTo(_o.get(), _resolver);
15185 return _o.release();
15186 }
15187
15188 inline void SpaceToDepthOptions::UnPackTo(SpaceToDepthOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15189 (void)_o;
15190 (void)_resolver;
15191 { auto _e = block_size(); _o->block_size = _e; }
15192 }
15193
15194 inline flatbuffers::Offset<SpaceToDepthOptions> SpaceToDepthOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToDepthOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15195 return CreateSpaceToDepthOptions(_fbb, _o, _rehasher);
15196 }
15197
15198 inline flatbuffers::Offset<SpaceToDepthOptions> CreateSpaceToDepthOptions(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToDepthOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15199 (void)_rehasher;
15200 (void)_o;
15201 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SpaceToDepthOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15202 auto _block_size = _o->block_size;
15203 return tflite::CreateSpaceToDepthOptions(
15204 _fbb,
15205 _block_size);
15206 }
15207
15208 inline DepthToSpaceOptionsT *DepthToSpaceOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15209 auto _o = std::unique_ptr<DepthToSpaceOptionsT>(new DepthToSpaceOptionsT());
15210 UnPackTo(_o.get(), _resolver);
15211 return _o.release();
15212 }
15213
15214 inline void DepthToSpaceOptions::UnPackTo(DepthToSpaceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15215 (void)_o;
15216 (void)_resolver;
15217 { auto _e = block_size(); _o->block_size = _e; }
15218 }
15219
15220 inline flatbuffers::Offset<DepthToSpaceOptions> DepthToSpaceOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DepthToSpaceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15221 return CreateDepthToSpaceOptions(_fbb, _o, _rehasher);
15222 }
15223
15224 inline flatbuffers::Offset<DepthToSpaceOptions> CreateDepthToSpaceOptions(flatbuffers::FlatBufferBuilder &_fbb, const DepthToSpaceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15225 (void)_rehasher;
15226 (void)_o;
15227 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DepthToSpaceOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15228 auto _block_size = _o->block_size;
15229 return tflite::CreateDepthToSpaceOptions(
15230 _fbb,
15231 _block_size);
15232 }
15233
15234 inline SubOptionsT *SubOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15235 auto _o = std::unique_ptr<SubOptionsT>(new SubOptionsT());
15236 UnPackTo(_o.get(), _resolver);
15237 return _o.release();
15238 }
15239
15240 inline void SubOptions::UnPackTo(SubOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15241 (void)_o;
15242 (void)_resolver;
15243 { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
15244 { auto _e = pot_scale_int16(); _o->pot_scale_int16 = _e; }
15245 }
15246
15247 inline flatbuffers::Offset<SubOptions> SubOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SubOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15248 return CreateSubOptions(_fbb, _o, _rehasher);
15249 }
15250
15251 inline flatbuffers::Offset<SubOptions> CreateSubOptions(flatbuffers::FlatBufferBuilder &_fbb, const SubOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15252 (void)_rehasher;
15253 (void)_o;
15254 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SubOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15255 auto _fused_activation_function = _o->fused_activation_function;
15256 auto _pot_scale_int16 = _o->pot_scale_int16;
15257 return tflite::CreateSubOptions(
15258 _fbb,
15259 _fused_activation_function,
15260 _pot_scale_int16);
15261 }
15262
15263 inline DivOptionsT *DivOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15264 auto _o = std::unique_ptr<DivOptionsT>(new DivOptionsT());
15265 UnPackTo(_o.get(), _resolver);
15266 return _o.release();
15267 }
15268
15269 inline void DivOptions::UnPackTo(DivOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15270 (void)_o;
15271 (void)_resolver;
15272 { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
15273 }
15274
15275 inline flatbuffers::Offset<DivOptions> DivOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DivOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15276 return CreateDivOptions(_fbb, _o, _rehasher);
15277 }
15278
15279 inline flatbuffers::Offset<DivOptions> CreateDivOptions(flatbuffers::FlatBufferBuilder &_fbb, const DivOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15280 (void)_rehasher;
15281 (void)_o;
15282 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DivOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15283 auto _fused_activation_function = _o->fused_activation_function;
15284 return tflite::CreateDivOptions(
15285 _fbb,
15286 _fused_activation_function);
15287 }
15288
15289 inline TopKV2OptionsT *TopKV2Options::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15290 auto _o = std::unique_ptr<TopKV2OptionsT>(new TopKV2OptionsT());
15291 UnPackTo(_o.get(), _resolver);
15292 return _o.release();
15293 }
15294
15295 inline void TopKV2Options::UnPackTo(TopKV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15296 (void)_o;
15297 (void)_resolver;
15298 }
15299
15300 inline flatbuffers::Offset<TopKV2Options> TopKV2Options::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TopKV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15301 return CreateTopKV2Options(_fbb, _o, _rehasher);
15302 }
15303
15304 inline flatbuffers::Offset<TopKV2Options> CreateTopKV2Options(flatbuffers::FlatBufferBuilder &_fbb, const TopKV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15305 (void)_rehasher;
15306 (void)_o;
15307 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TopKV2OptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15308 return tflite::CreateTopKV2Options(
15309 _fbb);
15310 }
15311
15312 inline EmbeddingLookupSparseOptionsT *EmbeddingLookupSparseOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15313 auto _o = std::unique_ptr<EmbeddingLookupSparseOptionsT>(new EmbeddingLookupSparseOptionsT());
15314 UnPackTo(_o.get(), _resolver);
15315 return _o.release();
15316 }
15317
15318 inline void EmbeddingLookupSparseOptions::UnPackTo(EmbeddingLookupSparseOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15319 (void)_o;
15320 (void)_resolver;
15321 { auto _e = combiner(); _o->combiner = _e; }
15322 }
15323
15324 inline flatbuffers::Offset<EmbeddingLookupSparseOptions> EmbeddingLookupSparseOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const EmbeddingLookupSparseOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15325 return CreateEmbeddingLookupSparseOptions(_fbb, _o, _rehasher);
15326 }
15327
15328 inline flatbuffers::Offset<EmbeddingLookupSparseOptions> CreateEmbeddingLookupSparseOptions(flatbuffers::FlatBufferBuilder &_fbb, const EmbeddingLookupSparseOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15329 (void)_rehasher;
15330 (void)_o;
15331 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const EmbeddingLookupSparseOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15332 auto _combiner = _o->combiner;
15333 return tflite::CreateEmbeddingLookupSparseOptions(
15334 _fbb,
15335 _combiner);
15336 }
15337
15338 inline GatherOptionsT *GatherOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15339 auto _o = std::unique_ptr<GatherOptionsT>(new GatherOptionsT());
15340 UnPackTo(_o.get(), _resolver);
15341 return _o.release();
15342 }
15343
15344 inline void GatherOptions::UnPackTo(GatherOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15345 (void)_o;
15346 (void)_resolver;
15347 { auto _e = axis(); _o->axis = _e; }
15348 { auto _e = batch_dims(); _o->batch_dims = _e; }
15349 }
15350
15351 inline flatbuffers::Offset<GatherOptions> GatherOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const GatherOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15352 return CreateGatherOptions(_fbb, _o, _rehasher);
15353 }
15354
15355 inline flatbuffers::Offset<GatherOptions> CreateGatherOptions(flatbuffers::FlatBufferBuilder &_fbb, const GatherOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15356 (void)_rehasher;
15357 (void)_o;
15358 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const GatherOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15359 auto _axis = _o->axis;
15360 auto _batch_dims = _o->batch_dims;
15361 return tflite::CreateGatherOptions(
15362 _fbb,
15363 _axis,
15364 _batch_dims);
15365 }
15366
15367 inline TransposeOptionsT *TransposeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15368 auto _o = std::unique_ptr<TransposeOptionsT>(new TransposeOptionsT());
15369 UnPackTo(_o.get(), _resolver);
15370 return _o.release();
15371 }
15372
15373 inline void TransposeOptions::UnPackTo(TransposeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15374 (void)_o;
15375 (void)_resolver;
15376 }
15377
15378 inline flatbuffers::Offset<TransposeOptions> TransposeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TransposeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15379 return CreateTransposeOptions(_fbb, _o, _rehasher);
15380 }
15381
15382 inline flatbuffers::Offset<TransposeOptions> CreateTransposeOptions(flatbuffers::FlatBufferBuilder &_fbb, const TransposeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15383 (void)_rehasher;
15384 (void)_o;
15385 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TransposeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15386 return tflite::CreateTransposeOptions(
15387 _fbb);
15388 }
15389
15390 inline ExpOptionsT *ExpOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15391 auto _o = std::unique_ptr<ExpOptionsT>(new ExpOptionsT());
15392 UnPackTo(_o.get(), _resolver);
15393 return _o.release();
15394 }
15395
15396 inline void ExpOptions::UnPackTo(ExpOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15397 (void)_o;
15398 (void)_resolver;
15399 }
15400
15401 inline flatbuffers::Offset<ExpOptions> ExpOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ExpOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15402 return CreateExpOptions(_fbb, _o, _rehasher);
15403 }
15404
15405 inline flatbuffers::Offset<ExpOptions> CreateExpOptions(flatbuffers::FlatBufferBuilder &_fbb, const ExpOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15406 (void)_rehasher;
15407 (void)_o;
15408 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ExpOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15409 return tflite::CreateExpOptions(
15410 _fbb);
15411 }
15412
15413 inline CosOptionsT *CosOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15414 auto _o = std::unique_ptr<CosOptionsT>(new CosOptionsT());
15415 UnPackTo(_o.get(), _resolver);
15416 return _o.release();
15417 }
15418
15419 inline void CosOptions::UnPackTo(CosOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15420 (void)_o;
15421 (void)_resolver;
15422 }
15423
15424 inline flatbuffers::Offset<CosOptions> CosOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const CosOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15425 return CreateCosOptions(_fbb, _o, _rehasher);
15426 }
15427
15428 inline flatbuffers::Offset<CosOptions> CreateCosOptions(flatbuffers::FlatBufferBuilder &_fbb, const CosOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15429 (void)_rehasher;
15430 (void)_o;
15431 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const CosOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15432 return tflite::CreateCosOptions(
15433 _fbb);
15434 }
15435
15436 inline ReducerOptionsT *ReducerOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15437 auto _o = std::unique_ptr<ReducerOptionsT>(new ReducerOptionsT());
15438 UnPackTo(_o.get(), _resolver);
15439 return _o.release();
15440 }
15441
15442 inline void ReducerOptions::UnPackTo(ReducerOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15443 (void)_o;
15444 (void)_resolver;
15445 { auto _e = keep_dims(); _o->keep_dims = _e; }
15446 }
15447
15448 inline flatbuffers::Offset<ReducerOptions> ReducerOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReducerOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15449 return CreateReducerOptions(_fbb, _o, _rehasher);
15450 }
15451
15452 inline flatbuffers::Offset<ReducerOptions> CreateReducerOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReducerOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15453 (void)_rehasher;
15454 (void)_o;
15455 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ReducerOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15456 auto _keep_dims = _o->keep_dims;
15457 return tflite::CreateReducerOptions(
15458 _fbb,
15459 _keep_dims);
15460 }
15461
15462 inline SqueezeOptionsT *SqueezeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15463 auto _o = std::unique_ptr<SqueezeOptionsT>(new SqueezeOptionsT());
15464 UnPackTo(_o.get(), _resolver);
15465 return _o.release();
15466 }
15467
15468 inline void SqueezeOptions::UnPackTo(SqueezeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15469 (void)_o;
15470 (void)_resolver;
15471 { auto _e = squeeze_dims(); if (_e) { _o->squeeze_dims.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->squeeze_dims[_i] = _e->Get(_i); } } }
15472 }
15473
15474 inline flatbuffers::Offset<SqueezeOptions> SqueezeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SqueezeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15475 return CreateSqueezeOptions(_fbb, _o, _rehasher);
15476 }
15477
15478 inline flatbuffers::Offset<SqueezeOptions> CreateSqueezeOptions(flatbuffers::FlatBufferBuilder &_fbb, const SqueezeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15479 (void)_rehasher;
15480 (void)_o;
15481 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SqueezeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15482 auto _squeeze_dims = _o->squeeze_dims.size() ? _fbb.CreateVector(_o->squeeze_dims) : 0;
15483 return tflite::CreateSqueezeOptions(
15484 _fbb,
15485 _squeeze_dims);
15486 }
15487
15488 inline SplitOptionsT *SplitOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15489 auto _o = std::unique_ptr<SplitOptionsT>(new SplitOptionsT());
15490 UnPackTo(_o.get(), _resolver);
15491 return _o.release();
15492 }
15493
15494 inline void SplitOptions::UnPackTo(SplitOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15495 (void)_o;
15496 (void)_resolver;
15497 { auto _e = num_splits(); _o->num_splits = _e; }
15498 }
15499
15500 inline flatbuffers::Offset<SplitOptions> SplitOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SplitOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15501 return CreateSplitOptions(_fbb, _o, _rehasher);
15502 }
15503
15504 inline flatbuffers::Offset<SplitOptions> CreateSplitOptions(flatbuffers::FlatBufferBuilder &_fbb, const SplitOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15505 (void)_rehasher;
15506 (void)_o;
15507 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SplitOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15508 auto _num_splits = _o->num_splits;
15509 return tflite::CreateSplitOptions(
15510 _fbb,
15511 _num_splits);
15512 }
15513
15514 inline SplitVOptionsT *SplitVOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15515 auto _o = std::unique_ptr<SplitVOptionsT>(new SplitVOptionsT());
15516 UnPackTo(_o.get(), _resolver);
15517 return _o.release();
15518 }
15519
15520 inline void SplitVOptions::UnPackTo(SplitVOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15521 (void)_o;
15522 (void)_resolver;
15523 { auto _e = num_splits(); _o->num_splits = _e; }
15524 }
15525
15526 inline flatbuffers::Offset<SplitVOptions> SplitVOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SplitVOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15527 return CreateSplitVOptions(_fbb, _o, _rehasher);
15528 }
15529
15530 inline flatbuffers::Offset<SplitVOptions> CreateSplitVOptions(flatbuffers::FlatBufferBuilder &_fbb, const SplitVOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15531 (void)_rehasher;
15532 (void)_o;
15533 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SplitVOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15534 auto _num_splits = _o->num_splits;
15535 return tflite::CreateSplitVOptions(
15536 _fbb,
15537 _num_splits);
15538 }
15539
15540 inline StridedSliceOptionsT *StridedSliceOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15541 auto _o = std::unique_ptr<StridedSliceOptionsT>(new StridedSliceOptionsT());
15542 UnPackTo(_o.get(), _resolver);
15543 return _o.release();
15544 }
15545
15546 inline void StridedSliceOptions::UnPackTo(StridedSliceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15547 (void)_o;
15548 (void)_resolver;
15549 { auto _e = begin_mask(); _o->begin_mask = _e; }
15550 { auto _e = end_mask(); _o->end_mask = _e; }
15551 { auto _e = ellipsis_mask(); _o->ellipsis_mask = _e; }
15552 { auto _e = new_axis_mask(); _o->new_axis_mask = _e; }
15553 { auto _e = shrink_axis_mask(); _o->shrink_axis_mask = _e; }
15554 }
15555
15556 inline flatbuffers::Offset<StridedSliceOptions> StridedSliceOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const StridedSliceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15557 return CreateStridedSliceOptions(_fbb, _o, _rehasher);
15558 }
15559
15560 inline flatbuffers::Offset<StridedSliceOptions> CreateStridedSliceOptions(flatbuffers::FlatBufferBuilder &_fbb, const StridedSliceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15561 (void)_rehasher;
15562 (void)_o;
15563 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const StridedSliceOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15564 auto _begin_mask = _o->begin_mask;
15565 auto _end_mask = _o->end_mask;
15566 auto _ellipsis_mask = _o->ellipsis_mask;
15567 auto _new_axis_mask = _o->new_axis_mask;
15568 auto _shrink_axis_mask = _o->shrink_axis_mask;
15569 return tflite::CreateStridedSliceOptions(
15570 _fbb,
15571 _begin_mask,
15572 _end_mask,
15573 _ellipsis_mask,
15574 _new_axis_mask,
15575 _shrink_axis_mask);
15576 }
15577
15578 inline LogSoftmaxOptionsT *LogSoftmaxOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15579 auto _o = std::unique_ptr<LogSoftmaxOptionsT>(new LogSoftmaxOptionsT());
15580 UnPackTo(_o.get(), _resolver);
15581 return _o.release();
15582 }
15583
15584 inline void LogSoftmaxOptions::UnPackTo(LogSoftmaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15585 (void)_o;
15586 (void)_resolver;
15587 }
15588
15589 inline flatbuffers::Offset<LogSoftmaxOptions> LogSoftmaxOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogSoftmaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15590 return CreateLogSoftmaxOptions(_fbb, _o, _rehasher);
15591 }
15592
15593 inline flatbuffers::Offset<LogSoftmaxOptions> CreateLogSoftmaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogSoftmaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15594 (void)_rehasher;
15595 (void)_o;
15596 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LogSoftmaxOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15597 return tflite::CreateLogSoftmaxOptions(
15598 _fbb);
15599 }
15600
15601 inline CastOptionsT *CastOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15602 auto _o = std::unique_ptr<CastOptionsT>(new CastOptionsT());
15603 UnPackTo(_o.get(), _resolver);
15604 return _o.release();
15605 }
15606
15607 inline void CastOptions::UnPackTo(CastOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15608 (void)_o;
15609 (void)_resolver;
15610 { auto _e = in_data_type(); _o->in_data_type = _e; }
15611 { auto _e = out_data_type(); _o->out_data_type = _e; }
15612 }
15613
15614 inline flatbuffers::Offset<CastOptions> CastOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const CastOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15615 return CreateCastOptions(_fbb, _o, _rehasher);
15616 }
15617
15618 inline flatbuffers::Offset<CastOptions> CreateCastOptions(flatbuffers::FlatBufferBuilder &_fbb, const CastOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15619 (void)_rehasher;
15620 (void)_o;
15621 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const CastOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15622 auto _in_data_type = _o->in_data_type;
15623 auto _out_data_type = _o->out_data_type;
15624 return tflite::CreateCastOptions(
15625 _fbb,
15626 _in_data_type,
15627 _out_data_type);
15628 }
15629
15630 inline DequantizeOptionsT *DequantizeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15631 auto _o = std::unique_ptr<DequantizeOptionsT>(new DequantizeOptionsT());
15632 UnPackTo(_o.get(), _resolver);
15633 return _o.release();
15634 }
15635
15636 inline void DequantizeOptions::UnPackTo(DequantizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15637 (void)_o;
15638 (void)_resolver;
15639 }
15640
15641 inline flatbuffers::Offset<DequantizeOptions> DequantizeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DequantizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15642 return CreateDequantizeOptions(_fbb, _o, _rehasher);
15643 }
15644
15645 inline flatbuffers::Offset<DequantizeOptions> CreateDequantizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const DequantizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15646 (void)_rehasher;
15647 (void)_o;
15648 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DequantizeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15649 return tflite::CreateDequantizeOptions(
15650 _fbb);
15651 }
15652
15653 inline MaximumMinimumOptionsT *MaximumMinimumOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15654 auto _o = std::unique_ptr<MaximumMinimumOptionsT>(new MaximumMinimumOptionsT());
15655 UnPackTo(_o.get(), _resolver);
15656 return _o.release();
15657 }
15658
15659 inline void MaximumMinimumOptions::UnPackTo(MaximumMinimumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15660 (void)_o;
15661 (void)_resolver;
15662 }
15663
15664 inline flatbuffers::Offset<MaximumMinimumOptions> MaximumMinimumOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const MaximumMinimumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15665 return CreateMaximumMinimumOptions(_fbb, _o, _rehasher);
15666 }
15667
15668 inline flatbuffers::Offset<MaximumMinimumOptions> CreateMaximumMinimumOptions(flatbuffers::FlatBufferBuilder &_fbb, const MaximumMinimumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15669 (void)_rehasher;
15670 (void)_o;
15671 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const MaximumMinimumOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15672 return tflite::CreateMaximumMinimumOptions(
15673 _fbb);
15674 }
15675
15676 inline TileOptionsT *TileOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15677 auto _o = std::unique_ptr<TileOptionsT>(new TileOptionsT());
15678 UnPackTo(_o.get(), _resolver);
15679 return _o.release();
15680 }
15681
15682 inline void TileOptions::UnPackTo(TileOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15683 (void)_o;
15684 (void)_resolver;
15685 }
15686
15687 inline flatbuffers::Offset<TileOptions> TileOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TileOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15688 return CreateTileOptions(_fbb, _o, _rehasher);
15689 }
15690
15691 inline flatbuffers::Offset<TileOptions> CreateTileOptions(flatbuffers::FlatBufferBuilder &_fbb, const TileOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15692 (void)_rehasher;
15693 (void)_o;
15694 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TileOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15695 return tflite::CreateTileOptions(
15696 _fbb);
15697 }
15698
15699 inline ArgMaxOptionsT *ArgMaxOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15700 auto _o = std::unique_ptr<ArgMaxOptionsT>(new ArgMaxOptionsT());
15701 UnPackTo(_o.get(), _resolver);
15702 return _o.release();
15703 }
15704
15705 inline void ArgMaxOptions::UnPackTo(ArgMaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15706 (void)_o;
15707 (void)_resolver;
15708 { auto _e = output_type(); _o->output_type = _e; }
15709 }
15710
15711 inline flatbuffers::Offset<ArgMaxOptions> ArgMaxOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ArgMaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15712 return CreateArgMaxOptions(_fbb, _o, _rehasher);
15713 }
15714
15715 inline flatbuffers::Offset<ArgMaxOptions> CreateArgMaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const ArgMaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15716 (void)_rehasher;
15717 (void)_o;
15718 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ArgMaxOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15719 auto _output_type = _o->output_type;
15720 return tflite::CreateArgMaxOptions(
15721 _fbb,
15722 _output_type);
15723 }
15724
15725 inline ArgMinOptionsT *ArgMinOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15726 auto _o = std::unique_ptr<ArgMinOptionsT>(new ArgMinOptionsT());
15727 UnPackTo(_o.get(), _resolver);
15728 return _o.release();
15729 }
15730
15731 inline void ArgMinOptions::UnPackTo(ArgMinOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15732 (void)_o;
15733 (void)_resolver;
15734 { auto _e = output_type(); _o->output_type = _e; }
15735 }
15736
15737 inline flatbuffers::Offset<ArgMinOptions> ArgMinOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ArgMinOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15738 return CreateArgMinOptions(_fbb, _o, _rehasher);
15739 }
15740
15741 inline flatbuffers::Offset<ArgMinOptions> CreateArgMinOptions(flatbuffers::FlatBufferBuilder &_fbb, const ArgMinOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15742 (void)_rehasher;
15743 (void)_o;
15744 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ArgMinOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15745 auto _output_type = _o->output_type;
15746 return tflite::CreateArgMinOptions(
15747 _fbb,
15748 _output_type);
15749 }
15750
15751 inline GreaterOptionsT *GreaterOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15752 auto _o = std::unique_ptr<GreaterOptionsT>(new GreaterOptionsT());
15753 UnPackTo(_o.get(), _resolver);
15754 return _o.release();
15755 }
15756
15757 inline void GreaterOptions::UnPackTo(GreaterOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15758 (void)_o;
15759 (void)_resolver;
15760 }
15761
15762 inline flatbuffers::Offset<GreaterOptions> GreaterOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const GreaterOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15763 return CreateGreaterOptions(_fbb, _o, _rehasher);
15764 }
15765
15766 inline flatbuffers::Offset<GreaterOptions> CreateGreaterOptions(flatbuffers::FlatBufferBuilder &_fbb, const GreaterOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15767 (void)_rehasher;
15768 (void)_o;
15769 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const GreaterOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15770 return tflite::CreateGreaterOptions(
15771 _fbb);
15772 }
15773
15774 inline GreaterEqualOptionsT *GreaterEqualOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15775 auto _o = std::unique_ptr<GreaterEqualOptionsT>(new GreaterEqualOptionsT());
15776 UnPackTo(_o.get(), _resolver);
15777 return _o.release();
15778 }
15779
15780 inline void GreaterEqualOptions::UnPackTo(GreaterEqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15781 (void)_o;
15782 (void)_resolver;
15783 }
15784
15785 inline flatbuffers::Offset<GreaterEqualOptions> GreaterEqualOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const GreaterEqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15786 return CreateGreaterEqualOptions(_fbb, _o, _rehasher);
15787 }
15788
15789 inline flatbuffers::Offset<GreaterEqualOptions> CreateGreaterEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const GreaterEqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15790 (void)_rehasher;
15791 (void)_o;
15792 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const GreaterEqualOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15793 return tflite::CreateGreaterEqualOptions(
15794 _fbb);
15795 }
15796
15797 inline LessOptionsT *LessOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15798 auto _o = std::unique_ptr<LessOptionsT>(new LessOptionsT());
15799 UnPackTo(_o.get(), _resolver);
15800 return _o.release();
15801 }
15802
15803 inline void LessOptions::UnPackTo(LessOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15804 (void)_o;
15805 (void)_resolver;
15806 }
15807
15808 inline flatbuffers::Offset<LessOptions> LessOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LessOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15809 return CreateLessOptions(_fbb, _o, _rehasher);
15810 }
15811
15812 inline flatbuffers::Offset<LessOptions> CreateLessOptions(flatbuffers::FlatBufferBuilder &_fbb, const LessOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15813 (void)_rehasher;
15814 (void)_o;
15815 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LessOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15816 return tflite::CreateLessOptions(
15817 _fbb);
15818 }
15819
15820 inline LessEqualOptionsT *LessEqualOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15821 auto _o = std::unique_ptr<LessEqualOptionsT>(new LessEqualOptionsT());
15822 UnPackTo(_o.get(), _resolver);
15823 return _o.release();
15824 }
15825
15826 inline void LessEqualOptions::UnPackTo(LessEqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15827 (void)_o;
15828 (void)_resolver;
15829 }
15830
15831 inline flatbuffers::Offset<LessEqualOptions> LessEqualOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LessEqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15832 return CreateLessEqualOptions(_fbb, _o, _rehasher);
15833 }
15834
15835 inline flatbuffers::Offset<LessEqualOptions> CreateLessEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const LessEqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15836 (void)_rehasher;
15837 (void)_o;
15838 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LessEqualOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15839 return tflite::CreateLessEqualOptions(
15840 _fbb);
15841 }
15842
15843 inline NegOptionsT *NegOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15844 auto _o = std::unique_ptr<NegOptionsT>(new NegOptionsT());
15845 UnPackTo(_o.get(), _resolver);
15846 return _o.release();
15847 }
15848
15849 inline void NegOptions::UnPackTo(NegOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15850 (void)_o;
15851 (void)_resolver;
15852 }
15853
15854 inline flatbuffers::Offset<NegOptions> NegOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const NegOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15855 return CreateNegOptions(_fbb, _o, _rehasher);
15856 }
15857
15858 inline flatbuffers::Offset<NegOptions> CreateNegOptions(flatbuffers::FlatBufferBuilder &_fbb, const NegOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15859 (void)_rehasher;
15860 (void)_o;
15861 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const NegOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15862 return tflite::CreateNegOptions(
15863 _fbb);
15864 }
15865
15866 inline SelectOptionsT *SelectOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15867 auto _o = std::unique_ptr<SelectOptionsT>(new SelectOptionsT());
15868 UnPackTo(_o.get(), _resolver);
15869 return _o.release();
15870 }
15871
15872 inline void SelectOptions::UnPackTo(SelectOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15873 (void)_o;
15874 (void)_resolver;
15875 }
15876
15877 inline flatbuffers::Offset<SelectOptions> SelectOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SelectOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15878 return CreateSelectOptions(_fbb, _o, _rehasher);
15879 }
15880
15881 inline flatbuffers::Offset<SelectOptions> CreateSelectOptions(flatbuffers::FlatBufferBuilder &_fbb, const SelectOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15882 (void)_rehasher;
15883 (void)_o;
15884 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SelectOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15885 return tflite::CreateSelectOptions(
15886 _fbb);
15887 }
15888
15889 inline SliceOptionsT *SliceOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15890 auto _o = std::unique_ptr<SliceOptionsT>(new SliceOptionsT());
15891 UnPackTo(_o.get(), _resolver);
15892 return _o.release();
15893 }
15894
15895 inline void SliceOptions::UnPackTo(SliceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15896 (void)_o;
15897 (void)_resolver;
15898 }
15899
15900 inline flatbuffers::Offset<SliceOptions> SliceOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SliceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15901 return CreateSliceOptions(_fbb, _o, _rehasher);
15902 }
15903
15904 inline flatbuffers::Offset<SliceOptions> CreateSliceOptions(flatbuffers::FlatBufferBuilder &_fbb, const SliceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15905 (void)_rehasher;
15906 (void)_o;
15907 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SliceOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15908 return tflite::CreateSliceOptions(
15909 _fbb);
15910 }
15911
15912 inline TransposeConvOptionsT *TransposeConvOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15913 auto _o = std::unique_ptr<TransposeConvOptionsT>(new TransposeConvOptionsT());
15914 UnPackTo(_o.get(), _resolver);
15915 return _o.release();
15916 }
15917
15918 inline void TransposeConvOptions::UnPackTo(TransposeConvOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15919 (void)_o;
15920 (void)_resolver;
15921 { auto _e = padding(); _o->padding = _e; }
15922 { auto _e = stride_w(); _o->stride_w = _e; }
15923 { auto _e = stride_h(); _o->stride_h = _e; }
15924 }
15925
15926 inline flatbuffers::Offset<TransposeConvOptions> TransposeConvOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TransposeConvOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15927 return CreateTransposeConvOptions(_fbb, _o, _rehasher);
15928 }
15929
15930 inline flatbuffers::Offset<TransposeConvOptions> CreateTransposeConvOptions(flatbuffers::FlatBufferBuilder &_fbb, const TransposeConvOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15931 (void)_rehasher;
15932 (void)_o;
15933 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TransposeConvOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15934 auto _padding = _o->padding;
15935 auto _stride_w = _o->stride_w;
15936 auto _stride_h = _o->stride_h;
15937 return tflite::CreateTransposeConvOptions(
15938 _fbb,
15939 _padding,
15940 _stride_w,
15941 _stride_h);
15942 }
15943
15944 inline ExpandDimsOptionsT *ExpandDimsOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15945 auto _o = std::unique_ptr<ExpandDimsOptionsT>(new ExpandDimsOptionsT());
15946 UnPackTo(_o.get(), _resolver);
15947 return _o.release();
15948 }
15949
15950 inline void ExpandDimsOptions::UnPackTo(ExpandDimsOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15951 (void)_o;
15952 (void)_resolver;
15953 }
15954
15955 inline flatbuffers::Offset<ExpandDimsOptions> ExpandDimsOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ExpandDimsOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15956 return CreateExpandDimsOptions(_fbb, _o, _rehasher);
15957 }
15958
15959 inline flatbuffers::Offset<ExpandDimsOptions> CreateExpandDimsOptions(flatbuffers::FlatBufferBuilder &_fbb, const ExpandDimsOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15960 (void)_rehasher;
15961 (void)_o;
15962 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ExpandDimsOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15963 return tflite::CreateExpandDimsOptions(
15964 _fbb);
15965 }
15966
15967 inline SparseToDenseOptionsT *SparseToDenseOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15968 auto _o = std::unique_ptr<SparseToDenseOptionsT>(new SparseToDenseOptionsT());
15969 UnPackTo(_o.get(), _resolver);
15970 return _o.release();
15971 }
15972
15973 inline void SparseToDenseOptions::UnPackTo(SparseToDenseOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
15974 (void)_o;
15975 (void)_resolver;
15976 { auto _e = validate_indices(); _o->validate_indices = _e; }
15977 }
15978
15979 inline flatbuffers::Offset<SparseToDenseOptions> SparseToDenseOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SparseToDenseOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
15980 return CreateSparseToDenseOptions(_fbb, _o, _rehasher);
15981 }
15982
15983 inline flatbuffers::Offset<SparseToDenseOptions> CreateSparseToDenseOptions(flatbuffers::FlatBufferBuilder &_fbb, const SparseToDenseOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
15984 (void)_rehasher;
15985 (void)_o;
15986 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SparseToDenseOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
15987 auto _validate_indices = _o->validate_indices;
15988 return tflite::CreateSparseToDenseOptions(
15989 _fbb,
15990 _validate_indices);
15991 }
15992
15993 inline EqualOptionsT *EqualOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
15994 auto _o = std::unique_ptr<EqualOptionsT>(new EqualOptionsT());
15995 UnPackTo(_o.get(), _resolver);
15996 return _o.release();
15997 }
15998
15999 inline void EqualOptions::UnPackTo(EqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16000 (void)_o;
16001 (void)_resolver;
16002 }
16003
16004 inline flatbuffers::Offset<EqualOptions> EqualOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const EqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16005 return CreateEqualOptions(_fbb, _o, _rehasher);
16006 }
16007
16008 inline flatbuffers::Offset<EqualOptions> CreateEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const EqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16009 (void)_rehasher;
16010 (void)_o;
16011 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const EqualOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16012 return tflite::CreateEqualOptions(
16013 _fbb);
16014 }
16015
16016 inline NotEqualOptionsT *NotEqualOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16017 auto _o = std::unique_ptr<NotEqualOptionsT>(new NotEqualOptionsT());
16018 UnPackTo(_o.get(), _resolver);
16019 return _o.release();
16020 }
16021
16022 inline void NotEqualOptions::UnPackTo(NotEqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16023 (void)_o;
16024 (void)_resolver;
16025 }
16026
16027 inline flatbuffers::Offset<NotEqualOptions> NotEqualOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const NotEqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16028 return CreateNotEqualOptions(_fbb, _o, _rehasher);
16029 }
16030
16031 inline flatbuffers::Offset<NotEqualOptions> CreateNotEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const NotEqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16032 (void)_rehasher;
16033 (void)_o;
16034 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const NotEqualOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16035 return tflite::CreateNotEqualOptions(
16036 _fbb);
16037 }
16038
16039 inline ShapeOptionsT *ShapeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16040 auto _o = std::unique_ptr<ShapeOptionsT>(new ShapeOptionsT());
16041 UnPackTo(_o.get(), _resolver);
16042 return _o.release();
16043 }
16044
16045 inline void ShapeOptions::UnPackTo(ShapeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16046 (void)_o;
16047 (void)_resolver;
16048 { auto _e = out_type(); _o->out_type = _e; }
16049 }
16050
16051 inline flatbuffers::Offset<ShapeOptions> ShapeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ShapeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16052 return CreateShapeOptions(_fbb, _o, _rehasher);
16053 }
16054
16055 inline flatbuffers::Offset<ShapeOptions> CreateShapeOptions(flatbuffers::FlatBufferBuilder &_fbb, const ShapeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16056 (void)_rehasher;
16057 (void)_o;
16058 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ShapeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16059 auto _out_type = _o->out_type;
16060 return tflite::CreateShapeOptions(
16061 _fbb,
16062 _out_type);
16063 }
16064
16065 inline RankOptionsT *RankOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16066 auto _o = std::unique_ptr<RankOptionsT>(new RankOptionsT());
16067 UnPackTo(_o.get(), _resolver);
16068 return _o.release();
16069 }
16070
16071 inline void RankOptions::UnPackTo(RankOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16072 (void)_o;
16073 (void)_resolver;
16074 }
16075
16076 inline flatbuffers::Offset<RankOptions> RankOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const RankOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16077 return CreateRankOptions(_fbb, _o, _rehasher);
16078 }
16079
16080 inline flatbuffers::Offset<RankOptions> CreateRankOptions(flatbuffers::FlatBufferBuilder &_fbb, const RankOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16081 (void)_rehasher;
16082 (void)_o;
16083 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const RankOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16084 return tflite::CreateRankOptions(
16085 _fbb);
16086 }
16087
16088 inline PowOptionsT *PowOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16089 auto _o = std::unique_ptr<PowOptionsT>(new PowOptionsT());
16090 UnPackTo(_o.get(), _resolver);
16091 return _o.release();
16092 }
16093
16094 inline void PowOptions::UnPackTo(PowOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16095 (void)_o;
16096 (void)_resolver;
16097 }
16098
16099 inline flatbuffers::Offset<PowOptions> PowOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const PowOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16100 return CreatePowOptions(_fbb, _o, _rehasher);
16101 }
16102
16103 inline flatbuffers::Offset<PowOptions> CreatePowOptions(flatbuffers::FlatBufferBuilder &_fbb, const PowOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16104 (void)_rehasher;
16105 (void)_o;
16106 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const PowOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16107 return tflite::CreatePowOptions(
16108 _fbb);
16109 }
16110
16111 inline FakeQuantOptionsT *FakeQuantOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16112 auto _o = std::unique_ptr<FakeQuantOptionsT>(new FakeQuantOptionsT());
16113 UnPackTo(_o.get(), _resolver);
16114 return _o.release();
16115 }
16116
16117 inline void FakeQuantOptions::UnPackTo(FakeQuantOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16118 (void)_o;
16119 (void)_resolver;
16120 { auto _e = min(); _o->min = _e; }
16121 { auto _e = max(); _o->max = _e; }
16122 { auto _e = num_bits(); _o->num_bits = _e; }
16123 { auto _e = narrow_range(); _o->narrow_range = _e; }
16124 }
16125
16126 inline flatbuffers::Offset<FakeQuantOptions> FakeQuantOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const FakeQuantOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16127 return CreateFakeQuantOptions(_fbb, _o, _rehasher);
16128 }
16129
16130 inline flatbuffers::Offset<FakeQuantOptions> CreateFakeQuantOptions(flatbuffers::FlatBufferBuilder &_fbb, const FakeQuantOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16131 (void)_rehasher;
16132 (void)_o;
16133 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const FakeQuantOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16134 auto _min = _o->min;
16135 auto _max = _o->max;
16136 auto _num_bits = _o->num_bits;
16137 auto _narrow_range = _o->narrow_range;
16138 return tflite::CreateFakeQuantOptions(
16139 _fbb,
16140 _min,
16141 _max,
16142 _num_bits,
16143 _narrow_range);
16144 }
16145
16146 inline PackOptionsT *PackOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16147 auto _o = std::unique_ptr<PackOptionsT>(new PackOptionsT());
16148 UnPackTo(_o.get(), _resolver);
16149 return _o.release();
16150 }
16151
16152 inline void PackOptions::UnPackTo(PackOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16153 (void)_o;
16154 (void)_resolver;
16155 { auto _e = values_count(); _o->values_count = _e; }
16156 { auto _e = axis(); _o->axis = _e; }
16157 }
16158
16159 inline flatbuffers::Offset<PackOptions> PackOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const PackOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16160 return CreatePackOptions(_fbb, _o, _rehasher);
16161 }
16162
16163 inline flatbuffers::Offset<PackOptions> CreatePackOptions(flatbuffers::FlatBufferBuilder &_fbb, const PackOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16164 (void)_rehasher;
16165 (void)_o;
16166 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const PackOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16167 auto _values_count = _o->values_count;
16168 auto _axis = _o->axis;
16169 return tflite::CreatePackOptions(
16170 _fbb,
16171 _values_count,
16172 _axis);
16173 }
16174
16175 inline LogicalOrOptionsT *LogicalOrOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16176 auto _o = std::unique_ptr<LogicalOrOptionsT>(new LogicalOrOptionsT());
16177 UnPackTo(_o.get(), _resolver);
16178 return _o.release();
16179 }
16180
16181 inline void LogicalOrOptions::UnPackTo(LogicalOrOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16182 (void)_o;
16183 (void)_resolver;
16184 }
16185
16186 inline flatbuffers::Offset<LogicalOrOptions> LogicalOrOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogicalOrOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16187 return CreateLogicalOrOptions(_fbb, _o, _rehasher);
16188 }
16189
16190 inline flatbuffers::Offset<LogicalOrOptions> CreateLogicalOrOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogicalOrOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16191 (void)_rehasher;
16192 (void)_o;
16193 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LogicalOrOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16194 return tflite::CreateLogicalOrOptions(
16195 _fbb);
16196 }
16197
16198 inline OneHotOptionsT *OneHotOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16199 auto _o = std::unique_ptr<OneHotOptionsT>(new OneHotOptionsT());
16200 UnPackTo(_o.get(), _resolver);
16201 return _o.release();
16202 }
16203
16204 inline void OneHotOptions::UnPackTo(OneHotOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16205 (void)_o;
16206 (void)_resolver;
16207 { auto _e = axis(); _o->axis = _e; }
16208 }
16209
16210 inline flatbuffers::Offset<OneHotOptions> OneHotOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const OneHotOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16211 return CreateOneHotOptions(_fbb, _o, _rehasher);
16212 }
16213
16214 inline flatbuffers::Offset<OneHotOptions> CreateOneHotOptions(flatbuffers::FlatBufferBuilder &_fbb, const OneHotOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16215 (void)_rehasher;
16216 (void)_o;
16217 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const OneHotOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16218 auto _axis = _o->axis;
16219 return tflite::CreateOneHotOptions(
16220 _fbb,
16221 _axis);
16222 }
16223
16224 inline AbsOptionsT *AbsOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16225 auto _o = std::unique_ptr<AbsOptionsT>(new AbsOptionsT());
16226 UnPackTo(_o.get(), _resolver);
16227 return _o.release();
16228 }
16229
16230 inline void AbsOptions::UnPackTo(AbsOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16231 (void)_o;
16232 (void)_resolver;
16233 }
16234
16235 inline flatbuffers::Offset<AbsOptions> AbsOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const AbsOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16236 return CreateAbsOptions(_fbb, _o, _rehasher);
16237 }
16238
16239 inline flatbuffers::Offset<AbsOptions> CreateAbsOptions(flatbuffers::FlatBufferBuilder &_fbb, const AbsOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16240 (void)_rehasher;
16241 (void)_o;
16242 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const AbsOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16243 return tflite::CreateAbsOptions(
16244 _fbb);
16245 }
16246
16247 inline HardSwishOptionsT *HardSwishOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16248 auto _o = std::unique_ptr<HardSwishOptionsT>(new HardSwishOptionsT());
16249 UnPackTo(_o.get(), _resolver);
16250 return _o.release();
16251 }
16252
16253 inline void HardSwishOptions::UnPackTo(HardSwishOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16254 (void)_o;
16255 (void)_resolver;
16256 }
16257
16258 inline flatbuffers::Offset<HardSwishOptions> HardSwishOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const HardSwishOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16259 return CreateHardSwishOptions(_fbb, _o, _rehasher);
16260 }
16261
16262 inline flatbuffers::Offset<HardSwishOptions> CreateHardSwishOptions(flatbuffers::FlatBufferBuilder &_fbb, const HardSwishOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16263 (void)_rehasher;
16264 (void)_o;
16265 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const HardSwishOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16266 return tflite::CreateHardSwishOptions(
16267 _fbb);
16268 }
16269
16270 inline LogicalAndOptionsT *LogicalAndOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16271 auto _o = std::unique_ptr<LogicalAndOptionsT>(new LogicalAndOptionsT());
16272 UnPackTo(_o.get(), _resolver);
16273 return _o.release();
16274 }
16275
16276 inline void LogicalAndOptions::UnPackTo(LogicalAndOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16277 (void)_o;
16278 (void)_resolver;
16279 }
16280
16281 inline flatbuffers::Offset<LogicalAndOptions> LogicalAndOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogicalAndOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16282 return CreateLogicalAndOptions(_fbb, _o, _rehasher);
16283 }
16284
16285 inline flatbuffers::Offset<LogicalAndOptions> CreateLogicalAndOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogicalAndOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16286 (void)_rehasher;
16287 (void)_o;
16288 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LogicalAndOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16289 return tflite::CreateLogicalAndOptions(
16290 _fbb);
16291 }
16292
16293 inline LogicalNotOptionsT *LogicalNotOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16294 auto _o = std::unique_ptr<LogicalNotOptionsT>(new LogicalNotOptionsT());
16295 UnPackTo(_o.get(), _resolver);
16296 return _o.release();
16297 }
16298
16299 inline void LogicalNotOptions::UnPackTo(LogicalNotOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16300 (void)_o;
16301 (void)_resolver;
16302 }
16303
16304 inline flatbuffers::Offset<LogicalNotOptions> LogicalNotOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogicalNotOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16305 return CreateLogicalNotOptions(_fbb, _o, _rehasher);
16306 }
16307
16308 inline flatbuffers::Offset<LogicalNotOptions> CreateLogicalNotOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogicalNotOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16309 (void)_rehasher;
16310 (void)_o;
16311 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LogicalNotOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16312 return tflite::CreateLogicalNotOptions(
16313 _fbb);
16314 }
16315
16316 inline UnpackOptionsT *UnpackOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16317 auto _o = std::unique_ptr<UnpackOptionsT>(new UnpackOptionsT());
16318 UnPackTo(_o.get(), _resolver);
16319 return _o.release();
16320 }
16321
16322 inline void UnpackOptions::UnPackTo(UnpackOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16323 (void)_o;
16324 (void)_resolver;
16325 { auto _e = num(); _o->num = _e; }
16326 { auto _e = axis(); _o->axis = _e; }
16327 }
16328
16329 inline flatbuffers::Offset<UnpackOptions> UnpackOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnpackOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16330 return CreateUnpackOptions(_fbb, _o, _rehasher);
16331 }
16332
16333 inline flatbuffers::Offset<UnpackOptions> CreateUnpackOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnpackOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16334 (void)_rehasher;
16335 (void)_o;
16336 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const UnpackOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16337 auto _num = _o->num;
16338 auto _axis = _o->axis;
16339 return tflite::CreateUnpackOptions(
16340 _fbb,
16341 _num,
16342 _axis);
16343 }
16344
16345 inline FloorDivOptionsT *FloorDivOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16346 auto _o = std::unique_ptr<FloorDivOptionsT>(new FloorDivOptionsT());
16347 UnPackTo(_o.get(), _resolver);
16348 return _o.release();
16349 }
16350
16351 inline void FloorDivOptions::UnPackTo(FloorDivOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16352 (void)_o;
16353 (void)_resolver;
16354 }
16355
16356 inline flatbuffers::Offset<FloorDivOptions> FloorDivOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const FloorDivOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16357 return CreateFloorDivOptions(_fbb, _o, _rehasher);
16358 }
16359
16360 inline flatbuffers::Offset<FloorDivOptions> CreateFloorDivOptions(flatbuffers::FlatBufferBuilder &_fbb, const FloorDivOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16361 (void)_rehasher;
16362 (void)_o;
16363 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const FloorDivOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16364 return tflite::CreateFloorDivOptions(
16365 _fbb);
16366 }
16367
16368 inline SquareOptionsT *SquareOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16369 auto _o = std::unique_ptr<SquareOptionsT>(new SquareOptionsT());
16370 UnPackTo(_o.get(), _resolver);
16371 return _o.release();
16372 }
16373
16374 inline void SquareOptions::UnPackTo(SquareOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16375 (void)_o;
16376 (void)_resolver;
16377 }
16378
16379 inline flatbuffers::Offset<SquareOptions> SquareOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SquareOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16380 return CreateSquareOptions(_fbb, _o, _rehasher);
16381 }
16382
16383 inline flatbuffers::Offset<SquareOptions> CreateSquareOptions(flatbuffers::FlatBufferBuilder &_fbb, const SquareOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16384 (void)_rehasher;
16385 (void)_o;
16386 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SquareOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16387 return tflite::CreateSquareOptions(
16388 _fbb);
16389 }
16390
16391 inline ZerosLikeOptionsT *ZerosLikeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16392 auto _o = std::unique_ptr<ZerosLikeOptionsT>(new ZerosLikeOptionsT());
16393 UnPackTo(_o.get(), _resolver);
16394 return _o.release();
16395 }
16396
16397 inline void ZerosLikeOptions::UnPackTo(ZerosLikeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16398 (void)_o;
16399 (void)_resolver;
16400 }
16401
16402 inline flatbuffers::Offset<ZerosLikeOptions> ZerosLikeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ZerosLikeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16403 return CreateZerosLikeOptions(_fbb, _o, _rehasher);
16404 }
16405
16406 inline flatbuffers::Offset<ZerosLikeOptions> CreateZerosLikeOptions(flatbuffers::FlatBufferBuilder &_fbb, const ZerosLikeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16407 (void)_rehasher;
16408 (void)_o;
16409 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ZerosLikeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16410 return tflite::CreateZerosLikeOptions(
16411 _fbb);
16412 }
16413
16414 inline FillOptionsT *FillOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16415 auto _o = std::unique_ptr<FillOptionsT>(new FillOptionsT());
16416 UnPackTo(_o.get(), _resolver);
16417 return _o.release();
16418 }
16419
16420 inline void FillOptions::UnPackTo(FillOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16421 (void)_o;
16422 (void)_resolver;
16423 }
16424
16425 inline flatbuffers::Offset<FillOptions> FillOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const FillOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16426 return CreateFillOptions(_fbb, _o, _rehasher);
16427 }
16428
16429 inline flatbuffers::Offset<FillOptions> CreateFillOptions(flatbuffers::FlatBufferBuilder &_fbb, const FillOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16430 (void)_rehasher;
16431 (void)_o;
16432 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const FillOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16433 return tflite::CreateFillOptions(
16434 _fbb);
16435 }
16436
16437 inline FloorModOptionsT *FloorModOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16438 auto _o = std::unique_ptr<FloorModOptionsT>(new FloorModOptionsT());
16439 UnPackTo(_o.get(), _resolver);
16440 return _o.release();
16441 }
16442
16443 inline void FloorModOptions::UnPackTo(FloorModOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16444 (void)_o;
16445 (void)_resolver;
16446 }
16447
16448 inline flatbuffers::Offset<FloorModOptions> FloorModOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const FloorModOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16449 return CreateFloorModOptions(_fbb, _o, _rehasher);
16450 }
16451
16452 inline flatbuffers::Offset<FloorModOptions> CreateFloorModOptions(flatbuffers::FlatBufferBuilder &_fbb, const FloorModOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16453 (void)_rehasher;
16454 (void)_o;
16455 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const FloorModOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16456 return tflite::CreateFloorModOptions(
16457 _fbb);
16458 }
16459
16460 inline RangeOptionsT *RangeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16461 auto _o = std::unique_ptr<RangeOptionsT>(new RangeOptionsT());
16462 UnPackTo(_o.get(), _resolver);
16463 return _o.release();
16464 }
16465
16466 inline void RangeOptions::UnPackTo(RangeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16467 (void)_o;
16468 (void)_resolver;
16469 }
16470
16471 inline flatbuffers::Offset<RangeOptions> RangeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const RangeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16472 return CreateRangeOptions(_fbb, _o, _rehasher);
16473 }
16474
16475 inline flatbuffers::Offset<RangeOptions> CreateRangeOptions(flatbuffers::FlatBufferBuilder &_fbb, const RangeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16476 (void)_rehasher;
16477 (void)_o;
16478 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const RangeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16479 return tflite::CreateRangeOptions(
16480 _fbb);
16481 }
16482
16483 inline LeakyReluOptionsT *LeakyReluOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16484 auto _o = std::unique_ptr<LeakyReluOptionsT>(new LeakyReluOptionsT());
16485 UnPackTo(_o.get(), _resolver);
16486 return _o.release();
16487 }
16488
16489 inline void LeakyReluOptions::UnPackTo(LeakyReluOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16490 (void)_o;
16491 (void)_resolver;
16492 { auto _e = alpha(); _o->alpha = _e; }
16493 }
16494
16495 inline flatbuffers::Offset<LeakyReluOptions> LeakyReluOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LeakyReluOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16496 return CreateLeakyReluOptions(_fbb, _o, _rehasher);
16497 }
16498
16499 inline flatbuffers::Offset<LeakyReluOptions> CreateLeakyReluOptions(flatbuffers::FlatBufferBuilder &_fbb, const LeakyReluOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16500 (void)_rehasher;
16501 (void)_o;
16502 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LeakyReluOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16503 auto _alpha = _o->alpha;
16504 return tflite::CreateLeakyReluOptions(
16505 _fbb,
16506 _alpha);
16507 }
16508
16509 inline SquaredDifferenceOptionsT *SquaredDifferenceOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16510 auto _o = std::unique_ptr<SquaredDifferenceOptionsT>(new SquaredDifferenceOptionsT());
16511 UnPackTo(_o.get(), _resolver);
16512 return _o.release();
16513 }
16514
16515 inline void SquaredDifferenceOptions::UnPackTo(SquaredDifferenceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16516 (void)_o;
16517 (void)_resolver;
16518 }
16519
16520 inline flatbuffers::Offset<SquaredDifferenceOptions> SquaredDifferenceOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SquaredDifferenceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16521 return CreateSquaredDifferenceOptions(_fbb, _o, _rehasher);
16522 }
16523
16524 inline flatbuffers::Offset<SquaredDifferenceOptions> CreateSquaredDifferenceOptions(flatbuffers::FlatBufferBuilder &_fbb, const SquaredDifferenceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16525 (void)_rehasher;
16526 (void)_o;
16527 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SquaredDifferenceOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16528 return tflite::CreateSquaredDifferenceOptions(
16529 _fbb);
16530 }
16531
16532 inline MirrorPadOptionsT *MirrorPadOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16533 auto _o = std::unique_ptr<MirrorPadOptionsT>(new MirrorPadOptionsT());
16534 UnPackTo(_o.get(), _resolver);
16535 return _o.release();
16536 }
16537
16538 inline void MirrorPadOptions::UnPackTo(MirrorPadOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16539 (void)_o;
16540 (void)_resolver;
16541 { auto _e = mode(); _o->mode = _e; }
16542 }
16543
16544 inline flatbuffers::Offset<MirrorPadOptions> MirrorPadOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const MirrorPadOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16545 return CreateMirrorPadOptions(_fbb, _o, _rehasher);
16546 }
16547
16548 inline flatbuffers::Offset<MirrorPadOptions> CreateMirrorPadOptions(flatbuffers::FlatBufferBuilder &_fbb, const MirrorPadOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16549 (void)_rehasher;
16550 (void)_o;
16551 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const MirrorPadOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16552 auto _mode = _o->mode;
16553 return tflite::CreateMirrorPadOptions(
16554 _fbb,
16555 _mode);
16556 }
16557
16558 inline UniqueOptionsT *UniqueOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16559 auto _o = std::unique_ptr<UniqueOptionsT>(new UniqueOptionsT());
16560 UnPackTo(_o.get(), _resolver);
16561 return _o.release();
16562 }
16563
16564 inline void UniqueOptions::UnPackTo(UniqueOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16565 (void)_o;
16566 (void)_resolver;
16567 { auto _e = idx_out_type(); _o->idx_out_type = _e; }
16568 }
16569
16570 inline flatbuffers::Offset<UniqueOptions> UniqueOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const UniqueOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16571 return CreateUniqueOptions(_fbb, _o, _rehasher);
16572 }
16573
16574 inline flatbuffers::Offset<UniqueOptions> CreateUniqueOptions(flatbuffers::FlatBufferBuilder &_fbb, const UniqueOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16575 (void)_rehasher;
16576 (void)_o;
16577 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const UniqueOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16578 auto _idx_out_type = _o->idx_out_type;
16579 return tflite::CreateUniqueOptions(
16580 _fbb,
16581 _idx_out_type);
16582 }
16583
16584 inline ReverseV2OptionsT *ReverseV2Options::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16585 auto _o = std::unique_ptr<ReverseV2OptionsT>(new ReverseV2OptionsT());
16586 UnPackTo(_o.get(), _resolver);
16587 return _o.release();
16588 }
16589
16590 inline void ReverseV2Options::UnPackTo(ReverseV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16591 (void)_o;
16592 (void)_resolver;
16593 }
16594
16595 inline flatbuffers::Offset<ReverseV2Options> ReverseV2Options::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReverseV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16596 return CreateReverseV2Options(_fbb, _o, _rehasher);
16597 }
16598
16599 inline flatbuffers::Offset<ReverseV2Options> CreateReverseV2Options(flatbuffers::FlatBufferBuilder &_fbb, const ReverseV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16600 (void)_rehasher;
16601 (void)_o;
16602 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ReverseV2OptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16603 return tflite::CreateReverseV2Options(
16604 _fbb);
16605 }
16606
16607 inline AddNOptionsT *AddNOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16608 auto _o = std::unique_ptr<AddNOptionsT>(new AddNOptionsT());
16609 UnPackTo(_o.get(), _resolver);
16610 return _o.release();
16611 }
16612
16613 inline void AddNOptions::UnPackTo(AddNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16614 (void)_o;
16615 (void)_resolver;
16616 }
16617
16618 inline flatbuffers::Offset<AddNOptions> AddNOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const AddNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16619 return CreateAddNOptions(_fbb, _o, _rehasher);
16620 }
16621
16622 inline flatbuffers::Offset<AddNOptions> CreateAddNOptions(flatbuffers::FlatBufferBuilder &_fbb, const AddNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16623 (void)_rehasher;
16624 (void)_o;
16625 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const AddNOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16626 return tflite::CreateAddNOptions(
16627 _fbb);
16628 }
16629
16630 inline GatherNdOptionsT *GatherNdOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16631 auto _o = std::unique_ptr<GatherNdOptionsT>(new GatherNdOptionsT());
16632 UnPackTo(_o.get(), _resolver);
16633 return _o.release();
16634 }
16635
16636 inline void GatherNdOptions::UnPackTo(GatherNdOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16637 (void)_o;
16638 (void)_resolver;
16639 }
16640
16641 inline flatbuffers::Offset<GatherNdOptions> GatherNdOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const GatherNdOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16642 return CreateGatherNdOptions(_fbb, _o, _rehasher);
16643 }
16644
16645 inline flatbuffers::Offset<GatherNdOptions> CreateGatherNdOptions(flatbuffers::FlatBufferBuilder &_fbb, const GatherNdOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16646 (void)_rehasher;
16647 (void)_o;
16648 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const GatherNdOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16649 return tflite::CreateGatherNdOptions(
16650 _fbb);
16651 }
16652
16653 inline WhereOptionsT *WhereOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16654 auto _o = std::unique_ptr<WhereOptionsT>(new WhereOptionsT());
16655 UnPackTo(_o.get(), _resolver);
16656 return _o.release();
16657 }
16658
16659 inline void WhereOptions::UnPackTo(WhereOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16660 (void)_o;
16661 (void)_resolver;
16662 }
16663
16664 inline flatbuffers::Offset<WhereOptions> WhereOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const WhereOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16665 return CreateWhereOptions(_fbb, _o, _rehasher);
16666 }
16667
16668 inline flatbuffers::Offset<WhereOptions> CreateWhereOptions(flatbuffers::FlatBufferBuilder &_fbb, const WhereOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16669 (void)_rehasher;
16670 (void)_o;
16671 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const WhereOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16672 return tflite::CreateWhereOptions(
16673 _fbb);
16674 }
16675
16676 inline ReverseSequenceOptionsT *ReverseSequenceOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16677 auto _o = std::unique_ptr<ReverseSequenceOptionsT>(new ReverseSequenceOptionsT());
16678 UnPackTo(_o.get(), _resolver);
16679 return _o.release();
16680 }
16681
16682 inline void ReverseSequenceOptions::UnPackTo(ReverseSequenceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16683 (void)_o;
16684 (void)_resolver;
16685 { auto _e = seq_dim(); _o->seq_dim = _e; }
16686 { auto _e = batch_dim(); _o->batch_dim = _e; }
16687 }
16688
16689 inline flatbuffers::Offset<ReverseSequenceOptions> ReverseSequenceOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReverseSequenceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16690 return CreateReverseSequenceOptions(_fbb, _o, _rehasher);
16691 }
16692
16693 inline flatbuffers::Offset<ReverseSequenceOptions> CreateReverseSequenceOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReverseSequenceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16694 (void)_rehasher;
16695 (void)_o;
16696 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ReverseSequenceOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16697 auto _seq_dim = _o->seq_dim;
16698 auto _batch_dim = _o->batch_dim;
16699 return tflite::CreateReverseSequenceOptions(
16700 _fbb,
16701 _seq_dim,
16702 _batch_dim);
16703 }
16704
16705 inline MatrixDiagOptionsT *MatrixDiagOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16706 auto _o = std::unique_ptr<MatrixDiagOptionsT>(new MatrixDiagOptionsT());
16707 UnPackTo(_o.get(), _resolver);
16708 return _o.release();
16709 }
16710
16711 inline void MatrixDiagOptions::UnPackTo(MatrixDiagOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16712 (void)_o;
16713 (void)_resolver;
16714 }
16715
16716 inline flatbuffers::Offset<MatrixDiagOptions> MatrixDiagOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const MatrixDiagOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16717 return CreateMatrixDiagOptions(_fbb, _o, _rehasher);
16718 }
16719
16720 inline flatbuffers::Offset<MatrixDiagOptions> CreateMatrixDiagOptions(flatbuffers::FlatBufferBuilder &_fbb, const MatrixDiagOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16721 (void)_rehasher;
16722 (void)_o;
16723 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const MatrixDiagOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16724 return tflite::CreateMatrixDiagOptions(
16725 _fbb);
16726 }
16727
16728 inline QuantizeOptionsT *QuantizeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16729 auto _o = std::unique_ptr<QuantizeOptionsT>(new QuantizeOptionsT());
16730 UnPackTo(_o.get(), _resolver);
16731 return _o.release();
16732 }
16733
16734 inline void QuantizeOptions::UnPackTo(QuantizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16735 (void)_o;
16736 (void)_resolver;
16737 }
16738
16739 inline flatbuffers::Offset<QuantizeOptions> QuantizeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const QuantizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16740 return CreateQuantizeOptions(_fbb, _o, _rehasher);
16741 }
16742
16743 inline flatbuffers::Offset<QuantizeOptions> CreateQuantizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const QuantizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16744 (void)_rehasher;
16745 (void)_o;
16746 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const QuantizeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16747 return tflite::CreateQuantizeOptions(
16748 _fbb);
16749 }
16750
16751 inline MatrixSetDiagOptionsT *MatrixSetDiagOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16752 auto _o = std::unique_ptr<MatrixSetDiagOptionsT>(new MatrixSetDiagOptionsT());
16753 UnPackTo(_o.get(), _resolver);
16754 return _o.release();
16755 }
16756
16757 inline void MatrixSetDiagOptions::UnPackTo(MatrixSetDiagOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16758 (void)_o;
16759 (void)_resolver;
16760 }
16761
16762 inline flatbuffers::Offset<MatrixSetDiagOptions> MatrixSetDiagOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const MatrixSetDiagOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16763 return CreateMatrixSetDiagOptions(_fbb, _o, _rehasher);
16764 }
16765
16766 inline flatbuffers::Offset<MatrixSetDiagOptions> CreateMatrixSetDiagOptions(flatbuffers::FlatBufferBuilder &_fbb, const MatrixSetDiagOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16767 (void)_rehasher;
16768 (void)_o;
16769 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const MatrixSetDiagOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16770 return tflite::CreateMatrixSetDiagOptions(
16771 _fbb);
16772 }
16773
16774 inline IfOptionsT *IfOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16775 auto _o = std::unique_ptr<IfOptionsT>(new IfOptionsT());
16776 UnPackTo(_o.get(), _resolver);
16777 return _o.release();
16778 }
16779
16780 inline void IfOptions::UnPackTo(IfOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16781 (void)_o;
16782 (void)_resolver;
16783 { auto _e = then_subgraph_index(); _o->then_subgraph_index = _e; }
16784 { auto _e = else_subgraph_index(); _o->else_subgraph_index = _e; }
16785 }
16786
16787 inline flatbuffers::Offset<IfOptions> IfOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const IfOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16788 return CreateIfOptions(_fbb, _o, _rehasher);
16789 }
16790
16791 inline flatbuffers::Offset<IfOptions> CreateIfOptions(flatbuffers::FlatBufferBuilder &_fbb, const IfOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16792 (void)_rehasher;
16793 (void)_o;
16794 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const IfOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16795 auto _then_subgraph_index = _o->then_subgraph_index;
16796 auto _else_subgraph_index = _o->else_subgraph_index;
16797 return tflite::CreateIfOptions(
16798 _fbb,
16799 _then_subgraph_index,
16800 _else_subgraph_index);
16801 }
16802
16803 inline CallOnceOptionsT *CallOnceOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16804 auto _o = std::unique_ptr<CallOnceOptionsT>(new CallOnceOptionsT());
16805 UnPackTo(_o.get(), _resolver);
16806 return _o.release();
16807 }
16808
16809 inline void CallOnceOptions::UnPackTo(CallOnceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16810 (void)_o;
16811 (void)_resolver;
16812 { auto _e = init_subgraph_index(); _o->init_subgraph_index = _e; }
16813 }
16814
16815 inline flatbuffers::Offset<CallOnceOptions> CallOnceOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const CallOnceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16816 return CreateCallOnceOptions(_fbb, _o, _rehasher);
16817 }
16818
16819 inline flatbuffers::Offset<CallOnceOptions> CreateCallOnceOptions(flatbuffers::FlatBufferBuilder &_fbb, const CallOnceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16820 (void)_rehasher;
16821 (void)_o;
16822 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const CallOnceOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16823 auto _init_subgraph_index = _o->init_subgraph_index;
16824 return tflite::CreateCallOnceOptions(
16825 _fbb,
16826 _init_subgraph_index);
16827 }
16828
16829 inline WhileOptionsT *WhileOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16830 auto _o = std::unique_ptr<WhileOptionsT>(new WhileOptionsT());
16831 UnPackTo(_o.get(), _resolver);
16832 return _o.release();
16833 }
16834
16835 inline void WhileOptions::UnPackTo(WhileOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16836 (void)_o;
16837 (void)_resolver;
16838 { auto _e = cond_subgraph_index(); _o->cond_subgraph_index = _e; }
16839 { auto _e = body_subgraph_index(); _o->body_subgraph_index = _e; }
16840 }
16841
16842 inline flatbuffers::Offset<WhileOptions> WhileOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const WhileOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16843 return CreateWhileOptions(_fbb, _o, _rehasher);
16844 }
16845
16846 inline flatbuffers::Offset<WhileOptions> CreateWhileOptions(flatbuffers::FlatBufferBuilder &_fbb, const WhileOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16847 (void)_rehasher;
16848 (void)_o;
16849 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const WhileOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16850 auto _cond_subgraph_index = _o->cond_subgraph_index;
16851 auto _body_subgraph_index = _o->body_subgraph_index;
16852 return tflite::CreateWhileOptions(
16853 _fbb,
16854 _cond_subgraph_index,
16855 _body_subgraph_index);
16856 }
16857
16858 inline NonMaxSuppressionV4OptionsT *NonMaxSuppressionV4Options::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16859 auto _o = std::unique_ptr<NonMaxSuppressionV4OptionsT>(new NonMaxSuppressionV4OptionsT());
16860 UnPackTo(_o.get(), _resolver);
16861 return _o.release();
16862 }
16863
16864 inline void NonMaxSuppressionV4Options::UnPackTo(NonMaxSuppressionV4OptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16865 (void)_o;
16866 (void)_resolver;
16867 }
16868
16869 inline flatbuffers::Offset<NonMaxSuppressionV4Options> NonMaxSuppressionV4Options::Pack(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV4OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16870 return CreateNonMaxSuppressionV4Options(_fbb, _o, _rehasher);
16871 }
16872
16873 inline flatbuffers::Offset<NonMaxSuppressionV4Options> CreateNonMaxSuppressionV4Options(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV4OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16874 (void)_rehasher;
16875 (void)_o;
16876 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const NonMaxSuppressionV4OptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16877 return tflite::CreateNonMaxSuppressionV4Options(
16878 _fbb);
16879 }
16880
16881 inline NonMaxSuppressionV5OptionsT *NonMaxSuppressionV5Options::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16882 auto _o = std::unique_ptr<NonMaxSuppressionV5OptionsT>(new NonMaxSuppressionV5OptionsT());
16883 UnPackTo(_o.get(), _resolver);
16884 return _o.release();
16885 }
16886
16887 inline void NonMaxSuppressionV5Options::UnPackTo(NonMaxSuppressionV5OptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16888 (void)_o;
16889 (void)_resolver;
16890 }
16891
16892 inline flatbuffers::Offset<NonMaxSuppressionV5Options> NonMaxSuppressionV5Options::Pack(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV5OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16893 return CreateNonMaxSuppressionV5Options(_fbb, _o, _rehasher);
16894 }
16895
16896 inline flatbuffers::Offset<NonMaxSuppressionV5Options> CreateNonMaxSuppressionV5Options(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV5OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16897 (void)_rehasher;
16898 (void)_o;
16899 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const NonMaxSuppressionV5OptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16900 return tflite::CreateNonMaxSuppressionV5Options(
16901 _fbb);
16902 }
16903
16904 inline ScatterNdOptionsT *ScatterNdOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16905 auto _o = std::unique_ptr<ScatterNdOptionsT>(new ScatterNdOptionsT());
16906 UnPackTo(_o.get(), _resolver);
16907 return _o.release();
16908 }
16909
16910 inline void ScatterNdOptions::UnPackTo(ScatterNdOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16911 (void)_o;
16912 (void)_resolver;
16913 }
16914
16915 inline flatbuffers::Offset<ScatterNdOptions> ScatterNdOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ScatterNdOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16916 return CreateScatterNdOptions(_fbb, _o, _rehasher);
16917 }
16918
16919 inline flatbuffers::Offset<ScatterNdOptions> CreateScatterNdOptions(flatbuffers::FlatBufferBuilder &_fbb, const ScatterNdOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16920 (void)_rehasher;
16921 (void)_o;
16922 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ScatterNdOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16923 return tflite::CreateScatterNdOptions(
16924 _fbb);
16925 }
16926
16927 inline SelectV2OptionsT *SelectV2Options::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16928 auto _o = std::unique_ptr<SelectV2OptionsT>(new SelectV2OptionsT());
16929 UnPackTo(_o.get(), _resolver);
16930 return _o.release();
16931 }
16932
16933 inline void SelectV2Options::UnPackTo(SelectV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16934 (void)_o;
16935 (void)_resolver;
16936 }
16937
16938 inline flatbuffers::Offset<SelectV2Options> SelectV2Options::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SelectV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16939 return CreateSelectV2Options(_fbb, _o, _rehasher);
16940 }
16941
16942 inline flatbuffers::Offset<SelectV2Options> CreateSelectV2Options(flatbuffers::FlatBufferBuilder &_fbb, const SelectV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16943 (void)_rehasher;
16944 (void)_o;
16945 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SelectV2OptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16946 return tflite::CreateSelectV2Options(
16947 _fbb);
16948 }
16949
16950 inline DensifyOptionsT *DensifyOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16951 auto _o = std::unique_ptr<DensifyOptionsT>(new DensifyOptionsT());
16952 UnPackTo(_o.get(), _resolver);
16953 return _o.release();
16954 }
16955
16956 inline void DensifyOptions::UnPackTo(DensifyOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16957 (void)_o;
16958 (void)_resolver;
16959 }
16960
16961 inline flatbuffers::Offset<DensifyOptions> DensifyOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DensifyOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16962 return CreateDensifyOptions(_fbb, _o, _rehasher);
16963 }
16964
16965 inline flatbuffers::Offset<DensifyOptions> CreateDensifyOptions(flatbuffers::FlatBufferBuilder &_fbb, const DensifyOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16966 (void)_rehasher;
16967 (void)_o;
16968 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DensifyOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16969 return tflite::CreateDensifyOptions(
16970 _fbb);
16971 }
16972
16973 inline SegmentSumOptionsT *SegmentSumOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16974 auto _o = std::unique_ptr<SegmentSumOptionsT>(new SegmentSumOptionsT());
16975 UnPackTo(_o.get(), _resolver);
16976 return _o.release();
16977 }
16978
16979 inline void SegmentSumOptions::UnPackTo(SegmentSumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
16980 (void)_o;
16981 (void)_resolver;
16982 }
16983
16984 inline flatbuffers::Offset<SegmentSumOptions> SegmentSumOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SegmentSumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
16985 return CreateSegmentSumOptions(_fbb, _o, _rehasher);
16986 }
16987
16988 inline flatbuffers::Offset<SegmentSumOptions> CreateSegmentSumOptions(flatbuffers::FlatBufferBuilder &_fbb, const SegmentSumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
16989 (void)_rehasher;
16990 (void)_o;
16991 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SegmentSumOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
16992 return tflite::CreateSegmentSumOptions(
16993 _fbb);
16994 }
16995
16996 inline BatchMatMulOptionsT *BatchMatMulOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
16997 auto _o = std::unique_ptr<BatchMatMulOptionsT>(new BatchMatMulOptionsT());
16998 UnPackTo(_o.get(), _resolver);
16999 return _o.release();
17000 }
17001
17002 inline void BatchMatMulOptions::UnPackTo(BatchMatMulOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17003 (void)_o;
17004 (void)_resolver;
17005 { auto _e = adj_x(); _o->adj_x = _e; }
17006 { auto _e = adj_y(); _o->adj_y = _e; }
17007 { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
17008 }
17009
17010 inline flatbuffers::Offset<BatchMatMulOptions> BatchMatMulOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BatchMatMulOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17011 return CreateBatchMatMulOptions(_fbb, _o, _rehasher);
17012 }
17013
17014 inline flatbuffers::Offset<BatchMatMulOptions> CreateBatchMatMulOptions(flatbuffers::FlatBufferBuilder &_fbb, const BatchMatMulOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17015 (void)_rehasher;
17016 (void)_o;
17017 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BatchMatMulOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17018 auto _adj_x = _o->adj_x;
17019 auto _adj_y = _o->adj_y;
17020 auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
17021 return tflite::CreateBatchMatMulOptions(
17022 _fbb,
17023 _adj_x,
17024 _adj_y,
17025 _asymmetric_quantize_inputs);
17026 }
17027
17028 inline CumsumOptionsT *CumsumOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17029 auto _o = std::unique_ptr<CumsumOptionsT>(new CumsumOptionsT());
17030 UnPackTo(_o.get(), _resolver);
17031 return _o.release();
17032 }
17033
17034 inline void CumsumOptions::UnPackTo(CumsumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17035 (void)_o;
17036 (void)_resolver;
17037 { auto _e = exclusive(); _o->exclusive = _e; }
17038 { auto _e = reverse(); _o->reverse = _e; }
17039 }
17040
17041 inline flatbuffers::Offset<CumsumOptions> CumsumOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const CumsumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17042 return CreateCumsumOptions(_fbb, _o, _rehasher);
17043 }
17044
17045 inline flatbuffers::Offset<CumsumOptions> CreateCumsumOptions(flatbuffers::FlatBufferBuilder &_fbb, const CumsumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17046 (void)_rehasher;
17047 (void)_o;
17048 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const CumsumOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17049 auto _exclusive = _o->exclusive;
17050 auto _reverse = _o->reverse;
17051 return tflite::CreateCumsumOptions(
17052 _fbb,
17053 _exclusive,
17054 _reverse);
17055 }
17056
17057 inline BroadcastToOptionsT *BroadcastToOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17058 auto _o = std::unique_ptr<BroadcastToOptionsT>(new BroadcastToOptionsT());
17059 UnPackTo(_o.get(), _resolver);
17060 return _o.release();
17061 }
17062
17063 inline void BroadcastToOptions::UnPackTo(BroadcastToOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17064 (void)_o;
17065 (void)_resolver;
17066 }
17067
17068 inline flatbuffers::Offset<BroadcastToOptions> BroadcastToOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BroadcastToOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17069 return CreateBroadcastToOptions(_fbb, _o, _rehasher);
17070 }
17071
17072 inline flatbuffers::Offset<BroadcastToOptions> CreateBroadcastToOptions(flatbuffers::FlatBufferBuilder &_fbb, const BroadcastToOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17073 (void)_rehasher;
17074 (void)_o;
17075 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BroadcastToOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17076 return tflite::CreateBroadcastToOptions(
17077 _fbb);
17078 }
17079
17080 inline Rfft2dOptionsT *Rfft2dOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17081 auto _o = std::unique_ptr<Rfft2dOptionsT>(new Rfft2dOptionsT());
17082 UnPackTo(_o.get(), _resolver);
17083 return _o.release();
17084 }
17085
17086 inline void Rfft2dOptions::UnPackTo(Rfft2dOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17087 (void)_o;
17088 (void)_resolver;
17089 }
17090
17091 inline flatbuffers::Offset<Rfft2dOptions> Rfft2dOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Rfft2dOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17092 return CreateRfft2dOptions(_fbb, _o, _rehasher);
17093 }
17094
17095 inline flatbuffers::Offset<Rfft2dOptions> CreateRfft2dOptions(flatbuffers::FlatBufferBuilder &_fbb, const Rfft2dOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17096 (void)_rehasher;
17097 (void)_o;
17098 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Rfft2dOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17099 return tflite::CreateRfft2dOptions(
17100 _fbb);
17101 }
17102
17103 inline HashtableOptionsT *HashtableOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17104 auto _o = std::unique_ptr<HashtableOptionsT>(new HashtableOptionsT());
17105 UnPackTo(_o.get(), _resolver);
17106 return _o.release();
17107 }
17108
17109 inline void HashtableOptions::UnPackTo(HashtableOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17110 (void)_o;
17111 (void)_resolver;
17112 { auto _e = table_id(); _o->table_id = _e; }
17113 { auto _e = key_dtype(); _o->key_dtype = _e; }
17114 { auto _e = value_dtype(); _o->value_dtype = _e; }
17115 }
17116
17117 inline flatbuffers::Offset<HashtableOptions> HashtableOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17118 return CreateHashtableOptions(_fbb, _o, _rehasher);
17119 }
17120
17121 inline flatbuffers::Offset<HashtableOptions> CreateHashtableOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17122 (void)_rehasher;
17123 (void)_o;
17124 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const HashtableOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17125 auto _table_id = _o->table_id;
17126 auto _key_dtype = _o->key_dtype;
17127 auto _value_dtype = _o->value_dtype;
17128 return tflite::CreateHashtableOptions(
17129 _fbb,
17130 _table_id,
17131 _key_dtype,
17132 _value_dtype);
17133 }
17134
17135 inline HashtableFindOptionsT *HashtableFindOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17136 auto _o = std::unique_ptr<HashtableFindOptionsT>(new HashtableFindOptionsT());
17137 UnPackTo(_o.get(), _resolver);
17138 return _o.release();
17139 }
17140
17141 inline void HashtableFindOptions::UnPackTo(HashtableFindOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17142 (void)_o;
17143 (void)_resolver;
17144 }
17145
17146 inline flatbuffers::Offset<HashtableFindOptions> HashtableFindOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableFindOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17147 return CreateHashtableFindOptions(_fbb, _o, _rehasher);
17148 }
17149
17150 inline flatbuffers::Offset<HashtableFindOptions> CreateHashtableFindOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableFindOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17151 (void)_rehasher;
17152 (void)_o;
17153 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const HashtableFindOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17154 return tflite::CreateHashtableFindOptions(
17155 _fbb);
17156 }
17157
17158 inline HashtableImportOptionsT *HashtableImportOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17159 auto _o = std::unique_ptr<HashtableImportOptionsT>(new HashtableImportOptionsT());
17160 UnPackTo(_o.get(), _resolver);
17161 return _o.release();
17162 }
17163
17164 inline void HashtableImportOptions::UnPackTo(HashtableImportOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17165 (void)_o;
17166 (void)_resolver;
17167 }
17168
17169 inline flatbuffers::Offset<HashtableImportOptions> HashtableImportOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableImportOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17170 return CreateHashtableImportOptions(_fbb, _o, _rehasher);
17171 }
17172
17173 inline flatbuffers::Offset<HashtableImportOptions> CreateHashtableImportOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableImportOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17174 (void)_rehasher;
17175 (void)_o;
17176 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const HashtableImportOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17177 return tflite::CreateHashtableImportOptions(
17178 _fbb);
17179 }
17180
17181 inline HashtableSizeOptionsT *HashtableSizeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17182 auto _o = std::unique_ptr<HashtableSizeOptionsT>(new HashtableSizeOptionsT());
17183 UnPackTo(_o.get(), _resolver);
17184 return _o.release();
17185 }
17186
17187 inline void HashtableSizeOptions::UnPackTo(HashtableSizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17188 (void)_o;
17189 (void)_resolver;
17190 }
17191
17192 inline flatbuffers::Offset<HashtableSizeOptions> HashtableSizeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableSizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17193 return CreateHashtableSizeOptions(_fbb, _o, _rehasher);
17194 }
17195
17196 inline flatbuffers::Offset<HashtableSizeOptions> CreateHashtableSizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableSizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17197 (void)_rehasher;
17198 (void)_o;
17199 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const HashtableSizeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17200 return tflite::CreateHashtableSizeOptions(
17201 _fbb);
17202 }
17203
17204 inline VarHandleOptionsT *VarHandleOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17205 auto _o = std::unique_ptr<VarHandleOptionsT>(new VarHandleOptionsT());
17206 UnPackTo(_o.get(), _resolver);
17207 return _o.release();
17208 }
17209
17210 inline void VarHandleOptions::UnPackTo(VarHandleOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17211 (void)_o;
17212 (void)_resolver;
17213 { auto _e = container(); if (_e) _o->container = _e->str(); }
17214 { auto _e = shared_name(); if (_e) _o->shared_name = _e->str(); }
17215 }
17216
17217 inline flatbuffers::Offset<VarHandleOptions> VarHandleOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const VarHandleOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17218 return CreateVarHandleOptions(_fbb, _o, _rehasher);
17219 }
17220
17221 inline flatbuffers::Offset<VarHandleOptions> CreateVarHandleOptions(flatbuffers::FlatBufferBuilder &_fbb, const VarHandleOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17222 (void)_rehasher;
17223 (void)_o;
17224 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const VarHandleOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17225 auto _container = _o->container.empty() ? 0 : _fbb.CreateString(_o->container);
17226 auto _shared_name = _o->shared_name.empty() ? 0 : _fbb.CreateString(_o->shared_name);
17227 return tflite::CreateVarHandleOptions(
17228 _fbb,
17229 _container,
17230 _shared_name);
17231 }
17232
17233 inline ReadVariableOptionsT *ReadVariableOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17234 auto _o = std::unique_ptr<ReadVariableOptionsT>(new ReadVariableOptionsT());
17235 UnPackTo(_o.get(), _resolver);
17236 return _o.release();
17237 }
17238
17239 inline void ReadVariableOptions::UnPackTo(ReadVariableOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17240 (void)_o;
17241 (void)_resolver;
17242 }
17243
17244 inline flatbuffers::Offset<ReadVariableOptions> ReadVariableOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReadVariableOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17245 return CreateReadVariableOptions(_fbb, _o, _rehasher);
17246 }
17247
17248 inline flatbuffers::Offset<ReadVariableOptions> CreateReadVariableOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReadVariableOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17249 (void)_rehasher;
17250 (void)_o;
17251 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ReadVariableOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17252 return tflite::CreateReadVariableOptions(
17253 _fbb);
17254 }
17255
17256 inline AssignVariableOptionsT *AssignVariableOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17257 auto _o = std::unique_ptr<AssignVariableOptionsT>(new AssignVariableOptionsT());
17258 UnPackTo(_o.get(), _resolver);
17259 return _o.release();
17260 }
17261
17262 inline void AssignVariableOptions::UnPackTo(AssignVariableOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17263 (void)_o;
17264 (void)_resolver;
17265 }
17266
17267 inline flatbuffers::Offset<AssignVariableOptions> AssignVariableOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const AssignVariableOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17268 return CreateAssignVariableOptions(_fbb, _o, _rehasher);
17269 }
17270
17271 inline flatbuffers::Offset<AssignVariableOptions> CreateAssignVariableOptions(flatbuffers::FlatBufferBuilder &_fbb, const AssignVariableOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17272 (void)_rehasher;
17273 (void)_o;
17274 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const AssignVariableOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17275 return tflite::CreateAssignVariableOptions(
17276 _fbb);
17277 }
17278
17279 inline RandomOptionsT *RandomOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17280 auto _o = std::unique_ptr<RandomOptionsT>(new RandomOptionsT());
17281 UnPackTo(_o.get(), _resolver);
17282 return _o.release();
17283 }
17284
17285 inline void RandomOptions::UnPackTo(RandomOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17286 (void)_o;
17287 (void)_resolver;
17288 { auto _e = seed(); _o->seed = _e; }
17289 { auto _e = seed2(); _o->seed2 = _e; }
17290 }
17291
17292 inline flatbuffers::Offset<RandomOptions> RandomOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const RandomOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17293 return CreateRandomOptions(_fbb, _o, _rehasher);
17294 }
17295
17296 inline flatbuffers::Offset<RandomOptions> CreateRandomOptions(flatbuffers::FlatBufferBuilder &_fbb, const RandomOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17297 (void)_rehasher;
17298 (void)_o;
17299 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const RandomOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17300 auto _seed = _o->seed;
17301 auto _seed2 = _o->seed2;
17302 return tflite::CreateRandomOptions(
17303 _fbb,
17304 _seed,
17305 _seed2);
17306 }
17307
17308 inline BucketizeOptionsT *BucketizeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17309 auto _o = std::unique_ptr<BucketizeOptionsT>(new BucketizeOptionsT());
17310 UnPackTo(_o.get(), _resolver);
17311 return _o.release();
17312 }
17313
17314 inline void BucketizeOptions::UnPackTo(BucketizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17315 (void)_o;
17316 (void)_resolver;
17317 { auto _e = boundaries(); if (_e) { _o->boundaries.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->boundaries[_i] = _e->Get(_i); } } }
17318 }
17319
17320 inline flatbuffers::Offset<BucketizeOptions> BucketizeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BucketizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17321 return CreateBucketizeOptions(_fbb, _o, _rehasher);
17322 }
17323
17324 inline flatbuffers::Offset<BucketizeOptions> CreateBucketizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const BucketizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17325 (void)_rehasher;
17326 (void)_o;
17327 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BucketizeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17328 auto _boundaries = _o->boundaries.size() ? _fbb.CreateVector(_o->boundaries) : 0;
17329 return tflite::CreateBucketizeOptions(
17330 _fbb,
17331 _boundaries);
17332 }
17333
17334 inline GeluOptionsT *GeluOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17335 auto _o = std::unique_ptr<GeluOptionsT>(new GeluOptionsT());
17336 UnPackTo(_o.get(), _resolver);
17337 return _o.release();
17338 }
17339
17340 inline void GeluOptions::UnPackTo(GeluOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17341 (void)_o;
17342 (void)_resolver;
17343 { auto _e = approximate(); _o->approximate = _e; }
17344 }
17345
17346 inline flatbuffers::Offset<GeluOptions> GeluOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const GeluOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17347 return CreateGeluOptions(_fbb, _o, _rehasher);
17348 }
17349
17350 inline flatbuffers::Offset<GeluOptions> CreateGeluOptions(flatbuffers::FlatBufferBuilder &_fbb, const GeluOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17351 (void)_rehasher;
17352 (void)_o;
17353 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const GeluOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17354 auto _approximate = _o->approximate;
17355 return tflite::CreateGeluOptions(
17356 _fbb,
17357 _approximate);
17358 }
17359
17360 inline DynamicUpdateSliceOptionsT *DynamicUpdateSliceOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17361 auto _o = std::unique_ptr<DynamicUpdateSliceOptionsT>(new DynamicUpdateSliceOptionsT());
17362 UnPackTo(_o.get(), _resolver);
17363 return _o.release();
17364 }
17365
17366 inline void DynamicUpdateSliceOptions::UnPackTo(DynamicUpdateSliceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17367 (void)_o;
17368 (void)_resolver;
17369 }
17370
17371 inline flatbuffers::Offset<DynamicUpdateSliceOptions> DynamicUpdateSliceOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DynamicUpdateSliceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17372 return CreateDynamicUpdateSliceOptions(_fbb, _o, _rehasher);
17373 }
17374
17375 inline flatbuffers::Offset<DynamicUpdateSliceOptions> CreateDynamicUpdateSliceOptions(flatbuffers::FlatBufferBuilder &_fbb, const DynamicUpdateSliceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17376 (void)_rehasher;
17377 (void)_o;
17378 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DynamicUpdateSliceOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17379 return tflite::CreateDynamicUpdateSliceOptions(
17380 _fbb);
17381 }
17382
17383 inline UnsortedSegmentProdOptionsT *UnsortedSegmentProdOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17384 auto _o = std::unique_ptr<UnsortedSegmentProdOptionsT>(new UnsortedSegmentProdOptionsT());
17385 UnPackTo(_o.get(), _resolver);
17386 return _o.release();
17387 }
17388
17389 inline void UnsortedSegmentProdOptions::UnPackTo(UnsortedSegmentProdOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17390 (void)_o;
17391 (void)_resolver;
17392 }
17393
17394 inline flatbuffers::Offset<UnsortedSegmentProdOptions> UnsortedSegmentProdOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentProdOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17395 return CreateUnsortedSegmentProdOptions(_fbb, _o, _rehasher);
17396 }
17397
17398 inline flatbuffers::Offset<UnsortedSegmentProdOptions> CreateUnsortedSegmentProdOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentProdOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17399 (void)_rehasher;
17400 (void)_o;
17401 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const UnsortedSegmentProdOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17402 return tflite::CreateUnsortedSegmentProdOptions(
17403 _fbb);
17404 }
17405
17406 inline UnsortedSegmentMaxOptionsT *UnsortedSegmentMaxOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17407 auto _o = std::unique_ptr<UnsortedSegmentMaxOptionsT>(new UnsortedSegmentMaxOptionsT());
17408 UnPackTo(_o.get(), _resolver);
17409 return _o.release();
17410 }
17411
17412 inline void UnsortedSegmentMaxOptions::UnPackTo(UnsortedSegmentMaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17413 (void)_o;
17414 (void)_resolver;
17415 }
17416
17417 inline flatbuffers::Offset<UnsortedSegmentMaxOptions> UnsortedSegmentMaxOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17418 return CreateUnsortedSegmentMaxOptions(_fbb, _o, _rehasher);
17419 }
17420
17421 inline flatbuffers::Offset<UnsortedSegmentMaxOptions> CreateUnsortedSegmentMaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17422 (void)_rehasher;
17423 (void)_o;
17424 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const UnsortedSegmentMaxOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17425 return tflite::CreateUnsortedSegmentMaxOptions(
17426 _fbb);
17427 }
17428
17429 inline UnsortedSegmentSumOptionsT *UnsortedSegmentSumOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17430 auto _o = std::unique_ptr<UnsortedSegmentSumOptionsT>(new UnsortedSegmentSumOptionsT());
17431 UnPackTo(_o.get(), _resolver);
17432 return _o.release();
17433 }
17434
17435 inline void UnsortedSegmentSumOptions::UnPackTo(UnsortedSegmentSumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17436 (void)_o;
17437 (void)_resolver;
17438 }
17439
17440 inline flatbuffers::Offset<UnsortedSegmentSumOptions> UnsortedSegmentSumOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentSumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17441 return CreateUnsortedSegmentSumOptions(_fbb, _o, _rehasher);
17442 }
17443
17444 inline flatbuffers::Offset<UnsortedSegmentSumOptions> CreateUnsortedSegmentSumOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentSumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17445 (void)_rehasher;
17446 (void)_o;
17447 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const UnsortedSegmentSumOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17448 return tflite::CreateUnsortedSegmentSumOptions(
17449 _fbb);
17450 }
17451
17452 inline ATan2OptionsT *ATan2Options::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17453 auto _o = std::unique_ptr<ATan2OptionsT>(new ATan2OptionsT());
17454 UnPackTo(_o.get(), _resolver);
17455 return _o.release();
17456 }
17457
17458 inline void ATan2Options::UnPackTo(ATan2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17459 (void)_o;
17460 (void)_resolver;
17461 }
17462
17463 inline flatbuffers::Offset<ATan2Options> ATan2Options::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ATan2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17464 return CreateATan2Options(_fbb, _o, _rehasher);
17465 }
17466
17467 inline flatbuffers::Offset<ATan2Options> CreateATan2Options(flatbuffers::FlatBufferBuilder &_fbb, const ATan2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17468 (void)_rehasher;
17469 (void)_o;
17470 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ATan2OptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17471 return tflite::CreateATan2Options(
17472 _fbb);
17473 }
17474
17475 inline UnsortedSegmentMinOptionsT *UnsortedSegmentMinOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17476 auto _o = std::unique_ptr<UnsortedSegmentMinOptionsT>(new UnsortedSegmentMinOptionsT());
17477 UnPackTo(_o.get(), _resolver);
17478 return _o.release();
17479 }
17480
17481 inline void UnsortedSegmentMinOptions::UnPackTo(UnsortedSegmentMinOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17482 (void)_o;
17483 (void)_resolver;
17484 }
17485
17486 inline flatbuffers::Offset<UnsortedSegmentMinOptions> UnsortedSegmentMinOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMinOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17487 return CreateUnsortedSegmentMinOptions(_fbb, _o, _rehasher);
17488 }
17489
17490 inline flatbuffers::Offset<UnsortedSegmentMinOptions> CreateUnsortedSegmentMinOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMinOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17491 (void)_rehasher;
17492 (void)_o;
17493 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const UnsortedSegmentMinOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17494 return tflite::CreateUnsortedSegmentMinOptions(
17495 _fbb);
17496 }
17497
17498 inline SignOptionsT *SignOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17499 auto _o = std::unique_ptr<SignOptionsT>(new SignOptionsT());
17500 UnPackTo(_o.get(), _resolver);
17501 return _o.release();
17502 }
17503
17504 inline void SignOptions::UnPackTo(SignOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17505 (void)_o;
17506 (void)_resolver;
17507 }
17508
17509 inline flatbuffers::Offset<SignOptions> SignOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SignOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17510 return CreateSignOptions(_fbb, _o, _rehasher);
17511 }
17512
17513 inline flatbuffers::Offset<SignOptions> CreateSignOptions(flatbuffers::FlatBufferBuilder &_fbb, const SignOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17514 (void)_rehasher;
17515 (void)_o;
17516 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SignOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17517 return tflite::CreateSignOptions(
17518 _fbb);
17519 }
17520
17521 inline OperatorCodeT *OperatorCode::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17522 auto _o = std::unique_ptr<OperatorCodeT>(new OperatorCodeT());
17523 UnPackTo(_o.get(), _resolver);
17524 return _o.release();
17525 }
17526
17527 inline void OperatorCode::UnPackTo(OperatorCodeT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17528 (void)_o;
17529 (void)_resolver;
17530 { auto _e = deprecated_builtin_code(); _o->deprecated_builtin_code = _e; }
17531 { auto _e = custom_code(); if (_e) _o->custom_code = _e->str(); }
17532 { auto _e = version(); _o->version = _e; }
17533 { auto _e = builtin_code(); _o->builtin_code = _e; }
17534 }
17535
17536 inline flatbuffers::Offset<OperatorCode> OperatorCode::Pack(flatbuffers::FlatBufferBuilder &_fbb, const OperatorCodeT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17537 return CreateOperatorCode(_fbb, _o, _rehasher);
17538 }
17539
17540 inline flatbuffers::Offset<OperatorCode> CreateOperatorCode(flatbuffers::FlatBufferBuilder &_fbb, const OperatorCodeT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17541 (void)_rehasher;
17542 (void)_o;
17543 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const OperatorCodeT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17544 auto _deprecated_builtin_code = _o->deprecated_builtin_code;
17545 auto _custom_code = _o->custom_code.empty() ? 0 : _fbb.CreateString(_o->custom_code);
17546 auto _version = _o->version;
17547 auto _builtin_code = _o->builtin_code;
17548 return tflite::CreateOperatorCode(
17549 _fbb,
17550 _deprecated_builtin_code,
17551 _custom_code,
17552 _version,
17553 _builtin_code);
17554 }
17555
17556 inline OperatorT *Operator::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17557 auto _o = std::unique_ptr<OperatorT>(new OperatorT());
17558 UnPackTo(_o.get(), _resolver);
17559 return _o.release();
17560 }
17561
17562 inline void Operator::UnPackTo(OperatorT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17563 (void)_o;
17564 (void)_resolver;
17565 { auto _e = opcode_index(); _o->opcode_index = _e; }
17566 { auto _e = inputs(); if (_e) { _o->inputs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->inputs[_i] = _e->Get(_i); } } }
17567 { auto _e = outputs(); if (_e) { _o->outputs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->outputs[_i] = _e->Get(_i); } } }
17568 { auto _e = builtin_options_type(); _o->builtin_options.type = _e; }
17569 { auto _e = builtin_options(); if (_e) _o->builtin_options.value = tflite::BuiltinOptionsUnion::UnPack(_e, builtin_options_type(), _resolver); }
17570 { auto _e = custom_options(); if (_e) { _o->custom_options.resize(_e->size()); std::copy(_e->begin(), _e->end(), _o->custom_options.begin()); } }
17571 { auto _e = custom_options_format(); _o->custom_options_format = _e; }
17572 { auto _e = mutating_variable_inputs(); if (_e) { _o->mutating_variable_inputs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->mutating_variable_inputs[_i] = _e->Get(_i) != 0; } } }
17573 { auto _e = intermediates(); if (_e) { _o->intermediates.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->intermediates[_i] = _e->Get(_i); } } }
17574 }
17575
17576 inline flatbuffers::Offset<Operator> Operator::Pack(flatbuffers::FlatBufferBuilder &_fbb, const OperatorT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17577 return CreateOperator(_fbb, _o, _rehasher);
17578 }
17579
17580 inline flatbuffers::Offset<Operator> CreateOperator(flatbuffers::FlatBufferBuilder &_fbb, const OperatorT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17581 (void)_rehasher;
17582 (void)_o;
17583 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const OperatorT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17584 auto _opcode_index = _o->opcode_index;
17585 auto _inputs = _o->inputs.size() ? _fbb.CreateVector(_o->inputs) : 0;
17586 auto _outputs = _o->outputs.size() ? _fbb.CreateVector(_o->outputs) : 0;
17587 auto _builtin_options_type = _o->builtin_options.type;
17588 auto _builtin_options = _o->builtin_options.Pack(_fbb);
17589 auto _custom_options = _o->custom_options.size() ? _fbb.CreateVector(_o->custom_options) : 0;
17590 auto _custom_options_format = _o->custom_options_format;
17591 auto _mutating_variable_inputs = _o->mutating_variable_inputs.size() ? _fbb.CreateVector(_o->mutating_variable_inputs) : 0;
17592 auto _intermediates = _o->intermediates.size() ? _fbb.CreateVector(_o->intermediates) : 0;
17593 return tflite::CreateOperator(
17594 _fbb,
17595 _opcode_index,
17596 _inputs,
17597 _outputs,
17598 _builtin_options_type,
17599 _builtin_options,
17600 _custom_options,
17601 _custom_options_format,
17602 _mutating_variable_inputs,
17603 _intermediates);
17604 }
17605
17606 inline SubGraphT::SubGraphT(const SubGraphT &o)
17607 : inputs(o.inputs),
17608 outputs(o.outputs),
17609 name(o.name) {
17610 tensors.reserve(o.tensors.size());
17611 for (const auto &tensors_ : o.tensors) { tensors.emplace_back((tensors_) ? new tflite::TensorT(*tensors_) : nullptr); }
17612 operators.reserve(o.operators.size());
17613 for (const auto &operators_ : o.operators) { operators.emplace_back((operators_) ? new tflite::OperatorT(*operators_) : nullptr); }
17614 }
17615
17616 inline SubGraphT &SubGraphT::operator=(SubGraphT o) FLATBUFFERS_NOEXCEPT {
17617 std::swap(tensors, o.tensors);
17618 std::swap(inputs, o.inputs);
17619 std::swap(outputs, o.outputs);
17620 std::swap(operators, o.operators);
17621 std::swap(name, o.name);
17622 return *this;
17623 }
17624
17625 inline SubGraphT *SubGraph::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17626 auto _o = std::unique_ptr<SubGraphT>(new SubGraphT());
17627 UnPackTo(_o.get(), _resolver);
17628 return _o.release();
17629 }
17630
17631 inline void SubGraph::UnPackTo(SubGraphT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17632 (void)_o;
17633 (void)_resolver;
17634 { auto _e = tensors(); if (_e) { _o->tensors.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->tensors[_i] = std::unique_ptr<tflite::TensorT>(_e->Get(_i)->UnPack(_resolver)); } } }
17635 { auto _e = inputs(); if (_e) { _o->inputs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->inputs[_i] = _e->Get(_i); } } }
17636 { auto _e = outputs(); if (_e) { _o->outputs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->outputs[_i] = _e->Get(_i); } } }
17637 { auto _e = operators(); if (_e) { _o->operators.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->operators[_i] = std::unique_ptr<tflite::OperatorT>(_e->Get(_i)->UnPack(_resolver)); } } }
17638 { auto _e = name(); if (_e) _o->name = _e->str(); }
17639 }
17640
17641 inline flatbuffers::Offset<SubGraph> SubGraph::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SubGraphT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17642 return CreateSubGraph(_fbb, _o, _rehasher);
17643 }
17644
17645 inline flatbuffers::Offset<SubGraph> CreateSubGraph(flatbuffers::FlatBufferBuilder &_fbb, const SubGraphT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17646 (void)_rehasher;
17647 (void)_o;
17648 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SubGraphT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17649 auto _tensors = _o->tensors.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::Tensor>> (_o->tensors.size(), [](size_t i, _VectorArgs *__va) { return CreateTensor(*__va->__fbb, __va->__o->tensors[i].get(), __va->__rehasher); }, &_va ) : 0;
17650 auto _inputs = _o->inputs.size() ? _fbb.CreateVector(_o->inputs) : 0;
17651 auto _outputs = _o->outputs.size() ? _fbb.CreateVector(_o->outputs) : 0;
17652 auto _operators = _o->operators.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::Operator>> (_o->operators.size(), [](size_t i, _VectorArgs *__va) { return CreateOperator(*__va->__fbb, __va->__o->operators[i].get(), __va->__rehasher); }, &_va ) : 0;
17653 auto _name = _o->name.empty() ? 0 : _fbb.CreateString(_o->name);
17654 return tflite::CreateSubGraph(
17655 _fbb,
17656 _tensors,
17657 _inputs,
17658 _outputs,
17659 _operators,
17660 _name);
17661 }
17662
17663 inline BufferT *Buffer::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17664 auto _o = std::unique_ptr<BufferT>(new BufferT());
17665 UnPackTo(_o.get(), _resolver);
17666 return _o.release();
17667 }
17668
17669 inline void Buffer::UnPackTo(BufferT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17670 (void)_o;
17671 (void)_resolver;
17672 { auto _e = data(); if (_e) { _o->data.resize(_e->size()); std::copy(_e->begin(), _e->end(), _o->data.begin()); } }
17673 }
17674
17675 inline flatbuffers::Offset<Buffer> Buffer::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BufferT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17676 return CreateBuffer(_fbb, _o, _rehasher);
17677 }
17678
17679 inline flatbuffers::Offset<Buffer> CreateBuffer(flatbuffers::FlatBufferBuilder &_fbb, const BufferT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17680 (void)_rehasher;
17681 (void)_o;
17682 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BufferT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17683 _fbb.ForceVectorAlignment(_o->data.size(), sizeof(uint8_t), 16);
17684 auto _data = _o->data.size() ? _fbb.CreateVector(_o->data) : 0;
17685 return tflite::CreateBuffer(
17686 _fbb,
17687 _data);
17688 }
17689
17690 inline MetadataT *Metadata::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17691 auto _o = std::unique_ptr<MetadataT>(new MetadataT());
17692 UnPackTo(_o.get(), _resolver);
17693 return _o.release();
17694 }
17695
17696 inline void Metadata::UnPackTo(MetadataT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17697 (void)_o;
17698 (void)_resolver;
17699 { auto _e = name(); if (_e) _o->name = _e->str(); }
17700 { auto _e = buffer(); _o->buffer = _e; }
17701 }
17702
17703 inline flatbuffers::Offset<Metadata> Metadata::Pack(flatbuffers::FlatBufferBuilder &_fbb, const MetadataT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17704 return CreateMetadata(_fbb, _o, _rehasher);
17705 }
17706
17707 inline flatbuffers::Offset<Metadata> CreateMetadata(flatbuffers::FlatBufferBuilder &_fbb, const MetadataT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17708 (void)_rehasher;
17709 (void)_o;
17710 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const MetadataT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17711 auto _name = _o->name.empty() ? 0 : _fbb.CreateString(_o->name);
17712 auto _buffer = _o->buffer;
17713 return tflite::CreateMetadata(
17714 _fbb,
17715 _name,
17716 _buffer);
17717 }
17718
17719 inline TensorMapT *TensorMap::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17720 auto _o = std::unique_ptr<TensorMapT>(new TensorMapT());
17721 UnPackTo(_o.get(), _resolver);
17722 return _o.release();
17723 }
17724
17725 inline void TensorMap::UnPackTo(TensorMapT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17726 (void)_o;
17727 (void)_resolver;
17728 { auto _e = name(); if (_e) _o->name = _e->str(); }
17729 { auto _e = tensor_index(); _o->tensor_index = _e; }
17730 }
17731
17732 inline flatbuffers::Offset<TensorMap> TensorMap::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TensorMapT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17733 return CreateTensorMap(_fbb, _o, _rehasher);
17734 }
17735
17736 inline flatbuffers::Offset<TensorMap> CreateTensorMap(flatbuffers::FlatBufferBuilder &_fbb, const TensorMapT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17737 (void)_rehasher;
17738 (void)_o;
17739 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TensorMapT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17740 auto _name = _o->name.empty() ? 0 : _fbb.CreateString(_o->name);
17741 auto _tensor_index = _o->tensor_index;
17742 return tflite::CreateTensorMap(
17743 _fbb,
17744 _name,
17745 _tensor_index);
17746 }
17747
17748 inline SignatureDefT::SignatureDefT(const SignatureDefT &o)
17749 : signature_key(o.signature_key),
17750 subgraph_index(o.subgraph_index) {
17751 inputs.reserve(o.inputs.size());
17752 for (const auto &inputs_ : o.inputs) { inputs.emplace_back((inputs_) ? new tflite::TensorMapT(*inputs_) : nullptr); }
17753 outputs.reserve(o.outputs.size());
17754 for (const auto &outputs_ : o.outputs) { outputs.emplace_back((outputs_) ? new tflite::TensorMapT(*outputs_) : nullptr); }
17755 }
17756
17757 inline SignatureDefT &SignatureDefT::operator=(SignatureDefT o) FLATBUFFERS_NOEXCEPT {
17758 std::swap(inputs, o.inputs);
17759 std::swap(outputs, o.outputs);
17760 std::swap(signature_key, o.signature_key);
17761 std::swap(subgraph_index, o.subgraph_index);
17762 return *this;
17763 }
17764
17765 inline SignatureDefT *SignatureDef::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17766 auto _o = std::unique_ptr<SignatureDefT>(new SignatureDefT());
17767 UnPackTo(_o.get(), _resolver);
17768 return _o.release();
17769 }
17770
17771 inline void SignatureDef::UnPackTo(SignatureDefT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17772 (void)_o;
17773 (void)_resolver;
17774 { auto _e = inputs(); if (_e) { _o->inputs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->inputs[_i] = std::unique_ptr<tflite::TensorMapT>(_e->Get(_i)->UnPack(_resolver)); } } }
17775 { auto _e = outputs(); if (_e) { _o->outputs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->outputs[_i] = std::unique_ptr<tflite::TensorMapT>(_e->Get(_i)->UnPack(_resolver)); } } }
17776 { auto _e = signature_key(); if (_e) _o->signature_key = _e->str(); }
17777 { auto _e = subgraph_index(); _o->subgraph_index = _e; }
17778 }
17779
17780 inline flatbuffers::Offset<SignatureDef> SignatureDef::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SignatureDefT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17781 return CreateSignatureDef(_fbb, _o, _rehasher);
17782 }
17783
17784 inline flatbuffers::Offset<SignatureDef> CreateSignatureDef(flatbuffers::FlatBufferBuilder &_fbb, const SignatureDefT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17785 (void)_rehasher;
17786 (void)_o;
17787 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SignatureDefT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17788 auto _inputs = _o->inputs.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::TensorMap>> (_o->inputs.size(), [](size_t i, _VectorArgs *__va) { return CreateTensorMap(*__va->__fbb, __va->__o->inputs[i].get(), __va->__rehasher); }, &_va ) : 0;
17789 auto _outputs = _o->outputs.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::TensorMap>> (_o->outputs.size(), [](size_t i, _VectorArgs *__va) { return CreateTensorMap(*__va->__fbb, __va->__o->outputs[i].get(), __va->__rehasher); }, &_va ) : 0;
17790 auto _signature_key = _o->signature_key.empty() ? 0 : _fbb.CreateString(_o->signature_key);
17791 auto _subgraph_index = _o->subgraph_index;
17792 return tflite::CreateSignatureDef(
17793 _fbb,
17794 _inputs,
17795 _outputs,
17796 _signature_key,
17797 _subgraph_index);
17798 }
17799
17800 inline ModelT::ModelT(const ModelT &o)
17801 : version(o.version),
17802 description(o.description),
17803 metadata_buffer(o.metadata_buffer) {
17804 operator_codes.reserve(o.operator_codes.size());
17805 for (const auto &operator_codes_ : o.operator_codes) { operator_codes.emplace_back((operator_codes_) ? new tflite::OperatorCodeT(*operator_codes_) : nullptr); }
17806 subgraphs.reserve(o.subgraphs.size());
17807 for (const auto &subgraphs_ : o.subgraphs) { subgraphs.emplace_back((subgraphs_) ? new tflite::SubGraphT(*subgraphs_) : nullptr); }
17808 buffers.reserve(o.buffers.size());
17809 for (const auto &buffers_ : o.buffers) { buffers.emplace_back((buffers_) ? new tflite::BufferT(*buffers_) : nullptr); }
17810 metadata.reserve(o.metadata.size());
17811 for (const auto &metadata_ : o.metadata) { metadata.emplace_back((metadata_) ? new tflite::MetadataT(*metadata_) : nullptr); }
17812 signature_defs.reserve(o.signature_defs.size());
17813 for (const auto &signature_defs_ : o.signature_defs) { signature_defs.emplace_back((signature_defs_) ? new tflite::SignatureDefT(*signature_defs_) : nullptr); }
17814 }
17815
17816 inline ModelT &ModelT::operator=(ModelT o) FLATBUFFERS_NOEXCEPT {
17817 std::swap(version, o.version);
17818 std::swap(operator_codes, o.operator_codes);
17819 std::swap(subgraphs, o.subgraphs);
17820 std::swap(description, o.description);
17821 std::swap(buffers, o.buffers);
17822 std::swap(metadata_buffer, o.metadata_buffer);
17823 std::swap(metadata, o.metadata);
17824 std::swap(signature_defs, o.signature_defs);
17825 return *this;
17826 }
17827
17828 inline ModelT *Model::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
17829 auto _o = std::unique_ptr<ModelT>(new ModelT());
17830 UnPackTo(_o.get(), _resolver);
17831 return _o.release();
17832 }
17833
17834 inline void Model::UnPackTo(ModelT *_o, const flatbuffers::resolver_function_t *_resolver) const {
17835 (void)_o;
17836 (void)_resolver;
17837 { auto _e = version(); _o->version = _e; }
17838 { auto _e = operator_codes(); if (_e) { _o->operator_codes.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->operator_codes[_i] = std::unique_ptr<tflite::OperatorCodeT>(_e->Get(_i)->UnPack(_resolver)); } } }
17839 { auto _e = subgraphs(); if (_e) { _o->subgraphs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->subgraphs[_i] = std::unique_ptr<tflite::SubGraphT>(_e->Get(_i)->UnPack(_resolver)); } } }
17840 { auto _e = description(); if (_e) _o->description = _e->str(); }
17841 { auto _e = buffers(); if (_e) { _o->buffers.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->buffers[_i] = std::unique_ptr<tflite::BufferT>(_e->Get(_i)->UnPack(_resolver)); } } }
17842 { auto _e = metadata_buffer(); if (_e) { _o->metadata_buffer.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->metadata_buffer[_i] = _e->Get(_i); } } }
17843 { auto _e = metadata(); if (_e) { _o->metadata.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->metadata[_i] = std::unique_ptr<tflite::MetadataT>(_e->Get(_i)->UnPack(_resolver)); } } }
17844 { auto _e = signature_defs(); if (_e) { _o->signature_defs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->signature_defs[_i] = std::unique_ptr<tflite::SignatureDefT>(_e->Get(_i)->UnPack(_resolver)); } } }
17845 }
17846
17847 inline flatbuffers::Offset<Model> Model::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ModelT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
17848 return CreateModel(_fbb, _o, _rehasher);
17849 }
17850
17851 inline flatbuffers::Offset<Model> CreateModel(flatbuffers::FlatBufferBuilder &_fbb, const ModelT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
17852 (void)_rehasher;
17853 (void)_o;
17854 struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ModelT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
17855 auto _version = _o->version;
17856 auto _operator_codes = _o->operator_codes.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::OperatorCode>> (_o->operator_codes.size(), [](size_t i, _VectorArgs *__va) { return CreateOperatorCode(*__va->__fbb, __va->__o->operator_codes[i].get(), __va->__rehasher); }, &_va ) : 0;
17857 auto _subgraphs = _o->subgraphs.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::SubGraph>> (_o->subgraphs.size(), [](size_t i, _VectorArgs *__va) { return CreateSubGraph(*__va->__fbb, __va->__o->subgraphs[i].get(), __va->__rehasher); }, &_va ) : 0;
17858 auto _description = _o->description.empty() ? 0 : _fbb.CreateString(_o->description);
17859 auto _buffers = _o->buffers.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::Buffer>> (_o->buffers.size(), [](size_t i, _VectorArgs *__va) { return CreateBuffer(*__va->__fbb, __va->__o->buffers[i].get(), __va->__rehasher); }, &_va ) : 0;
17860 auto _metadata_buffer = _o->metadata_buffer.size() ? _fbb.CreateVector(_o->metadata_buffer) : 0;
17861 auto _metadata = _o->metadata.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::Metadata>> (_o->metadata.size(), [](size_t i, _VectorArgs *__va) { return CreateMetadata(*__va->__fbb, __va->__o->metadata[i].get(), __va->__rehasher); }, &_va ) : 0;
17862 auto _signature_defs = _o->signature_defs.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::SignatureDef>> (_o->signature_defs.size(), [](size_t i, _VectorArgs *__va) { return CreateSignatureDef(*__va->__fbb, __va->__o->signature_defs[i].get(), __va->__rehasher); }, &_va ) : 0;
17863 return tflite::CreateModel(
17864 _fbb,
17865 _version,
17866 _operator_codes,
17867 _subgraphs,
17868 _description,
17869 _buffers,
17870 _metadata_buffer,
17871 _metadata,
17872 _signature_defs);
17873 }
17874
17875 inline bool VerifyQuantizationDetails(flatbuffers::Verifier &verifier, const void *obj, QuantizationDetails type) {
17876 switch (type) {
17877 case QuantizationDetails_NONE: {
17878 return true;
17879 }
17880 case QuantizationDetails_CustomQuantization: {
17881 auto ptr = reinterpret_cast<const tflite::CustomQuantization *>(obj);
17882 return verifier.VerifyTable(ptr);
17883 }
17884 default: return true;
17885 }
17886 }
17887
17888 inline bool VerifyQuantizationDetailsVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<uint8_t> *types) {
17889 if (!values || !types) return !values && !types;
17890 if (values->size() != types->size()) return false;
17891 for (flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
17892 if (!VerifyQuantizationDetails(
17893 verifier, values->Get(i), types->GetEnum<QuantizationDetails>(i))) {
17894 return false;
17895 }
17896 }
17897 return true;
17898 }
17899
17900 inline void *QuantizationDetailsUnion::UnPack(const void *obj, QuantizationDetails type, const flatbuffers::resolver_function_t *resolver) {
17901 (void)resolver;
17902 switch (type) {
17903 case QuantizationDetails_CustomQuantization: {
17904 auto ptr = reinterpret_cast<const tflite::CustomQuantization *>(obj);
17905 return ptr->UnPack(resolver);
17906 }
17907 default: return nullptr;
17908 }
17909 }
17910
17911 inline flatbuffers::Offset<void> QuantizationDetailsUnion::Pack(flatbuffers::FlatBufferBuilder &_fbb, const flatbuffers::rehasher_function_t *_rehasher) const {
17912 (void)_rehasher;
17913 switch (type) {
17914 case QuantizationDetails_CustomQuantization: {
17915 auto ptr = reinterpret_cast<const tflite::CustomQuantizationT *>(value);
17916 return CreateCustomQuantization(_fbb, ptr, _rehasher).Union();
17917 }
17918 default: return 0;
17919 }
17920 }
17921
17922 inline QuantizationDetailsUnion::QuantizationDetailsUnion(const QuantizationDetailsUnion &u) : type(u.type), value(nullptr) {
17923 switch (type) {
17924 case QuantizationDetails_CustomQuantization: {
17925 value = new tflite::CustomQuantizationT(*reinterpret_cast<tflite::CustomQuantizationT *>(u.value));
17926 break;
17927 }
17928 default:
17929 break;
17930 }
17931 }
17932
17933 inline void QuantizationDetailsUnion::Reset() {
17934 switch (type) {
17935 case QuantizationDetails_CustomQuantization: {
17936 auto ptr = reinterpret_cast<tflite::CustomQuantizationT *>(value);
17937 delete ptr;
17938 break;
17939 }
17940 default: break;
17941 }
17942 value = nullptr;
17943 type = QuantizationDetails_NONE;
17944 }
17945
17946 inline bool VerifySparseIndexVector(flatbuffers::Verifier &verifier, const void *obj, SparseIndexVector type) {
17947 switch (type) {
17948 case SparseIndexVector_NONE: {
17949 return true;
17950 }
17951 case SparseIndexVector_Int32Vector: {
17952 auto ptr = reinterpret_cast<const tflite::Int32Vector *>(obj);
17953 return verifier.VerifyTable(ptr);
17954 }
17955 case SparseIndexVector_Uint16Vector: {
17956 auto ptr = reinterpret_cast<const tflite::Uint16Vector *>(obj);
17957 return verifier.VerifyTable(ptr);
17958 }
17959 case SparseIndexVector_Uint8Vector: {
17960 auto ptr = reinterpret_cast<const tflite::Uint8Vector *>(obj);
17961 return verifier.VerifyTable(ptr);
17962 }
17963 default: return true;
17964 }
17965 }
17966
17967 inline bool VerifySparseIndexVectorVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<uint8_t> *types) {
17968 if (!values || !types) return !values && !types;
17969 if (values->size() != types->size()) return false;
17970 for (flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
17971 if (!VerifySparseIndexVector(
17972 verifier, values->Get(i), types->GetEnum<SparseIndexVector>(i))) {
17973 return false;
17974 }
17975 }
17976 return true;
17977 }
17978
17979 inline void *SparseIndexVectorUnion::UnPack(const void *obj, SparseIndexVector type, const flatbuffers::resolver_function_t *resolver) {
17980 (void)resolver;
17981 switch (type) {
17982 case SparseIndexVector_Int32Vector: {
17983 auto ptr = reinterpret_cast<const tflite::Int32Vector *>(obj);
17984 return ptr->UnPack(resolver);
17985 }
17986 case SparseIndexVector_Uint16Vector: {
17987 auto ptr = reinterpret_cast<const tflite::Uint16Vector *>(obj);
17988 return ptr->UnPack(resolver);
17989 }
17990 case SparseIndexVector_Uint8Vector: {
17991 auto ptr = reinterpret_cast<const tflite::Uint8Vector *>(obj);
17992 return ptr->UnPack(resolver);
17993 }
17994 default: return nullptr;
17995 }
17996 }
17997
17998 inline flatbuffers::Offset<void> SparseIndexVectorUnion::Pack(flatbuffers::FlatBufferBuilder &_fbb, const flatbuffers::rehasher_function_t *_rehasher) const {
17999 (void)_rehasher;
18000 switch (type) {
18001 case SparseIndexVector_Int32Vector: {
18002 auto ptr = reinterpret_cast<const tflite::Int32VectorT *>(value);
18003 return CreateInt32Vector(_fbb, ptr, _rehasher).Union();
18004 }
18005 case SparseIndexVector_Uint16Vector: {
18006 auto ptr = reinterpret_cast<const tflite::Uint16VectorT *>(value);
18007 return CreateUint16Vector(_fbb, ptr, _rehasher).Union();
18008 }
18009 case SparseIndexVector_Uint8Vector: {
18010 auto ptr = reinterpret_cast<const tflite::Uint8VectorT *>(value);
18011 return CreateUint8Vector(_fbb, ptr, _rehasher).Union();
18012 }
18013 default: return 0;
18014 }
18015 }
18016
18017 inline SparseIndexVectorUnion::SparseIndexVectorUnion(const SparseIndexVectorUnion &u) : type(u.type), value(nullptr) {
18018 switch (type) {
18019 case SparseIndexVector_Int32Vector: {
18020 value = new tflite::Int32VectorT(*reinterpret_cast<tflite::Int32VectorT *>(u.value));
18021 break;
18022 }
18023 case SparseIndexVector_Uint16Vector: {
18024 value = new tflite::Uint16VectorT(*reinterpret_cast<tflite::Uint16VectorT *>(u.value));
18025 break;
18026 }
18027 case SparseIndexVector_Uint8Vector: {
18028 value = new tflite::Uint8VectorT(*reinterpret_cast<tflite::Uint8VectorT *>(u.value));
18029 break;
18030 }
18031 default:
18032 break;
18033 }
18034 }
18035
18036 inline void SparseIndexVectorUnion::Reset() {
18037 switch (type) {
18038 case SparseIndexVector_Int32Vector: {
18039 auto ptr = reinterpret_cast<tflite::Int32VectorT *>(value);
18040 delete ptr;
18041 break;
18042 }
18043 case SparseIndexVector_Uint16Vector: {
18044 auto ptr = reinterpret_cast<tflite::Uint16VectorT *>(value);
18045 delete ptr;
18046 break;
18047 }
18048 case SparseIndexVector_Uint8Vector: {
18049 auto ptr = reinterpret_cast<tflite::Uint8VectorT *>(value);
18050 delete ptr;
18051 break;
18052 }
18053 default: break;
18054 }
18055 value = nullptr;
18056 type = SparseIndexVector_NONE;
18057 }
18058
18059 inline bool VerifyBuiltinOptions(flatbuffers::Verifier &verifier, const void *obj, BuiltinOptions type) {
18060 switch (type) {
18061 case BuiltinOptions_NONE: {
18062 return true;
18063 }
18064 case BuiltinOptions_Conv2DOptions: {
18065 auto ptr = reinterpret_cast<const tflite::Conv2DOptions *>(obj);
18066 return verifier.VerifyTable(ptr);
18067 }
18068 case BuiltinOptions_DepthwiseConv2DOptions: {
18069 auto ptr = reinterpret_cast<const tflite::DepthwiseConv2DOptions *>(obj);
18070 return verifier.VerifyTable(ptr);
18071 }
18072 case BuiltinOptions_ConcatEmbeddingsOptions: {
18073 auto ptr = reinterpret_cast<const tflite::ConcatEmbeddingsOptions *>(obj);
18074 return verifier.VerifyTable(ptr);
18075 }
18076 case BuiltinOptions_LSHProjectionOptions: {
18077 auto ptr = reinterpret_cast<const tflite::LSHProjectionOptions *>(obj);
18078 return verifier.VerifyTable(ptr);
18079 }
18080 case BuiltinOptions_Pool2DOptions: {
18081 auto ptr = reinterpret_cast<const tflite::Pool2DOptions *>(obj);
18082 return verifier.VerifyTable(ptr);
18083 }
18084 case BuiltinOptions_SVDFOptions: {
18085 auto ptr = reinterpret_cast<const tflite::SVDFOptions *>(obj);
18086 return verifier.VerifyTable(ptr);
18087 }
18088 case BuiltinOptions_RNNOptions: {
18089 auto ptr = reinterpret_cast<const tflite::RNNOptions *>(obj);
18090 return verifier.VerifyTable(ptr);
18091 }
18092 case BuiltinOptions_FullyConnectedOptions: {
18093 auto ptr = reinterpret_cast<const tflite::FullyConnectedOptions *>(obj);
18094 return verifier.VerifyTable(ptr);
18095 }
18096 case BuiltinOptions_SoftmaxOptions: {
18097 auto ptr = reinterpret_cast<const tflite::SoftmaxOptions *>(obj);
18098 return verifier.VerifyTable(ptr);
18099 }
18100 case BuiltinOptions_ConcatenationOptions: {
18101 auto ptr = reinterpret_cast<const tflite::ConcatenationOptions *>(obj);
18102 return verifier.VerifyTable(ptr);
18103 }
18104 case BuiltinOptions_AddOptions: {
18105 auto ptr = reinterpret_cast<const tflite::AddOptions *>(obj);
18106 return verifier.VerifyTable(ptr);
18107 }
18108 case BuiltinOptions_L2NormOptions: {
18109 auto ptr = reinterpret_cast<const tflite::L2NormOptions *>(obj);
18110 return verifier.VerifyTable(ptr);
18111 }
18112 case BuiltinOptions_LocalResponseNormalizationOptions: {
18113 auto ptr = reinterpret_cast<const tflite::LocalResponseNormalizationOptions *>(obj);
18114 return verifier.VerifyTable(ptr);
18115 }
18116 case BuiltinOptions_LSTMOptions: {
18117 auto ptr = reinterpret_cast<const tflite::LSTMOptions *>(obj);
18118 return verifier.VerifyTable(ptr);
18119 }
18120 case BuiltinOptions_ResizeBilinearOptions: {
18121 auto ptr = reinterpret_cast<const tflite::ResizeBilinearOptions *>(obj);
18122 return verifier.VerifyTable(ptr);
18123 }
18124 case BuiltinOptions_CallOptions: {
18125 auto ptr = reinterpret_cast<const tflite::CallOptions *>(obj);
18126 return verifier.VerifyTable(ptr);
18127 }
18128 case BuiltinOptions_ReshapeOptions: {
18129 auto ptr = reinterpret_cast<const tflite::ReshapeOptions *>(obj);
18130 return verifier.VerifyTable(ptr);
18131 }
18132 case BuiltinOptions_SkipGramOptions: {
18133 auto ptr = reinterpret_cast<const tflite::SkipGramOptions *>(obj);
18134 return verifier.VerifyTable(ptr);
18135 }
18136 case BuiltinOptions_SpaceToDepthOptions: {
18137 auto ptr = reinterpret_cast<const tflite::SpaceToDepthOptions *>(obj);
18138 return verifier.VerifyTable(ptr);
18139 }
18140 case BuiltinOptions_EmbeddingLookupSparseOptions: {
18141 auto ptr = reinterpret_cast<const tflite::EmbeddingLookupSparseOptions *>(obj);
18142 return verifier.VerifyTable(ptr);
18143 }
18144 case BuiltinOptions_MulOptions: {
18145 auto ptr = reinterpret_cast<const tflite::MulOptions *>(obj);
18146 return verifier.VerifyTable(ptr);
18147 }
18148 case BuiltinOptions_PadOptions: {
18149 auto ptr = reinterpret_cast<const tflite::PadOptions *>(obj);
18150 return verifier.VerifyTable(ptr);
18151 }
18152 case BuiltinOptions_GatherOptions: {
18153 auto ptr = reinterpret_cast<const tflite::GatherOptions *>(obj);
18154 return verifier.VerifyTable(ptr);
18155 }
18156 case BuiltinOptions_BatchToSpaceNDOptions: {
18157 auto ptr = reinterpret_cast<const tflite::BatchToSpaceNDOptions *>(obj);
18158 return verifier.VerifyTable(ptr);
18159 }
18160 case BuiltinOptions_SpaceToBatchNDOptions: {
18161 auto ptr = reinterpret_cast<const tflite::SpaceToBatchNDOptions *>(obj);
18162 return verifier.VerifyTable(ptr);
18163 }
18164 case BuiltinOptions_TransposeOptions: {
18165 auto ptr = reinterpret_cast<const tflite::TransposeOptions *>(obj);
18166 return verifier.VerifyTable(ptr);
18167 }
18168 case BuiltinOptions_ReducerOptions: {
18169 auto ptr = reinterpret_cast<const tflite::ReducerOptions *>(obj);
18170 return verifier.VerifyTable(ptr);
18171 }
18172 case BuiltinOptions_SubOptions: {
18173 auto ptr = reinterpret_cast<const tflite::SubOptions *>(obj);
18174 return verifier.VerifyTable(ptr);
18175 }
18176 case BuiltinOptions_DivOptions: {
18177 auto ptr = reinterpret_cast<const tflite::DivOptions *>(obj);
18178 return verifier.VerifyTable(ptr);
18179 }
18180 case BuiltinOptions_SqueezeOptions: {
18181 auto ptr = reinterpret_cast<const tflite::SqueezeOptions *>(obj);
18182 return verifier.VerifyTable(ptr);
18183 }
18184 case BuiltinOptions_SequenceRNNOptions: {
18185 auto ptr = reinterpret_cast<const tflite::SequenceRNNOptions *>(obj);
18186 return verifier.VerifyTable(ptr);
18187 }
18188 case BuiltinOptions_StridedSliceOptions: {
18189 auto ptr = reinterpret_cast<const tflite::StridedSliceOptions *>(obj);
18190 return verifier.VerifyTable(ptr);
18191 }
18192 case BuiltinOptions_ExpOptions: {
18193 auto ptr = reinterpret_cast<const tflite::ExpOptions *>(obj);
18194 return verifier.VerifyTable(ptr);
18195 }
18196 case BuiltinOptions_TopKV2Options: {
18197 auto ptr = reinterpret_cast<const tflite::TopKV2Options *>(obj);
18198 return verifier.VerifyTable(ptr);
18199 }
18200 case BuiltinOptions_SplitOptions: {
18201 auto ptr = reinterpret_cast<const tflite::SplitOptions *>(obj);
18202 return verifier.VerifyTable(ptr);
18203 }
18204 case BuiltinOptions_LogSoftmaxOptions: {
18205 auto ptr = reinterpret_cast<const tflite::LogSoftmaxOptions *>(obj);
18206 return verifier.VerifyTable(ptr);
18207 }
18208 case BuiltinOptions_CastOptions: {
18209 auto ptr = reinterpret_cast<const tflite::CastOptions *>(obj);
18210 return verifier.VerifyTable(ptr);
18211 }
18212 case BuiltinOptions_DequantizeOptions: {
18213 auto ptr = reinterpret_cast<const tflite::DequantizeOptions *>(obj);
18214 return verifier.VerifyTable(ptr);
18215 }
18216 case BuiltinOptions_MaximumMinimumOptions: {
18217 auto ptr = reinterpret_cast<const tflite::MaximumMinimumOptions *>(obj);
18218 return verifier.VerifyTable(ptr);
18219 }
18220 case BuiltinOptions_ArgMaxOptions: {
18221 auto ptr = reinterpret_cast<const tflite::ArgMaxOptions *>(obj);
18222 return verifier.VerifyTable(ptr);
18223 }
18224 case BuiltinOptions_LessOptions: {
18225 auto ptr = reinterpret_cast<const tflite::LessOptions *>(obj);
18226 return verifier.VerifyTable(ptr);
18227 }
18228 case BuiltinOptions_NegOptions: {
18229 auto ptr = reinterpret_cast<const tflite::NegOptions *>(obj);
18230 return verifier.VerifyTable(ptr);
18231 }
18232 case BuiltinOptions_PadV2Options: {
18233 auto ptr = reinterpret_cast<const tflite::PadV2Options *>(obj);
18234 return verifier.VerifyTable(ptr);
18235 }
18236 case BuiltinOptions_GreaterOptions: {
18237 auto ptr = reinterpret_cast<const tflite::GreaterOptions *>(obj);
18238 return verifier.VerifyTable(ptr);
18239 }
18240 case BuiltinOptions_GreaterEqualOptions: {
18241 auto ptr = reinterpret_cast<const tflite::GreaterEqualOptions *>(obj);
18242 return verifier.VerifyTable(ptr);
18243 }
18244 case BuiltinOptions_LessEqualOptions: {
18245 auto ptr = reinterpret_cast<const tflite::LessEqualOptions *>(obj);
18246 return verifier.VerifyTable(ptr);
18247 }
18248 case BuiltinOptions_SelectOptions: {
18249 auto ptr = reinterpret_cast<const tflite::SelectOptions *>(obj);
18250 return verifier.VerifyTable(ptr);
18251 }
18252 case BuiltinOptions_SliceOptions: {
18253 auto ptr = reinterpret_cast<const tflite::SliceOptions *>(obj);
18254 return verifier.VerifyTable(ptr);
18255 }
18256 case BuiltinOptions_TransposeConvOptions: {
18257 auto ptr = reinterpret_cast<const tflite::TransposeConvOptions *>(obj);
18258 return verifier.VerifyTable(ptr);
18259 }
18260 case BuiltinOptions_SparseToDenseOptions: {
18261 auto ptr = reinterpret_cast<const tflite::SparseToDenseOptions *>(obj);
18262 return verifier.VerifyTable(ptr);
18263 }
18264 case BuiltinOptions_TileOptions: {
18265 auto ptr = reinterpret_cast<const tflite::TileOptions *>(obj);
18266 return verifier.VerifyTable(ptr);
18267 }
18268 case BuiltinOptions_ExpandDimsOptions: {
18269 auto ptr = reinterpret_cast<const tflite::ExpandDimsOptions *>(obj);
18270 return verifier.VerifyTable(ptr);
18271 }
18272 case BuiltinOptions_EqualOptions: {
18273 auto ptr = reinterpret_cast<const tflite::EqualOptions *>(obj);
18274 return verifier.VerifyTable(ptr);
18275 }
18276 case BuiltinOptions_NotEqualOptions: {
18277 auto ptr = reinterpret_cast<const tflite::NotEqualOptions *>(obj);
18278 return verifier.VerifyTable(ptr);
18279 }
18280 case BuiltinOptions_ShapeOptions: {
18281 auto ptr = reinterpret_cast<const tflite::ShapeOptions *>(obj);
18282 return verifier.VerifyTable(ptr);
18283 }
18284 case BuiltinOptions_PowOptions: {
18285 auto ptr = reinterpret_cast<const tflite::PowOptions *>(obj);
18286 return verifier.VerifyTable(ptr);
18287 }
18288 case BuiltinOptions_ArgMinOptions: {
18289 auto ptr = reinterpret_cast<const tflite::ArgMinOptions *>(obj);
18290 return verifier.VerifyTable(ptr);
18291 }
18292 case BuiltinOptions_FakeQuantOptions: {
18293 auto ptr = reinterpret_cast<const tflite::FakeQuantOptions *>(obj);
18294 return verifier.VerifyTable(ptr);
18295 }
18296 case BuiltinOptions_PackOptions: {
18297 auto ptr = reinterpret_cast<const tflite::PackOptions *>(obj);
18298 return verifier.VerifyTable(ptr);
18299 }
18300 case BuiltinOptions_LogicalOrOptions: {
18301 auto ptr = reinterpret_cast<const tflite::LogicalOrOptions *>(obj);
18302 return verifier.VerifyTable(ptr);
18303 }
18304 case BuiltinOptions_OneHotOptions: {
18305 auto ptr = reinterpret_cast<const tflite::OneHotOptions *>(obj);
18306 return verifier.VerifyTable(ptr);
18307 }
18308 case BuiltinOptions_LogicalAndOptions: {
18309 auto ptr = reinterpret_cast<const tflite::LogicalAndOptions *>(obj);
18310 return verifier.VerifyTable(ptr);
18311 }
18312 case BuiltinOptions_LogicalNotOptions: {
18313 auto ptr = reinterpret_cast<const tflite::LogicalNotOptions *>(obj);
18314 return verifier.VerifyTable(ptr);
18315 }
18316 case BuiltinOptions_UnpackOptions: {
18317 auto ptr = reinterpret_cast<const tflite::UnpackOptions *>(obj);
18318 return verifier.VerifyTable(ptr);
18319 }
18320 case BuiltinOptions_FloorDivOptions: {
18321 auto ptr = reinterpret_cast<const tflite::FloorDivOptions *>(obj);
18322 return verifier.VerifyTable(ptr);
18323 }
18324 case BuiltinOptions_SquareOptions: {
18325 auto ptr = reinterpret_cast<const tflite::SquareOptions *>(obj);
18326 return verifier.VerifyTable(ptr);
18327 }
18328 case BuiltinOptions_ZerosLikeOptions: {
18329 auto ptr = reinterpret_cast<const tflite::ZerosLikeOptions *>(obj);
18330 return verifier.VerifyTable(ptr);
18331 }
18332 case BuiltinOptions_FillOptions: {
18333 auto ptr = reinterpret_cast<const tflite::FillOptions *>(obj);
18334 return verifier.VerifyTable(ptr);
18335 }
18336 case BuiltinOptions_BidirectionalSequenceLSTMOptions: {
18337 auto ptr = reinterpret_cast<const tflite::BidirectionalSequenceLSTMOptions *>(obj);
18338 return verifier.VerifyTable(ptr);
18339 }
18340 case BuiltinOptions_BidirectionalSequenceRNNOptions: {
18341 auto ptr = reinterpret_cast<const tflite::BidirectionalSequenceRNNOptions *>(obj);
18342 return verifier.VerifyTable(ptr);
18343 }
18344 case BuiltinOptions_UnidirectionalSequenceLSTMOptions: {
18345 auto ptr = reinterpret_cast<const tflite::UnidirectionalSequenceLSTMOptions *>(obj);
18346 return verifier.VerifyTable(ptr);
18347 }
18348 case BuiltinOptions_FloorModOptions: {
18349 auto ptr = reinterpret_cast<const tflite::FloorModOptions *>(obj);
18350 return verifier.VerifyTable(ptr);
18351 }
18352 case BuiltinOptions_RangeOptions: {
18353 auto ptr = reinterpret_cast<const tflite::RangeOptions *>(obj);
18354 return verifier.VerifyTable(ptr);
18355 }
18356 case BuiltinOptions_ResizeNearestNeighborOptions: {
18357 auto ptr = reinterpret_cast<const tflite::ResizeNearestNeighborOptions *>(obj);
18358 return verifier.VerifyTable(ptr);
18359 }
18360 case BuiltinOptions_LeakyReluOptions: {
18361 auto ptr = reinterpret_cast<const tflite::LeakyReluOptions *>(obj);
18362 return verifier.VerifyTable(ptr);
18363 }
18364 case BuiltinOptions_SquaredDifferenceOptions: {
18365 auto ptr = reinterpret_cast<const tflite::SquaredDifferenceOptions *>(obj);
18366 return verifier.VerifyTable(ptr);
18367 }
18368 case BuiltinOptions_MirrorPadOptions: {
18369 auto ptr = reinterpret_cast<const tflite::MirrorPadOptions *>(obj);
18370 return verifier.VerifyTable(ptr);
18371 }
18372 case BuiltinOptions_AbsOptions: {
18373 auto ptr = reinterpret_cast<const tflite::AbsOptions *>(obj);
18374 return verifier.VerifyTable(ptr);
18375 }
18376 case BuiltinOptions_SplitVOptions: {
18377 auto ptr = reinterpret_cast<const tflite::SplitVOptions *>(obj);
18378 return verifier.VerifyTable(ptr);
18379 }
18380 case BuiltinOptions_UniqueOptions: {
18381 auto ptr = reinterpret_cast<const tflite::UniqueOptions *>(obj);
18382 return verifier.VerifyTable(ptr);
18383 }
18384 case BuiltinOptions_ReverseV2Options: {
18385 auto ptr = reinterpret_cast<const tflite::ReverseV2Options *>(obj);
18386 return verifier.VerifyTable(ptr);
18387 }
18388 case BuiltinOptions_AddNOptions: {
18389 auto ptr = reinterpret_cast<const tflite::AddNOptions *>(obj);
18390 return verifier.VerifyTable(ptr);
18391 }
18392 case BuiltinOptions_GatherNdOptions: {
18393 auto ptr = reinterpret_cast<const tflite::GatherNdOptions *>(obj);
18394 return verifier.VerifyTable(ptr);
18395 }
18396 case BuiltinOptions_CosOptions: {
18397 auto ptr = reinterpret_cast<const tflite::CosOptions *>(obj);
18398 return verifier.VerifyTable(ptr);
18399 }
18400 case BuiltinOptions_WhereOptions: {
18401 auto ptr = reinterpret_cast<const tflite::WhereOptions *>(obj);
18402 return verifier.VerifyTable(ptr);
18403 }
18404 case BuiltinOptions_RankOptions: {
18405 auto ptr = reinterpret_cast<const tflite::RankOptions *>(obj);
18406 return verifier.VerifyTable(ptr);
18407 }
18408 case BuiltinOptions_ReverseSequenceOptions: {
18409 auto ptr = reinterpret_cast<const tflite::ReverseSequenceOptions *>(obj);
18410 return verifier.VerifyTable(ptr);
18411 }
18412 case BuiltinOptions_MatrixDiagOptions: {
18413 auto ptr = reinterpret_cast<const tflite::MatrixDiagOptions *>(obj);
18414 return verifier.VerifyTable(ptr);
18415 }
18416 case BuiltinOptions_QuantizeOptions: {
18417 auto ptr = reinterpret_cast<const tflite::QuantizeOptions *>(obj);
18418 return verifier.VerifyTable(ptr);
18419 }
18420 case BuiltinOptions_MatrixSetDiagOptions: {
18421 auto ptr = reinterpret_cast<const tflite::MatrixSetDiagOptions *>(obj);
18422 return verifier.VerifyTable(ptr);
18423 }
18424 case BuiltinOptions_HardSwishOptions: {
18425 auto ptr = reinterpret_cast<const tflite::HardSwishOptions *>(obj);
18426 return verifier.VerifyTable(ptr);
18427 }
18428 case BuiltinOptions_IfOptions: {
18429 auto ptr = reinterpret_cast<const tflite::IfOptions *>(obj);
18430 return verifier.VerifyTable(ptr);
18431 }
18432 case BuiltinOptions_WhileOptions: {
18433 auto ptr = reinterpret_cast<const tflite::WhileOptions *>(obj);
18434 return verifier.VerifyTable(ptr);
18435 }
18436 case BuiltinOptions_DepthToSpaceOptions: {
18437 auto ptr = reinterpret_cast<const tflite::DepthToSpaceOptions *>(obj);
18438 return verifier.VerifyTable(ptr);
18439 }
18440 case BuiltinOptions_NonMaxSuppressionV4Options: {
18441 auto ptr = reinterpret_cast<const tflite::NonMaxSuppressionV4Options *>(obj);
18442 return verifier.VerifyTable(ptr);
18443 }
18444 case BuiltinOptions_NonMaxSuppressionV5Options: {
18445 auto ptr = reinterpret_cast<const tflite::NonMaxSuppressionV5Options *>(obj);
18446 return verifier.VerifyTable(ptr);
18447 }
18448 case BuiltinOptions_ScatterNdOptions: {
18449 auto ptr = reinterpret_cast<const tflite::ScatterNdOptions *>(obj);
18450 return verifier.VerifyTable(ptr);
18451 }
18452 case BuiltinOptions_SelectV2Options: {
18453 auto ptr = reinterpret_cast<const tflite::SelectV2Options *>(obj);
18454 return verifier.VerifyTable(ptr);
18455 }
18456 case BuiltinOptions_DensifyOptions: {
18457 auto ptr = reinterpret_cast<const tflite::DensifyOptions *>(obj);
18458 return verifier.VerifyTable(ptr);
18459 }
18460 case BuiltinOptions_SegmentSumOptions: {
18461 auto ptr = reinterpret_cast<const tflite::SegmentSumOptions *>(obj);
18462 return verifier.VerifyTable(ptr);
18463 }
18464 case BuiltinOptions_BatchMatMulOptions: {
18465 auto ptr = reinterpret_cast<const tflite::BatchMatMulOptions *>(obj);
18466 return verifier.VerifyTable(ptr);
18467 }
18468 case BuiltinOptions_CumsumOptions: {
18469 auto ptr = reinterpret_cast<const tflite::CumsumOptions *>(obj);
18470 return verifier.VerifyTable(ptr);
18471 }
18472 case BuiltinOptions_CallOnceOptions: {
18473 auto ptr = reinterpret_cast<const tflite::CallOnceOptions *>(obj);
18474 return verifier.VerifyTable(ptr);
18475 }
18476 case BuiltinOptions_BroadcastToOptions: {
18477 auto ptr = reinterpret_cast<const tflite::BroadcastToOptions *>(obj);
18478 return verifier.VerifyTable(ptr);
18479 }
18480 case BuiltinOptions_Rfft2dOptions: {
18481 auto ptr = reinterpret_cast<const tflite::Rfft2dOptions *>(obj);
18482 return verifier.VerifyTable(ptr);
18483 }
18484 case BuiltinOptions_Conv3DOptions: {
18485 auto ptr = reinterpret_cast<const tflite::Conv3DOptions *>(obj);
18486 return verifier.VerifyTable(ptr);
18487 }
18488 case BuiltinOptions_HashtableOptions: {
18489 auto ptr = reinterpret_cast<const tflite::HashtableOptions *>(obj);
18490 return verifier.VerifyTable(ptr);
18491 }
18492 case BuiltinOptions_HashtableFindOptions: {
18493 auto ptr = reinterpret_cast<const tflite::HashtableFindOptions *>(obj);
18494 return verifier.VerifyTable(ptr);
18495 }
18496 case BuiltinOptions_HashtableImportOptions: {
18497 auto ptr = reinterpret_cast<const tflite::HashtableImportOptions *>(obj);
18498 return verifier.VerifyTable(ptr);
18499 }
18500 case BuiltinOptions_HashtableSizeOptions: {
18501 auto ptr = reinterpret_cast<const tflite::HashtableSizeOptions *>(obj);
18502 return verifier.VerifyTable(ptr);
18503 }
18504 case BuiltinOptions_VarHandleOptions: {
18505 auto ptr = reinterpret_cast<const tflite::VarHandleOptions *>(obj);
18506 return verifier.VerifyTable(ptr);
18507 }
18508 case BuiltinOptions_ReadVariableOptions: {
18509 auto ptr = reinterpret_cast<const tflite::ReadVariableOptions *>(obj);
18510 return verifier.VerifyTable(ptr);
18511 }
18512 case BuiltinOptions_AssignVariableOptions: {
18513 auto ptr = reinterpret_cast<const tflite::AssignVariableOptions *>(obj);
18514 return verifier.VerifyTable(ptr);
18515 }
18516 case BuiltinOptions_RandomOptions: {
18517 auto ptr = reinterpret_cast<const tflite::RandomOptions *>(obj);
18518 return verifier.VerifyTable(ptr);
18519 }
18520 case BuiltinOptions_BucketizeOptions: {
18521 auto ptr = reinterpret_cast<const tflite::BucketizeOptions *>(obj);
18522 return verifier.VerifyTable(ptr);
18523 }
18524 case BuiltinOptions_GeluOptions: {
18525 auto ptr = reinterpret_cast<const tflite::GeluOptions *>(obj);
18526 return verifier.VerifyTable(ptr);
18527 }
18528 case BuiltinOptions_DynamicUpdateSliceOptions: {
18529 auto ptr = reinterpret_cast<const tflite::DynamicUpdateSliceOptions *>(obj);
18530 return verifier.VerifyTable(ptr);
18531 }
18532 case BuiltinOptions_UnsortedSegmentProdOptions: {
18533 auto ptr = reinterpret_cast<const tflite::UnsortedSegmentProdOptions *>(obj);
18534 return verifier.VerifyTable(ptr);
18535 }
18536 case BuiltinOptions_UnsortedSegmentMaxOptions: {
18537 auto ptr = reinterpret_cast<const tflite::UnsortedSegmentMaxOptions *>(obj);
18538 return verifier.VerifyTable(ptr);
18539 }
18540 case BuiltinOptions_UnsortedSegmentMinOptions: {
18541 auto ptr = reinterpret_cast<const tflite::UnsortedSegmentMinOptions *>(obj);
18542 return verifier.VerifyTable(ptr);
18543 }
18544 case BuiltinOptions_UnsortedSegmentSumOptions: {
18545 auto ptr = reinterpret_cast<const tflite::UnsortedSegmentSumOptions *>(obj);
18546 return verifier.VerifyTable(ptr);
18547 }
18548 case BuiltinOptions_ATan2Options: {
18549 auto ptr = reinterpret_cast<const tflite::ATan2Options *>(obj);
18550 return verifier.VerifyTable(ptr);
18551 }
18552 case BuiltinOptions_SignOptions: {
18553 auto ptr = reinterpret_cast<const tflite::SignOptions *>(obj);
18554 return verifier.VerifyTable(ptr);
18555 }
18556 default: return true;
18557 }
18558 }
18559
18560 inline bool VerifyBuiltinOptionsVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<uint8_t> *types) {
18561 if (!values || !types) return !values && !types;
18562 if (values->size() != types->size()) return false;
18563 for (flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
18564 if (!VerifyBuiltinOptions(
18565 verifier, values->Get(i), types->GetEnum<BuiltinOptions>(i))) {
18566 return false;
18567 }
18568 }
18569 return true;
18570 }
18571
18572 inline void *BuiltinOptionsUnion::UnPack(const void *obj, BuiltinOptions type, const flatbuffers::resolver_function_t *resolver) {
18573 (void)resolver;
18574 switch (type) {
18575 case BuiltinOptions_Conv2DOptions: {
18576 auto ptr = reinterpret_cast<const tflite::Conv2DOptions *>(obj);
18577 return ptr->UnPack(resolver);
18578 }
18579 case BuiltinOptions_DepthwiseConv2DOptions: {
18580 auto ptr = reinterpret_cast<const tflite::DepthwiseConv2DOptions *>(obj);
18581 return ptr->UnPack(resolver);
18582 }
18583 case BuiltinOptions_ConcatEmbeddingsOptions: {
18584 auto ptr = reinterpret_cast<const tflite::ConcatEmbeddingsOptions *>(obj);
18585 return ptr->UnPack(resolver);
18586 }
18587 case BuiltinOptions_LSHProjectionOptions: {
18588 auto ptr = reinterpret_cast<const tflite::LSHProjectionOptions *>(obj);
18589 return ptr->UnPack(resolver);
18590 }
18591 case BuiltinOptions_Pool2DOptions: {
18592 auto ptr = reinterpret_cast<const tflite::Pool2DOptions *>(obj);
18593 return ptr->UnPack(resolver);
18594 }
18595 case BuiltinOptions_SVDFOptions: {
18596 auto ptr = reinterpret_cast<const tflite::SVDFOptions *>(obj);
18597 return ptr->UnPack(resolver);
18598 }
18599 case BuiltinOptions_RNNOptions: {
18600 auto ptr = reinterpret_cast<const tflite::RNNOptions *>(obj);
18601 return ptr->UnPack(resolver);
18602 }
18603 case BuiltinOptions_FullyConnectedOptions: {
18604 auto ptr = reinterpret_cast<const tflite::FullyConnectedOptions *>(obj);
18605 return ptr->UnPack(resolver);
18606 }
18607 case BuiltinOptions_SoftmaxOptions: {
18608 auto ptr = reinterpret_cast<const tflite::SoftmaxOptions *>(obj);
18609 return ptr->UnPack(resolver);
18610 }
18611 case BuiltinOptions_ConcatenationOptions: {
18612 auto ptr = reinterpret_cast<const tflite::ConcatenationOptions *>(obj);
18613 return ptr->UnPack(resolver);
18614 }
18615 case BuiltinOptions_AddOptions: {
18616 auto ptr = reinterpret_cast<const tflite::AddOptions *>(obj);
18617 return ptr->UnPack(resolver);
18618 }
18619 case BuiltinOptions_L2NormOptions: {
18620 auto ptr = reinterpret_cast<const tflite::L2NormOptions *>(obj);
18621 return ptr->UnPack(resolver);
18622 }
18623 case BuiltinOptions_LocalResponseNormalizationOptions: {
18624 auto ptr = reinterpret_cast<const tflite::LocalResponseNormalizationOptions *>(obj);
18625 return ptr->UnPack(resolver);
18626 }
18627 case BuiltinOptions_LSTMOptions: {
18628 auto ptr = reinterpret_cast<const tflite::LSTMOptions *>(obj);
18629 return ptr->UnPack(resolver);
18630 }
18631 case BuiltinOptions_ResizeBilinearOptions: {
18632 auto ptr = reinterpret_cast<const tflite::ResizeBilinearOptions *>(obj);
18633 return ptr->UnPack(resolver);
18634 }
18635 case BuiltinOptions_CallOptions: {
18636 auto ptr = reinterpret_cast<const tflite::CallOptions *>(obj);
18637 return ptr->UnPack(resolver);
18638 }
18639 case BuiltinOptions_ReshapeOptions: {
18640 auto ptr = reinterpret_cast<const tflite::ReshapeOptions *>(obj);
18641 return ptr->UnPack(resolver);
18642 }
18643 case BuiltinOptions_SkipGramOptions: {
18644 auto ptr = reinterpret_cast<const tflite::SkipGramOptions *>(obj);
18645 return ptr->UnPack(resolver);
18646 }
18647 case BuiltinOptions_SpaceToDepthOptions: {
18648 auto ptr = reinterpret_cast<const tflite::SpaceToDepthOptions *>(obj);
18649 return ptr->UnPack(resolver);
18650 }
18651 case BuiltinOptions_EmbeddingLookupSparseOptions: {
18652 auto ptr = reinterpret_cast<const tflite::EmbeddingLookupSparseOptions *>(obj);
18653 return ptr->UnPack(resolver);
18654 }
18655 case BuiltinOptions_MulOptions: {
18656 auto ptr = reinterpret_cast<const tflite::MulOptions *>(obj);
18657 return ptr->UnPack(resolver);
18658 }
18659 case BuiltinOptions_PadOptions: {
18660 auto ptr = reinterpret_cast<const tflite::PadOptions *>(obj);
18661 return ptr->UnPack(resolver);
18662 }
18663 case BuiltinOptions_GatherOptions: {
18664 auto ptr = reinterpret_cast<const tflite::GatherOptions *>(obj);
18665 return ptr->UnPack(resolver);
18666 }
18667 case BuiltinOptions_BatchToSpaceNDOptions: {
18668 auto ptr = reinterpret_cast<const tflite::BatchToSpaceNDOptions *>(obj);
18669 return ptr->UnPack(resolver);
18670 }
18671 case BuiltinOptions_SpaceToBatchNDOptions: {
18672 auto ptr = reinterpret_cast<const tflite::SpaceToBatchNDOptions *>(obj);
18673 return ptr->UnPack(resolver);
18674 }
18675 case BuiltinOptions_TransposeOptions: {
18676 auto ptr = reinterpret_cast<const tflite::TransposeOptions *>(obj);
18677 return ptr->UnPack(resolver);
18678 }
18679 case BuiltinOptions_ReducerOptions: {
18680 auto ptr = reinterpret_cast<const tflite::ReducerOptions *>(obj);
18681 return ptr->UnPack(resolver);
18682 }
18683 case BuiltinOptions_SubOptions: {
18684 auto ptr = reinterpret_cast<const tflite::SubOptions *>(obj);
18685 return ptr->UnPack(resolver);
18686 }
18687 case BuiltinOptions_DivOptions: {
18688 auto ptr = reinterpret_cast<const tflite::DivOptions *>(obj);
18689 return ptr->UnPack(resolver);
18690 }
18691 case BuiltinOptions_SqueezeOptions: {
18692 auto ptr = reinterpret_cast<const tflite::SqueezeOptions *>(obj);
18693 return ptr->UnPack(resolver);
18694 }
18695 case BuiltinOptions_SequenceRNNOptions: {
18696 auto ptr = reinterpret_cast<const tflite::SequenceRNNOptions *>(obj);
18697 return ptr->UnPack(resolver);
18698 }
18699 case BuiltinOptions_StridedSliceOptions: {
18700 auto ptr = reinterpret_cast<const tflite::StridedSliceOptions *>(obj);
18701 return ptr->UnPack(resolver);
18702 }
18703 case BuiltinOptions_ExpOptions: {
18704 auto ptr = reinterpret_cast<const tflite::ExpOptions *>(obj);
18705 return ptr->UnPack(resolver);
18706 }
18707 case BuiltinOptions_TopKV2Options: {
18708 auto ptr = reinterpret_cast<const tflite::TopKV2Options *>(obj);
18709 return ptr->UnPack(resolver);
18710 }
18711 case BuiltinOptions_SplitOptions: {
18712 auto ptr = reinterpret_cast<const tflite::SplitOptions *>(obj);
18713 return ptr->UnPack(resolver);
18714 }
18715 case BuiltinOptions_LogSoftmaxOptions: {
18716 auto ptr = reinterpret_cast<const tflite::LogSoftmaxOptions *>(obj);
18717 return ptr->UnPack(resolver);
18718 }
18719 case BuiltinOptions_CastOptions: {
18720 auto ptr = reinterpret_cast<const tflite::CastOptions *>(obj);
18721 return ptr->UnPack(resolver);
18722 }
18723 case BuiltinOptions_DequantizeOptions: {
18724 auto ptr = reinterpret_cast<const tflite::DequantizeOptions *>(obj);
18725 return ptr->UnPack(resolver);
18726 }
18727 case BuiltinOptions_MaximumMinimumOptions: {
18728 auto ptr = reinterpret_cast<const tflite::MaximumMinimumOptions *>(obj);
18729 return ptr->UnPack(resolver);
18730 }
18731 case BuiltinOptions_ArgMaxOptions: {
18732 auto ptr = reinterpret_cast<const tflite::ArgMaxOptions *>(obj);
18733 return ptr->UnPack(resolver);
18734 }
18735 case BuiltinOptions_LessOptions: {
18736 auto ptr = reinterpret_cast<const tflite::LessOptions *>(obj);
18737 return ptr->UnPack(resolver);
18738 }
18739 case BuiltinOptions_NegOptions: {
18740 auto ptr = reinterpret_cast<const tflite::NegOptions *>(obj);
18741 return ptr->UnPack(resolver);
18742 }
18743 case BuiltinOptions_PadV2Options: {
18744 auto ptr = reinterpret_cast<const tflite::PadV2Options *>(obj);
18745 return ptr->UnPack(resolver);
18746 }
18747 case BuiltinOptions_GreaterOptions: {
18748 auto ptr = reinterpret_cast<const tflite::GreaterOptions *>(obj);
18749 return ptr->UnPack(resolver);
18750 }
18751 case BuiltinOptions_GreaterEqualOptions: {
18752 auto ptr = reinterpret_cast<const tflite::GreaterEqualOptions *>(obj);
18753 return ptr->UnPack(resolver);
18754 }
18755 case BuiltinOptions_LessEqualOptions: {
18756 auto ptr = reinterpret_cast<const tflite::LessEqualOptions *>(obj);
18757 return ptr->UnPack(resolver);
18758 }
18759 case BuiltinOptions_SelectOptions: {
18760 auto ptr = reinterpret_cast<const tflite::SelectOptions *>(obj);
18761 return ptr->UnPack(resolver);
18762 }
18763 case BuiltinOptions_SliceOptions: {
18764 auto ptr = reinterpret_cast<const tflite::SliceOptions *>(obj);
18765 return ptr->UnPack(resolver);
18766 }
18767 case BuiltinOptions_TransposeConvOptions: {
18768 auto ptr = reinterpret_cast<const tflite::TransposeConvOptions *>(obj);
18769 return ptr->UnPack(resolver);
18770 }
18771 case BuiltinOptions_SparseToDenseOptions: {
18772 auto ptr = reinterpret_cast<const tflite::SparseToDenseOptions *>(obj);
18773 return ptr->UnPack(resolver);
18774 }
18775 case BuiltinOptions_TileOptions: {
18776 auto ptr = reinterpret_cast<const tflite::TileOptions *>(obj);
18777 return ptr->UnPack(resolver);
18778 }
18779 case BuiltinOptions_ExpandDimsOptions: {
18780 auto ptr = reinterpret_cast<const tflite::ExpandDimsOptions *>(obj);
18781 return ptr->UnPack(resolver);
18782 }
18783 case BuiltinOptions_EqualOptions: {
18784 auto ptr = reinterpret_cast<const tflite::EqualOptions *>(obj);
18785 return ptr->UnPack(resolver);
18786 }
18787 case BuiltinOptions_NotEqualOptions: {
18788 auto ptr = reinterpret_cast<const tflite::NotEqualOptions *>(obj);
18789 return ptr->UnPack(resolver);
18790 }
18791 case BuiltinOptions_ShapeOptions: {
18792 auto ptr = reinterpret_cast<const tflite::ShapeOptions *>(obj);
18793 return ptr->UnPack(resolver);
18794 }
18795 case BuiltinOptions_PowOptions: {
18796 auto ptr = reinterpret_cast<const tflite::PowOptions *>(obj);
18797 return ptr->UnPack(resolver);
18798 }
18799 case BuiltinOptions_ArgMinOptions: {
18800 auto ptr = reinterpret_cast<const tflite::ArgMinOptions *>(obj);
18801 return ptr->UnPack(resolver);
18802 }
18803 case BuiltinOptions_FakeQuantOptions: {
18804 auto ptr = reinterpret_cast<const tflite::FakeQuantOptions *>(obj);
18805 return ptr->UnPack(resolver);
18806 }
18807 case BuiltinOptions_PackOptions: {
18808 auto ptr = reinterpret_cast<const tflite::PackOptions *>(obj);
18809 return ptr->UnPack(resolver);
18810 }
18811 case BuiltinOptions_LogicalOrOptions: {
18812 auto ptr = reinterpret_cast<const tflite::LogicalOrOptions *>(obj);
18813 return ptr->UnPack(resolver);
18814 }
18815 case BuiltinOptions_OneHotOptions: {
18816 auto ptr = reinterpret_cast<const tflite::OneHotOptions *>(obj);
18817 return ptr->UnPack(resolver);
18818 }
18819 case BuiltinOptions_LogicalAndOptions: {
18820 auto ptr = reinterpret_cast<const tflite::LogicalAndOptions *>(obj);
18821 return ptr->UnPack(resolver);
18822 }
18823 case BuiltinOptions_LogicalNotOptions: {
18824 auto ptr = reinterpret_cast<const tflite::LogicalNotOptions *>(obj);
18825 return ptr->UnPack(resolver);
18826 }
18827 case BuiltinOptions_UnpackOptions: {
18828 auto ptr = reinterpret_cast<const tflite::UnpackOptions *>(obj);
18829 return ptr->UnPack(resolver);
18830 }
18831 case BuiltinOptions_FloorDivOptions: {
18832 auto ptr = reinterpret_cast<const tflite::FloorDivOptions *>(obj);
18833 return ptr->UnPack(resolver);
18834 }
18835 case BuiltinOptions_SquareOptions: {
18836 auto ptr = reinterpret_cast<const tflite::SquareOptions *>(obj);
18837 return ptr->UnPack(resolver);
18838 }
18839 case BuiltinOptions_ZerosLikeOptions: {
18840 auto ptr = reinterpret_cast<const tflite::ZerosLikeOptions *>(obj);
18841 return ptr->UnPack(resolver);
18842 }
18843 case BuiltinOptions_FillOptions: {
18844 auto ptr = reinterpret_cast<const tflite::FillOptions *>(obj);
18845 return ptr->UnPack(resolver);
18846 }
18847 case BuiltinOptions_BidirectionalSequenceLSTMOptions: {
18848 auto ptr = reinterpret_cast<const tflite::BidirectionalSequenceLSTMOptions *>(obj);
18849 return ptr->UnPack(resolver);
18850 }
18851 case BuiltinOptions_BidirectionalSequenceRNNOptions: {
18852 auto ptr = reinterpret_cast<const tflite::BidirectionalSequenceRNNOptions *>(obj);
18853 return ptr->UnPack(resolver);
18854 }
18855 case BuiltinOptions_UnidirectionalSequenceLSTMOptions: {
18856 auto ptr = reinterpret_cast<const tflite::UnidirectionalSequenceLSTMOptions *>(obj);
18857 return ptr->UnPack(resolver);
18858 }
18859 case BuiltinOptions_FloorModOptions: {
18860 auto ptr = reinterpret_cast<const tflite::FloorModOptions *>(obj);
18861 return ptr->UnPack(resolver);
18862 }
18863 case BuiltinOptions_RangeOptions: {
18864 auto ptr = reinterpret_cast<const tflite::RangeOptions *>(obj);
18865 return ptr->UnPack(resolver);
18866 }
18867 case BuiltinOptions_ResizeNearestNeighborOptions: {
18868 auto ptr = reinterpret_cast<const tflite::ResizeNearestNeighborOptions *>(obj);
18869 return ptr->UnPack(resolver);
18870 }
18871 case BuiltinOptions_LeakyReluOptions: {
18872 auto ptr = reinterpret_cast<const tflite::LeakyReluOptions *>(obj);
18873 return ptr->UnPack(resolver);
18874 }
18875 case BuiltinOptions_SquaredDifferenceOptions: {
18876 auto ptr = reinterpret_cast<const tflite::SquaredDifferenceOptions *>(obj);
18877 return ptr->UnPack(resolver);
18878 }
18879 case BuiltinOptions_MirrorPadOptions: {
18880 auto ptr = reinterpret_cast<const tflite::MirrorPadOptions *>(obj);
18881 return ptr->UnPack(resolver);
18882 }
18883 case BuiltinOptions_AbsOptions: {
18884 auto ptr = reinterpret_cast<const tflite::AbsOptions *>(obj);
18885 return ptr->UnPack(resolver);
18886 }
18887 case BuiltinOptions_SplitVOptions: {
18888 auto ptr = reinterpret_cast<const tflite::SplitVOptions *>(obj);
18889 return ptr->UnPack(resolver);
18890 }
18891 case BuiltinOptions_UniqueOptions: {
18892 auto ptr = reinterpret_cast<const tflite::UniqueOptions *>(obj);
18893 return ptr->UnPack(resolver);
18894 }
18895 case BuiltinOptions_ReverseV2Options: {
18896 auto ptr = reinterpret_cast<const tflite::ReverseV2Options *>(obj);
18897 return ptr->UnPack(resolver);
18898 }
18899 case BuiltinOptions_AddNOptions: {
18900 auto ptr = reinterpret_cast<const tflite::AddNOptions *>(obj);
18901 return ptr->UnPack(resolver);
18902 }
18903 case BuiltinOptions_GatherNdOptions: {
18904 auto ptr = reinterpret_cast<const tflite::GatherNdOptions *>(obj);
18905 return ptr->UnPack(resolver);
18906 }
18907 case BuiltinOptions_CosOptions: {
18908 auto ptr = reinterpret_cast<const tflite::CosOptions *>(obj);
18909 return ptr->UnPack(resolver);
18910 }
18911 case BuiltinOptions_WhereOptions: {
18912 auto ptr = reinterpret_cast<const tflite::WhereOptions *>(obj);
18913 return ptr->UnPack(resolver);
18914 }
18915 case BuiltinOptions_RankOptions: {
18916 auto ptr = reinterpret_cast<const tflite::RankOptions *>(obj);
18917 return ptr->UnPack(resolver);
18918 }
18919 case BuiltinOptions_ReverseSequenceOptions: {
18920 auto ptr = reinterpret_cast<const tflite::ReverseSequenceOptions *>(obj);
18921 return ptr->UnPack(resolver);
18922 }
18923 case BuiltinOptions_MatrixDiagOptions: {
18924 auto ptr = reinterpret_cast<const tflite::MatrixDiagOptions *>(obj);
18925 return ptr->UnPack(resolver);
18926 }
18927 case BuiltinOptions_QuantizeOptions: {
18928 auto ptr = reinterpret_cast<const tflite::QuantizeOptions *>(obj);
18929 return ptr->UnPack(resolver);
18930 }
18931 case BuiltinOptions_MatrixSetDiagOptions: {
18932 auto ptr = reinterpret_cast<const tflite::MatrixSetDiagOptions *>(obj);
18933 return ptr->UnPack(resolver);
18934 }
18935 case BuiltinOptions_HardSwishOptions: {
18936 auto ptr = reinterpret_cast<const tflite::HardSwishOptions *>(obj);
18937 return ptr->UnPack(resolver);
18938 }
18939 case BuiltinOptions_IfOptions: {
18940 auto ptr = reinterpret_cast<const tflite::IfOptions *>(obj);
18941 return ptr->UnPack(resolver);
18942 }
18943 case BuiltinOptions_WhileOptions: {
18944 auto ptr = reinterpret_cast<const tflite::WhileOptions *>(obj);
18945 return ptr->UnPack(resolver);
18946 }
18947 case BuiltinOptions_DepthToSpaceOptions: {
18948 auto ptr = reinterpret_cast<const tflite::DepthToSpaceOptions *>(obj);
18949 return ptr->UnPack(resolver);
18950 }
18951 case BuiltinOptions_NonMaxSuppressionV4Options: {
18952 auto ptr = reinterpret_cast<const tflite::NonMaxSuppressionV4Options *>(obj);
18953 return ptr->UnPack(resolver);
18954 }
18955 case BuiltinOptions_NonMaxSuppressionV5Options: {
18956 auto ptr = reinterpret_cast<const tflite::NonMaxSuppressionV5Options *>(obj);
18957 return ptr->UnPack(resolver);
18958 }
18959 case BuiltinOptions_ScatterNdOptions: {
18960 auto ptr = reinterpret_cast<const tflite::ScatterNdOptions *>(obj);
18961 return ptr->UnPack(resolver);
18962 }
18963 case BuiltinOptions_SelectV2Options: {
18964 auto ptr = reinterpret_cast<const tflite::SelectV2Options *>(obj);
18965 return ptr->UnPack(resolver);
18966 }
18967 case BuiltinOptions_DensifyOptions: {
18968 auto ptr = reinterpret_cast<const tflite::DensifyOptions *>(obj);
18969 return ptr->UnPack(resolver);
18970 }
18971 case BuiltinOptions_SegmentSumOptions: {
18972 auto ptr = reinterpret_cast<const tflite::SegmentSumOptions *>(obj);
18973 return ptr->UnPack(resolver);
18974 }
18975 case BuiltinOptions_BatchMatMulOptions: {
18976 auto ptr = reinterpret_cast<const tflite::BatchMatMulOptions *>(obj);
18977 return ptr->UnPack(resolver);
18978 }
18979 case BuiltinOptions_CumsumOptions: {
18980 auto ptr = reinterpret_cast<const tflite::CumsumOptions *>(obj);
18981 return ptr->UnPack(resolver);
18982 }
18983 case BuiltinOptions_CallOnceOptions: {
18984 auto ptr = reinterpret_cast<const tflite::CallOnceOptions *>(obj);
18985 return ptr->UnPack(resolver);
18986 }
18987 case BuiltinOptions_BroadcastToOptions: {
18988 auto ptr = reinterpret_cast<const tflite::BroadcastToOptions *>(obj);
18989 return ptr->UnPack(resolver);
18990 }
18991 case BuiltinOptions_Rfft2dOptions: {
18992 auto ptr = reinterpret_cast<const tflite::Rfft2dOptions *>(obj);
18993 return ptr->UnPack(resolver);
18994 }
18995 case BuiltinOptions_Conv3DOptions: {
18996 auto ptr = reinterpret_cast<const tflite::Conv3DOptions *>(obj);
18997 return ptr->UnPack(resolver);
18998 }
18999 case BuiltinOptions_HashtableOptions: {
19000 auto ptr = reinterpret_cast<const tflite::HashtableOptions *>(obj);
19001 return ptr->UnPack(resolver);
19002 }
19003 case BuiltinOptions_HashtableFindOptions: {
19004 auto ptr = reinterpret_cast<const tflite::HashtableFindOptions *>(obj);
19005 return ptr->UnPack(resolver);
19006 }
19007 case BuiltinOptions_HashtableImportOptions: {
19008 auto ptr = reinterpret_cast<const tflite::HashtableImportOptions *>(obj);
19009 return ptr->UnPack(resolver);
19010 }
19011 case BuiltinOptions_HashtableSizeOptions: {
19012 auto ptr = reinterpret_cast<const tflite::HashtableSizeOptions *>(obj);
19013 return ptr->UnPack(resolver);
19014 }
19015 case BuiltinOptions_VarHandleOptions: {
19016 auto ptr = reinterpret_cast<const tflite::VarHandleOptions *>(obj);
19017 return ptr->UnPack(resolver);
19018 }
19019 case BuiltinOptions_ReadVariableOptions: {
19020 auto ptr = reinterpret_cast<const tflite::ReadVariableOptions *>(obj);
19021 return ptr->UnPack(resolver);
19022 }
19023 case BuiltinOptions_AssignVariableOptions: {
19024 auto ptr = reinterpret_cast<const tflite::AssignVariableOptions *>(obj);
19025 return ptr->UnPack(resolver);
19026 }
19027 case BuiltinOptions_RandomOptions: {
19028 auto ptr = reinterpret_cast<const tflite::RandomOptions *>(obj);
19029 return ptr->UnPack(resolver);
19030 }
19031 case BuiltinOptions_BucketizeOptions: {
19032 auto ptr = reinterpret_cast<const tflite::BucketizeOptions *>(obj);
19033 return ptr->UnPack(resolver);
19034 }
19035 case BuiltinOptions_GeluOptions: {
19036 auto ptr = reinterpret_cast<const tflite::GeluOptions *>(obj);
19037 return ptr->UnPack(resolver);
19038 }
19039 case BuiltinOptions_DynamicUpdateSliceOptions: {
19040 auto ptr = reinterpret_cast<const tflite::DynamicUpdateSliceOptions *>(obj);
19041 return ptr->UnPack(resolver);
19042 }
19043 case BuiltinOptions_UnsortedSegmentProdOptions: {
19044 auto ptr = reinterpret_cast<const tflite::UnsortedSegmentProdOptions *>(obj);
19045 return ptr->UnPack(resolver);
19046 }
19047 case BuiltinOptions_UnsortedSegmentMaxOptions: {
19048 auto ptr = reinterpret_cast<const tflite::UnsortedSegmentMaxOptions *>(obj);
19049 return ptr->UnPack(resolver);
19050 }
19051 case BuiltinOptions_UnsortedSegmentMinOptions: {
19052 auto ptr = reinterpret_cast<const tflite::UnsortedSegmentMinOptions *>(obj);
19053 return ptr->UnPack(resolver);
19054 }
19055 case BuiltinOptions_UnsortedSegmentSumOptions: {
19056 auto ptr = reinterpret_cast<const tflite::UnsortedSegmentSumOptions *>(obj);
19057 return ptr->UnPack(resolver);
19058 }
19059 case BuiltinOptions_ATan2Options: {
19060 auto ptr = reinterpret_cast<const tflite::ATan2Options *>(obj);
19061 return ptr->UnPack(resolver);
19062 }
19063 case BuiltinOptions_SignOptions: {
19064 auto ptr = reinterpret_cast<const tflite::SignOptions *>(obj);
19065 return ptr->UnPack(resolver);
19066 }
19067 default: return nullptr;
19068 }
19069 }
19070
19071 inline flatbuffers::Offset<void> BuiltinOptionsUnion::Pack(flatbuffers::FlatBufferBuilder &_fbb, const flatbuffers::rehasher_function_t *_rehasher) const {
19072 (void)_rehasher;
19073 switch (type) {
19074 case BuiltinOptions_Conv2DOptions: {
19075 auto ptr = reinterpret_cast<const tflite::Conv2DOptionsT *>(value);
19076 return CreateConv2DOptions(_fbb, ptr, _rehasher).Union();
19077 }
19078 case BuiltinOptions_DepthwiseConv2DOptions: {
19079 auto ptr = reinterpret_cast<const tflite::DepthwiseConv2DOptionsT *>(value);
19080 return CreateDepthwiseConv2DOptions(_fbb, ptr, _rehasher).Union();
19081 }
19082 case BuiltinOptions_ConcatEmbeddingsOptions: {
19083 auto ptr = reinterpret_cast<const tflite::ConcatEmbeddingsOptionsT *>(value);
19084 return CreateConcatEmbeddingsOptions(_fbb, ptr, _rehasher).Union();
19085 }
19086 case BuiltinOptions_LSHProjectionOptions: {
19087 auto ptr = reinterpret_cast<const tflite::LSHProjectionOptionsT *>(value);
19088 return CreateLSHProjectionOptions(_fbb, ptr, _rehasher).Union();
19089 }
19090 case BuiltinOptions_Pool2DOptions: {
19091 auto ptr = reinterpret_cast<const tflite::Pool2DOptionsT *>(value);
19092 return CreatePool2DOptions(_fbb, ptr, _rehasher).Union();
19093 }
19094 case BuiltinOptions_SVDFOptions: {
19095 auto ptr = reinterpret_cast<const tflite::SVDFOptionsT *>(value);
19096 return CreateSVDFOptions(_fbb, ptr, _rehasher).Union();
19097 }
19098 case BuiltinOptions_RNNOptions: {
19099 auto ptr = reinterpret_cast<const tflite::RNNOptionsT *>(value);
19100 return CreateRNNOptions(_fbb, ptr, _rehasher).Union();
19101 }
19102 case BuiltinOptions_FullyConnectedOptions: {
19103 auto ptr = reinterpret_cast<const tflite::FullyConnectedOptionsT *>(value);
19104 return CreateFullyConnectedOptions(_fbb, ptr, _rehasher).Union();
19105 }
19106 case BuiltinOptions_SoftmaxOptions: {
19107 auto ptr = reinterpret_cast<const tflite::SoftmaxOptionsT *>(value);
19108 return CreateSoftmaxOptions(_fbb, ptr, _rehasher).Union();
19109 }
19110 case BuiltinOptions_ConcatenationOptions: {
19111 auto ptr = reinterpret_cast<const tflite::ConcatenationOptionsT *>(value);
19112 return CreateConcatenationOptions(_fbb, ptr, _rehasher).Union();
19113 }
19114 case BuiltinOptions_AddOptions: {
19115 auto ptr = reinterpret_cast<const tflite::AddOptionsT *>(value);
19116 return CreateAddOptions(_fbb, ptr, _rehasher).Union();
19117 }
19118 case BuiltinOptions_L2NormOptions: {
19119 auto ptr = reinterpret_cast<const tflite::L2NormOptionsT *>(value);
19120 return CreateL2NormOptions(_fbb, ptr, _rehasher).Union();
19121 }
19122 case BuiltinOptions_LocalResponseNormalizationOptions: {
19123 auto ptr = reinterpret_cast<const tflite::LocalResponseNormalizationOptionsT *>(value);
19124 return CreateLocalResponseNormalizationOptions(_fbb, ptr, _rehasher).Union();
19125 }
19126 case BuiltinOptions_LSTMOptions: {
19127 auto ptr = reinterpret_cast<const tflite::LSTMOptionsT *>(value);
19128 return CreateLSTMOptions(_fbb, ptr, _rehasher).Union();
19129 }
19130 case BuiltinOptions_ResizeBilinearOptions: {
19131 auto ptr = reinterpret_cast<const tflite::ResizeBilinearOptionsT *>(value);
19132 return CreateResizeBilinearOptions(_fbb, ptr, _rehasher).Union();
19133 }
19134 case BuiltinOptions_CallOptions: {
19135 auto ptr = reinterpret_cast<const tflite::CallOptionsT *>(value);
19136 return CreateCallOptions(_fbb, ptr, _rehasher).Union();
19137 }
19138 case BuiltinOptions_ReshapeOptions: {
19139 auto ptr = reinterpret_cast<const tflite::ReshapeOptionsT *>(value);
19140 return CreateReshapeOptions(_fbb, ptr, _rehasher).Union();
19141 }
19142 case BuiltinOptions_SkipGramOptions: {
19143 auto ptr = reinterpret_cast<const tflite::SkipGramOptionsT *>(value);
19144 return CreateSkipGramOptions(_fbb, ptr, _rehasher).Union();
19145 }
19146 case BuiltinOptions_SpaceToDepthOptions: {
19147 auto ptr = reinterpret_cast<const tflite::SpaceToDepthOptionsT *>(value);
19148 return CreateSpaceToDepthOptions(_fbb, ptr, _rehasher).Union();
19149 }
19150 case BuiltinOptions_EmbeddingLookupSparseOptions: {
19151 auto ptr = reinterpret_cast<const tflite::EmbeddingLookupSparseOptionsT *>(value);
19152 return CreateEmbeddingLookupSparseOptions(_fbb, ptr, _rehasher).Union();
19153 }
19154 case BuiltinOptions_MulOptions: {
19155 auto ptr = reinterpret_cast<const tflite::MulOptionsT *>(value);
19156 return CreateMulOptions(_fbb, ptr, _rehasher).Union();
19157 }
19158 case BuiltinOptions_PadOptions: {
19159 auto ptr = reinterpret_cast<const tflite::PadOptionsT *>(value);
19160 return CreatePadOptions(_fbb, ptr, _rehasher).Union();
19161 }
19162 case BuiltinOptions_GatherOptions: {
19163 auto ptr = reinterpret_cast<const tflite::GatherOptionsT *>(value);
19164 return CreateGatherOptions(_fbb, ptr, _rehasher).Union();
19165 }
19166 case BuiltinOptions_BatchToSpaceNDOptions: {
19167 auto ptr = reinterpret_cast<const tflite::BatchToSpaceNDOptionsT *>(value);
19168 return CreateBatchToSpaceNDOptions(_fbb, ptr, _rehasher).Union();
19169 }
19170 case BuiltinOptions_SpaceToBatchNDOptions: {
19171 auto ptr = reinterpret_cast<const tflite::SpaceToBatchNDOptionsT *>(value);
19172 return CreateSpaceToBatchNDOptions(_fbb, ptr, _rehasher).Union();
19173 }
19174 case BuiltinOptions_TransposeOptions: {
19175 auto ptr = reinterpret_cast<const tflite::TransposeOptionsT *>(value);
19176 return CreateTransposeOptions(_fbb, ptr, _rehasher).Union();
19177 }
19178 case BuiltinOptions_ReducerOptions: {
19179 auto ptr = reinterpret_cast<const tflite::ReducerOptionsT *>(value);
19180 return CreateReducerOptions(_fbb, ptr, _rehasher).Union();
19181 }
19182 case BuiltinOptions_SubOptions: {
19183 auto ptr = reinterpret_cast<const tflite::SubOptionsT *>(value);
19184 return CreateSubOptions(_fbb, ptr, _rehasher).Union();
19185 }
19186 case BuiltinOptions_DivOptions: {
19187 auto ptr = reinterpret_cast<const tflite::DivOptionsT *>(value);
19188 return CreateDivOptions(_fbb, ptr, _rehasher).Union();
19189 }
19190 case BuiltinOptions_SqueezeOptions: {
19191 auto ptr = reinterpret_cast<const tflite::SqueezeOptionsT *>(value);
19192 return CreateSqueezeOptions(_fbb, ptr, _rehasher).Union();
19193 }
19194 case BuiltinOptions_SequenceRNNOptions: {
19195 auto ptr = reinterpret_cast<const tflite::SequenceRNNOptionsT *>(value);
19196 return CreateSequenceRNNOptions(_fbb, ptr, _rehasher).Union();
19197 }
19198 case BuiltinOptions_StridedSliceOptions: {
19199 auto ptr = reinterpret_cast<const tflite::StridedSliceOptionsT *>(value);
19200 return CreateStridedSliceOptions(_fbb, ptr, _rehasher).Union();
19201 }
19202 case BuiltinOptions_ExpOptions: {
19203 auto ptr = reinterpret_cast<const tflite::ExpOptionsT *>(value);
19204 return CreateExpOptions(_fbb, ptr, _rehasher).Union();
19205 }
19206 case BuiltinOptions_TopKV2Options: {
19207 auto ptr = reinterpret_cast<const tflite::TopKV2OptionsT *>(value);
19208 return CreateTopKV2Options(_fbb, ptr, _rehasher).Union();
19209 }
19210 case BuiltinOptions_SplitOptions: {
19211 auto ptr = reinterpret_cast<const tflite::SplitOptionsT *>(value);
19212 return CreateSplitOptions(_fbb, ptr, _rehasher).Union();
19213 }
19214 case BuiltinOptions_LogSoftmaxOptions: {
19215 auto ptr = reinterpret_cast<const tflite::LogSoftmaxOptionsT *>(value);
19216 return CreateLogSoftmaxOptions(_fbb, ptr, _rehasher).Union();
19217 }
19218 case BuiltinOptions_CastOptions: {
19219 auto ptr = reinterpret_cast<const tflite::CastOptionsT *>(value);
19220 return CreateCastOptions(_fbb, ptr, _rehasher).Union();
19221 }
19222 case BuiltinOptions_DequantizeOptions: {
19223 auto ptr = reinterpret_cast<const tflite::DequantizeOptionsT *>(value);
19224 return CreateDequantizeOptions(_fbb, ptr, _rehasher).Union();
19225 }
19226 case BuiltinOptions_MaximumMinimumOptions: {
19227 auto ptr = reinterpret_cast<const tflite::MaximumMinimumOptionsT *>(value);
19228 return CreateMaximumMinimumOptions(_fbb, ptr, _rehasher).Union();
19229 }
19230 case BuiltinOptions_ArgMaxOptions: {
19231 auto ptr = reinterpret_cast<const tflite::ArgMaxOptionsT *>(value);
19232 return CreateArgMaxOptions(_fbb, ptr, _rehasher).Union();
19233 }
19234 case BuiltinOptions_LessOptions: {
19235 auto ptr = reinterpret_cast<const tflite::LessOptionsT *>(value);
19236 return CreateLessOptions(_fbb, ptr, _rehasher).Union();
19237 }
19238 case BuiltinOptions_NegOptions: {
19239 auto ptr = reinterpret_cast<const tflite::NegOptionsT *>(value);
19240 return CreateNegOptions(_fbb, ptr, _rehasher).Union();
19241 }
19242 case BuiltinOptions_PadV2Options: {
19243 auto ptr = reinterpret_cast<const tflite::PadV2OptionsT *>(value);
19244 return CreatePadV2Options(_fbb, ptr, _rehasher).Union();
19245 }
19246 case BuiltinOptions_GreaterOptions: {
19247 auto ptr = reinterpret_cast<const tflite::GreaterOptionsT *>(value);
19248 return CreateGreaterOptions(_fbb, ptr, _rehasher).Union();
19249 }
19250 case BuiltinOptions_GreaterEqualOptions: {
19251 auto ptr = reinterpret_cast<const tflite::GreaterEqualOptionsT *>(value);
19252 return CreateGreaterEqualOptions(_fbb, ptr, _rehasher).Union();
19253 }
19254 case BuiltinOptions_LessEqualOptions: {
19255 auto ptr = reinterpret_cast<const tflite::LessEqualOptionsT *>(value);
19256 return CreateLessEqualOptions(_fbb, ptr, _rehasher).Union();
19257 }
19258 case BuiltinOptions_SelectOptions: {
19259 auto ptr = reinterpret_cast<const tflite::SelectOptionsT *>(value);
19260 return CreateSelectOptions(_fbb, ptr, _rehasher).Union();
19261 }
19262 case BuiltinOptions_SliceOptions: {
19263 auto ptr = reinterpret_cast<const tflite::SliceOptionsT *>(value);
19264 return CreateSliceOptions(_fbb, ptr, _rehasher).Union();
19265 }
19266 case BuiltinOptions_TransposeConvOptions: {
19267 auto ptr = reinterpret_cast<const tflite::TransposeConvOptionsT *>(value);
19268 return CreateTransposeConvOptions(_fbb, ptr, _rehasher).Union();
19269 }
19270 case BuiltinOptions_SparseToDenseOptions: {
19271 auto ptr = reinterpret_cast<const tflite::SparseToDenseOptionsT *>(value);
19272 return CreateSparseToDenseOptions(_fbb, ptr, _rehasher).Union();
19273 }
19274 case BuiltinOptions_TileOptions: {
19275 auto ptr = reinterpret_cast<const tflite::TileOptionsT *>(value);
19276 return CreateTileOptions(_fbb, ptr, _rehasher).Union();
19277 }
19278 case BuiltinOptions_ExpandDimsOptions: {
19279 auto ptr = reinterpret_cast<const tflite::ExpandDimsOptionsT *>(value);
19280 return CreateExpandDimsOptions(_fbb, ptr, _rehasher).Union();
19281 }
19282 case BuiltinOptions_EqualOptions: {
19283 auto ptr = reinterpret_cast<const tflite::EqualOptionsT *>(value);
19284 return CreateEqualOptions(_fbb, ptr, _rehasher).Union();
19285 }
19286 case BuiltinOptions_NotEqualOptions: {
19287 auto ptr = reinterpret_cast<const tflite::NotEqualOptionsT *>(value);
19288 return CreateNotEqualOptions(_fbb, ptr, _rehasher).Union();
19289 }
19290 case BuiltinOptions_ShapeOptions: {
19291 auto ptr = reinterpret_cast<const tflite::ShapeOptionsT *>(value);
19292 return CreateShapeOptions(_fbb, ptr, _rehasher).Union();
19293 }
19294 case BuiltinOptions_PowOptions: {
19295 auto ptr = reinterpret_cast<const tflite::PowOptionsT *>(value);
19296 return CreatePowOptions(_fbb, ptr, _rehasher).Union();
19297 }
19298 case BuiltinOptions_ArgMinOptions: {
19299 auto ptr = reinterpret_cast<const tflite::ArgMinOptionsT *>(value);
19300 return CreateArgMinOptions(_fbb, ptr, _rehasher).Union();
19301 }
19302 case BuiltinOptions_FakeQuantOptions: {
19303 auto ptr = reinterpret_cast<const tflite::FakeQuantOptionsT *>(value);
19304 return CreateFakeQuantOptions(_fbb, ptr, _rehasher).Union();
19305 }
19306 case BuiltinOptions_PackOptions: {
19307 auto ptr = reinterpret_cast<const tflite::PackOptionsT *>(value);
19308 return CreatePackOptions(_fbb, ptr, _rehasher).Union();
19309 }
19310 case BuiltinOptions_LogicalOrOptions: {
19311 auto ptr = reinterpret_cast<const tflite::LogicalOrOptionsT *>(value);
19312 return CreateLogicalOrOptions(_fbb, ptr, _rehasher).Union();
19313 }
19314 case BuiltinOptions_OneHotOptions: {
19315 auto ptr = reinterpret_cast<const tflite::OneHotOptionsT *>(value);
19316 return CreateOneHotOptions(_fbb, ptr, _rehasher).Union();
19317 }
19318 case BuiltinOptions_LogicalAndOptions: {
19319 auto ptr = reinterpret_cast<const tflite::LogicalAndOptionsT *>(value);
19320 return CreateLogicalAndOptions(_fbb, ptr, _rehasher).Union();
19321 }
19322 case BuiltinOptions_LogicalNotOptions: {
19323 auto ptr = reinterpret_cast<const tflite::LogicalNotOptionsT *>(value);
19324 return CreateLogicalNotOptions(_fbb, ptr, _rehasher).Union();
19325 }
19326 case BuiltinOptions_UnpackOptions: {
19327 auto ptr = reinterpret_cast<const tflite::UnpackOptionsT *>(value);
19328 return CreateUnpackOptions(_fbb, ptr, _rehasher).Union();
19329 }
19330 case BuiltinOptions_FloorDivOptions: {
19331 auto ptr = reinterpret_cast<const tflite::FloorDivOptionsT *>(value);
19332 return CreateFloorDivOptions(_fbb, ptr, _rehasher).Union();
19333 }
19334 case BuiltinOptions_SquareOptions: {
19335 auto ptr = reinterpret_cast<const tflite::SquareOptionsT *>(value);
19336 return CreateSquareOptions(_fbb, ptr, _rehasher).Union();
19337 }
19338 case BuiltinOptions_ZerosLikeOptions: {
19339 auto ptr = reinterpret_cast<const tflite::ZerosLikeOptionsT *>(value);
19340 return CreateZerosLikeOptions(_fbb, ptr, _rehasher).Union();
19341 }
19342 case BuiltinOptions_FillOptions: {
19343 auto ptr = reinterpret_cast<const tflite::FillOptionsT *>(value);
19344 return CreateFillOptions(_fbb, ptr, _rehasher).Union();
19345 }
19346 case BuiltinOptions_BidirectionalSequenceLSTMOptions: {
19347 auto ptr = reinterpret_cast<const tflite::BidirectionalSequenceLSTMOptionsT *>(value);
19348 return CreateBidirectionalSequenceLSTMOptions(_fbb, ptr, _rehasher).Union();
19349 }
19350 case BuiltinOptions_BidirectionalSequenceRNNOptions: {
19351 auto ptr = reinterpret_cast<const tflite::BidirectionalSequenceRNNOptionsT *>(value);
19352 return CreateBidirectionalSequenceRNNOptions(_fbb, ptr, _rehasher).Union();
19353 }
19354 case BuiltinOptions_UnidirectionalSequenceLSTMOptions: {
19355 auto ptr = reinterpret_cast<const tflite::UnidirectionalSequenceLSTMOptionsT *>(value);
19356 return CreateUnidirectionalSequenceLSTMOptions(_fbb, ptr, _rehasher).Union();
19357 }
19358 case BuiltinOptions_FloorModOptions: {
19359 auto ptr = reinterpret_cast<const tflite::FloorModOptionsT *>(value);
19360 return CreateFloorModOptions(_fbb, ptr, _rehasher).Union();
19361 }
19362 case BuiltinOptions_RangeOptions: {
19363 auto ptr = reinterpret_cast<const tflite::RangeOptionsT *>(value);
19364 return CreateRangeOptions(_fbb, ptr, _rehasher).Union();
19365 }
19366 case BuiltinOptions_ResizeNearestNeighborOptions: {
19367 auto ptr = reinterpret_cast<const tflite::ResizeNearestNeighborOptionsT *>(value);
19368 return CreateResizeNearestNeighborOptions(_fbb, ptr, _rehasher).Union();
19369 }
19370 case BuiltinOptions_LeakyReluOptions: {
19371 auto ptr = reinterpret_cast<const tflite::LeakyReluOptionsT *>(value);
19372 return CreateLeakyReluOptions(_fbb, ptr, _rehasher).Union();
19373 }
19374 case BuiltinOptions_SquaredDifferenceOptions: {
19375 auto ptr = reinterpret_cast<const tflite::SquaredDifferenceOptionsT *>(value);
19376 return CreateSquaredDifferenceOptions(_fbb, ptr, _rehasher).Union();
19377 }
19378 case BuiltinOptions_MirrorPadOptions: {
19379 auto ptr = reinterpret_cast<const tflite::MirrorPadOptionsT *>(value);
19380 return CreateMirrorPadOptions(_fbb, ptr, _rehasher).Union();
19381 }
19382 case BuiltinOptions_AbsOptions: {
19383 auto ptr = reinterpret_cast<const tflite::AbsOptionsT *>(value);
19384 return CreateAbsOptions(_fbb, ptr, _rehasher).Union();
19385 }
19386 case BuiltinOptions_SplitVOptions: {
19387 auto ptr = reinterpret_cast<const tflite::SplitVOptionsT *>(value);
19388 return CreateSplitVOptions(_fbb, ptr, _rehasher).Union();
19389 }
19390 case BuiltinOptions_UniqueOptions: {
19391 auto ptr = reinterpret_cast<const tflite::UniqueOptionsT *>(value);
19392 return CreateUniqueOptions(_fbb, ptr, _rehasher).Union();
19393 }
19394 case BuiltinOptions_ReverseV2Options: {
19395 auto ptr = reinterpret_cast<const tflite::ReverseV2OptionsT *>(value);
19396 return CreateReverseV2Options(_fbb, ptr, _rehasher).Union();
19397 }
19398 case BuiltinOptions_AddNOptions: {
19399 auto ptr = reinterpret_cast<const tflite::AddNOptionsT *>(value);
19400 return CreateAddNOptions(_fbb, ptr, _rehasher).Union();
19401 }
19402 case BuiltinOptions_GatherNdOptions: {
19403 auto ptr = reinterpret_cast<const tflite::GatherNdOptionsT *>(value);
19404 return CreateGatherNdOptions(_fbb, ptr, _rehasher).Union();
19405 }
19406 case BuiltinOptions_CosOptions: {
19407 auto ptr = reinterpret_cast<const tflite::CosOptionsT *>(value);
19408 return CreateCosOptions(_fbb, ptr, _rehasher).Union();
19409 }
19410 case BuiltinOptions_WhereOptions: {
19411 auto ptr = reinterpret_cast<const tflite::WhereOptionsT *>(value);
19412 return CreateWhereOptions(_fbb, ptr, _rehasher).Union();
19413 }
19414 case BuiltinOptions_RankOptions: {
19415 auto ptr = reinterpret_cast<const tflite::RankOptionsT *>(value);
19416 return CreateRankOptions(_fbb, ptr, _rehasher).Union();
19417 }
19418 case BuiltinOptions_ReverseSequenceOptions: {
19419 auto ptr = reinterpret_cast<const tflite::ReverseSequenceOptionsT *>(value);
19420 return CreateReverseSequenceOptions(_fbb, ptr, _rehasher).Union();
19421 }
19422 case BuiltinOptions_MatrixDiagOptions: {
19423 auto ptr = reinterpret_cast<const tflite::MatrixDiagOptionsT *>(value);
19424 return CreateMatrixDiagOptions(_fbb, ptr, _rehasher).Union();
19425 }
19426 case BuiltinOptions_QuantizeOptions: {
19427 auto ptr = reinterpret_cast<const tflite::QuantizeOptionsT *>(value);
19428 return CreateQuantizeOptions(_fbb, ptr, _rehasher).Union();
19429 }
19430 case BuiltinOptions_MatrixSetDiagOptions: {
19431 auto ptr = reinterpret_cast<const tflite::MatrixSetDiagOptionsT *>(value);
19432 return CreateMatrixSetDiagOptions(_fbb, ptr, _rehasher).Union();
19433 }
19434 case BuiltinOptions_HardSwishOptions: {
19435 auto ptr = reinterpret_cast<const tflite::HardSwishOptionsT *>(value);
19436 return CreateHardSwishOptions(_fbb, ptr, _rehasher).Union();
19437 }
19438 case BuiltinOptions_IfOptions: {
19439 auto ptr = reinterpret_cast<const tflite::IfOptionsT *>(value);
19440 return CreateIfOptions(_fbb, ptr, _rehasher).Union();
19441 }
19442 case BuiltinOptions_WhileOptions: {
19443 auto ptr = reinterpret_cast<const tflite::WhileOptionsT *>(value);
19444 return CreateWhileOptions(_fbb, ptr, _rehasher).Union();
19445 }
19446 case BuiltinOptions_DepthToSpaceOptions: {
19447 auto ptr = reinterpret_cast<const tflite::DepthToSpaceOptionsT *>(value);
19448 return CreateDepthToSpaceOptions(_fbb, ptr, _rehasher).Union();
19449 }
19450 case BuiltinOptions_NonMaxSuppressionV4Options: {
19451 auto ptr = reinterpret_cast<const tflite::NonMaxSuppressionV4OptionsT *>(value);
19452 return CreateNonMaxSuppressionV4Options(_fbb, ptr, _rehasher).Union();
19453 }
19454 case BuiltinOptions_NonMaxSuppressionV5Options: {
19455 auto ptr = reinterpret_cast<const tflite::NonMaxSuppressionV5OptionsT *>(value);
19456 return CreateNonMaxSuppressionV5Options(_fbb, ptr, _rehasher).Union();
19457 }
19458 case BuiltinOptions_ScatterNdOptions: {
19459 auto ptr = reinterpret_cast<const tflite::ScatterNdOptionsT *>(value);
19460 return CreateScatterNdOptions(_fbb, ptr, _rehasher).Union();
19461 }
19462 case BuiltinOptions_SelectV2Options: {
19463 auto ptr = reinterpret_cast<const tflite::SelectV2OptionsT *>(value);
19464 return CreateSelectV2Options(_fbb, ptr, _rehasher).Union();
19465 }
19466 case BuiltinOptions_DensifyOptions: {
19467 auto ptr = reinterpret_cast<const tflite::DensifyOptionsT *>(value);
19468 return CreateDensifyOptions(_fbb, ptr, _rehasher).Union();
19469 }
19470 case BuiltinOptions_SegmentSumOptions: {
19471 auto ptr = reinterpret_cast<const tflite::SegmentSumOptionsT *>(value);
19472 return CreateSegmentSumOptions(_fbb, ptr, _rehasher).Union();
19473 }
19474 case BuiltinOptions_BatchMatMulOptions: {
19475 auto ptr = reinterpret_cast<const tflite::BatchMatMulOptionsT *>(value);
19476 return CreateBatchMatMulOptions(_fbb, ptr, _rehasher).Union();
19477 }
19478 case BuiltinOptions_CumsumOptions: {
19479 auto ptr = reinterpret_cast<const tflite::CumsumOptionsT *>(value);
19480 return CreateCumsumOptions(_fbb, ptr, _rehasher).Union();
19481 }
19482 case BuiltinOptions_CallOnceOptions: {
19483 auto ptr = reinterpret_cast<const tflite::CallOnceOptionsT *>(value);
19484 return CreateCallOnceOptions(_fbb, ptr, _rehasher).Union();
19485 }
19486 case BuiltinOptions_BroadcastToOptions: {
19487 auto ptr = reinterpret_cast<const tflite::BroadcastToOptionsT *>(value);
19488 return CreateBroadcastToOptions(_fbb, ptr, _rehasher).Union();
19489 }
19490 case BuiltinOptions_Rfft2dOptions: {
19491 auto ptr = reinterpret_cast<const tflite::Rfft2dOptionsT *>(value);
19492 return CreateRfft2dOptions(_fbb, ptr, _rehasher).Union();
19493 }
19494 case BuiltinOptions_Conv3DOptions: {
19495 auto ptr = reinterpret_cast<const tflite::Conv3DOptionsT *>(value);
19496 return CreateConv3DOptions(_fbb, ptr, _rehasher).Union();
19497 }
19498 case BuiltinOptions_HashtableOptions: {
19499 auto ptr = reinterpret_cast<const tflite::HashtableOptionsT *>(value);
19500 return CreateHashtableOptions(_fbb, ptr, _rehasher).Union();
19501 }
19502 case BuiltinOptions_HashtableFindOptions: {
19503 auto ptr = reinterpret_cast<const tflite::HashtableFindOptionsT *>(value);
19504 return CreateHashtableFindOptions(_fbb, ptr, _rehasher).Union();
19505 }
19506 case BuiltinOptions_HashtableImportOptions: {
19507 auto ptr = reinterpret_cast<const tflite::HashtableImportOptionsT *>(value);
19508 return CreateHashtableImportOptions(_fbb, ptr, _rehasher).Union();
19509 }
19510 case BuiltinOptions_HashtableSizeOptions: {
19511 auto ptr = reinterpret_cast<const tflite::HashtableSizeOptionsT *>(value);
19512 return CreateHashtableSizeOptions(_fbb, ptr, _rehasher).Union();
19513 }
19514 case BuiltinOptions_VarHandleOptions: {
19515 auto ptr = reinterpret_cast<const tflite::VarHandleOptionsT *>(value);
19516 return CreateVarHandleOptions(_fbb, ptr, _rehasher).Union();
19517 }
19518 case BuiltinOptions_ReadVariableOptions: {
19519 auto ptr = reinterpret_cast<const tflite::ReadVariableOptionsT *>(value);
19520 return CreateReadVariableOptions(_fbb, ptr, _rehasher).Union();
19521 }
19522 case BuiltinOptions_AssignVariableOptions: {
19523 auto ptr = reinterpret_cast<const tflite::AssignVariableOptionsT *>(value);
19524 return CreateAssignVariableOptions(_fbb, ptr, _rehasher).Union();
19525 }
19526 case BuiltinOptions_RandomOptions: {
19527 auto ptr = reinterpret_cast<const tflite::RandomOptionsT *>(value);
19528 return CreateRandomOptions(_fbb, ptr, _rehasher).Union();
19529 }
19530 case BuiltinOptions_BucketizeOptions: {
19531 auto ptr = reinterpret_cast<const tflite::BucketizeOptionsT *>(value);
19532 return CreateBucketizeOptions(_fbb, ptr, _rehasher).Union();
19533 }
19534 case BuiltinOptions_GeluOptions: {
19535 auto ptr = reinterpret_cast<const tflite::GeluOptionsT *>(value);
19536 return CreateGeluOptions(_fbb, ptr, _rehasher).Union();
19537 }
19538 case BuiltinOptions_DynamicUpdateSliceOptions: {
19539 auto ptr = reinterpret_cast<const tflite::DynamicUpdateSliceOptionsT *>(value);
19540 return CreateDynamicUpdateSliceOptions(_fbb, ptr, _rehasher).Union();
19541 }
19542 case BuiltinOptions_UnsortedSegmentProdOptions: {
19543 auto ptr = reinterpret_cast<const tflite::UnsortedSegmentProdOptionsT *>(value);
19544 return CreateUnsortedSegmentProdOptions(_fbb, ptr, _rehasher).Union();
19545 }
19546 case BuiltinOptions_UnsortedSegmentMaxOptions: {
19547 auto ptr = reinterpret_cast<const tflite::UnsortedSegmentMaxOptionsT *>(value);
19548 return CreateUnsortedSegmentMaxOptions(_fbb, ptr, _rehasher).Union();
19549 }
19550 case BuiltinOptions_UnsortedSegmentMinOptions: {
19551 auto ptr = reinterpret_cast<const tflite::UnsortedSegmentMinOptionsT *>(value);
19552 return CreateUnsortedSegmentMinOptions(_fbb, ptr, _rehasher).Union();
19553 }
19554 case BuiltinOptions_UnsortedSegmentSumOptions: {
19555 auto ptr = reinterpret_cast<const tflite::UnsortedSegmentSumOptionsT *>(value);
19556 return CreateUnsortedSegmentSumOptions(_fbb, ptr, _rehasher).Union();
19557 }
19558 case BuiltinOptions_ATan2Options: {
19559 auto ptr = reinterpret_cast<const tflite::ATan2OptionsT *>(value);
19560 return CreateATan2Options(_fbb, ptr, _rehasher).Union();
19561 }
19562 case BuiltinOptions_SignOptions: {
19563 auto ptr = reinterpret_cast<const tflite::SignOptionsT *>(value);
19564 return CreateSignOptions(_fbb, ptr, _rehasher).Union();
19565 }
19566 default: return 0;
19567 }
19568 }
19569
19570 inline BuiltinOptionsUnion::BuiltinOptionsUnion(const BuiltinOptionsUnion &u) : type(u.type), value(nullptr) {
19571 switch (type) {
19572 case BuiltinOptions_Conv2DOptions: {
19573 value = new tflite::Conv2DOptionsT(*reinterpret_cast<tflite::Conv2DOptionsT *>(u.value));
19574 break;
19575 }
19576 case BuiltinOptions_DepthwiseConv2DOptions: {
19577 value = new tflite::DepthwiseConv2DOptionsT(*reinterpret_cast<tflite::DepthwiseConv2DOptionsT *>(u.value));
19578 break;
19579 }
19580 case BuiltinOptions_ConcatEmbeddingsOptions: {
19581 value = new tflite::ConcatEmbeddingsOptionsT(*reinterpret_cast<tflite::ConcatEmbeddingsOptionsT *>(u.value));
19582 break;
19583 }
19584 case BuiltinOptions_LSHProjectionOptions: {
19585 value = new tflite::LSHProjectionOptionsT(*reinterpret_cast<tflite::LSHProjectionOptionsT *>(u.value));
19586 break;
19587 }
19588 case BuiltinOptions_Pool2DOptions: {
19589 value = new tflite::Pool2DOptionsT(*reinterpret_cast<tflite::Pool2DOptionsT *>(u.value));
19590 break;
19591 }
19592 case BuiltinOptions_SVDFOptions: {
19593 value = new tflite::SVDFOptionsT(*reinterpret_cast<tflite::SVDFOptionsT *>(u.value));
19594 break;
19595 }
19596 case BuiltinOptions_RNNOptions: {
19597 value = new tflite::RNNOptionsT(*reinterpret_cast<tflite::RNNOptionsT *>(u.value));
19598 break;
19599 }
19600 case BuiltinOptions_FullyConnectedOptions: {
19601 value = new tflite::FullyConnectedOptionsT(*reinterpret_cast<tflite::FullyConnectedOptionsT *>(u.value));
19602 break;
19603 }
19604 case BuiltinOptions_SoftmaxOptions: {
19605 value = new tflite::SoftmaxOptionsT(*reinterpret_cast<tflite::SoftmaxOptionsT *>(u.value));
19606 break;
19607 }
19608 case BuiltinOptions_ConcatenationOptions: {
19609 value = new tflite::ConcatenationOptionsT(*reinterpret_cast<tflite::ConcatenationOptionsT *>(u.value));
19610 break;
19611 }
19612 case BuiltinOptions_AddOptions: {
19613 value = new tflite::AddOptionsT(*reinterpret_cast<tflite::AddOptionsT *>(u.value));
19614 break;
19615 }
19616 case BuiltinOptions_L2NormOptions: {
19617 value = new tflite::L2NormOptionsT(*reinterpret_cast<tflite::L2NormOptionsT *>(u.value));
19618 break;
19619 }
19620 case BuiltinOptions_LocalResponseNormalizationOptions: {
19621 value = new tflite::LocalResponseNormalizationOptionsT(*reinterpret_cast<tflite::LocalResponseNormalizationOptionsT *>(u.value));
19622 break;
19623 }
19624 case BuiltinOptions_LSTMOptions: {
19625 value = new tflite::LSTMOptionsT(*reinterpret_cast<tflite::LSTMOptionsT *>(u.value));
19626 break;
19627 }
19628 case BuiltinOptions_ResizeBilinearOptions: {
19629 value = new tflite::ResizeBilinearOptionsT(*reinterpret_cast<tflite::ResizeBilinearOptionsT *>(u.value));
19630 break;
19631 }
19632 case BuiltinOptions_CallOptions: {
19633 value = new tflite::CallOptionsT(*reinterpret_cast<tflite::CallOptionsT *>(u.value));
19634 break;
19635 }
19636 case BuiltinOptions_ReshapeOptions: {
19637 value = new tflite::ReshapeOptionsT(*reinterpret_cast<tflite::ReshapeOptionsT *>(u.value));
19638 break;
19639 }
19640 case BuiltinOptions_SkipGramOptions: {
19641 value = new tflite::SkipGramOptionsT(*reinterpret_cast<tflite::SkipGramOptionsT *>(u.value));
19642 break;
19643 }
19644 case BuiltinOptions_SpaceToDepthOptions: {
19645 value = new tflite::SpaceToDepthOptionsT(*reinterpret_cast<tflite::SpaceToDepthOptionsT *>(u.value));
19646 break;
19647 }
19648 case BuiltinOptions_EmbeddingLookupSparseOptions: {
19649 value = new tflite::EmbeddingLookupSparseOptionsT(*reinterpret_cast<tflite::EmbeddingLookupSparseOptionsT *>(u.value));
19650 break;
19651 }
19652 case BuiltinOptions_MulOptions: {
19653 value = new tflite::MulOptionsT(*reinterpret_cast<tflite::MulOptionsT *>(u.value));
19654 break;
19655 }
19656 case BuiltinOptions_PadOptions: {
19657 value = new tflite::PadOptionsT(*reinterpret_cast<tflite::PadOptionsT *>(u.value));
19658 break;
19659 }
19660 case BuiltinOptions_GatherOptions: {
19661 value = new tflite::GatherOptionsT(*reinterpret_cast<tflite::GatherOptionsT *>(u.value));
19662 break;
19663 }
19664 case BuiltinOptions_BatchToSpaceNDOptions: {
19665 value = new tflite::BatchToSpaceNDOptionsT(*reinterpret_cast<tflite::BatchToSpaceNDOptionsT *>(u.value));
19666 break;
19667 }
19668 case BuiltinOptions_SpaceToBatchNDOptions: {
19669 value = new tflite::SpaceToBatchNDOptionsT(*reinterpret_cast<tflite::SpaceToBatchNDOptionsT *>(u.value));
19670 break;
19671 }
19672 case BuiltinOptions_TransposeOptions: {
19673 value = new tflite::TransposeOptionsT(*reinterpret_cast<tflite::TransposeOptionsT *>(u.value));
19674 break;
19675 }
19676 case BuiltinOptions_ReducerOptions: {
19677 value = new tflite::ReducerOptionsT(*reinterpret_cast<tflite::ReducerOptionsT *>(u.value));
19678 break;
19679 }
19680 case BuiltinOptions_SubOptions: {
19681 value = new tflite::SubOptionsT(*reinterpret_cast<tflite::SubOptionsT *>(u.value));
19682 break;
19683 }
19684 case BuiltinOptions_DivOptions: {
19685 value = new tflite::DivOptionsT(*reinterpret_cast<tflite::DivOptionsT *>(u.value));
19686 break;
19687 }
19688 case BuiltinOptions_SqueezeOptions: {
19689 value = new tflite::SqueezeOptionsT(*reinterpret_cast<tflite::SqueezeOptionsT *>(u.value));
19690 break;
19691 }
19692 case BuiltinOptions_SequenceRNNOptions: {
19693 value = new tflite::SequenceRNNOptionsT(*reinterpret_cast<tflite::SequenceRNNOptionsT *>(u.value));
19694 break;
19695 }
19696 case BuiltinOptions_StridedSliceOptions: {
19697 value = new tflite::StridedSliceOptionsT(*reinterpret_cast<tflite::StridedSliceOptionsT *>(u.value));
19698 break;
19699 }
19700 case BuiltinOptions_ExpOptions: {
19701 value = new tflite::ExpOptionsT(*reinterpret_cast<tflite::ExpOptionsT *>(u.value));
19702 break;
19703 }
19704 case BuiltinOptions_TopKV2Options: {
19705 value = new tflite::TopKV2OptionsT(*reinterpret_cast<tflite::TopKV2OptionsT *>(u.value));
19706 break;
19707 }
19708 case BuiltinOptions_SplitOptions: {
19709 value = new tflite::SplitOptionsT(*reinterpret_cast<tflite::SplitOptionsT *>(u.value));
19710 break;
19711 }
19712 case BuiltinOptions_LogSoftmaxOptions: {
19713 value = new tflite::LogSoftmaxOptionsT(*reinterpret_cast<tflite::LogSoftmaxOptionsT *>(u.value));
19714 break;
19715 }
19716 case BuiltinOptions_CastOptions: {
19717 value = new tflite::CastOptionsT(*reinterpret_cast<tflite::CastOptionsT *>(u.value));
19718 break;
19719 }
19720 case BuiltinOptions_DequantizeOptions: {
19721 value = new tflite::DequantizeOptionsT(*reinterpret_cast<tflite::DequantizeOptionsT *>(u.value));
19722 break;
19723 }
19724 case BuiltinOptions_MaximumMinimumOptions: {
19725 value = new tflite::MaximumMinimumOptionsT(*reinterpret_cast<tflite::MaximumMinimumOptionsT *>(u.value));
19726 break;
19727 }
19728 case BuiltinOptions_ArgMaxOptions: {
19729 value = new tflite::ArgMaxOptionsT(*reinterpret_cast<tflite::ArgMaxOptionsT *>(u.value));
19730 break;
19731 }
19732 case BuiltinOptions_LessOptions: {
19733 value = new tflite::LessOptionsT(*reinterpret_cast<tflite::LessOptionsT *>(u.value));
19734 break;
19735 }
19736 case BuiltinOptions_NegOptions: {
19737 value = new tflite::NegOptionsT(*reinterpret_cast<tflite::NegOptionsT *>(u.value));
19738 break;
19739 }
19740 case BuiltinOptions_PadV2Options: {
19741 value = new tflite::PadV2OptionsT(*reinterpret_cast<tflite::PadV2OptionsT *>(u.value));
19742 break;
19743 }
19744 case BuiltinOptions_GreaterOptions: {
19745 value = new tflite::GreaterOptionsT(*reinterpret_cast<tflite::GreaterOptionsT *>(u.value));
19746 break;
19747 }
19748 case BuiltinOptions_GreaterEqualOptions: {
19749 value = new tflite::GreaterEqualOptionsT(*reinterpret_cast<tflite::GreaterEqualOptionsT *>(u.value));
19750 break;
19751 }
19752 case BuiltinOptions_LessEqualOptions: {
19753 value = new tflite::LessEqualOptionsT(*reinterpret_cast<tflite::LessEqualOptionsT *>(u.value));
19754 break;
19755 }
19756 case BuiltinOptions_SelectOptions: {
19757 value = new tflite::SelectOptionsT(*reinterpret_cast<tflite::SelectOptionsT *>(u.value));
19758 break;
19759 }
19760 case BuiltinOptions_SliceOptions: {
19761 value = new tflite::SliceOptionsT(*reinterpret_cast<tflite::SliceOptionsT *>(u.value));
19762 break;
19763 }
19764 case BuiltinOptions_TransposeConvOptions: {
19765 value = new tflite::TransposeConvOptionsT(*reinterpret_cast<tflite::TransposeConvOptionsT *>(u.value));
19766 break;
19767 }
19768 case BuiltinOptions_SparseToDenseOptions: {
19769 value = new tflite::SparseToDenseOptionsT(*reinterpret_cast<tflite::SparseToDenseOptionsT *>(u.value));
19770 break;
19771 }
19772 case BuiltinOptions_TileOptions: {
19773 value = new tflite::TileOptionsT(*reinterpret_cast<tflite::TileOptionsT *>(u.value));
19774 break;
19775 }
19776 case BuiltinOptions_ExpandDimsOptions: {
19777 value = new tflite::ExpandDimsOptionsT(*reinterpret_cast<tflite::ExpandDimsOptionsT *>(u.value));
19778 break;
19779 }
19780 case BuiltinOptions_EqualOptions: {
19781 value = new tflite::EqualOptionsT(*reinterpret_cast<tflite::EqualOptionsT *>(u.value));
19782 break;
19783 }
19784 case BuiltinOptions_NotEqualOptions: {
19785 value = new tflite::NotEqualOptionsT(*reinterpret_cast<tflite::NotEqualOptionsT *>(u.value));
19786 break;
19787 }
19788 case BuiltinOptions_ShapeOptions: {
19789 value = new tflite::ShapeOptionsT(*reinterpret_cast<tflite::ShapeOptionsT *>(u.value));
19790 break;
19791 }
19792 case BuiltinOptions_PowOptions: {
19793 value = new tflite::PowOptionsT(*reinterpret_cast<tflite::PowOptionsT *>(u.value));
19794 break;
19795 }
19796 case BuiltinOptions_ArgMinOptions: {
19797 value = new tflite::ArgMinOptionsT(*reinterpret_cast<tflite::ArgMinOptionsT *>(u.value));
19798 break;
19799 }
19800 case BuiltinOptions_FakeQuantOptions: {
19801 value = new tflite::FakeQuantOptionsT(*reinterpret_cast<tflite::FakeQuantOptionsT *>(u.value));
19802 break;
19803 }
19804 case BuiltinOptions_PackOptions: {
19805 value = new tflite::PackOptionsT(*reinterpret_cast<tflite::PackOptionsT *>(u.value));
19806 break;
19807 }
19808 case BuiltinOptions_LogicalOrOptions: {
19809 value = new tflite::LogicalOrOptionsT(*reinterpret_cast<tflite::LogicalOrOptionsT *>(u.value));
19810 break;
19811 }
19812 case BuiltinOptions_OneHotOptions: {
19813 value = new tflite::OneHotOptionsT(*reinterpret_cast<tflite::OneHotOptionsT *>(u.value));
19814 break;
19815 }
19816 case BuiltinOptions_LogicalAndOptions: {
19817 value = new tflite::LogicalAndOptionsT(*reinterpret_cast<tflite::LogicalAndOptionsT *>(u.value));
19818 break;
19819 }
19820 case BuiltinOptions_LogicalNotOptions: {
19821 value = new tflite::LogicalNotOptionsT(*reinterpret_cast<tflite::LogicalNotOptionsT *>(u.value));
19822 break;
19823 }
19824 case BuiltinOptions_UnpackOptions: {
19825 value = new tflite::UnpackOptionsT(*reinterpret_cast<tflite::UnpackOptionsT *>(u.value));
19826 break;
19827 }
19828 case BuiltinOptions_FloorDivOptions: {
19829 value = new tflite::FloorDivOptionsT(*reinterpret_cast<tflite::FloorDivOptionsT *>(u.value));
19830 break;
19831 }
19832 case BuiltinOptions_SquareOptions: {
19833 value = new tflite::SquareOptionsT(*reinterpret_cast<tflite::SquareOptionsT *>(u.value));
19834 break;
19835 }
19836 case BuiltinOptions_ZerosLikeOptions: {
19837 value = new tflite::ZerosLikeOptionsT(*reinterpret_cast<tflite::ZerosLikeOptionsT *>(u.value));
19838 break;
19839 }
19840 case BuiltinOptions_FillOptions: {
19841 value = new tflite::FillOptionsT(*reinterpret_cast<tflite::FillOptionsT *>(u.value));
19842 break;
19843 }
19844 case BuiltinOptions_BidirectionalSequenceLSTMOptions: {
19845 value = new tflite::BidirectionalSequenceLSTMOptionsT(*reinterpret_cast<tflite::BidirectionalSequenceLSTMOptionsT *>(u.value));
19846 break;
19847 }
19848 case BuiltinOptions_BidirectionalSequenceRNNOptions: {
19849 value = new tflite::BidirectionalSequenceRNNOptionsT(*reinterpret_cast<tflite::BidirectionalSequenceRNNOptionsT *>(u.value));
19850 break;
19851 }
19852 case BuiltinOptions_UnidirectionalSequenceLSTMOptions: {
19853 value = new tflite::UnidirectionalSequenceLSTMOptionsT(*reinterpret_cast<tflite::UnidirectionalSequenceLSTMOptionsT *>(u.value));
19854 break;
19855 }
19856 case BuiltinOptions_FloorModOptions: {
19857 value = new tflite::FloorModOptionsT(*reinterpret_cast<tflite::FloorModOptionsT *>(u.value));
19858 break;
19859 }
19860 case BuiltinOptions_RangeOptions: {
19861 value = new tflite::RangeOptionsT(*reinterpret_cast<tflite::RangeOptionsT *>(u.value));
19862 break;
19863 }
19864 case BuiltinOptions_ResizeNearestNeighborOptions: {
19865 value = new tflite::ResizeNearestNeighborOptionsT(*reinterpret_cast<tflite::ResizeNearestNeighborOptionsT *>(u.value));
19866 break;
19867 }
19868 case BuiltinOptions_LeakyReluOptions: {
19869 value = new tflite::LeakyReluOptionsT(*reinterpret_cast<tflite::LeakyReluOptionsT *>(u.value));
19870 break;
19871 }
19872 case BuiltinOptions_SquaredDifferenceOptions: {
19873 value = new tflite::SquaredDifferenceOptionsT(*reinterpret_cast<tflite::SquaredDifferenceOptionsT *>(u.value));
19874 break;
19875 }
19876 case BuiltinOptions_MirrorPadOptions: {
19877 value = new tflite::MirrorPadOptionsT(*reinterpret_cast<tflite::MirrorPadOptionsT *>(u.value));
19878 break;
19879 }
19880 case BuiltinOptions_AbsOptions: {
19881 value = new tflite::AbsOptionsT(*reinterpret_cast<tflite::AbsOptionsT *>(u.value));
19882 break;
19883 }
19884 case BuiltinOptions_SplitVOptions: {
19885 value = new tflite::SplitVOptionsT(*reinterpret_cast<tflite::SplitVOptionsT *>(u.value));
19886 break;
19887 }
19888 case BuiltinOptions_UniqueOptions: {
19889 value = new tflite::UniqueOptionsT(*reinterpret_cast<tflite::UniqueOptionsT *>(u.value));
19890 break;
19891 }
19892 case BuiltinOptions_ReverseV2Options: {
19893 value = new tflite::ReverseV2OptionsT(*reinterpret_cast<tflite::ReverseV2OptionsT *>(u.value));
19894 break;
19895 }
19896 case BuiltinOptions_AddNOptions: {
19897 value = new tflite::AddNOptionsT(*reinterpret_cast<tflite::AddNOptionsT *>(u.value));
19898 break;
19899 }
19900 case BuiltinOptions_GatherNdOptions: {
19901 value = new tflite::GatherNdOptionsT(*reinterpret_cast<tflite::GatherNdOptionsT *>(u.value));
19902 break;
19903 }
19904 case BuiltinOptions_CosOptions: {
19905 value = new tflite::CosOptionsT(*reinterpret_cast<tflite::CosOptionsT *>(u.value));
19906 break;
19907 }
19908 case BuiltinOptions_WhereOptions: {
19909 value = new tflite::WhereOptionsT(*reinterpret_cast<tflite::WhereOptionsT *>(u.value));
19910 break;
19911 }
19912 case BuiltinOptions_RankOptions: {
19913 value = new tflite::RankOptionsT(*reinterpret_cast<tflite::RankOptionsT *>(u.value));
19914 break;
19915 }
19916 case BuiltinOptions_ReverseSequenceOptions: {
19917 value = new tflite::ReverseSequenceOptionsT(*reinterpret_cast<tflite::ReverseSequenceOptionsT *>(u.value));
19918 break;
19919 }
19920 case BuiltinOptions_MatrixDiagOptions: {
19921 value = new tflite::MatrixDiagOptionsT(*reinterpret_cast<tflite::MatrixDiagOptionsT *>(u.value));
19922 break;
19923 }
19924 case BuiltinOptions_QuantizeOptions: {
19925 value = new tflite::QuantizeOptionsT(*reinterpret_cast<tflite::QuantizeOptionsT *>(u.value));
19926 break;
19927 }
19928 case BuiltinOptions_MatrixSetDiagOptions: {
19929 value = new tflite::MatrixSetDiagOptionsT(*reinterpret_cast<tflite::MatrixSetDiagOptionsT *>(u.value));
19930 break;
19931 }
19932 case BuiltinOptions_HardSwishOptions: {
19933 value = new tflite::HardSwishOptionsT(*reinterpret_cast<tflite::HardSwishOptionsT *>(u.value));
19934 break;
19935 }
19936 case BuiltinOptions_IfOptions: {
19937 value = new tflite::IfOptionsT(*reinterpret_cast<tflite::IfOptionsT *>(u.value));
19938 break;
19939 }
19940 case BuiltinOptions_WhileOptions: {
19941 value = new tflite::WhileOptionsT(*reinterpret_cast<tflite::WhileOptionsT *>(u.value));
19942 break;
19943 }
19944 case BuiltinOptions_DepthToSpaceOptions: {
19945 value = new tflite::DepthToSpaceOptionsT(*reinterpret_cast<tflite::DepthToSpaceOptionsT *>(u.value));
19946 break;
19947 }
19948 case BuiltinOptions_NonMaxSuppressionV4Options: {
19949 value = new tflite::NonMaxSuppressionV4OptionsT(*reinterpret_cast<tflite::NonMaxSuppressionV4OptionsT *>(u.value));
19950 break;
19951 }
19952 case BuiltinOptions_NonMaxSuppressionV5Options: {
19953 value = new tflite::NonMaxSuppressionV5OptionsT(*reinterpret_cast<tflite::NonMaxSuppressionV5OptionsT *>(u.value));
19954 break;
19955 }
19956 case BuiltinOptions_ScatterNdOptions: {
19957 value = new tflite::ScatterNdOptionsT(*reinterpret_cast<tflite::ScatterNdOptionsT *>(u.value));
19958 break;
19959 }
19960 case BuiltinOptions_SelectV2Options: {
19961 value = new tflite::SelectV2OptionsT(*reinterpret_cast<tflite::SelectV2OptionsT *>(u.value));
19962 break;
19963 }
19964 case BuiltinOptions_DensifyOptions: {
19965 value = new tflite::DensifyOptionsT(*reinterpret_cast<tflite::DensifyOptionsT *>(u.value));
19966 break;
19967 }
19968 case BuiltinOptions_SegmentSumOptions: {
19969 value = new tflite::SegmentSumOptionsT(*reinterpret_cast<tflite::SegmentSumOptionsT *>(u.value));
19970 break;
19971 }
19972 case BuiltinOptions_BatchMatMulOptions: {
19973 value = new tflite::BatchMatMulOptionsT(*reinterpret_cast<tflite::BatchMatMulOptionsT *>(u.value));
19974 break;
19975 }
19976 case BuiltinOptions_CumsumOptions: {
19977 value = new tflite::CumsumOptionsT(*reinterpret_cast<tflite::CumsumOptionsT *>(u.value));
19978 break;
19979 }
19980 case BuiltinOptions_CallOnceOptions: {
19981 value = new tflite::CallOnceOptionsT(*reinterpret_cast<tflite::CallOnceOptionsT *>(u.value));
19982 break;
19983 }
19984 case BuiltinOptions_BroadcastToOptions: {
19985 value = new tflite::BroadcastToOptionsT(*reinterpret_cast<tflite::BroadcastToOptionsT *>(u.value));
19986 break;
19987 }
19988 case BuiltinOptions_Rfft2dOptions: {
19989 value = new tflite::Rfft2dOptionsT(*reinterpret_cast<tflite::Rfft2dOptionsT *>(u.value));
19990 break;
19991 }
19992 case BuiltinOptions_Conv3DOptions: {
19993 value = new tflite::Conv3DOptionsT(*reinterpret_cast<tflite::Conv3DOptionsT *>(u.value));
19994 break;
19995 }
19996 case BuiltinOptions_HashtableOptions: {
19997 value = new tflite::HashtableOptionsT(*reinterpret_cast<tflite::HashtableOptionsT *>(u.value));
19998 break;
19999 }
20000 case BuiltinOptions_HashtableFindOptions: {
20001 value = new tflite::HashtableFindOptionsT(*reinterpret_cast<tflite::HashtableFindOptionsT *>(u.value));
20002 break;
20003 }
20004 case BuiltinOptions_HashtableImportOptions: {
20005 value = new tflite::HashtableImportOptionsT(*reinterpret_cast<tflite::HashtableImportOptionsT *>(u.value));
20006 break;
20007 }
20008 case BuiltinOptions_HashtableSizeOptions: {
20009 value = new tflite::HashtableSizeOptionsT(*reinterpret_cast<tflite::HashtableSizeOptionsT *>(u.value));
20010 break;
20011 }
20012 case BuiltinOptions_VarHandleOptions: {
20013 value = new tflite::VarHandleOptionsT(*reinterpret_cast<tflite::VarHandleOptionsT *>(u.value));
20014 break;
20015 }
20016 case BuiltinOptions_ReadVariableOptions: {
20017 value = new tflite::ReadVariableOptionsT(*reinterpret_cast<tflite::ReadVariableOptionsT *>(u.value));
20018 break;
20019 }
20020 case BuiltinOptions_AssignVariableOptions: {
20021 value = new tflite::AssignVariableOptionsT(*reinterpret_cast<tflite::AssignVariableOptionsT *>(u.value));
20022 break;
20023 }
20024 case BuiltinOptions_RandomOptions: {
20025 value = new tflite::RandomOptionsT(*reinterpret_cast<tflite::RandomOptionsT *>(u.value));
20026 break;
20027 }
20028 case BuiltinOptions_BucketizeOptions: {
20029 value = new tflite::BucketizeOptionsT(*reinterpret_cast<tflite::BucketizeOptionsT *>(u.value));
20030 break;
20031 }
20032 case BuiltinOptions_GeluOptions: {
20033 value = new tflite::GeluOptionsT(*reinterpret_cast<tflite::GeluOptionsT *>(u.value));
20034 break;
20035 }
20036 case BuiltinOptions_DynamicUpdateSliceOptions: {
20037 value = new tflite::DynamicUpdateSliceOptionsT(*reinterpret_cast<tflite::DynamicUpdateSliceOptionsT *>(u.value));
20038 break;
20039 }
20040 case BuiltinOptions_UnsortedSegmentProdOptions: {
20041 value = new tflite::UnsortedSegmentProdOptionsT(*reinterpret_cast<tflite::UnsortedSegmentProdOptionsT *>(u.value));
20042 break;
20043 }
20044 case BuiltinOptions_UnsortedSegmentMaxOptions: {
20045 value = new tflite::UnsortedSegmentMaxOptionsT(*reinterpret_cast<tflite::UnsortedSegmentMaxOptionsT *>(u.value));
20046 break;
20047 }
20048 case BuiltinOptions_UnsortedSegmentMinOptions: {
20049 value = new tflite::UnsortedSegmentMinOptionsT(*reinterpret_cast<tflite::UnsortedSegmentMinOptionsT *>(u.value));
20050 break;
20051 }
20052 case BuiltinOptions_UnsortedSegmentSumOptions: {
20053 value = new tflite::UnsortedSegmentSumOptionsT(*reinterpret_cast<tflite::UnsortedSegmentSumOptionsT *>(u.value));
20054 break;
20055 }
20056 case BuiltinOptions_ATan2Options: {
20057 value = new tflite::ATan2OptionsT(*reinterpret_cast<tflite::ATan2OptionsT *>(u.value));
20058 break;
20059 }
20060 case BuiltinOptions_SignOptions: {
20061 value = new tflite::SignOptionsT(*reinterpret_cast<tflite::SignOptionsT *>(u.value));
20062 break;
20063 }
20064 default:
20065 break;
20066 }
20067 }
20068
20069 inline void BuiltinOptionsUnion::Reset() {
20070 switch (type) {
20071 case BuiltinOptions_Conv2DOptions: {
20072 auto ptr = reinterpret_cast<tflite::Conv2DOptionsT *>(value);
20073 delete ptr;
20074 break;
20075 }
20076 case BuiltinOptions_DepthwiseConv2DOptions: {
20077 auto ptr = reinterpret_cast<tflite::DepthwiseConv2DOptionsT *>(value);
20078 delete ptr;
20079 break;
20080 }
20081 case BuiltinOptions_ConcatEmbeddingsOptions: {
20082 auto ptr = reinterpret_cast<tflite::ConcatEmbeddingsOptionsT *>(value);
20083 delete ptr;
20084 break;
20085 }
20086 case BuiltinOptions_LSHProjectionOptions: {
20087 auto ptr = reinterpret_cast<tflite::LSHProjectionOptionsT *>(value);
20088 delete ptr;
20089 break;
20090 }
20091 case BuiltinOptions_Pool2DOptions: {
20092 auto ptr = reinterpret_cast<tflite::Pool2DOptionsT *>(value);
20093 delete ptr;
20094 break;
20095 }
20096 case BuiltinOptions_SVDFOptions: {
20097 auto ptr = reinterpret_cast<tflite::SVDFOptionsT *>(value);
20098 delete ptr;
20099 break;
20100 }
20101 case BuiltinOptions_RNNOptions: {
20102 auto ptr = reinterpret_cast<tflite::RNNOptionsT *>(value);
20103 delete ptr;
20104 break;
20105 }
20106 case BuiltinOptions_FullyConnectedOptions: {
20107 auto ptr = reinterpret_cast<tflite::FullyConnectedOptionsT *>(value);
20108 delete ptr;
20109 break;
20110 }
20111 case BuiltinOptions_SoftmaxOptions: {
20112 auto ptr = reinterpret_cast<tflite::SoftmaxOptionsT *>(value);
20113 delete ptr;
20114 break;
20115 }
20116 case BuiltinOptions_ConcatenationOptions: {
20117 auto ptr = reinterpret_cast<tflite::ConcatenationOptionsT *>(value);
20118 delete ptr;
20119 break;
20120 }
20121 case BuiltinOptions_AddOptions: {
20122 auto ptr = reinterpret_cast<tflite::AddOptionsT *>(value);
20123 delete ptr;
20124 break;
20125 }
20126 case BuiltinOptions_L2NormOptions: {
20127 auto ptr = reinterpret_cast<tflite::L2NormOptionsT *>(value);
20128 delete ptr;
20129 break;
20130 }
20131 case BuiltinOptions_LocalResponseNormalizationOptions: {
20132 auto ptr = reinterpret_cast<tflite::LocalResponseNormalizationOptionsT *>(value);
20133 delete ptr;
20134 break;
20135 }
20136 case BuiltinOptions_LSTMOptions: {
20137 auto ptr = reinterpret_cast<tflite::LSTMOptionsT *>(value);
20138 delete ptr;
20139 break;
20140 }
20141 case BuiltinOptions_ResizeBilinearOptions: {
20142 auto ptr = reinterpret_cast<tflite::ResizeBilinearOptionsT *>(value);
20143 delete ptr;
20144 break;
20145 }
20146 case BuiltinOptions_CallOptions: {
20147 auto ptr = reinterpret_cast<tflite::CallOptionsT *>(value);
20148 delete ptr;
20149 break;
20150 }
20151 case BuiltinOptions_ReshapeOptions: {
20152 auto ptr = reinterpret_cast<tflite::ReshapeOptionsT *>(value);
20153 delete ptr;
20154 break;
20155 }
20156 case BuiltinOptions_SkipGramOptions: {
20157 auto ptr = reinterpret_cast<tflite::SkipGramOptionsT *>(value);
20158 delete ptr;
20159 break;
20160 }
20161 case BuiltinOptions_SpaceToDepthOptions: {
20162 auto ptr = reinterpret_cast<tflite::SpaceToDepthOptionsT *>(value);
20163 delete ptr;
20164 break;
20165 }
20166 case BuiltinOptions_EmbeddingLookupSparseOptions: {
20167 auto ptr = reinterpret_cast<tflite::EmbeddingLookupSparseOptionsT *>(value);
20168 delete ptr;
20169 break;
20170 }
20171 case BuiltinOptions_MulOptions: {
20172 auto ptr = reinterpret_cast<tflite::MulOptionsT *>(value);
20173 delete ptr;
20174 break;
20175 }
20176 case BuiltinOptions_PadOptions: {
20177 auto ptr = reinterpret_cast<tflite::PadOptionsT *>(value);
20178 delete ptr;
20179 break;
20180 }
20181 case BuiltinOptions_GatherOptions: {
20182 auto ptr = reinterpret_cast<tflite::GatherOptionsT *>(value);
20183 delete ptr;
20184 break;
20185 }
20186 case BuiltinOptions_BatchToSpaceNDOptions: {
20187 auto ptr = reinterpret_cast<tflite::BatchToSpaceNDOptionsT *>(value);
20188 delete ptr;
20189 break;
20190 }
20191 case BuiltinOptions_SpaceToBatchNDOptions: {
20192 auto ptr = reinterpret_cast<tflite::SpaceToBatchNDOptionsT *>(value);
20193 delete ptr;
20194 break;
20195 }
20196 case BuiltinOptions_TransposeOptions: {
20197 auto ptr = reinterpret_cast<tflite::TransposeOptionsT *>(value);
20198 delete ptr;
20199 break;
20200 }
20201 case BuiltinOptions_ReducerOptions: {
20202 auto ptr = reinterpret_cast<tflite::ReducerOptionsT *>(value);
20203 delete ptr;
20204 break;
20205 }
20206 case BuiltinOptions_SubOptions: {
20207 auto ptr = reinterpret_cast<tflite::SubOptionsT *>(value);
20208 delete ptr;
20209 break;
20210 }
20211 case BuiltinOptions_DivOptions: {
20212 auto ptr = reinterpret_cast<tflite::DivOptionsT *>(value);
20213 delete ptr;
20214 break;
20215 }
20216 case BuiltinOptions_SqueezeOptions: {
20217 auto ptr = reinterpret_cast<tflite::SqueezeOptionsT *>(value);
20218 delete ptr;
20219 break;
20220 }
20221 case BuiltinOptions_SequenceRNNOptions: {
20222 auto ptr = reinterpret_cast<tflite::SequenceRNNOptionsT *>(value);
20223 delete ptr;
20224 break;
20225 }
20226 case BuiltinOptions_StridedSliceOptions: {
20227 auto ptr = reinterpret_cast<tflite::StridedSliceOptionsT *>(value);
20228 delete ptr;
20229 break;
20230 }
20231 case BuiltinOptions_ExpOptions: {
20232 auto ptr = reinterpret_cast<tflite::ExpOptionsT *>(value);
20233 delete ptr;
20234 break;
20235 }
20236 case BuiltinOptions_TopKV2Options: {
20237 auto ptr = reinterpret_cast<tflite::TopKV2OptionsT *>(value);
20238 delete ptr;
20239 break;
20240 }
20241 case BuiltinOptions_SplitOptions: {
20242 auto ptr = reinterpret_cast<tflite::SplitOptionsT *>(value);
20243 delete ptr;
20244 break;
20245 }
20246 case BuiltinOptions_LogSoftmaxOptions: {
20247 auto ptr = reinterpret_cast<tflite::LogSoftmaxOptionsT *>(value);
20248 delete ptr;
20249 break;
20250 }
20251 case BuiltinOptions_CastOptions: {
20252 auto ptr = reinterpret_cast<tflite::CastOptionsT *>(value);
20253 delete ptr;
20254 break;
20255 }
20256 case BuiltinOptions_DequantizeOptions: {
20257 auto ptr = reinterpret_cast<tflite::DequantizeOptionsT *>(value);
20258 delete ptr;
20259 break;
20260 }
20261 case BuiltinOptions_MaximumMinimumOptions: {
20262 auto ptr = reinterpret_cast<tflite::MaximumMinimumOptionsT *>(value);
20263 delete ptr;
20264 break;
20265 }
20266 case BuiltinOptions_ArgMaxOptions: {
20267 auto ptr = reinterpret_cast<tflite::ArgMaxOptionsT *>(value);
20268 delete ptr;
20269 break;
20270 }
20271 case BuiltinOptions_LessOptions: {
20272 auto ptr = reinterpret_cast<tflite::LessOptionsT *>(value);
20273 delete ptr;
20274 break;
20275 }
20276 case BuiltinOptions_NegOptions: {
20277 auto ptr = reinterpret_cast<tflite::NegOptionsT *>(value);
20278 delete ptr;
20279 break;
20280 }
20281 case BuiltinOptions_PadV2Options: {
20282 auto ptr = reinterpret_cast<tflite::PadV2OptionsT *>(value);
20283 delete ptr;
20284 break;
20285 }
20286 case BuiltinOptions_GreaterOptions: {
20287 auto ptr = reinterpret_cast<tflite::GreaterOptionsT *>(value);
20288 delete ptr;
20289 break;
20290 }
20291 case BuiltinOptions_GreaterEqualOptions: {
20292 auto ptr = reinterpret_cast<tflite::GreaterEqualOptionsT *>(value);
20293 delete ptr;
20294 break;
20295 }
20296 case BuiltinOptions_LessEqualOptions: {
20297 auto ptr = reinterpret_cast<tflite::LessEqualOptionsT *>(value);
20298 delete ptr;
20299 break;
20300 }
20301 case BuiltinOptions_SelectOptions: {
20302 auto ptr = reinterpret_cast<tflite::SelectOptionsT *>(value);
20303 delete ptr;
20304 break;
20305 }
20306 case BuiltinOptions_SliceOptions: {
20307 auto ptr = reinterpret_cast<tflite::SliceOptionsT *>(value);
20308 delete ptr;
20309 break;
20310 }
20311 case BuiltinOptions_TransposeConvOptions: {
20312 auto ptr = reinterpret_cast<tflite::TransposeConvOptionsT *>(value);
20313 delete ptr;
20314 break;
20315 }
20316 case BuiltinOptions_SparseToDenseOptions: {
20317 auto ptr = reinterpret_cast<tflite::SparseToDenseOptionsT *>(value);
20318 delete ptr;
20319 break;
20320 }
20321 case BuiltinOptions_TileOptions: {
20322 auto ptr = reinterpret_cast<tflite::TileOptionsT *>(value);
20323 delete ptr;
20324 break;
20325 }
20326 case BuiltinOptions_ExpandDimsOptions: {
20327 auto ptr = reinterpret_cast<tflite::ExpandDimsOptionsT *>(value);
20328 delete ptr;
20329 break;
20330 }
20331 case BuiltinOptions_EqualOptions: {
20332 auto ptr = reinterpret_cast<tflite::EqualOptionsT *>(value);
20333 delete ptr;
20334 break;
20335 }
20336 case BuiltinOptions_NotEqualOptions: {
20337 auto ptr = reinterpret_cast<tflite::NotEqualOptionsT *>(value);
20338 delete ptr;
20339 break;
20340 }
20341 case BuiltinOptions_ShapeOptions: {
20342 auto ptr = reinterpret_cast<tflite::ShapeOptionsT *>(value);
20343 delete ptr;
20344 break;
20345 }
20346 case BuiltinOptions_PowOptions: {
20347 auto ptr = reinterpret_cast<tflite::PowOptionsT *>(value);
20348 delete ptr;
20349 break;
20350 }
20351 case BuiltinOptions_ArgMinOptions: {
20352 auto ptr = reinterpret_cast<tflite::ArgMinOptionsT *>(value);
20353 delete ptr;
20354 break;
20355 }
20356 case BuiltinOptions_FakeQuantOptions: {
20357 auto ptr = reinterpret_cast<tflite::FakeQuantOptionsT *>(value);
20358 delete ptr;
20359 break;
20360 }
20361 case BuiltinOptions_PackOptions: {
20362 auto ptr = reinterpret_cast<tflite::PackOptionsT *>(value);
20363 delete ptr;
20364 break;
20365 }
20366 case BuiltinOptions_LogicalOrOptions: {
20367 auto ptr = reinterpret_cast<tflite::LogicalOrOptionsT *>(value);
20368 delete ptr;
20369 break;
20370 }
20371 case BuiltinOptions_OneHotOptions: {
20372 auto ptr = reinterpret_cast<tflite::OneHotOptionsT *>(value);
20373 delete ptr;
20374 break;
20375 }
20376 case BuiltinOptions_LogicalAndOptions: {
20377 auto ptr = reinterpret_cast<tflite::LogicalAndOptionsT *>(value);
20378 delete ptr;
20379 break;
20380 }
20381 case BuiltinOptions_LogicalNotOptions: {
20382 auto ptr = reinterpret_cast<tflite::LogicalNotOptionsT *>(value);
20383 delete ptr;
20384 break;
20385 }
20386 case BuiltinOptions_UnpackOptions: {
20387 auto ptr = reinterpret_cast<tflite::UnpackOptionsT *>(value);
20388 delete ptr;
20389 break;
20390 }
20391 case BuiltinOptions_FloorDivOptions: {
20392 auto ptr = reinterpret_cast<tflite::FloorDivOptionsT *>(value);
20393 delete ptr;
20394 break;
20395 }
20396 case BuiltinOptions_SquareOptions: {
20397 auto ptr = reinterpret_cast<tflite::SquareOptionsT *>(value);
20398 delete ptr;
20399 break;
20400 }
20401 case BuiltinOptions_ZerosLikeOptions: {
20402 auto ptr = reinterpret_cast<tflite::ZerosLikeOptionsT *>(value);
20403 delete ptr;
20404 break;
20405 }
20406 case BuiltinOptions_FillOptions: {
20407 auto ptr = reinterpret_cast<tflite::FillOptionsT *>(value);
20408 delete ptr;
20409 break;
20410 }
20411 case BuiltinOptions_BidirectionalSequenceLSTMOptions: {
20412 auto ptr = reinterpret_cast<tflite::BidirectionalSequenceLSTMOptionsT *>(value);
20413 delete ptr;
20414 break;
20415 }
20416 case BuiltinOptions_BidirectionalSequenceRNNOptions: {
20417 auto ptr = reinterpret_cast<tflite::BidirectionalSequenceRNNOptionsT *>(value);
20418 delete ptr;
20419 break;
20420 }
20421 case BuiltinOptions_UnidirectionalSequenceLSTMOptions: {
20422 auto ptr = reinterpret_cast<tflite::UnidirectionalSequenceLSTMOptionsT *>(value);
20423 delete ptr;
20424 break;
20425 }
20426 case BuiltinOptions_FloorModOptions: {
20427 auto ptr = reinterpret_cast<tflite::FloorModOptionsT *>(value);
20428 delete ptr;
20429 break;
20430 }
20431 case BuiltinOptions_RangeOptions: {
20432 auto ptr = reinterpret_cast<tflite::RangeOptionsT *>(value);
20433 delete ptr;
20434 break;
20435 }
20436 case BuiltinOptions_ResizeNearestNeighborOptions: {
20437 auto ptr = reinterpret_cast<tflite::ResizeNearestNeighborOptionsT *>(value);
20438 delete ptr;
20439 break;
20440 }
20441 case BuiltinOptions_LeakyReluOptions: {
20442 auto ptr = reinterpret_cast<tflite::LeakyReluOptionsT *>(value);
20443 delete ptr;
20444 break;
20445 }
20446 case BuiltinOptions_SquaredDifferenceOptions: {
20447 auto ptr = reinterpret_cast<tflite::SquaredDifferenceOptionsT *>(value);
20448 delete ptr;
20449 break;
20450 }
20451 case BuiltinOptions_MirrorPadOptions: {
20452 auto ptr = reinterpret_cast<tflite::MirrorPadOptionsT *>(value);
20453 delete ptr;
20454 break;
20455 }
20456 case BuiltinOptions_AbsOptions: {
20457 auto ptr = reinterpret_cast<tflite::AbsOptionsT *>(value);
20458 delete ptr;
20459 break;
20460 }
20461 case BuiltinOptions_SplitVOptions: {
20462 auto ptr = reinterpret_cast<tflite::SplitVOptionsT *>(value);
20463 delete ptr;
20464 break;
20465 }
20466 case BuiltinOptions_UniqueOptions: {
20467 auto ptr = reinterpret_cast<tflite::UniqueOptionsT *>(value);
20468 delete ptr;
20469 break;
20470 }
20471 case BuiltinOptions_ReverseV2Options: {
20472 auto ptr = reinterpret_cast<tflite::ReverseV2OptionsT *>(value);
20473 delete ptr;
20474 break;
20475 }
20476 case BuiltinOptions_AddNOptions: {
20477 auto ptr = reinterpret_cast<tflite::AddNOptionsT *>(value);
20478 delete ptr;
20479 break;
20480 }
20481 case BuiltinOptions_GatherNdOptions: {
20482 auto ptr = reinterpret_cast<tflite::GatherNdOptionsT *>(value);
20483 delete ptr;
20484 break;
20485 }
20486 case BuiltinOptions_CosOptions: {
20487 auto ptr = reinterpret_cast<tflite::CosOptionsT *>(value);
20488 delete ptr;
20489 break;
20490 }
20491 case BuiltinOptions_WhereOptions: {
20492 auto ptr = reinterpret_cast<tflite::WhereOptionsT *>(value);
20493 delete ptr;
20494 break;
20495 }
20496 case BuiltinOptions_RankOptions: {
20497 auto ptr = reinterpret_cast<tflite::RankOptionsT *>(value);
20498 delete ptr;
20499 break;
20500 }
20501 case BuiltinOptions_ReverseSequenceOptions: {
20502 auto ptr = reinterpret_cast<tflite::ReverseSequenceOptionsT *>(value);
20503 delete ptr;
20504 break;
20505 }
20506 case BuiltinOptions_MatrixDiagOptions: {
20507 auto ptr = reinterpret_cast<tflite::MatrixDiagOptionsT *>(value);
20508 delete ptr;
20509 break;
20510 }
20511 case BuiltinOptions_QuantizeOptions: {
20512 auto ptr = reinterpret_cast<tflite::QuantizeOptionsT *>(value);
20513 delete ptr;
20514 break;
20515 }
20516 case BuiltinOptions_MatrixSetDiagOptions: {
20517 auto ptr = reinterpret_cast<tflite::MatrixSetDiagOptionsT *>(value);
20518 delete ptr;
20519 break;
20520 }
20521 case BuiltinOptions_HardSwishOptions: {
20522 auto ptr = reinterpret_cast<tflite::HardSwishOptionsT *>(value);
20523 delete ptr;
20524 break;
20525 }
20526 case BuiltinOptions_IfOptions: {
20527 auto ptr = reinterpret_cast<tflite::IfOptionsT *>(value);
20528 delete ptr;
20529 break;
20530 }
20531 case BuiltinOptions_WhileOptions: {
20532 auto ptr = reinterpret_cast<tflite::WhileOptionsT *>(value);
20533 delete ptr;
20534 break;
20535 }
20536 case BuiltinOptions_DepthToSpaceOptions: {
20537 auto ptr = reinterpret_cast<tflite::DepthToSpaceOptionsT *>(value);
20538 delete ptr;
20539 break;
20540 }
20541 case BuiltinOptions_NonMaxSuppressionV4Options: {
20542 auto ptr = reinterpret_cast<tflite::NonMaxSuppressionV4OptionsT *>(value);
20543 delete ptr;
20544 break;
20545 }
20546 case BuiltinOptions_NonMaxSuppressionV5Options: {
20547 auto ptr = reinterpret_cast<tflite::NonMaxSuppressionV5OptionsT *>(value);
20548 delete ptr;
20549 break;
20550 }
20551 case BuiltinOptions_ScatterNdOptions: {
20552 auto ptr = reinterpret_cast<tflite::ScatterNdOptionsT *>(value);
20553 delete ptr;
20554 break;
20555 }
20556 case BuiltinOptions_SelectV2Options: {
20557 auto ptr = reinterpret_cast<tflite::SelectV2OptionsT *>(value);
20558 delete ptr;
20559 break;
20560 }
20561 case BuiltinOptions_DensifyOptions: {
20562 auto ptr = reinterpret_cast<tflite::DensifyOptionsT *>(value);
20563 delete ptr;
20564 break;
20565 }
20566 case BuiltinOptions_SegmentSumOptions: {
20567 auto ptr = reinterpret_cast<tflite::SegmentSumOptionsT *>(value);
20568 delete ptr;
20569 break;
20570 }
20571 case BuiltinOptions_BatchMatMulOptions: {
20572 auto ptr = reinterpret_cast<tflite::BatchMatMulOptionsT *>(value);
20573 delete ptr;
20574 break;
20575 }
20576 case BuiltinOptions_CumsumOptions: {
20577 auto ptr = reinterpret_cast<tflite::CumsumOptionsT *>(value);
20578 delete ptr;
20579 break;
20580 }
20581 case BuiltinOptions_CallOnceOptions: {
20582 auto ptr = reinterpret_cast<tflite::CallOnceOptionsT *>(value);
20583 delete ptr;
20584 break;
20585 }
20586 case BuiltinOptions_BroadcastToOptions: {
20587 auto ptr = reinterpret_cast<tflite::BroadcastToOptionsT *>(value);
20588 delete ptr;
20589 break;
20590 }
20591 case BuiltinOptions_Rfft2dOptions: {
20592 auto ptr = reinterpret_cast<tflite::Rfft2dOptionsT *>(value);
20593 delete ptr;
20594 break;
20595 }
20596 case BuiltinOptions_Conv3DOptions: {
20597 auto ptr = reinterpret_cast<tflite::Conv3DOptionsT *>(value);
20598 delete ptr;
20599 break;
20600 }
20601 case BuiltinOptions_HashtableOptions: {
20602 auto ptr = reinterpret_cast<tflite::HashtableOptionsT *>(value);
20603 delete ptr;
20604 break;
20605 }
20606 case BuiltinOptions_HashtableFindOptions: {
20607 auto ptr = reinterpret_cast<tflite::HashtableFindOptionsT *>(value);
20608 delete ptr;
20609 break;
20610 }
20611 case BuiltinOptions_HashtableImportOptions: {
20612 auto ptr = reinterpret_cast<tflite::HashtableImportOptionsT *>(value);
20613 delete ptr;
20614 break;
20615 }
20616 case BuiltinOptions_HashtableSizeOptions: {
20617 auto ptr = reinterpret_cast<tflite::HashtableSizeOptionsT *>(value);
20618 delete ptr;
20619 break;
20620 }
20621 case BuiltinOptions_VarHandleOptions: {
20622 auto ptr = reinterpret_cast<tflite::VarHandleOptionsT *>(value);
20623 delete ptr;
20624 break;
20625 }
20626 case BuiltinOptions_ReadVariableOptions: {
20627 auto ptr = reinterpret_cast<tflite::ReadVariableOptionsT *>(value);
20628 delete ptr;
20629 break;
20630 }
20631 case BuiltinOptions_AssignVariableOptions: {
20632 auto ptr = reinterpret_cast<tflite::AssignVariableOptionsT *>(value);
20633 delete ptr;
20634 break;
20635 }
20636 case BuiltinOptions_RandomOptions: {
20637 auto ptr = reinterpret_cast<tflite::RandomOptionsT *>(value);
20638 delete ptr;
20639 break;
20640 }
20641 case BuiltinOptions_BucketizeOptions: {
20642 auto ptr = reinterpret_cast<tflite::BucketizeOptionsT *>(value);
20643 delete ptr;
20644 break;
20645 }
20646 case BuiltinOptions_GeluOptions: {
20647 auto ptr = reinterpret_cast<tflite::GeluOptionsT *>(value);
20648 delete ptr;
20649 break;
20650 }
20651 case BuiltinOptions_DynamicUpdateSliceOptions: {
20652 auto ptr = reinterpret_cast<tflite::DynamicUpdateSliceOptionsT *>(value);
20653 delete ptr;
20654 break;
20655 }
20656 case BuiltinOptions_UnsortedSegmentProdOptions: {
20657 auto ptr = reinterpret_cast<tflite::UnsortedSegmentProdOptionsT *>(value);
20658 delete ptr;
20659 break;
20660 }
20661 case BuiltinOptions_UnsortedSegmentMaxOptions: {
20662 auto ptr = reinterpret_cast<tflite::UnsortedSegmentMaxOptionsT *>(value);
20663 delete ptr;
20664 break;
20665 }
20666 case BuiltinOptions_UnsortedSegmentMinOptions: {
20667 auto ptr = reinterpret_cast<tflite::UnsortedSegmentMinOptionsT *>(value);
20668 delete ptr;
20669 break;
20670 }
20671 case BuiltinOptions_UnsortedSegmentSumOptions: {
20672 auto ptr = reinterpret_cast<tflite::UnsortedSegmentSumOptionsT *>(value);
20673 delete ptr;
20674 break;
20675 }
20676 case BuiltinOptions_ATan2Options: {
20677 auto ptr = reinterpret_cast<tflite::ATan2OptionsT *>(value);
20678 delete ptr;
20679 break;
20680 }
20681 case BuiltinOptions_SignOptions: {
20682 auto ptr = reinterpret_cast<tflite::SignOptionsT *>(value);
20683 delete ptr;
20684 break;
20685 }
20686 default: break;
20687 }
20688 value = nullptr;
20689 type = BuiltinOptions_NONE;
20690 }
20691
20692 inline const tflite::Model *GetModel(const void *buf) {
20693 return flatbuffers::GetRoot<tflite::Model>(buf);
20694 }
20695
20696 inline const tflite::Model *GetSizePrefixedModel(const void *buf) {
20697 return flatbuffers::GetSizePrefixedRoot<tflite::Model>(buf);
20698 }
20699
20700 inline Model *GetMutableModel(void *buf) {
20701 return flatbuffers::GetMutableRoot<Model>(buf);
20702 }
20703
20704 inline tflite::Model *GetMutableSizePrefixedModel(void *buf) {
20705 return flatbuffers::GetMutableSizePrefixedRoot<tflite::Model>(buf);
20706 }
20707
20708 inline const char *ModelIdentifier() {
20709 return "TFL3";
20710 }
20711
20712 inline bool ModelBufferHasIdentifier(const void *buf) {
20713 return flatbuffers::BufferHasIdentifier(
20714 buf, ModelIdentifier());
20715 }
20716
20717 inline bool SizePrefixedModelBufferHasIdentifier(const void *buf) {
20718 return flatbuffers::BufferHasIdentifier(
20719 buf, ModelIdentifier(), true);
20720 }
20721
20722 inline bool VerifyModelBuffer(
20723 flatbuffers::Verifier &verifier) {
20724 return verifier.VerifyBuffer<tflite::Model>(ModelIdentifier());
20725 }
20726
20727 inline bool VerifySizePrefixedModelBuffer(
20728 flatbuffers::Verifier &verifier) {
20729 return verifier.VerifySizePrefixedBuffer<tflite::Model>(ModelIdentifier());
20730 }
20731
20732 inline const char *ModelExtension() {
20733 return "tflite";
20734 }
20735
20736 inline void FinishModelBuffer(
20737 flatbuffers::FlatBufferBuilder &fbb,
20738 flatbuffers::Offset<tflite::Model> root) {
20739 fbb.Finish(root, ModelIdentifier());
20740 }
20741
20742 inline void FinishSizePrefixedModelBuffer(
20743 flatbuffers::FlatBufferBuilder &fbb,
20744 flatbuffers::Offset<tflite::Model> root) {
20745 fbb.FinishSizePrefixed(root, ModelIdentifier());
20746 }
20747
20748 inline std::unique_ptr<tflite::ModelT> UnPackModel(
20749 const void *buf,
20750 const flatbuffers::resolver_function_t *res = nullptr) {
20751 return std::unique_ptr<tflite::ModelT>(GetModel(buf)->UnPack(res));
20752 }
20753
20754 inline std::unique_ptr<tflite::ModelT> UnPackSizePrefixedModel(
20755 const void *buf,
20756 const flatbuffers::resolver_function_t *res = nullptr) {
20757 return std::unique_ptr<tflite::ModelT>(GetSizePrefixedModel(buf)->UnPack(res));
20758 }
20759
20760 } // namespace tflite
20761
20762 #endif // FLATBUFFERS_GENERATED_SCHEMA_TFLITE_H_
20763