This is an automated email from the ASF dual-hosted git repository.

alamb pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/arrow-rs.git


The following commit(s) were added to refs/heads/master by this push:
     new bc2d7aa  Make arrow::array_reader private (#1032) (#1133)
bc2d7aa is described below

commit bc2d7aa126e325e2c88be1fb6bf53ae7d6a0ac8e
Author: Raphael Taylor-Davies <[email protected]>
AuthorDate: Wed Jan 5 16:27:27 2022 +0000

    Make arrow::array_reader private (#1032) (#1133)
---
 parquet/Cargo.toml       |  4 +++-
 parquet/src/arrow/mod.rs |  2 +-
 parquet/src/lib.rs       | 16 ++++++++++++++++
 3 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/parquet/Cargo.toml b/parquet/Cargo.toml
index d111abf..e48ee8c 100644
--- a/parquet/Cargo.toml
+++ b/parquet/Cargo.toml
@@ -60,6 +60,8 @@ arrow = { path = "../arrow", version = "7.0.0-SNAPSHOT", 
default-features = fals
 default = ["arrow", "snap", "brotli", "flate2", "lz4", "zstd", "base64"]
 cli = ["serde_json", "base64", "clap"]
 test_common = []
+# Experimental, unstable functionality primarily used for testing
+experimental = []
 
 [[ bin ]]
 name = "parquet-read"
@@ -79,5 +81,5 @@ harness = false
 
 [[bench]]
 name = "arrow_array_reader"
-required-features = ["test_common"]
+required-features = ["test_common", "experimental"]
 harness = false
diff --git a/parquet/src/arrow/mod.rs b/parquet/src/arrow/mod.rs
index 227bbdc..7927bf4 100644
--- a/parquet/src/arrow/mod.rs
+++ b/parquet/src/arrow/mod.rs
@@ -118,7 +118,7 @@
 //!}
 //! ```
 
-pub mod array_reader;
+experimental_mod!(array_reader);
 pub mod arrow_array_reader;
 pub mod arrow_reader;
 pub mod arrow_writer;
diff --git a/parquet/src/lib.rs b/parquet/src/lib.rs
index 900e2b5..6436a88 100644
--- a/parquet/src/lib.rs
+++ b/parquet/src/lib.rs
@@ -35,6 +35,22 @@
     clippy::vec_init_then_push
 )]
 
+/// Defines a module with an experimental public API
+///
+/// The module will not be documented, and will only be public if the
+/// experimental feature flag is enabled
+///
+/// Experimental modules have no stability guarantees
+macro_rules! experimental_mod {
+    ($module:ident) => {
+        #[cfg(feature = "experimental")]
+        #[doc(hidden)]
+        pub mod $module;
+        #[cfg(not(feature = "experimental"))]
+        mod $module;
+    };
+}
+
 #[macro_use]
 pub mod errors;
 pub mod basic;

Reply via email to