From 77e13fbadb7b5d9bb05d895fc940c87381fcfb2d Mon Sep 17 00:00:00 2001 From: Yaron Gvili Date: Tue, 29 Nov 2022 06:07:34 -0500 Subject: [PATCH 1/3] ARROW-18402: [C++] Expose `DeclarationInfo` --- cpp/src/arrow/engine/substrait/relation.h | 35 +++++++++++++++++++ .../engine/substrait/relation_internal.h | 9 +---- 2 files changed, 36 insertions(+), 8 deletions(-) create mode 100644 cpp/src/arrow/engine/substrait/relation.h diff --git a/cpp/src/arrow/engine/substrait/relation.h b/cpp/src/arrow/engine/substrait/relation.h new file mode 100644 index 00000000000..e72ee850c85 --- /dev/null +++ b/cpp/src/arrow/engine/substrait/relation.h @@ -0,0 +1,35 @@ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. + +#pragma once + +#include "arrow/compute/exec/exec_plan.h" +#include "arrow/type_fwd.h" + +namespace arrow { +namespace engine { + +/// Information resulting from converting a Substrait relation. +struct DeclarationInfo { + /// The compute declaration produced thus far. + compute::Declaration declaration; + + std::shared_ptr output_schema; +}; + +} // namespace engine +} // namespace arrow diff --git a/cpp/src/arrow/engine/substrait/relation_internal.h b/cpp/src/arrow/engine/substrait/relation_internal.h index 514f3f97fc0..df7804b6796 100644 --- a/cpp/src/arrow/engine/substrait/relation_internal.h +++ b/cpp/src/arrow/engine/substrait/relation_internal.h @@ -22,6 +22,7 @@ #include "arrow/compute/exec/exec_plan.h" #include "arrow/engine/substrait/extension_types.h" #include "arrow/engine/substrait/options.h" +#include "arrow/engine/substrait/relation.h" #include "arrow/engine/substrait/serde.h" #include "arrow/engine/substrait/visibility.h" #include "arrow/type_fwd.h" @@ -31,14 +32,6 @@ namespace arrow { namespace engine { -/// Information resulting from converting a Substrait relation. -struct DeclarationInfo { - /// The compute declaration produced thus far. - compute::Declaration declaration; - - std::shared_ptr output_schema; -}; - /// \brief Convert a Substrait Rel object to an Acero declaration ARROW_ENGINE_EXPORT Result FromProto(const substrait::Rel&, const ExtensionSet&, From 995c1cd00a6a266000415fc55a90c5408da480e6 Mon Sep 17 00:00:00 2001 From: Yaron Gvili Date: Fri, 2 Dec 2022 03:48:38 -0500 Subject: [PATCH 2/3] fix export --- cpp/src/arrow/engine/substrait/relation.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cpp/src/arrow/engine/substrait/relation.h b/cpp/src/arrow/engine/substrait/relation.h index e72ee850c85..d6c7153e26d 100644 --- a/cpp/src/arrow/engine/substrait/relation.h +++ b/cpp/src/arrow/engine/substrait/relation.h @@ -24,7 +24,7 @@ namespace arrow { namespace engine { /// Information resulting from converting a Substrait relation. -struct DeclarationInfo { +struct ARROW_ENGINE_EXPORT DeclarationInfo { /// The compute declaration produced thus far. compute::Declaration declaration; From 880fb209d484d4eb3e9f7de79c945008f15b4e34 Mon Sep 17 00:00:00 2001 From: Yaron Gvili Date: Tue, 6 Dec 2022 04:40:45 -0500 Subject: [PATCH 3/3] IWUY and engine API --- cpp/src/arrow/engine/api.h | 1 + cpp/src/arrow/engine/substrait/relation.h | 2 ++ 2 files changed, 3 insertions(+) diff --git a/cpp/src/arrow/engine/api.h b/cpp/src/arrow/engine/api.h index 40cade9621e..a3f10553ffe 100644 --- a/cpp/src/arrow/engine/api.h +++ b/cpp/src/arrow/engine/api.h @@ -21,4 +21,5 @@ #include "arrow/engine/substrait/extension_set.h" #include "arrow/engine/substrait/extension_types.h" +#include "arrow/engine/substrait/relation.h" #include "arrow/engine/substrait/serde.h" diff --git a/cpp/src/arrow/engine/substrait/relation.h b/cpp/src/arrow/engine/substrait/relation.h index d6c7153e26d..c2103a0b9ea 100644 --- a/cpp/src/arrow/engine/substrait/relation.h +++ b/cpp/src/arrow/engine/substrait/relation.h @@ -17,6 +17,8 @@ #pragma once +#include + #include "arrow/compute/exec/exec_plan.h" #include "arrow/type_fwd.h"