You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by vi...@apache.org on 2022/05/08 23:04:29 UTC

[arrow-rs] branch master updated: replace by (#1664)

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

viirya 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 aaa10231b replace  by (#1664)
aaa10231b is described below

commit aaa10231ba0c670afbedfced41232061f0d23d4e
Author: Remzi Yang <59...@users.noreply.github.com>
AuthorDate: Mon May 9 07:04:24 2022 +0800

    replace  by (#1664)
    
    Signed-off-by: remzi <13...@gmail.com>
---
 arrow/src/array/array_binary.rs                        |  7 +++++--
 arrow/src/array/array_list.rs                          | 18 ++++++------------
 arrow/src/array/array_string.rs                        |  7 +++++--
 arrow/src/array/builder.rs                             |  2 +-
 arrow/src/array/transform/mod.rs                       |  2 +-
 .../src/arrow/array_reader/byte_array_dictionary.rs    |  2 +-
 6 files changed, 19 insertions(+), 19 deletions(-)

diff --git a/arrow/src/array/array_binary.rs b/arrow/src/array/array_binary.rs
index b66224ae1..b8bf76dc7 100644
--- a/arrow/src/array/array_binary.rs
+++ b/arrow/src/array/array_binary.rs
@@ -44,8 +44,11 @@ pub struct GenericBinaryArray<OffsetSize: OffsetSizeTrait> {
 }
 
 impl<OffsetSize: OffsetSizeTrait> GenericBinaryArray<OffsetSize> {
+    /// Get the data type of the array.
+    // Declare this function as `pub const fn` after
+    // https://github.com/rust-lang/rust/issues/93706 is merged.
     pub fn get_data_type() -> DataType {
-        if OffsetSize::is_large() {
+        if OffsetSize::IS_LARGE {
             DataType::LargeBinary
         } else {
             DataType::Binary
@@ -226,7 +229,7 @@ impl<'a, T: OffsetSizeTrait> GenericBinaryArray<T> {
 
 impl<OffsetSize: OffsetSizeTrait> fmt::Debug for GenericBinaryArray<OffsetSize> {
     fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
-        let prefix = if OffsetSize::is_large() { "Large" } else { "" };
+        let prefix = if OffsetSize::IS_LARGE { "Large" } else { "" };
 
         write!(f, "{}BinaryArray\n[\n", prefix)?;
         print_long_array(self, f, |array, index, f| {
diff --git a/arrow/src/array/array_list.rs b/arrow/src/array/array_list.rs
index e86227ac8..c3422245b 100644
--- a/arrow/src/array/array_list.rs
+++ b/arrow/src/array/array_list.rs
@@ -32,21 +32,15 @@ use crate::{
 
 /// trait declaring an offset size, relevant for i32 vs i64 array types.
 pub trait OffsetSizeTrait: ArrowNativeType + Num + Ord + std::ops::AddAssign {
-    fn is_large() -> bool;
+    const IS_LARGE: bool;
 }
 
 impl OffsetSizeTrait for i32 {
-    #[inline]
-    fn is_large() -> bool {
-        false
-    }
+    const IS_LARGE: bool = false;
 }
 
 impl OffsetSizeTrait for i64 {
-    #[inline]
-    fn is_large() -> bool {
-        true
-    }
+    const IS_LARGE: bool = true;
 }
 
 /// Generic struct for a variable-size list array.
@@ -118,7 +112,7 @@ impl<OffsetSize: OffsetSizeTrait> GenericListArray<OffsetSize> {
 
     #[inline]
     fn get_type(data_type: &DataType) -> Option<&DataType> {
-        match (OffsetSize::is_large(), data_type) {
+        match (OffsetSize::IS_LARGE, data_type) {
             (true, DataType::LargeList(child)) | (false, DataType::List(child)) => {
                 Some(child.data_type())
             }
@@ -175,7 +169,7 @@ impl<OffsetSize: OffsetSizeTrait> GenericListArray<OffsetSize> {
             .collect();
 
         let field = Box::new(Field::new("item", T::DATA_TYPE, true));
-        let data_type = if OffsetSize::is_large() {
+        let data_type = if OffsetSize::IS_LARGE {
             DataType::LargeList(field)
         } else {
             DataType::List(field)
@@ -255,7 +249,7 @@ impl<OffsetSize: 'static + OffsetSizeTrait> Array for GenericListArray<OffsetSiz
 
 impl<OffsetSize: OffsetSizeTrait> fmt::Debug for GenericListArray<OffsetSize> {
     fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
-        let prefix = if OffsetSize::is_large() { "Large" } else { "" };
+        let prefix = if OffsetSize::IS_LARGE { "Large" } else { "" };
 
         write!(f, "{}ListArray\n[\n", prefix)?;
         print_long_array(self, f, |array, index, f| {
diff --git a/arrow/src/array/array_string.rs b/arrow/src/array/array_string.rs
index 2d26a22dd..e2fed3f20 100644
--- a/arrow/src/array/array_string.rs
+++ b/arrow/src/array/array_string.rs
@@ -38,8 +38,11 @@ pub struct GenericStringArray<OffsetSize: OffsetSizeTrait> {
 }
 
 impl<OffsetSize: OffsetSizeTrait> GenericStringArray<OffsetSize> {
+    /// Get the data type of the array.
+    // Declare this function as `pub const fn` after
+    // https://github.com/rust-lang/rust/issues/93706 is merged.
     pub fn get_data_type() -> DataType {
-        if OffsetSize::is_large() {
+        if OffsetSize::IS_LARGE {
             DataType::LargeUtf8
         } else {
             DataType::Utf8
@@ -273,7 +276,7 @@ impl<'a, T: OffsetSizeTrait> GenericStringArray<T> {
 
 impl<OffsetSize: OffsetSizeTrait> fmt::Debug for GenericStringArray<OffsetSize> {
     fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
-        let prefix = if OffsetSize::is_large() { "Large" } else { "" };
+        let prefix = if OffsetSize::IS_LARGE { "Large" } else { "" };
 
         write!(f, "{}StringArray\n[\n", prefix)?;
         print_long_array(self, f, |array, index, f| {
diff --git a/arrow/src/array/builder.rs b/arrow/src/array/builder.rs
index 369285df1..da6d2f1c3 100644
--- a/arrow/src/array/builder.rs
+++ b/arrow/src/array/builder.rs
@@ -983,7 +983,7 @@ where
             values_data.data_type().clone(),
             true, // TODO: find a consistent way of getting this
         ));
-        let data_type = if OffsetSize::is_large() {
+        let data_type = if OffsetSize::IS_LARGE {
             DataType::LargeList(field)
         } else {
             DataType::List(field)
diff --git a/arrow/src/array/transform/mod.rs b/arrow/src/array/transform/mod.rs
index 3eb5a86d3..aa7d417a1 100644
--- a/arrow/src/array/transform/mod.rs
+++ b/arrow/src/array/transform/mod.rs
@@ -339,7 +339,7 @@ fn preallocate_offset_and_binary_buffer<Offset: OffsetSizeTrait>(
     // offsets
     let mut buffer = MutableBuffer::new((1 + capacity) * mem::size_of::<Offset>());
     // safety: `unsafe` code assumes that this buffer is initialized with one element
-    if Offset::is_large() {
+    if Offset::IS_LARGE {
         buffer.push(0i64);
     } else {
         buffer.push(0i32)
diff --git a/parquet/src/arrow/array_reader/byte_array_dictionary.rs b/parquet/src/arrow/array_reader/byte_array_dictionary.rs
index eddb3a6c1..fe8448ffb 100644
--- a/parquet/src/arrow/array_reader/byte_array_dictionary.rs
+++ b/parquet/src/arrow/array_reader/byte_array_dictionary.rs
@@ -237,7 +237,7 @@ where
         let validate_utf8 = col.converted_type() == ConvertedType::UTF8;
 
         let value_type =
-            match (V::is_large(), col.converted_type() == ConvertedType::UTF8) {
+            match (V::IS_LARGE, col.converted_type() == ConvertedType::UTF8) {
                 (true, true) => ArrowType::LargeUtf8,
                 (true, false) => ArrowType::LargeBinary,
                 (false, true) => ArrowType::Utf8,