diff --git a/.github/workflows/r.yml b/.github/workflows/r.yml index ece279e..ff54240 100644 --- a/.github/workflows/r.yml +++ b/.github/workflows/r.yml @@ -35,7 +35,31 @@ jobs: run: | sudo apt-get update -y -qq && sudo apt-get install -y -qq ninja-build libcurl4-openssl-dev mkdir -p $HOME/.R - (cd duckdb/tools/rpkg && R -f dependencies.R) + (cd scripts && R -f dependencies.R) + + - uses: actions/checkout@v3 + with: + path: ${{ env.DUCKDB_SRC }} + + - uses: actions/checkout@v3 + with: + repository: ${{ env.DUCKDB_R_REPO }} + path: ${{ env.DUCKDB_R_SRC }} + + # needed so we can run git commit in vendor.sh + - name: setup github and create parallel builds + shell: bash + run: | + git config --global user.email "duck@duck.com" + git config --global user.name "mr. duck" + mkdir -p ~/.R + echo 'MAKEFLAGS = -j2' >> ~/.R/Makevars + + # error is from git_dev_version() but does not affect this workflow + - name: update duckdb-r src code with PR code + shell: bash + working-directory: ${{ env.DUCKDB_R_SRC }} + run: (cd duckdb-r && ./vendor.sh duckdb) - name: Build Extension run: | @@ -43,10 +67,8 @@ jobs: - name: Build DuckDB (R) run: | - cd duckdb/tools/rpkg - ./configure - R CMD build . - R CMD INSTALL -d duckdb_*.tar.gz + cd duckdb-r + R CMD INSTALL . - name: Test R run: | diff --git a/.gitmodules b/.gitmodules index b6b484a..ac278dd 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,6 @@ [submodule "duckdb"] path = duckdb url = https://github.com/duckdb/duckdb +[submodule "duckdb-r"] + path = duckdb-r + url = https://github.com/duckdb/duckdb-r diff --git a/duckdb-r b/duckdb-r new file mode 160000 index 0000000..38463c6 --- /dev/null +++ b/duckdb-r @@ -0,0 +1 @@ +Subproject commit 38463c6fe1c2654a58f796219b8b7ea83b1dcd5d diff --git a/scripts/dependencies.R b/scripts/dependencies.R new file mode 100644 index 0000000..6663252 --- /dev/null +++ b/scripts/dependencies.R @@ -0,0 +1,12 @@ +local({ + pkg <- c("DBI", "callr", "DBItest", "dbplyr", "testthat", "bit64", "cpp11", "arrow", "covr", "pkgbuild", "remotes") + + if (.Platform$OS.type == "unix") { + options(HTTPUserAgent = sprintf("R/4.1.0 R (4.1.0 %s)", paste(R.version$platform, R.version$arch, R.version$os))) + install.packages(pkg, repos = "https://packagemanager.rstudio.com/all/__linux__/focal/latest") + # https://github.com/r-lib/covr/pull/499 + remotes::install_github("r-lib/covr") + } else { + install.packages(pkg, repos = "https://cloud.r-project.org", pkgType = "binary") + } +}) diff --git a/scripts/update_substrait.py b/scripts/update_substrait.py index 2061161..e0bbaa3 100644 --- a/scripts/update_substrait.py +++ b/scripts/update_substrait.py @@ -5,7 +5,7 @@ import shutil from os import walk -GITHUB_TAG = "335a4dc74ccb3ef88769878d36c35e511e47ef70" # V0.24 +GITHUB_TAG = "9e39067e49f453f1df998c3c4a821e53dd7a1e8f" # V0.35 # Change to substrait folder sub_folder = os.path.join(os.path.dirname(os.path.realpath(__file__)),'..','third_party','substrait') os.chdir(sub_folder) @@ -35,6 +35,7 @@ proto_sub_extensions = next(walk(substrait_extensions_proto_folder), (None, None, []))[2] +# /usr/local/bin/protoc print("Protoc version" + os.popen('protoc --version').read()) for proto in proto_sub_list: diff --git a/third_party/substrait/substrait/algebra.pb.cc b/third_party/substrait/substrait/algebra.pb.cc index 904d65d..a1dcfe2 100644 --- a/third_party/substrait/substrait/algebra.pb.cc +++ b/third_party/substrait/substrait/algebra.pb.cc @@ -328,6 +328,46 @@ struct AggregateRelDefaultTypeInternal { }; }; PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT AggregateRelDefaultTypeInternal _AggregateRel_default_instance_; +constexpr ConsistentPartitionWindowRel_WindowRelFunction::ConsistentPartitionWindowRel_WindowRelFunction( + ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized) + : arguments_() + , options_() + , upper_bound_(nullptr) + , lower_bound_(nullptr) + , output_type_(nullptr) + , function_reference_(0u) + , phase_(0) + + , invocation_(0) + + , bounds_type_(0) +{} +struct ConsistentPartitionWindowRel_WindowRelFunctionDefaultTypeInternal { + constexpr ConsistentPartitionWindowRel_WindowRelFunctionDefaultTypeInternal() + : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {} + ~ConsistentPartitionWindowRel_WindowRelFunctionDefaultTypeInternal() {} + union { + ConsistentPartitionWindowRel_WindowRelFunction _instance; + }; +}; +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT ConsistentPartitionWindowRel_WindowRelFunctionDefaultTypeInternal _ConsistentPartitionWindowRel_WindowRelFunction_default_instance_; +constexpr ConsistentPartitionWindowRel::ConsistentPartitionWindowRel( + ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized) + : window_functions_() + , partition_expressions_() + , sorts_() + , common_(nullptr) + , input_(nullptr) + , advanced_extension_(nullptr){} +struct ConsistentPartitionWindowRelDefaultTypeInternal { + constexpr ConsistentPartitionWindowRelDefaultTypeInternal() + : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {} + ~ConsistentPartitionWindowRelDefaultTypeInternal() {} + union { + ConsistentPartitionWindowRel _instance; + }; +}; +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT ConsistentPartitionWindowRelDefaultTypeInternal _ConsistentPartitionWindowRel_default_instance_; constexpr SortRel::SortRel( ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized) : sorts_() @@ -506,6 +546,44 @@ struct ExchangeRelDefaultTypeInternal { }; }; PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT ExchangeRelDefaultTypeInternal _ExchangeRel_default_instance_; +constexpr ExpandRel_ExpandField::ExpandRel_ExpandField( + ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized) + : _oneof_case_{}{} +struct ExpandRel_ExpandFieldDefaultTypeInternal { + constexpr ExpandRel_ExpandFieldDefaultTypeInternal() + : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {} + ~ExpandRel_ExpandFieldDefaultTypeInternal() {} + union { + ExpandRel_ExpandField _instance; + }; +}; +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT ExpandRel_ExpandFieldDefaultTypeInternal _ExpandRel_ExpandField_default_instance_; +constexpr ExpandRel_SwitchingField::ExpandRel_SwitchingField( + ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized) + : duplicates_(){} +struct ExpandRel_SwitchingFieldDefaultTypeInternal { + constexpr ExpandRel_SwitchingFieldDefaultTypeInternal() + : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {} + ~ExpandRel_SwitchingFieldDefaultTypeInternal() {} + union { + ExpandRel_SwitchingField _instance; + }; +}; +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT ExpandRel_SwitchingFieldDefaultTypeInternal _ExpandRel_SwitchingField_default_instance_; +constexpr ExpandRel::ExpandRel( + ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized) + : fields_() + , common_(nullptr) + , input_(nullptr){} +struct ExpandRelDefaultTypeInternal { + constexpr ExpandRelDefaultTypeInternal() + : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {} + ~ExpandRelDefaultTypeInternal() {} + union { + ExpandRel _instance; + }; +}; +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT ExpandRelDefaultTypeInternal _ExpandRel_default_instance_; constexpr RelRoot::RelRoot( ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized) : names_() @@ -963,6 +1041,8 @@ constexpr Expression_WindowFunction::Expression_WindowFunction( , phase_(0) , invocation_(0) + + , bounds_type_(0) {} struct Expression_WindowFunctionDefaultTypeInternal { constexpr Expression_WindowFunctionDefaultTypeInternal() @@ -1469,8 +1549,8 @@ struct AggregateFunctionDefaultTypeInternal { }; PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT AggregateFunctionDefaultTypeInternal _AggregateFunction_default_instance_; } // namespace substrait -static ::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_substrait_2falgebra_2eproto[108]; -static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* file_level_enum_descriptors_substrait_2falgebra_2eproto[15]; +static ::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_substrait_2falgebra_2eproto[113]; +static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* file_level_enum_descriptors_substrait_2falgebra_2eproto[16]; static constexpr ::PROTOBUF_NAMESPACE_ID::ServiceDescriptor const** file_level_service_descriptors_substrait_2falgebra_2eproto = nullptr; const uint32_t TableStruct_substrait_2falgebra_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = { @@ -1685,6 +1765,33 @@ const uint32_t TableStruct_substrait_2falgebra_2eproto::offsets[] PROTOBUF_SECTI PROTOBUF_FIELD_OFFSET(::substrait::AggregateRel, measures_), PROTOBUF_FIELD_OFFSET(::substrait::AggregateRel, advanced_extension_), ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::substrait::ConsistentPartitionWindowRel_WindowRelFunction, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + PROTOBUF_FIELD_OFFSET(::substrait::ConsistentPartitionWindowRel_WindowRelFunction, function_reference_), + PROTOBUF_FIELD_OFFSET(::substrait::ConsistentPartitionWindowRel_WindowRelFunction, arguments_), + PROTOBUF_FIELD_OFFSET(::substrait::ConsistentPartitionWindowRel_WindowRelFunction, options_), + PROTOBUF_FIELD_OFFSET(::substrait::ConsistentPartitionWindowRel_WindowRelFunction, output_type_), + PROTOBUF_FIELD_OFFSET(::substrait::ConsistentPartitionWindowRel_WindowRelFunction, phase_), + PROTOBUF_FIELD_OFFSET(::substrait::ConsistentPartitionWindowRel_WindowRelFunction, invocation_), + PROTOBUF_FIELD_OFFSET(::substrait::ConsistentPartitionWindowRel_WindowRelFunction, lower_bound_), + PROTOBUF_FIELD_OFFSET(::substrait::ConsistentPartitionWindowRel_WindowRelFunction, upper_bound_), + PROTOBUF_FIELD_OFFSET(::substrait::ConsistentPartitionWindowRel_WindowRelFunction, bounds_type_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::substrait::ConsistentPartitionWindowRel, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + PROTOBUF_FIELD_OFFSET(::substrait::ConsistentPartitionWindowRel, common_), + PROTOBUF_FIELD_OFFSET(::substrait::ConsistentPartitionWindowRel, input_), + PROTOBUF_FIELD_OFFSET(::substrait::ConsistentPartitionWindowRel, window_functions_), + PROTOBUF_FIELD_OFFSET(::substrait::ConsistentPartitionWindowRel, partition_expressions_), + PROTOBUF_FIELD_OFFSET(::substrait::ConsistentPartitionWindowRel, sorts_), + PROTOBUF_FIELD_OFFSET(::substrait::ConsistentPartitionWindowRel, advanced_extension_), + ~0u, // no _has_bits_ PROTOBUF_FIELD_OFFSET(::substrait::SortRel, _internal_metadata_), ~0u, // no _extensions_ ~0u, // no _oneof_case_ @@ -1803,6 +1910,31 @@ const uint32_t TableStruct_substrait_2falgebra_2eproto::offsets[] PROTOBUF_SECTI PROTOBUF_FIELD_OFFSET(::substrait::ExchangeRel, advanced_extension_), PROTOBUF_FIELD_OFFSET(::substrait::ExchangeRel, exchange_kind_), ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::substrait::ExpandRel_ExpandField, _internal_metadata_), + ~0u, // no _extensions_ + PROTOBUF_FIELD_OFFSET(::substrait::ExpandRel_ExpandField, _oneof_case_[0]), + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + ::PROTOBUF_NAMESPACE_ID::internal::kInvalidFieldOffsetTag, + ::PROTOBUF_NAMESPACE_ID::internal::kInvalidFieldOffsetTag, + PROTOBUF_FIELD_OFFSET(::substrait::ExpandRel_ExpandField, field_type_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::substrait::ExpandRel_SwitchingField, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + PROTOBUF_FIELD_OFFSET(::substrait::ExpandRel_SwitchingField, duplicates_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::substrait::ExpandRel, _internal_metadata_), + ~0u, // no _extensions_ + ~0u, // no _oneof_case_ + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + PROTOBUF_FIELD_OFFSET(::substrait::ExpandRel, common_), + PROTOBUF_FIELD_OFFSET(::substrait::ExpandRel, input_), + PROTOBUF_FIELD_OFFSET(::substrait::ExpandRel, fields_), + ~0u, // no _has_bits_ PROTOBUF_FIELD_OFFSET(::substrait::RelRoot, _internal_metadata_), ~0u, // no _extensions_ ~0u, // no _oneof_case_ @@ -1830,6 +1962,9 @@ const uint32_t TableStruct_substrait_2falgebra_2eproto::offsets[] PROTOBUF_SECTI ::PROTOBUF_NAMESPACE_ID::internal::kInvalidFieldOffsetTag, ::PROTOBUF_NAMESPACE_ID::internal::kInvalidFieldOffsetTag, ::PROTOBUF_NAMESPACE_ID::internal::kInvalidFieldOffsetTag, + ::PROTOBUF_NAMESPACE_ID::internal::kInvalidFieldOffsetTag, + ::PROTOBUF_NAMESPACE_ID::internal::kInvalidFieldOffsetTag, + ::PROTOBUF_NAMESPACE_ID::internal::kInvalidFieldOffsetTag, PROTOBUF_FIELD_OFFSET(::substrait::Rel, rel_type_), ~0u, // no _has_bits_ PROTOBUF_FIELD_OFFSET(::substrait::NamedObjectWrite, _internal_metadata_), @@ -2145,6 +2280,7 @@ const uint32_t TableStruct_substrait_2falgebra_2eproto::offsets[] PROTOBUF_SECTI PROTOBUF_FIELD_OFFSET(::substrait::Expression_WindowFunction, sorts_), PROTOBUF_FIELD_OFFSET(::substrait::Expression_WindowFunction, invocation_), PROTOBUF_FIELD_OFFSET(::substrait::Expression_WindowFunction, partitions_), + PROTOBUF_FIELD_OFFSET(::substrait::Expression_WindowFunction, bounds_type_), PROTOBUF_FIELD_OFFSET(::substrait::Expression_WindowFunction, lower_bound_), PROTOBUF_FIELD_OFFSET(::substrait::Expression_WindowFunction, upper_bound_), PROTOBUF_FIELD_OFFSET(::substrait::Expression_WindowFunction, args_), @@ -2508,91 +2644,96 @@ static const ::PROTOBUF_NAMESPACE_ID::internal::MigrationSchema schemas[] PROTOB { 184, -1, -1, sizeof(::substrait::AggregateRel_Grouping)}, { 191, -1, -1, sizeof(::substrait::AggregateRel_Measure)}, { 199, -1, -1, sizeof(::substrait::AggregateRel)}, - { 210, -1, -1, sizeof(::substrait::SortRel)}, - { 220, -1, -1, sizeof(::substrait::FilterRel)}, - { 230, -1, -1, sizeof(::substrait::SetRel)}, - { 240, -1, -1, sizeof(::substrait::ExtensionSingleRel)}, - { 249, -1, -1, sizeof(::substrait::ExtensionLeafRel)}, - { 257, -1, -1, sizeof(::substrait::ExtensionMultiRel)}, - { 266, -1, -1, sizeof(::substrait::ExchangeRel_ScatterFields)}, - { 273, -1, -1, sizeof(::substrait::ExchangeRel_SingleBucketExpression)}, - { 280, -1, -1, sizeof(::substrait::ExchangeRel_MultiBucketExpression)}, - { 288, -1, -1, sizeof(::substrait::ExchangeRel_Broadcast)}, - { 294, -1, -1, sizeof(::substrait::ExchangeRel_RoundRobin)}, - { 301, -1, -1, sizeof(::substrait::ExchangeRel_ExchangeTarget)}, - { 311, -1, -1, sizeof(::substrait::ExchangeRel)}, - { 328, -1, -1, sizeof(::substrait::RelRoot)}, - { 336, -1, -1, sizeof(::substrait::Rel)}, - { 357, -1, -1, sizeof(::substrait::NamedObjectWrite)}, - { 365, -1, -1, sizeof(::substrait::ExtensionObject)}, - { 372, -1, -1, sizeof(::substrait::DdlRel)}, - { 386, -1, -1, sizeof(::substrait::WriteRel)}, - { 399, -1, -1, sizeof(::substrait::HashJoinRel)}, - { 413, -1, -1, sizeof(::substrait::MergeJoinRel)}, - { 427, -1, -1, sizeof(::substrait::FunctionArgument)}, - { 437, -1, -1, sizeof(::substrait::FunctionOption)}, - { 445, -1, -1, sizeof(::substrait::Expression_Enum_Empty)}, - { 451, -1, -1, sizeof(::substrait::Expression_Enum)}, - { 460, -1, -1, sizeof(::substrait::Expression_Literal_VarChar)}, - { 468, -1, -1, sizeof(::substrait::Expression_Literal_Decimal)}, - { 477, -1, -1, sizeof(::substrait::Expression_Literal_Map_KeyValue)}, - { 485, -1, -1, sizeof(::substrait::Expression_Literal_Map)}, - { 492, -1, -1, sizeof(::substrait::Expression_Literal_IntervalYearToMonth)}, - { 500, -1, -1, sizeof(::substrait::Expression_Literal_IntervalDayToSecond)}, - { 509, -1, -1, sizeof(::substrait::Expression_Literal_Struct)}, - { 516, -1, -1, sizeof(::substrait::Expression_Literal_List)}, - { 523, -1, -1, sizeof(::substrait::Expression_Literal_UserDefined)}, - { 532, -1, -1, sizeof(::substrait::Expression_Literal)}, - { 568, -1, -1, sizeof(::substrait::Expression_Nested_Map_KeyValue)}, - { 576, -1, -1, sizeof(::substrait::Expression_Nested_Map)}, - { 583, -1, -1, sizeof(::substrait::Expression_Nested_Struct)}, - { 590, -1, -1, sizeof(::substrait::Expression_Nested_List)}, - { 597, -1, -1, sizeof(::substrait::Expression_Nested)}, - { 609, -1, -1, sizeof(::substrait::Expression_ScalarFunction)}, - { 620, -1, -1, sizeof(::substrait::Expression_WindowFunction_Bound_Preceding)}, - { 627, -1, -1, sizeof(::substrait::Expression_WindowFunction_Bound_Following)}, - { 634, -1, -1, sizeof(::substrait::Expression_WindowFunction_Bound_CurrentRow)}, - { 640, -1, -1, sizeof(::substrait::Expression_WindowFunction_Bound_Unbounded)}, - { 646, -1, -1, sizeof(::substrait::Expression_WindowFunction_Bound)}, - { 657, -1, -1, sizeof(::substrait::Expression_WindowFunction)}, - { 674, -1, -1, sizeof(::substrait::Expression_IfThen_IfClause)}, - { 682, -1, -1, sizeof(::substrait::Expression_IfThen)}, - { 690, -1, -1, sizeof(::substrait::Expression_Cast)}, - { 699, -1, -1, sizeof(::substrait::Expression_SwitchExpression_IfValue)}, - { 707, -1, -1, sizeof(::substrait::Expression_SwitchExpression)}, - { 716, -1, -1, sizeof(::substrait::Expression_SingularOrList)}, - { 724, -1, -1, sizeof(::substrait::Expression_MultiOrList_Record)}, - { 731, -1, -1, sizeof(::substrait::Expression_MultiOrList)}, - { 739, -1, -1, sizeof(::substrait::Expression_EmbeddedFunction_PythonPickleFunction)}, - { 747, -1, -1, sizeof(::substrait::Expression_EmbeddedFunction_WebAssemblyFunction)}, - { 755, -1, -1, sizeof(::substrait::Expression_EmbeddedFunction)}, - { 766, -1, -1, sizeof(::substrait::Expression_ReferenceSegment_MapKey)}, - { 774, -1, -1, sizeof(::substrait::Expression_ReferenceSegment_StructField)}, - { 782, -1, -1, sizeof(::substrait::Expression_ReferenceSegment_ListElement)}, - { 790, -1, -1, sizeof(::substrait::Expression_ReferenceSegment)}, - { 800, -1, -1, sizeof(::substrait::Expression_MaskExpression_Select)}, - { 810, -1, -1, sizeof(::substrait::Expression_MaskExpression_StructSelect)}, - { 817, -1, -1, sizeof(::substrait::Expression_MaskExpression_StructItem)}, - { 825, -1, -1, sizeof(::substrait::Expression_MaskExpression_ListSelect_ListSelectItem_ListElement)}, - { 832, -1, -1, sizeof(::substrait::Expression_MaskExpression_ListSelect_ListSelectItem_ListSlice)}, - { 840, -1, -1, sizeof(::substrait::Expression_MaskExpression_ListSelect_ListSelectItem)}, - { 849, -1, -1, sizeof(::substrait::Expression_MaskExpression_ListSelect)}, - { 857, -1, -1, sizeof(::substrait::Expression_MaskExpression_MapSelect_MapKey)}, - { 864, -1, -1, sizeof(::substrait::Expression_MaskExpression_MapSelect_MapKeyExpression)}, - { 871, -1, -1, sizeof(::substrait::Expression_MaskExpression_MapSelect)}, - { 881, -1, -1, sizeof(::substrait::Expression_MaskExpression)}, - { 889, -1, -1, sizeof(::substrait::Expression_FieldReference_RootReference)}, - { 895, -1, -1, sizeof(::substrait::Expression_FieldReference_OuterReference)}, - { 902, -1, -1, sizeof(::substrait::Expression_FieldReference)}, - { 915, -1, -1, sizeof(::substrait::Expression_Subquery_Scalar)}, - { 922, -1, -1, sizeof(::substrait::Expression_Subquery_InPredicate)}, - { 930, -1, -1, sizeof(::substrait::Expression_Subquery_SetPredicate)}, - { 938, -1, -1, sizeof(::substrait::Expression_Subquery_SetComparison)}, - { 948, -1, -1, sizeof(::substrait::Expression_Subquery)}, - { 959, -1, -1, sizeof(::substrait::Expression)}, - { 978, -1, -1, sizeof(::substrait::SortField)}, - { 988, -1, -1, sizeof(::substrait::AggregateFunction_ReferenceRel)}, - { 995, -1, -1, sizeof(::substrait::AggregateFunction)}, + { 210, -1, -1, sizeof(::substrait::ConsistentPartitionWindowRel_WindowRelFunction)}, + { 225, -1, -1, sizeof(::substrait::ConsistentPartitionWindowRel)}, + { 237, -1, -1, sizeof(::substrait::SortRel)}, + { 247, -1, -1, sizeof(::substrait::FilterRel)}, + { 257, -1, -1, sizeof(::substrait::SetRel)}, + { 267, -1, -1, sizeof(::substrait::ExtensionSingleRel)}, + { 276, -1, -1, sizeof(::substrait::ExtensionLeafRel)}, + { 284, -1, -1, sizeof(::substrait::ExtensionMultiRel)}, + { 293, -1, -1, sizeof(::substrait::ExchangeRel_ScatterFields)}, + { 300, -1, -1, sizeof(::substrait::ExchangeRel_SingleBucketExpression)}, + { 307, -1, -1, sizeof(::substrait::ExchangeRel_MultiBucketExpression)}, + { 315, -1, -1, sizeof(::substrait::ExchangeRel_Broadcast)}, + { 321, -1, -1, sizeof(::substrait::ExchangeRel_RoundRobin)}, + { 328, -1, -1, sizeof(::substrait::ExchangeRel_ExchangeTarget)}, + { 338, -1, -1, sizeof(::substrait::ExchangeRel)}, + { 355, -1, -1, sizeof(::substrait::ExpandRel_ExpandField)}, + { 364, -1, -1, sizeof(::substrait::ExpandRel_SwitchingField)}, + { 371, -1, -1, sizeof(::substrait::ExpandRel)}, + { 380, -1, -1, sizeof(::substrait::RelRoot)}, + { 388, -1, -1, sizeof(::substrait::Rel)}, + { 412, -1, -1, sizeof(::substrait::NamedObjectWrite)}, + { 420, -1, -1, sizeof(::substrait::ExtensionObject)}, + { 427, -1, -1, sizeof(::substrait::DdlRel)}, + { 441, -1, -1, sizeof(::substrait::WriteRel)}, + { 454, -1, -1, sizeof(::substrait::HashJoinRel)}, + { 468, -1, -1, sizeof(::substrait::MergeJoinRel)}, + { 482, -1, -1, sizeof(::substrait::FunctionArgument)}, + { 492, -1, -1, sizeof(::substrait::FunctionOption)}, + { 500, -1, -1, sizeof(::substrait::Expression_Enum_Empty)}, + { 506, -1, -1, sizeof(::substrait::Expression_Enum)}, + { 515, -1, -1, sizeof(::substrait::Expression_Literal_VarChar)}, + { 523, -1, -1, sizeof(::substrait::Expression_Literal_Decimal)}, + { 532, -1, -1, sizeof(::substrait::Expression_Literal_Map_KeyValue)}, + { 540, -1, -1, sizeof(::substrait::Expression_Literal_Map)}, + { 547, -1, -1, sizeof(::substrait::Expression_Literal_IntervalYearToMonth)}, + { 555, -1, -1, sizeof(::substrait::Expression_Literal_IntervalDayToSecond)}, + { 564, -1, -1, sizeof(::substrait::Expression_Literal_Struct)}, + { 571, -1, -1, sizeof(::substrait::Expression_Literal_List)}, + { 578, -1, -1, sizeof(::substrait::Expression_Literal_UserDefined)}, + { 587, -1, -1, sizeof(::substrait::Expression_Literal)}, + { 623, -1, -1, sizeof(::substrait::Expression_Nested_Map_KeyValue)}, + { 631, -1, -1, sizeof(::substrait::Expression_Nested_Map)}, + { 638, -1, -1, sizeof(::substrait::Expression_Nested_Struct)}, + { 645, -1, -1, sizeof(::substrait::Expression_Nested_List)}, + { 652, -1, -1, sizeof(::substrait::Expression_Nested)}, + { 664, -1, -1, sizeof(::substrait::Expression_ScalarFunction)}, + { 675, -1, -1, sizeof(::substrait::Expression_WindowFunction_Bound_Preceding)}, + { 682, -1, -1, sizeof(::substrait::Expression_WindowFunction_Bound_Following)}, + { 689, -1, -1, sizeof(::substrait::Expression_WindowFunction_Bound_CurrentRow)}, + { 695, -1, -1, sizeof(::substrait::Expression_WindowFunction_Bound_Unbounded)}, + { 701, -1, -1, sizeof(::substrait::Expression_WindowFunction_Bound)}, + { 712, -1, -1, sizeof(::substrait::Expression_WindowFunction)}, + { 730, -1, -1, sizeof(::substrait::Expression_IfThen_IfClause)}, + { 738, -1, -1, sizeof(::substrait::Expression_IfThen)}, + { 746, -1, -1, sizeof(::substrait::Expression_Cast)}, + { 755, -1, -1, sizeof(::substrait::Expression_SwitchExpression_IfValue)}, + { 763, -1, -1, sizeof(::substrait::Expression_SwitchExpression)}, + { 772, -1, -1, sizeof(::substrait::Expression_SingularOrList)}, + { 780, -1, -1, sizeof(::substrait::Expression_MultiOrList_Record)}, + { 787, -1, -1, sizeof(::substrait::Expression_MultiOrList)}, + { 795, -1, -1, sizeof(::substrait::Expression_EmbeddedFunction_PythonPickleFunction)}, + { 803, -1, -1, sizeof(::substrait::Expression_EmbeddedFunction_WebAssemblyFunction)}, + { 811, -1, -1, sizeof(::substrait::Expression_EmbeddedFunction)}, + { 822, -1, -1, sizeof(::substrait::Expression_ReferenceSegment_MapKey)}, + { 830, -1, -1, sizeof(::substrait::Expression_ReferenceSegment_StructField)}, + { 838, -1, -1, sizeof(::substrait::Expression_ReferenceSegment_ListElement)}, + { 846, -1, -1, sizeof(::substrait::Expression_ReferenceSegment)}, + { 856, -1, -1, sizeof(::substrait::Expression_MaskExpression_Select)}, + { 866, -1, -1, sizeof(::substrait::Expression_MaskExpression_StructSelect)}, + { 873, -1, -1, sizeof(::substrait::Expression_MaskExpression_StructItem)}, + { 881, -1, -1, sizeof(::substrait::Expression_MaskExpression_ListSelect_ListSelectItem_ListElement)}, + { 888, -1, -1, sizeof(::substrait::Expression_MaskExpression_ListSelect_ListSelectItem_ListSlice)}, + { 896, -1, -1, sizeof(::substrait::Expression_MaskExpression_ListSelect_ListSelectItem)}, + { 905, -1, -1, sizeof(::substrait::Expression_MaskExpression_ListSelect)}, + { 913, -1, -1, sizeof(::substrait::Expression_MaskExpression_MapSelect_MapKey)}, + { 920, -1, -1, sizeof(::substrait::Expression_MaskExpression_MapSelect_MapKeyExpression)}, + { 927, -1, -1, sizeof(::substrait::Expression_MaskExpression_MapSelect)}, + { 937, -1, -1, sizeof(::substrait::Expression_MaskExpression)}, + { 945, -1, -1, sizeof(::substrait::Expression_FieldReference_RootReference)}, + { 951, -1, -1, sizeof(::substrait::Expression_FieldReference_OuterReference)}, + { 958, -1, -1, sizeof(::substrait::Expression_FieldReference)}, + { 971, -1, -1, sizeof(::substrait::Expression_Subquery_Scalar)}, + { 978, -1, -1, sizeof(::substrait::Expression_Subquery_InPredicate)}, + { 986, -1, -1, sizeof(::substrait::Expression_Subquery_SetPredicate)}, + { 994, -1, -1, sizeof(::substrait::Expression_Subquery_SetComparison)}, + { 1004, -1, -1, sizeof(::substrait::Expression_Subquery)}, + { 1015, -1, -1, sizeof(::substrait::Expression)}, + { 1034, -1, -1, sizeof(::substrait::SortField)}, + { 1044, -1, -1, sizeof(::substrait::AggregateFunction_ReferenceRel)}, + { 1051, -1, -1, sizeof(::substrait::AggregateFunction)}, }; static ::PROTOBUF_NAMESPACE_ID::Message const * const file_default_instances[] = { @@ -2619,6 +2760,8 @@ static ::PROTOBUF_NAMESPACE_ID::Message const * const file_default_instances[] = reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::substrait::_AggregateRel_Grouping_default_instance_), reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::substrait::_AggregateRel_Measure_default_instance_), reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::substrait::_AggregateRel_default_instance_), + reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::substrait::_ConsistentPartitionWindowRel_WindowRelFunction_default_instance_), + reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::substrait::_ConsistentPartitionWindowRel_default_instance_), reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::substrait::_SortRel_default_instance_), reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::substrait::_FilterRel_default_instance_), reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::substrait::_SetRel_default_instance_), @@ -2632,6 +2775,9 @@ static ::PROTOBUF_NAMESPACE_ID::Message const * const file_default_instances[] = reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::substrait::_ExchangeRel_RoundRobin_default_instance_), reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::substrait::_ExchangeRel_ExchangeTarget_default_instance_), reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::substrait::_ExchangeRel_default_instance_), + reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::substrait::_ExpandRel_ExpandField_default_instance_), + reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::substrait::_ExpandRel_SwitchingField_default_instance_), + reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::substrait::_ExpandRel_default_instance_), reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::substrait::_RelRoot_default_instance_), reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::substrait::_Rel_default_instance_), reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::substrait::_NamedObjectWrite_default_instance_), @@ -2802,398 +2948,436 @@ const char descriptor_table_protodef_substrait_2falgebra_2eproto[] PROTOBUF_SECT "ing_expressions\030\001 \003(\0132\025.substrait.Expres" "sion\032_\n\007Measure\022-\n\007measure\030\001 \001(\0132\034.subst" "rait.AggregateFunction\022%\n\006filter\030\002 \001(\0132\025" - ".substrait.Expression\"\270\001\n\007SortRel\022$\n\006com" - "mon\030\001 \001(\0132\024.substrait.RelCommon\022\035\n\005input" - "\030\002 \001(\0132\016.substrait.Rel\022#\n\005sorts\030\003 \003(\0132\024." + ".substrait.Expression\"\310\006\n\034ConsistentPart" + "itionWindowRel\022$\n\006common\030\001 \001(\0132\024.substra" + "it.RelCommon\022\035\n\005input\030\002 \001(\0132\016.substrait." + "Rel\022S\n\020window_functions\030\003 \003(\01329.substrai" + "t.ConsistentPartitionWindowRel.WindowRel" + "Function\0224\n\025partition_expressions\030\004 \003(\0132" + "\025.substrait.Expression\022#\n\005sorts\030\005 \003(\0132\024." "substrait.SortField\022C\n\022advanced_extensio" "n\030\n \001(\0132\'.substrait.extensions.AdvancedE" - "xtension\"\277\001\n\tFilterRel\022$\n\006common\030\001 \001(\0132\024" - ".substrait.RelCommon\022\035\n\005input\030\002 \001(\0132\016.su" - "bstrait.Rel\022(\n\tcondition\030\003 \001(\0132\025.substra" - "it.Expression\022C\n\022advanced_extension\030\n \001(" - "\0132\'.substrait.extensions.AdvancedExtensi" - "on\"\203\003\n\006SetRel\022$\n\006common\030\001 \001(\0132\024.substrai" - "t.RelCommon\022\036\n\006inputs\030\002 \003(\0132\016.substrait." - "Rel\022#\n\002op\030\003 \001(\0162\027.substrait.SetRel.SetOp" - "\022C\n\022advanced_extension\030\n \001(\0132\'.substrait" - ".extensions.AdvancedExtension\"\310\001\n\005SetOp\022" - "\026\n\022SET_OP_UNSPECIFIED\020\000\022\030\n\024SET_OP_MINUS_" - "PRIMARY\020\001\022\031\n\025SET_OP_MINUS_MULTISET\020\002\022\037\n\033" - "SET_OP_INTERSECTION_PRIMARY\020\003\022 \n\034SET_OP_" - "INTERSECTION_MULTISET\020\004\022\031\n\025SET_OP_UNION_" - "DISTINCT\020\005\022\024\n\020SET_OP_UNION_ALL\020\006\"\177\n\022Exte" - "nsionSingleRel\022$\n\006common\030\001 \001(\0132\024.substra" - "it.RelCommon\022\035\n\005input\030\002 \001(\0132\016.substrait." - "Rel\022$\n\006detail\030\003 \001(\0132\024.google.protobuf.An" - "y\"^\n\020ExtensionLeafRel\022$\n\006common\030\001 \001(\0132\024." - "substrait.RelCommon\022$\n\006detail\030\002 \001(\0132\024.go" - "ogle.protobuf.Any\"\177\n\021ExtensionMultiRel\022$" - "\n\006common\030\001 \001(\0132\024.substrait.RelCommon\022\036\n\006" - "inputs\030\002 \003(\0132\016.substrait.Rel\022$\n\006detail\030\003" - " \001(\0132\024.google.protobuf.Any\"\303\007\n\013ExchangeR" - "el\022$\n\006common\030\001 \001(\0132\024.substrait.RelCommon" - "\022\035\n\005input\030\002 \001(\0132\016.substrait.Rel\022\027\n\017parti" - "tion_count\030\003 \001(\005\0226\n\007targets\030\004 \003(\0132%.subs" - "trait.ExchangeRel.ExchangeTarget\022A\n\021scat" - "ter_by_fields\030\005 \001(\0132$.substrait.Exchange" - "Rel.ScatterFieldsH\000\022F\n\rsingle_target\030\006 \001" - "(\0132-.substrait.ExchangeRel.SingleBucketE" - "xpressionH\000\022D\n\014multi_target\030\007 \001(\0132,.subs" - "trait.ExchangeRel.MultiBucketExpressionH" - "\000\0228\n\013round_robin\030\010 \001(\0132!.substrait.Excha" - "ngeRel.RoundRobinH\000\0225\n\tbroadcast\030\t \001(\0132 " - ".substrait.ExchangeRel.BroadcastH\000\022C\n\022ad" - "vanced_extension\030\n \001(\0132\'.substrait.exten" - "sions.AdvancedExtension\032E\n\rScatterFields" - "\0224\n\006fields\030\001 \003(\0132$.substrait.Expression." - "FieldReference\032C\n\026SingleBucketExpression" - "\022)\n\nexpression\030\001 \001(\0132\025.substrait.Express" - "ion\032`\n\025MultiBucketExpression\022)\n\nexpressi" - "on\030\001 \001(\0132\025.substrait.Expression\022\034\n\024const" - "rained_to_count\030\002 \001(\010\032\013\n\tBroadcast\032\033\n\nRo" - "undRobin\022\r\n\005exact\030\001 \001(\010\032n\n\016ExchangeTarge" - "t\022\024\n\014partition_id\030\001 \003(\005\022\r\n\003uri\030\002 \001(\tH\000\022(" - "\n\010extended\030\003 \001(\0132\024.google.protobuf.AnyH\000" - "B\r\n\013target_typeB\017\n\rexchange_kind\"7\n\007RelR" - "oot\022\035\n\005input\030\001 \001(\0132\016.substrait.Rel\022\r\n\005na" - "mes\030\002 \003(\t\"\362\004\n\003Rel\022\"\n\004read\030\001 \001(\0132\022.substr" - "ait.ReadRelH\000\022&\n\006filter\030\002 \001(\0132\024.substrai" - "t.FilterRelH\000\022$\n\005fetch\030\003 \001(\0132\023.substrait" - ".FetchRelH\000\022,\n\taggregate\030\004 \001(\0132\027.substra" - "it.AggregateRelH\000\022\"\n\004sort\030\005 \001(\0132\022.substr" - "ait.SortRelH\000\022\"\n\004join\030\006 \001(\0132\022.substrait." - "JoinRelH\000\022(\n\007project\030\007 \001(\0132\025.substrait.P" - "rojectRelH\000\022 \n\003set\030\010 \001(\0132\021.substrait.Set" - "RelH\000\0229\n\020extension_single\030\t \001(\0132\035.substr" - "ait.ExtensionSingleRelH\000\0227\n\017extension_mu" - "lti\030\n \001(\0132\034.substrait.ExtensionMultiRelH" - "\000\0225\n\016extension_leaf\030\013 \001(\0132\033.substrait.Ex" - "tensionLeafRelH\000\022$\n\005cross\030\014 \001(\0132\023.substr" - "ait.CrossRelH\000\022+\n\thash_join\030\r \001(\0132\026.subs" - "trait.HashJoinRelH\000\022-\n\nmerge_join\030\016 \001(\0132" - "\027.substrait.MergeJoinRelH\000B\n\n\010rel_type\"f" - "\n\020NamedObjectWrite\022\r\n\005names\030\001 \003(\t\022C\n\022adv" - "anced_extension\030\n \001(\0132\'.substrait.extens" - "ions.AdvancedExtension\"7\n\017ExtensionObjec" - "t\022$\n\006detail\030\001 \001(\0132\024.google.protobuf.Any\"" - "\316\004\n\006DdlRel\0223\n\014named_object\030\001 \001(\0132\033.subst" - "rait.NamedObjectWriteH\000\0226\n\020extension_obj" - "ect\030\002 \001(\0132\032.substrait.ExtensionObjectH\000\022" - ",\n\014table_schema\030\003 \001(\0132\026.substrait.NamedS" - "truct\022<\n\016table_defaults\030\004 \001(\0132$.substrai" - "t.Expression.Literal.Struct\022+\n\006object\030\005 " - "\001(\0162\033.substrait.DdlRel.DdlObject\022#\n\002op\030\006" - " \001(\0162\027.substrait.DdlRel.DdlOp\022\'\n\017view_de" - "finition\030\007 \001(\0132\016.substrait.Rel\"R\n\tDdlObj" - "ect\022\032\n\026DDL_OBJECT_UNSPECIFIED\020\000\022\024\n\020DDL_O" - "BJECT_TABLE\020\001\022\023\n\017DDL_OBJECT_VIEW\020\002\"\215\001\n\005D" - "dlOp\022\026\n\022DDL_OP_UNSPECIFIED\020\000\022\021\n\rDDL_OP_C" - "REATE\020\001\022\034\n\030DDL_OP_CREATE_OR_REPLACE\020\002\022\020\n" - "\014DDL_OP_ALTER\020\003\022\017\n\013DDL_OP_DROP\020\004\022\030\n\024DDL_" - "OP_DROP_IF_EXIST\020\005B\014\n\nwrite_type\"\207\004\n\010Wri" - "teRel\0222\n\013named_table\030\001 \001(\0132\033.substrait.N" - "amedObjectWriteH\000\0225\n\017extension_table\030\002 \001" - "(\0132\032.substrait.ExtensionObjectH\000\022,\n\014tabl" - "e_schema\030\003 \001(\0132\026.substrait.NamedStruct\022\'" - "\n\002op\030\004 \001(\0162\033.substrait.WriteRel.WriteOp\022" - "\035\n\005input\030\005 \001(\0132\016.substrait.Rel\022.\n\006output" - "\030\006 \001(\0162\036.substrait.WriteRel.OutputMode\"u" - "\n\007WriteOp\022\030\n\024WRITE_OP_UNSPECIFIED\020\000\022\023\n\017W" - "RITE_OP_INSERT\020\001\022\023\n\017WRITE_OP_DELETE\020\002\022\023\n" - "\017WRITE_OP_UPDATE\020\003\022\021\n\rWRITE_OP_CTAS\020\004\"e\n" - "\nOutputMode\022\033\n\027OUTPUT_MODE_UNSPECIFIED\020\000" - "\022\031\n\025OUTPUT_MODE_NO_OUTPUT\020\001\022\037\n\033OUTPUT_MO" - "DE_MODIFIED_TUPLES\020\002B\014\n\nwrite_type\"\351\004\n\013H" - "ashJoinRel\022$\n\006common\030\001 \001(\0132\024.substrait.R" - "elCommon\022\034\n\004left\030\002 \001(\0132\016.substrait.Rel\022\035" - "\n\005right\030\003 \001(\0132\016.substrait.Rel\0227\n\tleft_ke" - "ys\030\004 \003(\0132$.substrait.Expression.FieldRef" - "erence\0228\n\nright_keys\030\005 \003(\0132$.substrait.E" - "xpression.FieldReference\022/\n\020post_join_fi" - "lter\030\006 \001(\0132\025.substrait.Expression\022-\n\004typ" - "e\030\007 \001(\0162\037.substrait.HashJoinRel.JoinType" - "\022C\n\022advanced_extension\030\n \001(\0132\'.substrait" - ".extensions.AdvancedExtension\"\336\001\n\010JoinTy" - "pe\022\031\n\025JOIN_TYPE_UNSPECIFIED\020\000\022\023\n\017JOIN_TY" - "PE_INNER\020\001\022\023\n\017JOIN_TYPE_OUTER\020\002\022\022\n\016JOIN_" - "TYPE_LEFT\020\003\022\023\n\017JOIN_TYPE_RIGHT\020\004\022\027\n\023JOIN" - "_TYPE_LEFT_SEMI\020\005\022\030\n\024JOIN_TYPE_RIGHT_SEM" - "I\020\006\022\027\n\023JOIN_TYPE_LEFT_ANTI\020\007\022\030\n\024JOIN_TYP" - "E_RIGHT_ANTI\020\010\"\353\004\n\014MergeJoinRel\022$\n\006commo" - "n\030\001 \001(\0132\024.substrait.RelCommon\022\034\n\004left\030\002 " - "\001(\0132\016.substrait.Rel\022\035\n\005right\030\003 \001(\0132\016.sub" - "strait.Rel\0227\n\tleft_keys\030\004 \003(\0132$.substrai" - "t.Expression.FieldReference\0228\n\nright_key" - "s\030\005 \003(\0132$.substrait.Expression.FieldRefe" - "rence\022/\n\020post_join_filter\030\006 \001(\0132\025.substr" - "ait.Expression\022.\n\004type\030\007 \001(\0162 .substrait" - ".MergeJoinRel.JoinType\022C\n\022advanced_exten" + "xtension\032\355\003\n\021WindowRelFunction\022\032\n\022functi" + "on_reference\030\001 \001(\r\022.\n\targuments\030\t \003(\0132\033." + "substrait.FunctionArgument\022*\n\007options\030\013 " + "\003(\0132\031.substrait.FunctionOption\022$\n\013output" + "_type\030\007 \001(\0132\017.substrait.Type\022*\n\005phase\030\006 " + "\001(\0162\033.substrait.AggregationPhase\022F\n\ninvo" + "cation\030\n \001(\01622.substrait.AggregateFuncti" + "on.AggregationInvocation\022\?\n\013lower_bound\030" + "\005 \001(\0132*.substrait.Expression.WindowFunct" + "ion.Bound\022\?\n\013upper_bound\030\004 \001(\0132*.substra" + "it.Expression.WindowFunction.Bound\022D\n\013bo" + "unds_type\030\014 \001(\0162/.substrait.Expression.W" + "indowFunction.BoundsType\"\270\001\n\007SortRel\022$\n\006" + "common\030\001 \001(\0132\024.substrait.RelCommon\022\035\n\005in" + "put\030\002 \001(\0132\016.substrait.Rel\022#\n\005sorts\030\003 \003(\013" + "2\024.substrait.SortField\022C\n\022advanced_exten" "sion\030\n \001(\0132\'.substrait.extensions.Advanc" - "edExtension\"\336\001\n\010JoinType\022\031\n\025JOIN_TYPE_UN" - "SPECIFIED\020\000\022\023\n\017JOIN_TYPE_INNER\020\001\022\023\n\017JOIN" - "_TYPE_OUTER\020\002\022\022\n\016JOIN_TYPE_LEFT\020\003\022\023\n\017JOI" - "N_TYPE_RIGHT\020\004\022\027\n\023JOIN_TYPE_LEFT_SEMI\020\005\022" - "\030\n\024JOIN_TYPE_RIGHT_SEMI\020\006\022\027\n\023JOIN_TYPE_L" - "EFT_ANTI\020\007\022\030\n\024JOIN_TYPE_RIGHT_ANTI\020\010\"w\n\020" - "FunctionArgument\022\016\n\004enum\030\001 \001(\tH\000\022\037\n\004type" - "\030\002 \001(\0132\017.substrait.TypeH\000\022&\n\005value\030\003 \001(\013" - "2\025.substrait.ExpressionH\000B\n\n\010arg_type\"2\n" - "\016FunctionOption\022\014\n\004name\030\001 \001(\t\022\022\n\nprefere" - "nce\030\002 \003(\t\"\320E\n\nExpression\0220\n\007literal\030\001 \001(" - "\0132\035.substrait.Expression.LiteralH\000\0229\n\tse" - "lection\030\002 \001(\0132$.substrait.Expression.Fie" - "ldReferenceH\000\022\?\n\017scalar_function\030\003 \001(\0132$" - ".substrait.Expression.ScalarFunctionH\000\022\?" - "\n\017window_function\030\005 \001(\0132$.substrait.Expr" - "ession.WindowFunctionH\000\022/\n\007if_then\030\006 \001(\013" - "2\034.substrait.Expression.IfThenH\000\022C\n\021swit" - "ch_expression\030\007 \001(\0132&.substrait.Expressi" - "on.SwitchExpressionH\000\022@\n\020singular_or_lis" - "t\030\010 \001(\0132$.substrait.Expression.SingularO" - "rListH\000\022:\n\rmulti_or_list\030\t \001(\0132!.substra" - "it.Expression.MultiOrListH\000\022*\n\004cast\030\013 \001(" - "\0132\032.substrait.Expression.CastH\000\0222\n\010subqu" - "ery\030\014 \001(\0132\036.substrait.Expression.Subquer" - "yH\000\022.\n\006nested\030\r \001(\0132\034.substrait.Expressi" - "on.NestedH\000\022.\n\004enum\030\n \001(\0132\032.substrait.Ex" - "pression.EnumB\002\030\001H\000\032r\n\004Enum\022\023\n\tspecified" - "\030\001 \001(\tH\000\0227\n\013unspecified\030\002 \001(\0132 .substrai" - "t.Expression.Enum.EmptyH\000\032\013\n\005Empty:\002\030\001:\002" - "\030\001B\013\n\tenum_kind\032\347\014\n\007Literal\022\021\n\007boolean\030\001" - " \001(\010H\000\022\014\n\002i8\030\002 \001(\005H\000\022\r\n\003i16\030\003 \001(\005H\000\022\r\n\003i" - "32\030\005 \001(\005H\000\022\r\n\003i64\030\007 \001(\003H\000\022\016\n\004fp32\030\n \001(\002H" - "\000\022\016\n\004fp64\030\013 \001(\001H\000\022\020\n\006string\030\014 \001(\tH\000\022\020\n\006b" - "inary\030\r \001(\014H\000\022\023\n\ttimestamp\030\016 \001(\003H\000\022\016\n\004da" - "te\030\020 \001(\005H\000\022\016\n\004time\030\021 \001(\003H\000\022S\n\026interval_y" - "ear_to_month\030\023 \001(\01321.substrait.Expressio" - "n.Literal.IntervalYearToMonthH\000\022S\n\026inter" - "val_day_to_second\030\024 \001(\01321.substrait.Expr" - "ession.Literal.IntervalDayToSecondH\000\022\024\n\n" - "fixed_char\030\025 \001(\tH\000\0229\n\010var_char\030\026 \001(\0132%.s" - "ubstrait.Expression.Literal.VarCharH\000\022\026\n" - "\014fixed_binary\030\027 \001(\014H\000\0228\n\007decimal\030\030 \001(\0132%" - ".substrait.Expression.Literal.DecimalH\000\022" - "6\n\006struct\030\031 \001(\0132$.substrait.Expression.L" - "iteral.StructH\000\0220\n\003map\030\032 \001(\0132!.substrait" - ".Expression.Literal.MapH\000\022\026\n\014timestamp_t" - "z\030\033 \001(\003H\000\022\016\n\004uuid\030\034 \001(\014H\000\022\037\n\004null\030\035 \001(\0132" - "\017.substrait.TypeH\000\0222\n\004list\030\036 \001(\0132\".subst" - "rait.Expression.Literal.ListH\000\022*\n\nempty_" - "list\030\037 \001(\0132\024.substrait.Type.ListH\000\022(\n\tem" - "pty_map\030 \001(\0132\023.substrait.Type.MapH\000\022A\n\014" - "user_defined\030! \001(\0132).substrait.Expressio" - "n.Literal.UserDefinedH\000\022\020\n\010nullable\0302 \001(" - "\010\022 \n\030type_variation_reference\0303 \001(\r\032(\n\007V" - "arChar\022\r\n\005value\030\001 \001(\t\022\016\n\006length\030\002 \001(\r\032:\n" - "\007Decimal\022\r\n\005value\030\001 \001(\014\022\021\n\tprecision\030\002 \001" - "(\005\022\r\n\005scale\030\003 \001(\005\032\253\001\n\003Map\022>\n\nkey_values\030" - "\001 \003(\0132*.substrait.Expression.Literal.Map" - ".KeyValue\032d\n\010KeyValue\022*\n\003key\030\001 \001(\0132\035.sub" - "strait.Expression.Literal\022,\n\005value\030\002 \001(\013" - "2\035.substrait.Expression.Literal\0324\n\023Inter" - "valYearToMonth\022\r\n\005years\030\001 \001(\005\022\016\n\006months\030" - "\002 \001(\005\032J\n\023IntervalDayToSecond\022\014\n\004days\030\001 \001" - "(\005\022\017\n\007seconds\030\002 \001(\005\022\024\n\014microseconds\030\003 \001(" - "\005\0327\n\006Struct\022-\n\006fields\030\001 \003(\0132\035.substrait." - "Expression.Literal\0325\n\004List\022-\n\006values\030\001 \003" - "(\0132\035.substrait.Expression.Literal\032~\n\013Use" - "rDefined\022\026\n\016type_reference\030\001 \001(\r\0222\n\017type" - "_parameters\030\003 \003(\0132\031.substrait.Type.Param" - "eter\022#\n\005value\030\002 \001(\0132\024.google.protobuf.An" - "yB\016\n\014literal_type\032\343\003\n\006Nested\022\020\n\010nullable" - "\030\001 \001(\010\022 \n\030type_variation_reference\030\002 \001(\r" - "\0225\n\006struct\030\003 \001(\0132#.substrait.Expression." - "Nested.StructH\000\0221\n\004list\030\004 \001(\0132!.substrai" - "t.Expression.Nested.ListH\000\022/\n\003map\030\005 \001(\0132" - " .substrait.Expression.Nested.MapH\000\032\232\001\n\003" - "Map\022=\n\nkey_values\030\001 \003(\0132).substrait.Expr" - "ession.Nested.Map.KeyValue\032T\n\010KeyValue\022\"" - "\n\003key\030\001 \001(\0132\025.substrait.Expression\022$\n\005va" - "lue\030\002 \001(\0132\025.substrait.Expression\032/\n\006Stru" - "ct\022%\n\006fields\030\001 \003(\0132\025.substrait.Expressio" - "n\032-\n\004List\022%\n\006values\030\001 \003(\0132\025.substrait.Ex" - "pressionB\r\n\013nested_type\032\327\001\n\016ScalarFuncti" - "on\022\032\n\022function_reference\030\001 \001(\r\022.\n\targume" - "nts\030\004 \003(\0132\033.substrait.FunctionArgument\022*" - "\n\007options\030\005 \003(\0132\031.substrait.FunctionOpti" - "on\022$\n\013output_type\030\003 \001(\0132\017.substrait.Type" - "\022\'\n\004args\030\002 \003(\0132\025.substrait.ExpressionB\002\030" - "\001\032\263\007\n\016WindowFunction\022\032\n\022function_referen" - "ce\030\001 \001(\r\022.\n\targuments\030\t \003(\0132\033.substrait." - "FunctionArgument\022*\n\007options\030\013 \003(\0132\031.subs" - "trait.FunctionOption\022$\n\013output_type\030\007 \001(" - "\0132\017.substrait.Type\022*\n\005phase\030\006 \001(\0162\033.subs" - "trait.AggregationPhase\022#\n\005sorts\030\003 \003(\0132\024." - "substrait.SortField\022F\n\ninvocation\030\n \001(\0162" - "2.substrait.AggregateFunction.Aggregatio" - "nInvocation\022)\n\npartitions\030\002 \003(\0132\025.substr" - "ait.Expression\022\?\n\013lower_bound\030\005 \001(\0132*.su" - "bstrait.Expression.WindowFunction.Bound\022" - "\?\n\013upper_bound\030\004 \001(\0132*.substrait.Express" - "ion.WindowFunction.Bound\022\'\n\004args\030\010 \003(\0132\025" - ".substrait.ExpressionB\002\030\001\032\223\003\n\005Bound\022I\n\tp" - "receding\030\001 \001(\01324.substrait.Expression.Wi" - "ndowFunction.Bound.PrecedingH\000\022I\n\tfollow" - "ing\030\002 \001(\01324.substrait.Expression.WindowF" - "unction.Bound.FollowingH\000\022L\n\013current_row" - "\030\003 \001(\01325.substrait.Expression.WindowFunc" - "tion.Bound.CurrentRowH\000\022I\n\tunbounded\030\004 \001" - "(\01324.substrait.Expression.WindowFunction" - ".Bound.UnboundedH\000\032\033\n\tPreceding\022\016\n\006offse" - "t\030\001 \001(\003\032\033\n\tFollowing\022\016\n\006offset\030\001 \001(\003\032\014\n\n" - "CurrentRow\032\013\n\tUnboundedB\006\n\004kind\032\265\001\n\006IfTh" - "en\0222\n\003ifs\030\001 \003(\0132%.substrait.Expression.I" - "fThen.IfClause\022#\n\004else\030\002 \001(\0132\025.substrait" - ".Expression\032R\n\010IfClause\022!\n\002if\030\001 \001(\0132\025.su" - "bstrait.Expression\022#\n\004then\030\002 \001(\0132\025.subst" - "rait.Expression\032\216\002\n\004Cast\022\035\n\004type\030\001 \001(\0132\017" - ".substrait.Type\022$\n\005input\030\002 \001(\0132\025.substra" - "it.Expression\022D\n\020failure_behavior\030\003 \001(\0162" - "*.substrait.Expression.Cast.FailureBehav" - "ior\"{\n\017FailureBehavior\022 \n\034FAILURE_BEHAVI" - "OR_UNSPECIFIED\020\000\022 \n\034FAILURE_BEHAVIOR_RET" - "URN_NULL\020\001\022$\n FAILURE_BEHAVIOR_THROW_EXC" - "EPTION\020\002\032\365\001\n\020SwitchExpression\022$\n\005match\030\003" - " \001(\0132\025.substrait.Expression\022;\n\003ifs\030\001 \003(\013" - "2..substrait.Expression.SwitchExpression" - ".IfValue\022#\n\004else\030\002 \001(\0132\025.substrait.Expre" - "ssion\032Y\n\007IfValue\022)\n\002if\030\001 \001(\0132\035.substrait" - ".Expression.Literal\022#\n\004then\030\002 \001(\0132\025.subs" - "trait.Expression\032^\n\016SingularOrList\022$\n\005va" - "lue\030\001 \001(\0132\025.substrait.Expression\022&\n\007opti" - "ons\030\002 \003(\0132\025.substrait.Expression\032\237\001\n\013Mul" - "tiOrList\022$\n\005value\030\001 \003(\0132\025.substrait.Expr" - "ession\0229\n\007options\030\002 \003(\0132(.substrait.Expr" - "ession.MultiOrList.Record\032/\n\006Record\022%\n\006f" - "ields\030\001 \003(\0132\025.substrait.Expression\032\243\003\n\020E" - "mbeddedFunction\022(\n\targuments\030\001 \003(\0132\025.sub" - "strait.Expression\022$\n\013output_type\030\002 \001(\0132\017" - ".substrait.Type\022]\n\026python_pickle_functio" - "n\030\003 \001(\0132;.substrait.Expression.EmbeddedF" - "unction.PythonPickleFunctionH\000\022[\n\025web_as" - "sembly_function\030\004 \001(\0132:.substrait.Expres" - "sion.EmbeddedFunction.WebAssemblyFunctio" - "nH\000\032>\n\024PythonPickleFunction\022\020\n\010function\030" - "\001 \001(\014\022\024\n\014prerequisite\030\002 \003(\t\032;\n\023WebAssemb" - "lyFunction\022\016\n\006script\030\001 \001(\014\022\024\n\014prerequisi" - "te\030\002 \003(\tB\006\n\004kind\032\232\004\n\020ReferenceSegment\022@\n" - "\007map_key\030\001 \001(\0132-.substrait.Expression.Re" - "ferenceSegment.MapKeyH\000\022J\n\014struct_field\030" - "\002 \001(\01322.substrait.Expression.ReferenceSe" - "gment.StructFieldH\000\022J\n\014list_element\030\003 \001(" - "\01322.substrait.Expression.ReferenceSegmen" - "t.ListElementH\000\032o\n\006MapKey\022.\n\007map_key\030\001 \001" - "(\0132\035.substrait.Expression.Literal\0225\n\005chi" - "ld\030\002 \001(\0132&.substrait.Expression.Referenc" - "eSegment\032S\n\013StructField\022\r\n\005field\030\001 \001(\005\0225" - "\n\005child\030\002 \001(\0132&.substrait.Expression.Ref" - "erenceSegment\032T\n\013ListElement\022\016\n\006offset\030\001" - " \001(\005\0225\n\005child\030\002 \001(\0132&.substrait.Expressi" - "on.ReferenceSegmentB\020\n\016reference_type\032\360\t" - "\n\016MaskExpression\022A\n\006select\030\001 \001(\01321.subst" - "rait.Expression.MaskExpression.StructSel" - "ect\022 \n\030maintain_singular_struct\030\002 \001(\010\032\325\001" - "\n\006Select\022C\n\006struct\030\001 \001(\01321.substrait.Exp" - "ression.MaskExpression.StructSelectH\000\022\?\n" - "\004list\030\002 \001(\0132/.substrait.Expression.MaskE" - "xpression.ListSelectH\000\022=\n\003map\030\003 \001(\0132..su" - "bstrait.Expression.MaskExpression.MapSel" - "ectH\000B\006\n\004type\032U\n\014StructSelect\022E\n\014struct_" - "items\030\001 \003(\0132/.substrait.Expression.MaskE" - "xpression.StructItem\032W\n\nStructItem\022\r\n\005fi" - "eld\030\001 \001(\005\022:\n\005child\030\002 \001(\0132+.substrait.Exp" - "ression.MaskExpression.Select\032\264\003\n\nListSe" - "lect\022Q\n\tselection\030\001 \003(\0132>.substrait.Expr" + "edExtension\"\277\001\n\tFilterRel\022$\n\006common\030\001 \001(" + "\0132\024.substrait.RelCommon\022\035\n\005input\030\002 \001(\0132\016" + ".substrait.Rel\022(\n\tcondition\030\003 \001(\0132\025.subs" + "trait.Expression\022C\n\022advanced_extension\030\n" + " \001(\0132\'.substrait.extensions.AdvancedExte" + "nsion\"\203\003\n\006SetRel\022$\n\006common\030\001 \001(\0132\024.subst" + "rait.RelCommon\022\036\n\006inputs\030\002 \003(\0132\016.substra" + "it.Rel\022#\n\002op\030\003 \001(\0162\027.substrait.SetRel.Se" + "tOp\022C\n\022advanced_extension\030\n \001(\0132\'.substr" + "ait.extensions.AdvancedExtension\"\310\001\n\005Set" + "Op\022\026\n\022SET_OP_UNSPECIFIED\020\000\022\030\n\024SET_OP_MIN" + "US_PRIMARY\020\001\022\031\n\025SET_OP_MINUS_MULTISET\020\002\022" + "\037\n\033SET_OP_INTERSECTION_PRIMARY\020\003\022 \n\034SET_" + "OP_INTERSECTION_MULTISET\020\004\022\031\n\025SET_OP_UNI" + "ON_DISTINCT\020\005\022\024\n\020SET_OP_UNION_ALL\020\006\"\177\n\022E" + "xtensionSingleRel\022$\n\006common\030\001 \001(\0132\024.subs" + "trait.RelCommon\022\035\n\005input\030\002 \001(\0132\016.substra" + "it.Rel\022$\n\006detail\030\003 \001(\0132\024.google.protobuf" + ".Any\"^\n\020ExtensionLeafRel\022$\n\006common\030\001 \001(\013" + "2\024.substrait.RelCommon\022$\n\006detail\030\002 \001(\0132\024" + ".google.protobuf.Any\"\177\n\021ExtensionMultiRe" + "l\022$\n\006common\030\001 \001(\0132\024.substrait.RelCommon\022" + "\036\n\006inputs\030\002 \003(\0132\016.substrait.Rel\022$\n\006detai" + "l\030\003 \001(\0132\024.google.protobuf.Any\"\303\007\n\013Exchan" + "geRel\022$\n\006common\030\001 \001(\0132\024.substrait.RelCom" + "mon\022\035\n\005input\030\002 \001(\0132\016.substrait.Rel\022\027\n\017pa" + "rtition_count\030\003 \001(\005\0226\n\007targets\030\004 \003(\0132%.s" + "ubstrait.ExchangeRel.ExchangeTarget\022A\n\021s" + "catter_by_fields\030\005 \001(\0132$.substrait.Excha" + "ngeRel.ScatterFieldsH\000\022F\n\rsingle_target\030" + "\006 \001(\0132-.substrait.ExchangeRel.SingleBuck" + "etExpressionH\000\022D\n\014multi_target\030\007 \001(\0132,.s" + "ubstrait.ExchangeRel.MultiBucketExpressi" + "onH\000\0228\n\013round_robin\030\010 \001(\0132!.substrait.Ex" + "changeRel.RoundRobinH\000\0225\n\tbroadcast\030\t \001(" + "\0132 .substrait.ExchangeRel.BroadcastH\000\022C\n" + "\022advanced_extension\030\n \001(\0132\'.substrait.ex" + "tensions.AdvancedExtension\032E\n\rScatterFie" + "lds\0224\n\006fields\030\001 \003(\0132$.substrait.Expressi" + "on.FieldReference\032C\n\026SingleBucketExpress" + "ion\022)\n\nexpression\030\001 \001(\0132\025.substrait.Expr" + "ession\032`\n\025MultiBucketExpression\022)\n\nexpre" + "ssion\030\001 \001(\0132\025.substrait.Expression\022\034\n\024co" + "nstrained_to_count\030\002 \001(\010\032\013\n\tBroadcast\032\033\n" + "\nRoundRobin\022\r\n\005exact\030\001 \001(\010\032n\n\016ExchangeTa" + "rget\022\024\n\014partition_id\030\001 \003(\005\022\r\n\003uri\030\002 \001(\tH" + "\000\022(\n\010extended\030\003 \001(\0132\024.google.protobuf.An" + "yH\000B\r\n\013target_typeB\017\n\rexchange_kind\"\320\002\n\t" + "ExpandRel\022$\n\006common\030\001 \001(\0132\024.substrait.Re" + "lCommon\022\035\n\005input\030\002 \001(\0132\016.substrait.Rel\0220" + "\n\006fields\030\004 \003(\0132 .substrait.ExpandRel.Exp" + "andField\032\216\001\n\013ExpandField\022>\n\017switching_fi" + "eld\030\002 \001(\0132#.substrait.ExpandRel.Switchin" + "gFieldH\000\0221\n\020consistent_field\030\003 \001(\0132\025.sub" + "strait.ExpressionH\000B\014\n\nfield_type\032;\n\016Swi" + "tchingField\022)\n\nduplicates\030\001 \003(\0132\025.substr" + "ait.Expression\"7\n\007RelRoot\022\035\n\005input\030\001 \001(\013" + "2\016.substrait.Rel\022\r\n\005names\030\002 \003(\t\"\201\006\n\003Rel\022" + "\"\n\004read\030\001 \001(\0132\022.substrait.ReadRelH\000\022&\n\006f" + "ilter\030\002 \001(\0132\024.substrait.FilterRelH\000\022$\n\005f" + "etch\030\003 \001(\0132\023.substrait.FetchRelH\000\022,\n\tagg" + "regate\030\004 \001(\0132\027.substrait.AggregateRelH\000\022" + "\"\n\004sort\030\005 \001(\0132\022.substrait.SortRelH\000\022\"\n\004j" + "oin\030\006 \001(\0132\022.substrait.JoinRelH\000\022(\n\007proje" + "ct\030\007 \001(\0132\025.substrait.ProjectRelH\000\022 \n\003set" + "\030\010 \001(\0132\021.substrait.SetRelH\000\0229\n\020extension" + "_single\030\t \001(\0132\035.substrait.ExtensionSingl" + "eRelH\000\0227\n\017extension_multi\030\n \001(\0132\034.substr" + "ait.ExtensionMultiRelH\000\0225\n\016extension_lea" + "f\030\013 \001(\0132\033.substrait.ExtensionLeafRelH\000\022$" + "\n\005cross\030\014 \001(\0132\023.substrait.CrossRelH\000\022+\n\t" + "hash_join\030\r \001(\0132\026.substrait.HashJoinRelH" + "\000\022-\n\nmerge_join\030\016 \001(\0132\027.substrait.MergeJ" + "oinRelH\000\0229\n\006window\030\021 \001(\0132\'.substrait.Con" + "sistentPartitionWindowRelH\000\022*\n\010exchange\030" + "\017 \001(\0132\026.substrait.ExchangeRelH\000\022&\n\006expan" + "d\030\020 \001(\0132\024.substrait.ExpandRelH\000B\n\n\010rel_t" + "ype\"f\n\020NamedObjectWrite\022\r\n\005names\030\001 \003(\t\022C" + "\n\022advanced_extension\030\n \001(\0132\'.substrait.e" + "xtensions.AdvancedExtension\"7\n\017Extension" + "Object\022$\n\006detail\030\001 \001(\0132\024.google.protobuf" + ".Any\"\316\004\n\006DdlRel\0223\n\014named_object\030\001 \001(\0132\033." + "substrait.NamedObjectWriteH\000\0226\n\020extensio" + "n_object\030\002 \001(\0132\032.substrait.ExtensionObje" + "ctH\000\022,\n\014table_schema\030\003 \001(\0132\026.substrait.N" + "amedStruct\022<\n\016table_defaults\030\004 \001(\0132$.sub" + "strait.Expression.Literal.Struct\022+\n\006obje" + "ct\030\005 \001(\0162\033.substrait.DdlRel.DdlObject\022#\n" + "\002op\030\006 \001(\0162\027.substrait.DdlRel.DdlOp\022\'\n\017vi" + "ew_definition\030\007 \001(\0132\016.substrait.Rel\"R\n\tD" + "dlObject\022\032\n\026DDL_OBJECT_UNSPECIFIED\020\000\022\024\n\020" + "DDL_OBJECT_TABLE\020\001\022\023\n\017DDL_OBJECT_VIEW\020\002\"" + "\215\001\n\005DdlOp\022\026\n\022DDL_OP_UNSPECIFIED\020\000\022\021\n\rDDL" + "_OP_CREATE\020\001\022\034\n\030DDL_OP_CREATE_OR_REPLACE" + "\020\002\022\020\n\014DDL_OP_ALTER\020\003\022\017\n\013DDL_OP_DROP\020\004\022\030\n" + "\024DDL_OP_DROP_IF_EXIST\020\005B\014\n\nwrite_type\"\207\004" + "\n\010WriteRel\0222\n\013named_table\030\001 \001(\0132\033.substr" + "ait.NamedObjectWriteH\000\0225\n\017extension_tabl" + "e\030\002 \001(\0132\032.substrait.ExtensionObjectH\000\022,\n" + "\014table_schema\030\003 \001(\0132\026.substrait.NamedStr" + "uct\022\'\n\002op\030\004 \001(\0162\033.substrait.WriteRel.Wri" + "teOp\022\035\n\005input\030\005 \001(\0132\016.substrait.Rel\022.\n\006o" + "utput\030\006 \001(\0162\036.substrait.WriteRel.OutputM" + "ode\"u\n\007WriteOp\022\030\n\024WRITE_OP_UNSPECIFIED\020\000" + "\022\023\n\017WRITE_OP_INSERT\020\001\022\023\n\017WRITE_OP_DELETE" + "\020\002\022\023\n\017WRITE_OP_UPDATE\020\003\022\021\n\rWRITE_OP_CTAS" + "\020\004\"e\n\nOutputMode\022\033\n\027OUTPUT_MODE_UNSPECIF" + "IED\020\000\022\031\n\025OUTPUT_MODE_NO_OUTPUT\020\001\022\037\n\033OUTP" + "UT_MODE_MODIFIED_TUPLES\020\002B\014\n\nwrite_type\"" + "\351\004\n\013HashJoinRel\022$\n\006common\030\001 \001(\0132\024.substr" + "ait.RelCommon\022\034\n\004left\030\002 \001(\0132\016.substrait." + "Rel\022\035\n\005right\030\003 \001(\0132\016.substrait.Rel\0227\n\tle" + "ft_keys\030\004 \003(\0132$.substrait.Expression.Fie" + "ldReference\0228\n\nright_keys\030\005 \003(\0132$.substr" + "ait.Expression.FieldReference\022/\n\020post_jo" + "in_filter\030\006 \001(\0132\025.substrait.Expression\022-" + "\n\004type\030\007 \001(\0162\037.substrait.HashJoinRel.Joi" + "nType\022C\n\022advanced_extension\030\n \001(\0132\'.subs" + "trait.extensions.AdvancedExtension\"\336\001\n\010J" + "oinType\022\031\n\025JOIN_TYPE_UNSPECIFIED\020\000\022\023\n\017JO" + "IN_TYPE_INNER\020\001\022\023\n\017JOIN_TYPE_OUTER\020\002\022\022\n\016" + "JOIN_TYPE_LEFT\020\003\022\023\n\017JOIN_TYPE_RIGHT\020\004\022\027\n" + "\023JOIN_TYPE_LEFT_SEMI\020\005\022\030\n\024JOIN_TYPE_RIGH" + "T_SEMI\020\006\022\027\n\023JOIN_TYPE_LEFT_ANTI\020\007\022\030\n\024JOI" + "N_TYPE_RIGHT_ANTI\020\010\"\353\004\n\014MergeJoinRel\022$\n\006" + "common\030\001 \001(\0132\024.substrait.RelCommon\022\034\n\004le" + "ft\030\002 \001(\0132\016.substrait.Rel\022\035\n\005right\030\003 \001(\0132" + "\016.substrait.Rel\0227\n\tleft_keys\030\004 \003(\0132$.sub" + "strait.Expression.FieldReference\0228\n\nrigh" + "t_keys\030\005 \003(\0132$.substrait.Expression.Fiel" + "dReference\022/\n\020post_join_filter\030\006 \001(\0132\025.s" + "ubstrait.Expression\022.\n\004type\030\007 \001(\0162 .subs" + "trait.MergeJoinRel.JoinType\022C\n\022advanced_" + "extension\030\n \001(\0132\'.substrait.extensions.A" + "dvancedExtension\"\336\001\n\010JoinType\022\031\n\025JOIN_TY" + "PE_UNSPECIFIED\020\000\022\023\n\017JOIN_TYPE_INNER\020\001\022\023\n" + "\017JOIN_TYPE_OUTER\020\002\022\022\n\016JOIN_TYPE_LEFT\020\003\022\023" + "\n\017JOIN_TYPE_RIGHT\020\004\022\027\n\023JOIN_TYPE_LEFT_SE" + "MI\020\005\022\030\n\024JOIN_TYPE_RIGHT_SEMI\020\006\022\027\n\023JOIN_T" + "YPE_LEFT_ANTI\020\007\022\030\n\024JOIN_TYPE_RIGHT_ANTI\020" + "\010\"w\n\020FunctionArgument\022\016\n\004enum\030\001 \001(\tH\000\022\037\n" + "\004type\030\002 \001(\0132\017.substrait.TypeH\000\022&\n\005value\030" + "\003 \001(\0132\025.substrait.ExpressionH\000B\n\n\010arg_ty" + "pe\"2\n\016FunctionOption\022\014\n\004name\030\001 \001(\t\022\022\n\npr" + "eference\030\002 \003(\t\"\356F\n\nExpression\0220\n\007literal" + "\030\001 \001(\0132\035.substrait.Expression.LiteralH\000\022" + "9\n\tselection\030\002 \001(\0132$.substrait.Expressio" + "n.FieldReferenceH\000\022\?\n\017scalar_function\030\003 " + "\001(\0132$.substrait.Expression.ScalarFunctio" + "nH\000\022\?\n\017window_function\030\005 \001(\0132$.substrait" + ".Expression.WindowFunctionH\000\022/\n\007if_then\030" + "\006 \001(\0132\034.substrait.Expression.IfThenH\000\022C\n" + "\021switch_expression\030\007 \001(\0132&.substrait.Exp" + "ression.SwitchExpressionH\000\022@\n\020singular_o" + "r_list\030\010 \001(\0132$.substrait.Expression.Sing" + "ularOrListH\000\022:\n\rmulti_or_list\030\t \001(\0132!.su" + "bstrait.Expression.MultiOrListH\000\022*\n\004cast" + "\030\013 \001(\0132\032.substrait.Expression.CastH\000\0222\n\010" + "subquery\030\014 \001(\0132\036.substrait.Expression.Su" + "bqueryH\000\022.\n\006nested\030\r \001(\0132\034.substrait.Exp" + "ression.NestedH\000\022.\n\004enum\030\n \001(\0132\032.substra" + "it.Expression.EnumB\002\030\001H\000\032r\n\004Enum\022\023\n\tspec" + "ified\030\001 \001(\tH\000\0227\n\013unspecified\030\002 \001(\0132 .sub" + "strait.Expression.Enum.EmptyH\000\032\013\n\005Empty:" + "\002\030\001:\002\030\001B\013\n\tenum_kind\032\347\014\n\007Literal\022\021\n\007bool" + "ean\030\001 \001(\010H\000\022\014\n\002i8\030\002 \001(\005H\000\022\r\n\003i16\030\003 \001(\005H\000" + "\022\r\n\003i32\030\005 \001(\005H\000\022\r\n\003i64\030\007 \001(\003H\000\022\016\n\004fp32\030\n" + " \001(\002H\000\022\016\n\004fp64\030\013 \001(\001H\000\022\020\n\006string\030\014 \001(\tH\000" + "\022\020\n\006binary\030\r \001(\014H\000\022\023\n\ttimestamp\030\016 \001(\003H\000\022" + "\016\n\004date\030\020 \001(\005H\000\022\016\n\004time\030\021 \001(\003H\000\022S\n\026inter" + "val_year_to_month\030\023 \001(\01321.substrait.Expr" + "ession.Literal.IntervalYearToMonthH\000\022S\n\026" + "interval_day_to_second\030\024 \001(\01321.substrait" + ".Expression.Literal.IntervalDayToSecondH" + "\000\022\024\n\nfixed_char\030\025 \001(\tH\000\0229\n\010var_char\030\026 \001(" + "\0132%.substrait.Expression.Literal.VarChar" + "H\000\022\026\n\014fixed_binary\030\027 \001(\014H\000\0228\n\007decimal\030\030 " + "\001(\0132%.substrait.Expression.Literal.Decim" + "alH\000\0226\n\006struct\030\031 \001(\0132$.substrait.Express" + "ion.Literal.StructH\000\0220\n\003map\030\032 \001(\0132!.subs" + "trait.Expression.Literal.MapH\000\022\026\n\014timest" + "amp_tz\030\033 \001(\003H\000\022\016\n\004uuid\030\034 \001(\014H\000\022\037\n\004null\030\035" + " \001(\0132\017.substrait.TypeH\000\0222\n\004list\030\036 \001(\0132\"." + "substrait.Expression.Literal.ListH\000\022*\n\ne" + "mpty_list\030\037 \001(\0132\024.substrait.Type.ListH\000\022" + "(\n\tempty_map\030 \001(\0132\023.substrait.Type.MapH" + "\000\022A\n\014user_defined\030! \001(\0132).substrait.Expr" + "ession.Literal.UserDefinedH\000\022\020\n\010nullable" + "\0302 \001(\010\022 \n\030type_variation_reference\0303 \001(\r" + "\032(\n\007VarChar\022\r\n\005value\030\001 \001(\t\022\016\n\006length\030\002 \001" + "(\r\032:\n\007Decimal\022\r\n\005value\030\001 \001(\014\022\021\n\tprecisio" + "n\030\002 \001(\005\022\r\n\005scale\030\003 \001(\005\032\253\001\n\003Map\022>\n\nkey_va" + "lues\030\001 \003(\0132*.substrait.Expression.Litera" + "l.Map.KeyValue\032d\n\010KeyValue\022*\n\003key\030\001 \001(\0132" + "\035.substrait.Expression.Literal\022,\n\005value\030" + "\002 \001(\0132\035.substrait.Expression.Literal\0324\n\023" + "IntervalYearToMonth\022\r\n\005years\030\001 \001(\005\022\016\n\006mo" + "nths\030\002 \001(\005\032J\n\023IntervalDayToSecond\022\014\n\004day" + "s\030\001 \001(\005\022\017\n\007seconds\030\002 \001(\005\022\024\n\014microseconds" + "\030\003 \001(\005\0327\n\006Struct\022-\n\006fields\030\001 \003(\0132\035.subst" + "rait.Expression.Literal\0325\n\004List\022-\n\006value" + "s\030\001 \003(\0132\035.substrait.Expression.Literal\032~" + "\n\013UserDefined\022\026\n\016type_reference\030\001 \001(\r\0222\n" + "\017type_parameters\030\003 \003(\0132\031.substrait.Type." + "Parameter\022#\n\005value\030\002 \001(\0132\024.google.protob" + "uf.AnyB\016\n\014literal_type\032\343\003\n\006Nested\022\020\n\010nul" + "lable\030\001 \001(\010\022 \n\030type_variation_reference\030" + "\002 \001(\r\0225\n\006struct\030\003 \001(\0132#.substrait.Expres" + "sion.Nested.StructH\000\0221\n\004list\030\004 \001(\0132!.sub" + "strait.Expression.Nested.ListH\000\022/\n\003map\030\005" + " \001(\0132 .substrait.Expression.Nested.MapH\000" + "\032\232\001\n\003Map\022=\n\nkey_values\030\001 \003(\0132).substrait" + ".Expression.Nested.Map.KeyValue\032T\n\010KeyVa" + "lue\022\"\n\003key\030\001 \001(\0132\025.substrait.Expression\022" + "$\n\005value\030\002 \001(\0132\025.substrait.Expression\032/\n" + "\006Struct\022%\n\006fields\030\001 \003(\0132\025.substrait.Expr" + "ession\032-\n\004List\022%\n\006values\030\001 \003(\0132\025.substra" + "it.ExpressionB\r\n\013nested_type\032\327\001\n\016ScalarF" + "unction\022\032\n\022function_reference\030\001 \001(\r\022.\n\ta" + "rguments\030\004 \003(\0132\033.substrait.FunctionArgum" + "ent\022*\n\007options\030\005 \003(\0132\031.substrait.Functio" + "nOption\022$\n\013output_type\030\003 \001(\0132\017.substrait" + ".Type\022\'\n\004args\030\002 \003(\0132\025.substrait.Expressi" + "onB\002\030\001\032\321\010\n\016WindowFunction\022\032\n\022function_re" + "ference\030\001 \001(\r\022.\n\targuments\030\t \003(\0132\033.subst" + "rait.FunctionArgument\022*\n\007options\030\013 \003(\0132\031" + ".substrait.FunctionOption\022$\n\013output_type" + "\030\007 \001(\0132\017.substrait.Type\022*\n\005phase\030\006 \001(\0162\033" + ".substrait.AggregationPhase\022#\n\005sorts\030\003 \003" + "(\0132\024.substrait.SortField\022F\n\ninvocation\030\n" + " \001(\01622.substrait.AggregateFunction.Aggre" + "gationInvocation\022)\n\npartitions\030\002 \003(\0132\025.s" + "ubstrait.Expression\022D\n\013bounds_type\030\014 \001(\016" + "2/.substrait.Expression.WindowFunction.B" + "oundsType\022\?\n\013lower_bound\030\005 \001(\0132*.substra" + "it.Expression.WindowFunction.Bound\022\?\n\013up" + "per_bound\030\004 \001(\0132*.substrait.Expression.W" + "indowFunction.Bound\022\'\n\004args\030\010 \003(\0132\025.subs" + "trait.ExpressionB\002\030\001\032\223\003\n\005Bound\022I\n\tpreced" + "ing\030\001 \001(\01324.substrait.Expression.WindowF" + "unction.Bound.PrecedingH\000\022I\n\tfollowing\030\002" + " \001(\01324.substrait.Expression.WindowFuncti" + "on.Bound.FollowingH\000\022L\n\013current_row\030\003 \001(" + "\01325.substrait.Expression.WindowFunction." + "Bound.CurrentRowH\000\022I\n\tunbounded\030\004 \001(\01324." + "substrait.Expression.WindowFunction.Boun" + "d.UnboundedH\000\032\033\n\tPreceding\022\016\n\006offset\030\001 \001" + "(\003\032\033\n\tFollowing\022\016\n\006offset\030\001 \001(\003\032\014\n\nCurre" + "ntRow\032\013\n\tUnboundedB\006\n\004kind\"V\n\nBoundsType" + "\022\033\n\027BOUNDS_TYPE_UNSPECIFIED\020\000\022\024\n\020BOUNDS_" + "TYPE_ROWS\020\001\022\025\n\021BOUNDS_TYPE_RANGE\020\002\032\265\001\n\006I" + "fThen\0222\n\003ifs\030\001 \003(\0132%.substrait.Expressio" + "n.IfThen.IfClause\022#\n\004else\030\002 \001(\0132\025.substr" + "ait.Expression\032R\n\010IfClause\022!\n\002if\030\001 \001(\0132\025" + ".substrait.Expression\022#\n\004then\030\002 \001(\0132\025.su" + "bstrait.Expression\032\216\002\n\004Cast\022\035\n\004type\030\001 \001(" + "\0132\017.substrait.Type\022$\n\005input\030\002 \001(\0132\025.subs" + "trait.Expression\022D\n\020failure_behavior\030\003 \001" + "(\0162*.substrait.Expression.Cast.FailureBe" + "havior\"{\n\017FailureBehavior\022 \n\034FAILURE_BEH" + "AVIOR_UNSPECIFIED\020\000\022 \n\034FAILURE_BEHAVIOR_" + "RETURN_NULL\020\001\022$\n FAILURE_BEHAVIOR_THROW_" + "EXCEPTION\020\002\032\365\001\n\020SwitchExpression\022$\n\005matc" + "h\030\003 \001(\0132\025.substrait.Expression\022;\n\003ifs\030\001 " + "\003(\0132..substrait.Expression.SwitchExpress" + "ion.IfValue\022#\n\004else\030\002 \001(\0132\025.substrait.Ex" + "pression\032Y\n\007IfValue\022)\n\002if\030\001 \001(\0132\035.substr" + "ait.Expression.Literal\022#\n\004then\030\002 \001(\0132\025.s" + "ubstrait.Expression\032^\n\016SingularOrList\022$\n" + "\005value\030\001 \001(\0132\025.substrait.Expression\022&\n\007o" + "ptions\030\002 \003(\0132\025.substrait.Expression\032\237\001\n\013" + "MultiOrList\022$\n\005value\030\001 \003(\0132\025.substrait.E" + "xpression\0229\n\007options\030\002 \003(\0132(.substrait.E" + "xpression.MultiOrList.Record\032/\n\006Record\022%" + "\n\006fields\030\001 \003(\0132\025.substrait.Expression\032\243\003" + "\n\020EmbeddedFunction\022(\n\targuments\030\001 \003(\0132\025." + "substrait.Expression\022$\n\013output_type\030\002 \001(" + "\0132\017.substrait.Type\022]\n\026python_pickle_func" + "tion\030\003 \001(\0132;.substrait.Expression.Embedd" + "edFunction.PythonPickleFunctionH\000\022[\n\025web" + "_assembly_function\030\004 \001(\0132:.substrait.Exp" + "ression.EmbeddedFunction.WebAssemblyFunc" + "tionH\000\032>\n\024PythonPickleFunction\022\020\n\010functi" + "on\030\001 \001(\014\022\024\n\014prerequisite\030\002 \003(\t\032;\n\023WebAss" + "emblyFunction\022\016\n\006script\030\001 \001(\014\022\024\n\014prerequ" + "isite\030\002 \003(\tB\006\n\004kind\032\232\004\n\020ReferenceSegment" + "\022@\n\007map_key\030\001 \001(\0132-.substrait.Expression" + ".ReferenceSegment.MapKeyH\000\022J\n\014struct_fie" + "ld\030\002 \001(\01322.substrait.Expression.Referenc" + "eSegment.StructFieldH\000\022J\n\014list_element\030\003" + " \001(\01322.substrait.Expression.ReferenceSeg" + "ment.ListElementH\000\032o\n\006MapKey\022.\n\007map_key\030" + "\001 \001(\0132\035.substrait.Expression.Literal\0225\n\005" + "child\030\002 \001(\0132&.substrait.Expression.Refer" + "enceSegment\032S\n\013StructField\022\r\n\005field\030\001 \001(" + "\005\0225\n\005child\030\002 \001(\0132&.substrait.Expression." + "ReferenceSegment\032T\n\013ListElement\022\016\n\006offse" + "t\030\001 \001(\005\0225\n\005child\030\002 \001(\0132&.substrait.Expre" + "ssion.ReferenceSegmentB\020\n\016reference_type" + "\032\360\t\n\016MaskExpression\022A\n\006select\030\001 \001(\01321.su" + "bstrait.Expression.MaskExpression.Struct" + "Select\022 \n\030maintain_singular_struct\030\002 \001(\010" + "\032\325\001\n\006Select\022C\n\006struct\030\001 \001(\01321.substrait." + "Expression.MaskExpression.StructSelectH\000" + "\022\?\n\004list\030\002 \001(\0132/.substrait.Expression.Ma" + "skExpression.ListSelectH\000\022=\n\003map\030\003 \001(\0132." + ".substrait.Expression.MaskExpression.Map" + "SelectH\000B\006\n\004type\032U\n\014StructSelect\022E\n\014stru" + "ct_items\030\001 \003(\0132/.substrait.Expression.Ma" + "skExpression.StructItem\032W\n\nStructItem\022\r\n" + "\005field\030\001 \001(\005\022:\n\005child\030\002 \001(\0132+.substrait." + "Expression.MaskExpression.Select\032\264\003\n\nLis" + "tSelect\022Q\n\tselection\030\001 \003(\0132>.substrait.E" + "xpression.MaskExpression.ListSelect.List" + "SelectItem\022:\n\005child\030\002 \001(\0132+.substrait.Ex" + "pression.MaskExpression.Select\032\226\002\n\016ListS" + "electItem\022Z\n\004item\030\001 \001(\0132J.substrait.Expr" "ession.MaskExpression.ListSelect.ListSel" - "ectItem\022:\n\005child\030\002 \001(\0132+.substrait.Expre" - "ssion.MaskExpression.Select\032\226\002\n\016ListSele" - "ctItem\022Z\n\004item\030\001 \001(\0132J.substrait.Express" - "ion.MaskExpression.ListSelect.ListSelect" - "Item.ListElementH\000\022Y\n\005slice\030\002 \001(\0132H.subs" - "trait.Expression.MaskExpression.ListSele" - "ct.ListSelectItem.ListSliceH\000\032\034\n\013ListEle" - "ment\022\r\n\005field\030\001 \001(\005\032\'\n\tListSlice\022\r\n\005star" - "t\030\001 \001(\005\022\013\n\003end\030\002 \001(\005B\006\n\004type\032\271\002\n\tMapSele" - "ct\022D\n\003key\030\001 \001(\01325.substrait.Expression.M" - "askExpression.MapSelect.MapKeyH\000\022U\n\nexpr" - "ession\030\002 \001(\0132\?.substrait.Expression.Mask" - "Expression.MapSelect.MapKeyExpressionH\000\022" - ":\n\005child\030\003 \001(\0132+.substrait.Expression.Ma" - "skExpression.Select\032\031\n\006MapKey\022\017\n\007map_key" - "\030\001 \001(\t\032.\n\020MapKeyExpression\022\032\n\022map_key_ex" - "pression\030\001 \001(\tB\010\n\006select\032\266\003\n\016FieldRefere" - "nce\022B\n\020direct_reference\030\001 \001(\0132&.substrai" - "t.Expression.ReferenceSegmentH\000\022@\n\020maske" - "d_reference\030\002 \001(\0132$.substrait.Expression" - ".MaskExpressionH\000\022+\n\nexpression\030\003 \001(\0132\025." - "substrait.ExpressionH\001\022L\n\016root_reference" - "\030\004 \001(\01322.substrait.Expression.FieldRefer" - "ence.RootReferenceH\001\022N\n\017outer_reference\030" - "\005 \001(\01323.substrait.Expression.FieldRefere" - "nce.OuterReferenceH\001\032\017\n\rRootReference\032#\n" - "\016OuterReference\022\021\n\tsteps_out\030\001 \001(\rB\020\n\016re" - "ference_typeB\013\n\troot_type\032\214\t\n\010Subquery\0227" - "\n\006scalar\030\001 \001(\0132%.substrait.Expression.Su" - "bquery.ScalarH\000\022B\n\014in_predicate\030\002 \001(\0132*." - "substrait.Expression.Subquery.InPredicat" - "eH\000\022D\n\rset_predicate\030\003 \001(\0132+.substrait.E" - "xpression.Subquery.SetPredicateH\000\022F\n\016set" - "_comparison\030\004 \001(\0132,.substrait.Expression" - ".Subquery.SetComparisonH\000\032\'\n\006Scalar\022\035\n\005i" - "nput\030\001 \001(\0132\016.substrait.Rel\032W\n\013InPredicat" - "e\022&\n\007needles\030\001 \003(\0132\025.substrait.Expressio" - "n\022 \n\010haystack\030\002 \001(\0132\016.substrait.Rel\032\334\001\n\014" - "SetPredicate\022M\n\014predicate_op\030\001 \001(\01627.sub" - "strait.Expression.Subquery.SetPredicate." - "PredicateOp\022\036\n\006tuples\030\002 \001(\0132\016.substrait." - "Rel\"]\n\013PredicateOp\022\034\n\030PREDICATE_OP_UNSPE" - "CIFIED\020\000\022\027\n\023PREDICATE_OP_EXISTS\020\001\022\027\n\023PRE" - "DICATE_OP_UNIQUE\020\002\032\202\004\n\rSetComparison\022N\n\014" - "reduction_op\030\001 \001(\01628.substrait.Expressio" - "n.Subquery.SetComparison.ReductionOp\022P\n\r" - "comparison_op\030\002 \001(\01629.substrait.Expressi" - "on.Subquery.SetComparison.ComparisonOp\022#" - "\n\004left\030\003 \001(\0132\025.substrait.Expression\022\035\n\005r" - "ight\030\004 \001(\0132\016.substrait.Rel\"\261\001\n\014Compariso" - "nOp\022\035\n\031COMPARISON_OP_UNSPECIFIED\020\000\022\024\n\020CO" - "MPARISON_OP_EQ\020\001\022\024\n\020COMPARISON_OP_NE\020\002\022\024" - "\n\020COMPARISON_OP_LT\020\003\022\024\n\020COMPARISON_OP_GT" - "\020\004\022\024\n\020COMPARISON_OP_LE\020\005\022\024\n\020COMPARISON_O" - "P_GE\020\006\"W\n\013ReductionOp\022\034\n\030REDUCTION_OP_UN" - "SPECIFIED\020\000\022\024\n\020REDUCTION_OP_ANY\020\001\022\024\n\020RED" - "UCTION_OP_ALL\020\002B\017\n\rsubquery_typeB\n\n\010rex_" - "type\"\377\002\n\tSortField\022#\n\004expr\030\001 \001(\0132\025.subst" - "rait.Expression\0227\n\tdirection\030\002 \001(\0162\".sub" - "strait.SortField.SortDirectionH\000\022\'\n\035comp" - "arison_function_reference\030\003 \001(\rH\000\"\335\001\n\rSo" - "rtDirection\022\036\n\032SORT_DIRECTION_UNSPECIFIE" - "D\020\000\022\"\n\036SORT_DIRECTION_ASC_NULLS_FIRST\020\001\022" - "!\n\035SORT_DIRECTION_ASC_NULLS_LAST\020\002\022#\n\037SO" - "RT_DIRECTION_DESC_NULLS_FIRST\020\003\022\"\n\036SORT_" - "DIRECTION_DESC_NULLS_LAST\020\004\022\034\n\030SORT_DIRE" - "CTION_CLUSTERED\020\005B\013\n\tsort_kind\"\243\004\n\021Aggre" - "gateFunction\022\032\n\022function_reference\030\001 \001(\r" - "\022.\n\targuments\030\007 \003(\0132\033.substrait.Function" - "Argument\022*\n\007options\030\010 \003(\0132\031.substrait.Fu" - "nctionOption\022$\n\013output_type\030\005 \001(\0132\017.subs" - "trait.Type\022*\n\005phase\030\004 \001(\0162\033.substrait.Ag" - "gregationPhase\022#\n\005sorts\030\003 \003(\0132\024.substrai" - "t.SortField\022F\n\ninvocation\030\006 \001(\01622.substr" - "ait.AggregateFunction.AggregationInvocat" - "ion\022\'\n\004args\030\002 \003(\0132\025.substrait.Expression" - "B\002\030\001\032\'\n\014ReferenceRel\022\027\n\017subtree_ordinal\030" - "\001 \001(\005\"\204\001\n\025AggregationInvocation\022&\n\"AGGRE" - "GATION_INVOCATION_UNSPECIFIED\020\000\022\036\n\032AGGRE" - "GATION_INVOCATION_ALL\020\001\022#\n\037AGGREGATION_I" - "NVOCATION_DISTINCT\020\002*\357\001\n\020AggregationPhas" - "e\022!\n\035AGGREGATION_PHASE_UNSPECIFIED\020\000\022-\n)" - "AGGREGATION_PHASE_INITIAL_TO_INTERMEDIAT" - "E\020\001\0222\n.AGGREGATION_PHASE_INTERMEDIATE_TO" - "_INTERMEDIATE\020\002\022\'\n#AGGREGATION_PHASE_INI" - "TIAL_TO_RESULT\020\003\022,\n(AGGREGATION_PHASE_IN" - "TERMEDIATE_TO_RESULT\020\004BW\n\022io.substrait.p" - "rotoP\001Z*github.com/substrait-io/substrai" - "t-go/proto\252\002\022Substrait.Protobufb\006proto3" + "ectItem.ListElementH\000\022Y\n\005slice\030\002 \001(\0132H.s" + "ubstrait.Expression.MaskExpression.ListS" + "elect.ListSelectItem.ListSliceH\000\032\034\n\013List" + "Element\022\r\n\005field\030\001 \001(\005\032\'\n\tListSlice\022\r\n\005s" + "tart\030\001 \001(\005\022\013\n\003end\030\002 \001(\005B\006\n\004type\032\271\002\n\tMapS" + "elect\022D\n\003key\030\001 \001(\01325.substrait.Expressio" + "n.MaskExpression.MapSelect.MapKeyH\000\022U\n\ne" + "xpression\030\002 \001(\0132\?.substrait.Expression.M" + "askExpression.MapSelect.MapKeyExpression" + "H\000\022:\n\005child\030\003 \001(\0132+.substrait.Expression" + ".MaskExpression.Select\032\031\n\006MapKey\022\017\n\007map_" + "key\030\001 \001(\t\032.\n\020MapKeyExpression\022\032\n\022map_key" + "_expression\030\001 \001(\tB\010\n\006select\032\266\003\n\016FieldRef" + "erence\022B\n\020direct_reference\030\001 \001(\0132&.subst" + "rait.Expression.ReferenceSegmentH\000\022@\n\020ma" + "sked_reference\030\002 \001(\0132$.substrait.Express" + "ion.MaskExpressionH\000\022+\n\nexpression\030\003 \001(\013" + "2\025.substrait.ExpressionH\001\022L\n\016root_refere" + "nce\030\004 \001(\01322.substrait.Expression.FieldRe" + "ference.RootReferenceH\001\022N\n\017outer_referen" + "ce\030\005 \001(\01323.substrait.Expression.FieldRef" + "erence.OuterReferenceH\001\032\017\n\rRootReference" + "\032#\n\016OuterReference\022\021\n\tsteps_out\030\001 \001(\rB\020\n" + "\016reference_typeB\013\n\troot_type\032\214\t\n\010Subquer" + "y\0227\n\006scalar\030\001 \001(\0132%.substrait.Expression" + ".Subquery.ScalarH\000\022B\n\014in_predicate\030\002 \001(\013" + "2*.substrait.Expression.Subquery.InPredi" + "cateH\000\022D\n\rset_predicate\030\003 \001(\0132+.substrai" + "t.Expression.Subquery.SetPredicateH\000\022F\n\016" + "set_comparison\030\004 \001(\0132,.substrait.Express" + "ion.Subquery.SetComparisonH\000\032\'\n\006Scalar\022\035" + "\n\005input\030\001 \001(\0132\016.substrait.Rel\032W\n\013InPredi" + "cate\022&\n\007needles\030\001 \003(\0132\025.substrait.Expres" + "sion\022 \n\010haystack\030\002 \001(\0132\016.substrait.Rel\032\334" + "\001\n\014SetPredicate\022M\n\014predicate_op\030\001 \001(\01627." + "substrait.Expression.Subquery.SetPredica" + "te.PredicateOp\022\036\n\006tuples\030\002 \001(\0132\016.substra" + "it.Rel\"]\n\013PredicateOp\022\034\n\030PREDICATE_OP_UN" + "SPECIFIED\020\000\022\027\n\023PREDICATE_OP_EXISTS\020\001\022\027\n\023" + "PREDICATE_OP_UNIQUE\020\002\032\202\004\n\rSetComparison\022" + "N\n\014reduction_op\030\001 \001(\01628.substrait.Expres" + "sion.Subquery.SetComparison.ReductionOp\022" + "P\n\rcomparison_op\030\002 \001(\01629.substrait.Expre" + "ssion.Subquery.SetComparison.ComparisonO" + "p\022#\n\004left\030\003 \001(\0132\025.substrait.Expression\022\035" + "\n\005right\030\004 \001(\0132\016.substrait.Rel\"\261\001\n\014Compar" + "isonOp\022\035\n\031COMPARISON_OP_UNSPECIFIED\020\000\022\024\n" + "\020COMPARISON_OP_EQ\020\001\022\024\n\020COMPARISON_OP_NE\020" + "\002\022\024\n\020COMPARISON_OP_LT\020\003\022\024\n\020COMPARISON_OP" + "_GT\020\004\022\024\n\020COMPARISON_OP_LE\020\005\022\024\n\020COMPARISO" + "N_OP_GE\020\006\"W\n\013ReductionOp\022\034\n\030REDUCTION_OP" + "_UNSPECIFIED\020\000\022\024\n\020REDUCTION_OP_ANY\020\001\022\024\n\020" + "REDUCTION_OP_ALL\020\002B\017\n\rsubquery_typeB\n\n\010r" + "ex_type\"\377\002\n\tSortField\022#\n\004expr\030\001 \001(\0132\025.su" + "bstrait.Expression\0227\n\tdirection\030\002 \001(\0162\"." + "substrait.SortField.SortDirectionH\000\022\'\n\035c" + "omparison_function_reference\030\003 \001(\rH\000\"\335\001\n" + "\rSortDirection\022\036\n\032SORT_DIRECTION_UNSPECI" + "FIED\020\000\022\"\n\036SORT_DIRECTION_ASC_NULLS_FIRST" + "\020\001\022!\n\035SORT_DIRECTION_ASC_NULLS_LAST\020\002\022#\n" + "\037SORT_DIRECTION_DESC_NULLS_FIRST\020\003\022\"\n\036SO" + "RT_DIRECTION_DESC_NULLS_LAST\020\004\022\034\n\030SORT_D" + "IRECTION_CLUSTERED\020\005B\013\n\tsort_kind\"\243\004\n\021Ag" + "gregateFunction\022\032\n\022function_reference\030\001 " + "\001(\r\022.\n\targuments\030\007 \003(\0132\033.substrait.Funct" + "ionArgument\022*\n\007options\030\010 \003(\0132\031.substrait" + ".FunctionOption\022$\n\013output_type\030\005 \001(\0132\017.s" + "ubstrait.Type\022*\n\005phase\030\004 \001(\0162\033.substrait" + ".AggregationPhase\022#\n\005sorts\030\003 \003(\0132\024.subst" + "rait.SortField\022F\n\ninvocation\030\006 \001(\01622.sub" + "strait.AggregateFunction.AggregationInvo" + "cation\022\'\n\004args\030\002 \003(\0132\025.substrait.Express" + "ionB\002\030\001\032\'\n\014ReferenceRel\022\027\n\017subtree_ordin" + "al\030\001 \001(\005\"\204\001\n\025AggregationInvocation\022&\n\"AG" + "GREGATION_INVOCATION_UNSPECIFIED\020\000\022\036\n\032AG" + "GREGATION_INVOCATION_ALL\020\001\022#\n\037AGGREGATIO" + "N_INVOCATION_DISTINCT\020\002*\357\001\n\020AggregationP" + "hase\022!\n\035AGGREGATION_PHASE_UNSPECIFIED\020\000\022" + "-\n)AGGREGATION_PHASE_INITIAL_TO_INTERMED" + "IATE\020\001\0222\n.AGGREGATION_PHASE_INTERMEDIATE" + "_TO_INTERMEDIATE\020\002\022\'\n#AGGREGATION_PHASE_" + "INITIAL_TO_RESULT\020\003\022,\n(AGGREGATION_PHASE" + "_INTERMEDIATE_TO_RESULT\020\004BW\n\022io.substrai" + "t.protoP\001Z*github.com/substrait-io/subst" + "rait-go/proto\252\002\022Substrait.Protobufb\006prot" + "o3" ; static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable*const descriptor_table_substrait_2falgebra_2eproto_deps[3] = { &::descriptor_table_google_2fprotobuf_2fany_2eproto, @@ -3202,8 +3386,8 @@ static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable*const descriptor }; static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_substrait_2falgebra_2eproto_once; const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_substrait_2falgebra_2eproto = { - false, false, 19479, descriptor_table_protodef_substrait_2falgebra_2eproto, "substrait/algebra.proto", - &descriptor_table_substrait_2falgebra_2eproto_once, descriptor_table_substrait_2falgebra_2eproto_deps, 3, 108, + false, false, 20962, descriptor_table_protodef_substrait_2falgebra_2eproto, "substrait/algebra.proto", + &descriptor_table_substrait_2falgebra_2eproto_once, descriptor_table_substrait_2falgebra_2eproto_deps, 3, 113, schemas, file_default_instances, TableStruct_substrait_2falgebra_2eproto::offsets, file_level_metadata_substrait_2falgebra_2eproto, file_level_enum_descriptors_substrait_2falgebra_2eproto, file_level_service_descriptors_substrait_2falgebra_2eproto, }; @@ -3450,10 +3634,33 @@ constexpr MergeJoinRel_JoinType MergeJoinRel::JoinType_MIN; constexpr MergeJoinRel_JoinType MergeJoinRel::JoinType_MAX; constexpr int MergeJoinRel::JoinType_ARRAYSIZE; #endif // (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) -const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* Expression_Cast_FailureBehavior_descriptor() { +const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* Expression_WindowFunction_BoundsType_descriptor() { ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_substrait_2falgebra_2eproto); return file_level_enum_descriptors_substrait_2falgebra_2eproto[8]; } +bool Expression_WindowFunction_BoundsType_IsValid(int value) { + switch (value) { + case 0: + case 1: + case 2: + return true; + default: + return false; + } +} + +#if (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) +constexpr Expression_WindowFunction_BoundsType Expression_WindowFunction::BOUNDS_TYPE_UNSPECIFIED; +constexpr Expression_WindowFunction_BoundsType Expression_WindowFunction::BOUNDS_TYPE_ROWS; +constexpr Expression_WindowFunction_BoundsType Expression_WindowFunction::BOUNDS_TYPE_RANGE; +constexpr Expression_WindowFunction_BoundsType Expression_WindowFunction::BoundsType_MIN; +constexpr Expression_WindowFunction_BoundsType Expression_WindowFunction::BoundsType_MAX; +constexpr int Expression_WindowFunction::BoundsType_ARRAYSIZE; +#endif // (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) +const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* Expression_Cast_FailureBehavior_descriptor() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_substrait_2falgebra_2eproto); + return file_level_enum_descriptors_substrait_2falgebra_2eproto[9]; +} bool Expression_Cast_FailureBehavior_IsValid(int value) { switch (value) { case 0: @@ -3475,7 +3682,7 @@ constexpr int Expression_Cast::FailureBehavior_ARRAYSIZE; #endif // (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* Expression_Subquery_SetPredicate_PredicateOp_descriptor() { ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_substrait_2falgebra_2eproto); - return file_level_enum_descriptors_substrait_2falgebra_2eproto[9]; + return file_level_enum_descriptors_substrait_2falgebra_2eproto[10]; } bool Expression_Subquery_SetPredicate_PredicateOp_IsValid(int value) { switch (value) { @@ -3498,7 +3705,7 @@ constexpr int Expression_Subquery_SetPredicate::PredicateOp_ARRAYSIZE; #endif // (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* Expression_Subquery_SetComparison_ComparisonOp_descriptor() { ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_substrait_2falgebra_2eproto); - return file_level_enum_descriptors_substrait_2falgebra_2eproto[10]; + return file_level_enum_descriptors_substrait_2falgebra_2eproto[11]; } bool Expression_Subquery_SetComparison_ComparisonOp_IsValid(int value) { switch (value) { @@ -3529,7 +3736,7 @@ constexpr int Expression_Subquery_SetComparison::ComparisonOp_ARRAYSIZE; #endif // (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* Expression_Subquery_SetComparison_ReductionOp_descriptor() { ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_substrait_2falgebra_2eproto); - return file_level_enum_descriptors_substrait_2falgebra_2eproto[11]; + return file_level_enum_descriptors_substrait_2falgebra_2eproto[12]; } bool Expression_Subquery_SetComparison_ReductionOp_IsValid(int value) { switch (value) { @@ -3552,7 +3759,7 @@ constexpr int Expression_Subquery_SetComparison::ReductionOp_ARRAYSIZE; #endif // (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SortField_SortDirection_descriptor() { ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_substrait_2falgebra_2eproto); - return file_level_enum_descriptors_substrait_2falgebra_2eproto[12]; + return file_level_enum_descriptors_substrait_2falgebra_2eproto[13]; } bool SortField_SortDirection_IsValid(int value) { switch (value) { @@ -3581,7 +3788,7 @@ constexpr int SortField::SortDirection_ARRAYSIZE; #endif // (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* AggregateFunction_AggregationInvocation_descriptor() { ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_substrait_2falgebra_2eproto); - return file_level_enum_descriptors_substrait_2falgebra_2eproto[13]; + return file_level_enum_descriptors_substrait_2falgebra_2eproto[14]; } bool AggregateFunction_AggregationInvocation_IsValid(int value) { switch (value) { @@ -3604,7 +3811,7 @@ constexpr int AggregateFunction::AggregationInvocation_ARRAYSIZE; #endif // (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912)) const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* AggregationPhase_descriptor() { ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_substrait_2falgebra_2eproto); - return file_level_enum_descriptors_substrait_2falgebra_2eproto[14]; + return file_level_enum_descriptors_substrait_2falgebra_2eproto[15]; } bool AggregationPhase_IsValid(int value) { switch (value) { @@ -9699,156 +9906,213 @@ ::PROTOBUF_NAMESPACE_ID::Metadata AggregateRel::GetMetadata() const { // =================================================================== -class SortRel::_Internal { +class ConsistentPartitionWindowRel_WindowRelFunction::_Internal { public: - static const ::substrait::RelCommon& common(const SortRel* msg); - static const ::substrait::Rel& input(const SortRel* msg); - static const ::substrait::extensions::AdvancedExtension& advanced_extension(const SortRel* msg); + static const ::substrait::Type& output_type(const ConsistentPartitionWindowRel_WindowRelFunction* msg); + static const ::substrait::Expression_WindowFunction_Bound& lower_bound(const ConsistentPartitionWindowRel_WindowRelFunction* msg); + static const ::substrait::Expression_WindowFunction_Bound& upper_bound(const ConsistentPartitionWindowRel_WindowRelFunction* msg); }; -const ::substrait::RelCommon& -SortRel::_Internal::common(const SortRel* msg) { - return *msg->common_; +const ::substrait::Type& +ConsistentPartitionWindowRel_WindowRelFunction::_Internal::output_type(const ConsistentPartitionWindowRel_WindowRelFunction* msg) { + return *msg->output_type_; } -const ::substrait::Rel& -SortRel::_Internal::input(const SortRel* msg) { - return *msg->input_; +const ::substrait::Expression_WindowFunction_Bound& +ConsistentPartitionWindowRel_WindowRelFunction::_Internal::lower_bound(const ConsistentPartitionWindowRel_WindowRelFunction* msg) { + return *msg->lower_bound_; } -const ::substrait::extensions::AdvancedExtension& -SortRel::_Internal::advanced_extension(const SortRel* msg) { - return *msg->advanced_extension_; +const ::substrait::Expression_WindowFunction_Bound& +ConsistentPartitionWindowRel_WindowRelFunction::_Internal::upper_bound(const ConsistentPartitionWindowRel_WindowRelFunction* msg) { + return *msg->upper_bound_; } -void SortRel::clear_advanced_extension() { - if (GetArenaForAllocation() == nullptr && advanced_extension_ != nullptr) { - delete advanced_extension_; +void ConsistentPartitionWindowRel_WindowRelFunction::clear_output_type() { + if (GetArenaForAllocation() == nullptr && output_type_ != nullptr) { + delete output_type_; } - advanced_extension_ = nullptr; + output_type_ = nullptr; } -SortRel::SortRel(::PROTOBUF_NAMESPACE_ID::Arena* arena, +ConsistentPartitionWindowRel_WindowRelFunction::ConsistentPartitionWindowRel_WindowRelFunction(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned) : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned), - sorts_(arena) { + arguments_(arena), + options_(arena) { SharedCtor(); if (!is_message_owned) { RegisterArenaDtor(arena); } - // @@protoc_insertion_point(arena_constructor:substrait.SortRel) + // @@protoc_insertion_point(arena_constructor:substrait.ConsistentPartitionWindowRel.WindowRelFunction) } -SortRel::SortRel(const SortRel& from) +ConsistentPartitionWindowRel_WindowRelFunction::ConsistentPartitionWindowRel_WindowRelFunction(const ConsistentPartitionWindowRel_WindowRelFunction& from) : ::PROTOBUF_NAMESPACE_ID::Message(), - sorts_(from.sorts_) { + arguments_(from.arguments_), + options_(from.options_) { _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - if (from._internal_has_common()) { - common_ = new ::substrait::RelCommon(*from.common_); + if (from._internal_has_upper_bound()) { + upper_bound_ = new ::substrait::Expression_WindowFunction_Bound(*from.upper_bound_); } else { - common_ = nullptr; + upper_bound_ = nullptr; } - if (from._internal_has_input()) { - input_ = new ::substrait::Rel(*from.input_); + if (from._internal_has_lower_bound()) { + lower_bound_ = new ::substrait::Expression_WindowFunction_Bound(*from.lower_bound_); } else { - input_ = nullptr; + lower_bound_ = nullptr; } - if (from._internal_has_advanced_extension()) { - advanced_extension_ = new ::substrait::extensions::AdvancedExtension(*from.advanced_extension_); + if (from._internal_has_output_type()) { + output_type_ = new ::substrait::Type(*from.output_type_); } else { - advanced_extension_ = nullptr; + output_type_ = nullptr; } - // @@protoc_insertion_point(copy_constructor:substrait.SortRel) + ::memcpy(&function_reference_, &from.function_reference_, + static_cast<size_t>(reinterpret_cast<char*>(&bounds_type_) - + reinterpret_cast<char*>(&function_reference_)) + sizeof(bounds_type_)); + // @@protoc_insertion_point(copy_constructor:substrait.ConsistentPartitionWindowRel.WindowRelFunction) } -inline void SortRel::SharedCtor() { +inline void ConsistentPartitionWindowRel_WindowRelFunction::SharedCtor() { ::memset(reinterpret_cast<char*>(this) + static_cast<size_t>( - reinterpret_cast<char*>(&common_) - reinterpret_cast<char*>(this)), - 0, static_cast<size_t>(reinterpret_cast<char*>(&advanced_extension_) - - reinterpret_cast<char*>(&common_)) + sizeof(advanced_extension_)); + reinterpret_cast<char*>(&upper_bound_) - reinterpret_cast<char*>(this)), + 0, static_cast<size_t>(reinterpret_cast<char*>(&bounds_type_) - + reinterpret_cast<char*>(&upper_bound_)) + sizeof(bounds_type_)); } -SortRel::~SortRel() { - // @@protoc_insertion_point(destructor:substrait.SortRel) +ConsistentPartitionWindowRel_WindowRelFunction::~ConsistentPartitionWindowRel_WindowRelFunction() { + // @@protoc_insertion_point(destructor:substrait.ConsistentPartitionWindowRel.WindowRelFunction) if (GetArenaForAllocation() != nullptr) return; SharedDtor(); _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -inline void SortRel::SharedDtor() { +inline void ConsistentPartitionWindowRel_WindowRelFunction::SharedDtor() { GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - if (this != internal_default_instance()) delete common_; - if (this != internal_default_instance()) delete input_; - if (this != internal_default_instance()) delete advanced_extension_; + if (this != internal_default_instance()) delete upper_bound_; + if (this != internal_default_instance()) delete lower_bound_; + if (this != internal_default_instance()) delete output_type_; } -void SortRel::ArenaDtor(void* object) { - SortRel* _this = reinterpret_cast< SortRel* >(object); +void ConsistentPartitionWindowRel_WindowRelFunction::ArenaDtor(void* object) { + ConsistentPartitionWindowRel_WindowRelFunction* _this = reinterpret_cast< ConsistentPartitionWindowRel_WindowRelFunction* >(object); (void)_this; } -void SortRel::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { +void ConsistentPartitionWindowRel_WindowRelFunction::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { } -void SortRel::SetCachedSize(int size) const { +void ConsistentPartitionWindowRel_WindowRelFunction::SetCachedSize(int size) const { _cached_size_.Set(size); } -void SortRel::Clear() { -// @@protoc_insertion_point(message_clear_start:substrait.SortRel) +void ConsistentPartitionWindowRel_WindowRelFunction::Clear() { +// @@protoc_insertion_point(message_clear_start:substrait.ConsistentPartitionWindowRel.WindowRelFunction) uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - sorts_.Clear(); - if (GetArenaForAllocation() == nullptr && common_ != nullptr) { - delete common_; + arguments_.Clear(); + options_.Clear(); + if (GetArenaForAllocation() == nullptr && upper_bound_ != nullptr) { + delete upper_bound_; } - common_ = nullptr; - if (GetArenaForAllocation() == nullptr && input_ != nullptr) { - delete input_; + upper_bound_ = nullptr; + if (GetArenaForAllocation() == nullptr && lower_bound_ != nullptr) { + delete lower_bound_; } - input_ = nullptr; - if (GetArenaForAllocation() == nullptr && advanced_extension_ != nullptr) { - delete advanced_extension_; + lower_bound_ = nullptr; + if (GetArenaForAllocation() == nullptr && output_type_ != nullptr) { + delete output_type_; } - advanced_extension_ = nullptr; + output_type_ = nullptr; + ::memset(&function_reference_, 0, static_cast<size_t>( + reinterpret_cast<char*>(&bounds_type_) - + reinterpret_cast<char*>(&function_reference_)) + sizeof(bounds_type_)); _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -const char* SortRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { +const char* ConsistentPartitionWindowRel_WindowRelFunction::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure while (!ctx->Done(&ptr)) { uint32_t tag; ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag); switch (tag >> 3) { - // .substrait.RelCommon common = 1; + // uint32 function_reference = 1; case 1: - if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) { - ptr = ctx->ParseMessage(_internal_mutable_common(), ptr); + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) { + function_reference_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr); CHK_(ptr); } else goto handle_unusual; continue; - // .substrait.Rel input = 2; - case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) { - ptr = ctx->ParseMessage(_internal_mutable_input(), ptr); + // .substrait.Expression.WindowFunction.Bound upper_bound = 4; + case 4: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) { + ptr = ctx->ParseMessage(_internal_mutable_upper_bound(), ptr); CHK_(ptr); } else goto handle_unusual; continue; - // repeated .substrait.SortField sorts = 3; - case 3: - if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) { + // .substrait.Expression.WindowFunction.Bound lower_bound = 5; + case 5: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) { + ptr = ctx->ParseMessage(_internal_mutable_lower_bound(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // .substrait.AggregationPhase phase = 6; + case 6: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) { + uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + CHK_(ptr); + _internal_set_phase(static_cast<::substrait::AggregationPhase>(val)); + } else + goto handle_unusual; + continue; + // .substrait.Type output_type = 7; + case 7: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) { + ptr = ctx->ParseMessage(_internal_mutable_output_type(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // repeated .substrait.FunctionArgument arguments = 9; + case 9: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 74)) { ptr -= 1; do { ptr += 1; - ptr = ctx->ParseMessage(_internal_add_sorts(), ptr); + ptr = ctx->ParseMessage(_internal_add_arguments(), ptr); CHK_(ptr); if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr)); + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<74>(ptr)); } else goto handle_unusual; continue; - // .substrait.extensions.AdvancedExtension advanced_extension = 10; + // .substrait.AggregateFunction.AggregationInvocation invocation = 10; case 10: - if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 82)) { - ptr = ctx->ParseMessage(_internal_mutable_advanced_extension(), ptr); + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 80)) { + uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + CHK_(ptr); + _internal_set_invocation(static_cast<::substrait::AggregateFunction_AggregationInvocation>(val)); + } else + goto handle_unusual; + continue; + // repeated .substrait.FunctionOption options = 11; + case 11: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 90)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_options(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<90>(ptr)); + } else + goto handle_unusual; + continue; + // .substrait.Expression.WindowFunction.BoundsType bounds_type = 12; + case 12: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 96)) { + uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); CHK_(ptr); + _internal_set_bounds_type(static_cast<::substrait::Expression_WindowFunction_BoundsType>(val)); } else goto handle_unusual; continue; @@ -9875,147 +10139,226 @@ const char* SortRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::in #undef CHK_ } -uint8_t* SortRel::_InternalSerialize( +uint8_t* ConsistentPartitionWindowRel_WindowRelFunction::_InternalSerialize( uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:substrait.SortRel) + // @@protoc_insertion_point(serialize_to_array_start:substrait.ConsistentPartitionWindowRel.WindowRelFunction) uint32_t cached_has_bits = 0; (void) cached_has_bits; - // .substrait.RelCommon common = 1; - if (this->_internal_has_common()) { + // uint32 function_reference = 1; + if (this->_internal_function_reference() != 0) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(1, this->_internal_function_reference(), target); + } + + // .substrait.Expression.WindowFunction.Bound upper_bound = 4; + if (this->_internal_has_upper_bound()) { target = stream->EnsureSpace(target); target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: InternalWriteMessage( - 1, _Internal::common(this), target, stream); + 4, _Internal::upper_bound(this), target, stream); } - // .substrait.Rel input = 2; - if (this->_internal_has_input()) { + // .substrait.Expression.WindowFunction.Bound lower_bound = 5; + if (this->_internal_has_lower_bound()) { target = stream->EnsureSpace(target); target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: InternalWriteMessage( - 2, _Internal::input(this), target, stream); + 5, _Internal::lower_bound(this), target, stream); } - // repeated .substrait.SortField sorts = 3; + // .substrait.AggregationPhase phase = 6; + if (this->_internal_phase() != 0) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray( + 6, this->_internal_phase(), target); + } + + // .substrait.Type output_type = 7; + if (this->_internal_has_output_type()) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage( + 7, _Internal::output_type(this), target, stream); + } + + // repeated .substrait.FunctionArgument arguments = 9; for (unsigned int i = 0, - n = static_cast<unsigned int>(this->_internal_sorts_size()); i < n; i++) { + n = static_cast<unsigned int>(this->_internal_arguments_size()); i < n; i++) { target = stream->EnsureSpace(target); target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(3, this->_internal_sorts(i), target, stream); + InternalWriteMessage(9, this->_internal_arguments(i), target, stream); } - // .substrait.extensions.AdvancedExtension advanced_extension = 10; - if (this->_internal_has_advanced_extension()) { + // .substrait.AggregateFunction.AggregationInvocation invocation = 10; + if (this->_internal_invocation() != 0) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray( + 10, this->_internal_invocation(), target); + } + + // repeated .substrait.FunctionOption options = 11; + for (unsigned int i = 0, + n = static_cast<unsigned int>(this->_internal_options_size()); i < n; i++) { target = stream->EnsureSpace(target); target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage( - 10, _Internal::advanced_extension(this), target, stream); + InternalWriteMessage(11, this->_internal_options(i), target, stream); + } + + // .substrait.Expression.WindowFunction.BoundsType bounds_type = 12; + if (this->_internal_bounds_type() != 0) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray( + 12, this->_internal_bounds_type(), target); } if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); } - // @@protoc_insertion_point(serialize_to_array_end:substrait.SortRel) + // @@protoc_insertion_point(serialize_to_array_end:substrait.ConsistentPartitionWindowRel.WindowRelFunction) return target; } -size_t SortRel::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:substrait.SortRel) +size_t ConsistentPartitionWindowRel_WindowRelFunction::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:substrait.ConsistentPartitionWindowRel.WindowRelFunction) size_t total_size = 0; uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - // repeated .substrait.SortField sorts = 3; - total_size += 1UL * this->_internal_sorts_size(); - for (const auto& msg : this->sorts_) { + // repeated .substrait.FunctionArgument arguments = 9; + total_size += 1UL * this->_internal_arguments_size(); + for (const auto& msg : this->arguments_) { total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); } - // .substrait.RelCommon common = 1; - if (this->_internal_has_common()) { + // repeated .substrait.FunctionOption options = 11; + total_size += 1UL * this->_internal_options_size(); + for (const auto& msg : this->options_) { + total_size += + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); + } + + // .substrait.Expression.WindowFunction.Bound upper_bound = 4; + if (this->_internal_has_upper_bound()) { total_size += 1 + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *common_); + *upper_bound_); } - // .substrait.Rel input = 2; - if (this->_internal_has_input()) { + // .substrait.Expression.WindowFunction.Bound lower_bound = 5; + if (this->_internal_has_lower_bound()) { total_size += 1 + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *input_); + *lower_bound_); } - // .substrait.extensions.AdvancedExtension advanced_extension = 10; - if (this->_internal_has_advanced_extension()) { + // .substrait.Type output_type = 7; + if (this->_internal_has_output_type()) { total_size += 1 + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *advanced_extension_); + *output_type_); + } + + // uint32 function_reference = 1; + if (this->_internal_function_reference() != 0) { + total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32SizePlusOne(this->_internal_function_reference()); + } + + // .substrait.AggregationPhase phase = 6; + if (this->_internal_phase() != 0) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_phase()); + } + + // .substrait.AggregateFunction.AggregationInvocation invocation = 10; + if (this->_internal_invocation() != 0) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_invocation()); + } + + // .substrait.Expression.WindowFunction.BoundsType bounds_type = 12; + if (this->_internal_bounds_type() != 0) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_bounds_type()); } return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_); } -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData SortRel::_class_data_ = { +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ConsistentPartitionWindowRel_WindowRelFunction::_class_data_ = { ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck, - SortRel::MergeImpl + ConsistentPartitionWindowRel_WindowRelFunction::MergeImpl }; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*SortRel::GetClassData() const { return &_class_data_; } +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ConsistentPartitionWindowRel_WindowRelFunction::GetClassData() const { return &_class_data_; } -void SortRel::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, +void ConsistentPartitionWindowRel_WindowRelFunction::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, const ::PROTOBUF_NAMESPACE_ID::Message& from) { - static_cast<SortRel *>(to)->MergeFrom( - static_cast<const SortRel &>(from)); + static_cast<ConsistentPartitionWindowRel_WindowRelFunction *>(to)->MergeFrom( + static_cast<const ConsistentPartitionWindowRel_WindowRelFunction &>(from)); } -void SortRel::MergeFrom(const SortRel& from) { -// @@protoc_insertion_point(class_specific_merge_from_start:substrait.SortRel) +void ConsistentPartitionWindowRel_WindowRelFunction::MergeFrom(const ConsistentPartitionWindowRel_WindowRelFunction& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:substrait.ConsistentPartitionWindowRel.WindowRelFunction) GOOGLE_DCHECK_NE(&from, this); uint32_t cached_has_bits = 0; (void) cached_has_bits; - sorts_.MergeFrom(from.sorts_); - if (from._internal_has_common()) { - _internal_mutable_common()->::substrait::RelCommon::MergeFrom(from._internal_common()); + arguments_.MergeFrom(from.arguments_); + options_.MergeFrom(from.options_); + if (from._internal_has_upper_bound()) { + _internal_mutable_upper_bound()->::substrait::Expression_WindowFunction_Bound::MergeFrom(from._internal_upper_bound()); } - if (from._internal_has_input()) { - _internal_mutable_input()->::substrait::Rel::MergeFrom(from._internal_input()); + if (from._internal_has_lower_bound()) { + _internal_mutable_lower_bound()->::substrait::Expression_WindowFunction_Bound::MergeFrom(from._internal_lower_bound()); } - if (from._internal_has_advanced_extension()) { - _internal_mutable_advanced_extension()->::substrait::extensions::AdvancedExtension::MergeFrom(from._internal_advanced_extension()); + if (from._internal_has_output_type()) { + _internal_mutable_output_type()->::substrait::Type::MergeFrom(from._internal_output_type()); + } + if (from._internal_function_reference() != 0) { + _internal_set_function_reference(from._internal_function_reference()); + } + if (from._internal_phase() != 0) { + _internal_set_phase(from._internal_phase()); + } + if (from._internal_invocation() != 0) { + _internal_set_invocation(from._internal_invocation()); + } + if (from._internal_bounds_type() != 0) { + _internal_set_bounds_type(from._internal_bounds_type()); } _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); } -void SortRel::CopyFrom(const SortRel& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:substrait.SortRel) +void ConsistentPartitionWindowRel_WindowRelFunction::CopyFrom(const ConsistentPartitionWindowRel_WindowRelFunction& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:substrait.ConsistentPartitionWindowRel.WindowRelFunction) if (&from == this) return; Clear(); MergeFrom(from); } -bool SortRel::IsInitialized() const { +bool ConsistentPartitionWindowRel_WindowRelFunction::IsInitialized() const { return true; } -void SortRel::InternalSwap(SortRel* other) { +void ConsistentPartitionWindowRel_WindowRelFunction::InternalSwap(ConsistentPartitionWindowRel_WindowRelFunction* other) { using std::swap; _internal_metadata_.InternalSwap(&other->_internal_metadata_); - sorts_.InternalSwap(&other->sorts_); + arguments_.InternalSwap(&other->arguments_); + options_.InternalSwap(&other->options_); ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(SortRel, advanced_extension_) - + sizeof(SortRel::advanced_extension_) - - PROTOBUF_FIELD_OFFSET(SortRel, common_)>( - reinterpret_cast<char*>(&common_), - reinterpret_cast<char*>(&other->common_)); + PROTOBUF_FIELD_OFFSET(ConsistentPartitionWindowRel_WindowRelFunction, bounds_type_) + + sizeof(ConsistentPartitionWindowRel_WindowRelFunction::bounds_type_) + - PROTOBUF_FIELD_OFFSET(ConsistentPartitionWindowRel_WindowRelFunction, upper_bound_)>( + reinterpret_cast<char*>(&upper_bound_), + reinterpret_cast<char*>(&other->upper_bound_)); } -::PROTOBUF_NAMESPACE_ID::Metadata SortRel::GetMetadata() const { +::PROTOBUF_NAMESPACE_ID::Metadata ConsistentPartitionWindowRel_WindowRelFunction::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, file_level_metadata_substrait_2falgebra_2eproto[23]); @@ -10023,47 +10366,48 @@ ::PROTOBUF_NAMESPACE_ID::Metadata SortRel::GetMetadata() const { // =================================================================== -class FilterRel::_Internal { +class ConsistentPartitionWindowRel::_Internal { public: - static const ::substrait::RelCommon& common(const FilterRel* msg); - static const ::substrait::Rel& input(const FilterRel* msg); - static const ::substrait::Expression& condition(const FilterRel* msg); - static const ::substrait::extensions::AdvancedExtension& advanced_extension(const FilterRel* msg); + static const ::substrait::RelCommon& common(const ConsistentPartitionWindowRel* msg); + static const ::substrait::Rel& input(const ConsistentPartitionWindowRel* msg); + static const ::substrait::extensions::AdvancedExtension& advanced_extension(const ConsistentPartitionWindowRel* msg); }; const ::substrait::RelCommon& -FilterRel::_Internal::common(const FilterRel* msg) { +ConsistentPartitionWindowRel::_Internal::common(const ConsistentPartitionWindowRel* msg) { return *msg->common_; } const ::substrait::Rel& -FilterRel::_Internal::input(const FilterRel* msg) { +ConsistentPartitionWindowRel::_Internal::input(const ConsistentPartitionWindowRel* msg) { return *msg->input_; } -const ::substrait::Expression& -FilterRel::_Internal::condition(const FilterRel* msg) { - return *msg->condition_; -} const ::substrait::extensions::AdvancedExtension& -FilterRel::_Internal::advanced_extension(const FilterRel* msg) { +ConsistentPartitionWindowRel::_Internal::advanced_extension(const ConsistentPartitionWindowRel* msg) { return *msg->advanced_extension_; } -void FilterRel::clear_advanced_extension() { +void ConsistentPartitionWindowRel::clear_advanced_extension() { if (GetArenaForAllocation() == nullptr && advanced_extension_ != nullptr) { delete advanced_extension_; } advanced_extension_ = nullptr; } -FilterRel::FilterRel(::PROTOBUF_NAMESPACE_ID::Arena* arena, +ConsistentPartitionWindowRel::ConsistentPartitionWindowRel(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned), + window_functions_(arena), + partition_expressions_(arena), + sorts_(arena) { SharedCtor(); if (!is_message_owned) { RegisterArenaDtor(arena); } - // @@protoc_insertion_point(arena_constructor:substrait.FilterRel) + // @@protoc_insertion_point(arena_constructor:substrait.ConsistentPartitionWindowRel) } -FilterRel::FilterRel(const FilterRel& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { +ConsistentPartitionWindowRel::ConsistentPartitionWindowRel(const ConsistentPartitionWindowRel& from) + : ::PROTOBUF_NAMESPACE_ID::Message(), + window_functions_(from.window_functions_), + partition_expressions_(from.partition_expressions_), + sorts_(from.sorts_) { _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); if (from._internal_has_common()) { common_ = new ::substrait::RelCommon(*from.common_); @@ -10075,57 +10419,54 @@ FilterRel::FilterRel(const FilterRel& from) } else { input_ = nullptr; } - if (from._internal_has_condition()) { - condition_ = new ::substrait::Expression(*from.condition_); - } else { - condition_ = nullptr; - } if (from._internal_has_advanced_extension()) { advanced_extension_ = new ::substrait::extensions::AdvancedExtension(*from.advanced_extension_); } else { advanced_extension_ = nullptr; } - // @@protoc_insertion_point(copy_constructor:substrait.FilterRel) + // @@protoc_insertion_point(copy_constructor:substrait.ConsistentPartitionWindowRel) } -inline void FilterRel::SharedCtor() { +inline void ConsistentPartitionWindowRel::SharedCtor() { ::memset(reinterpret_cast<char*>(this) + static_cast<size_t>( reinterpret_cast<char*>(&common_) - reinterpret_cast<char*>(this)), 0, static_cast<size_t>(reinterpret_cast<char*>(&advanced_extension_) - reinterpret_cast<char*>(&common_)) + sizeof(advanced_extension_)); } -FilterRel::~FilterRel() { - // @@protoc_insertion_point(destructor:substrait.FilterRel) +ConsistentPartitionWindowRel::~ConsistentPartitionWindowRel() { + // @@protoc_insertion_point(destructor:substrait.ConsistentPartitionWindowRel) if (GetArenaForAllocation() != nullptr) return; SharedDtor(); _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -inline void FilterRel::SharedDtor() { +inline void ConsistentPartitionWindowRel::SharedDtor() { GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); if (this != internal_default_instance()) delete common_; if (this != internal_default_instance()) delete input_; - if (this != internal_default_instance()) delete condition_; if (this != internal_default_instance()) delete advanced_extension_; } -void FilterRel::ArenaDtor(void* object) { - FilterRel* _this = reinterpret_cast< FilterRel* >(object); +void ConsistentPartitionWindowRel::ArenaDtor(void* object) { + ConsistentPartitionWindowRel* _this = reinterpret_cast< ConsistentPartitionWindowRel* >(object); (void)_this; } -void FilterRel::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { +void ConsistentPartitionWindowRel::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { } -void FilterRel::SetCachedSize(int size) const { +void ConsistentPartitionWindowRel::SetCachedSize(int size) const { _cached_size_.Set(size); } -void FilterRel::Clear() { -// @@protoc_insertion_point(message_clear_start:substrait.FilterRel) +void ConsistentPartitionWindowRel::Clear() { +// @@protoc_insertion_point(message_clear_start:substrait.ConsistentPartitionWindowRel) uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; + window_functions_.Clear(); + partition_expressions_.Clear(); + sorts_.Clear(); if (GetArenaForAllocation() == nullptr && common_ != nullptr) { delete common_; } @@ -10134,10 +10475,6 @@ void FilterRel::Clear() { delete input_; } input_ = nullptr; - if (GetArenaForAllocation() == nullptr && condition_ != nullptr) { - delete condition_; - } - condition_ = nullptr; if (GetArenaForAllocation() == nullptr && advanced_extension_ != nullptr) { delete advanced_extension_; } @@ -10145,7 +10482,7 @@ void FilterRel::Clear() { _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -const char* FilterRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { +const char* ConsistentPartitionWindowRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure while (!ctx->Done(&ptr)) { uint32_t tag; @@ -10167,11 +10504,42 @@ const char* FilterRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID:: } else goto handle_unusual; continue; - // .substrait.Expression condition = 3; + // repeated .substrait.ConsistentPartitionWindowRel.WindowRelFunction window_functions = 3; case 3: if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) { - ptr = ctx->ParseMessage(_internal_mutable_condition(), ptr); - CHK_(ptr); + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_window_functions(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr)); + } else + goto handle_unusual; + continue; + // repeated .substrait.Expression partition_expressions = 4; + case 4: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_partition_expressions(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<34>(ptr)); + } else + goto handle_unusual; + continue; + // repeated .substrait.SortField sorts = 5; + case 5: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_sorts(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<42>(ptr)); } else goto handle_unusual; continue; @@ -10206,9 +10574,9 @@ const char* FilterRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID:: #undef CHK_ } -uint8_t* FilterRel::_InternalSerialize( +uint8_t* ConsistentPartitionWindowRel::_InternalSerialize( uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:substrait.FilterRel) + // @@protoc_insertion_point(serialize_to_array_start:substrait.ConsistentPartitionWindowRel) uint32_t cached_has_bits = 0; (void) cached_has_bits; @@ -10228,12 +10596,28 @@ uint8_t* FilterRel::_InternalSerialize( 2, _Internal::input(this), target, stream); } - // .substrait.Expression condition = 3; - if (this->_internal_has_condition()) { + // repeated .substrait.ConsistentPartitionWindowRel.WindowRelFunction window_functions = 3; + for (unsigned int i = 0, + n = static_cast<unsigned int>(this->_internal_window_functions_size()); i < n; i++) { target = stream->EnsureSpace(target); target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage( - 3, _Internal::condition(this), target, stream); + InternalWriteMessage(3, this->_internal_window_functions(i), target, stream); + } + + // repeated .substrait.Expression partition_expressions = 4; + for (unsigned int i = 0, + n = static_cast<unsigned int>(this->_internal_partition_expressions_size()); i < n; i++) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(4, this->_internal_partition_expressions(i), target, stream); + } + + // repeated .substrait.SortField sorts = 5; + for (unsigned int i = 0, + n = static_cast<unsigned int>(this->_internal_sorts_size()); i < n; i++) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(5, this->_internal_sorts(i), target, stream); } // .substrait.extensions.AdvancedExtension advanced_extension = 10; @@ -10248,18 +10632,39 @@ uint8_t* FilterRel::_InternalSerialize( target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); } - // @@protoc_insertion_point(serialize_to_array_end:substrait.FilterRel) + // @@protoc_insertion_point(serialize_to_array_end:substrait.ConsistentPartitionWindowRel) return target; } -size_t FilterRel::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:substrait.FilterRel) +size_t ConsistentPartitionWindowRel::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:substrait.ConsistentPartitionWindowRel) size_t total_size = 0; uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; + // repeated .substrait.ConsistentPartitionWindowRel.WindowRelFunction window_functions = 3; + total_size += 1UL * this->_internal_window_functions_size(); + for (const auto& msg : this->window_functions_) { + total_size += + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); + } + + // repeated .substrait.Expression partition_expressions = 4; + total_size += 1UL * this->_internal_partition_expressions_size(); + for (const auto& msg : this->partition_expressions_) { + total_size += + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); + } + + // repeated .substrait.SortField sorts = 5; + total_size += 1UL * this->_internal_sorts_size(); + for (const auto& msg : this->sorts_) { + total_size += + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); + } + // .substrait.RelCommon common = 1; if (this->_internal_has_common()) { total_size += 1 + @@ -10274,13 +10679,6 @@ size_t FilterRel::ByteSizeLong() const { *input_); } - // .substrait.Expression condition = 3; - if (this->_internal_has_condition()) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *condition_); - } - // .substrait.extensions.AdvancedExtension advanced_extension = 10; if (this->_internal_has_advanced_extension()) { total_size += 1 + @@ -10291,63 +10689,66 @@ size_t FilterRel::ByteSizeLong() const { return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_); } -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData FilterRel::_class_data_ = { +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ConsistentPartitionWindowRel::_class_data_ = { ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck, - FilterRel::MergeImpl + ConsistentPartitionWindowRel::MergeImpl }; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*FilterRel::GetClassData() const { return &_class_data_; } +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ConsistentPartitionWindowRel::GetClassData() const { return &_class_data_; } -void FilterRel::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, +void ConsistentPartitionWindowRel::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, const ::PROTOBUF_NAMESPACE_ID::Message& from) { - static_cast<FilterRel *>(to)->MergeFrom( - static_cast<const FilterRel &>(from)); + static_cast<ConsistentPartitionWindowRel *>(to)->MergeFrom( + static_cast<const ConsistentPartitionWindowRel &>(from)); } -void FilterRel::MergeFrom(const FilterRel& from) { -// @@protoc_insertion_point(class_specific_merge_from_start:substrait.FilterRel) +void ConsistentPartitionWindowRel::MergeFrom(const ConsistentPartitionWindowRel& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:substrait.ConsistentPartitionWindowRel) GOOGLE_DCHECK_NE(&from, this); uint32_t cached_has_bits = 0; (void) cached_has_bits; + window_functions_.MergeFrom(from.window_functions_); + partition_expressions_.MergeFrom(from.partition_expressions_); + sorts_.MergeFrom(from.sorts_); if (from._internal_has_common()) { _internal_mutable_common()->::substrait::RelCommon::MergeFrom(from._internal_common()); } if (from._internal_has_input()) { _internal_mutable_input()->::substrait::Rel::MergeFrom(from._internal_input()); } - if (from._internal_has_condition()) { - _internal_mutable_condition()->::substrait::Expression::MergeFrom(from._internal_condition()); - } if (from._internal_has_advanced_extension()) { _internal_mutable_advanced_extension()->::substrait::extensions::AdvancedExtension::MergeFrom(from._internal_advanced_extension()); } _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); } -void FilterRel::CopyFrom(const FilterRel& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:substrait.FilterRel) +void ConsistentPartitionWindowRel::CopyFrom(const ConsistentPartitionWindowRel& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:substrait.ConsistentPartitionWindowRel) if (&from == this) return; Clear(); MergeFrom(from); } -bool FilterRel::IsInitialized() const { +bool ConsistentPartitionWindowRel::IsInitialized() const { return true; } -void FilterRel::InternalSwap(FilterRel* other) { +void ConsistentPartitionWindowRel::InternalSwap(ConsistentPartitionWindowRel* other) { using std::swap; _internal_metadata_.InternalSwap(&other->_internal_metadata_); + window_functions_.InternalSwap(&other->window_functions_); + partition_expressions_.InternalSwap(&other->partition_expressions_); + sorts_.InternalSwap(&other->sorts_); ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(FilterRel, advanced_extension_) - + sizeof(FilterRel::advanced_extension_) - - PROTOBUF_FIELD_OFFSET(FilterRel, common_)>( + PROTOBUF_FIELD_OFFSET(ConsistentPartitionWindowRel, advanced_extension_) + + sizeof(ConsistentPartitionWindowRel::advanced_extension_) + - PROTOBUF_FIELD_OFFSET(ConsistentPartitionWindowRel, common_)>( reinterpret_cast<char*>(&common_), reinterpret_cast<char*>(&other->common_)); } -::PROTOBUF_NAMESPACE_ID::Metadata FilterRel::GetMetadata() const { +::PROTOBUF_NAMESPACE_ID::Metadata ConsistentPartitionWindowRel::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, file_level_metadata_substrait_2falgebra_2eproto[24]); @@ -10355,104 +10756,117 @@ ::PROTOBUF_NAMESPACE_ID::Metadata FilterRel::GetMetadata() const { // =================================================================== -class SetRel::_Internal { +class SortRel::_Internal { public: - static const ::substrait::RelCommon& common(const SetRel* msg); - static const ::substrait::extensions::AdvancedExtension& advanced_extension(const SetRel* msg); + static const ::substrait::RelCommon& common(const SortRel* msg); + static const ::substrait::Rel& input(const SortRel* msg); + static const ::substrait::extensions::AdvancedExtension& advanced_extension(const SortRel* msg); }; const ::substrait::RelCommon& -SetRel::_Internal::common(const SetRel* msg) { +SortRel::_Internal::common(const SortRel* msg) { return *msg->common_; } +const ::substrait::Rel& +SortRel::_Internal::input(const SortRel* msg) { + return *msg->input_; +} const ::substrait::extensions::AdvancedExtension& -SetRel::_Internal::advanced_extension(const SetRel* msg) { +SortRel::_Internal::advanced_extension(const SortRel* msg) { return *msg->advanced_extension_; } -void SetRel::clear_advanced_extension() { +void SortRel::clear_advanced_extension() { if (GetArenaForAllocation() == nullptr && advanced_extension_ != nullptr) { delete advanced_extension_; } advanced_extension_ = nullptr; } -SetRel::SetRel(::PROTOBUF_NAMESPACE_ID::Arena* arena, +SortRel::SortRel(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned) : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned), - inputs_(arena) { + sorts_(arena) { SharedCtor(); if (!is_message_owned) { RegisterArenaDtor(arena); } - // @@protoc_insertion_point(arena_constructor:substrait.SetRel) + // @@protoc_insertion_point(arena_constructor:substrait.SortRel) } -SetRel::SetRel(const SetRel& from) +SortRel::SortRel(const SortRel& from) : ::PROTOBUF_NAMESPACE_ID::Message(), - inputs_(from.inputs_) { + sorts_(from.sorts_) { _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); if (from._internal_has_common()) { common_ = new ::substrait::RelCommon(*from.common_); } else { common_ = nullptr; } + if (from._internal_has_input()) { + input_ = new ::substrait::Rel(*from.input_); + } else { + input_ = nullptr; + } if (from._internal_has_advanced_extension()) { advanced_extension_ = new ::substrait::extensions::AdvancedExtension(*from.advanced_extension_); } else { advanced_extension_ = nullptr; } - op_ = from.op_; - // @@protoc_insertion_point(copy_constructor:substrait.SetRel) + // @@protoc_insertion_point(copy_constructor:substrait.SortRel) } -inline void SetRel::SharedCtor() { +inline void SortRel::SharedCtor() { ::memset(reinterpret_cast<char*>(this) + static_cast<size_t>( reinterpret_cast<char*>(&common_) - reinterpret_cast<char*>(this)), - 0, static_cast<size_t>(reinterpret_cast<char*>(&op_) - - reinterpret_cast<char*>(&common_)) + sizeof(op_)); + 0, static_cast<size_t>(reinterpret_cast<char*>(&advanced_extension_) - + reinterpret_cast<char*>(&common_)) + sizeof(advanced_extension_)); } -SetRel::~SetRel() { - // @@protoc_insertion_point(destructor:substrait.SetRel) +SortRel::~SortRel() { + // @@protoc_insertion_point(destructor:substrait.SortRel) if (GetArenaForAllocation() != nullptr) return; SharedDtor(); _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -inline void SetRel::SharedDtor() { +inline void SortRel::SharedDtor() { GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); if (this != internal_default_instance()) delete common_; + if (this != internal_default_instance()) delete input_; if (this != internal_default_instance()) delete advanced_extension_; } -void SetRel::ArenaDtor(void* object) { - SetRel* _this = reinterpret_cast< SetRel* >(object); +void SortRel::ArenaDtor(void* object) { + SortRel* _this = reinterpret_cast< SortRel* >(object); (void)_this; } -void SetRel::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { +void SortRel::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { } -void SetRel::SetCachedSize(int size) const { +void SortRel::SetCachedSize(int size) const { _cached_size_.Set(size); } -void SetRel::Clear() { -// @@protoc_insertion_point(message_clear_start:substrait.SetRel) +void SortRel::Clear() { +// @@protoc_insertion_point(message_clear_start:substrait.SortRel) uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - inputs_.Clear(); + sorts_.Clear(); if (GetArenaForAllocation() == nullptr && common_ != nullptr) { delete common_; } common_ = nullptr; + if (GetArenaForAllocation() == nullptr && input_ != nullptr) { + delete input_; + } + input_ = nullptr; if (GetArenaForAllocation() == nullptr && advanced_extension_ != nullptr) { delete advanced_extension_; } advanced_extension_ = nullptr; - op_ = 0; _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -const char* SetRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { +const char* SortRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure while (!ctx->Done(&ptr)) { uint32_t tag; @@ -10466,25 +10880,24 @@ const char* SetRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::int } else goto handle_unusual; continue; - // repeated .substrait.Rel inputs = 2; + // .substrait.Rel input = 2; case 2: if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) { + ptr = ctx->ParseMessage(_internal_mutable_input(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // repeated .substrait.SortField sorts = 3; + case 3: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) { ptr -= 1; do { ptr += 1; - ptr = ctx->ParseMessage(_internal_add_inputs(), ptr); + ptr = ctx->ParseMessage(_internal_add_sorts(), ptr); CHK_(ptr); if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr)); - } else - goto handle_unusual; - continue; - // .substrait.SetRel.SetOp op = 3; - case 3: - if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) { - uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); - _internal_set_op(static_cast<::substrait::SetRel_SetOp>(val)); + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr)); } else goto handle_unusual; continue; @@ -10519,9 +10932,9 @@ const char* SetRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::int #undef CHK_ } -uint8_t* SetRel::_InternalSerialize( +uint8_t* SortRel::_InternalSerialize( uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:substrait.SetRel) + // @@protoc_insertion_point(serialize_to_array_start:substrait.SortRel) uint32_t cached_has_bits = 0; (void) cached_has_bits; @@ -10533,19 +10946,20 @@ uint8_t* SetRel::_InternalSerialize( 1, _Internal::common(this), target, stream); } - // repeated .substrait.Rel inputs = 2; - for (unsigned int i = 0, - n = static_cast<unsigned int>(this->_internal_inputs_size()); i < n; i++) { + // .substrait.Rel input = 2; + if (this->_internal_has_input()) { target = stream->EnsureSpace(target); target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(2, this->_internal_inputs(i), target, stream); + InternalWriteMessage( + 2, _Internal::input(this), target, stream); } - // .substrait.SetRel.SetOp op = 3; - if (this->_internal_op() != 0) { + // repeated .substrait.SortField sorts = 3; + for (unsigned int i = 0, + n = static_cast<unsigned int>(this->_internal_sorts_size()); i < n; i++) { target = stream->EnsureSpace(target); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray( - 3, this->_internal_op(), target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(3, this->_internal_sorts(i), target, stream); } // .substrait.extensions.AdvancedExtension advanced_extension = 10; @@ -10560,21 +10974,21 @@ uint8_t* SetRel::_InternalSerialize( target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); } - // @@protoc_insertion_point(serialize_to_array_end:substrait.SetRel) + // @@protoc_insertion_point(serialize_to_array_end:substrait.SortRel) return target; } -size_t SetRel::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:substrait.SetRel) +size_t SortRel::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:substrait.SortRel) size_t total_size = 0; uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - // repeated .substrait.Rel inputs = 2; - total_size += 1UL * this->_internal_inputs_size(); - for (const auto& msg : this->inputs_) { + // repeated .substrait.SortField sorts = 3; + total_size += 1UL * this->_internal_sorts_size(); + for (const auto& msg : this->sorts_) { total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); } @@ -10586,78 +11000,79 @@ size_t SetRel::ByteSizeLong() const { *common_); } - // .substrait.extensions.AdvancedExtension advanced_extension = 10; - if (this->_internal_has_advanced_extension()) { + // .substrait.Rel input = 2; + if (this->_internal_has_input()) { total_size += 1 + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *advanced_extension_); + *input_); } - // .substrait.SetRel.SetOp op = 3; - if (this->_internal_op() != 0) { + // .substrait.extensions.AdvancedExtension advanced_extension = 10; + if (this->_internal_has_advanced_extension()) { total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_op()); + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *advanced_extension_); } return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_); } -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData SetRel::_class_data_ = { +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData SortRel::_class_data_ = { ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck, - SetRel::MergeImpl + SortRel::MergeImpl }; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*SetRel::GetClassData() const { return &_class_data_; } +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*SortRel::GetClassData() const { return &_class_data_; } -void SetRel::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, +void SortRel::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, const ::PROTOBUF_NAMESPACE_ID::Message& from) { - static_cast<SetRel *>(to)->MergeFrom( - static_cast<const SetRel &>(from)); + static_cast<SortRel *>(to)->MergeFrom( + static_cast<const SortRel &>(from)); } -void SetRel::MergeFrom(const SetRel& from) { -// @@protoc_insertion_point(class_specific_merge_from_start:substrait.SetRel) +void SortRel::MergeFrom(const SortRel& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:substrait.SortRel) GOOGLE_DCHECK_NE(&from, this); uint32_t cached_has_bits = 0; (void) cached_has_bits; - inputs_.MergeFrom(from.inputs_); + sorts_.MergeFrom(from.sorts_); if (from._internal_has_common()) { _internal_mutable_common()->::substrait::RelCommon::MergeFrom(from._internal_common()); } + if (from._internal_has_input()) { + _internal_mutable_input()->::substrait::Rel::MergeFrom(from._internal_input()); + } if (from._internal_has_advanced_extension()) { _internal_mutable_advanced_extension()->::substrait::extensions::AdvancedExtension::MergeFrom(from._internal_advanced_extension()); } - if (from._internal_op() != 0) { - _internal_set_op(from._internal_op()); - } _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); } -void SetRel::CopyFrom(const SetRel& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:substrait.SetRel) +void SortRel::CopyFrom(const SortRel& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:substrait.SortRel) if (&from == this) return; Clear(); MergeFrom(from); } -bool SetRel::IsInitialized() const { +bool SortRel::IsInitialized() const { return true; } -void SetRel::InternalSwap(SetRel* other) { +void SortRel::InternalSwap(SortRel* other) { using std::swap; _internal_metadata_.InternalSwap(&other->_internal_metadata_); - inputs_.InternalSwap(&other->inputs_); + sorts_.InternalSwap(&other->sorts_); ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(SetRel, op_) - + sizeof(SetRel::op_) - - PROTOBUF_FIELD_OFFSET(SetRel, common_)>( + PROTOBUF_FIELD_OFFSET(SortRel, advanced_extension_) + + sizeof(SortRel::advanced_extension_) + - PROTOBUF_FIELD_OFFSET(SortRel, common_)>( reinterpret_cast<char*>(&common_), reinterpret_cast<char*>(&other->common_)); } -::PROTOBUF_NAMESPACE_ID::Metadata SetRel::GetMetadata() const { +::PROTOBUF_NAMESPACE_ID::Metadata SortRel::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, file_level_metadata_substrait_2falgebra_2eproto[25]); @@ -10665,41 +11080,46 @@ ::PROTOBUF_NAMESPACE_ID::Metadata SetRel::GetMetadata() const { // =================================================================== -class ExtensionSingleRel::_Internal { +class FilterRel::_Internal { public: - static const ::substrait::RelCommon& common(const ExtensionSingleRel* msg); - static const ::substrait::Rel& input(const ExtensionSingleRel* msg); - static const ::PROTOBUF_NAMESPACE_ID::Any& detail(const ExtensionSingleRel* msg); + static const ::substrait::RelCommon& common(const FilterRel* msg); + static const ::substrait::Rel& input(const FilterRel* msg); + static const ::substrait::Expression& condition(const FilterRel* msg); + static const ::substrait::extensions::AdvancedExtension& advanced_extension(const FilterRel* msg); }; const ::substrait::RelCommon& -ExtensionSingleRel::_Internal::common(const ExtensionSingleRel* msg) { +FilterRel::_Internal::common(const FilterRel* msg) { return *msg->common_; } const ::substrait::Rel& -ExtensionSingleRel::_Internal::input(const ExtensionSingleRel* msg) { +FilterRel::_Internal::input(const FilterRel* msg) { return *msg->input_; } -const ::PROTOBUF_NAMESPACE_ID::Any& -ExtensionSingleRel::_Internal::detail(const ExtensionSingleRel* msg) { - return *msg->detail_; +const ::substrait::Expression& +FilterRel::_Internal::condition(const FilterRel* msg) { + return *msg->condition_; } -void ExtensionSingleRel::clear_detail() { - if (GetArenaForAllocation() == nullptr && detail_ != nullptr) { - delete detail_; - } - detail_ = nullptr; +const ::substrait::extensions::AdvancedExtension& +FilterRel::_Internal::advanced_extension(const FilterRel* msg) { + return *msg->advanced_extension_; } -ExtensionSingleRel::ExtensionSingleRel(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { +void FilterRel::clear_advanced_extension() { + if (GetArenaForAllocation() == nullptr && advanced_extension_ != nullptr) { + delete advanced_extension_; + } + advanced_extension_ = nullptr; +} +FilterRel::FilterRel(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned) + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { SharedCtor(); if (!is_message_owned) { RegisterArenaDtor(arena); } - // @@protoc_insertion_point(arena_constructor:substrait.ExtensionSingleRel) + // @@protoc_insertion_point(arena_constructor:substrait.FilterRel) } -ExtensionSingleRel::ExtensionSingleRel(const ExtensionSingleRel& from) +FilterRel::FilterRel(const FilterRel& from) : ::PROTOBUF_NAMESPACE_ID::Message() { _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); if (from._internal_has_common()) { @@ -10712,47 +11132,53 @@ ExtensionSingleRel::ExtensionSingleRel(const ExtensionSingleRel& from) } else { input_ = nullptr; } - if (from._internal_has_detail()) { - detail_ = new ::PROTOBUF_NAMESPACE_ID::Any(*from.detail_); + if (from._internal_has_condition()) { + condition_ = new ::substrait::Expression(*from.condition_); } else { - detail_ = nullptr; + condition_ = nullptr; } - // @@protoc_insertion_point(copy_constructor:substrait.ExtensionSingleRel) + if (from._internal_has_advanced_extension()) { + advanced_extension_ = new ::substrait::extensions::AdvancedExtension(*from.advanced_extension_); + } else { + advanced_extension_ = nullptr; + } + // @@protoc_insertion_point(copy_constructor:substrait.FilterRel) } -inline void ExtensionSingleRel::SharedCtor() { +inline void FilterRel::SharedCtor() { ::memset(reinterpret_cast<char*>(this) + static_cast<size_t>( reinterpret_cast<char*>(&common_) - reinterpret_cast<char*>(this)), - 0, static_cast<size_t>(reinterpret_cast<char*>(&detail_) - - reinterpret_cast<char*>(&common_)) + sizeof(detail_)); + 0, static_cast<size_t>(reinterpret_cast<char*>(&advanced_extension_) - + reinterpret_cast<char*>(&common_)) + sizeof(advanced_extension_)); } -ExtensionSingleRel::~ExtensionSingleRel() { - // @@protoc_insertion_point(destructor:substrait.ExtensionSingleRel) +FilterRel::~FilterRel() { + // @@protoc_insertion_point(destructor:substrait.FilterRel) if (GetArenaForAllocation() != nullptr) return; SharedDtor(); _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -inline void ExtensionSingleRel::SharedDtor() { +inline void FilterRel::SharedDtor() { GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); if (this != internal_default_instance()) delete common_; if (this != internal_default_instance()) delete input_; - if (this != internal_default_instance()) delete detail_; + if (this != internal_default_instance()) delete condition_; + if (this != internal_default_instance()) delete advanced_extension_; } -void ExtensionSingleRel::ArenaDtor(void* object) { - ExtensionSingleRel* _this = reinterpret_cast< ExtensionSingleRel* >(object); +void FilterRel::ArenaDtor(void* object) { + FilterRel* _this = reinterpret_cast< FilterRel* >(object); (void)_this; } -void ExtensionSingleRel::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { +void FilterRel::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { } -void ExtensionSingleRel::SetCachedSize(int size) const { +void FilterRel::SetCachedSize(int size) const { _cached_size_.Set(size); } -void ExtensionSingleRel::Clear() { -// @@protoc_insertion_point(message_clear_start:substrait.ExtensionSingleRel) +void FilterRel::Clear() { +// @@protoc_insertion_point(message_clear_start:substrait.FilterRel) uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; @@ -10765,14 +11191,18 @@ void ExtensionSingleRel::Clear() { delete input_; } input_ = nullptr; - if (GetArenaForAllocation() == nullptr && detail_ != nullptr) { - delete detail_; + if (GetArenaForAllocation() == nullptr && condition_ != nullptr) { + delete condition_; } - detail_ = nullptr; + condition_ = nullptr; + if (GetArenaForAllocation() == nullptr && advanced_extension_ != nullptr) { + delete advanced_extension_; + } + advanced_extension_ = nullptr; _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -const char* ExtensionSingleRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { +const char* FilterRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure while (!ctx->Done(&ptr)) { uint32_t tag; @@ -10794,10 +11224,18 @@ const char* ExtensionSingleRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMES } else goto handle_unusual; continue; - // .google.protobuf.Any detail = 3; + // .substrait.Expression condition = 3; case 3: if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) { - ptr = ctx->ParseMessage(_internal_mutable_detail(), ptr); + ptr = ctx->ParseMessage(_internal_mutable_condition(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // .substrait.extensions.AdvancedExtension advanced_extension = 10; + case 10: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 82)) { + ptr = ctx->ParseMessage(_internal_mutable_advanced_extension(), ptr); CHK_(ptr); } else goto handle_unusual; @@ -10825,9 +11263,9 @@ const char* ExtensionSingleRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMES #undef CHK_ } -uint8_t* ExtensionSingleRel::_InternalSerialize( +uint8_t* FilterRel::_InternalSerialize( uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:substrait.ExtensionSingleRel) + // @@protoc_insertion_point(serialize_to_array_start:substrait.FilterRel) uint32_t cached_has_bits = 0; (void) cached_has_bits; @@ -10847,24 +11285,32 @@ uint8_t* ExtensionSingleRel::_InternalSerialize( 2, _Internal::input(this), target, stream); } - // .google.protobuf.Any detail = 3; - if (this->_internal_has_detail()) { + // .substrait.Expression condition = 3; + if (this->_internal_has_condition()) { target = stream->EnsureSpace(target); target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: InternalWriteMessage( - 3, _Internal::detail(this), target, stream); + 3, _Internal::condition(this), target, stream); + } + + // .substrait.extensions.AdvancedExtension advanced_extension = 10; + if (this->_internal_has_advanced_extension()) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage( + 10, _Internal::advanced_extension(this), target, stream); } if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); } - // @@protoc_insertion_point(serialize_to_array_end:substrait.ExtensionSingleRel) + // @@protoc_insertion_point(serialize_to_array_end:substrait.FilterRel) return target; } -size_t ExtensionSingleRel::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:substrait.ExtensionSingleRel) +size_t FilterRel::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:substrait.FilterRel) size_t total_size = 0; uint32_t cached_has_bits = 0; @@ -10885,31 +11331,38 @@ size_t ExtensionSingleRel::ByteSizeLong() const { *input_); } - // .google.protobuf.Any detail = 3; - if (this->_internal_has_detail()) { + // .substrait.Expression condition = 3; + if (this->_internal_has_condition()) { total_size += 1 + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *detail_); + *condition_); + } + + // .substrait.extensions.AdvancedExtension advanced_extension = 10; + if (this->_internal_has_advanced_extension()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *advanced_extension_); } return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_); } -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ExtensionSingleRel::_class_data_ = { +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData FilterRel::_class_data_ = { ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck, - ExtensionSingleRel::MergeImpl + FilterRel::MergeImpl }; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ExtensionSingleRel::GetClassData() const { return &_class_data_; } +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*FilterRel::GetClassData() const { return &_class_data_; } -void ExtensionSingleRel::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, +void FilterRel::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, const ::PROTOBUF_NAMESPACE_ID::Message& from) { - static_cast<ExtensionSingleRel *>(to)->MergeFrom( - static_cast<const ExtensionSingleRel &>(from)); + static_cast<FilterRel *>(to)->MergeFrom( + static_cast<const FilterRel &>(from)); } -void ExtensionSingleRel::MergeFrom(const ExtensionSingleRel& from) { -// @@protoc_insertion_point(class_specific_merge_from_start:substrait.ExtensionSingleRel) +void FilterRel::MergeFrom(const FilterRel& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:substrait.FilterRel) GOOGLE_DCHECK_NE(&from, this); uint32_t cached_has_bits = 0; (void) cached_has_bits; @@ -10920,35 +11373,38 @@ void ExtensionSingleRel::MergeFrom(const ExtensionSingleRel& from) { if (from._internal_has_input()) { _internal_mutable_input()->::substrait::Rel::MergeFrom(from._internal_input()); } - if (from._internal_has_detail()) { - _internal_mutable_detail()->::PROTOBUF_NAMESPACE_ID::Any::MergeFrom(from._internal_detail()); + if (from._internal_has_condition()) { + _internal_mutable_condition()->::substrait::Expression::MergeFrom(from._internal_condition()); + } + if (from._internal_has_advanced_extension()) { + _internal_mutable_advanced_extension()->::substrait::extensions::AdvancedExtension::MergeFrom(from._internal_advanced_extension()); } _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); } -void ExtensionSingleRel::CopyFrom(const ExtensionSingleRel& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:substrait.ExtensionSingleRel) +void FilterRel::CopyFrom(const FilterRel& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:substrait.FilterRel) if (&from == this) return; Clear(); MergeFrom(from); } -bool ExtensionSingleRel::IsInitialized() const { +bool FilterRel::IsInitialized() const { return true; } -void ExtensionSingleRel::InternalSwap(ExtensionSingleRel* other) { +void FilterRel::InternalSwap(FilterRel* other) { using std::swap; _internal_metadata_.InternalSwap(&other->_internal_metadata_); ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(ExtensionSingleRel, detail_) - + sizeof(ExtensionSingleRel::detail_) - - PROTOBUF_FIELD_OFFSET(ExtensionSingleRel, common_)>( + PROTOBUF_FIELD_OFFSET(FilterRel, advanced_extension_) + + sizeof(FilterRel::advanced_extension_) + - PROTOBUF_FIELD_OFFSET(FilterRel, common_)>( reinterpret_cast<char*>(&common_), reinterpret_cast<char*>(&other->common_)); } -::PROTOBUF_NAMESPACE_ID::Metadata ExtensionSingleRel::GetMetadata() const { +::PROTOBUF_NAMESPACE_ID::Metadata FilterRel::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, file_level_metadata_substrait_2falgebra_2eproto[26]); @@ -10956,99 +11412,104 @@ ::PROTOBUF_NAMESPACE_ID::Metadata ExtensionSingleRel::GetMetadata() const { // =================================================================== -class ExtensionLeafRel::_Internal { +class SetRel::_Internal { public: - static const ::substrait::RelCommon& common(const ExtensionLeafRel* msg); - static const ::PROTOBUF_NAMESPACE_ID::Any& detail(const ExtensionLeafRel* msg); + static const ::substrait::RelCommon& common(const SetRel* msg); + static const ::substrait::extensions::AdvancedExtension& advanced_extension(const SetRel* msg); }; const ::substrait::RelCommon& -ExtensionLeafRel::_Internal::common(const ExtensionLeafRel* msg) { +SetRel::_Internal::common(const SetRel* msg) { return *msg->common_; } -const ::PROTOBUF_NAMESPACE_ID::Any& -ExtensionLeafRel::_Internal::detail(const ExtensionLeafRel* msg) { - return *msg->detail_; +const ::substrait::extensions::AdvancedExtension& +SetRel::_Internal::advanced_extension(const SetRel* msg) { + return *msg->advanced_extension_; } -void ExtensionLeafRel::clear_detail() { - if (GetArenaForAllocation() == nullptr && detail_ != nullptr) { - delete detail_; +void SetRel::clear_advanced_extension() { + if (GetArenaForAllocation() == nullptr && advanced_extension_ != nullptr) { + delete advanced_extension_; } - detail_ = nullptr; + advanced_extension_ = nullptr; } -ExtensionLeafRel::ExtensionLeafRel(::PROTOBUF_NAMESPACE_ID::Arena* arena, +SetRel::SetRel(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned), + inputs_(arena) { SharedCtor(); if (!is_message_owned) { RegisterArenaDtor(arena); } - // @@protoc_insertion_point(arena_constructor:substrait.ExtensionLeafRel) + // @@protoc_insertion_point(arena_constructor:substrait.SetRel) } -ExtensionLeafRel::ExtensionLeafRel(const ExtensionLeafRel& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { +SetRel::SetRel(const SetRel& from) + : ::PROTOBUF_NAMESPACE_ID::Message(), + inputs_(from.inputs_) { _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); if (from._internal_has_common()) { common_ = new ::substrait::RelCommon(*from.common_); } else { common_ = nullptr; } - if (from._internal_has_detail()) { - detail_ = new ::PROTOBUF_NAMESPACE_ID::Any(*from.detail_); + if (from._internal_has_advanced_extension()) { + advanced_extension_ = new ::substrait::extensions::AdvancedExtension(*from.advanced_extension_); } else { - detail_ = nullptr; + advanced_extension_ = nullptr; } - // @@protoc_insertion_point(copy_constructor:substrait.ExtensionLeafRel) + op_ = from.op_; + // @@protoc_insertion_point(copy_constructor:substrait.SetRel) } -inline void ExtensionLeafRel::SharedCtor() { +inline void SetRel::SharedCtor() { ::memset(reinterpret_cast<char*>(this) + static_cast<size_t>( reinterpret_cast<char*>(&common_) - reinterpret_cast<char*>(this)), - 0, static_cast<size_t>(reinterpret_cast<char*>(&detail_) - - reinterpret_cast<char*>(&common_)) + sizeof(detail_)); + 0, static_cast<size_t>(reinterpret_cast<char*>(&op_) - + reinterpret_cast<char*>(&common_)) + sizeof(op_)); } -ExtensionLeafRel::~ExtensionLeafRel() { - // @@protoc_insertion_point(destructor:substrait.ExtensionLeafRel) +SetRel::~SetRel() { + // @@protoc_insertion_point(destructor:substrait.SetRel) if (GetArenaForAllocation() != nullptr) return; SharedDtor(); _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -inline void ExtensionLeafRel::SharedDtor() { +inline void SetRel::SharedDtor() { GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); if (this != internal_default_instance()) delete common_; - if (this != internal_default_instance()) delete detail_; + if (this != internal_default_instance()) delete advanced_extension_; } -void ExtensionLeafRel::ArenaDtor(void* object) { - ExtensionLeafRel* _this = reinterpret_cast< ExtensionLeafRel* >(object); +void SetRel::ArenaDtor(void* object) { + SetRel* _this = reinterpret_cast< SetRel* >(object); (void)_this; } -void ExtensionLeafRel::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { +void SetRel::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { } -void ExtensionLeafRel::SetCachedSize(int size) const { +void SetRel::SetCachedSize(int size) const { _cached_size_.Set(size); } -void ExtensionLeafRel::Clear() { -// @@protoc_insertion_point(message_clear_start:substrait.ExtensionLeafRel) +void SetRel::Clear() { +// @@protoc_insertion_point(message_clear_start:substrait.SetRel) uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; + inputs_.Clear(); if (GetArenaForAllocation() == nullptr && common_ != nullptr) { delete common_; } common_ = nullptr; - if (GetArenaForAllocation() == nullptr && detail_ != nullptr) { - delete detail_; + if (GetArenaForAllocation() == nullptr && advanced_extension_ != nullptr) { + delete advanced_extension_; } - detail_ = nullptr; + advanced_extension_ = nullptr; + op_ = 0; _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -const char* ExtensionLeafRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { +const char* SetRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure while (!ctx->Done(&ptr)) { uint32_t tag; @@ -11062,10 +11523,32 @@ const char* ExtensionLeafRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPA } else goto handle_unusual; continue; - // .google.protobuf.Any detail = 2; + // repeated .substrait.Rel inputs = 2; case 2: if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) { - ptr = ctx->ParseMessage(_internal_mutable_detail(), ptr); + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_inputs(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr)); + } else + goto handle_unusual; + continue; + // .substrait.SetRel.SetOp op = 3; + case 3: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) { + uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + CHK_(ptr); + _internal_set_op(static_cast<::substrait::SetRel_SetOp>(val)); + } else + goto handle_unusual; + continue; + // .substrait.extensions.AdvancedExtension advanced_extension = 10; + case 10: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 82)) { + ptr = ctx->ParseMessage(_internal_mutable_advanced_extension(), ptr); CHK_(ptr); } else goto handle_unusual; @@ -11093,9 +11576,9 @@ const char* ExtensionLeafRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPA #undef CHK_ } -uint8_t* ExtensionLeafRel::_InternalSerialize( +uint8_t* SetRel::_InternalSerialize( uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:substrait.ExtensionLeafRel) + // @@protoc_insertion_point(serialize_to_array_start:substrait.SetRel) uint32_t cached_has_bits = 0; (void) cached_has_bits; @@ -11107,30 +11590,52 @@ uint8_t* ExtensionLeafRel::_InternalSerialize( 1, _Internal::common(this), target, stream); } - // .google.protobuf.Any detail = 2; - if (this->_internal_has_detail()) { + // repeated .substrait.Rel inputs = 2; + for (unsigned int i = 0, + n = static_cast<unsigned int>(this->_internal_inputs_size()); i < n; i++) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(2, this->_internal_inputs(i), target, stream); + } + + // .substrait.SetRel.SetOp op = 3; + if (this->_internal_op() != 0) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray( + 3, this->_internal_op(), target); + } + + // .substrait.extensions.AdvancedExtension advanced_extension = 10; + if (this->_internal_has_advanced_extension()) { target = stream->EnsureSpace(target); target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: InternalWriteMessage( - 2, _Internal::detail(this), target, stream); + 10, _Internal::advanced_extension(this), target, stream); } if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); } - // @@protoc_insertion_point(serialize_to_array_end:substrait.ExtensionLeafRel) + // @@protoc_insertion_point(serialize_to_array_end:substrait.SetRel) return target; } -size_t ExtensionLeafRel::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:substrait.ExtensionLeafRel) +size_t SetRel::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:substrait.SetRel) size_t total_size = 0; uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; + // repeated .substrait.Rel inputs = 2; + total_size += 1UL * this->_internal_inputs_size(); + for (const auto& msg : this->inputs_) { + total_size += + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); + } + // .substrait.RelCommon common = 1; if (this->_internal_has_common()) { total_size += 1 + @@ -11138,67 +11643,78 @@ size_t ExtensionLeafRel::ByteSizeLong() const { *common_); } - // .google.protobuf.Any detail = 2; - if (this->_internal_has_detail()) { + // .substrait.extensions.AdvancedExtension advanced_extension = 10; + if (this->_internal_has_advanced_extension()) { total_size += 1 + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *detail_); + *advanced_extension_); + } + + // .substrait.SetRel.SetOp op = 3; + if (this->_internal_op() != 0) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_op()); } return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_); } -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ExtensionLeafRel::_class_data_ = { +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData SetRel::_class_data_ = { ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck, - ExtensionLeafRel::MergeImpl + SetRel::MergeImpl }; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ExtensionLeafRel::GetClassData() const { return &_class_data_; } +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*SetRel::GetClassData() const { return &_class_data_; } -void ExtensionLeafRel::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, +void SetRel::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, const ::PROTOBUF_NAMESPACE_ID::Message& from) { - static_cast<ExtensionLeafRel *>(to)->MergeFrom( - static_cast<const ExtensionLeafRel &>(from)); + static_cast<SetRel *>(to)->MergeFrom( + static_cast<const SetRel &>(from)); } -void ExtensionLeafRel::MergeFrom(const ExtensionLeafRel& from) { -// @@protoc_insertion_point(class_specific_merge_from_start:substrait.ExtensionLeafRel) +void SetRel::MergeFrom(const SetRel& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:substrait.SetRel) GOOGLE_DCHECK_NE(&from, this); uint32_t cached_has_bits = 0; (void) cached_has_bits; + inputs_.MergeFrom(from.inputs_); if (from._internal_has_common()) { _internal_mutable_common()->::substrait::RelCommon::MergeFrom(from._internal_common()); } - if (from._internal_has_detail()) { - _internal_mutable_detail()->::PROTOBUF_NAMESPACE_ID::Any::MergeFrom(from._internal_detail()); + if (from._internal_has_advanced_extension()) { + _internal_mutable_advanced_extension()->::substrait::extensions::AdvancedExtension::MergeFrom(from._internal_advanced_extension()); + } + if (from._internal_op() != 0) { + _internal_set_op(from._internal_op()); } _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); } -void ExtensionLeafRel::CopyFrom(const ExtensionLeafRel& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:substrait.ExtensionLeafRel) +void SetRel::CopyFrom(const SetRel& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:substrait.SetRel) if (&from == this) return; Clear(); MergeFrom(from); } -bool ExtensionLeafRel::IsInitialized() const { +bool SetRel::IsInitialized() const { return true; } -void ExtensionLeafRel::InternalSwap(ExtensionLeafRel* other) { +void SetRel::InternalSwap(SetRel* other) { using std::swap; _internal_metadata_.InternalSwap(&other->_internal_metadata_); + inputs_.InternalSwap(&other->inputs_); ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(ExtensionLeafRel, detail_) - + sizeof(ExtensionLeafRel::detail_) - - PROTOBUF_FIELD_OFFSET(ExtensionLeafRel, common_)>( + PROTOBUF_FIELD_OFFSET(SetRel, op_) + + sizeof(SetRel::op_) + - PROTOBUF_FIELD_OFFSET(SetRel, common_)>( reinterpret_cast<char*>(&common_), reinterpret_cast<char*>(&other->common_)); } -::PROTOBUF_NAMESPACE_ID::Metadata ExtensionLeafRel::GetMetadata() const { +::PROTOBUF_NAMESPACE_ID::Metadata SetRel::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, file_level_metadata_substrait_2falgebra_2eproto[27]); @@ -11206,94 +11722,106 @@ ::PROTOBUF_NAMESPACE_ID::Metadata ExtensionLeafRel::GetMetadata() const { // =================================================================== -class ExtensionMultiRel::_Internal { +class ExtensionSingleRel::_Internal { public: - static const ::substrait::RelCommon& common(const ExtensionMultiRel* msg); - static const ::PROTOBUF_NAMESPACE_ID::Any& detail(const ExtensionMultiRel* msg); + static const ::substrait::RelCommon& common(const ExtensionSingleRel* msg); + static const ::substrait::Rel& input(const ExtensionSingleRel* msg); + static const ::PROTOBUF_NAMESPACE_ID::Any& detail(const ExtensionSingleRel* msg); }; const ::substrait::RelCommon& -ExtensionMultiRel::_Internal::common(const ExtensionMultiRel* msg) { +ExtensionSingleRel::_Internal::common(const ExtensionSingleRel* msg) { return *msg->common_; } +const ::substrait::Rel& +ExtensionSingleRel::_Internal::input(const ExtensionSingleRel* msg) { + return *msg->input_; +} const ::PROTOBUF_NAMESPACE_ID::Any& -ExtensionMultiRel::_Internal::detail(const ExtensionMultiRel* msg) { +ExtensionSingleRel::_Internal::detail(const ExtensionSingleRel* msg) { return *msg->detail_; } -void ExtensionMultiRel::clear_detail() { +void ExtensionSingleRel::clear_detail() { if (GetArenaForAllocation() == nullptr && detail_ != nullptr) { delete detail_; } detail_ = nullptr; } -ExtensionMultiRel::ExtensionMultiRel(::PROTOBUF_NAMESPACE_ID::Arena* arena, +ExtensionSingleRel::ExtensionSingleRel(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned), - inputs_(arena) { + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { SharedCtor(); if (!is_message_owned) { RegisterArenaDtor(arena); } - // @@protoc_insertion_point(arena_constructor:substrait.ExtensionMultiRel) + // @@protoc_insertion_point(arena_constructor:substrait.ExtensionSingleRel) } -ExtensionMultiRel::ExtensionMultiRel(const ExtensionMultiRel& from) - : ::PROTOBUF_NAMESPACE_ID::Message(), - inputs_(from.inputs_) { +ExtensionSingleRel::ExtensionSingleRel(const ExtensionSingleRel& from) + : ::PROTOBUF_NAMESPACE_ID::Message() { _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); if (from._internal_has_common()) { common_ = new ::substrait::RelCommon(*from.common_); } else { common_ = nullptr; } + if (from._internal_has_input()) { + input_ = new ::substrait::Rel(*from.input_); + } else { + input_ = nullptr; + } if (from._internal_has_detail()) { detail_ = new ::PROTOBUF_NAMESPACE_ID::Any(*from.detail_); } else { detail_ = nullptr; } - // @@protoc_insertion_point(copy_constructor:substrait.ExtensionMultiRel) + // @@protoc_insertion_point(copy_constructor:substrait.ExtensionSingleRel) } -inline void ExtensionMultiRel::SharedCtor() { +inline void ExtensionSingleRel::SharedCtor() { ::memset(reinterpret_cast<char*>(this) + static_cast<size_t>( reinterpret_cast<char*>(&common_) - reinterpret_cast<char*>(this)), 0, static_cast<size_t>(reinterpret_cast<char*>(&detail_) - reinterpret_cast<char*>(&common_)) + sizeof(detail_)); } -ExtensionMultiRel::~ExtensionMultiRel() { - // @@protoc_insertion_point(destructor:substrait.ExtensionMultiRel) +ExtensionSingleRel::~ExtensionSingleRel() { + // @@protoc_insertion_point(destructor:substrait.ExtensionSingleRel) if (GetArenaForAllocation() != nullptr) return; SharedDtor(); _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -inline void ExtensionMultiRel::SharedDtor() { +inline void ExtensionSingleRel::SharedDtor() { GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); if (this != internal_default_instance()) delete common_; + if (this != internal_default_instance()) delete input_; if (this != internal_default_instance()) delete detail_; } -void ExtensionMultiRel::ArenaDtor(void* object) { - ExtensionMultiRel* _this = reinterpret_cast< ExtensionMultiRel* >(object); +void ExtensionSingleRel::ArenaDtor(void* object) { + ExtensionSingleRel* _this = reinterpret_cast< ExtensionSingleRel* >(object); (void)_this; } -void ExtensionMultiRel::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { +void ExtensionSingleRel::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { } -void ExtensionMultiRel::SetCachedSize(int size) const { +void ExtensionSingleRel::SetCachedSize(int size) const { _cached_size_.Set(size); } -void ExtensionMultiRel::Clear() { -// @@protoc_insertion_point(message_clear_start:substrait.ExtensionMultiRel) +void ExtensionSingleRel::Clear() { +// @@protoc_insertion_point(message_clear_start:substrait.ExtensionSingleRel) uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - inputs_.Clear(); if (GetArenaForAllocation() == nullptr && common_ != nullptr) { delete common_; } common_ = nullptr; + if (GetArenaForAllocation() == nullptr && input_ != nullptr) { + delete input_; + } + input_ = nullptr; if (GetArenaForAllocation() == nullptr && detail_ != nullptr) { delete detail_; } @@ -11301,7 +11829,7 @@ void ExtensionMultiRel::Clear() { _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -const char* ExtensionMultiRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { +const char* ExtensionSingleRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure while (!ctx->Done(&ptr)) { uint32_t tag; @@ -11315,16 +11843,11 @@ const char* ExtensionMultiRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESP } else goto handle_unusual; continue; - // repeated .substrait.Rel inputs = 2; + // .substrait.Rel input = 2; case 2: if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) { - ptr -= 1; - do { - ptr += 1; - ptr = ctx->ParseMessage(_internal_add_inputs(), ptr); - CHK_(ptr); - if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr)); + ptr = ctx->ParseMessage(_internal_mutable_input(), ptr); + CHK_(ptr); } else goto handle_unusual; continue; @@ -11359,9 +11882,9 @@ const char* ExtensionMultiRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESP #undef CHK_ } -uint8_t* ExtensionMultiRel::_InternalSerialize( +uint8_t* ExtensionSingleRel::_InternalSerialize( uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:substrait.ExtensionMultiRel) + // @@protoc_insertion_point(serialize_to_array_start:substrait.ExtensionSingleRel) uint32_t cached_has_bits = 0; (void) cached_has_bits; @@ -11373,12 +11896,12 @@ uint8_t* ExtensionMultiRel::_InternalSerialize( 1, _Internal::common(this), target, stream); } - // repeated .substrait.Rel inputs = 2; - for (unsigned int i = 0, - n = static_cast<unsigned int>(this->_internal_inputs_size()); i < n; i++) { + // .substrait.Rel input = 2; + if (this->_internal_has_input()) { target = stream->EnsureSpace(target); target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(2, this->_internal_inputs(i), target, stream); + InternalWriteMessage( + 2, _Internal::input(this), target, stream); } // .google.protobuf.Any detail = 3; @@ -11393,25 +11916,18 @@ uint8_t* ExtensionMultiRel::_InternalSerialize( target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); } - // @@protoc_insertion_point(serialize_to_array_end:substrait.ExtensionMultiRel) + // @@protoc_insertion_point(serialize_to_array_end:substrait.ExtensionSingleRel) return target; } -size_t ExtensionMultiRel::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:substrait.ExtensionMultiRel) +size_t ExtensionSingleRel::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:substrait.ExtensionSingleRel) size_t total_size = 0; uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - // repeated .substrait.Rel inputs = 2; - total_size += 1UL * this->_internal_inputs_size(); - for (const auto& msg : this->inputs_) { - total_size += - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); - } - // .substrait.RelCommon common = 1; if (this->_internal_has_common()) { total_size += 1 + @@ -11419,6 +11935,13 @@ size_t ExtensionMultiRel::ByteSizeLong() const { *common_); } + // .substrait.Rel input = 2; + if (this->_internal_has_input()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *input_); + } + // .google.protobuf.Any detail = 3; if (this->_internal_has_detail()) { total_size += 1 + @@ -11429,59 +11952,60 @@ size_t ExtensionMultiRel::ByteSizeLong() const { return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_); } -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ExtensionMultiRel::_class_data_ = { +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ExtensionSingleRel::_class_data_ = { ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck, - ExtensionMultiRel::MergeImpl + ExtensionSingleRel::MergeImpl }; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ExtensionMultiRel::GetClassData() const { return &_class_data_; } +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ExtensionSingleRel::GetClassData() const { return &_class_data_; } -void ExtensionMultiRel::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, +void ExtensionSingleRel::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, const ::PROTOBUF_NAMESPACE_ID::Message& from) { - static_cast<ExtensionMultiRel *>(to)->MergeFrom( - static_cast<const ExtensionMultiRel &>(from)); + static_cast<ExtensionSingleRel *>(to)->MergeFrom( + static_cast<const ExtensionSingleRel &>(from)); } -void ExtensionMultiRel::MergeFrom(const ExtensionMultiRel& from) { -// @@protoc_insertion_point(class_specific_merge_from_start:substrait.ExtensionMultiRel) +void ExtensionSingleRel::MergeFrom(const ExtensionSingleRel& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:substrait.ExtensionSingleRel) GOOGLE_DCHECK_NE(&from, this); uint32_t cached_has_bits = 0; (void) cached_has_bits; - inputs_.MergeFrom(from.inputs_); if (from._internal_has_common()) { _internal_mutable_common()->::substrait::RelCommon::MergeFrom(from._internal_common()); } + if (from._internal_has_input()) { + _internal_mutable_input()->::substrait::Rel::MergeFrom(from._internal_input()); + } if (from._internal_has_detail()) { _internal_mutable_detail()->::PROTOBUF_NAMESPACE_ID::Any::MergeFrom(from._internal_detail()); } _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); } -void ExtensionMultiRel::CopyFrom(const ExtensionMultiRel& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:substrait.ExtensionMultiRel) +void ExtensionSingleRel::CopyFrom(const ExtensionSingleRel& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:substrait.ExtensionSingleRel) if (&from == this) return; Clear(); MergeFrom(from); } -bool ExtensionMultiRel::IsInitialized() const { +bool ExtensionSingleRel::IsInitialized() const { return true; } -void ExtensionMultiRel::InternalSwap(ExtensionMultiRel* other) { +void ExtensionSingleRel::InternalSwap(ExtensionSingleRel* other) { using std::swap; _internal_metadata_.InternalSwap(&other->_internal_metadata_); - inputs_.InternalSwap(&other->inputs_); ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(ExtensionMultiRel, detail_) - + sizeof(ExtensionMultiRel::detail_) - - PROTOBUF_FIELD_OFFSET(ExtensionMultiRel, common_)>( + PROTOBUF_FIELD_OFFSET(ExtensionSingleRel, detail_) + + sizeof(ExtensionSingleRel::detail_) + - PROTOBUF_FIELD_OFFSET(ExtensionSingleRel, common_)>( reinterpret_cast<char*>(&common_), reinterpret_cast<char*>(&other->common_)); } -::PROTOBUF_NAMESPACE_ID::Metadata ExtensionMultiRel::GetMetadata() const { +::PROTOBUF_NAMESPACE_ID::Metadata ExtensionSingleRel::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, file_level_metadata_substrait_2falgebra_2eproto[28]); @@ -11489,77 +12013,117 @@ ::PROTOBUF_NAMESPACE_ID::Metadata ExtensionMultiRel::GetMetadata() const { // =================================================================== -class ExchangeRel_ScatterFields::_Internal { +class ExtensionLeafRel::_Internal { public: + static const ::substrait::RelCommon& common(const ExtensionLeafRel* msg); + static const ::PROTOBUF_NAMESPACE_ID::Any& detail(const ExtensionLeafRel* msg); }; -ExchangeRel_ScatterFields::ExchangeRel_ScatterFields(::PROTOBUF_NAMESPACE_ID::Arena* arena, - bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned), - fields_(arena) { - SharedCtor(); - if (!is_message_owned) { - RegisterArenaDtor(arena); - } - // @@protoc_insertion_point(arena_constructor:substrait.ExchangeRel.ScatterFields) +const ::substrait::RelCommon& +ExtensionLeafRel::_Internal::common(const ExtensionLeafRel* msg) { + return *msg->common_; } -ExchangeRel_ScatterFields::ExchangeRel_ScatterFields(const ExchangeRel_ScatterFields& from) - : ::PROTOBUF_NAMESPACE_ID::Message(), - fields_(from.fields_) { +const ::PROTOBUF_NAMESPACE_ID::Any& +ExtensionLeafRel::_Internal::detail(const ExtensionLeafRel* msg) { + return *msg->detail_; +} +void ExtensionLeafRel::clear_detail() { + if (GetArenaForAllocation() == nullptr && detail_ != nullptr) { + delete detail_; + } + detail_ = nullptr; +} +ExtensionLeafRel::ExtensionLeafRel(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned) + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + SharedCtor(); + if (!is_message_owned) { + RegisterArenaDtor(arena); + } + // @@protoc_insertion_point(arena_constructor:substrait.ExtensionLeafRel) +} +ExtensionLeafRel::ExtensionLeafRel(const ExtensionLeafRel& from) + : ::PROTOBUF_NAMESPACE_ID::Message() { _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - // @@protoc_insertion_point(copy_constructor:substrait.ExchangeRel.ScatterFields) + if (from._internal_has_common()) { + common_ = new ::substrait::RelCommon(*from.common_); + } else { + common_ = nullptr; + } + if (from._internal_has_detail()) { + detail_ = new ::PROTOBUF_NAMESPACE_ID::Any(*from.detail_); + } else { + detail_ = nullptr; + } + // @@protoc_insertion_point(copy_constructor:substrait.ExtensionLeafRel) } -inline void ExchangeRel_ScatterFields::SharedCtor() { +inline void ExtensionLeafRel::SharedCtor() { +::memset(reinterpret_cast<char*>(this) + static_cast<size_t>( + reinterpret_cast<char*>(&common_) - reinterpret_cast<char*>(this)), + 0, static_cast<size_t>(reinterpret_cast<char*>(&detail_) - + reinterpret_cast<char*>(&common_)) + sizeof(detail_)); } -ExchangeRel_ScatterFields::~ExchangeRel_ScatterFields() { - // @@protoc_insertion_point(destructor:substrait.ExchangeRel.ScatterFields) +ExtensionLeafRel::~ExtensionLeafRel() { + // @@protoc_insertion_point(destructor:substrait.ExtensionLeafRel) if (GetArenaForAllocation() != nullptr) return; SharedDtor(); _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -inline void ExchangeRel_ScatterFields::SharedDtor() { +inline void ExtensionLeafRel::SharedDtor() { GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); + if (this != internal_default_instance()) delete common_; + if (this != internal_default_instance()) delete detail_; } -void ExchangeRel_ScatterFields::ArenaDtor(void* object) { - ExchangeRel_ScatterFields* _this = reinterpret_cast< ExchangeRel_ScatterFields* >(object); +void ExtensionLeafRel::ArenaDtor(void* object) { + ExtensionLeafRel* _this = reinterpret_cast< ExtensionLeafRel* >(object); (void)_this; } -void ExchangeRel_ScatterFields::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { +void ExtensionLeafRel::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { } -void ExchangeRel_ScatterFields::SetCachedSize(int size) const { +void ExtensionLeafRel::SetCachedSize(int size) const { _cached_size_.Set(size); } -void ExchangeRel_ScatterFields::Clear() { -// @@protoc_insertion_point(message_clear_start:substrait.ExchangeRel.ScatterFields) +void ExtensionLeafRel::Clear() { +// @@protoc_insertion_point(message_clear_start:substrait.ExtensionLeafRel) uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - fields_.Clear(); + if (GetArenaForAllocation() == nullptr && common_ != nullptr) { + delete common_; + } + common_ = nullptr; + if (GetArenaForAllocation() == nullptr && detail_ != nullptr) { + delete detail_; + } + detail_ = nullptr; _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -const char* ExchangeRel_ScatterFields::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { +const char* ExtensionLeafRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure while (!ctx->Done(&ptr)) { uint32_t tag; ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag); switch (tag >> 3) { - // repeated .substrait.Expression.FieldReference fields = 1; + // .substrait.RelCommon common = 1; case 1: if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) { - ptr -= 1; - do { - ptr += 1; - ptr = ctx->ParseMessage(_internal_add_fields(), ptr); - CHK_(ptr); - if (!ctx->DataAvailable(ptr)) break; - } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr)); + ptr = ctx->ParseMessage(_internal_mutable_common(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // .google.protobuf.Any detail = 2; + case 2: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) { + ptr = ctx->ParseMessage(_internal_mutable_detail(), ptr); + CHK_(ptr); } else goto handle_unusual; continue; @@ -11586,87 +12150,112 @@ const char* ExchangeRel_ScatterFields::_InternalParse(const char* ptr, ::PROTOBU #undef CHK_ } -uint8_t* ExchangeRel_ScatterFields::_InternalSerialize( +uint8_t* ExtensionLeafRel::_InternalSerialize( uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:substrait.ExchangeRel.ScatterFields) + // @@protoc_insertion_point(serialize_to_array_start:substrait.ExtensionLeafRel) uint32_t cached_has_bits = 0; (void) cached_has_bits; - // repeated .substrait.Expression.FieldReference fields = 1; - for (unsigned int i = 0, - n = static_cast<unsigned int>(this->_internal_fields_size()); i < n; i++) { + // .substrait.RelCommon common = 1; + if (this->_internal_has_common()) { target = stream->EnsureSpace(target); target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(1, this->_internal_fields(i), target, stream); + InternalWriteMessage( + 1, _Internal::common(this), target, stream); + } + + // .google.protobuf.Any detail = 2; + if (this->_internal_has_detail()) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage( + 2, _Internal::detail(this), target, stream); } if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); } - // @@protoc_insertion_point(serialize_to_array_end:substrait.ExchangeRel.ScatterFields) + // @@protoc_insertion_point(serialize_to_array_end:substrait.ExtensionLeafRel) return target; } -size_t ExchangeRel_ScatterFields::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:substrait.ExchangeRel.ScatterFields) +size_t ExtensionLeafRel::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:substrait.ExtensionLeafRel) size_t total_size = 0; uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - // repeated .substrait.Expression.FieldReference fields = 1; - total_size += 1UL * this->_internal_fields_size(); - for (const auto& msg : this->fields_) { - total_size += - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); + // .substrait.RelCommon common = 1; + if (this->_internal_has_common()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *common_); + } + + // .google.protobuf.Any detail = 2; + if (this->_internal_has_detail()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *detail_); } return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_); } -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ExchangeRel_ScatterFields::_class_data_ = { +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ExtensionLeafRel::_class_data_ = { ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck, - ExchangeRel_ScatterFields::MergeImpl + ExtensionLeafRel::MergeImpl }; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ExchangeRel_ScatterFields::GetClassData() const { return &_class_data_; } +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ExtensionLeafRel::GetClassData() const { return &_class_data_; } -void ExchangeRel_ScatterFields::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, +void ExtensionLeafRel::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, const ::PROTOBUF_NAMESPACE_ID::Message& from) { - static_cast<ExchangeRel_ScatterFields *>(to)->MergeFrom( - static_cast<const ExchangeRel_ScatterFields &>(from)); + static_cast<ExtensionLeafRel *>(to)->MergeFrom( + static_cast<const ExtensionLeafRel &>(from)); } -void ExchangeRel_ScatterFields::MergeFrom(const ExchangeRel_ScatterFields& from) { -// @@protoc_insertion_point(class_specific_merge_from_start:substrait.ExchangeRel.ScatterFields) +void ExtensionLeafRel::MergeFrom(const ExtensionLeafRel& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:substrait.ExtensionLeafRel) GOOGLE_DCHECK_NE(&from, this); uint32_t cached_has_bits = 0; (void) cached_has_bits; - fields_.MergeFrom(from.fields_); + if (from._internal_has_common()) { + _internal_mutable_common()->::substrait::RelCommon::MergeFrom(from._internal_common()); + } + if (from._internal_has_detail()) { + _internal_mutable_detail()->::PROTOBUF_NAMESPACE_ID::Any::MergeFrom(from._internal_detail()); + } _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); } -void ExchangeRel_ScatterFields::CopyFrom(const ExchangeRel_ScatterFields& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:substrait.ExchangeRel.ScatterFields) +void ExtensionLeafRel::CopyFrom(const ExtensionLeafRel& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:substrait.ExtensionLeafRel) if (&from == this) return; Clear(); MergeFrom(from); } -bool ExchangeRel_ScatterFields::IsInitialized() const { +bool ExtensionLeafRel::IsInitialized() const { return true; } -void ExchangeRel_ScatterFields::InternalSwap(ExchangeRel_ScatterFields* other) { +void ExtensionLeafRel::InternalSwap(ExtensionLeafRel* other) { using std::swap; _internal_metadata_.InternalSwap(&other->_internal_metadata_); - fields_.InternalSwap(&other->fields_); + ::PROTOBUF_NAMESPACE_ID::internal::memswap< + PROTOBUF_FIELD_OFFSET(ExtensionLeafRel, detail_) + + sizeof(ExtensionLeafRel::detail_) + - PROTOBUF_FIELD_OFFSET(ExtensionLeafRel, common_)>( + reinterpret_cast<char*>(&common_), + reinterpret_cast<char*>(&other->common_)); } -::PROTOBUF_NAMESPACE_ID::Metadata ExchangeRel_ScatterFields::GetMetadata() const { +::PROTOBUF_NAMESPACE_ID::Metadata ExtensionLeafRel::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, file_level_metadata_substrait_2falgebra_2eproto[29]); @@ -11674,84 +12263,132 @@ ::PROTOBUF_NAMESPACE_ID::Metadata ExchangeRel_ScatterFields::GetMetadata() const // =================================================================== -class ExchangeRel_SingleBucketExpression::_Internal { +class ExtensionMultiRel::_Internal { public: - static const ::substrait::Expression& expression(const ExchangeRel_SingleBucketExpression* msg); + static const ::substrait::RelCommon& common(const ExtensionMultiRel* msg); + static const ::PROTOBUF_NAMESPACE_ID::Any& detail(const ExtensionMultiRel* msg); }; -const ::substrait::Expression& -ExchangeRel_SingleBucketExpression::_Internal::expression(const ExchangeRel_SingleBucketExpression* msg) { - return *msg->expression_; +const ::substrait::RelCommon& +ExtensionMultiRel::_Internal::common(const ExtensionMultiRel* msg) { + return *msg->common_; } -ExchangeRel_SingleBucketExpression::ExchangeRel_SingleBucketExpression(::PROTOBUF_NAMESPACE_ID::Arena* arena, +const ::PROTOBUF_NAMESPACE_ID::Any& +ExtensionMultiRel::_Internal::detail(const ExtensionMultiRel* msg) { + return *msg->detail_; +} +void ExtensionMultiRel::clear_detail() { + if (GetArenaForAllocation() == nullptr && detail_ != nullptr) { + delete detail_; + } + detail_ = nullptr; +} +ExtensionMultiRel::ExtensionMultiRel(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned), + inputs_(arena) { SharedCtor(); if (!is_message_owned) { RegisterArenaDtor(arena); } - // @@protoc_insertion_point(arena_constructor:substrait.ExchangeRel.SingleBucketExpression) + // @@protoc_insertion_point(arena_constructor:substrait.ExtensionMultiRel) } -ExchangeRel_SingleBucketExpression::ExchangeRel_SingleBucketExpression(const ExchangeRel_SingleBucketExpression& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { +ExtensionMultiRel::ExtensionMultiRel(const ExtensionMultiRel& from) + : ::PROTOBUF_NAMESPACE_ID::Message(), + inputs_(from.inputs_) { _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - if (from._internal_has_expression()) { - expression_ = new ::substrait::Expression(*from.expression_); + if (from._internal_has_common()) { + common_ = new ::substrait::RelCommon(*from.common_); } else { - expression_ = nullptr; + common_ = nullptr; } - // @@protoc_insertion_point(copy_constructor:substrait.ExchangeRel.SingleBucketExpression) + if (from._internal_has_detail()) { + detail_ = new ::PROTOBUF_NAMESPACE_ID::Any(*from.detail_); + } else { + detail_ = nullptr; + } + // @@protoc_insertion_point(copy_constructor:substrait.ExtensionMultiRel) } -inline void ExchangeRel_SingleBucketExpression::SharedCtor() { -expression_ = nullptr; +inline void ExtensionMultiRel::SharedCtor() { +::memset(reinterpret_cast<char*>(this) + static_cast<size_t>( + reinterpret_cast<char*>(&common_) - reinterpret_cast<char*>(this)), + 0, static_cast<size_t>(reinterpret_cast<char*>(&detail_) - + reinterpret_cast<char*>(&common_)) + sizeof(detail_)); } -ExchangeRel_SingleBucketExpression::~ExchangeRel_SingleBucketExpression() { - // @@protoc_insertion_point(destructor:substrait.ExchangeRel.SingleBucketExpression) +ExtensionMultiRel::~ExtensionMultiRel() { + // @@protoc_insertion_point(destructor:substrait.ExtensionMultiRel) if (GetArenaForAllocation() != nullptr) return; SharedDtor(); _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -inline void ExchangeRel_SingleBucketExpression::SharedDtor() { +inline void ExtensionMultiRel::SharedDtor() { GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - if (this != internal_default_instance()) delete expression_; + if (this != internal_default_instance()) delete common_; + if (this != internal_default_instance()) delete detail_; } -void ExchangeRel_SingleBucketExpression::ArenaDtor(void* object) { - ExchangeRel_SingleBucketExpression* _this = reinterpret_cast< ExchangeRel_SingleBucketExpression* >(object); +void ExtensionMultiRel::ArenaDtor(void* object) { + ExtensionMultiRel* _this = reinterpret_cast< ExtensionMultiRel* >(object); (void)_this; } -void ExchangeRel_SingleBucketExpression::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { +void ExtensionMultiRel::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { } -void ExchangeRel_SingleBucketExpression::SetCachedSize(int size) const { +void ExtensionMultiRel::SetCachedSize(int size) const { _cached_size_.Set(size); } -void ExchangeRel_SingleBucketExpression::Clear() { -// @@protoc_insertion_point(message_clear_start:substrait.ExchangeRel.SingleBucketExpression) +void ExtensionMultiRel::Clear() { +// @@protoc_insertion_point(message_clear_start:substrait.ExtensionMultiRel) uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - if (GetArenaForAllocation() == nullptr && expression_ != nullptr) { - delete expression_; + inputs_.Clear(); + if (GetArenaForAllocation() == nullptr && common_ != nullptr) { + delete common_; } - expression_ = nullptr; + common_ = nullptr; + if (GetArenaForAllocation() == nullptr && detail_ != nullptr) { + delete detail_; + } + detail_ = nullptr; _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -const char* ExchangeRel_SingleBucketExpression::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { +const char* ExtensionMultiRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure while (!ctx->Done(&ptr)) { uint32_t tag; ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag); switch (tag >> 3) { - // .substrait.Expression expression = 1; + // .substrait.RelCommon common = 1; case 1: if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) { - ptr = ctx->ParseMessage(_internal_mutable_expression(), ptr); + ptr = ctx->ParseMessage(_internal_mutable_common(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // repeated .substrait.Rel inputs = 2; + case 2: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_inputs(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr)); + } else + goto handle_unusual; + continue; + // .google.protobuf.Any detail = 3; + case 3: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) { + ptr = ctx->ParseMessage(_internal_mutable_detail(), ptr); CHK_(ptr); } else goto handle_unusual; @@ -11779,89 +12416,129 @@ const char* ExchangeRel_SingleBucketExpression::_InternalParse(const char* ptr, #undef CHK_ } -uint8_t* ExchangeRel_SingleBucketExpression::_InternalSerialize( +uint8_t* ExtensionMultiRel::_InternalSerialize( uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:substrait.ExchangeRel.SingleBucketExpression) + // @@protoc_insertion_point(serialize_to_array_start:substrait.ExtensionMultiRel) uint32_t cached_has_bits = 0; (void) cached_has_bits; - // .substrait.Expression expression = 1; - if (this->_internal_has_expression()) { + // .substrait.RelCommon common = 1; + if (this->_internal_has_common()) { target = stream->EnsureSpace(target); target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: InternalWriteMessage( - 1, _Internal::expression(this), target, stream); + 1, _Internal::common(this), target, stream); + } + + // repeated .substrait.Rel inputs = 2; + for (unsigned int i = 0, + n = static_cast<unsigned int>(this->_internal_inputs_size()); i < n; i++) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(2, this->_internal_inputs(i), target, stream); + } + + // .google.protobuf.Any detail = 3; + if (this->_internal_has_detail()) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage( + 3, _Internal::detail(this), target, stream); } if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); } - // @@protoc_insertion_point(serialize_to_array_end:substrait.ExchangeRel.SingleBucketExpression) + // @@protoc_insertion_point(serialize_to_array_end:substrait.ExtensionMultiRel) return target; } -size_t ExchangeRel_SingleBucketExpression::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:substrait.ExchangeRel.SingleBucketExpression) +size_t ExtensionMultiRel::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:substrait.ExtensionMultiRel) size_t total_size = 0; uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - // .substrait.Expression expression = 1; - if (this->_internal_has_expression()) { + // repeated .substrait.Rel inputs = 2; + total_size += 1UL * this->_internal_inputs_size(); + for (const auto& msg : this->inputs_) { + total_size += + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); + } + + // .substrait.RelCommon common = 1; + if (this->_internal_has_common()) { total_size += 1 + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *expression_); + *common_); + } + + // .google.protobuf.Any detail = 3; + if (this->_internal_has_detail()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *detail_); } return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_); } -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ExchangeRel_SingleBucketExpression::_class_data_ = { +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ExtensionMultiRel::_class_data_ = { ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck, - ExchangeRel_SingleBucketExpression::MergeImpl + ExtensionMultiRel::MergeImpl }; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ExchangeRel_SingleBucketExpression::GetClassData() const { return &_class_data_; } +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ExtensionMultiRel::GetClassData() const { return &_class_data_; } -void ExchangeRel_SingleBucketExpression::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, +void ExtensionMultiRel::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, const ::PROTOBUF_NAMESPACE_ID::Message& from) { - static_cast<ExchangeRel_SingleBucketExpression *>(to)->MergeFrom( - static_cast<const ExchangeRel_SingleBucketExpression &>(from)); + static_cast<ExtensionMultiRel *>(to)->MergeFrom( + static_cast<const ExtensionMultiRel &>(from)); } -void ExchangeRel_SingleBucketExpression::MergeFrom(const ExchangeRel_SingleBucketExpression& from) { -// @@protoc_insertion_point(class_specific_merge_from_start:substrait.ExchangeRel.SingleBucketExpression) +void ExtensionMultiRel::MergeFrom(const ExtensionMultiRel& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:substrait.ExtensionMultiRel) GOOGLE_DCHECK_NE(&from, this); uint32_t cached_has_bits = 0; (void) cached_has_bits; - if (from._internal_has_expression()) { - _internal_mutable_expression()->::substrait::Expression::MergeFrom(from._internal_expression()); + inputs_.MergeFrom(from.inputs_); + if (from._internal_has_common()) { + _internal_mutable_common()->::substrait::RelCommon::MergeFrom(from._internal_common()); + } + if (from._internal_has_detail()) { + _internal_mutable_detail()->::PROTOBUF_NAMESPACE_ID::Any::MergeFrom(from._internal_detail()); } _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); } -void ExchangeRel_SingleBucketExpression::CopyFrom(const ExchangeRel_SingleBucketExpression& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:substrait.ExchangeRel.SingleBucketExpression) +void ExtensionMultiRel::CopyFrom(const ExtensionMultiRel& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:substrait.ExtensionMultiRel) if (&from == this) return; Clear(); MergeFrom(from); } -bool ExchangeRel_SingleBucketExpression::IsInitialized() const { +bool ExtensionMultiRel::IsInitialized() const { return true; } -void ExchangeRel_SingleBucketExpression::InternalSwap(ExchangeRel_SingleBucketExpression* other) { +void ExtensionMultiRel::InternalSwap(ExtensionMultiRel* other) { using std::swap; _internal_metadata_.InternalSwap(&other->_internal_metadata_); - swap(expression_, other->expression_); + inputs_.InternalSwap(&other->inputs_); + ::PROTOBUF_NAMESPACE_ID::internal::memswap< + PROTOBUF_FIELD_OFFSET(ExtensionMultiRel, detail_) + + sizeof(ExtensionMultiRel::detail_) + - PROTOBUF_FIELD_OFFSET(ExtensionMultiRel, common_)>( + reinterpret_cast<char*>(&common_), + reinterpret_cast<char*>(&other->common_)); } -::PROTOBUF_NAMESPACE_ID::Metadata ExchangeRel_SingleBucketExpression::GetMetadata() const { +::PROTOBUF_NAMESPACE_ID::Metadata ExtensionMultiRel::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, file_level_metadata_substrait_2falgebra_2eproto[30]); @@ -11869,98 +12546,77 @@ ::PROTOBUF_NAMESPACE_ID::Metadata ExchangeRel_SingleBucketExpression::GetMetadat // =================================================================== -class ExchangeRel_MultiBucketExpression::_Internal { +class ExchangeRel_ScatterFields::_Internal { public: - static const ::substrait::Expression& expression(const ExchangeRel_MultiBucketExpression* msg); }; -const ::substrait::Expression& -ExchangeRel_MultiBucketExpression::_Internal::expression(const ExchangeRel_MultiBucketExpression* msg) { - return *msg->expression_; -} -ExchangeRel_MultiBucketExpression::ExchangeRel_MultiBucketExpression(::PROTOBUF_NAMESPACE_ID::Arena* arena, +ExchangeRel_ScatterFields::ExchangeRel_ScatterFields(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned) - : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned), + fields_(arena) { SharedCtor(); if (!is_message_owned) { RegisterArenaDtor(arena); } - // @@protoc_insertion_point(arena_constructor:substrait.ExchangeRel.MultiBucketExpression) + // @@protoc_insertion_point(arena_constructor:substrait.ExchangeRel.ScatterFields) } -ExchangeRel_MultiBucketExpression::ExchangeRel_MultiBucketExpression(const ExchangeRel_MultiBucketExpression& from) - : ::PROTOBUF_NAMESPACE_ID::Message() { +ExchangeRel_ScatterFields::ExchangeRel_ScatterFields(const ExchangeRel_ScatterFields& from) + : ::PROTOBUF_NAMESPACE_ID::Message(), + fields_(from.fields_) { _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); - if (from._internal_has_expression()) { - expression_ = new ::substrait::Expression(*from.expression_); - } else { - expression_ = nullptr; - } - constrained_to_count_ = from.constrained_to_count_; - // @@protoc_insertion_point(copy_constructor:substrait.ExchangeRel.MultiBucketExpression) + // @@protoc_insertion_point(copy_constructor:substrait.ExchangeRel.ScatterFields) } -inline void ExchangeRel_MultiBucketExpression::SharedCtor() { -::memset(reinterpret_cast<char*>(this) + static_cast<size_t>( - reinterpret_cast<char*>(&expression_) - reinterpret_cast<char*>(this)), - 0, static_cast<size_t>(reinterpret_cast<char*>(&constrained_to_count_) - - reinterpret_cast<char*>(&expression_)) + sizeof(constrained_to_count_)); +inline void ExchangeRel_ScatterFields::SharedCtor() { } -ExchangeRel_MultiBucketExpression::~ExchangeRel_MultiBucketExpression() { - // @@protoc_insertion_point(destructor:substrait.ExchangeRel.MultiBucketExpression) +ExchangeRel_ScatterFields::~ExchangeRel_ScatterFields() { + // @@protoc_insertion_point(destructor:substrait.ExchangeRel.ScatterFields) if (GetArenaForAllocation() != nullptr) return; SharedDtor(); _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -inline void ExchangeRel_MultiBucketExpression::SharedDtor() { +inline void ExchangeRel_ScatterFields::SharedDtor() { GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); - if (this != internal_default_instance()) delete expression_; } -void ExchangeRel_MultiBucketExpression::ArenaDtor(void* object) { - ExchangeRel_MultiBucketExpression* _this = reinterpret_cast< ExchangeRel_MultiBucketExpression* >(object); +void ExchangeRel_ScatterFields::ArenaDtor(void* object) { + ExchangeRel_ScatterFields* _this = reinterpret_cast< ExchangeRel_ScatterFields* >(object); (void)_this; } -void ExchangeRel_MultiBucketExpression::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { +void ExchangeRel_ScatterFields::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { } -void ExchangeRel_MultiBucketExpression::SetCachedSize(int size) const { +void ExchangeRel_ScatterFields::SetCachedSize(int size) const { _cached_size_.Set(size); } -void ExchangeRel_MultiBucketExpression::Clear() { -// @@protoc_insertion_point(message_clear_start:substrait.ExchangeRel.MultiBucketExpression) +void ExchangeRel_ScatterFields::Clear() { +// @@protoc_insertion_point(message_clear_start:substrait.ExchangeRel.ScatterFields) uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - if (GetArenaForAllocation() == nullptr && expression_ != nullptr) { - delete expression_; - } - expression_ = nullptr; - constrained_to_count_ = false; + fields_.Clear(); _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } -const char* ExchangeRel_MultiBucketExpression::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { +const char* ExchangeRel_ScatterFields::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { #define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure while (!ctx->Done(&ptr)) { uint32_t tag; ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag); switch (tag >> 3) { - // .substrait.Expression expression = 1; + // repeated .substrait.Expression.FieldReference fields = 1; case 1: if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) { - ptr = ctx->ParseMessage(_internal_mutable_expression(), ptr); - CHK_(ptr); - } else - goto handle_unusual; - continue; - // bool constrained_to_count = 2; - case 2: - if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) { - constrained_to_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); - CHK_(ptr); + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_fields(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr)); } else goto handle_unusual; continue; @@ -11987,72 +12643,473 @@ const char* ExchangeRel_MultiBucketExpression::_InternalParse(const char* ptr, : #undef CHK_ } -uint8_t* ExchangeRel_MultiBucketExpression::_InternalSerialize( +uint8_t* ExchangeRel_ScatterFields::_InternalSerialize( uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:substrait.ExchangeRel.MultiBucketExpression) + // @@protoc_insertion_point(serialize_to_array_start:substrait.ExchangeRel.ScatterFields) uint32_t cached_has_bits = 0; (void) cached_has_bits; - // .substrait.Expression expression = 1; - if (this->_internal_has_expression()) { + // repeated .substrait.Expression.FieldReference fields = 1; + for (unsigned int i = 0, + n = static_cast<unsigned int>(this->_internal_fields_size()); i < n; i++) { target = stream->EnsureSpace(target); target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage( - 1, _Internal::expression(this), target, stream); - } - - // bool constrained_to_count = 2; - if (this->_internal_constrained_to_count() != 0) { - target = stream->EnsureSpace(target); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(2, this->_internal_constrained_to_count(), target); + InternalWriteMessage(1, this->_internal_fields(i), target, stream); } if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); } - // @@protoc_insertion_point(serialize_to_array_end:substrait.ExchangeRel.MultiBucketExpression) + // @@protoc_insertion_point(serialize_to_array_end:substrait.ExchangeRel.ScatterFields) return target; } -size_t ExchangeRel_MultiBucketExpression::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:substrait.ExchangeRel.MultiBucketExpression) +size_t ExchangeRel_ScatterFields::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:substrait.ExchangeRel.ScatterFields) size_t total_size = 0; uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - // .substrait.Expression expression = 1; - if (this->_internal_has_expression()) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *expression_); - } - - // bool constrained_to_count = 2; - if (this->_internal_constrained_to_count() != 0) { - total_size += 1 + 1; + // repeated .substrait.Expression.FieldReference fields = 1; + total_size += 1UL * this->_internal_fields_size(); + for (const auto& msg : this->fields_) { + total_size += + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); } return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_); } -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ExchangeRel_MultiBucketExpression::_class_data_ = { +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ExchangeRel_ScatterFields::_class_data_ = { ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck, - ExchangeRel_MultiBucketExpression::MergeImpl + ExchangeRel_ScatterFields::MergeImpl }; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ExchangeRel_MultiBucketExpression::GetClassData() const { return &_class_data_; } +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ExchangeRel_ScatterFields::GetClassData() const { return &_class_data_; } -void ExchangeRel_MultiBucketExpression::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, +void ExchangeRel_ScatterFields::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, const ::PROTOBUF_NAMESPACE_ID::Message& from) { - static_cast<ExchangeRel_MultiBucketExpression *>(to)->MergeFrom( - static_cast<const ExchangeRel_MultiBucketExpression &>(from)); + static_cast<ExchangeRel_ScatterFields *>(to)->MergeFrom( + static_cast<const ExchangeRel_ScatterFields &>(from)); } -void ExchangeRel_MultiBucketExpression::MergeFrom(const ExchangeRel_MultiBucketExpression& from) { -// @@protoc_insertion_point(class_specific_merge_from_start:substrait.ExchangeRel.MultiBucketExpression) +void ExchangeRel_ScatterFields::MergeFrom(const ExchangeRel_ScatterFields& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:substrait.ExchangeRel.ScatterFields) + GOOGLE_DCHECK_NE(&from, this); + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + fields_.MergeFrom(from.fields_); + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); +} + +void ExchangeRel_ScatterFields::CopyFrom(const ExchangeRel_ScatterFields& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:substrait.ExchangeRel.ScatterFields) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ExchangeRel_ScatterFields::IsInitialized() const { + return true; +} + +void ExchangeRel_ScatterFields::InternalSwap(ExchangeRel_ScatterFields* other) { + using std::swap; + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + fields_.InternalSwap(&other->fields_); +} + +::PROTOBUF_NAMESPACE_ID::Metadata ExchangeRel_ScatterFields::GetMetadata() const { + return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( + &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, + file_level_metadata_substrait_2falgebra_2eproto[31]); +} + +// =================================================================== + +class ExchangeRel_SingleBucketExpression::_Internal { + public: + static const ::substrait::Expression& expression(const ExchangeRel_SingleBucketExpression* msg); +}; + +const ::substrait::Expression& +ExchangeRel_SingleBucketExpression::_Internal::expression(const ExchangeRel_SingleBucketExpression* msg) { + return *msg->expression_; +} +ExchangeRel_SingleBucketExpression::ExchangeRel_SingleBucketExpression(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned) + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + SharedCtor(); + if (!is_message_owned) { + RegisterArenaDtor(arena); + } + // @@protoc_insertion_point(arena_constructor:substrait.ExchangeRel.SingleBucketExpression) +} +ExchangeRel_SingleBucketExpression::ExchangeRel_SingleBucketExpression(const ExchangeRel_SingleBucketExpression& from) + : ::PROTOBUF_NAMESPACE_ID::Message() { + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); + if (from._internal_has_expression()) { + expression_ = new ::substrait::Expression(*from.expression_); + } else { + expression_ = nullptr; + } + // @@protoc_insertion_point(copy_constructor:substrait.ExchangeRel.SingleBucketExpression) +} + +inline void ExchangeRel_SingleBucketExpression::SharedCtor() { +expression_ = nullptr; +} + +ExchangeRel_SingleBucketExpression::~ExchangeRel_SingleBucketExpression() { + // @@protoc_insertion_point(destructor:substrait.ExchangeRel.SingleBucketExpression) + if (GetArenaForAllocation() != nullptr) return; + SharedDtor(); + _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +inline void ExchangeRel_SingleBucketExpression::SharedDtor() { + GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); + if (this != internal_default_instance()) delete expression_; +} + +void ExchangeRel_SingleBucketExpression::ArenaDtor(void* object) { + ExchangeRel_SingleBucketExpression* _this = reinterpret_cast< ExchangeRel_SingleBucketExpression* >(object); + (void)_this; +} +void ExchangeRel_SingleBucketExpression::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { +} +void ExchangeRel_SingleBucketExpression::SetCachedSize(int size) const { + _cached_size_.Set(size); +} + +void ExchangeRel_SingleBucketExpression::Clear() { +// @@protoc_insertion_point(message_clear_start:substrait.ExchangeRel.SingleBucketExpression) + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + if (GetArenaForAllocation() == nullptr && expression_ != nullptr) { + delete expression_; + } + expression_ = nullptr; + _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +const char* ExchangeRel_SingleBucketExpression::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { +#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure + while (!ctx->Done(&ptr)) { + uint32_t tag; + ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag); + switch (tag >> 3) { + // .substrait.Expression expression = 1; + case 1: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) { + ptr = ctx->ParseMessage(_internal_mutable_expression(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + default: + goto handle_unusual; + } // switch + handle_unusual: + if ((tag == 0) || ((tag & 7) == 4)) { + CHK_(ptr); + ctx->SetLastTag(tag); + goto message_done; + } + ptr = UnknownFieldParse( + tag, + _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), + ptr, ctx); + CHK_(ptr != nullptr); + } // while +message_done: + return ptr; +failure: + ptr = nullptr; + goto message_done; +#undef CHK_ +} + +uint8_t* ExchangeRel_SingleBucketExpression::_InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { + // @@protoc_insertion_point(serialize_to_array_start:substrait.ExchangeRel.SingleBucketExpression) + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + // .substrait.Expression expression = 1; + if (this->_internal_has_expression()) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage( + 1, _Internal::expression(this), target, stream); + } + + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:substrait.ExchangeRel.SingleBucketExpression) + return target; +} + +size_t ExchangeRel_SingleBucketExpression::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:substrait.ExchangeRel.SingleBucketExpression) + size_t total_size = 0; + + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // .substrait.Expression expression = 1; + if (this->_internal_has_expression()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *expression_); + } + + return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_); +} + +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ExchangeRel_SingleBucketExpression::_class_data_ = { + ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck, + ExchangeRel_SingleBucketExpression::MergeImpl +}; +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ExchangeRel_SingleBucketExpression::GetClassData() const { return &_class_data_; } + +void ExchangeRel_SingleBucketExpression::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, + const ::PROTOBUF_NAMESPACE_ID::Message& from) { + static_cast<ExchangeRel_SingleBucketExpression *>(to)->MergeFrom( + static_cast<const ExchangeRel_SingleBucketExpression &>(from)); +} + + +void ExchangeRel_SingleBucketExpression::MergeFrom(const ExchangeRel_SingleBucketExpression& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:substrait.ExchangeRel.SingleBucketExpression) + GOOGLE_DCHECK_NE(&from, this); + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + if (from._internal_has_expression()) { + _internal_mutable_expression()->::substrait::Expression::MergeFrom(from._internal_expression()); + } + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); +} + +void ExchangeRel_SingleBucketExpression::CopyFrom(const ExchangeRel_SingleBucketExpression& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:substrait.ExchangeRel.SingleBucketExpression) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ExchangeRel_SingleBucketExpression::IsInitialized() const { + return true; +} + +void ExchangeRel_SingleBucketExpression::InternalSwap(ExchangeRel_SingleBucketExpression* other) { + using std::swap; + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + swap(expression_, other->expression_); +} + +::PROTOBUF_NAMESPACE_ID::Metadata ExchangeRel_SingleBucketExpression::GetMetadata() const { + return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( + &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, + file_level_metadata_substrait_2falgebra_2eproto[32]); +} + +// =================================================================== + +class ExchangeRel_MultiBucketExpression::_Internal { + public: + static const ::substrait::Expression& expression(const ExchangeRel_MultiBucketExpression* msg); +}; + +const ::substrait::Expression& +ExchangeRel_MultiBucketExpression::_Internal::expression(const ExchangeRel_MultiBucketExpression* msg) { + return *msg->expression_; +} +ExchangeRel_MultiBucketExpression::ExchangeRel_MultiBucketExpression(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned) + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + SharedCtor(); + if (!is_message_owned) { + RegisterArenaDtor(arena); + } + // @@protoc_insertion_point(arena_constructor:substrait.ExchangeRel.MultiBucketExpression) +} +ExchangeRel_MultiBucketExpression::ExchangeRel_MultiBucketExpression(const ExchangeRel_MultiBucketExpression& from) + : ::PROTOBUF_NAMESPACE_ID::Message() { + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); + if (from._internal_has_expression()) { + expression_ = new ::substrait::Expression(*from.expression_); + } else { + expression_ = nullptr; + } + constrained_to_count_ = from.constrained_to_count_; + // @@protoc_insertion_point(copy_constructor:substrait.ExchangeRel.MultiBucketExpression) +} + +inline void ExchangeRel_MultiBucketExpression::SharedCtor() { +::memset(reinterpret_cast<char*>(this) + static_cast<size_t>( + reinterpret_cast<char*>(&expression_) - reinterpret_cast<char*>(this)), + 0, static_cast<size_t>(reinterpret_cast<char*>(&constrained_to_count_) - + reinterpret_cast<char*>(&expression_)) + sizeof(constrained_to_count_)); +} + +ExchangeRel_MultiBucketExpression::~ExchangeRel_MultiBucketExpression() { + // @@protoc_insertion_point(destructor:substrait.ExchangeRel.MultiBucketExpression) + if (GetArenaForAllocation() != nullptr) return; + SharedDtor(); + _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +inline void ExchangeRel_MultiBucketExpression::SharedDtor() { + GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); + if (this != internal_default_instance()) delete expression_; +} + +void ExchangeRel_MultiBucketExpression::ArenaDtor(void* object) { + ExchangeRel_MultiBucketExpression* _this = reinterpret_cast< ExchangeRel_MultiBucketExpression* >(object); + (void)_this; +} +void ExchangeRel_MultiBucketExpression::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { +} +void ExchangeRel_MultiBucketExpression::SetCachedSize(int size) const { + _cached_size_.Set(size); +} + +void ExchangeRel_MultiBucketExpression::Clear() { +// @@protoc_insertion_point(message_clear_start:substrait.ExchangeRel.MultiBucketExpression) + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + if (GetArenaForAllocation() == nullptr && expression_ != nullptr) { + delete expression_; + } + expression_ = nullptr; + constrained_to_count_ = false; + _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +const char* ExchangeRel_MultiBucketExpression::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { +#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure + while (!ctx->Done(&ptr)) { + uint32_t tag; + ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag); + switch (tag >> 3) { + // .substrait.Expression expression = 1; + case 1: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) { + ptr = ctx->ParseMessage(_internal_mutable_expression(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // bool constrained_to_count = 2; + case 2: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) { + constrained_to_count_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + default: + goto handle_unusual; + } // switch + handle_unusual: + if ((tag == 0) || ((tag & 7) == 4)) { + CHK_(ptr); + ctx->SetLastTag(tag); + goto message_done; + } + ptr = UnknownFieldParse( + tag, + _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), + ptr, ctx); + CHK_(ptr != nullptr); + } // while +message_done: + return ptr; +failure: + ptr = nullptr; + goto message_done; +#undef CHK_ +} + +uint8_t* ExchangeRel_MultiBucketExpression::_InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { + // @@protoc_insertion_point(serialize_to_array_start:substrait.ExchangeRel.MultiBucketExpression) + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + // .substrait.Expression expression = 1; + if (this->_internal_has_expression()) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage( + 1, _Internal::expression(this), target, stream); + } + + // bool constrained_to_count = 2; + if (this->_internal_constrained_to_count() != 0) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(2, this->_internal_constrained_to_count(), target); + } + + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:substrait.ExchangeRel.MultiBucketExpression) + return target; +} + +size_t ExchangeRel_MultiBucketExpression::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:substrait.ExchangeRel.MultiBucketExpression) + size_t total_size = 0; + + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // .substrait.Expression expression = 1; + if (this->_internal_has_expression()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *expression_); + } + + // bool constrained_to_count = 2; + if (this->_internal_constrained_to_count() != 0) { + total_size += 1 + 1; + } + + return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_); +} + +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ExchangeRel_MultiBucketExpression::_class_data_ = { + ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck, + ExchangeRel_MultiBucketExpression::MergeImpl +}; +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ExchangeRel_MultiBucketExpression::GetClassData() const { return &_class_data_; } + +void ExchangeRel_MultiBucketExpression::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, + const ::PROTOBUF_NAMESPACE_ID::Message& from) { + static_cast<ExchangeRel_MultiBucketExpression *>(to)->MergeFrom( + static_cast<const ExchangeRel_MultiBucketExpression &>(from)); +} + + +void ExchangeRel_MultiBucketExpression::MergeFrom(const ExchangeRel_MultiBucketExpression& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:substrait.ExchangeRel.MultiBucketExpression) GOOGLE_DCHECK_NE(&from, this); uint32_t cached_has_bits = 0; (void) cached_has_bits; @@ -12091,7 +13148,7 @@ void ExchangeRel_MultiBucketExpression::InternalSwap(ExchangeRel_MultiBucketExpr ::PROTOBUF_NAMESPACE_ID::Metadata ExchangeRel_MultiBucketExpression::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[31]); + file_level_metadata_substrait_2falgebra_2eproto[33]); } // =================================================================== @@ -12130,7 +13187,7 @@ const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ExchangeRel_Broadcast::GetClas ::PROTOBUF_NAMESPACE_ID::Metadata ExchangeRel_Broadcast::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[32]); + file_level_metadata_substrait_2falgebra_2eproto[34]); } // =================================================================== @@ -12308,7 +13365,7 @@ void ExchangeRel_RoundRobin::InternalSwap(ExchangeRel_RoundRobin* other) { ::PROTOBUF_NAMESPACE_ID::Metadata ExchangeRel_RoundRobin::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[33]); + file_level_metadata_substrait_2falgebra_2eproto[35]); } // =================================================================== @@ -12640,7 +13697,7 @@ void ExchangeRel_ExchangeTarget::InternalSwap(ExchangeRel_ExchangeTarget* other) ::PROTOBUF_NAMESPACE_ID::Metadata ExchangeRel_ExchangeTarget::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[34]); + file_level_metadata_substrait_2falgebra_2eproto[36]); } // =================================================================== @@ -13043,9 +14100,910 @@ const char* ExchangeRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID #undef CHK_ } -uint8_t* ExchangeRel::_InternalSerialize( +uint8_t* ExchangeRel::_InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { + // @@protoc_insertion_point(serialize_to_array_start:substrait.ExchangeRel) + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + // .substrait.RelCommon common = 1; + if (this->_internal_has_common()) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage( + 1, _Internal::common(this), target, stream); + } + + // .substrait.Rel input = 2; + if (this->_internal_has_input()) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage( + 2, _Internal::input(this), target, stream); + } + + // int32 partition_count = 3; + if (this->_internal_partition_count() != 0) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_partition_count(), target); + } + + // repeated .substrait.ExchangeRel.ExchangeTarget targets = 4; + for (unsigned int i = 0, + n = static_cast<unsigned int>(this->_internal_targets_size()); i < n; i++) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(4, this->_internal_targets(i), target, stream); + } + + // .substrait.ExchangeRel.ScatterFields scatter_by_fields = 5; + if (_internal_has_scatter_by_fields()) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage( + 5, _Internal::scatter_by_fields(this), target, stream); + } + + // .substrait.ExchangeRel.SingleBucketExpression single_target = 6; + if (_internal_has_single_target()) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage( + 6, _Internal::single_target(this), target, stream); + } + + // .substrait.ExchangeRel.MultiBucketExpression multi_target = 7; + if (_internal_has_multi_target()) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage( + 7, _Internal::multi_target(this), target, stream); + } + + // .substrait.ExchangeRel.RoundRobin round_robin = 8; + if (_internal_has_round_robin()) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage( + 8, _Internal::round_robin(this), target, stream); + } + + // .substrait.ExchangeRel.Broadcast broadcast = 9; + if (_internal_has_broadcast()) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage( + 9, _Internal::broadcast(this), target, stream); + } + + // .substrait.extensions.AdvancedExtension advanced_extension = 10; + if (this->_internal_has_advanced_extension()) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage( + 10, _Internal::advanced_extension(this), target, stream); + } + + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:substrait.ExchangeRel) + return target; +} + +size_t ExchangeRel::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:substrait.ExchangeRel) + size_t total_size = 0; + + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // repeated .substrait.ExchangeRel.ExchangeTarget targets = 4; + total_size += 1UL * this->_internal_targets_size(); + for (const auto& msg : this->targets_) { + total_size += + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); + } + + // .substrait.RelCommon common = 1; + if (this->_internal_has_common()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *common_); + } + + // .substrait.Rel input = 2; + if (this->_internal_has_input()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *input_); + } + + // .substrait.extensions.AdvancedExtension advanced_extension = 10; + if (this->_internal_has_advanced_extension()) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *advanced_extension_); + } + + // int32 partition_count = 3; + if (this->_internal_partition_count() != 0) { + total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32SizePlusOne(this->_internal_partition_count()); + } + + switch (exchange_kind_case()) { + // .substrait.ExchangeRel.ScatterFields scatter_by_fields = 5; + case kScatterByFields: { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *exchange_kind_.scatter_by_fields_); + break; + } + // .substrait.ExchangeRel.SingleBucketExpression single_target = 6; + case kSingleTarget: { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *exchange_kind_.single_target_); + break; + } + // .substrait.ExchangeRel.MultiBucketExpression multi_target = 7; + case kMultiTarget: { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *exchange_kind_.multi_target_); + break; + } + // .substrait.ExchangeRel.RoundRobin round_robin = 8; + case kRoundRobin: { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *exchange_kind_.round_robin_); + break; + } + // .substrait.ExchangeRel.Broadcast broadcast = 9; + case kBroadcast: { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *exchange_kind_.broadcast_); + break; + } + case EXCHANGE_KIND_NOT_SET: { + break; + } + } + return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_); +} + +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ExchangeRel::_class_data_ = { + ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck, + ExchangeRel::MergeImpl +}; +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ExchangeRel::GetClassData() const { return &_class_data_; } + +void ExchangeRel::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, + const ::PROTOBUF_NAMESPACE_ID::Message& from) { + static_cast<ExchangeRel *>(to)->MergeFrom( + static_cast<const ExchangeRel &>(from)); +} + + +void ExchangeRel::MergeFrom(const ExchangeRel& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:substrait.ExchangeRel) + GOOGLE_DCHECK_NE(&from, this); + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + targets_.MergeFrom(from.targets_); + if (from._internal_has_common()) { + _internal_mutable_common()->::substrait::RelCommon::MergeFrom(from._internal_common()); + } + if (from._internal_has_input()) { + _internal_mutable_input()->::substrait::Rel::MergeFrom(from._internal_input()); + } + if (from._internal_has_advanced_extension()) { + _internal_mutable_advanced_extension()->::substrait::extensions::AdvancedExtension::MergeFrom(from._internal_advanced_extension()); + } + if (from._internal_partition_count() != 0) { + _internal_set_partition_count(from._internal_partition_count()); + } + switch (from.exchange_kind_case()) { + case kScatterByFields: { + _internal_mutable_scatter_by_fields()->::substrait::ExchangeRel_ScatterFields::MergeFrom(from._internal_scatter_by_fields()); + break; + } + case kSingleTarget: { + _internal_mutable_single_target()->::substrait::ExchangeRel_SingleBucketExpression::MergeFrom(from._internal_single_target()); + break; + } + case kMultiTarget: { + _internal_mutable_multi_target()->::substrait::ExchangeRel_MultiBucketExpression::MergeFrom(from._internal_multi_target()); + break; + } + case kRoundRobin: { + _internal_mutable_round_robin()->::substrait::ExchangeRel_RoundRobin::MergeFrom(from._internal_round_robin()); + break; + } + case kBroadcast: { + _internal_mutable_broadcast()->::substrait::ExchangeRel_Broadcast::MergeFrom(from._internal_broadcast()); + break; + } + case EXCHANGE_KIND_NOT_SET: { + break; + } + } + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); +} + +void ExchangeRel::CopyFrom(const ExchangeRel& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:substrait.ExchangeRel) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ExchangeRel::IsInitialized() const { + return true; +} + +void ExchangeRel::InternalSwap(ExchangeRel* other) { + using std::swap; + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + targets_.InternalSwap(&other->targets_); + ::PROTOBUF_NAMESPACE_ID::internal::memswap< + PROTOBUF_FIELD_OFFSET(ExchangeRel, partition_count_) + + sizeof(ExchangeRel::partition_count_) + - PROTOBUF_FIELD_OFFSET(ExchangeRel, common_)>( + reinterpret_cast<char*>(&common_), + reinterpret_cast<char*>(&other->common_)); + swap(exchange_kind_, other->exchange_kind_); + swap(_oneof_case_[0], other->_oneof_case_[0]); +} + +::PROTOBUF_NAMESPACE_ID::Metadata ExchangeRel::GetMetadata() const { + return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( + &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, + file_level_metadata_substrait_2falgebra_2eproto[37]); +} + +// =================================================================== + +class ExpandRel_ExpandField::_Internal { + public: + static const ::substrait::ExpandRel_SwitchingField& switching_field(const ExpandRel_ExpandField* msg); + static const ::substrait::Expression& consistent_field(const ExpandRel_ExpandField* msg); +}; + +const ::substrait::ExpandRel_SwitchingField& +ExpandRel_ExpandField::_Internal::switching_field(const ExpandRel_ExpandField* msg) { + return *msg->field_type_.switching_field_; +} +const ::substrait::Expression& +ExpandRel_ExpandField::_Internal::consistent_field(const ExpandRel_ExpandField* msg) { + return *msg->field_type_.consistent_field_; +} +void ExpandRel_ExpandField::set_allocated_switching_field(::substrait::ExpandRel_SwitchingField* switching_field) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + clear_field_type(); + if (switching_field) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper<::substrait::ExpandRel_SwitchingField>::GetOwningArena(switching_field); + if (message_arena != submessage_arena) { + switching_field = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, switching_field, submessage_arena); + } + set_has_switching_field(); + field_type_.switching_field_ = switching_field; + } + // @@protoc_insertion_point(field_set_allocated:substrait.ExpandRel.ExpandField.switching_field) +} +void ExpandRel_ExpandField::set_allocated_consistent_field(::substrait::Expression* consistent_field) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + clear_field_type(); + if (consistent_field) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper<::substrait::Expression>::GetOwningArena(consistent_field); + if (message_arena != submessage_arena) { + consistent_field = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, consistent_field, submessage_arena); + } + set_has_consistent_field(); + field_type_.consistent_field_ = consistent_field; + } + // @@protoc_insertion_point(field_set_allocated:substrait.ExpandRel.ExpandField.consistent_field) +} +ExpandRel_ExpandField::ExpandRel_ExpandField(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned) + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { + SharedCtor(); + if (!is_message_owned) { + RegisterArenaDtor(arena); + } + // @@protoc_insertion_point(arena_constructor:substrait.ExpandRel.ExpandField) +} +ExpandRel_ExpandField::ExpandRel_ExpandField(const ExpandRel_ExpandField& from) + : ::PROTOBUF_NAMESPACE_ID::Message() { + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); + clear_has_field_type(); + switch (from.field_type_case()) { + case kSwitchingField: { + _internal_mutable_switching_field()->::substrait::ExpandRel_SwitchingField::MergeFrom(from._internal_switching_field()); + break; + } + case kConsistentField: { + _internal_mutable_consistent_field()->::substrait::Expression::MergeFrom(from._internal_consistent_field()); + break; + } + case FIELD_TYPE_NOT_SET: { + break; + } + } + // @@protoc_insertion_point(copy_constructor:substrait.ExpandRel.ExpandField) +} + +inline void ExpandRel_ExpandField::SharedCtor() { +clear_has_field_type(); +} + +ExpandRel_ExpandField::~ExpandRel_ExpandField() { + // @@protoc_insertion_point(destructor:substrait.ExpandRel.ExpandField) + if (GetArenaForAllocation() != nullptr) return; + SharedDtor(); + _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +inline void ExpandRel_ExpandField::SharedDtor() { + GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); + if (has_field_type()) { + clear_field_type(); + } +} + +void ExpandRel_ExpandField::ArenaDtor(void* object) { + ExpandRel_ExpandField* _this = reinterpret_cast< ExpandRel_ExpandField* >(object); + (void)_this; +} +void ExpandRel_ExpandField::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { +} +void ExpandRel_ExpandField::SetCachedSize(int size) const { + _cached_size_.Set(size); +} + +void ExpandRel_ExpandField::clear_field_type() { +// @@protoc_insertion_point(one_of_clear_start:substrait.ExpandRel.ExpandField) + switch (field_type_case()) { + case kSwitchingField: { + if (GetArenaForAllocation() == nullptr) { + delete field_type_.switching_field_; + } + break; + } + case kConsistentField: { + if (GetArenaForAllocation() == nullptr) { + delete field_type_.consistent_field_; + } + break; + } + case FIELD_TYPE_NOT_SET: { + break; + } + } + _oneof_case_[0] = FIELD_TYPE_NOT_SET; +} + + +void ExpandRel_ExpandField::Clear() { +// @@protoc_insertion_point(message_clear_start:substrait.ExpandRel.ExpandField) + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + clear_field_type(); + _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +const char* ExpandRel_ExpandField::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { +#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure + while (!ctx->Done(&ptr)) { + uint32_t tag; + ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag); + switch (tag >> 3) { + // .substrait.ExpandRel.SwitchingField switching_field = 2; + case 2: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) { + ptr = ctx->ParseMessage(_internal_mutable_switching_field(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // .substrait.Expression consistent_field = 3; + case 3: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) { + ptr = ctx->ParseMessage(_internal_mutable_consistent_field(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + default: + goto handle_unusual; + } // switch + handle_unusual: + if ((tag == 0) || ((tag & 7) == 4)) { + CHK_(ptr); + ctx->SetLastTag(tag); + goto message_done; + } + ptr = UnknownFieldParse( + tag, + _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), + ptr, ctx); + CHK_(ptr != nullptr); + } // while +message_done: + return ptr; +failure: + ptr = nullptr; + goto message_done; +#undef CHK_ +} + +uint8_t* ExpandRel_ExpandField::_InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { + // @@protoc_insertion_point(serialize_to_array_start:substrait.ExpandRel.ExpandField) + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + // .substrait.ExpandRel.SwitchingField switching_field = 2; + if (_internal_has_switching_field()) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage( + 2, _Internal::switching_field(this), target, stream); + } + + // .substrait.Expression consistent_field = 3; + if (_internal_has_consistent_field()) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage( + 3, _Internal::consistent_field(this), target, stream); + } + + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:substrait.ExpandRel.ExpandField) + return target; +} + +size_t ExpandRel_ExpandField::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:substrait.ExpandRel.ExpandField) + size_t total_size = 0; + + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + switch (field_type_case()) { + // .substrait.ExpandRel.SwitchingField switching_field = 2; + case kSwitchingField: { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *field_type_.switching_field_); + break; + } + // .substrait.Expression consistent_field = 3; + case kConsistentField: { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *field_type_.consistent_field_); + break; + } + case FIELD_TYPE_NOT_SET: { + break; + } + } + return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_); +} + +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ExpandRel_ExpandField::_class_data_ = { + ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck, + ExpandRel_ExpandField::MergeImpl +}; +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ExpandRel_ExpandField::GetClassData() const { return &_class_data_; } + +void ExpandRel_ExpandField::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, + const ::PROTOBUF_NAMESPACE_ID::Message& from) { + static_cast<ExpandRel_ExpandField *>(to)->MergeFrom( + static_cast<const ExpandRel_ExpandField &>(from)); +} + + +void ExpandRel_ExpandField::MergeFrom(const ExpandRel_ExpandField& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:substrait.ExpandRel.ExpandField) + GOOGLE_DCHECK_NE(&from, this); + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + switch (from.field_type_case()) { + case kSwitchingField: { + _internal_mutable_switching_field()->::substrait::ExpandRel_SwitchingField::MergeFrom(from._internal_switching_field()); + break; + } + case kConsistentField: { + _internal_mutable_consistent_field()->::substrait::Expression::MergeFrom(from._internal_consistent_field()); + break; + } + case FIELD_TYPE_NOT_SET: { + break; + } + } + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); +} + +void ExpandRel_ExpandField::CopyFrom(const ExpandRel_ExpandField& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:substrait.ExpandRel.ExpandField) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ExpandRel_ExpandField::IsInitialized() const { + return true; +} + +void ExpandRel_ExpandField::InternalSwap(ExpandRel_ExpandField* other) { + using std::swap; + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + swap(field_type_, other->field_type_); + swap(_oneof_case_[0], other->_oneof_case_[0]); +} + +::PROTOBUF_NAMESPACE_ID::Metadata ExpandRel_ExpandField::GetMetadata() const { + return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( + &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, + file_level_metadata_substrait_2falgebra_2eproto[38]); +} + +// =================================================================== + +class ExpandRel_SwitchingField::_Internal { + public: +}; + +ExpandRel_SwitchingField::ExpandRel_SwitchingField(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned) + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned), + duplicates_(arena) { + SharedCtor(); + if (!is_message_owned) { + RegisterArenaDtor(arena); + } + // @@protoc_insertion_point(arena_constructor:substrait.ExpandRel.SwitchingField) +} +ExpandRel_SwitchingField::ExpandRel_SwitchingField(const ExpandRel_SwitchingField& from) + : ::PROTOBUF_NAMESPACE_ID::Message(), + duplicates_(from.duplicates_) { + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); + // @@protoc_insertion_point(copy_constructor:substrait.ExpandRel.SwitchingField) +} + +inline void ExpandRel_SwitchingField::SharedCtor() { +} + +ExpandRel_SwitchingField::~ExpandRel_SwitchingField() { + // @@protoc_insertion_point(destructor:substrait.ExpandRel.SwitchingField) + if (GetArenaForAllocation() != nullptr) return; + SharedDtor(); + _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +inline void ExpandRel_SwitchingField::SharedDtor() { + GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); +} + +void ExpandRel_SwitchingField::ArenaDtor(void* object) { + ExpandRel_SwitchingField* _this = reinterpret_cast< ExpandRel_SwitchingField* >(object); + (void)_this; +} +void ExpandRel_SwitchingField::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { +} +void ExpandRel_SwitchingField::SetCachedSize(int size) const { + _cached_size_.Set(size); +} + +void ExpandRel_SwitchingField::Clear() { +// @@protoc_insertion_point(message_clear_start:substrait.ExpandRel.SwitchingField) + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + duplicates_.Clear(); + _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +const char* ExpandRel_SwitchingField::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { +#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure + while (!ctx->Done(&ptr)) { + uint32_t tag; + ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag); + switch (tag >> 3) { + // repeated .substrait.Expression duplicates = 1; + case 1: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_duplicates(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr)); + } else + goto handle_unusual; + continue; + default: + goto handle_unusual; + } // switch + handle_unusual: + if ((tag == 0) || ((tag & 7) == 4)) { + CHK_(ptr); + ctx->SetLastTag(tag); + goto message_done; + } + ptr = UnknownFieldParse( + tag, + _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), + ptr, ctx); + CHK_(ptr != nullptr); + } // while +message_done: + return ptr; +failure: + ptr = nullptr; + goto message_done; +#undef CHK_ +} + +uint8_t* ExpandRel_SwitchingField::_InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { + // @@protoc_insertion_point(serialize_to_array_start:substrait.ExpandRel.SwitchingField) + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + // repeated .substrait.Expression duplicates = 1; + for (unsigned int i = 0, + n = static_cast<unsigned int>(this->_internal_duplicates_size()); i < n; i++) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage(1, this->_internal_duplicates(i), target, stream); + } + + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:substrait.ExpandRel.SwitchingField) + return target; +} + +size_t ExpandRel_SwitchingField::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:substrait.ExpandRel.SwitchingField) + size_t total_size = 0; + + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + // repeated .substrait.Expression duplicates = 1; + total_size += 1UL * this->_internal_duplicates_size(); + for (const auto& msg : this->duplicates_) { + total_size += + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); + } + + return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_); +} + +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ExpandRel_SwitchingField::_class_data_ = { + ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck, + ExpandRel_SwitchingField::MergeImpl +}; +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ExpandRel_SwitchingField::GetClassData() const { return &_class_data_; } + +void ExpandRel_SwitchingField::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, + const ::PROTOBUF_NAMESPACE_ID::Message& from) { + static_cast<ExpandRel_SwitchingField *>(to)->MergeFrom( + static_cast<const ExpandRel_SwitchingField &>(from)); +} + + +void ExpandRel_SwitchingField::MergeFrom(const ExpandRel_SwitchingField& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:substrait.ExpandRel.SwitchingField) + GOOGLE_DCHECK_NE(&from, this); + uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + duplicates_.MergeFrom(from.duplicates_); + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); +} + +void ExpandRel_SwitchingField::CopyFrom(const ExpandRel_SwitchingField& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:substrait.ExpandRel.SwitchingField) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ExpandRel_SwitchingField::IsInitialized() const { + return true; +} + +void ExpandRel_SwitchingField::InternalSwap(ExpandRel_SwitchingField* other) { + using std::swap; + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + duplicates_.InternalSwap(&other->duplicates_); +} + +::PROTOBUF_NAMESPACE_ID::Metadata ExpandRel_SwitchingField::GetMetadata() const { + return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( + &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, + file_level_metadata_substrait_2falgebra_2eproto[39]); +} + +// =================================================================== + +class ExpandRel::_Internal { + public: + static const ::substrait::RelCommon& common(const ExpandRel* msg); + static const ::substrait::Rel& input(const ExpandRel* msg); +}; + +const ::substrait::RelCommon& +ExpandRel::_Internal::common(const ExpandRel* msg) { + return *msg->common_; +} +const ::substrait::Rel& +ExpandRel::_Internal::input(const ExpandRel* msg) { + return *msg->input_; +} +ExpandRel::ExpandRel(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned) + : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned), + fields_(arena) { + SharedCtor(); + if (!is_message_owned) { + RegisterArenaDtor(arena); + } + // @@protoc_insertion_point(arena_constructor:substrait.ExpandRel) +} +ExpandRel::ExpandRel(const ExpandRel& from) + : ::PROTOBUF_NAMESPACE_ID::Message(), + fields_(from.fields_) { + _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); + if (from._internal_has_common()) { + common_ = new ::substrait::RelCommon(*from.common_); + } else { + common_ = nullptr; + } + if (from._internal_has_input()) { + input_ = new ::substrait::Rel(*from.input_); + } else { + input_ = nullptr; + } + // @@protoc_insertion_point(copy_constructor:substrait.ExpandRel) +} + +inline void ExpandRel::SharedCtor() { +::memset(reinterpret_cast<char*>(this) + static_cast<size_t>( + reinterpret_cast<char*>(&common_) - reinterpret_cast<char*>(this)), + 0, static_cast<size_t>(reinterpret_cast<char*>(&input_) - + reinterpret_cast<char*>(&common_)) + sizeof(input_)); +} + +ExpandRel::~ExpandRel() { + // @@protoc_insertion_point(destructor:substrait.ExpandRel) + if (GetArenaForAllocation() != nullptr) return; + SharedDtor(); + _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +inline void ExpandRel::SharedDtor() { + GOOGLE_DCHECK(GetArenaForAllocation() == nullptr); + if (this != internal_default_instance()) delete common_; + if (this != internal_default_instance()) delete input_; +} + +void ExpandRel::ArenaDtor(void* object) { + ExpandRel* _this = reinterpret_cast< ExpandRel* >(object); + (void)_this; +} +void ExpandRel::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) { +} +void ExpandRel::SetCachedSize(int size) const { + _cached_size_.Set(size); +} + +void ExpandRel::Clear() { +// @@protoc_insertion_point(message_clear_start:substrait.ExpandRel) + uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + fields_.Clear(); + if (GetArenaForAllocation() == nullptr && common_ != nullptr) { + delete common_; + } + common_ = nullptr; + if (GetArenaForAllocation() == nullptr && input_ != nullptr) { + delete input_; + } + input_ = nullptr; + _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); +} + +const char* ExpandRel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) { +#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure + while (!ctx->Done(&ptr)) { + uint32_t tag; + ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag); + switch (tag >> 3) { + // .substrait.RelCommon common = 1; + case 1: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) { + ptr = ctx->ParseMessage(_internal_mutable_common(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // .substrait.Rel input = 2; + case 2: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) { + ptr = ctx->ParseMessage(_internal_mutable_input(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // repeated .substrait.ExpandRel.ExpandField fields = 4; + case 4: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) { + ptr -= 1; + do { + ptr += 1; + ptr = ctx->ParseMessage(_internal_add_fields(), ptr); + CHK_(ptr); + if (!ctx->DataAvailable(ptr)) break; + } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<34>(ptr)); + } else + goto handle_unusual; + continue; + default: + goto handle_unusual; + } // switch + handle_unusual: + if ((tag == 0) || ((tag & 7) == 4)) { + CHK_(ptr); + ctx->SetLastTag(tag); + goto message_done; + } + ptr = UnknownFieldParse( + tag, + _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(), + ptr, ctx); + CHK_(ptr != nullptr); + } // while +message_done: + return ptr; +failure: + ptr = nullptr; + goto message_done; +#undef CHK_ +} + +uint8_t* ExpandRel::_InternalSerialize( uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const { - // @@protoc_insertion_point(serialize_to_array_start:substrait.ExchangeRel) + // @@protoc_insertion_point(serialize_to_array_start:substrait.ExpandRel) uint32_t cached_has_bits = 0; (void) cached_has_bits; @@ -13065,87 +15023,33 @@ uint8_t* ExchangeRel::_InternalSerialize( 2, _Internal::input(this), target, stream); } - // int32 partition_count = 3; - if (this->_internal_partition_count() != 0) { - target = stream->EnsureSpace(target); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_partition_count(), target); - } - - // repeated .substrait.ExchangeRel.ExchangeTarget targets = 4; + // repeated .substrait.ExpandRel.ExpandField fields = 4; for (unsigned int i = 0, - n = static_cast<unsigned int>(this->_internal_targets_size()); i < n; i++) { - target = stream->EnsureSpace(target); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage(4, this->_internal_targets(i), target, stream); - } - - // .substrait.ExchangeRel.ScatterFields scatter_by_fields = 5; - if (_internal_has_scatter_by_fields()) { - target = stream->EnsureSpace(target); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage( - 5, _Internal::scatter_by_fields(this), target, stream); - } - - // .substrait.ExchangeRel.SingleBucketExpression single_target = 6; - if (_internal_has_single_target()) { - target = stream->EnsureSpace(target); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage( - 6, _Internal::single_target(this), target, stream); - } - - // .substrait.ExchangeRel.MultiBucketExpression multi_target = 7; - if (_internal_has_multi_target()) { - target = stream->EnsureSpace(target); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage( - 7, _Internal::multi_target(this), target, stream); - } - - // .substrait.ExchangeRel.RoundRobin round_robin = 8; - if (_internal_has_round_robin()) { - target = stream->EnsureSpace(target); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage( - 8, _Internal::round_robin(this), target, stream); - } - - // .substrait.ExchangeRel.Broadcast broadcast = 9; - if (_internal_has_broadcast()) { - target = stream->EnsureSpace(target); - target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage( - 9, _Internal::broadcast(this), target, stream); - } - - // .substrait.extensions.AdvancedExtension advanced_extension = 10; - if (this->_internal_has_advanced_extension()) { + n = static_cast<unsigned int>(this->_internal_fields_size()); i < n; i++) { target = stream->EnsureSpace(target); target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: - InternalWriteMessage( - 10, _Internal::advanced_extension(this), target, stream); + InternalWriteMessage(4, this->_internal_fields(i), target, stream); } if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); } - // @@protoc_insertion_point(serialize_to_array_end:substrait.ExchangeRel) + // @@protoc_insertion_point(serialize_to_array_end:substrait.ExpandRel) return target; } -size_t ExchangeRel::ByteSizeLong() const { -// @@protoc_insertion_point(message_byte_size_start:substrait.ExchangeRel) +size_t ExpandRel::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:substrait.ExpandRel) size_t total_size = 0; uint32_t cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; - // repeated .substrait.ExchangeRel.ExchangeTarget targets = 4; - total_size += 1UL * this->_internal_targets_size(); - for (const auto& msg : this->targets_) { + // repeated .substrait.ExpandRel.ExpandField fields = 4; + total_size += 1UL * this->_internal_fields_size(); + for (const auto& msg : this->fields_) { total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg); } @@ -13164,150 +15068,65 @@ size_t ExchangeRel::ByteSizeLong() const { *input_); } - // .substrait.extensions.AdvancedExtension advanced_extension = 10; - if (this->_internal_has_advanced_extension()) { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *advanced_extension_); - } - - // int32 partition_count = 3; - if (this->_internal_partition_count() != 0) { - total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32SizePlusOne(this->_internal_partition_count()); - } - - switch (exchange_kind_case()) { - // .substrait.ExchangeRel.ScatterFields scatter_by_fields = 5; - case kScatterByFields: { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *exchange_kind_.scatter_by_fields_); - break; - } - // .substrait.ExchangeRel.SingleBucketExpression single_target = 6; - case kSingleTarget: { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *exchange_kind_.single_target_); - break; - } - // .substrait.ExchangeRel.MultiBucketExpression multi_target = 7; - case kMultiTarget: { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *exchange_kind_.multi_target_); - break; - } - // .substrait.ExchangeRel.RoundRobin round_robin = 8; - case kRoundRobin: { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *exchange_kind_.round_robin_); - break; - } - // .substrait.ExchangeRel.Broadcast broadcast = 9; - case kBroadcast: { - total_size += 1 + - ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( - *exchange_kind_.broadcast_); - break; - } - case EXCHANGE_KIND_NOT_SET: { - break; - } - } return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_); } -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ExchangeRel::_class_data_ = { +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ExpandRel::_class_data_ = { ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck, - ExchangeRel::MergeImpl + ExpandRel::MergeImpl }; -const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ExchangeRel::GetClassData() const { return &_class_data_; } +const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ExpandRel::GetClassData() const { return &_class_data_; } -void ExchangeRel::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, +void ExpandRel::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, const ::PROTOBUF_NAMESPACE_ID::Message& from) { - static_cast<ExchangeRel *>(to)->MergeFrom( - static_cast<const ExchangeRel &>(from)); + static_cast<ExpandRel *>(to)->MergeFrom( + static_cast<const ExpandRel &>(from)); } -void ExchangeRel::MergeFrom(const ExchangeRel& from) { -// @@protoc_insertion_point(class_specific_merge_from_start:substrait.ExchangeRel) +void ExpandRel::MergeFrom(const ExpandRel& from) { +// @@protoc_insertion_point(class_specific_merge_from_start:substrait.ExpandRel) GOOGLE_DCHECK_NE(&from, this); uint32_t cached_has_bits = 0; (void) cached_has_bits; - targets_.MergeFrom(from.targets_); + fields_.MergeFrom(from.fields_); if (from._internal_has_common()) { _internal_mutable_common()->::substrait::RelCommon::MergeFrom(from._internal_common()); } if (from._internal_has_input()) { _internal_mutable_input()->::substrait::Rel::MergeFrom(from._internal_input()); } - if (from._internal_has_advanced_extension()) { - _internal_mutable_advanced_extension()->::substrait::extensions::AdvancedExtension::MergeFrom(from._internal_advanced_extension()); - } - if (from._internal_partition_count() != 0) { - _internal_set_partition_count(from._internal_partition_count()); - } - switch (from.exchange_kind_case()) { - case kScatterByFields: { - _internal_mutable_scatter_by_fields()->::substrait::ExchangeRel_ScatterFields::MergeFrom(from._internal_scatter_by_fields()); - break; - } - case kSingleTarget: { - _internal_mutable_single_target()->::substrait::ExchangeRel_SingleBucketExpression::MergeFrom(from._internal_single_target()); - break; - } - case kMultiTarget: { - _internal_mutable_multi_target()->::substrait::ExchangeRel_MultiBucketExpression::MergeFrom(from._internal_multi_target()); - break; - } - case kRoundRobin: { - _internal_mutable_round_robin()->::substrait::ExchangeRel_RoundRobin::MergeFrom(from._internal_round_robin()); - break; - } - case kBroadcast: { - _internal_mutable_broadcast()->::substrait::ExchangeRel_Broadcast::MergeFrom(from._internal_broadcast()); - break; - } - case EXCHANGE_KIND_NOT_SET: { - break; - } - } _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); } -void ExchangeRel::CopyFrom(const ExchangeRel& from) { -// @@protoc_insertion_point(class_specific_copy_from_start:substrait.ExchangeRel) +void ExpandRel::CopyFrom(const ExpandRel& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:substrait.ExpandRel) if (&from == this) return; Clear(); MergeFrom(from); } -bool ExchangeRel::IsInitialized() const { +bool ExpandRel::IsInitialized() const { return true; } -void ExchangeRel::InternalSwap(ExchangeRel* other) { +void ExpandRel::InternalSwap(ExpandRel* other) { using std::swap; _internal_metadata_.InternalSwap(&other->_internal_metadata_); - targets_.InternalSwap(&other->targets_); + fields_.InternalSwap(&other->fields_); ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(ExchangeRel, partition_count_) - + sizeof(ExchangeRel::partition_count_) - - PROTOBUF_FIELD_OFFSET(ExchangeRel, common_)>( + PROTOBUF_FIELD_OFFSET(ExpandRel, input_) + + sizeof(ExpandRel::input_) + - PROTOBUF_FIELD_OFFSET(ExpandRel, common_)>( reinterpret_cast<char*>(&common_), reinterpret_cast<char*>(&other->common_)); - swap(exchange_kind_, other->exchange_kind_); - swap(_oneof_case_[0], other->_oneof_case_[0]); } -::PROTOBUF_NAMESPACE_ID::Metadata ExchangeRel::GetMetadata() const { +::PROTOBUF_NAMESPACE_ID::Metadata ExpandRel::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[35]); + file_level_metadata_substrait_2falgebra_2eproto[40]); } // =================================================================== @@ -13540,7 +15359,7 @@ void RelRoot::InternalSwap(RelRoot* other) { ::PROTOBUF_NAMESPACE_ID::Metadata RelRoot::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[36]); + file_level_metadata_substrait_2falgebra_2eproto[41]); } // =================================================================== @@ -13561,6 +15380,9 @@ class Rel::_Internal { static const ::substrait::CrossRel& cross(const Rel* msg); static const ::substrait::HashJoinRel& hash_join(const Rel* msg); static const ::substrait::MergeJoinRel& merge_join(const Rel* msg); + static const ::substrait::ConsistentPartitionWindowRel& window(const Rel* msg); + static const ::substrait::ExchangeRel& exchange(const Rel* msg); + static const ::substrait::ExpandRel& expand(const Rel* msg); }; const ::substrait::ReadRel& @@ -13619,6 +15441,18 @@ const ::substrait::MergeJoinRel& Rel::_Internal::merge_join(const Rel* msg) { return *msg->rel_type_.merge_join_; } +const ::substrait::ConsistentPartitionWindowRel& +Rel::_Internal::window(const Rel* msg) { + return *msg->rel_type_.window_; +} +const ::substrait::ExchangeRel& +Rel::_Internal::exchange(const Rel* msg) { + return *msg->rel_type_.exchange_; +} +const ::substrait::ExpandRel& +Rel::_Internal::expand(const Rel* msg) { + return *msg->rel_type_.expand_; +} void Rel::set_allocated_read(::substrait::ReadRel* read) { ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); clear_rel_type(); @@ -13829,6 +15663,51 @@ void Rel::set_allocated_merge_join(::substrait::MergeJoinRel* merge_join) { } // @@protoc_insertion_point(field_set_allocated:substrait.Rel.merge_join) } +void Rel::set_allocated_window(::substrait::ConsistentPartitionWindowRel* window) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + clear_rel_type(); + if (window) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper<::substrait::ConsistentPartitionWindowRel>::GetOwningArena(window); + if (message_arena != submessage_arena) { + window = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, window, submessage_arena); + } + set_has_window(); + rel_type_.window_ = window; + } + // @@protoc_insertion_point(field_set_allocated:substrait.Rel.window) +} +void Rel::set_allocated_exchange(::substrait::ExchangeRel* exchange) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + clear_rel_type(); + if (exchange) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper<::substrait::ExchangeRel>::GetOwningArena(exchange); + if (message_arena != submessage_arena) { + exchange = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, exchange, submessage_arena); + } + set_has_exchange(); + rel_type_.exchange_ = exchange; + } + // @@protoc_insertion_point(field_set_allocated:substrait.Rel.exchange) +} +void Rel::set_allocated_expand(::substrait::ExpandRel* expand) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + clear_rel_type(); + if (expand) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper<::substrait::ExpandRel>::GetOwningArena(expand); + if (message_arena != submessage_arena) { + expand = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, expand, submessage_arena); + } + set_has_expand(); + rel_type_.expand_ = expand; + } + // @@protoc_insertion_point(field_set_allocated:substrait.Rel.expand) +} Rel::Rel(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned) : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) { @@ -13899,6 +15778,18 @@ Rel::Rel(const Rel& from) _internal_mutable_merge_join()->::substrait::MergeJoinRel::MergeFrom(from._internal_merge_join()); break; } + case kWindow: { + _internal_mutable_window()->::substrait::ConsistentPartitionWindowRel::MergeFrom(from._internal_window()); + break; + } + case kExchange: { + _internal_mutable_exchange()->::substrait::ExchangeRel::MergeFrom(from._internal_exchange()); + break; + } + case kExpand: { + _internal_mutable_expand()->::substrait::ExpandRel::MergeFrom(from._internal_expand()); + break; + } case REL_TYPE_NOT_SET: { break; } @@ -14021,6 +15912,24 @@ void Rel::clear_rel_type() { } break; } + case kWindow: { + if (GetArenaForAllocation() == nullptr) { + delete rel_type_.window_; + } + break; + } + case kExchange: { + if (GetArenaForAllocation() == nullptr) { + delete rel_type_.exchange_; + } + break; + } + case kExpand: { + if (GetArenaForAllocation() == nullptr) { + delete rel_type_.expand_; + } + break; + } case REL_TYPE_NOT_SET: { break; } @@ -14157,6 +16066,30 @@ const char* Rel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::intern } else goto handle_unusual; continue; + // .substrait.ExchangeRel exchange = 15; + case 15: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 122)) { + ptr = ctx->ParseMessage(_internal_mutable_exchange(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // .substrait.ExpandRel expand = 16; + case 16: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 130)) { + ptr = ctx->ParseMessage(_internal_mutable_expand(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; + // .substrait.ConsistentPartitionWindowRel window = 17; + case 17: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 138)) { + ptr = ctx->ParseMessage(_internal_mutable_window(), ptr); + CHK_(ptr); + } else + goto handle_unusual; + continue; default: goto handle_unusual; } // switch @@ -14298,6 +16231,30 @@ uint8_t* Rel::_InternalSerialize( 14, _Internal::merge_join(this), target, stream); } + // .substrait.ExchangeRel exchange = 15; + if (_internal_has_exchange()) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage( + 15, _Internal::exchange(this), target, stream); + } + + // .substrait.ExpandRel expand = 16; + if (_internal_has_expand()) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage( + 16, _Internal::expand(this), target, stream); + } + + // .substrait.ConsistentPartitionWindowRel window = 17; + if (_internal_has_window()) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite:: + InternalWriteMessage( + 17, _Internal::window(this), target, stream); + } + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); @@ -14413,6 +16370,27 @@ size_t Rel::ByteSizeLong() const { *rel_type_.merge_join_); break; } + // .substrait.ConsistentPartitionWindowRel window = 17; + case kWindow: { + total_size += 2 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *rel_type_.window_); + break; + } + // .substrait.ExchangeRel exchange = 15; + case kExchange: { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *rel_type_.exchange_); + break; + } + // .substrait.ExpandRel expand = 16; + case kExpand: { + total_size += 2 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize( + *rel_type_.expand_); + break; + } case REL_TYPE_NOT_SET: { break; } @@ -14496,6 +16474,18 @@ void Rel::MergeFrom(const Rel& from) { _internal_mutable_merge_join()->::substrait::MergeJoinRel::MergeFrom(from._internal_merge_join()); break; } + case kWindow: { + _internal_mutable_window()->::substrait::ConsistentPartitionWindowRel::MergeFrom(from._internal_window()); + break; + } + case kExchange: { + _internal_mutable_exchange()->::substrait::ExchangeRel::MergeFrom(from._internal_exchange()); + break; + } + case kExpand: { + _internal_mutable_expand()->::substrait::ExpandRel::MergeFrom(from._internal_expand()); + break; + } case REL_TYPE_NOT_SET: { break; } @@ -14524,7 +16514,7 @@ void Rel::InternalSwap(Rel* other) { ::PROTOBUF_NAMESPACE_ID::Metadata Rel::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[37]); + file_level_metadata_substrait_2falgebra_2eproto[42]); } // =================================================================== @@ -14763,7 +16753,7 @@ void NamedObjectWrite::InternalSwap(NamedObjectWrite* other) { ::PROTOBUF_NAMESPACE_ID::Metadata NamedObjectWrite::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[38]); + file_level_metadata_substrait_2falgebra_2eproto[43]); } // =================================================================== @@ -14964,7 +16954,7 @@ void ExtensionObject::InternalSwap(ExtensionObject* other) { ::PROTOBUF_NAMESPACE_ID::Metadata ExtensionObject::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[39]); + file_level_metadata_substrait_2falgebra_2eproto[44]); } // =================================================================== @@ -15459,7 +17449,7 @@ void DdlRel::InternalSwap(DdlRel* other) { ::PROTOBUF_NAMESPACE_ID::Metadata DdlRel::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[40]); + file_level_metadata_substrait_2falgebra_2eproto[45]); } // =================================================================== @@ -15913,7 +17903,7 @@ void WriteRel::InternalSwap(WriteRel* other) { ::PROTOBUF_NAMESPACE_ID::Metadata WriteRel::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[41]); + file_level_metadata_substrait_2falgebra_2eproto[46]); } // =================================================================== @@ -16379,7 +18369,7 @@ void HashJoinRel::InternalSwap(HashJoinRel* other) { ::PROTOBUF_NAMESPACE_ID::Metadata HashJoinRel::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[42]); + file_level_metadata_substrait_2falgebra_2eproto[47]); } // =================================================================== @@ -16845,7 +18835,7 @@ void MergeJoinRel::InternalSwap(MergeJoinRel* other) { ::PROTOBUF_NAMESPACE_ID::Metadata MergeJoinRel::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[43]); + file_level_metadata_substrait_2falgebra_2eproto[48]); } // =================================================================== @@ -17194,7 +19184,7 @@ void FunctionArgument::InternalSwap(FunctionArgument* other) { ::PROTOBUF_NAMESPACE_ID::Metadata FunctionArgument::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[44]); + file_level_metadata_substrait_2falgebra_2eproto[49]); } // =================================================================== @@ -17435,7 +19425,7 @@ void FunctionOption::InternalSwap(FunctionOption* other) { ::PROTOBUF_NAMESPACE_ID::Metadata FunctionOption::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[45]); + file_level_metadata_substrait_2falgebra_2eproto[50]); } // =================================================================== @@ -17474,7 +19464,7 @@ const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*Expression_Enum_Empty::GetClas ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Enum_Empty::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[46]); + file_level_metadata_substrait_2falgebra_2eproto[51]); } // =================================================================== @@ -17756,7 +19746,7 @@ void Expression_Enum::InternalSwap(Expression_Enum* other) { ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Enum::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[47]); + file_level_metadata_substrait_2falgebra_2eproto[52]); } // =================================================================== @@ -17985,7 +19975,7 @@ void Expression_Literal_VarChar::InternalSwap(Expression_Literal_VarChar* other) ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Literal_VarChar::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[48]); + file_level_metadata_substrait_2falgebra_2eproto[53]); } // =================================================================== @@ -18243,7 +20233,7 @@ void Expression_Literal_Decimal::InternalSwap(Expression_Literal_Decimal* other) ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Literal_Decimal::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[49]); + file_level_metadata_substrait_2falgebra_2eproto[54]); } // =================================================================== @@ -18487,7 +20477,7 @@ void Expression_Literal_Map_KeyValue::InternalSwap(Expression_Literal_Map_KeyVal ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Literal_Map_KeyValue::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[50]); + file_level_metadata_substrait_2falgebra_2eproto[55]); } // =================================================================== @@ -18672,7 +20662,7 @@ void Expression_Literal_Map::InternalSwap(Expression_Literal_Map* other) { ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Literal_Map::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[51]); + file_level_metadata_substrait_2falgebra_2eproto[56]); } // =================================================================== @@ -18884,7 +20874,7 @@ void Expression_Literal_IntervalYearToMonth::InternalSwap(Expression_Literal_Int ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Literal_IntervalYearToMonth::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[52]); + file_level_metadata_substrait_2falgebra_2eproto[57]); } // =================================================================== @@ -19118,7 +21108,7 @@ void Expression_Literal_IntervalDayToSecond::InternalSwap(Expression_Literal_Int ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Literal_IntervalDayToSecond::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[53]); + file_level_metadata_substrait_2falgebra_2eproto[58]); } // =================================================================== @@ -19303,7 +21293,7 @@ void Expression_Literal_Struct::InternalSwap(Expression_Literal_Struct* other) { ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Literal_Struct::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[54]); + file_level_metadata_substrait_2falgebra_2eproto[59]); } // =================================================================== @@ -19488,7 +21478,7 @@ void Expression_Literal_List::InternalSwap(Expression_Literal_List* other) { ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Literal_List::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[55]); + file_level_metadata_substrait_2falgebra_2eproto[60]); } // =================================================================== @@ -19757,7 +21747,7 @@ void Expression_Literal_UserDefined::InternalSwap(Expression_Literal_UserDefined ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Literal_UserDefined::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[56]); + file_level_metadata_substrait_2falgebra_2eproto[61]); } // =================================================================== @@ -21189,7 +23179,7 @@ void Expression_Literal::InternalSwap(Expression_Literal* other) { ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Literal::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[57]); + file_level_metadata_substrait_2falgebra_2eproto[62]); } // =================================================================== @@ -21433,7 +23423,7 @@ void Expression_Nested_Map_KeyValue::InternalSwap(Expression_Nested_Map_KeyValue ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Nested_Map_KeyValue::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[58]); + file_level_metadata_substrait_2falgebra_2eproto[63]); } // =================================================================== @@ -21618,7 +23608,7 @@ void Expression_Nested_Map::InternalSwap(Expression_Nested_Map* other) { ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Nested_Map::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[59]); + file_level_metadata_substrait_2falgebra_2eproto[64]); } // =================================================================== @@ -21803,7 +23793,7 @@ void Expression_Nested_Struct::InternalSwap(Expression_Nested_Struct* other) { ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Nested_Struct::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[60]); + file_level_metadata_substrait_2falgebra_2eproto[65]); } // =================================================================== @@ -21988,7 +23978,7 @@ void Expression_Nested_List::InternalSwap(Expression_Nested_List* other) { ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Nested_List::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[61]); + file_level_metadata_substrait_2falgebra_2eproto[66]); } // =================================================================== @@ -22405,7 +24395,7 @@ void Expression_Nested::InternalSwap(Expression_Nested* other) { ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Nested::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[62]); + file_level_metadata_substrait_2falgebra_2eproto[67]); } // =================================================================== @@ -22737,7 +24727,7 @@ void Expression_ScalarFunction::InternalSwap(Expression_ScalarFunction* other) { ::PROTOBUF_NAMESPACE_ID::Metadata Expression_ScalarFunction::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[63]); + file_level_metadata_substrait_2falgebra_2eproto[68]); } // =================================================================== @@ -22915,7 +24905,7 @@ void Expression_WindowFunction_Bound_Preceding::InternalSwap(Expression_WindowFu ::PROTOBUF_NAMESPACE_ID::Metadata Expression_WindowFunction_Bound_Preceding::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[64]); + file_level_metadata_substrait_2falgebra_2eproto[69]); } // =================================================================== @@ -23093,7 +25083,7 @@ void Expression_WindowFunction_Bound_Following::InternalSwap(Expression_WindowFu ::PROTOBUF_NAMESPACE_ID::Metadata Expression_WindowFunction_Bound_Following::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[65]); + file_level_metadata_substrait_2falgebra_2eproto[70]); } // =================================================================== @@ -23132,7 +25122,7 @@ const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*Expression_WindowFunction_Boun ::PROTOBUF_NAMESPACE_ID::Metadata Expression_WindowFunction_Bound_CurrentRow::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[66]); + file_level_metadata_substrait_2falgebra_2eproto[71]); } // =================================================================== @@ -23171,7 +25161,7 @@ const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*Expression_WindowFunction_Boun ::PROTOBUF_NAMESPACE_ID::Metadata Expression_WindowFunction_Bound_Unbounded::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[67]); + file_level_metadata_substrait_2falgebra_2eproto[72]); } // =================================================================== @@ -23585,7 +25575,7 @@ void Expression_WindowFunction_Bound::InternalSwap(Expression_WindowFunction_Bou ::PROTOBUF_NAMESPACE_ID::Metadata Expression_WindowFunction_Bound::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[68]); + file_level_metadata_substrait_2falgebra_2eproto[73]); } // =================================================================== @@ -23653,16 +25643,16 @@ Expression_WindowFunction::Expression_WindowFunction(const Expression_WindowFunc output_type_ = nullptr; } ::memcpy(&function_reference_, &from.function_reference_, - static_cast<size_t>(reinterpret_cast<char*>(&invocation_) - - reinterpret_cast<char*>(&function_reference_)) + sizeof(invocation_)); + static_cast<size_t>(reinterpret_cast<char*>(&bounds_type_) - + reinterpret_cast<char*>(&function_reference_)) + sizeof(bounds_type_)); // @@protoc_insertion_point(copy_constructor:substrait.Expression.WindowFunction) } inline void Expression_WindowFunction::SharedCtor() { ::memset(reinterpret_cast<char*>(this) + static_cast<size_t>( reinterpret_cast<char*>(&upper_bound_) - reinterpret_cast<char*>(this)), - 0, static_cast<size_t>(reinterpret_cast<char*>(&invocation_) - - reinterpret_cast<char*>(&upper_bound_)) + sizeof(invocation_)); + 0, static_cast<size_t>(reinterpret_cast<char*>(&bounds_type_) - + reinterpret_cast<char*>(&upper_bound_)) + sizeof(bounds_type_)); } Expression_WindowFunction::~Expression_WindowFunction() { @@ -23713,8 +25703,8 @@ void Expression_WindowFunction::Clear() { } output_type_ = nullptr; ::memset(&function_reference_, 0, static_cast<size_t>( - reinterpret_cast<char*>(&invocation_) - - reinterpret_cast<char*>(&function_reference_)) + sizeof(invocation_)); + reinterpret_cast<char*>(&bounds_type_) - + reinterpret_cast<char*>(&function_reference_)) + sizeof(bounds_type_)); _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(); } @@ -23839,6 +25829,15 @@ const char* Expression_WindowFunction::_InternalParse(const char* ptr, ::PROTOBU } else goto handle_unusual; continue; + // .substrait.Expression.WindowFunction.BoundsType bounds_type = 12; + case 12: + if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 96)) { + uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr); + CHK_(ptr); + _internal_set_bounds_type(static_cast<::substrait::Expression_WindowFunction_BoundsType>(val)); + } else + goto handle_unusual; + continue; default: goto handle_unusual; } // switch @@ -23952,6 +25951,13 @@ uint8_t* Expression_WindowFunction::_InternalSerialize( InternalWriteMessage(11, this->_internal_options(i), target, stream); } + // .substrait.Expression.WindowFunction.BoundsType bounds_type = 12; + if (this->_internal_bounds_type() != 0) { + target = stream->EnsureSpace(target); + target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray( + 12, this->_internal_bounds_type(), target); + } + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray( _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream); @@ -24041,6 +26047,12 @@ size_t Expression_WindowFunction::ByteSizeLong() const { ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_invocation()); } + // .substrait.Expression.WindowFunction.BoundsType bounds_type = 12; + if (this->_internal_bounds_type() != 0) { + total_size += 1 + + ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_bounds_type()); + } + return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_); } @@ -24086,6 +26098,9 @@ void Expression_WindowFunction::MergeFrom(const Expression_WindowFunction& from) if (from._internal_invocation() != 0) { _internal_set_invocation(from._internal_invocation()); } + if (from._internal_bounds_type() != 0) { + _internal_set_bounds_type(from._internal_bounds_type()); + } _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_); } @@ -24109,8 +26124,8 @@ void Expression_WindowFunction::InternalSwap(Expression_WindowFunction* other) { arguments_.InternalSwap(&other->arguments_); options_.InternalSwap(&other->options_); ::PROTOBUF_NAMESPACE_ID::internal::memswap< - PROTOBUF_FIELD_OFFSET(Expression_WindowFunction, invocation_) - + sizeof(Expression_WindowFunction::invocation_) + PROTOBUF_FIELD_OFFSET(Expression_WindowFunction, bounds_type_) + + sizeof(Expression_WindowFunction::bounds_type_) - PROTOBUF_FIELD_OFFSET(Expression_WindowFunction, upper_bound_)>( reinterpret_cast<char*>(&upper_bound_), reinterpret_cast<char*>(&other->upper_bound_)); @@ -24119,7 +26134,7 @@ void Expression_WindowFunction::InternalSwap(Expression_WindowFunction* other) { ::PROTOBUF_NAMESPACE_ID::Metadata Expression_WindowFunction::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[69]); + file_level_metadata_substrait_2falgebra_2eproto[74]); } // =================================================================== @@ -24363,7 +26378,7 @@ void Expression_IfThen_IfClause::InternalSwap(Expression_IfThen_IfClause* other) ::PROTOBUF_NAMESPACE_ID::Metadata Expression_IfThen_IfClause::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[70]); + file_level_metadata_substrait_2falgebra_2eproto[75]); } // =================================================================== @@ -24591,7 +26606,7 @@ void Expression_IfThen::InternalSwap(Expression_IfThen* other) { ::PROTOBUF_NAMESPACE_ID::Metadata Expression_IfThen::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[71]); + file_level_metadata_substrait_2falgebra_2eproto[76]); } // =================================================================== @@ -24868,7 +26883,7 @@ void Expression_Cast::InternalSwap(Expression_Cast* other) { ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Cast::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[72]); + file_level_metadata_substrait_2falgebra_2eproto[77]); } // =================================================================== @@ -25112,7 +27127,7 @@ void Expression_SwitchExpression_IfValue::InternalSwap(Expression_SwitchExpressi ::PROTOBUF_NAMESPACE_ID::Metadata Expression_SwitchExpression_IfValue::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[73]); + file_level_metadata_substrait_2falgebra_2eproto[78]); } // =================================================================== @@ -25389,7 +27404,7 @@ void Expression_SwitchExpression::InternalSwap(Expression_SwitchExpression* othe ::PROTOBUF_NAMESPACE_ID::Metadata Expression_SwitchExpression::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[74]); + file_level_metadata_substrait_2falgebra_2eproto[79]); } // =================================================================== @@ -25617,7 +27632,7 @@ void Expression_SingularOrList::InternalSwap(Expression_SingularOrList* other) { ::PROTOBUF_NAMESPACE_ID::Metadata Expression_SingularOrList::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[75]); + file_level_metadata_substrait_2falgebra_2eproto[80]); } // =================================================================== @@ -25802,7 +27817,7 @@ void Expression_MultiOrList_Record::InternalSwap(Expression_MultiOrList_Record* ::PROTOBUF_NAMESPACE_ID::Metadata Expression_MultiOrList_Record::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[76]); + file_level_metadata_substrait_2falgebra_2eproto[81]); } // =================================================================== @@ -26020,7 +28035,7 @@ void Expression_MultiOrList::InternalSwap(Expression_MultiOrList* other) { ::PROTOBUF_NAMESPACE_ID::Metadata Expression_MultiOrList::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[77]); + file_level_metadata_substrait_2falgebra_2eproto[82]); } // =================================================================== @@ -26256,7 +28271,7 @@ void Expression_EmbeddedFunction_PythonPickleFunction::InternalSwap(Expression_E ::PROTOBUF_NAMESPACE_ID::Metadata Expression_EmbeddedFunction_PythonPickleFunction::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[78]); + file_level_metadata_substrait_2falgebra_2eproto[83]); } // =================================================================== @@ -26492,7 +28507,7 @@ void Expression_EmbeddedFunction_WebAssemblyFunction::InternalSwap(Expression_Em ::PROTOBUF_NAMESPACE_ID::Metadata Expression_EmbeddedFunction_WebAssemblyFunction::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[79]); + file_level_metadata_substrait_2falgebra_2eproto[84]); } // =================================================================== @@ -26874,7 +28889,7 @@ void Expression_EmbeddedFunction::InternalSwap(Expression_EmbeddedFunction* othe ::PROTOBUF_NAMESPACE_ID::Metadata Expression_EmbeddedFunction::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[80]); + file_level_metadata_substrait_2falgebra_2eproto[85]); } // =================================================================== @@ -27118,7 +29133,7 @@ void Expression_ReferenceSegment_MapKey::InternalSwap(Expression_ReferenceSegmen ::PROTOBUF_NAMESPACE_ID::Metadata Expression_ReferenceSegment_MapKey::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[81]); + file_level_metadata_substrait_2falgebra_2eproto[86]); } // =================================================================== @@ -27345,7 +29360,7 @@ void Expression_ReferenceSegment_StructField::InternalSwap(Expression_ReferenceS ::PROTOBUF_NAMESPACE_ID::Metadata Expression_ReferenceSegment_StructField::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[82]); + file_level_metadata_substrait_2falgebra_2eproto[87]); } // =================================================================== @@ -27572,7 +29587,7 @@ void Expression_ReferenceSegment_ListElement::InternalSwap(Expression_ReferenceS ::PROTOBUF_NAMESPACE_ID::Metadata Expression_ReferenceSegment_ListElement::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[83]); + file_level_metadata_substrait_2falgebra_2eproto[88]); } // =================================================================== @@ -27929,7 +29944,7 @@ void Expression_ReferenceSegment::InternalSwap(Expression_ReferenceSegment* othe ::PROTOBUF_NAMESPACE_ID::Metadata Expression_ReferenceSegment::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[84]); + file_level_metadata_substrait_2falgebra_2eproto[89]); } // =================================================================== @@ -28286,7 +30301,7 @@ void Expression_MaskExpression_Select::InternalSwap(Expression_MaskExpression_Se ::PROTOBUF_NAMESPACE_ID::Metadata Expression_MaskExpression_Select::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[85]); + file_level_metadata_substrait_2falgebra_2eproto[90]); } // =================================================================== @@ -28471,7 +30486,7 @@ void Expression_MaskExpression_StructSelect::InternalSwap(Expression_MaskExpress ::PROTOBUF_NAMESPACE_ID::Metadata Expression_MaskExpression_StructSelect::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[86]); + file_level_metadata_substrait_2falgebra_2eproto[91]); } // =================================================================== @@ -28698,7 +30713,7 @@ void Expression_MaskExpression_StructItem::InternalSwap(Expression_MaskExpressio ::PROTOBUF_NAMESPACE_ID::Metadata Expression_MaskExpression_StructItem::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[87]); + file_level_metadata_substrait_2falgebra_2eproto[92]); } // =================================================================== @@ -28876,7 +30891,7 @@ void Expression_MaskExpression_ListSelect_ListSelectItem_ListElement::InternalSw ::PROTOBUF_NAMESPACE_ID::Metadata Expression_MaskExpression_ListSelect_ListSelectItem_ListElement::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[88]); + file_level_metadata_substrait_2falgebra_2eproto[93]); } // =================================================================== @@ -29088,7 +31103,7 @@ void Expression_MaskExpression_ListSelect_ListSelectItem_ListSlice::InternalSwap ::PROTOBUF_NAMESPACE_ID::Metadata Expression_MaskExpression_ListSelect_ListSelectItem_ListSlice::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[89]); + file_level_metadata_substrait_2falgebra_2eproto[94]); } // =================================================================== @@ -29388,7 +31403,7 @@ void Expression_MaskExpression_ListSelect_ListSelectItem::InternalSwap(Expressio ::PROTOBUF_NAMESPACE_ID::Metadata Expression_MaskExpression_ListSelect_ListSelectItem::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[90]); + file_level_metadata_substrait_2falgebra_2eproto[95]); } // =================================================================== @@ -29616,7 +31631,7 @@ void Expression_MaskExpression_ListSelect::InternalSwap(Expression_MaskExpressio ::PROTOBUF_NAMESPACE_ID::Metadata Expression_MaskExpression_ListSelect::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[91]); + file_level_metadata_substrait_2falgebra_2eproto[96]); } // =================================================================== @@ -29819,7 +31834,7 @@ void Expression_MaskExpression_MapSelect_MapKey::InternalSwap(Expression_MaskExp ::PROTOBUF_NAMESPACE_ID::Metadata Expression_MaskExpression_MapSelect_MapKey::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[92]); + file_level_metadata_substrait_2falgebra_2eproto[97]); } // =================================================================== @@ -30022,7 +32037,7 @@ void Expression_MaskExpression_MapSelect_MapKeyExpression::InternalSwap(Expressi ::PROTOBUF_NAMESPACE_ID::Metadata Expression_MaskExpression_MapSelect_MapKeyExpression::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[93]); + file_level_metadata_substrait_2falgebra_2eproto[98]); } // =================================================================== @@ -30365,7 +32380,7 @@ void Expression_MaskExpression_MapSelect::InternalSwap(Expression_MaskExpression ::PROTOBUF_NAMESPACE_ID::Metadata Expression_MaskExpression_MapSelect::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[94]); + file_level_metadata_substrait_2falgebra_2eproto[99]); } // =================================================================== @@ -30592,7 +32607,7 @@ void Expression_MaskExpression::InternalSwap(Expression_MaskExpression* other) { ::PROTOBUF_NAMESPACE_ID::Metadata Expression_MaskExpression::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[95]); + file_level_metadata_substrait_2falgebra_2eproto[100]); } // =================================================================== @@ -30631,7 +32646,7 @@ const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*Expression_FieldReference_Root ::PROTOBUF_NAMESPACE_ID::Metadata Expression_FieldReference_RootReference::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[96]); + file_level_metadata_substrait_2falgebra_2eproto[101]); } // =================================================================== @@ -30809,7 +32824,7 @@ void Expression_FieldReference_OuterReference::InternalSwap(Expression_FieldRefe ::PROTOBUF_NAMESPACE_ID::Metadata Expression_FieldReference_OuterReference::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[97]); + file_level_metadata_substrait_2falgebra_2eproto[102]); } // =================================================================== @@ -31313,7 +33328,7 @@ void Expression_FieldReference::InternalSwap(Expression_FieldReference* other) { ::PROTOBUF_NAMESPACE_ID::Metadata Expression_FieldReference::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[98]); + file_level_metadata_substrait_2falgebra_2eproto[103]); } // =================================================================== @@ -31508,7 +33523,7 @@ void Expression_Subquery_Scalar::InternalSwap(Expression_Subquery_Scalar* other) ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Subquery_Scalar::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[99]); + file_level_metadata_substrait_2falgebra_2eproto[104]); } // =================================================================== @@ -31736,7 +33751,7 @@ void Expression_Subquery_InPredicate::InternalSwap(Expression_Subquery_InPredica ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Subquery_InPredicate::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[100]); + file_level_metadata_substrait_2falgebra_2eproto[105]); } // =================================================================== @@ -31966,7 +33981,7 @@ void Expression_Subquery_SetPredicate::InternalSwap(Expression_Subquery_SetPredi ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Subquery_SetPredicate::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[101]); + file_level_metadata_substrait_2falgebra_2eproto[106]); } // =================================================================== @@ -32266,7 +34281,7 @@ void Expression_Subquery_SetComparison::InternalSwap(Expression_Subquery_SetComp ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Subquery_SetComparison::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[102]); + file_level_metadata_substrait_2falgebra_2eproto[107]); } // =================================================================== @@ -32680,7 +34695,7 @@ void Expression_Subquery::InternalSwap(Expression_Subquery* other) { ::PROTOBUF_NAMESPACE_ID::Metadata Expression_Subquery::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[103]); + file_level_metadata_substrait_2falgebra_2eproto[108]); } // =================================================================== @@ -33550,7 +35565,7 @@ void Expression::InternalSwap(Expression* other) { ::PROTOBUF_NAMESPACE_ID::Metadata Expression::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[104]); + file_level_metadata_substrait_2falgebra_2eproto[109]); } // =================================================================== @@ -33844,7 +35859,7 @@ void SortField::InternalSwap(SortField* other) { ::PROTOBUF_NAMESPACE_ID::Metadata SortField::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[105]); + file_level_metadata_substrait_2falgebra_2eproto[110]); } // =================================================================== @@ -34022,7 +36037,7 @@ void AggregateFunction_ReferenceRel::InternalSwap(AggregateFunction_ReferenceRel ::PROTOBUF_NAMESPACE_ID::Metadata AggregateFunction_ReferenceRel::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[106]); + file_level_metadata_substrait_2falgebra_2eproto[111]); } // =================================================================== @@ -34441,7 +36456,7 @@ void AggregateFunction::InternalSwap(AggregateFunction* other) { ::PROTOBUF_NAMESPACE_ID::Metadata AggregateFunction::GetMetadata() const { return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors( &descriptor_table_substrait_2falgebra_2eproto_getter, &descriptor_table_substrait_2falgebra_2eproto_once, - file_level_metadata_substrait_2falgebra_2eproto[107]); + file_level_metadata_substrait_2falgebra_2eproto[112]); } // @@protoc_insertion_point(namespace_scope) @@ -34516,6 +36531,12 @@ template<> PROTOBUF_NOINLINE ::substrait::AggregateRel_Measure* Arena::CreateMay template<> PROTOBUF_NOINLINE ::substrait::AggregateRel* Arena::CreateMaybeMessage< ::substrait::AggregateRel >(Arena* arena) { return Arena::CreateMessageInternal< ::substrait::AggregateRel >(arena); } +template<> PROTOBUF_NOINLINE ::substrait::ConsistentPartitionWindowRel_WindowRelFunction* Arena::CreateMaybeMessage< ::substrait::ConsistentPartitionWindowRel_WindowRelFunction >(Arena* arena) { + return Arena::CreateMessageInternal< ::substrait::ConsistentPartitionWindowRel_WindowRelFunction >(arena); +} +template<> PROTOBUF_NOINLINE ::substrait::ConsistentPartitionWindowRel* Arena::CreateMaybeMessage< ::substrait::ConsistentPartitionWindowRel >(Arena* arena) { + return Arena::CreateMessageInternal< ::substrait::ConsistentPartitionWindowRel >(arena); +} template<> PROTOBUF_NOINLINE ::substrait::SortRel* Arena::CreateMaybeMessage< ::substrait::SortRel >(Arena* arena) { return Arena::CreateMessageInternal< ::substrait::SortRel >(arena); } @@ -34555,6 +36576,15 @@ template<> PROTOBUF_NOINLINE ::substrait::ExchangeRel_ExchangeTarget* Arena::Cre template<> PROTOBUF_NOINLINE ::substrait::ExchangeRel* Arena::CreateMaybeMessage< ::substrait::ExchangeRel >(Arena* arena) { return Arena::CreateMessageInternal< ::substrait::ExchangeRel >(arena); } +template<> PROTOBUF_NOINLINE ::substrait::ExpandRel_ExpandField* Arena::CreateMaybeMessage< ::substrait::ExpandRel_ExpandField >(Arena* arena) { + return Arena::CreateMessageInternal< ::substrait::ExpandRel_ExpandField >(arena); +} +template<> PROTOBUF_NOINLINE ::substrait::ExpandRel_SwitchingField* Arena::CreateMaybeMessage< ::substrait::ExpandRel_SwitchingField >(Arena* arena) { + return Arena::CreateMessageInternal< ::substrait::ExpandRel_SwitchingField >(arena); +} +template<> PROTOBUF_NOINLINE ::substrait::ExpandRel* Arena::CreateMaybeMessage< ::substrait::ExpandRel >(Arena* arena) { + return Arena::CreateMessageInternal< ::substrait::ExpandRel >(arena); +} template<> PROTOBUF_NOINLINE ::substrait::RelRoot* Arena::CreateMaybeMessage< ::substrait::RelRoot >(Arena* arena) { return Arena::CreateMessageInternal< ::substrait::RelRoot >(arena); } diff --git a/third_party/substrait/substrait/algebra.pb.h b/third_party/substrait/substrait/algebra.pb.h index 015f1cc..2b850c9 100644 --- a/third_party/substrait/substrait/algebra.pb.h +++ b/third_party/substrait/substrait/algebra.pb.h @@ -51,7 +51,7 @@ struct TableStruct_substrait_2falgebra_2eproto { PROTOBUF_SECTION_VARIABLE(protodesc_cold); static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[] PROTOBUF_SECTION_VARIABLE(protodesc_cold); - static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[108] + static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[113] PROTOBUF_SECTION_VARIABLE(protodesc_cold); static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]; static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; @@ -74,6 +74,12 @@ extern AggregateRel_GroupingDefaultTypeInternal _AggregateRel_Grouping_default_i class AggregateRel_Measure; struct AggregateRel_MeasureDefaultTypeInternal; extern AggregateRel_MeasureDefaultTypeInternal _AggregateRel_Measure_default_instance_; +class ConsistentPartitionWindowRel; +struct ConsistentPartitionWindowRelDefaultTypeInternal; +extern ConsistentPartitionWindowRelDefaultTypeInternal _ConsistentPartitionWindowRel_default_instance_; +class ConsistentPartitionWindowRel_WindowRelFunction; +struct ConsistentPartitionWindowRel_WindowRelFunctionDefaultTypeInternal; +extern ConsistentPartitionWindowRel_WindowRelFunctionDefaultTypeInternal _ConsistentPartitionWindowRel_WindowRelFunction_default_instance_; class CrossRel; struct CrossRelDefaultTypeInternal; extern CrossRelDefaultTypeInternal _CrossRel_default_instance_; @@ -101,6 +107,15 @@ extern ExchangeRel_ScatterFieldsDefaultTypeInternal _ExchangeRel_ScatterFields_d class ExchangeRel_SingleBucketExpression; struct ExchangeRel_SingleBucketExpressionDefaultTypeInternal; extern ExchangeRel_SingleBucketExpressionDefaultTypeInternal _ExchangeRel_SingleBucketExpression_default_instance_; +class ExpandRel; +struct ExpandRelDefaultTypeInternal; +extern ExpandRelDefaultTypeInternal _ExpandRel_default_instance_; +class ExpandRel_ExpandField; +struct ExpandRel_ExpandFieldDefaultTypeInternal; +extern ExpandRel_ExpandFieldDefaultTypeInternal _ExpandRel_ExpandField_default_instance_; +class ExpandRel_SwitchingField; +struct ExpandRel_SwitchingFieldDefaultTypeInternal; +extern ExpandRel_SwitchingFieldDefaultTypeInternal _ExpandRel_SwitchingField_default_instance_; class Expression; struct ExpressionDefaultTypeInternal; extern ExpressionDefaultTypeInternal _Expression_default_instance_; @@ -390,6 +405,8 @@ template<> ::substrait::AggregateFunction_ReferenceRel* Arena::CreateMaybeMessag template<> ::substrait::AggregateRel* Arena::CreateMaybeMessage<::substrait::AggregateRel>(Arena*); template<> ::substrait::AggregateRel_Grouping* Arena::CreateMaybeMessage<::substrait::AggregateRel_Grouping>(Arena*); template<> ::substrait::AggregateRel_Measure* Arena::CreateMaybeMessage<::substrait::AggregateRel_Measure>(Arena*); +template<> ::substrait::ConsistentPartitionWindowRel* Arena::CreateMaybeMessage<::substrait::ConsistentPartitionWindowRel>(Arena*); +template<> ::substrait::ConsistentPartitionWindowRel_WindowRelFunction* Arena::CreateMaybeMessage<::substrait::ConsistentPartitionWindowRel_WindowRelFunction>(Arena*); template<> ::substrait::CrossRel* Arena::CreateMaybeMessage<::substrait::CrossRel>(Arena*); template<> ::substrait::DdlRel* Arena::CreateMaybeMessage<::substrait::DdlRel>(Arena*); template<> ::substrait::ExchangeRel* Arena::CreateMaybeMessage<::substrait::ExchangeRel>(Arena*); @@ -399,6 +416,9 @@ template<> ::substrait::ExchangeRel_MultiBucketExpression* Arena::CreateMaybeMes template<> ::substrait::ExchangeRel_RoundRobin* Arena::CreateMaybeMessage<::substrait::ExchangeRel_RoundRobin>(Arena*); template<> ::substrait::ExchangeRel_ScatterFields* Arena::CreateMaybeMessage<::substrait::ExchangeRel_ScatterFields>(Arena*); template<> ::substrait::ExchangeRel_SingleBucketExpression* Arena::CreateMaybeMessage<::substrait::ExchangeRel_SingleBucketExpression>(Arena*); +template<> ::substrait::ExpandRel* Arena::CreateMaybeMessage<::substrait::ExpandRel>(Arena*); +template<> ::substrait::ExpandRel_ExpandField* Arena::CreateMaybeMessage<::substrait::ExpandRel_ExpandField>(Arena*); +template<> ::substrait::ExpandRel_SwitchingField* Arena::CreateMaybeMessage<::substrait::ExpandRel_SwitchingField>(Arena*); template<> ::substrait::Expression* Arena::CreateMaybeMessage<::substrait::Expression>(Arena*); template<> ::substrait::Expression_Cast* Arena::CreateMaybeMessage<::substrait::Expression_Cast>(Arena*); template<> ::substrait::Expression_EmbeddedFunction* Arena::CreateMaybeMessage<::substrait::Expression_EmbeddedFunction>(Arena*); @@ -730,6 +750,32 @@ inline bool MergeJoinRel_JoinType_Parse( return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<MergeJoinRel_JoinType>( MergeJoinRel_JoinType_descriptor(), name, value); } +enum Expression_WindowFunction_BoundsType : int { + Expression_WindowFunction_BoundsType_BOUNDS_TYPE_UNSPECIFIED = 0, + Expression_WindowFunction_BoundsType_BOUNDS_TYPE_ROWS = 1, + Expression_WindowFunction_BoundsType_BOUNDS_TYPE_RANGE = 2, + Expression_WindowFunction_BoundsType_Expression_WindowFunction_BoundsType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<int32_t>::min(), + Expression_WindowFunction_BoundsType_Expression_WindowFunction_BoundsType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<int32_t>::max() +}; +bool Expression_WindowFunction_BoundsType_IsValid(int value); +constexpr Expression_WindowFunction_BoundsType Expression_WindowFunction_BoundsType_BoundsType_MIN = Expression_WindowFunction_BoundsType_BOUNDS_TYPE_UNSPECIFIED; +constexpr Expression_WindowFunction_BoundsType Expression_WindowFunction_BoundsType_BoundsType_MAX = Expression_WindowFunction_BoundsType_BOUNDS_TYPE_RANGE; +constexpr int Expression_WindowFunction_BoundsType_BoundsType_ARRAYSIZE = Expression_WindowFunction_BoundsType_BoundsType_MAX + 1; + +const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* Expression_WindowFunction_BoundsType_descriptor(); +template<typename T> +inline const std::string& Expression_WindowFunction_BoundsType_Name(T enum_t_value) { + static_assert(::std::is_same<T, Expression_WindowFunction_BoundsType>::value || + ::std::is_integral<T>::value, + "Incorrect type passed to function Expression_WindowFunction_BoundsType_Name."); + return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum( + Expression_WindowFunction_BoundsType_descriptor(), enum_t_value); +} +inline bool Expression_WindowFunction_BoundsType_Parse( + ::PROTOBUF_NAMESPACE_ID::ConstStringParam name, Expression_WindowFunction_BoundsType* value) { + return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<Expression_WindowFunction_BoundsType>( + Expression_WindowFunction_BoundsType_descriptor(), name, value); +} enum Expression_Cast_FailureBehavior : int { Expression_Cast_FailureBehavior_FAILURE_BEHAVIOR_UNSPECIFIED = 0, Expression_Cast_FailureBehavior_FAILURE_BEHAVIOR_RETURN_NULL = 1, @@ -5394,24 +5440,24 @@ class AggregateRel final : }; // ------------------------------------------------------------------- -class SortRel final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:substrait.SortRel) */ { +class ConsistentPartitionWindowRel_WindowRelFunction final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:substrait.ConsistentPartitionWindowRel.WindowRelFunction) */ { public: - inline SortRel() : SortRel(nullptr) {} - ~SortRel() override; - explicit constexpr SortRel(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline ConsistentPartitionWindowRel_WindowRelFunction() : ConsistentPartitionWindowRel_WindowRelFunction(nullptr) {} + ~ConsistentPartitionWindowRel_WindowRelFunction() override; + explicit constexpr ConsistentPartitionWindowRel_WindowRelFunction(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - SortRel(const SortRel& from); - SortRel(SortRel&& from) noexcept - : SortRel() { + ConsistentPartitionWindowRel_WindowRelFunction(const ConsistentPartitionWindowRel_WindowRelFunction& from); + ConsistentPartitionWindowRel_WindowRelFunction(ConsistentPartitionWindowRel_WindowRelFunction&& from) noexcept + : ConsistentPartitionWindowRel_WindowRelFunction() { *this = ::std::move(from); } - inline SortRel& operator=(const SortRel& from) { + inline ConsistentPartitionWindowRel_WindowRelFunction& operator=(const ConsistentPartitionWindowRel_WindowRelFunction& from) { CopyFrom(from); return *this; } - inline SortRel& operator=(SortRel&& from) noexcept { + inline ConsistentPartitionWindowRel_WindowRelFunction& operator=(ConsistentPartitionWindowRel_WindowRelFunction&& from) noexcept { if (this == &from) return *this; if (GetOwningArena() == from.GetOwningArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE @@ -5434,20 +5480,20 @@ class SortRel final : static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const SortRel& default_instance() { + static const ConsistentPartitionWindowRel_WindowRelFunction& default_instance() { return *internal_default_instance(); } - static inline const SortRel* internal_default_instance() { - return reinterpret_cast<const SortRel*>( - &_SortRel_default_instance_); + static inline const ConsistentPartitionWindowRel_WindowRelFunction* internal_default_instance() { + return reinterpret_cast<const ConsistentPartitionWindowRel_WindowRelFunction*>( + &_ConsistentPartitionWindowRel_WindowRelFunction_default_instance_); } static constexpr int kIndexInFileMessages = 23; - friend void swap(SortRel& a, SortRel& b) { + friend void swap(ConsistentPartitionWindowRel_WindowRelFunction& a, ConsistentPartitionWindowRel_WindowRelFunction& b) { a.Swap(&b); } - inline void Swap(SortRel* other) { + inline void Swap(ConsistentPartitionWindowRel_WindowRelFunction* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP if (GetOwningArena() != nullptr && @@ -5460,7 +5506,7 @@ class SortRel final : ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(SortRel* other) { + void UnsafeArenaSwap(ConsistentPartitionWindowRel_WindowRelFunction* other) { if (other == this) return; GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); InternalSwap(other); @@ -5468,13 +5514,13 @@ class SortRel final : // implements Message ---------------------------------------------- - SortRel* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage<SortRel>(arena); + ConsistentPartitionWindowRel_WindowRelFunction* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage<ConsistentPartitionWindowRel_WindowRelFunction>(arena); } using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const SortRel& from); + void CopyFrom(const ConsistentPartitionWindowRel_WindowRelFunction& from); using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const SortRel& from); + void MergeFrom(const ConsistentPartitionWindowRel_WindowRelFunction& from); private: static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, const ::PROTOBUF_NAMESPACE_ID::Message& from); public: @@ -5491,15 +5537,15 @@ class SortRel final : void SharedCtor(); void SharedDtor(); void SetCachedSize(int size) const final; - void InternalSwap(SortRel* other); + void InternalSwap(ConsistentPartitionWindowRel_WindowRelFunction* other); private: friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "substrait.SortRel"; + return "substrait.ConsistentPartitionWindowRel.WindowRelFunction"; } protected: - explicit SortRel(::PROTOBUF_NAMESPACE_ID::Arena* arena, + explicit ConsistentPartitionWindowRel_WindowRelFunction(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); private: static void ArenaDtor(void* object); @@ -5516,117 +5562,181 @@ class SortRel final : // accessors ------------------------------------------------------- enum : int { - kSortsFieldNumber = 3, - kCommonFieldNumber = 1, - kInputFieldNumber = 2, - kAdvancedExtensionFieldNumber = 10, + kArgumentsFieldNumber = 9, + kOptionsFieldNumber = 11, + kUpperBoundFieldNumber = 4, + kLowerBoundFieldNumber = 5, + kOutputTypeFieldNumber = 7, + kFunctionReferenceFieldNumber = 1, + kPhaseFieldNumber = 6, + kInvocationFieldNumber = 10, + kBoundsTypeFieldNumber = 12, }; - // repeated .substrait.SortField sorts = 3; - int sorts_size() const; + // repeated .substrait.FunctionArgument arguments = 9; + int arguments_size() const; private: - int _internal_sorts_size() const; + int _internal_arguments_size() const; public: - void clear_sorts(); - ::substrait::SortField* mutable_sorts(int index); - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::SortField >* - mutable_sorts(); + void clear_arguments(); + ::substrait::FunctionArgument* mutable_arguments(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::FunctionArgument >* + mutable_arguments(); private: - const ::substrait::SortField& _internal_sorts(int index) const; - ::substrait::SortField* _internal_add_sorts(); + const ::substrait::FunctionArgument& _internal_arguments(int index) const; + ::substrait::FunctionArgument* _internal_add_arguments(); public: - const ::substrait::SortField& sorts(int index) const; - ::substrait::SortField* add_sorts(); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::SortField >& - sorts() const; + const ::substrait::FunctionArgument& arguments(int index) const; + ::substrait::FunctionArgument* add_arguments(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::FunctionArgument >& + arguments() const; - // .substrait.RelCommon common = 1; - bool has_common() const; + // repeated .substrait.FunctionOption options = 11; + int options_size() const; private: - bool _internal_has_common() const; + int _internal_options_size() const; public: - void clear_common(); - const ::substrait::RelCommon& common() const; - PROTOBUF_NODISCARD ::substrait::RelCommon* release_common(); - ::substrait::RelCommon* mutable_common(); - void set_allocated_common(::substrait::RelCommon* common); + void clear_options(); + ::substrait::FunctionOption* mutable_options(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::FunctionOption >* + mutable_options(); private: - const ::substrait::RelCommon& _internal_common() const; - ::substrait::RelCommon* _internal_mutable_common(); + const ::substrait::FunctionOption& _internal_options(int index) const; + ::substrait::FunctionOption* _internal_add_options(); public: - void unsafe_arena_set_allocated_common( - ::substrait::RelCommon* common); - ::substrait::RelCommon* unsafe_arena_release_common(); + const ::substrait::FunctionOption& options(int index) const; + ::substrait::FunctionOption* add_options(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::FunctionOption >& + options() const; - // .substrait.Rel input = 2; - bool has_input() const; + // .substrait.Expression.WindowFunction.Bound upper_bound = 4; + bool has_upper_bound() const; private: - bool _internal_has_input() const; + bool _internal_has_upper_bound() const; public: - void clear_input(); - const ::substrait::Rel& input() const; - PROTOBUF_NODISCARD ::substrait::Rel* release_input(); - ::substrait::Rel* mutable_input(); - void set_allocated_input(::substrait::Rel* input); + void clear_upper_bound(); + const ::substrait::Expression_WindowFunction_Bound& upper_bound() const; + PROTOBUF_NODISCARD ::substrait::Expression_WindowFunction_Bound* release_upper_bound(); + ::substrait::Expression_WindowFunction_Bound* mutable_upper_bound(); + void set_allocated_upper_bound(::substrait::Expression_WindowFunction_Bound* upper_bound); private: - const ::substrait::Rel& _internal_input() const; - ::substrait::Rel* _internal_mutable_input(); + const ::substrait::Expression_WindowFunction_Bound& _internal_upper_bound() const; + ::substrait::Expression_WindowFunction_Bound* _internal_mutable_upper_bound(); public: - void unsafe_arena_set_allocated_input( - ::substrait::Rel* input); - ::substrait::Rel* unsafe_arena_release_input(); + void unsafe_arena_set_allocated_upper_bound( + ::substrait::Expression_WindowFunction_Bound* upper_bound); + ::substrait::Expression_WindowFunction_Bound* unsafe_arena_release_upper_bound(); - // .substrait.extensions.AdvancedExtension advanced_extension = 10; - bool has_advanced_extension() const; + // .substrait.Expression.WindowFunction.Bound lower_bound = 5; + bool has_lower_bound() const; private: - bool _internal_has_advanced_extension() const; + bool _internal_has_lower_bound() const; public: - void clear_advanced_extension(); - const ::substrait::extensions::AdvancedExtension& advanced_extension() const; - PROTOBUF_NODISCARD ::substrait::extensions::AdvancedExtension* release_advanced_extension(); - ::substrait::extensions::AdvancedExtension* mutable_advanced_extension(); - void set_allocated_advanced_extension(::substrait::extensions::AdvancedExtension* advanced_extension); + void clear_lower_bound(); + const ::substrait::Expression_WindowFunction_Bound& lower_bound() const; + PROTOBUF_NODISCARD ::substrait::Expression_WindowFunction_Bound* release_lower_bound(); + ::substrait::Expression_WindowFunction_Bound* mutable_lower_bound(); + void set_allocated_lower_bound(::substrait::Expression_WindowFunction_Bound* lower_bound); private: - const ::substrait::extensions::AdvancedExtension& _internal_advanced_extension() const; - ::substrait::extensions::AdvancedExtension* _internal_mutable_advanced_extension(); + const ::substrait::Expression_WindowFunction_Bound& _internal_lower_bound() const; + ::substrait::Expression_WindowFunction_Bound* _internal_mutable_lower_bound(); public: - void unsafe_arena_set_allocated_advanced_extension( - ::substrait::extensions::AdvancedExtension* advanced_extension); - ::substrait::extensions::AdvancedExtension* unsafe_arena_release_advanced_extension(); + void unsafe_arena_set_allocated_lower_bound( + ::substrait::Expression_WindowFunction_Bound* lower_bound); + ::substrait::Expression_WindowFunction_Bound* unsafe_arena_release_lower_bound(); - // @@protoc_insertion_point(class_scope:substrait.SortRel) + // .substrait.Type output_type = 7; + bool has_output_type() const; + private: + bool _internal_has_output_type() const; + public: + void clear_output_type(); + const ::substrait::Type& output_type() const; + PROTOBUF_NODISCARD ::substrait::Type* release_output_type(); + ::substrait::Type* mutable_output_type(); + void set_allocated_output_type(::substrait::Type* output_type); + private: + const ::substrait::Type& _internal_output_type() const; + ::substrait::Type* _internal_mutable_output_type(); + public: + void unsafe_arena_set_allocated_output_type( + ::substrait::Type* output_type); + ::substrait::Type* unsafe_arena_release_output_type(); + + // uint32 function_reference = 1; + void clear_function_reference(); + uint32_t function_reference() const; + void set_function_reference(uint32_t value); + private: + uint32_t _internal_function_reference() const; + void _internal_set_function_reference(uint32_t value); + public: + + // .substrait.AggregationPhase phase = 6; + void clear_phase(); + ::substrait::AggregationPhase phase() const; + void set_phase(::substrait::AggregationPhase value); + private: + ::substrait::AggregationPhase _internal_phase() const; + void _internal_set_phase(::substrait::AggregationPhase value); + public: + + // .substrait.AggregateFunction.AggregationInvocation invocation = 10; + void clear_invocation(); + ::substrait::AggregateFunction_AggregationInvocation invocation() const; + void set_invocation(::substrait::AggregateFunction_AggregationInvocation value); + private: + ::substrait::AggregateFunction_AggregationInvocation _internal_invocation() const; + void _internal_set_invocation(::substrait::AggregateFunction_AggregationInvocation value); + public: + + // .substrait.Expression.WindowFunction.BoundsType bounds_type = 12; + void clear_bounds_type(); + ::substrait::Expression_WindowFunction_BoundsType bounds_type() const; + void set_bounds_type(::substrait::Expression_WindowFunction_BoundsType value); + private: + ::substrait::Expression_WindowFunction_BoundsType _internal_bounds_type() const; + void _internal_set_bounds_type(::substrait::Expression_WindowFunction_BoundsType value); + public: + + // @@protoc_insertion_point(class_scope:substrait.ConsistentPartitionWindowRel.WindowRelFunction) private: class _Internal; template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; typedef void InternalArenaConstructable_; typedef void DestructorSkippable_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::SortField > sorts_; - ::substrait::RelCommon* common_; - ::substrait::Rel* input_; - ::substrait::extensions::AdvancedExtension* advanced_extension_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::FunctionArgument > arguments_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::FunctionOption > options_; + ::substrait::Expression_WindowFunction_Bound* upper_bound_; + ::substrait::Expression_WindowFunction_Bound* lower_bound_; + ::substrait::Type* output_type_; + uint32_t function_reference_; + int phase_; + int invocation_; + int bounds_type_; mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; friend struct ::TableStruct_substrait_2falgebra_2eproto; }; // ------------------------------------------------------------------- -class FilterRel final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:substrait.FilterRel) */ { +class ConsistentPartitionWindowRel final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:substrait.ConsistentPartitionWindowRel) */ { public: - inline FilterRel() : FilterRel(nullptr) {} - ~FilterRel() override; - explicit constexpr FilterRel(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline ConsistentPartitionWindowRel() : ConsistentPartitionWindowRel(nullptr) {} + ~ConsistentPartitionWindowRel() override; + explicit constexpr ConsistentPartitionWindowRel(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - FilterRel(const FilterRel& from); - FilterRel(FilterRel&& from) noexcept - : FilterRel() { + ConsistentPartitionWindowRel(const ConsistentPartitionWindowRel& from); + ConsistentPartitionWindowRel(ConsistentPartitionWindowRel&& from) noexcept + : ConsistentPartitionWindowRel() { *this = ::std::move(from); } - inline FilterRel& operator=(const FilterRel& from) { + inline ConsistentPartitionWindowRel& operator=(const ConsistentPartitionWindowRel& from) { CopyFrom(from); return *this; } - inline FilterRel& operator=(FilterRel&& from) noexcept { + inline ConsistentPartitionWindowRel& operator=(ConsistentPartitionWindowRel&& from) noexcept { if (this == &from) return *this; if (GetOwningArena() == from.GetOwningArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE @@ -5649,20 +5759,20 @@ class FilterRel final : static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const FilterRel& default_instance() { + static const ConsistentPartitionWindowRel& default_instance() { return *internal_default_instance(); } - static inline const FilterRel* internal_default_instance() { - return reinterpret_cast<const FilterRel*>( - &_FilterRel_default_instance_); + static inline const ConsistentPartitionWindowRel* internal_default_instance() { + return reinterpret_cast<const ConsistentPartitionWindowRel*>( + &_ConsistentPartitionWindowRel_default_instance_); } static constexpr int kIndexInFileMessages = 24; - friend void swap(FilterRel& a, FilterRel& b) { + friend void swap(ConsistentPartitionWindowRel& a, ConsistentPartitionWindowRel& b) { a.Swap(&b); } - inline void Swap(FilterRel* other) { + inline void Swap(ConsistentPartitionWindowRel* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP if (GetOwningArena() != nullptr && @@ -5675,7 +5785,7 @@ class FilterRel final : ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(FilterRel* other) { + void UnsafeArenaSwap(ConsistentPartitionWindowRel* other) { if (other == this) return; GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); InternalSwap(other); @@ -5683,13 +5793,13 @@ class FilterRel final : // implements Message ---------------------------------------------- - FilterRel* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage<FilterRel>(arena); + ConsistentPartitionWindowRel* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage<ConsistentPartitionWindowRel>(arena); } using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const FilterRel& from); + void CopyFrom(const ConsistentPartitionWindowRel& from); using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const FilterRel& from); + void MergeFrom(const ConsistentPartitionWindowRel& from); private: static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, const ::PROTOBUF_NAMESPACE_ID::Message& from); public: @@ -5706,15 +5816,15 @@ class FilterRel final : void SharedCtor(); void SharedDtor(); void SetCachedSize(int size) const final; - void InternalSwap(FilterRel* other); + void InternalSwap(ConsistentPartitionWindowRel* other); private: friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "substrait.FilterRel"; + return "substrait.ConsistentPartitionWindowRel"; } protected: - explicit FilterRel(::PROTOBUF_NAMESPACE_ID::Arena* arena, + explicit ConsistentPartitionWindowRel(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); private: static void ArenaDtor(void* object); @@ -5728,12 +5838,484 @@ class FilterRel final : // nested types ---------------------------------------------------- + typedef ConsistentPartitionWindowRel_WindowRelFunction WindowRelFunction; + // accessors ------------------------------------------------------- enum : int { + kWindowFunctionsFieldNumber = 3, + kPartitionExpressionsFieldNumber = 4, + kSortsFieldNumber = 5, kCommonFieldNumber = 1, kInputFieldNumber = 2, - kConditionFieldNumber = 3, + kAdvancedExtensionFieldNumber = 10, + }; + // repeated .substrait.ConsistentPartitionWindowRel.WindowRelFunction window_functions = 3; + int window_functions_size() const; + private: + int _internal_window_functions_size() const; + public: + void clear_window_functions(); + ::substrait::ConsistentPartitionWindowRel_WindowRelFunction* mutable_window_functions(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::ConsistentPartitionWindowRel_WindowRelFunction >* + mutable_window_functions(); + private: + const ::substrait::ConsistentPartitionWindowRel_WindowRelFunction& _internal_window_functions(int index) const; + ::substrait::ConsistentPartitionWindowRel_WindowRelFunction* _internal_add_window_functions(); + public: + const ::substrait::ConsistentPartitionWindowRel_WindowRelFunction& window_functions(int index) const; + ::substrait::ConsistentPartitionWindowRel_WindowRelFunction* add_window_functions(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::ConsistentPartitionWindowRel_WindowRelFunction >& + window_functions() const; + + // repeated .substrait.Expression partition_expressions = 4; + int partition_expressions_size() const; + private: + int _internal_partition_expressions_size() const; + public: + void clear_partition_expressions(); + ::substrait::Expression* mutable_partition_expressions(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::Expression >* + mutable_partition_expressions(); + private: + const ::substrait::Expression& _internal_partition_expressions(int index) const; + ::substrait::Expression* _internal_add_partition_expressions(); + public: + const ::substrait::Expression& partition_expressions(int index) const; + ::substrait::Expression* add_partition_expressions(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::Expression >& + partition_expressions() const; + + // repeated .substrait.SortField sorts = 5; + int sorts_size() const; + private: + int _internal_sorts_size() const; + public: + void clear_sorts(); + ::substrait::SortField* mutable_sorts(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::SortField >* + mutable_sorts(); + private: + const ::substrait::SortField& _internal_sorts(int index) const; + ::substrait::SortField* _internal_add_sorts(); + public: + const ::substrait::SortField& sorts(int index) const; + ::substrait::SortField* add_sorts(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::SortField >& + sorts() const; + + // .substrait.RelCommon common = 1; + bool has_common() const; + private: + bool _internal_has_common() const; + public: + void clear_common(); + const ::substrait::RelCommon& common() const; + PROTOBUF_NODISCARD ::substrait::RelCommon* release_common(); + ::substrait::RelCommon* mutable_common(); + void set_allocated_common(::substrait::RelCommon* common); + private: + const ::substrait::RelCommon& _internal_common() const; + ::substrait::RelCommon* _internal_mutable_common(); + public: + void unsafe_arena_set_allocated_common( + ::substrait::RelCommon* common); + ::substrait::RelCommon* unsafe_arena_release_common(); + + // .substrait.Rel input = 2; + bool has_input() const; + private: + bool _internal_has_input() const; + public: + void clear_input(); + const ::substrait::Rel& input() const; + PROTOBUF_NODISCARD ::substrait::Rel* release_input(); + ::substrait::Rel* mutable_input(); + void set_allocated_input(::substrait::Rel* input); + private: + const ::substrait::Rel& _internal_input() const; + ::substrait::Rel* _internal_mutable_input(); + public: + void unsafe_arena_set_allocated_input( + ::substrait::Rel* input); + ::substrait::Rel* unsafe_arena_release_input(); + + // .substrait.extensions.AdvancedExtension advanced_extension = 10; + bool has_advanced_extension() const; + private: + bool _internal_has_advanced_extension() const; + public: + void clear_advanced_extension(); + const ::substrait::extensions::AdvancedExtension& advanced_extension() const; + PROTOBUF_NODISCARD ::substrait::extensions::AdvancedExtension* release_advanced_extension(); + ::substrait::extensions::AdvancedExtension* mutable_advanced_extension(); + void set_allocated_advanced_extension(::substrait::extensions::AdvancedExtension* advanced_extension); + private: + const ::substrait::extensions::AdvancedExtension& _internal_advanced_extension() const; + ::substrait::extensions::AdvancedExtension* _internal_mutable_advanced_extension(); + public: + void unsafe_arena_set_allocated_advanced_extension( + ::substrait::extensions::AdvancedExtension* advanced_extension); + ::substrait::extensions::AdvancedExtension* unsafe_arena_release_advanced_extension(); + + // @@protoc_insertion_point(class_scope:substrait.ConsistentPartitionWindowRel) + private: + class _Internal; + + template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::ConsistentPartitionWindowRel_WindowRelFunction > window_functions_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::Expression > partition_expressions_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::SortField > sorts_; + ::substrait::RelCommon* common_; + ::substrait::Rel* input_; + ::substrait::extensions::AdvancedExtension* advanced_extension_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_substrait_2falgebra_2eproto; +}; +// ------------------------------------------------------------------- + +class SortRel final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:substrait.SortRel) */ { + public: + inline SortRel() : SortRel(nullptr) {} + ~SortRel() override; + explicit constexpr SortRel(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + SortRel(const SortRel& from); + SortRel(SortRel&& from) noexcept + : SortRel() { + *this = ::std::move(from); + } + + inline SortRel& operator=(const SortRel& from) { + CopyFrom(from); + return *this; + } + inline SortRel& operator=(SortRel&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const SortRel& default_instance() { + return *internal_default_instance(); + } + static inline const SortRel* internal_default_instance() { + return reinterpret_cast<const SortRel*>( + &_SortRel_default_instance_); + } + static constexpr int kIndexInFileMessages = + 25; + + friend void swap(SortRel& a, SortRel& b) { + a.Swap(&b); + } + inline void Swap(SortRel* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && + GetOwningArena() == other->GetOwningArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(SortRel* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + SortRel* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage<SortRel>(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const SortRel& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const SortRel& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, const ::PROTOBUF_NAMESPACE_ID::Message& from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(SortRel* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "substrait.SortRel"; + } + protected: + explicit SortRel(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kSortsFieldNumber = 3, + kCommonFieldNumber = 1, + kInputFieldNumber = 2, + kAdvancedExtensionFieldNumber = 10, + }; + // repeated .substrait.SortField sorts = 3; + int sorts_size() const; + private: + int _internal_sorts_size() const; + public: + void clear_sorts(); + ::substrait::SortField* mutable_sorts(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::SortField >* + mutable_sorts(); + private: + const ::substrait::SortField& _internal_sorts(int index) const; + ::substrait::SortField* _internal_add_sorts(); + public: + const ::substrait::SortField& sorts(int index) const; + ::substrait::SortField* add_sorts(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::SortField >& + sorts() const; + + // .substrait.RelCommon common = 1; + bool has_common() const; + private: + bool _internal_has_common() const; + public: + void clear_common(); + const ::substrait::RelCommon& common() const; + PROTOBUF_NODISCARD ::substrait::RelCommon* release_common(); + ::substrait::RelCommon* mutable_common(); + void set_allocated_common(::substrait::RelCommon* common); + private: + const ::substrait::RelCommon& _internal_common() const; + ::substrait::RelCommon* _internal_mutable_common(); + public: + void unsafe_arena_set_allocated_common( + ::substrait::RelCommon* common); + ::substrait::RelCommon* unsafe_arena_release_common(); + + // .substrait.Rel input = 2; + bool has_input() const; + private: + bool _internal_has_input() const; + public: + void clear_input(); + const ::substrait::Rel& input() const; + PROTOBUF_NODISCARD ::substrait::Rel* release_input(); + ::substrait::Rel* mutable_input(); + void set_allocated_input(::substrait::Rel* input); + private: + const ::substrait::Rel& _internal_input() const; + ::substrait::Rel* _internal_mutable_input(); + public: + void unsafe_arena_set_allocated_input( + ::substrait::Rel* input); + ::substrait::Rel* unsafe_arena_release_input(); + + // .substrait.extensions.AdvancedExtension advanced_extension = 10; + bool has_advanced_extension() const; + private: + bool _internal_has_advanced_extension() const; + public: + void clear_advanced_extension(); + const ::substrait::extensions::AdvancedExtension& advanced_extension() const; + PROTOBUF_NODISCARD ::substrait::extensions::AdvancedExtension* release_advanced_extension(); + ::substrait::extensions::AdvancedExtension* mutable_advanced_extension(); + void set_allocated_advanced_extension(::substrait::extensions::AdvancedExtension* advanced_extension); + private: + const ::substrait::extensions::AdvancedExtension& _internal_advanced_extension() const; + ::substrait::extensions::AdvancedExtension* _internal_mutable_advanced_extension(); + public: + void unsafe_arena_set_allocated_advanced_extension( + ::substrait::extensions::AdvancedExtension* advanced_extension); + ::substrait::extensions::AdvancedExtension* unsafe_arena_release_advanced_extension(); + + // @@protoc_insertion_point(class_scope:substrait.SortRel) + private: + class _Internal; + + template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::SortField > sorts_; + ::substrait::RelCommon* common_; + ::substrait::Rel* input_; + ::substrait::extensions::AdvancedExtension* advanced_extension_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_substrait_2falgebra_2eproto; +}; +// ------------------------------------------------------------------- + +class FilterRel final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:substrait.FilterRel) */ { + public: + inline FilterRel() : FilterRel(nullptr) {} + ~FilterRel() override; + explicit constexpr FilterRel(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + FilterRel(const FilterRel& from); + FilterRel(FilterRel&& from) noexcept + : FilterRel() { + *this = ::std::move(from); + } + + inline FilterRel& operator=(const FilterRel& from) { + CopyFrom(from); + return *this; + } + inline FilterRel& operator=(FilterRel&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const FilterRel& default_instance() { + return *internal_default_instance(); + } + static inline const FilterRel* internal_default_instance() { + return reinterpret_cast<const FilterRel*>( + &_FilterRel_default_instance_); + } + static constexpr int kIndexInFileMessages = + 26; + + friend void swap(FilterRel& a, FilterRel& b) { + a.Swap(&b); + } + inline void Swap(FilterRel* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && + GetOwningArena() == other->GetOwningArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(FilterRel* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + FilterRel* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage<FilterRel>(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const FilterRel& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const FilterRel& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, const ::PROTOBUF_NAMESPACE_ID::Message& from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(FilterRel* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "substrait.FilterRel"; + } + protected: + explicit FilterRel(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kCommonFieldNumber = 1, + kInputFieldNumber = 2, + kConditionFieldNumber = 3, kAdvancedExtensionFieldNumber = 10, }; // .substrait.RelCommon common = 1; @@ -5872,7 +6454,7 @@ class SetRel final : &_SetRel_default_instance_); } static constexpr int kIndexInFileMessages = - 25; + 27; friend void swap(SetRel& a, SetRel& b) { a.Swap(&b); @@ -6118,7 +6700,7 @@ class ExtensionSingleRel final : &_ExtensionSingleRel_default_instance_); } static constexpr int kIndexInFileMessages = - 26; + 28; friend void swap(ExtensionSingleRel& a, ExtensionSingleRel& b) { a.Swap(&b); @@ -6313,7 +6895,7 @@ class ExtensionLeafRel final : &_ExtensionLeafRel_default_instance_); } static constexpr int kIndexInFileMessages = - 27; + 29; friend void swap(ExtensionLeafRel& a, ExtensionLeafRel& b) { a.Swap(&b); @@ -6488,7 +7070,7 @@ class ExtensionMultiRel final : &_ExtensionMultiRel_default_instance_); } static constexpr int kIndexInFileMessages = - 28; + 30; friend void swap(ExtensionMultiRel& a, ExtensionMultiRel& b) { a.Swap(&b); @@ -6683,7 +7265,7 @@ class ExchangeRel_ScatterFields final : &_ExchangeRel_ScatterFields_default_instance_); } static constexpr int kIndexInFileMessages = - 29; + 31; friend void swap(ExchangeRel_ScatterFields& a, ExchangeRel_ScatterFields& b) { a.Swap(&b); @@ -6838,7 +7420,7 @@ class ExchangeRel_SingleBucketExpression final : &_ExchangeRel_SingleBucketExpression_default_instance_); } static constexpr int kIndexInFileMessages = - 30; + 32; friend void swap(ExchangeRel_SingleBucketExpression& a, ExchangeRel_SingleBucketExpression& b) { a.Swap(&b); @@ -6993,7 +7575,7 @@ class ExchangeRel_MultiBucketExpression final : &_ExchangeRel_MultiBucketExpression_default_instance_); } static constexpr int kIndexInFileMessages = - 31; + 33; friend void swap(ExchangeRel_MultiBucketExpression& a, ExchangeRel_MultiBucketExpression& b) { a.Swap(&b); @@ -7158,7 +7740,7 @@ class ExchangeRel_Broadcast final : &_ExchangeRel_Broadcast_default_instance_); } static constexpr int kIndexInFileMessages = - 32; + 34; friend void swap(ExchangeRel_Broadcast& a, ExchangeRel_Broadcast& b) { a.Swap(&b); @@ -7277,7 +7859,7 @@ class ExchangeRel_RoundRobin final : &_ExchangeRel_RoundRobin_default_instance_); } static constexpr int kIndexInFileMessages = - 33; + 35; friend void swap(ExchangeRel_RoundRobin& a, ExchangeRel_RoundRobin& b) { a.Swap(&b); @@ -7429,7 +8011,7 @@ class ExchangeRel_ExchangeTarget final : &_ExchangeRel_ExchangeTarget_default_instance_); } static constexpr int kIndexInFileMessages = - 34; + 36; friend void swap(ExchangeRel_ExchangeTarget& a, ExchangeRel_ExchangeTarget& b) { a.Swap(&b); @@ -7651,7 +8233,7 @@ class ExchangeRel final : &_ExchangeRel_default_instance_); } static constexpr int kIndexInFileMessages = - 35; + 37; friend void swap(ExchangeRel& a, ExchangeRel& b) { a.Swap(&b); @@ -7952,24 +8534,24 @@ class ExchangeRel final : }; // ------------------------------------------------------------------- -class RelRoot final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:substrait.RelRoot) */ { +class ExpandRel_ExpandField final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:substrait.ExpandRel.ExpandField) */ { public: - inline RelRoot() : RelRoot(nullptr) {} - ~RelRoot() override; - explicit constexpr RelRoot(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline ExpandRel_ExpandField() : ExpandRel_ExpandField(nullptr) {} + ~ExpandRel_ExpandField() override; + explicit constexpr ExpandRel_ExpandField(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - RelRoot(const RelRoot& from); - RelRoot(RelRoot&& from) noexcept - : RelRoot() { + ExpandRel_ExpandField(const ExpandRel_ExpandField& from); + ExpandRel_ExpandField(ExpandRel_ExpandField&& from) noexcept + : ExpandRel_ExpandField() { *this = ::std::move(from); } - inline RelRoot& operator=(const RelRoot& from) { + inline ExpandRel_ExpandField& operator=(const ExpandRel_ExpandField& from) { CopyFrom(from); return *this; } - inline RelRoot& operator=(RelRoot&& from) noexcept { + inline ExpandRel_ExpandField& operator=(ExpandRel_ExpandField&& from) noexcept { if (this == &from) return *this; if (GetOwningArena() == from.GetOwningArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE @@ -7992,20 +8574,26 @@ class RelRoot final : static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { return default_instance().GetMetadata().reflection; } - static const RelRoot& default_instance() { + static const ExpandRel_ExpandField& default_instance() { return *internal_default_instance(); } - static inline const RelRoot* internal_default_instance() { - return reinterpret_cast<const RelRoot*>( - &_RelRoot_default_instance_); + enum FieldTypeCase { + kSwitchingField = 2, + kConsistentField = 3, + FIELD_TYPE_NOT_SET = 0, + }; + + static inline const ExpandRel_ExpandField* internal_default_instance() { + return reinterpret_cast<const ExpandRel_ExpandField*>( + &_ExpandRel_ExpandField_default_instance_); } static constexpr int kIndexInFileMessages = - 36; + 38; - friend void swap(RelRoot& a, RelRoot& b) { + friend void swap(ExpandRel_ExpandField& a, ExpandRel_ExpandField& b) { a.Swap(&b); } - inline void Swap(RelRoot* other) { + inline void Swap(ExpandRel_ExpandField* other) { if (other == this) return; #ifdef PROTOBUF_FORCE_COPY_IN_SWAP if (GetOwningArena() != nullptr && @@ -8018,7 +8606,7 @@ class RelRoot final : ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); } } - void UnsafeArenaSwap(RelRoot* other) { + void UnsafeArenaSwap(ExpandRel_ExpandField* other) { if (other == this) return; GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); InternalSwap(other); @@ -8026,13 +8614,13 @@ class RelRoot final : // implements Message ---------------------------------------------- - RelRoot* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { - return CreateMaybeMessage<RelRoot>(arena); + ExpandRel_ExpandField* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage<ExpandRel_ExpandField>(arena); } using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; - void CopyFrom(const RelRoot& from); + void CopyFrom(const ExpandRel_ExpandField& from); using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; - void MergeFrom(const RelRoot& from); + void MergeFrom(const ExpandRel_ExpandField& from); private: static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, const ::PROTOBUF_NAMESPACE_ID::Message& from); public: @@ -8049,15 +8637,15 @@ class RelRoot final : void SharedCtor(); void SharedDtor(); void SetCachedSize(int size) const final; - void InternalSwap(RelRoot* other); + void InternalSwap(ExpandRel_ExpandField* other); private: friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { - return "substrait.RelRoot"; + return "substrait.ExpandRel.ExpandField"; } protected: - explicit RelRoot(::PROTOBUF_NAMESPACE_ID::Arena* arena, + explicit ExpandRel_ExpandField(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned = false); private: static void ArenaDtor(void* object); @@ -8074,34 +8662,393 @@ class RelRoot final : // accessors ------------------------------------------------------- enum : int { - kNamesFieldNumber = 2, - kInputFieldNumber = 1, + kSwitchingFieldFieldNumber = 2, + kConsistentFieldFieldNumber = 3, }; - // repeated string names = 2; - int names_size() const; + // .substrait.ExpandRel.SwitchingField switching_field = 2; + bool has_switching_field() const; private: - int _internal_names_size() const; + bool _internal_has_switching_field() const; public: - void clear_names(); - const std::string& names(int index) const; - std::string* mutable_names(int index); - void set_names(int index, const std::string& value); - void set_names(int index, std::string&& value); - void set_names(int index, const char* value); - void set_names(int index, const char* value, size_t size); - std::string* add_names(); - void add_names(const std::string& value); - void add_names(std::string&& value); - void add_names(const char* value); - void add_names(const char* value, size_t size); - const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& names() const; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_names(); + void clear_switching_field(); + const ::substrait::ExpandRel_SwitchingField& switching_field() const; + PROTOBUF_NODISCARD ::substrait::ExpandRel_SwitchingField* release_switching_field(); + ::substrait::ExpandRel_SwitchingField* mutable_switching_field(); + void set_allocated_switching_field(::substrait::ExpandRel_SwitchingField* switching_field); private: - const std::string& _internal_names(int index) const; - std::string* _internal_add_names(); + const ::substrait::ExpandRel_SwitchingField& _internal_switching_field() const; + ::substrait::ExpandRel_SwitchingField* _internal_mutable_switching_field(); public: + void unsafe_arena_set_allocated_switching_field( + ::substrait::ExpandRel_SwitchingField* switching_field); + ::substrait::ExpandRel_SwitchingField* unsafe_arena_release_switching_field(); - // .substrait.Rel input = 1; + // .substrait.Expression consistent_field = 3; + bool has_consistent_field() const; + private: + bool _internal_has_consistent_field() const; + public: + void clear_consistent_field(); + const ::substrait::Expression& consistent_field() const; + PROTOBUF_NODISCARD ::substrait::Expression* release_consistent_field(); + ::substrait::Expression* mutable_consistent_field(); + void set_allocated_consistent_field(::substrait::Expression* consistent_field); + private: + const ::substrait::Expression& _internal_consistent_field() const; + ::substrait::Expression* _internal_mutable_consistent_field(); + public: + void unsafe_arena_set_allocated_consistent_field( + ::substrait::Expression* consistent_field); + ::substrait::Expression* unsafe_arena_release_consistent_field(); + + void clear_field_type(); + FieldTypeCase field_type_case() const; + // @@protoc_insertion_point(class_scope:substrait.ExpandRel.ExpandField) + private: + class _Internal; + void set_has_switching_field(); + void set_has_consistent_field(); + + inline bool has_field_type() const; + inline void clear_has_field_type(); + + template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + union FieldTypeUnion { + constexpr FieldTypeUnion() : _constinit_{} {} + ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized _constinit_; + ::substrait::ExpandRel_SwitchingField* switching_field_; + ::substrait::Expression* consistent_field_; + } field_type_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + uint32_t _oneof_case_[1]; + + friend struct ::TableStruct_substrait_2falgebra_2eproto; +}; +// ------------------------------------------------------------------- + +class ExpandRel_SwitchingField final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:substrait.ExpandRel.SwitchingField) */ { + public: + inline ExpandRel_SwitchingField() : ExpandRel_SwitchingField(nullptr) {} + ~ExpandRel_SwitchingField() override; + explicit constexpr ExpandRel_SwitchingField(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + ExpandRel_SwitchingField(const ExpandRel_SwitchingField& from); + ExpandRel_SwitchingField(ExpandRel_SwitchingField&& from) noexcept + : ExpandRel_SwitchingField() { + *this = ::std::move(from); + } + + inline ExpandRel_SwitchingField& operator=(const ExpandRel_SwitchingField& from) { + CopyFrom(from); + return *this; + } + inline ExpandRel_SwitchingField& operator=(ExpandRel_SwitchingField&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const ExpandRel_SwitchingField& default_instance() { + return *internal_default_instance(); + } + static inline const ExpandRel_SwitchingField* internal_default_instance() { + return reinterpret_cast<const ExpandRel_SwitchingField*>( + &_ExpandRel_SwitchingField_default_instance_); + } + static constexpr int kIndexInFileMessages = + 39; + + friend void swap(ExpandRel_SwitchingField& a, ExpandRel_SwitchingField& b) { + a.Swap(&b); + } + inline void Swap(ExpandRel_SwitchingField* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && + GetOwningArena() == other->GetOwningArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(ExpandRel_SwitchingField* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + ExpandRel_SwitchingField* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage<ExpandRel_SwitchingField>(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const ExpandRel_SwitchingField& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const ExpandRel_SwitchingField& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, const ::PROTOBUF_NAMESPACE_ID::Message& from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(ExpandRel_SwitchingField* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "substrait.ExpandRel.SwitchingField"; + } + protected: + explicit ExpandRel_SwitchingField(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kDuplicatesFieldNumber = 1, + }; + // repeated .substrait.Expression duplicates = 1; + int duplicates_size() const; + private: + int _internal_duplicates_size() const; + public: + void clear_duplicates(); + ::substrait::Expression* mutable_duplicates(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::Expression >* + mutable_duplicates(); + private: + const ::substrait::Expression& _internal_duplicates(int index) const; + ::substrait::Expression* _internal_add_duplicates(); + public: + const ::substrait::Expression& duplicates(int index) const; + ::substrait::Expression* add_duplicates(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::Expression >& + duplicates() const; + + // @@protoc_insertion_point(class_scope:substrait.ExpandRel.SwitchingField) + private: + class _Internal; + + template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::Expression > duplicates_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_substrait_2falgebra_2eproto; +}; +// ------------------------------------------------------------------- + +class ExpandRel final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:substrait.ExpandRel) */ { + public: + inline ExpandRel() : ExpandRel(nullptr) {} + ~ExpandRel() override; + explicit constexpr ExpandRel(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + ExpandRel(const ExpandRel& from); + ExpandRel(ExpandRel&& from) noexcept + : ExpandRel() { + *this = ::std::move(from); + } + + inline ExpandRel& operator=(const ExpandRel& from) { + CopyFrom(from); + return *this; + } + inline ExpandRel& operator=(ExpandRel&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const ExpandRel& default_instance() { + return *internal_default_instance(); + } + static inline const ExpandRel* internal_default_instance() { + return reinterpret_cast<const ExpandRel*>( + &_ExpandRel_default_instance_); + } + static constexpr int kIndexInFileMessages = + 40; + + friend void swap(ExpandRel& a, ExpandRel& b) { + a.Swap(&b); + } + inline void Swap(ExpandRel* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && + GetOwningArena() == other->GetOwningArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(ExpandRel* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + ExpandRel* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage<ExpandRel>(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const ExpandRel& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const ExpandRel& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, const ::PROTOBUF_NAMESPACE_ID::Message& from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(ExpandRel* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "substrait.ExpandRel"; + } + protected: + explicit ExpandRel(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + typedef ExpandRel_ExpandField ExpandField; + typedef ExpandRel_SwitchingField SwitchingField; + + // accessors ------------------------------------------------------- + + enum : int { + kFieldsFieldNumber = 4, + kCommonFieldNumber = 1, + kInputFieldNumber = 2, + }; + // repeated .substrait.ExpandRel.ExpandField fields = 4; + int fields_size() const; + private: + int _internal_fields_size() const; + public: + void clear_fields(); + ::substrait::ExpandRel_ExpandField* mutable_fields(int index); + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::ExpandRel_ExpandField >* + mutable_fields(); + private: + const ::substrait::ExpandRel_ExpandField& _internal_fields(int index) const; + ::substrait::ExpandRel_ExpandField* _internal_add_fields(); + public: + const ::substrait::ExpandRel_ExpandField& fields(int index) const; + ::substrait::ExpandRel_ExpandField* add_fields(); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::ExpandRel_ExpandField >& + fields() const; + + // .substrait.RelCommon common = 1; + bool has_common() const; + private: + bool _internal_has_common() const; + public: + void clear_common(); + const ::substrait::RelCommon& common() const; + PROTOBUF_NODISCARD ::substrait::RelCommon* release_common(); + ::substrait::RelCommon* mutable_common(); + void set_allocated_common(::substrait::RelCommon* common); + private: + const ::substrait::RelCommon& _internal_common() const; + ::substrait::RelCommon* _internal_mutable_common(); + public: + void unsafe_arena_set_allocated_common( + ::substrait::RelCommon* common); + ::substrait::RelCommon* unsafe_arena_release_common(); + + // .substrait.Rel input = 2; bool has_input() const; private: bool _internal_has_input() const; @@ -8119,38 +9066,220 @@ class RelRoot final : ::substrait::Rel* input); ::substrait::Rel* unsafe_arena_release_input(); - // @@protoc_insertion_point(class_scope:substrait.RelRoot) + // @@protoc_insertion_point(class_scope:substrait.ExpandRel) private: class _Internal; template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; typedef void InternalArenaConstructable_; typedef void DestructorSkippable_; - ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> names_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::ExpandRel_ExpandField > fields_; + ::substrait::RelCommon* common_; ::substrait::Rel* input_; mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; friend struct ::TableStruct_substrait_2falgebra_2eproto; }; // ------------------------------------------------------------------- -class Rel final : - public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:substrait.Rel) */ { +class RelRoot final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:substrait.RelRoot) */ { public: - inline Rel() : Rel(nullptr) {} - ~Rel() override; - explicit constexpr Rel(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + inline RelRoot() : RelRoot(nullptr) {} + ~RelRoot() override; + explicit constexpr RelRoot(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); - Rel(const Rel& from); - Rel(Rel&& from) noexcept - : Rel() { + RelRoot(const RelRoot& from); + RelRoot(RelRoot&& from) noexcept + : RelRoot() { *this = ::std::move(from); } - inline Rel& operator=(const Rel& from) { + inline RelRoot& operator=(const RelRoot& from) { CopyFrom(from); return *this; } - inline Rel& operator=(Rel&& from) noexcept { + inline RelRoot& operator=(RelRoot&& from) noexcept { + if (this == &from) return *this; + if (GetOwningArena() == from.GetOwningArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetOwningArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const RelRoot& default_instance() { + return *internal_default_instance(); + } + static inline const RelRoot* internal_default_instance() { + return reinterpret_cast<const RelRoot*>( + &_RelRoot_default_instance_); + } + static constexpr int kIndexInFileMessages = + 41; + + friend void swap(RelRoot& a, RelRoot& b) { + a.Swap(&b); + } + inline void Swap(RelRoot* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() != nullptr && + GetOwningArena() == other->GetOwningArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetOwningArena() == other->GetOwningArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(RelRoot* other) { + if (other == this) return; + GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + RelRoot* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final { + return CreateMaybeMessage<RelRoot>(arena); + } + using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom; + void CopyFrom(const RelRoot& from); + using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom; + void MergeFrom(const RelRoot& from); + private: + static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to, const ::PROTOBUF_NAMESPACE_ID::Message& from); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final; + uint8_t* _InternalSerialize( + uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const final { return _cached_size_.Get(); } + + private: + void SharedCtor(); + void SharedDtor(); + void SetCachedSize(int size) const final; + void InternalSwap(RelRoot* other); + + private: + friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata; + static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() { + return "substrait.RelRoot"; + } + protected: + explicit RelRoot(::PROTOBUF_NAMESPACE_ID::Arena* arena, + bool is_message_owned = false); + private: + static void ArenaDtor(void* object); + inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena); + public: + + static const ClassData _class_data_; + const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final; + + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kNamesFieldNumber = 2, + kInputFieldNumber = 1, + }; + // repeated string names = 2; + int names_size() const; + private: + int _internal_names_size() const; + public: + void clear_names(); + const std::string& names(int index) const; + std::string* mutable_names(int index); + void set_names(int index, const std::string& value); + void set_names(int index, std::string&& value); + void set_names(int index, const char* value); + void set_names(int index, const char* value, size_t size); + std::string* add_names(); + void add_names(const std::string& value); + void add_names(std::string&& value); + void add_names(const char* value); + void add_names(const char* value, size_t size); + const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& names() const; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_names(); + private: + const std::string& _internal_names(int index) const; + std::string* _internal_add_names(); + public: + + // .substrait.Rel input = 1; + bool has_input() const; + private: + bool _internal_has_input() const; + public: + void clear_input(); + const ::substrait::Rel& input() const; + PROTOBUF_NODISCARD ::substrait::Rel* release_input(); + ::substrait::Rel* mutable_input(); + void set_allocated_input(::substrait::Rel* input); + private: + const ::substrait::Rel& _internal_input() const; + ::substrait::Rel* _internal_mutable_input(); + public: + void unsafe_arena_set_allocated_input( + ::substrait::Rel* input); + ::substrait::Rel* unsafe_arena_release_input(); + + // @@protoc_insertion_point(class_scope:substrait.RelRoot) + private: + class _Internal; + + template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper; + typedef void InternalArenaConstructable_; + typedef void DestructorSkippable_; + ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> names_; + ::substrait::Rel* input_; + mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; + friend struct ::TableStruct_substrait_2falgebra_2eproto; +}; +// ------------------------------------------------------------------- + +class Rel final : + public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:substrait.Rel) */ { + public: + inline Rel() : Rel(nullptr) {} + ~Rel() override; + explicit constexpr Rel(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized); + + Rel(const Rel& from); + Rel(Rel&& from) noexcept + : Rel() { + *this = ::std::move(from); + } + + inline Rel& operator=(const Rel& from) { + CopyFrom(from); + return *this; + } + inline Rel& operator=(Rel&& from) noexcept { if (this == &from) return *this; if (GetOwningArena() == from.GetOwningArena() #ifdef PROTOBUF_FORCE_COPY_IN_MOVE @@ -8191,6 +9320,9 @@ class Rel final : kCross = 12, kHashJoin = 13, kMergeJoin = 14, + kWindow = 17, + kExchange = 15, + kExpand = 16, REL_TYPE_NOT_SET = 0, }; @@ -8199,7 +9331,7 @@ class Rel final : &_Rel_default_instance_); } static constexpr int kIndexInFileMessages = - 37; + 42; friend void swap(Rel& a, Rel& b) { a.Swap(&b); @@ -8287,6 +9419,9 @@ class Rel final : kCrossFieldNumber = 12, kHashJoinFieldNumber = 13, kMergeJoinFieldNumber = 14, + kWindowFieldNumber = 17, + kExchangeFieldNumber = 15, + kExpandFieldNumber = 16, }; // .substrait.ReadRel read = 1; bool has_read() const; @@ -8540,6 +9675,60 @@ class Rel final : ::substrait::MergeJoinRel* merge_join); ::substrait::MergeJoinRel* unsafe_arena_release_merge_join(); + // .substrait.ConsistentPartitionWindowRel window = 17; + bool has_window() const; + private: + bool _internal_has_window() const; + public: + void clear_window(); + const ::substrait::ConsistentPartitionWindowRel& window() const; + PROTOBUF_NODISCARD ::substrait::ConsistentPartitionWindowRel* release_window(); + ::substrait::ConsistentPartitionWindowRel* mutable_window(); + void set_allocated_window(::substrait::ConsistentPartitionWindowRel* window); + private: + const ::substrait::ConsistentPartitionWindowRel& _internal_window() const; + ::substrait::ConsistentPartitionWindowRel* _internal_mutable_window(); + public: + void unsafe_arena_set_allocated_window( + ::substrait::ConsistentPartitionWindowRel* window); + ::substrait::ConsistentPartitionWindowRel* unsafe_arena_release_window(); + + // .substrait.ExchangeRel exchange = 15; + bool has_exchange() const; + private: + bool _internal_has_exchange() const; + public: + void clear_exchange(); + const ::substrait::ExchangeRel& exchange() const; + PROTOBUF_NODISCARD ::substrait::ExchangeRel* release_exchange(); + ::substrait::ExchangeRel* mutable_exchange(); + void set_allocated_exchange(::substrait::ExchangeRel* exchange); + private: + const ::substrait::ExchangeRel& _internal_exchange() const; + ::substrait::ExchangeRel* _internal_mutable_exchange(); + public: + void unsafe_arena_set_allocated_exchange( + ::substrait::ExchangeRel* exchange); + ::substrait::ExchangeRel* unsafe_arena_release_exchange(); + + // .substrait.ExpandRel expand = 16; + bool has_expand() const; + private: + bool _internal_has_expand() const; + public: + void clear_expand(); + const ::substrait::ExpandRel& expand() const; + PROTOBUF_NODISCARD ::substrait::ExpandRel* release_expand(); + ::substrait::ExpandRel* mutable_expand(); + void set_allocated_expand(::substrait::ExpandRel* expand); + private: + const ::substrait::ExpandRel& _internal_expand() const; + ::substrait::ExpandRel* _internal_mutable_expand(); + public: + void unsafe_arena_set_allocated_expand( + ::substrait::ExpandRel* expand); + ::substrait::ExpandRel* unsafe_arena_release_expand(); + void clear_rel_type(); RelTypeCase rel_type_case() const; // @@protoc_insertion_point(class_scope:substrait.Rel) @@ -8559,6 +9748,9 @@ class Rel final : void set_has_cross(); void set_has_hash_join(); void set_has_merge_join(); + void set_has_window(); + void set_has_exchange(); + void set_has_expand(); inline bool has_rel_type() const; inline void clear_has_rel_type(); @@ -8583,6 +9775,9 @@ class Rel final : ::substrait::CrossRel* cross_; ::substrait::HashJoinRel* hash_join_; ::substrait::MergeJoinRel* merge_join_; + ::substrait::ConsistentPartitionWindowRel* window_; + ::substrait::ExchangeRel* exchange_; + ::substrait::ExpandRel* expand_; } rel_type_; mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; uint32_t _oneof_case_[1]; @@ -8639,7 +9834,7 @@ class NamedObjectWrite final : &_NamedObjectWrite_default_instance_); } static constexpr int kIndexInFileMessages = - 38; + 43; friend void swap(NamedObjectWrite& a, NamedObjectWrite& b) { a.Swap(&b); @@ -8820,7 +10015,7 @@ class ExtensionObject final : &_ExtensionObject_default_instance_); } static constexpr int kIndexInFileMessages = - 39; + 44; friend void swap(ExtensionObject& a, ExtensionObject& b) { a.Swap(&b); @@ -8981,7 +10176,7 @@ class DdlRel final : &_DdlRel_default_instance_); } static constexpr int kIndexInFileMessages = - 40; + 45; friend void swap(DdlRel& a, DdlRel& b) { a.Swap(&b); @@ -9327,7 +10522,7 @@ class WriteRel final : &_WriteRel_default_instance_); } static constexpr int kIndexInFileMessages = - 41; + 46; friend void swap(WriteRel& a, WriteRel& b) { a.Swap(&b); @@ -9645,7 +10840,7 @@ class HashJoinRel final : &_HashJoinRel_default_instance_); } static constexpr int kIndexInFileMessages = - 42; + 47; friend void swap(HashJoinRel& a, HashJoinRel& b) { a.Swap(&b); @@ -9975,7 +11170,7 @@ class MergeJoinRel final : &_MergeJoinRel_default_instance_); } static constexpr int kIndexInFileMessages = - 43; + 48; friend void swap(MergeJoinRel& a, MergeJoinRel& b) { a.Swap(&b); @@ -10312,7 +11507,7 @@ class FunctionArgument final : &_FunctionArgument_default_instance_); } static constexpr int kIndexInFileMessages = - 44; + 49; friend void swap(FunctionArgument& a, FunctionArgument& b) { a.Swap(&b); @@ -10521,7 +11716,7 @@ class FunctionOption final : &_FunctionOption_default_instance_); } static constexpr int kIndexInFileMessages = - 45; + 50; friend void swap(FunctionOption& a, FunctionOption& b) { a.Swap(&b); @@ -10697,7 +11892,7 @@ class Expression_Enum_Empty final : &_Expression_Enum_Empty_default_instance_); } static constexpr int kIndexInFileMessages = - 46; + 51; friend void swap(Expression_Enum_Empty& a, Expression_Enum_Empty& b) { a.Swap(&b); @@ -10822,7 +12017,7 @@ class Expression_Enum final : &_Expression_Enum_default_instance_); } static constexpr int kIndexInFileMessages = - 47; + 52; friend void swap(Expression_Enum& a, Expression_Enum& b) { a.Swap(&b); @@ -11012,7 +12207,7 @@ class Expression_Literal_VarChar final : &_Expression_Literal_VarChar_default_instance_); } static constexpr int kIndexInFileMessages = - 48; + 53; friend void swap(Expression_Literal_VarChar& a, Expression_Literal_VarChar& b) { a.Swap(&b); @@ -11174,7 +12369,7 @@ class Expression_Literal_Decimal final : &_Expression_Literal_Decimal_default_instance_); } static constexpr int kIndexInFileMessages = - 49; + 54; friend void swap(Expression_Literal_Decimal& a, Expression_Literal_Decimal& b) { a.Swap(&b); @@ -11347,7 +12542,7 @@ class Expression_Literal_Map_KeyValue final : &_Expression_Literal_Map_KeyValue_default_instance_); } static constexpr int kIndexInFileMessages = - 50; + 55; friend void swap(Expression_Literal_Map_KeyValue& a, Expression_Literal_Map_KeyValue& b) { a.Swap(&b); @@ -11522,7 +12717,7 @@ class Expression_Literal_Map final : &_Expression_Literal_Map_default_instance_); } static constexpr int kIndexInFileMessages = - 51; + 56; friend void swap(Expression_Literal_Map& a, Expression_Literal_Map& b) { a.Swap(&b); @@ -11679,7 +12874,7 @@ class Expression_Literal_IntervalYearToMonth final : &_Expression_Literal_IntervalYearToMonth_default_instance_); } static constexpr int kIndexInFileMessages = - 52; + 57; friend void swap(Expression_Literal_IntervalYearToMonth& a, Expression_Literal_IntervalYearToMonth& b) { a.Swap(&b); @@ -11836,7 +13031,7 @@ class Expression_Literal_IntervalDayToSecond final : &_Expression_Literal_IntervalDayToSecond_default_instance_); } static constexpr int kIndexInFileMessages = - 53; + 58; friend void swap(Expression_Literal_IntervalDayToSecond& a, Expression_Literal_IntervalDayToSecond& b) { a.Swap(&b); @@ -12004,7 +13199,7 @@ class Expression_Literal_Struct final : &_Expression_Literal_Struct_default_instance_); } static constexpr int kIndexInFileMessages = - 54; + 59; friend void swap(Expression_Literal_Struct& a, Expression_Literal_Struct& b) { a.Swap(&b); @@ -12159,7 +13354,7 @@ class Expression_Literal_List final : &_Expression_Literal_List_default_instance_); } static constexpr int kIndexInFileMessages = - 55; + 60; friend void swap(Expression_Literal_List& a, Expression_Literal_List& b) { a.Swap(&b); @@ -12314,7 +13509,7 @@ class Expression_Literal_UserDefined final : &_Expression_Literal_UserDefined_default_instance_); } static constexpr int kIndexInFileMessages = - 56; + 61; friend void swap(Expression_Literal_UserDefined& a, Expression_Literal_UserDefined& b) { a.Swap(&b); @@ -12531,7 +13726,7 @@ class Expression_Literal final : &_Expression_Literal_default_instance_); } static constexpr int kIndexInFileMessages = - 57; + 62; friend void swap(Expression_Literal& a, Expression_Literal& b) { a.Swap(&b); @@ -13220,7 +14415,7 @@ class Expression_Nested_Map_KeyValue final : &_Expression_Nested_Map_KeyValue_default_instance_); } static constexpr int kIndexInFileMessages = - 58; + 63; friend void swap(Expression_Nested_Map_KeyValue& a, Expression_Nested_Map_KeyValue& b) { a.Swap(&b); @@ -13395,7 +14590,7 @@ class Expression_Nested_Map final : &_Expression_Nested_Map_default_instance_); } static constexpr int kIndexInFileMessages = - 59; + 64; friend void swap(Expression_Nested_Map& a, Expression_Nested_Map& b) { a.Swap(&b); @@ -13552,7 +14747,7 @@ class Expression_Nested_Struct final : &_Expression_Nested_Struct_default_instance_); } static constexpr int kIndexInFileMessages = - 60; + 65; friend void swap(Expression_Nested_Struct& a, Expression_Nested_Struct& b) { a.Swap(&b); @@ -13707,7 +14902,7 @@ class Expression_Nested_List final : &_Expression_Nested_List_default_instance_); } static constexpr int kIndexInFileMessages = - 61; + 66; friend void swap(Expression_Nested_List& a, Expression_Nested_List& b) { a.Swap(&b); @@ -13869,7 +15064,7 @@ class Expression_Nested final : &_Expression_Nested_default_instance_); } static constexpr int kIndexInFileMessages = - 62; + 67; friend void swap(Expression_Nested& a, Expression_Nested& b) { a.Swap(&b); @@ -14104,7 +15299,7 @@ class Expression_ScalarFunction final : &_Expression_ScalarFunction_default_instance_); } static constexpr int kIndexInFileMessages = - 63; + 68; friend void swap(Expression_ScalarFunction& a, Expression_ScalarFunction& b) { a.Swap(&b); @@ -14330,7 +15525,7 @@ class Expression_WindowFunction_Bound_Preceding final : &_Expression_WindowFunction_Bound_Preceding_default_instance_); } static constexpr int kIndexInFileMessages = - 64; + 69; friend void swap(Expression_WindowFunction_Bound_Preceding& a, Expression_WindowFunction_Bound_Preceding& b) { a.Swap(&b); @@ -14476,7 +15671,7 @@ class Expression_WindowFunction_Bound_Following final : &_Expression_WindowFunction_Bound_Following_default_instance_); } static constexpr int kIndexInFileMessages = - 65; + 70; friend void swap(Expression_WindowFunction_Bound_Following& a, Expression_WindowFunction_Bound_Following& b) { a.Swap(&b); @@ -14621,7 +15816,7 @@ class Expression_WindowFunction_Bound_CurrentRow final : &_Expression_WindowFunction_Bound_CurrentRow_default_instance_); } static constexpr int kIndexInFileMessages = - 66; + 71; friend void swap(Expression_WindowFunction_Bound_CurrentRow& a, Expression_WindowFunction_Bound_CurrentRow& b) { a.Swap(&b); @@ -14739,7 +15934,7 @@ class Expression_WindowFunction_Bound_Unbounded final : &_Expression_WindowFunction_Bound_Unbounded_default_instance_); } static constexpr int kIndexInFileMessages = - 67; + 72; friend void swap(Expression_WindowFunction_Bound_Unbounded& a, Expression_WindowFunction_Bound_Unbounded& b) { a.Swap(&b); @@ -14866,7 +16061,7 @@ class Expression_WindowFunction_Bound final : &_Expression_WindowFunction_Bound_default_instance_); } static constexpr int kIndexInFileMessages = - 68; + 73; friend void swap(Expression_WindowFunction_Bound& a, Expression_WindowFunction_Bound& b) { a.Swap(&b); @@ -15101,7 +16296,7 @@ class Expression_WindowFunction final : &_Expression_WindowFunction_default_instance_); } static constexpr int kIndexInFileMessages = - 69; + 74; friend void swap(Expression_WindowFunction& a, Expression_WindowFunction& b) { a.Swap(&b); @@ -15174,6 +16369,38 @@ class Expression_WindowFunction final : typedef Expression_WindowFunction_Bound Bound; + typedef Expression_WindowFunction_BoundsType BoundsType; + static constexpr BoundsType BOUNDS_TYPE_UNSPECIFIED = + Expression_WindowFunction_BoundsType_BOUNDS_TYPE_UNSPECIFIED; + static constexpr BoundsType BOUNDS_TYPE_ROWS = + Expression_WindowFunction_BoundsType_BOUNDS_TYPE_ROWS; + static constexpr BoundsType BOUNDS_TYPE_RANGE = + Expression_WindowFunction_BoundsType_BOUNDS_TYPE_RANGE; + static inline bool BoundsType_IsValid(int value) { + return Expression_WindowFunction_BoundsType_IsValid(value); + } + static constexpr BoundsType BoundsType_MIN = + Expression_WindowFunction_BoundsType_BoundsType_MIN; + static constexpr BoundsType BoundsType_MAX = + Expression_WindowFunction_BoundsType_BoundsType_MAX; + static constexpr int BoundsType_ARRAYSIZE = + Expression_WindowFunction_BoundsType_BoundsType_ARRAYSIZE; + static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* + BoundsType_descriptor() { + return Expression_WindowFunction_BoundsType_descriptor(); + } + template<typename T> + static inline const std::string& BoundsType_Name(T enum_t_value) { + static_assert(::std::is_same<T, BoundsType>::value || + ::std::is_integral<T>::value, + "Incorrect type passed to function BoundsType_Name."); + return Expression_WindowFunction_BoundsType_Name(enum_t_value); + } + static inline bool BoundsType_Parse(::PROTOBUF_NAMESPACE_ID::ConstStringParam name, + BoundsType* value) { + return Expression_WindowFunction_BoundsType_Parse(name, value); + } + // accessors ------------------------------------------------------- enum : int { @@ -15188,6 +16415,7 @@ class Expression_WindowFunction final : kFunctionReferenceFieldNumber = 1, kPhaseFieldNumber = 6, kInvocationFieldNumber = 10, + kBoundsTypeFieldNumber = 12, }; // repeated .substrait.Expression partitions = 2; int partitions_size() const; @@ -15360,6 +16588,15 @@ class Expression_WindowFunction final : void _internal_set_invocation(::substrait::AggregateFunction_AggregationInvocation value); public: + // .substrait.Expression.WindowFunction.BoundsType bounds_type = 12; + void clear_bounds_type(); + ::substrait::Expression_WindowFunction_BoundsType bounds_type() const; + void set_bounds_type(::substrait::Expression_WindowFunction_BoundsType value); + private: + ::substrait::Expression_WindowFunction_BoundsType _internal_bounds_type() const; + void _internal_set_bounds_type(::substrait::Expression_WindowFunction_BoundsType value); + public: + // @@protoc_insertion_point(class_scope:substrait.Expression.WindowFunction) private: class _Internal; @@ -15378,6 +16615,7 @@ class Expression_WindowFunction final : uint32_t function_reference_; int phase_; int invocation_; + int bounds_type_; mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_; friend struct ::TableStruct_substrait_2falgebra_2eproto; }; @@ -15431,7 +16669,7 @@ class Expression_IfThen_IfClause final : &_Expression_IfThen_IfClause_default_instance_); } static constexpr int kIndexInFileMessages = - 70; + 75; friend void swap(Expression_IfThen_IfClause& a, Expression_IfThen_IfClause& b) { a.Swap(&b); @@ -15606,7 +16844,7 @@ class Expression_IfThen final : &_Expression_IfThen_default_instance_); } static constexpr int kIndexInFileMessages = - 71; + 76; friend void swap(Expression_IfThen& a, Expression_IfThen& b) { a.Swap(&b); @@ -15783,7 +17021,7 @@ class Expression_Cast final : &_Expression_Cast_default_instance_); } static constexpr int kIndexInFileMessages = - 72; + 77; friend void swap(Expression_Cast& a, Expression_Cast& b) { a.Swap(&b); @@ -16001,7 +17239,7 @@ class Expression_SwitchExpression_IfValue final : &_Expression_SwitchExpression_IfValue_default_instance_); } static constexpr int kIndexInFileMessages = - 73; + 78; friend void swap(Expression_SwitchExpression_IfValue& a, Expression_SwitchExpression_IfValue& b) { a.Swap(&b); @@ -16176,7 +17414,7 @@ class Expression_SwitchExpression final : &_Expression_SwitchExpression_default_instance_); } static constexpr int kIndexInFileMessages = - 74; + 79; friend void swap(Expression_SwitchExpression& a, Expression_SwitchExpression& b) { a.Swap(&b); @@ -16373,7 +17611,7 @@ class Expression_SingularOrList final : &_Expression_SingularOrList_default_instance_); } static constexpr int kIndexInFileMessages = - 75; + 80; friend void swap(Expression_SingularOrList& a, Expression_SingularOrList& b) { a.Swap(&b); @@ -16548,7 +17786,7 @@ class Expression_MultiOrList_Record final : &_Expression_MultiOrList_Record_default_instance_); } static constexpr int kIndexInFileMessages = - 76; + 81; friend void swap(Expression_MultiOrList_Record& a, Expression_MultiOrList_Record& b) { a.Swap(&b); @@ -16703,7 +17941,7 @@ class Expression_MultiOrList final : &_Expression_MultiOrList_default_instance_); } static constexpr int kIndexInFileMessages = - 77; + 82; friend void swap(Expression_MultiOrList& a, Expression_MultiOrList& b) { a.Swap(&b); @@ -16880,7 +18118,7 @@ class Expression_EmbeddedFunction_PythonPickleFunction final : &_Expression_EmbeddedFunction_PythonPickleFunction_default_instance_); } static constexpr int kIndexInFileMessages = - 78; + 83; friend void swap(Expression_EmbeddedFunction_PythonPickleFunction& a, Expression_EmbeddedFunction_PythonPickleFunction& b) { a.Swap(&b); @@ -17057,7 +18295,7 @@ class Expression_EmbeddedFunction_WebAssemblyFunction final : &_Expression_EmbeddedFunction_WebAssemblyFunction_default_instance_); } static constexpr int kIndexInFileMessages = - 79; + 84; friend void swap(Expression_EmbeddedFunction_WebAssemblyFunction& a, Expression_EmbeddedFunction_WebAssemblyFunction& b) { a.Swap(&b); @@ -17240,7 +18478,7 @@ class Expression_EmbeddedFunction final : &_Expression_EmbeddedFunction_default_instance_); } static constexpr int kIndexInFileMessages = - 80; + 85; friend void swap(Expression_EmbeddedFunction& a, Expression_EmbeddedFunction& b) { a.Swap(&b); @@ -17471,7 +18709,7 @@ class Expression_ReferenceSegment_MapKey final : &_Expression_ReferenceSegment_MapKey_default_instance_); } static constexpr int kIndexInFileMessages = - 81; + 86; friend void swap(Expression_ReferenceSegment_MapKey& a, Expression_ReferenceSegment_MapKey& b) { a.Swap(&b); @@ -17646,7 +18884,7 @@ class Expression_ReferenceSegment_StructField final : &_Expression_ReferenceSegment_StructField_default_instance_); } static constexpr int kIndexInFileMessages = - 82; + 87; friend void swap(Expression_ReferenceSegment_StructField& a, Expression_ReferenceSegment_StructField& b) { a.Swap(&b); @@ -17812,7 +19050,7 @@ class Expression_ReferenceSegment_ListElement final : &_Expression_ReferenceSegment_ListElement_default_instance_); } static constexpr int kIndexInFileMessages = - 83; + 88; friend void swap(Expression_ReferenceSegment_ListElement& a, Expression_ReferenceSegment_ListElement& b) { a.Swap(&b); @@ -17985,7 +19223,7 @@ class Expression_ReferenceSegment final : &_Expression_ReferenceSegment_default_instance_); } static constexpr int kIndexInFileMessages = - 84; + 89; friend void swap(Expression_ReferenceSegment& a, Expression_ReferenceSegment& b) { a.Swap(&b); @@ -18205,7 +19443,7 @@ class Expression_MaskExpression_Select final : &_Expression_MaskExpression_Select_default_instance_); } static constexpr int kIndexInFileMessages = - 85; + 90; friend void swap(Expression_MaskExpression_Select& a, Expression_MaskExpression_Select& b) { a.Swap(&b); @@ -18414,7 +19652,7 @@ class Expression_MaskExpression_StructSelect final : &_Expression_MaskExpression_StructSelect_default_instance_); } static constexpr int kIndexInFileMessages = - 86; + 91; friend void swap(Expression_MaskExpression_StructSelect& a, Expression_MaskExpression_StructSelect& b) { a.Swap(&b); @@ -18569,7 +19807,7 @@ class Expression_MaskExpression_StructItem final : &_Expression_MaskExpression_StructItem_default_instance_); } static constexpr int kIndexInFileMessages = - 87; + 92; friend void swap(Expression_MaskExpression_StructItem& a, Expression_MaskExpression_StructItem& b) { a.Swap(&b); @@ -18735,7 +19973,7 @@ class Expression_MaskExpression_ListSelect_ListSelectItem_ListElement final : &_Expression_MaskExpression_ListSelect_ListSelectItem_ListElement_default_instance_); } static constexpr int kIndexInFileMessages = - 88; + 93; friend void swap(Expression_MaskExpression_ListSelect_ListSelectItem_ListElement& a, Expression_MaskExpression_ListSelect_ListSelectItem_ListElement& b) { a.Swap(&b); @@ -18881,7 +20119,7 @@ class Expression_MaskExpression_ListSelect_ListSelectItem_ListSlice final : &_Expression_MaskExpression_ListSelect_ListSelectItem_ListSlice_default_instance_); } static constexpr int kIndexInFileMessages = - 89; + 94; friend void swap(Expression_MaskExpression_ListSelect_ListSelectItem_ListSlice& a, Expression_MaskExpression_ListSelect_ListSelectItem_ListSlice& b) { a.Swap(&b); @@ -19044,7 +20282,7 @@ class Expression_MaskExpression_ListSelect_ListSelectItem final : &_Expression_MaskExpression_ListSelect_ListSelectItem_default_instance_); } static constexpr int kIndexInFileMessages = - 90; + 95; friend void swap(Expression_MaskExpression_ListSelect_ListSelectItem& a, Expression_MaskExpression_ListSelect_ListSelectItem& b) { a.Swap(&b); @@ -19235,7 +20473,7 @@ class Expression_MaskExpression_ListSelect final : &_Expression_MaskExpression_ListSelect_default_instance_); } static constexpr int kIndexInFileMessages = - 91; + 96; friend void swap(Expression_MaskExpression_ListSelect& a, Expression_MaskExpression_ListSelect& b) { a.Swap(&b); @@ -19412,7 +20650,7 @@ class Expression_MaskExpression_MapSelect_MapKey final : &_Expression_MaskExpression_MapSelect_MapKey_default_instance_); } static constexpr int kIndexInFileMessages = - 92; + 97; friend void swap(Expression_MaskExpression_MapSelect_MapKey& a, Expression_MaskExpression_MapSelect_MapKey& b) { a.Swap(&b); @@ -19563,7 +20801,7 @@ class Expression_MaskExpression_MapSelect_MapKeyExpression final : &_Expression_MaskExpression_MapSelect_MapKeyExpression_default_instance_); } static constexpr int kIndexInFileMessages = - 93; + 98; friend void swap(Expression_MaskExpression_MapSelect_MapKeyExpression& a, Expression_MaskExpression_MapSelect_MapKeyExpression& b) { a.Swap(&b); @@ -19720,7 +20958,7 @@ class Expression_MaskExpression_MapSelect final : &_Expression_MaskExpression_MapSelect_default_instance_); } static constexpr int kIndexInFileMessages = - 94; + 99; friend void swap(Expression_MaskExpression_MapSelect& a, Expression_MaskExpression_MapSelect& b) { a.Swap(&b); @@ -19931,7 +21169,7 @@ class Expression_MaskExpression final : &_Expression_MaskExpression_default_instance_); } static constexpr int kIndexInFileMessages = - 95; + 100; friend void swap(Expression_MaskExpression& a, Expression_MaskExpression& b) { a.Swap(&b); @@ -20102,7 +21340,7 @@ class Expression_FieldReference_RootReference final : &_Expression_FieldReference_RootReference_default_instance_); } static constexpr int kIndexInFileMessages = - 96; + 101; friend void swap(Expression_FieldReference_RootReference& a, Expression_FieldReference_RootReference& b) { a.Swap(&b); @@ -20221,7 +21459,7 @@ class Expression_FieldReference_OuterReference final : &_Expression_FieldReference_OuterReference_default_instance_); } static constexpr int kIndexInFileMessages = - 97; + 102; friend void swap(Expression_FieldReference_OuterReference& a, Expression_FieldReference_OuterReference& b) { a.Swap(&b); @@ -20380,7 +21618,7 @@ class Expression_FieldReference final : &_Expression_FieldReference_default_instance_); } static constexpr int kIndexInFileMessages = - 98; + 103; friend void swap(Expression_FieldReference& a, Expression_FieldReference& b) { a.Swap(&b); @@ -20643,7 +21881,7 @@ class Expression_Subquery_Scalar final : &_Expression_Subquery_Scalar_default_instance_); } static constexpr int kIndexInFileMessages = - 99; + 104; friend void swap(Expression_Subquery_Scalar& a, Expression_Subquery_Scalar& b) { a.Swap(&b); @@ -20798,7 +22036,7 @@ class Expression_Subquery_InPredicate final : &_Expression_Subquery_InPredicate_default_instance_); } static constexpr int kIndexInFileMessages = - 100; + 105; friend void swap(Expression_Subquery_InPredicate& a, Expression_Subquery_InPredicate& b) { a.Swap(&b); @@ -20973,7 +22211,7 @@ class Expression_Subquery_SetPredicate final : &_Expression_Subquery_SetPredicate_default_instance_); } static constexpr int kIndexInFileMessages = - 101; + 106; friend void swap(Expression_Subquery_SetPredicate& a, Expression_Subquery_SetPredicate& b) { a.Swap(&b); @@ -21171,7 +22409,7 @@ class Expression_Subquery_SetComparison final : &_Expression_Subquery_SetComparison_default_instance_); } static constexpr int kIndexInFileMessages = - 102; + 107; friend void swap(Expression_Subquery_SetComparison& a, Expression_Subquery_SetComparison& b) { a.Swap(&b); @@ -21448,7 +22686,7 @@ class Expression_Subquery final : &_Expression_Subquery_default_instance_); } static constexpr int kIndexInFileMessages = - 103; + 108; friend void swap(Expression_Subquery& a, Expression_Subquery& b) { a.Swap(&b); @@ -21699,7 +22937,7 @@ class Expression final : &_Expression_default_instance_); } static constexpr int kIndexInFileMessages = - 104; + 109; friend void swap(Expression& a, Expression& b) { a.Swap(&b); @@ -22119,7 +23357,7 @@ class SortField final : &_SortField_default_instance_); } static constexpr int kIndexInFileMessages = - 105; + 110; friend void swap(SortField& a, SortField& b) { a.Swap(&b); @@ -22355,7 +23593,7 @@ class AggregateFunction_ReferenceRel final : &_AggregateFunction_ReferenceRel_default_instance_); } static constexpr int kIndexInFileMessages = - 106; + 111; friend void swap(AggregateFunction_ReferenceRel& a, AggregateFunction_ReferenceRel& b) { a.Swap(&b); @@ -22501,7 +23739,7 @@ class AggregateFunction final : &_AggregateFunction_default_instance_); } static constexpr int kIndexInFileMessages = - 107; + 112; friend void swap(AggregateFunction& a, AggregateFunction& b) { a.Swap(&b); @@ -27820,6 +29058,826 @@ inline void AggregateRel::set_allocated_advanced_extension(::substrait::extensio // ------------------------------------------------------------------- +// ConsistentPartitionWindowRel_WindowRelFunction + +// uint32 function_reference = 1; +inline void ConsistentPartitionWindowRel_WindowRelFunction::clear_function_reference() { + function_reference_ = 0u; +} +inline uint32_t ConsistentPartitionWindowRel_WindowRelFunction::_internal_function_reference() const { + return function_reference_; +} +inline uint32_t ConsistentPartitionWindowRel_WindowRelFunction::function_reference() const { + // @@protoc_insertion_point(field_get:substrait.ConsistentPartitionWindowRel.WindowRelFunction.function_reference) + return _internal_function_reference(); +} +inline void ConsistentPartitionWindowRel_WindowRelFunction::_internal_set_function_reference(uint32_t value) { + + function_reference_ = value; +} +inline void ConsistentPartitionWindowRel_WindowRelFunction::set_function_reference(uint32_t value) { + _internal_set_function_reference(value); + // @@protoc_insertion_point(field_set:substrait.ConsistentPartitionWindowRel.WindowRelFunction.function_reference) +} + +// repeated .substrait.FunctionArgument arguments = 9; +inline int ConsistentPartitionWindowRel_WindowRelFunction::_internal_arguments_size() const { + return arguments_.size(); +} +inline int ConsistentPartitionWindowRel_WindowRelFunction::arguments_size() const { + return _internal_arguments_size(); +} +inline void ConsistentPartitionWindowRel_WindowRelFunction::clear_arguments() { + arguments_.Clear(); +} +inline ::substrait::FunctionArgument* ConsistentPartitionWindowRel_WindowRelFunction::mutable_arguments(int index) { + // @@protoc_insertion_point(field_mutable:substrait.ConsistentPartitionWindowRel.WindowRelFunction.arguments) + return arguments_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::FunctionArgument >* +ConsistentPartitionWindowRel_WindowRelFunction::mutable_arguments() { + // @@protoc_insertion_point(field_mutable_list:substrait.ConsistentPartitionWindowRel.WindowRelFunction.arguments) + return &arguments_; +} +inline const ::substrait::FunctionArgument& ConsistentPartitionWindowRel_WindowRelFunction::_internal_arguments(int index) const { + return arguments_.Get(index); +} +inline const ::substrait::FunctionArgument& ConsistentPartitionWindowRel_WindowRelFunction::arguments(int index) const { + // @@protoc_insertion_point(field_get:substrait.ConsistentPartitionWindowRel.WindowRelFunction.arguments) + return _internal_arguments(index); +} +inline ::substrait::FunctionArgument* ConsistentPartitionWindowRel_WindowRelFunction::_internal_add_arguments() { + return arguments_.Add(); +} +inline ::substrait::FunctionArgument* ConsistentPartitionWindowRel_WindowRelFunction::add_arguments() { + ::substrait::FunctionArgument* _add = _internal_add_arguments(); + // @@protoc_insertion_point(field_add:substrait.ConsistentPartitionWindowRel.WindowRelFunction.arguments) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::FunctionArgument >& +ConsistentPartitionWindowRel_WindowRelFunction::arguments() const { + // @@protoc_insertion_point(field_list:substrait.ConsistentPartitionWindowRel.WindowRelFunction.arguments) + return arguments_; +} + +// repeated .substrait.FunctionOption options = 11; +inline int ConsistentPartitionWindowRel_WindowRelFunction::_internal_options_size() const { + return options_.size(); +} +inline int ConsistentPartitionWindowRel_WindowRelFunction::options_size() const { + return _internal_options_size(); +} +inline void ConsistentPartitionWindowRel_WindowRelFunction::clear_options() { + options_.Clear(); +} +inline ::substrait::FunctionOption* ConsistentPartitionWindowRel_WindowRelFunction::mutable_options(int index) { + // @@protoc_insertion_point(field_mutable:substrait.ConsistentPartitionWindowRel.WindowRelFunction.options) + return options_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::FunctionOption >* +ConsistentPartitionWindowRel_WindowRelFunction::mutable_options() { + // @@protoc_insertion_point(field_mutable_list:substrait.ConsistentPartitionWindowRel.WindowRelFunction.options) + return &options_; +} +inline const ::substrait::FunctionOption& ConsistentPartitionWindowRel_WindowRelFunction::_internal_options(int index) const { + return options_.Get(index); +} +inline const ::substrait::FunctionOption& ConsistentPartitionWindowRel_WindowRelFunction::options(int index) const { + // @@protoc_insertion_point(field_get:substrait.ConsistentPartitionWindowRel.WindowRelFunction.options) + return _internal_options(index); +} +inline ::substrait::FunctionOption* ConsistentPartitionWindowRel_WindowRelFunction::_internal_add_options() { + return options_.Add(); +} +inline ::substrait::FunctionOption* ConsistentPartitionWindowRel_WindowRelFunction::add_options() { + ::substrait::FunctionOption* _add = _internal_add_options(); + // @@protoc_insertion_point(field_add:substrait.ConsistentPartitionWindowRel.WindowRelFunction.options) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::FunctionOption >& +ConsistentPartitionWindowRel_WindowRelFunction::options() const { + // @@protoc_insertion_point(field_list:substrait.ConsistentPartitionWindowRel.WindowRelFunction.options) + return options_; +} + +// .substrait.Type output_type = 7; +inline bool ConsistentPartitionWindowRel_WindowRelFunction::_internal_has_output_type() const { + return this != internal_default_instance() && output_type_ != nullptr; +} +inline bool ConsistentPartitionWindowRel_WindowRelFunction::has_output_type() const { + return _internal_has_output_type(); +} +inline const ::substrait::Type& ConsistentPartitionWindowRel_WindowRelFunction::_internal_output_type() const { + const ::substrait::Type* p = output_type_; + return p != nullptr ? *p : reinterpret_cast<const ::substrait::Type&>( + ::substrait::_Type_default_instance_); +} +inline const ::substrait::Type& ConsistentPartitionWindowRel_WindowRelFunction::output_type() const { + // @@protoc_insertion_point(field_get:substrait.ConsistentPartitionWindowRel.WindowRelFunction.output_type) + return _internal_output_type(); +} +inline void ConsistentPartitionWindowRel_WindowRelFunction::unsafe_arena_set_allocated_output_type( + ::substrait::Type* output_type) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(output_type_); + } + output_type_ = output_type; + if (output_type) { + + } else { + + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:substrait.ConsistentPartitionWindowRel.WindowRelFunction.output_type) +} +inline ::substrait::Type* ConsistentPartitionWindowRel_WindowRelFunction::release_output_type() { + + ::substrait::Type* temp = output_type_; + output_type_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline ::substrait::Type* ConsistentPartitionWindowRel_WindowRelFunction::unsafe_arena_release_output_type() { + // @@protoc_insertion_point(field_release:substrait.ConsistentPartitionWindowRel.WindowRelFunction.output_type) + + ::substrait::Type* temp = output_type_; + output_type_ = nullptr; + return temp; +} +inline ::substrait::Type* ConsistentPartitionWindowRel_WindowRelFunction::_internal_mutable_output_type() { + + if (output_type_ == nullptr) { + auto* p = CreateMaybeMessage<::substrait::Type>(GetArenaForAllocation()); + output_type_ = p; + } + return output_type_; +} +inline ::substrait::Type* ConsistentPartitionWindowRel_WindowRelFunction::mutable_output_type() { + ::substrait::Type* _msg = _internal_mutable_output_type(); + // @@protoc_insertion_point(field_mutable:substrait.ConsistentPartitionWindowRel.WindowRelFunction.output_type) + return _msg; +} +inline void ConsistentPartitionWindowRel_WindowRelFunction::set_allocated_output_type(::substrait::Type* output_type) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(output_type_); + } + if (output_type) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper< + ::PROTOBUF_NAMESPACE_ID::MessageLite>::GetOwningArena( + reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(output_type)); + if (message_arena != submessage_arena) { + output_type = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, output_type, submessage_arena); + } + + } else { + + } + output_type_ = output_type; + // @@protoc_insertion_point(field_set_allocated:substrait.ConsistentPartitionWindowRel.WindowRelFunction.output_type) +} + +// .substrait.AggregationPhase phase = 6; +inline void ConsistentPartitionWindowRel_WindowRelFunction::clear_phase() { + phase_ = 0; +} +inline ::substrait::AggregationPhase ConsistentPartitionWindowRel_WindowRelFunction::_internal_phase() const { + return static_cast< ::substrait::AggregationPhase >(phase_); +} +inline ::substrait::AggregationPhase ConsistentPartitionWindowRel_WindowRelFunction::phase() const { + // @@protoc_insertion_point(field_get:substrait.ConsistentPartitionWindowRel.WindowRelFunction.phase) + return _internal_phase(); +} +inline void ConsistentPartitionWindowRel_WindowRelFunction::_internal_set_phase(::substrait::AggregationPhase value) { + + phase_ = value; +} +inline void ConsistentPartitionWindowRel_WindowRelFunction::set_phase(::substrait::AggregationPhase value) { + _internal_set_phase(value); + // @@protoc_insertion_point(field_set:substrait.ConsistentPartitionWindowRel.WindowRelFunction.phase) +} + +// .substrait.AggregateFunction.AggregationInvocation invocation = 10; +inline void ConsistentPartitionWindowRel_WindowRelFunction::clear_invocation() { + invocation_ = 0; +} +inline ::substrait::AggregateFunction_AggregationInvocation ConsistentPartitionWindowRel_WindowRelFunction::_internal_invocation() const { + return static_cast< ::substrait::AggregateFunction_AggregationInvocation >(invocation_); +} +inline ::substrait::AggregateFunction_AggregationInvocation ConsistentPartitionWindowRel_WindowRelFunction::invocation() const { + // @@protoc_insertion_point(field_get:substrait.ConsistentPartitionWindowRel.WindowRelFunction.invocation) + return _internal_invocation(); +} +inline void ConsistentPartitionWindowRel_WindowRelFunction::_internal_set_invocation(::substrait::AggregateFunction_AggregationInvocation value) { + + invocation_ = value; +} +inline void ConsistentPartitionWindowRel_WindowRelFunction::set_invocation(::substrait::AggregateFunction_AggregationInvocation value) { + _internal_set_invocation(value); + // @@protoc_insertion_point(field_set:substrait.ConsistentPartitionWindowRel.WindowRelFunction.invocation) +} + +// .substrait.Expression.WindowFunction.Bound lower_bound = 5; +inline bool ConsistentPartitionWindowRel_WindowRelFunction::_internal_has_lower_bound() const { + return this != internal_default_instance() && lower_bound_ != nullptr; +} +inline bool ConsistentPartitionWindowRel_WindowRelFunction::has_lower_bound() const { + return _internal_has_lower_bound(); +} +inline void ConsistentPartitionWindowRel_WindowRelFunction::clear_lower_bound() { + if (GetArenaForAllocation() == nullptr && lower_bound_ != nullptr) { + delete lower_bound_; + } + lower_bound_ = nullptr; +} +inline const ::substrait::Expression_WindowFunction_Bound& ConsistentPartitionWindowRel_WindowRelFunction::_internal_lower_bound() const { + const ::substrait::Expression_WindowFunction_Bound* p = lower_bound_; + return p != nullptr ? *p : reinterpret_cast<const ::substrait::Expression_WindowFunction_Bound&>( + ::substrait::_Expression_WindowFunction_Bound_default_instance_); +} +inline const ::substrait::Expression_WindowFunction_Bound& ConsistentPartitionWindowRel_WindowRelFunction::lower_bound() const { + // @@protoc_insertion_point(field_get:substrait.ConsistentPartitionWindowRel.WindowRelFunction.lower_bound) + return _internal_lower_bound(); +} +inline void ConsistentPartitionWindowRel_WindowRelFunction::unsafe_arena_set_allocated_lower_bound( + ::substrait::Expression_WindowFunction_Bound* lower_bound) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(lower_bound_); + } + lower_bound_ = lower_bound; + if (lower_bound) { + + } else { + + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:substrait.ConsistentPartitionWindowRel.WindowRelFunction.lower_bound) +} +inline ::substrait::Expression_WindowFunction_Bound* ConsistentPartitionWindowRel_WindowRelFunction::release_lower_bound() { + + ::substrait::Expression_WindowFunction_Bound* temp = lower_bound_; + lower_bound_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline ::substrait::Expression_WindowFunction_Bound* ConsistentPartitionWindowRel_WindowRelFunction::unsafe_arena_release_lower_bound() { + // @@protoc_insertion_point(field_release:substrait.ConsistentPartitionWindowRel.WindowRelFunction.lower_bound) + + ::substrait::Expression_WindowFunction_Bound* temp = lower_bound_; + lower_bound_ = nullptr; + return temp; +} +inline ::substrait::Expression_WindowFunction_Bound* ConsistentPartitionWindowRel_WindowRelFunction::_internal_mutable_lower_bound() { + + if (lower_bound_ == nullptr) { + auto* p = CreateMaybeMessage<::substrait::Expression_WindowFunction_Bound>(GetArenaForAllocation()); + lower_bound_ = p; + } + return lower_bound_; +} +inline ::substrait::Expression_WindowFunction_Bound* ConsistentPartitionWindowRel_WindowRelFunction::mutable_lower_bound() { + ::substrait::Expression_WindowFunction_Bound* _msg = _internal_mutable_lower_bound(); + // @@protoc_insertion_point(field_mutable:substrait.ConsistentPartitionWindowRel.WindowRelFunction.lower_bound) + return _msg; +} +inline void ConsistentPartitionWindowRel_WindowRelFunction::set_allocated_lower_bound(::substrait::Expression_WindowFunction_Bound* lower_bound) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete lower_bound_; + } + if (lower_bound) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper<::substrait::Expression_WindowFunction_Bound>::GetOwningArena(lower_bound); + if (message_arena != submessage_arena) { + lower_bound = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, lower_bound, submessage_arena); + } + + } else { + + } + lower_bound_ = lower_bound; + // @@protoc_insertion_point(field_set_allocated:substrait.ConsistentPartitionWindowRel.WindowRelFunction.lower_bound) +} + +// .substrait.Expression.WindowFunction.Bound upper_bound = 4; +inline bool ConsistentPartitionWindowRel_WindowRelFunction::_internal_has_upper_bound() const { + return this != internal_default_instance() && upper_bound_ != nullptr; +} +inline bool ConsistentPartitionWindowRel_WindowRelFunction::has_upper_bound() const { + return _internal_has_upper_bound(); +} +inline void ConsistentPartitionWindowRel_WindowRelFunction::clear_upper_bound() { + if (GetArenaForAllocation() == nullptr && upper_bound_ != nullptr) { + delete upper_bound_; + } + upper_bound_ = nullptr; +} +inline const ::substrait::Expression_WindowFunction_Bound& ConsistentPartitionWindowRel_WindowRelFunction::_internal_upper_bound() const { + const ::substrait::Expression_WindowFunction_Bound* p = upper_bound_; + return p != nullptr ? *p : reinterpret_cast<const ::substrait::Expression_WindowFunction_Bound&>( + ::substrait::_Expression_WindowFunction_Bound_default_instance_); +} +inline const ::substrait::Expression_WindowFunction_Bound& ConsistentPartitionWindowRel_WindowRelFunction::upper_bound() const { + // @@protoc_insertion_point(field_get:substrait.ConsistentPartitionWindowRel.WindowRelFunction.upper_bound) + return _internal_upper_bound(); +} +inline void ConsistentPartitionWindowRel_WindowRelFunction::unsafe_arena_set_allocated_upper_bound( + ::substrait::Expression_WindowFunction_Bound* upper_bound) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(upper_bound_); + } + upper_bound_ = upper_bound; + if (upper_bound) { + + } else { + + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:substrait.ConsistentPartitionWindowRel.WindowRelFunction.upper_bound) +} +inline ::substrait::Expression_WindowFunction_Bound* ConsistentPartitionWindowRel_WindowRelFunction::release_upper_bound() { + + ::substrait::Expression_WindowFunction_Bound* temp = upper_bound_; + upper_bound_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline ::substrait::Expression_WindowFunction_Bound* ConsistentPartitionWindowRel_WindowRelFunction::unsafe_arena_release_upper_bound() { + // @@protoc_insertion_point(field_release:substrait.ConsistentPartitionWindowRel.WindowRelFunction.upper_bound) + + ::substrait::Expression_WindowFunction_Bound* temp = upper_bound_; + upper_bound_ = nullptr; + return temp; +} +inline ::substrait::Expression_WindowFunction_Bound* ConsistentPartitionWindowRel_WindowRelFunction::_internal_mutable_upper_bound() { + + if (upper_bound_ == nullptr) { + auto* p = CreateMaybeMessage<::substrait::Expression_WindowFunction_Bound>(GetArenaForAllocation()); + upper_bound_ = p; + } + return upper_bound_; +} +inline ::substrait::Expression_WindowFunction_Bound* ConsistentPartitionWindowRel_WindowRelFunction::mutable_upper_bound() { + ::substrait::Expression_WindowFunction_Bound* _msg = _internal_mutable_upper_bound(); + // @@protoc_insertion_point(field_mutable:substrait.ConsistentPartitionWindowRel.WindowRelFunction.upper_bound) + return _msg; +} +inline void ConsistentPartitionWindowRel_WindowRelFunction::set_allocated_upper_bound(::substrait::Expression_WindowFunction_Bound* upper_bound) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete upper_bound_; + } + if (upper_bound) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper<::substrait::Expression_WindowFunction_Bound>::GetOwningArena(upper_bound); + if (message_arena != submessage_arena) { + upper_bound = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, upper_bound, submessage_arena); + } + + } else { + + } + upper_bound_ = upper_bound; + // @@protoc_insertion_point(field_set_allocated:substrait.ConsistentPartitionWindowRel.WindowRelFunction.upper_bound) +} + +// .substrait.Expression.WindowFunction.BoundsType bounds_type = 12; +inline void ConsistentPartitionWindowRel_WindowRelFunction::clear_bounds_type() { + bounds_type_ = 0; +} +inline ::substrait::Expression_WindowFunction_BoundsType ConsistentPartitionWindowRel_WindowRelFunction::_internal_bounds_type() const { + return static_cast< ::substrait::Expression_WindowFunction_BoundsType >(bounds_type_); +} +inline ::substrait::Expression_WindowFunction_BoundsType ConsistentPartitionWindowRel_WindowRelFunction::bounds_type() const { + // @@protoc_insertion_point(field_get:substrait.ConsistentPartitionWindowRel.WindowRelFunction.bounds_type) + return _internal_bounds_type(); +} +inline void ConsistentPartitionWindowRel_WindowRelFunction::_internal_set_bounds_type(::substrait::Expression_WindowFunction_BoundsType value) { + + bounds_type_ = value; +} +inline void ConsistentPartitionWindowRel_WindowRelFunction::set_bounds_type(::substrait::Expression_WindowFunction_BoundsType value) { + _internal_set_bounds_type(value); + // @@protoc_insertion_point(field_set:substrait.ConsistentPartitionWindowRel.WindowRelFunction.bounds_type) +} + +// ------------------------------------------------------------------- + +// ConsistentPartitionWindowRel + +// .substrait.RelCommon common = 1; +inline bool ConsistentPartitionWindowRel::_internal_has_common() const { + return this != internal_default_instance() && common_ != nullptr; +} +inline bool ConsistentPartitionWindowRel::has_common() const { + return _internal_has_common(); +} +inline void ConsistentPartitionWindowRel::clear_common() { + if (GetArenaForAllocation() == nullptr && common_ != nullptr) { + delete common_; + } + common_ = nullptr; +} +inline const ::substrait::RelCommon& ConsistentPartitionWindowRel::_internal_common() const { + const ::substrait::RelCommon* p = common_; + return p != nullptr ? *p : reinterpret_cast<const ::substrait::RelCommon&>( + ::substrait::_RelCommon_default_instance_); +} +inline const ::substrait::RelCommon& ConsistentPartitionWindowRel::common() const { + // @@protoc_insertion_point(field_get:substrait.ConsistentPartitionWindowRel.common) + return _internal_common(); +} +inline void ConsistentPartitionWindowRel::unsafe_arena_set_allocated_common( + ::substrait::RelCommon* common) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(common_); + } + common_ = common; + if (common) { + + } else { + + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:substrait.ConsistentPartitionWindowRel.common) +} +inline ::substrait::RelCommon* ConsistentPartitionWindowRel::release_common() { + + ::substrait::RelCommon* temp = common_; + common_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline ::substrait::RelCommon* ConsistentPartitionWindowRel::unsafe_arena_release_common() { + // @@protoc_insertion_point(field_release:substrait.ConsistentPartitionWindowRel.common) + + ::substrait::RelCommon* temp = common_; + common_ = nullptr; + return temp; +} +inline ::substrait::RelCommon* ConsistentPartitionWindowRel::_internal_mutable_common() { + + if (common_ == nullptr) { + auto* p = CreateMaybeMessage<::substrait::RelCommon>(GetArenaForAllocation()); + common_ = p; + } + return common_; +} +inline ::substrait::RelCommon* ConsistentPartitionWindowRel::mutable_common() { + ::substrait::RelCommon* _msg = _internal_mutable_common(); + // @@protoc_insertion_point(field_mutable:substrait.ConsistentPartitionWindowRel.common) + return _msg; +} +inline void ConsistentPartitionWindowRel::set_allocated_common(::substrait::RelCommon* common) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete common_; + } + if (common) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper<::substrait::RelCommon>::GetOwningArena(common); + if (message_arena != submessage_arena) { + common = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, common, submessage_arena); + } + + } else { + + } + common_ = common; + // @@protoc_insertion_point(field_set_allocated:substrait.ConsistentPartitionWindowRel.common) +} + +// .substrait.Rel input = 2; +inline bool ConsistentPartitionWindowRel::_internal_has_input() const { + return this != internal_default_instance() && input_ != nullptr; +} +inline bool ConsistentPartitionWindowRel::has_input() const { + return _internal_has_input(); +} +inline void ConsistentPartitionWindowRel::clear_input() { + if (GetArenaForAllocation() == nullptr && input_ != nullptr) { + delete input_; + } + input_ = nullptr; +} +inline const ::substrait::Rel& ConsistentPartitionWindowRel::_internal_input() const { + const ::substrait::Rel* p = input_; + return p != nullptr ? *p : reinterpret_cast<const ::substrait::Rel&>( + ::substrait::_Rel_default_instance_); +} +inline const ::substrait::Rel& ConsistentPartitionWindowRel::input() const { + // @@protoc_insertion_point(field_get:substrait.ConsistentPartitionWindowRel.input) + return _internal_input(); +} +inline void ConsistentPartitionWindowRel::unsafe_arena_set_allocated_input( + ::substrait::Rel* input) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(input_); + } + input_ = input; + if (input) { + + } else { + + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:substrait.ConsistentPartitionWindowRel.input) +} +inline ::substrait::Rel* ConsistentPartitionWindowRel::release_input() { + + ::substrait::Rel* temp = input_; + input_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline ::substrait::Rel* ConsistentPartitionWindowRel::unsafe_arena_release_input() { + // @@protoc_insertion_point(field_release:substrait.ConsistentPartitionWindowRel.input) + + ::substrait::Rel* temp = input_; + input_ = nullptr; + return temp; +} +inline ::substrait::Rel* ConsistentPartitionWindowRel::_internal_mutable_input() { + + if (input_ == nullptr) { + auto* p = CreateMaybeMessage<::substrait::Rel>(GetArenaForAllocation()); + input_ = p; + } + return input_; +} +inline ::substrait::Rel* ConsistentPartitionWindowRel::mutable_input() { + ::substrait::Rel* _msg = _internal_mutable_input(); + // @@protoc_insertion_point(field_mutable:substrait.ConsistentPartitionWindowRel.input) + return _msg; +} +inline void ConsistentPartitionWindowRel::set_allocated_input(::substrait::Rel* input) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete input_; + } + if (input) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper<::substrait::Rel>::GetOwningArena(input); + if (message_arena != submessage_arena) { + input = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, input, submessage_arena); + } + + } else { + + } + input_ = input; + // @@protoc_insertion_point(field_set_allocated:substrait.ConsistentPartitionWindowRel.input) +} + +// repeated .substrait.ConsistentPartitionWindowRel.WindowRelFunction window_functions = 3; +inline int ConsistentPartitionWindowRel::_internal_window_functions_size() const { + return window_functions_.size(); +} +inline int ConsistentPartitionWindowRel::window_functions_size() const { + return _internal_window_functions_size(); +} +inline void ConsistentPartitionWindowRel::clear_window_functions() { + window_functions_.Clear(); +} +inline ::substrait::ConsistentPartitionWindowRel_WindowRelFunction* ConsistentPartitionWindowRel::mutable_window_functions(int index) { + // @@protoc_insertion_point(field_mutable:substrait.ConsistentPartitionWindowRel.window_functions) + return window_functions_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::ConsistentPartitionWindowRel_WindowRelFunction >* +ConsistentPartitionWindowRel::mutable_window_functions() { + // @@protoc_insertion_point(field_mutable_list:substrait.ConsistentPartitionWindowRel.window_functions) + return &window_functions_; +} +inline const ::substrait::ConsistentPartitionWindowRel_WindowRelFunction& ConsistentPartitionWindowRel::_internal_window_functions(int index) const { + return window_functions_.Get(index); +} +inline const ::substrait::ConsistentPartitionWindowRel_WindowRelFunction& ConsistentPartitionWindowRel::window_functions(int index) const { + // @@protoc_insertion_point(field_get:substrait.ConsistentPartitionWindowRel.window_functions) + return _internal_window_functions(index); +} +inline ::substrait::ConsistentPartitionWindowRel_WindowRelFunction* ConsistentPartitionWindowRel::_internal_add_window_functions() { + return window_functions_.Add(); +} +inline ::substrait::ConsistentPartitionWindowRel_WindowRelFunction* ConsistentPartitionWindowRel::add_window_functions() { + ::substrait::ConsistentPartitionWindowRel_WindowRelFunction* _add = _internal_add_window_functions(); + // @@protoc_insertion_point(field_add:substrait.ConsistentPartitionWindowRel.window_functions) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::ConsistentPartitionWindowRel_WindowRelFunction >& +ConsistentPartitionWindowRel::window_functions() const { + // @@protoc_insertion_point(field_list:substrait.ConsistentPartitionWindowRel.window_functions) + return window_functions_; +} + +// repeated .substrait.Expression partition_expressions = 4; +inline int ConsistentPartitionWindowRel::_internal_partition_expressions_size() const { + return partition_expressions_.size(); +} +inline int ConsistentPartitionWindowRel::partition_expressions_size() const { + return _internal_partition_expressions_size(); +} +inline void ConsistentPartitionWindowRel::clear_partition_expressions() { + partition_expressions_.Clear(); +} +inline ::substrait::Expression* ConsistentPartitionWindowRel::mutable_partition_expressions(int index) { + // @@protoc_insertion_point(field_mutable:substrait.ConsistentPartitionWindowRel.partition_expressions) + return partition_expressions_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::Expression >* +ConsistentPartitionWindowRel::mutable_partition_expressions() { + // @@protoc_insertion_point(field_mutable_list:substrait.ConsistentPartitionWindowRel.partition_expressions) + return &partition_expressions_; +} +inline const ::substrait::Expression& ConsistentPartitionWindowRel::_internal_partition_expressions(int index) const { + return partition_expressions_.Get(index); +} +inline const ::substrait::Expression& ConsistentPartitionWindowRel::partition_expressions(int index) const { + // @@protoc_insertion_point(field_get:substrait.ConsistentPartitionWindowRel.partition_expressions) + return _internal_partition_expressions(index); +} +inline ::substrait::Expression* ConsistentPartitionWindowRel::_internal_add_partition_expressions() { + return partition_expressions_.Add(); +} +inline ::substrait::Expression* ConsistentPartitionWindowRel::add_partition_expressions() { + ::substrait::Expression* _add = _internal_add_partition_expressions(); + // @@protoc_insertion_point(field_add:substrait.ConsistentPartitionWindowRel.partition_expressions) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::Expression >& +ConsistentPartitionWindowRel::partition_expressions() const { + // @@protoc_insertion_point(field_list:substrait.ConsistentPartitionWindowRel.partition_expressions) + return partition_expressions_; +} + +// repeated .substrait.SortField sorts = 5; +inline int ConsistentPartitionWindowRel::_internal_sorts_size() const { + return sorts_.size(); +} +inline int ConsistentPartitionWindowRel::sorts_size() const { + return _internal_sorts_size(); +} +inline void ConsistentPartitionWindowRel::clear_sorts() { + sorts_.Clear(); +} +inline ::substrait::SortField* ConsistentPartitionWindowRel::mutable_sorts(int index) { + // @@protoc_insertion_point(field_mutable:substrait.ConsistentPartitionWindowRel.sorts) + return sorts_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::SortField >* +ConsistentPartitionWindowRel::mutable_sorts() { + // @@protoc_insertion_point(field_mutable_list:substrait.ConsistentPartitionWindowRel.sorts) + return &sorts_; +} +inline const ::substrait::SortField& ConsistentPartitionWindowRel::_internal_sorts(int index) const { + return sorts_.Get(index); +} +inline const ::substrait::SortField& ConsistentPartitionWindowRel::sorts(int index) const { + // @@protoc_insertion_point(field_get:substrait.ConsistentPartitionWindowRel.sorts) + return _internal_sorts(index); +} +inline ::substrait::SortField* ConsistentPartitionWindowRel::_internal_add_sorts() { + return sorts_.Add(); +} +inline ::substrait::SortField* ConsistentPartitionWindowRel::add_sorts() { + ::substrait::SortField* _add = _internal_add_sorts(); + // @@protoc_insertion_point(field_add:substrait.ConsistentPartitionWindowRel.sorts) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::SortField >& +ConsistentPartitionWindowRel::sorts() const { + // @@protoc_insertion_point(field_list:substrait.ConsistentPartitionWindowRel.sorts) + return sorts_; +} + +// .substrait.extensions.AdvancedExtension advanced_extension = 10; +inline bool ConsistentPartitionWindowRel::_internal_has_advanced_extension() const { + return this != internal_default_instance() && advanced_extension_ != nullptr; +} +inline bool ConsistentPartitionWindowRel::has_advanced_extension() const { + return _internal_has_advanced_extension(); +} +inline const ::substrait::extensions::AdvancedExtension& ConsistentPartitionWindowRel::_internal_advanced_extension() const { + const ::substrait::extensions::AdvancedExtension* p = advanced_extension_; + return p != nullptr ? *p : reinterpret_cast<const ::substrait::extensions::AdvancedExtension&>( + ::substrait::extensions::_AdvancedExtension_default_instance_); +} +inline const ::substrait::extensions::AdvancedExtension& ConsistentPartitionWindowRel::advanced_extension() const { + // @@protoc_insertion_point(field_get:substrait.ConsistentPartitionWindowRel.advanced_extension) + return _internal_advanced_extension(); +} +inline void ConsistentPartitionWindowRel::unsafe_arena_set_allocated_advanced_extension( + ::substrait::extensions::AdvancedExtension* advanced_extension) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(advanced_extension_); + } + advanced_extension_ = advanced_extension; + if (advanced_extension) { + + } else { + + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:substrait.ConsistentPartitionWindowRel.advanced_extension) +} +inline ::substrait::extensions::AdvancedExtension* ConsistentPartitionWindowRel::release_advanced_extension() { + + ::substrait::extensions::AdvancedExtension* temp = advanced_extension_; + advanced_extension_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline ::substrait::extensions::AdvancedExtension* ConsistentPartitionWindowRel::unsafe_arena_release_advanced_extension() { + // @@protoc_insertion_point(field_release:substrait.ConsistentPartitionWindowRel.advanced_extension) + + ::substrait::extensions::AdvancedExtension* temp = advanced_extension_; + advanced_extension_ = nullptr; + return temp; +} +inline ::substrait::extensions::AdvancedExtension* ConsistentPartitionWindowRel::_internal_mutable_advanced_extension() { + + if (advanced_extension_ == nullptr) { + auto* p = CreateMaybeMessage<::substrait::extensions::AdvancedExtension>(GetArenaForAllocation()); + advanced_extension_ = p; + } + return advanced_extension_; +} +inline ::substrait::extensions::AdvancedExtension* ConsistentPartitionWindowRel::mutable_advanced_extension() { + ::substrait::extensions::AdvancedExtension* _msg = _internal_mutable_advanced_extension(); + // @@protoc_insertion_point(field_mutable:substrait.ConsistentPartitionWindowRel.advanced_extension) + return _msg; +} +inline void ConsistentPartitionWindowRel::set_allocated_advanced_extension(::substrait::extensions::AdvancedExtension* advanced_extension) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(advanced_extension_); + } + if (advanced_extension) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper< + ::PROTOBUF_NAMESPACE_ID::MessageLite>::GetOwningArena( + reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(advanced_extension)); + if (message_arena != submessage_arena) { + advanced_extension = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, advanced_extension, submessage_arena); + } + + } else { + + } + advanced_extension_ = advanced_extension; + // @@protoc_insertion_point(field_set_allocated:substrait.ConsistentPartitionWindowRel.advanced_extension) +} + +// ------------------------------------------------------------------- + // SortRel // .substrait.RelCommon common = 1; @@ -30597,6 +32655,435 @@ inline ExchangeRel::ExchangeKindCase ExchangeRel::exchange_kind_case() const { } // ------------------------------------------------------------------- +// ExpandRel_ExpandField + +// .substrait.ExpandRel.SwitchingField switching_field = 2; +inline bool ExpandRel_ExpandField::_internal_has_switching_field() const { + return field_type_case() == kSwitchingField; +} +inline bool ExpandRel_ExpandField::has_switching_field() const { + return _internal_has_switching_field(); +} +inline void ExpandRel_ExpandField::set_has_switching_field() { + _oneof_case_[0] = kSwitchingField; +} +inline void ExpandRel_ExpandField::clear_switching_field() { + if (_internal_has_switching_field()) { + if (GetArenaForAllocation() == nullptr) { + delete field_type_.switching_field_; + } + clear_has_field_type(); + } +} +inline ::substrait::ExpandRel_SwitchingField* ExpandRel_ExpandField::release_switching_field() { + // @@protoc_insertion_point(field_release:substrait.ExpandRel.ExpandField.switching_field) + if (_internal_has_switching_field()) { + clear_has_field_type(); + ::substrait::ExpandRel_SwitchingField* temp = field_type_.switching_field_; + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } + field_type_.switching_field_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline const ::substrait::ExpandRel_SwitchingField& ExpandRel_ExpandField::_internal_switching_field() const { + return _internal_has_switching_field() + ? *field_type_.switching_field_ + : reinterpret_cast< ::substrait::ExpandRel_SwitchingField&>(::substrait::_ExpandRel_SwitchingField_default_instance_); +} +inline const ::substrait::ExpandRel_SwitchingField& ExpandRel_ExpandField::switching_field() const { + // @@protoc_insertion_point(field_get:substrait.ExpandRel.ExpandField.switching_field) + return _internal_switching_field(); +} +inline ::substrait::ExpandRel_SwitchingField* ExpandRel_ExpandField::unsafe_arena_release_switching_field() { + // @@protoc_insertion_point(field_unsafe_arena_release:substrait.ExpandRel.ExpandField.switching_field) + if (_internal_has_switching_field()) { + clear_has_field_type(); + ::substrait::ExpandRel_SwitchingField* temp = field_type_.switching_field_; + field_type_.switching_field_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline void ExpandRel_ExpandField::unsafe_arena_set_allocated_switching_field(::substrait::ExpandRel_SwitchingField* switching_field) { + clear_field_type(); + if (switching_field) { + set_has_switching_field(); + field_type_.switching_field_ = switching_field; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:substrait.ExpandRel.ExpandField.switching_field) +} +inline ::substrait::ExpandRel_SwitchingField* ExpandRel_ExpandField::_internal_mutable_switching_field() { + if (!_internal_has_switching_field()) { + clear_field_type(); + set_has_switching_field(); + field_type_.switching_field_ = CreateMaybeMessage< ::substrait::ExpandRel_SwitchingField >(GetArenaForAllocation()); + } + return field_type_.switching_field_; +} +inline ::substrait::ExpandRel_SwitchingField* ExpandRel_ExpandField::mutable_switching_field() { + ::substrait::ExpandRel_SwitchingField* _msg = _internal_mutable_switching_field(); + // @@protoc_insertion_point(field_mutable:substrait.ExpandRel.ExpandField.switching_field) + return _msg; +} + +// .substrait.Expression consistent_field = 3; +inline bool ExpandRel_ExpandField::_internal_has_consistent_field() const { + return field_type_case() == kConsistentField; +} +inline bool ExpandRel_ExpandField::has_consistent_field() const { + return _internal_has_consistent_field(); +} +inline void ExpandRel_ExpandField::set_has_consistent_field() { + _oneof_case_[0] = kConsistentField; +} +inline void ExpandRel_ExpandField::clear_consistent_field() { + if (_internal_has_consistent_field()) { + if (GetArenaForAllocation() == nullptr) { + delete field_type_.consistent_field_; + } + clear_has_field_type(); + } +} +inline ::substrait::Expression* ExpandRel_ExpandField::release_consistent_field() { + // @@protoc_insertion_point(field_release:substrait.ExpandRel.ExpandField.consistent_field) + if (_internal_has_consistent_field()) { + clear_has_field_type(); + ::substrait::Expression* temp = field_type_.consistent_field_; + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } + field_type_.consistent_field_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline const ::substrait::Expression& ExpandRel_ExpandField::_internal_consistent_field() const { + return _internal_has_consistent_field() + ? *field_type_.consistent_field_ + : reinterpret_cast< ::substrait::Expression&>(::substrait::_Expression_default_instance_); +} +inline const ::substrait::Expression& ExpandRel_ExpandField::consistent_field() const { + // @@protoc_insertion_point(field_get:substrait.ExpandRel.ExpandField.consistent_field) + return _internal_consistent_field(); +} +inline ::substrait::Expression* ExpandRel_ExpandField::unsafe_arena_release_consistent_field() { + // @@protoc_insertion_point(field_unsafe_arena_release:substrait.ExpandRel.ExpandField.consistent_field) + if (_internal_has_consistent_field()) { + clear_has_field_type(); + ::substrait::Expression* temp = field_type_.consistent_field_; + field_type_.consistent_field_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline void ExpandRel_ExpandField::unsafe_arena_set_allocated_consistent_field(::substrait::Expression* consistent_field) { + clear_field_type(); + if (consistent_field) { + set_has_consistent_field(); + field_type_.consistent_field_ = consistent_field; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:substrait.ExpandRel.ExpandField.consistent_field) +} +inline ::substrait::Expression* ExpandRel_ExpandField::_internal_mutable_consistent_field() { + if (!_internal_has_consistent_field()) { + clear_field_type(); + set_has_consistent_field(); + field_type_.consistent_field_ = CreateMaybeMessage< ::substrait::Expression >(GetArenaForAllocation()); + } + return field_type_.consistent_field_; +} +inline ::substrait::Expression* ExpandRel_ExpandField::mutable_consistent_field() { + ::substrait::Expression* _msg = _internal_mutable_consistent_field(); + // @@protoc_insertion_point(field_mutable:substrait.ExpandRel.ExpandField.consistent_field) + return _msg; +} + +inline bool ExpandRel_ExpandField::has_field_type() const { + return field_type_case() != FIELD_TYPE_NOT_SET; +} +inline void ExpandRel_ExpandField::clear_has_field_type() { + _oneof_case_[0] = FIELD_TYPE_NOT_SET; +} +inline ExpandRel_ExpandField::FieldTypeCase ExpandRel_ExpandField::field_type_case() const { + return ExpandRel_ExpandField::FieldTypeCase(_oneof_case_[0]); +} +// ------------------------------------------------------------------- + +// ExpandRel_SwitchingField + +// repeated .substrait.Expression duplicates = 1; +inline int ExpandRel_SwitchingField::_internal_duplicates_size() const { + return duplicates_.size(); +} +inline int ExpandRel_SwitchingField::duplicates_size() const { + return _internal_duplicates_size(); +} +inline void ExpandRel_SwitchingField::clear_duplicates() { + duplicates_.Clear(); +} +inline ::substrait::Expression* ExpandRel_SwitchingField::mutable_duplicates(int index) { + // @@protoc_insertion_point(field_mutable:substrait.ExpandRel.SwitchingField.duplicates) + return duplicates_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::Expression >* +ExpandRel_SwitchingField::mutable_duplicates() { + // @@protoc_insertion_point(field_mutable_list:substrait.ExpandRel.SwitchingField.duplicates) + return &duplicates_; +} +inline const ::substrait::Expression& ExpandRel_SwitchingField::_internal_duplicates(int index) const { + return duplicates_.Get(index); +} +inline const ::substrait::Expression& ExpandRel_SwitchingField::duplicates(int index) const { + // @@protoc_insertion_point(field_get:substrait.ExpandRel.SwitchingField.duplicates) + return _internal_duplicates(index); +} +inline ::substrait::Expression* ExpandRel_SwitchingField::_internal_add_duplicates() { + return duplicates_.Add(); +} +inline ::substrait::Expression* ExpandRel_SwitchingField::add_duplicates() { + ::substrait::Expression* _add = _internal_add_duplicates(); + // @@protoc_insertion_point(field_add:substrait.ExpandRel.SwitchingField.duplicates) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::Expression >& +ExpandRel_SwitchingField::duplicates() const { + // @@protoc_insertion_point(field_list:substrait.ExpandRel.SwitchingField.duplicates) + return duplicates_; +} + +// ------------------------------------------------------------------- + +// ExpandRel + +// .substrait.RelCommon common = 1; +inline bool ExpandRel::_internal_has_common() const { + return this != internal_default_instance() && common_ != nullptr; +} +inline bool ExpandRel::has_common() const { + return _internal_has_common(); +} +inline void ExpandRel::clear_common() { + if (GetArenaForAllocation() == nullptr && common_ != nullptr) { + delete common_; + } + common_ = nullptr; +} +inline const ::substrait::RelCommon& ExpandRel::_internal_common() const { + const ::substrait::RelCommon* p = common_; + return p != nullptr ? *p : reinterpret_cast<const ::substrait::RelCommon&>( + ::substrait::_RelCommon_default_instance_); +} +inline const ::substrait::RelCommon& ExpandRel::common() const { + // @@protoc_insertion_point(field_get:substrait.ExpandRel.common) + return _internal_common(); +} +inline void ExpandRel::unsafe_arena_set_allocated_common( + ::substrait::RelCommon* common) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(common_); + } + common_ = common; + if (common) { + + } else { + + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:substrait.ExpandRel.common) +} +inline ::substrait::RelCommon* ExpandRel::release_common() { + + ::substrait::RelCommon* temp = common_; + common_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline ::substrait::RelCommon* ExpandRel::unsafe_arena_release_common() { + // @@protoc_insertion_point(field_release:substrait.ExpandRel.common) + + ::substrait::RelCommon* temp = common_; + common_ = nullptr; + return temp; +} +inline ::substrait::RelCommon* ExpandRel::_internal_mutable_common() { + + if (common_ == nullptr) { + auto* p = CreateMaybeMessage<::substrait::RelCommon>(GetArenaForAllocation()); + common_ = p; + } + return common_; +} +inline ::substrait::RelCommon* ExpandRel::mutable_common() { + ::substrait::RelCommon* _msg = _internal_mutable_common(); + // @@protoc_insertion_point(field_mutable:substrait.ExpandRel.common) + return _msg; +} +inline void ExpandRel::set_allocated_common(::substrait::RelCommon* common) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete common_; + } + if (common) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper<::substrait::RelCommon>::GetOwningArena(common); + if (message_arena != submessage_arena) { + common = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, common, submessage_arena); + } + + } else { + + } + common_ = common; + // @@protoc_insertion_point(field_set_allocated:substrait.ExpandRel.common) +} + +// .substrait.Rel input = 2; +inline bool ExpandRel::_internal_has_input() const { + return this != internal_default_instance() && input_ != nullptr; +} +inline bool ExpandRel::has_input() const { + return _internal_has_input(); +} +inline void ExpandRel::clear_input() { + if (GetArenaForAllocation() == nullptr && input_ != nullptr) { + delete input_; + } + input_ = nullptr; +} +inline const ::substrait::Rel& ExpandRel::_internal_input() const { + const ::substrait::Rel* p = input_; + return p != nullptr ? *p : reinterpret_cast<const ::substrait::Rel&>( + ::substrait::_Rel_default_instance_); +} +inline const ::substrait::Rel& ExpandRel::input() const { + // @@protoc_insertion_point(field_get:substrait.ExpandRel.input) + return _internal_input(); +} +inline void ExpandRel::unsafe_arena_set_allocated_input( + ::substrait::Rel* input) { + if (GetArenaForAllocation() == nullptr) { + delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(input_); + } + input_ = input; + if (input) { + + } else { + + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:substrait.ExpandRel.input) +} +inline ::substrait::Rel* ExpandRel::release_input() { + + ::substrait::Rel* temp = input_; + input_ = nullptr; +#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE + auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp); + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + if (GetArenaForAllocation() == nullptr) { delete old; } +#else // PROTOBUF_FORCE_COPY_IN_RELEASE + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } +#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE + return temp; +} +inline ::substrait::Rel* ExpandRel::unsafe_arena_release_input() { + // @@protoc_insertion_point(field_release:substrait.ExpandRel.input) + + ::substrait::Rel* temp = input_; + input_ = nullptr; + return temp; +} +inline ::substrait::Rel* ExpandRel::_internal_mutable_input() { + + if (input_ == nullptr) { + auto* p = CreateMaybeMessage<::substrait::Rel>(GetArenaForAllocation()); + input_ = p; + } + return input_; +} +inline ::substrait::Rel* ExpandRel::mutable_input() { + ::substrait::Rel* _msg = _internal_mutable_input(); + // @@protoc_insertion_point(field_mutable:substrait.ExpandRel.input) + return _msg; +} +inline void ExpandRel::set_allocated_input(::substrait::Rel* input) { + ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation(); + if (message_arena == nullptr) { + delete input_; + } + if (input) { + ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = + ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper<::substrait::Rel>::GetOwningArena(input); + if (message_arena != submessage_arena) { + input = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage( + message_arena, input, submessage_arena); + } + + } else { + + } + input_ = input; + // @@protoc_insertion_point(field_set_allocated:substrait.ExpandRel.input) +} + +// repeated .substrait.ExpandRel.ExpandField fields = 4; +inline int ExpandRel::_internal_fields_size() const { + return fields_.size(); +} +inline int ExpandRel::fields_size() const { + return _internal_fields_size(); +} +inline void ExpandRel::clear_fields() { + fields_.Clear(); +} +inline ::substrait::ExpandRel_ExpandField* ExpandRel::mutable_fields(int index) { + // @@protoc_insertion_point(field_mutable:substrait.ExpandRel.fields) + return fields_.Mutable(index); +} +inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::ExpandRel_ExpandField >* +ExpandRel::mutable_fields() { + // @@protoc_insertion_point(field_mutable_list:substrait.ExpandRel.fields) + return &fields_; +} +inline const ::substrait::ExpandRel_ExpandField& ExpandRel::_internal_fields(int index) const { + return fields_.Get(index); +} +inline const ::substrait::ExpandRel_ExpandField& ExpandRel::fields(int index) const { + // @@protoc_insertion_point(field_get:substrait.ExpandRel.fields) + return _internal_fields(index); +} +inline ::substrait::ExpandRel_ExpandField* ExpandRel::_internal_add_fields() { + return fields_.Add(); +} +inline ::substrait::ExpandRel_ExpandField* ExpandRel::add_fields() { + ::substrait::ExpandRel_ExpandField* _add = _internal_add_fields(); + // @@protoc_insertion_point(field_add:substrait.ExpandRel.fields) + return _add; +} +inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::substrait::ExpandRel_ExpandField >& +ExpandRel::fields() const { + // @@protoc_insertion_point(field_list:substrait.ExpandRel.fields) + return fields_; +} + +// ------------------------------------------------------------------- + // RelRoot // .substrait.Rel input = 1; @@ -31804,6 +34291,228 @@ inline ::substrait::MergeJoinRel* Rel::mutable_merge_join() { return _msg; } +// .substrait.ConsistentPartitionWindowRel window = 17; +inline bool Rel::_internal_has_window() const { + return rel_type_case() == kWindow; +} +inline bool Rel::has_window() const { + return _internal_has_window(); +} +inline void Rel::set_has_window() { + _oneof_case_[0] = kWindow; +} +inline void Rel::clear_window() { + if (_internal_has_window()) { + if (GetArenaForAllocation() == nullptr) { + delete rel_type_.window_; + } + clear_has_rel_type(); + } +} +inline ::substrait::ConsistentPartitionWindowRel* Rel::release_window() { + // @@protoc_insertion_point(field_release:substrait.Rel.window) + if (_internal_has_window()) { + clear_has_rel_type(); + ::substrait::ConsistentPartitionWindowRel* temp = rel_type_.window_; + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } + rel_type_.window_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline const ::substrait::ConsistentPartitionWindowRel& Rel::_internal_window() const { + return _internal_has_window() + ? *rel_type_.window_ + : reinterpret_cast< ::substrait::ConsistentPartitionWindowRel&>(::substrait::_ConsistentPartitionWindowRel_default_instance_); +} +inline const ::substrait::ConsistentPartitionWindowRel& Rel::window() const { + // @@protoc_insertion_point(field_get:substrait.Rel.window) + return _internal_window(); +} +inline ::substrait::ConsistentPartitionWindowRel* Rel::unsafe_arena_release_window() { + // @@protoc_insertion_point(field_unsafe_arena_release:substrait.Rel.window) + if (_internal_has_window()) { + clear_has_rel_type(); + ::substrait::ConsistentPartitionWindowRel* temp = rel_type_.window_; + rel_type_.window_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline void Rel::unsafe_arena_set_allocated_window(::substrait::ConsistentPartitionWindowRel* window) { + clear_rel_type(); + if (window) { + set_has_window(); + rel_type_.window_ = window; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:substrait.Rel.window) +} +inline ::substrait::ConsistentPartitionWindowRel* Rel::_internal_mutable_window() { + if (!_internal_has_window()) { + clear_rel_type(); + set_has_window(); + rel_type_.window_ = CreateMaybeMessage< ::substrait::ConsistentPartitionWindowRel >(GetArenaForAllocation()); + } + return rel_type_.window_; +} +inline ::substrait::ConsistentPartitionWindowRel* Rel::mutable_window() { + ::substrait::ConsistentPartitionWindowRel* _msg = _internal_mutable_window(); + // @@protoc_insertion_point(field_mutable:substrait.Rel.window) + return _msg; +} + +// .substrait.ExchangeRel exchange = 15; +inline bool Rel::_internal_has_exchange() const { + return rel_type_case() == kExchange; +} +inline bool Rel::has_exchange() const { + return _internal_has_exchange(); +} +inline void Rel::set_has_exchange() { + _oneof_case_[0] = kExchange; +} +inline void Rel::clear_exchange() { + if (_internal_has_exchange()) { + if (GetArenaForAllocation() == nullptr) { + delete rel_type_.exchange_; + } + clear_has_rel_type(); + } +} +inline ::substrait::ExchangeRel* Rel::release_exchange() { + // @@protoc_insertion_point(field_release:substrait.Rel.exchange) + if (_internal_has_exchange()) { + clear_has_rel_type(); + ::substrait::ExchangeRel* temp = rel_type_.exchange_; + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } + rel_type_.exchange_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline const ::substrait::ExchangeRel& Rel::_internal_exchange() const { + return _internal_has_exchange() + ? *rel_type_.exchange_ + : reinterpret_cast< ::substrait::ExchangeRel&>(::substrait::_ExchangeRel_default_instance_); +} +inline const ::substrait::ExchangeRel& Rel::exchange() const { + // @@protoc_insertion_point(field_get:substrait.Rel.exchange) + return _internal_exchange(); +} +inline ::substrait::ExchangeRel* Rel::unsafe_arena_release_exchange() { + // @@protoc_insertion_point(field_unsafe_arena_release:substrait.Rel.exchange) + if (_internal_has_exchange()) { + clear_has_rel_type(); + ::substrait::ExchangeRel* temp = rel_type_.exchange_; + rel_type_.exchange_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline void Rel::unsafe_arena_set_allocated_exchange(::substrait::ExchangeRel* exchange) { + clear_rel_type(); + if (exchange) { + set_has_exchange(); + rel_type_.exchange_ = exchange; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:substrait.Rel.exchange) +} +inline ::substrait::ExchangeRel* Rel::_internal_mutable_exchange() { + if (!_internal_has_exchange()) { + clear_rel_type(); + set_has_exchange(); + rel_type_.exchange_ = CreateMaybeMessage< ::substrait::ExchangeRel >(GetArenaForAllocation()); + } + return rel_type_.exchange_; +} +inline ::substrait::ExchangeRel* Rel::mutable_exchange() { + ::substrait::ExchangeRel* _msg = _internal_mutable_exchange(); + // @@protoc_insertion_point(field_mutable:substrait.Rel.exchange) + return _msg; +} + +// .substrait.ExpandRel expand = 16; +inline bool Rel::_internal_has_expand() const { + return rel_type_case() == kExpand; +} +inline bool Rel::has_expand() const { + return _internal_has_expand(); +} +inline void Rel::set_has_expand() { + _oneof_case_[0] = kExpand; +} +inline void Rel::clear_expand() { + if (_internal_has_expand()) { + if (GetArenaForAllocation() == nullptr) { + delete rel_type_.expand_; + } + clear_has_rel_type(); + } +} +inline ::substrait::ExpandRel* Rel::release_expand() { + // @@protoc_insertion_point(field_release:substrait.Rel.expand) + if (_internal_has_expand()) { + clear_has_rel_type(); + ::substrait::ExpandRel* temp = rel_type_.expand_; + if (GetArenaForAllocation() != nullptr) { + temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp); + } + rel_type_.expand_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline const ::substrait::ExpandRel& Rel::_internal_expand() const { + return _internal_has_expand() + ? *rel_type_.expand_ + : reinterpret_cast< ::substrait::ExpandRel&>(::substrait::_ExpandRel_default_instance_); +} +inline const ::substrait::ExpandRel& Rel::expand() const { + // @@protoc_insertion_point(field_get:substrait.Rel.expand) + return _internal_expand(); +} +inline ::substrait::ExpandRel* Rel::unsafe_arena_release_expand() { + // @@protoc_insertion_point(field_unsafe_arena_release:substrait.Rel.expand) + if (_internal_has_expand()) { + clear_has_rel_type(); + ::substrait::ExpandRel* temp = rel_type_.expand_; + rel_type_.expand_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline void Rel::unsafe_arena_set_allocated_expand(::substrait::ExpandRel* expand) { + clear_rel_type(); + if (expand) { + set_has_expand(); + rel_type_.expand_ = expand; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:substrait.Rel.expand) +} +inline ::substrait::ExpandRel* Rel::_internal_mutable_expand() { + if (!_internal_has_expand()) { + clear_rel_type(); + set_has_expand(); + rel_type_.expand_ = CreateMaybeMessage< ::substrait::ExpandRel >(GetArenaForAllocation()); + } + return rel_type_.expand_; +} +inline ::substrait::ExpandRel* Rel::mutable_expand() { + ::substrait::ExpandRel* _msg = _internal_mutable_expand(); + // @@protoc_insertion_point(field_mutable:substrait.Rel.expand) + return _msg; +} + inline bool Rel::has_rel_type() const { return rel_type_case() != REL_TYPE_NOT_SET; } @@ -38458,6 +41167,26 @@ Expression_WindowFunction::partitions() const { return partitions_; } +// .substrait.Expression.WindowFunction.BoundsType bounds_type = 12; +inline void Expression_WindowFunction::clear_bounds_type() { + bounds_type_ = 0; +} +inline ::substrait::Expression_WindowFunction_BoundsType Expression_WindowFunction::_internal_bounds_type() const { + return static_cast< ::substrait::Expression_WindowFunction_BoundsType >(bounds_type_); +} +inline ::substrait::Expression_WindowFunction_BoundsType Expression_WindowFunction::bounds_type() const { + // @@protoc_insertion_point(field_get:substrait.Expression.WindowFunction.bounds_type) + return _internal_bounds_type(); +} +inline void Expression_WindowFunction::_internal_set_bounds_type(::substrait::Expression_WindowFunction_BoundsType value) { + + bounds_type_ = value; +} +inline void Expression_WindowFunction::set_bounds_type(::substrait::Expression_WindowFunction_BoundsType value) { + _internal_set_bounds_type(value); + // @@protoc_insertion_point(field_set:substrait.Expression.WindowFunction.bounds_type) +} + // .substrait.Expression.WindowFunction.Bound lower_bound = 5; inline bool Expression_WindowFunction::_internal_has_lower_bound() const { return this != internal_default_instance() && lower_bound_ != nullptr; @@ -45217,6 +47946,16 @@ AggregateFunction::args() const { // ------------------------------------------------------------------- +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + +// ------------------------------------------------------------------- + // @@protoc_insertion_point(namespace_scope) @@ -45264,6 +48003,11 @@ template <> inline const EnumDescriptor* GetEnumDescriptor< ::substrait::MergeJoinRel_JoinType>() { return ::substrait::MergeJoinRel_JoinType_descriptor(); } +template <> struct is_proto_enum< ::substrait::Expression_WindowFunction_BoundsType> : ::std::true_type {}; +template <> +inline const EnumDescriptor* GetEnumDescriptor< ::substrait::Expression_WindowFunction_BoundsType>() { + return ::substrait::Expression_WindowFunction_BoundsType_descriptor(); +} template <> struct is_proto_enum< ::substrait::Expression_Cast_FailureBehavior> : ::std::true_type {}; template <> inline const EnumDescriptor* GetEnumDescriptor< ::substrait::Expression_Cast_FailureBehavior>() {