1 // automatically generated by the FlatBuffers compiler, do not modify
2 
3 
4 #ifndef FLATBUFFERS_GENERATED_PLAN_ORG_APACHE_ARROW_COMPUTEIR_FLATBUF_H_
5 #define FLATBUFFERS_GENERATED_PLAN_ORG_APACHE_ARROW_COMPUTEIR_FLATBUF_H_
6 
7 #include "flatbuffers/flatbuffers.h"
8 
9 #include "Schema_generated.h"
10 #include "Expression_generated.h"
11 #include "Literal_generated.h"
12 #include "Relation_generated.h"
13 
14 namespace org {
15 namespace apache {
16 namespace arrow {
17 namespace computeir {
18 namespace flatbuf {
19 
20 struct Plan;
21 struct PlanBuilder;
22 
23 /// A specification of a query.
24 struct Plan FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
25   typedef PlanBuilder Builder;
26   enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
27     VT_SINKS = 4
28   };
29   /// One or more output relations.
sinksFLATBUFFERS_FINAL_CLASS30   const flatbuffers::Vector<flatbuffers::Offset<org::apache::arrow::computeir::flatbuf::Relation>> *sinks() const {
31     return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<org::apache::arrow::computeir::flatbuf::Relation>> *>(VT_SINKS);
32   }
VerifyFLATBUFFERS_FINAL_CLASS33   bool Verify(flatbuffers::Verifier &verifier) const {
34     return VerifyTableStart(verifier) &&
35            VerifyOffsetRequired(verifier, VT_SINKS) &&
36            verifier.VerifyVector(sinks()) &&
37            verifier.VerifyVectorOfTables(sinks()) &&
38            verifier.EndTable();
39   }
40 };
41 
42 struct PlanBuilder {
43   typedef Plan Table;
44   flatbuffers::FlatBufferBuilder &fbb_;
45   flatbuffers::uoffset_t start_;
add_sinksPlanBuilder46   void add_sinks(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<org::apache::arrow::computeir::flatbuf::Relation>>> sinks) {
47     fbb_.AddOffset(Plan::VT_SINKS, sinks);
48   }
PlanBuilderPlanBuilder49   explicit PlanBuilder(flatbuffers::FlatBufferBuilder &_fbb)
50         : fbb_(_fbb) {
51     start_ = fbb_.StartTable();
52   }
53   PlanBuilder &operator=(const PlanBuilder &);
FinishPlanBuilder54   flatbuffers::Offset<Plan> Finish() {
55     const auto end = fbb_.EndTable(start_);
56     auto o = flatbuffers::Offset<Plan>(end);
57     fbb_.Required(o, Plan::VT_SINKS);
58     return o;
59   }
60 };
61 
62 inline flatbuffers::Offset<Plan> CreatePlan(
63     flatbuffers::FlatBufferBuilder &_fbb,
64     flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<org::apache::arrow::computeir::flatbuf::Relation>>> sinks = 0) {
65   PlanBuilder builder_(_fbb);
66   builder_.add_sinks(sinks);
67   return builder_.Finish();
68 }
69 
70 inline flatbuffers::Offset<Plan> CreatePlanDirect(
71     flatbuffers::FlatBufferBuilder &_fbb,
72     const std::vector<flatbuffers::Offset<org::apache::arrow::computeir::flatbuf::Relation>> *sinks = nullptr) {
73   auto sinks__ = sinks ? _fbb.CreateVector<flatbuffers::Offset<org::apache::arrow::computeir::flatbuf::Relation>>(*sinks) : 0;
74   return org::apache::arrow::computeir::flatbuf::CreatePlan(
75       _fbb,
76       sinks__);
77 }
78 
GetPlan(const void * buf)79 inline const org::apache::arrow::computeir::flatbuf::Plan *GetPlan(const void *buf) {
80   return flatbuffers::GetRoot<org::apache::arrow::computeir::flatbuf::Plan>(buf);
81 }
82 
GetSizePrefixedPlan(const void * buf)83 inline const org::apache::arrow::computeir::flatbuf::Plan *GetSizePrefixedPlan(const void *buf) {
84   return flatbuffers::GetSizePrefixedRoot<org::apache::arrow::computeir::flatbuf::Plan>(buf);
85 }
86 
VerifyPlanBuffer(flatbuffers::Verifier & verifier)87 inline bool VerifyPlanBuffer(
88     flatbuffers::Verifier &verifier) {
89   return verifier.VerifyBuffer<org::apache::arrow::computeir::flatbuf::Plan>(nullptr);
90 }
91 
VerifySizePrefixedPlanBuffer(flatbuffers::Verifier & verifier)92 inline bool VerifySizePrefixedPlanBuffer(
93     flatbuffers::Verifier &verifier) {
94   return verifier.VerifySizePrefixedBuffer<org::apache::arrow::computeir::flatbuf::Plan>(nullptr);
95 }
96 
FinishPlanBuffer(flatbuffers::FlatBufferBuilder & fbb,flatbuffers::Offset<org::apache::arrow::computeir::flatbuf::Plan> root)97 inline void FinishPlanBuffer(
98     flatbuffers::FlatBufferBuilder &fbb,
99     flatbuffers::Offset<org::apache::arrow::computeir::flatbuf::Plan> root) {
100   fbb.Finish(root);
101 }
102 
FinishSizePrefixedPlanBuffer(flatbuffers::FlatBufferBuilder & fbb,flatbuffers::Offset<org::apache::arrow::computeir::flatbuf::Plan> root)103 inline void FinishSizePrefixedPlanBuffer(
104     flatbuffers::FlatBufferBuilder &fbb,
105     flatbuffers::Offset<org::apache::arrow::computeir::flatbuf::Plan> root) {
106   fbb.FinishSizePrefixed(root);
107 }
108 
109 }  // namespace flatbuf
110 }  // namespace computeir
111 }  // namespace arrow
112 }  // namespace apache
113 }  // namespace org
114 
115 #endif  // FLATBUFFERS_GENERATED_PLAN_ORG_APACHE_ARROW_COMPUTEIR_FLATBUF_H_
116