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/11/03 22:37:41 UTC
[arrow-rs] branch master updated: Fix some clippy errors after updating rust toolchain (#3010)
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 01ea8c70c Fix some clippy errors after updating rust toolchain (#3010)
01ea8c70c is described below
commit 01ea8c70c6dd57670e0533edd784ce903b594316
Author: Liang-Chi Hsieh <vi...@gmail.com>
AuthorDate: Thu Nov 3 15:37:36 2022 -0700
Fix some clippy errors after updating rust toolchain (#3010)
* Fix clippy
* More
* More
---
arrow-array/src/array/binary_array.rs | 2 +-
arrow-schema/src/field.rs | 6 ++--
arrow/benches/lexsort.rs | 4 +--
arrow/src/compute/kernels/partition.rs | 28 +++++------------
arrow/src/csv/reader.rs | 2 +-
arrow/src/ffi.rs | 6 +---
arrow/src/ipc/convert.rs | 5 ++-
arrow/src/json/reader.rs | 6 ++--
arrow/src/tensor.rs | 4 +--
arrow/src/util/pretty.rs | 6 ++--
arrow/tests/array_equal.rs | 56 +++++++++++++++++-----------------
parquet/src/bin/parquet-read.rs | 2 +-
parquet/src/bin/parquet-schema.rs | 2 +-
parquet/src/record/api.rs | 2 +-
parquet/src/schema/types.rs | 2 +-
parquet/tests/boolean_writer.rs | 6 ++--
parquet_derive/src/parquet_field.rs | 7 ++---
17 files changed, 64 insertions(+), 82 deletions(-)
diff --git a/arrow-array/src/array/binary_array.rs b/arrow-array/src/array/binary_array.rs
index 259d949d4..2ca8a061a 100644
--- a/arrow-array/src/array/binary_array.rs
+++ b/arrow-array/src/array/binary_array.rs
@@ -655,7 +655,7 @@ mod tests {
#[test]
#[should_panic(expected = "LargeBinaryArray expects DataType::LargeBinary")]
fn test_binary_array_validation() {
- let array = BinaryArray::from_iter_values(&[&[1, 2]]);
+ let array = BinaryArray::from_iter_values([&[1, 2]]);
let _ = LargeBinaryArray::from(array.into_data());
}
diff --git a/arrow-schema/src/field.rs b/arrow-schema/src/field.rs
index adafbfa9b..e414d2834 100644
--- a/arrow-schema/src/field.rs
+++ b/arrow-schema/src/field.rs
@@ -200,12 +200,12 @@ impl Field {
/// within `self` contained within this field (including `self`)
pub(crate) fn fields(&self) -> Vec<&Field> {
let mut collected_fields = vec![self];
- collected_fields.append(&mut self._fields(&self.data_type));
+ collected_fields.append(&mut Field::_fields(&self.data_type));
collected_fields
}
- fn _fields<'a>(&'a self, dt: &'a DataType) -> Vec<&Field> {
+ fn _fields(dt: &DataType) -> Vec<&Field> {
match dt {
DataType::Struct(fields) | DataType::Union(fields, _, _) => {
fields.iter().flat_map(|f| f.fields()).collect()
@@ -214,7 +214,7 @@ impl Field {
| DataType::LargeList(field)
| DataType::FixedSizeList(field, _)
| DataType::Map(field, _) => field.fields(),
- DataType::Dictionary(_, value_field) => self._fields(value_field.as_ref()),
+ DataType::Dictionary(_, value_field) => Field::_fields(value_field.as_ref()),
_ => vec![],
}
}
diff --git a/arrow/benches/lexsort.rs b/arrow/benches/lexsort.rs
index 382000723..aebb588cf 100644
--- a/arrow/benches/lexsort.rs
+++ b/arrow/benches/lexsort.rs
@@ -162,8 +162,8 @@ fn add_benchmark(c: &mut Criterion) {
];
for case in cases {
- do_bench(c, *case, 4096);
- do_bench(c, *case, 4096 * 8);
+ do_bench(c, case, 4096);
+ do_bench(c, case, 4096 * 8);
}
}
diff --git a/arrow/src/compute/kernels/partition.rs b/arrow/src/compute/kernels/partition.rs
index e3a1497b8..0e48e627e 100644
--- a/arrow/src/compute/kernels/partition.rs
+++ b/arrow/src/compute/kernels/partition.rs
@@ -174,33 +174,24 @@ mod tests {
let median = input[input.len() / 2];
assert_eq!(
9,
- partition_point(
- 0,
- input.len(),
- &(|i: usize| input[i].cmp(&median) != Ordering::Greater)
- )
+ partition_point(0, input.len(), |i: usize| input[i].cmp(&median)
+ != Ordering::Greater)
);
}
{
let search = input[9];
assert_eq!(
12,
- partition_point(
- 9,
- input.len(),
- &(|i: usize| input[i].cmp(&search) != Ordering::Greater)
- )
+ partition_point(9, input.len(), |i: usize| input[i].cmp(&search)
+ != Ordering::Greater)
);
}
{
let search = input[0];
assert_eq!(
3,
- partition_point(
- 0,
- 9,
- &(|i: usize| input[i].cmp(&search) != Ordering::Greater)
- )
+ partition_point(0, 9, |i: usize| input[i].cmp(&search)
+ != Ordering::Greater)
);
}
let input = &[1, 2, 2, 2, 2, 2, 2, 2, 9];
@@ -208,11 +199,8 @@ mod tests {
let search = input[5];
assert_eq!(
8,
- partition_point(
- 5,
- 9,
- &(|i: usize| input[i].cmp(&search) != Ordering::Greater)
- )
+ partition_point(5, 9, |i: usize| input[i].cmp(&search)
+ != Ordering::Greater)
);
}
}
diff --git a/arrow/src/csv/reader.rs b/arrow/src/csv/reader.rs
index 123c5e1c6..ff6df5514 100644
--- a/arrow/src/csv/reader.rs
+++ b/arrow/src/csv/reader.rs
@@ -1690,7 +1690,7 @@ mod tests {
let actual = result.unwrap_err().to_string();
assert!(
- actual.contains(&expected),
+ actual.contains(expected),
"actual: '{}', expected: '{}'",
actual,
expected
diff --git a/arrow/src/ffi.rs b/arrow/src/ffi.rs
index 77d277afa..95e6dce3c 100644
--- a/arrow/src/ffi.rs
+++ b/arrow/src/ffi.rs
@@ -474,11 +474,7 @@ impl FFI_ArrowArray {
// If the layout has a null buffer by Arrow spec.
// Note that even the array doesn't have a null buffer because it has
// no null value, we still need to count 1 here to follow the spec.
- if data_layout.can_contain_null_mask {
- 1
- } else {
- 0
- }
+ usize::from(data_layout.can_contain_null_mask)
}
} as i64;
diff --git a/arrow/src/ipc/convert.rs b/arrow/src/ipc/convert.rs
index 9f6cda37c..0f5d246bc 100644
--- a/arrow/src/ipc/convert.rs
+++ b/arrow/src/ipc/convert.rs
@@ -437,7 +437,7 @@ pub(crate) fn build_field<'a>(
};
let fb_field_name = fbb.create_string(field.name().as_str());
- let field_type = get_fb_field_type(field.data_type(), field.is_nullable(), fbb);
+ let field_type = get_fb_field_type(field.data_type(), fbb);
let fb_dictionary = if let Dictionary(index_type, _) = field.data_type() {
Some(get_fb_dictionary(
@@ -477,7 +477,6 @@ pub(crate) fn build_field<'a>(
/// Get the IPC type of a data type
pub(crate) fn get_fb_field_type<'a>(
data_type: &DataType,
- is_nullable: bool,
fbb: &mut FlatBufferBuilder<'a>,
) -> FBFieldType<'a> {
// some IPC implementations expect an empty list for child data, instead of a null value.
@@ -717,7 +716,7 @@ pub(crate) fn get_fb_field_type<'a>(
// In this library, the dictionary "type" is a logical construct. Here we
// pass through to the value type, as we've already captured the index
// type in the DictionaryEncoding metadata in the parent field
- get_fb_field_type(value_type, is_nullable, fbb)
+ get_fb_field_type(value_type, fbb)
}
Decimal128(precision, scale) => {
let mut builder = ipc::DecimalBuilder::new(fbb);
diff --git a/arrow/src/json/reader.rs b/arrow/src/json/reader.rs
index d15894024..a7382128e 100644
--- a/arrow/src/json/reader.rs
+++ b/arrow/src/json/reader.rs
@@ -962,7 +962,7 @@ impl Decoder {
fn build_boolean_array(&self, rows: &[Value], col_name: &str) -> Result<ArrayRef> {
let mut builder = BooleanBuilder::with_capacity(rows.len());
for row in rows {
- if let Some(value) = row.get(&col_name) {
+ if let Some(value) = row.get(col_name) {
if let Some(boolean) = value.as_bool() {
builder.append_value(boolean);
} else {
@@ -993,7 +993,7 @@ impl Decoder {
Ok(Arc::new(
rows.iter()
.map(|row| {
- row.get(&col_name).and_then(|value| {
+ row.get(col_name).and_then(|value| {
if value.is_i64() {
value.as_i64().and_then(num::cast::cast)
} else if value.is_u64() {
@@ -1496,7 +1496,7 @@ impl Decoder {
let mut builder: StringDictionaryBuilder<T> =
self.build_string_dictionary_builder(rows.len());
for row in rows {
- if let Some(value) = row.get(&col_name) {
+ if let Some(value) = row.get(col_name) {
if let Some(str_v) = value.as_str() {
builder.append(str_v).map(drop)?
} else {
diff --git a/arrow/src/tensor.rs b/arrow/src/tensor.rs
index b8d07f83f..a46a1d08d 100644
--- a/arrow/src/tensor.rs
+++ b/arrow/src/tensor.rs
@@ -113,13 +113,13 @@ impl<'a, T: ArrowPrimitiveType> Tensor<'a, T> {
));
}
- if strides != None {
+ if strides.is_some() {
return Err(ArrowError::InvalidArgumentError(
"expected None strides for tensor with no shape".to_string(),
));
}
- if names != None {
+ if names.is_some() {
return Err(ArrowError::InvalidArgumentError(
"expected None names for tensor with no shape".to_string(),
));
diff --git a/arrow/src/util/pretty.rs b/arrow/src/util/pretty.rs
index 8d811223c..63d5977e2 100644
--- a/arrow/src/util/pretty.rs
+++ b/arrow/src/util/pretty.rs
@@ -64,7 +64,7 @@ fn create_table(results: &[RecordBatch]) -> Result<Table> {
let mut header = Vec::new();
for field in schema.fields() {
- header.push(Cell::new(&field.name()));
+ header.push(Cell::new(field.name()));
}
table.set_header(header);
@@ -317,9 +317,9 @@ mod tests {
let mut builder = FixedSizeBinaryBuilder::with_capacity(3, 3);
- builder.append_value(&[1, 2, 3]).unwrap();
+ builder.append_value([1, 2, 3]).unwrap();
builder.append_null();
- builder.append_value(&[7, 8, 9]).unwrap();
+ builder.append_value([7, 8, 9]).unwrap();
let array = Arc::new(builder.finish());
diff --git a/arrow/tests/array_equal.rs b/arrow/tests/array_equal.rs
index a5f3f42a1..d24a24e2e 100644
--- a/arrow/tests/array_equal.rs
+++ b/arrow/tests/array_equal.rs
@@ -386,11 +386,11 @@ fn create_list_array<U: AsRef<[i32]>, T: AsRef<[Option<U>]>>(data: T) -> ArrayDa
#[test]
fn test_list_equal() {
- let a = create_list_array(&[Some(&[1, 2, 3]), Some(&[4, 5, 6])]);
- let b = create_list_array(&[Some(&[1, 2, 3]), Some(&[4, 5, 6])]);
+ let a = create_list_array([Some(&[1, 2, 3]), Some(&[4, 5, 6])]);
+ let b = create_list_array([Some(&[1, 2, 3]), Some(&[4, 5, 6])]);
test_equal(&a, &b, true);
- let b = create_list_array(&[Some(&[1, 2, 3]), Some(&[4, 5, 7])]);
+ let b = create_list_array([Some(&[1, 2, 3]), Some(&[4, 5, 7])]);
test_equal(&a, &b, false);
}
@@ -448,11 +448,11 @@ fn test_empty_offsets_list_equal() {
// Test the case where null_count > 0
#[test]
fn test_list_null() {
- let a = create_list_array(&[Some(&[1, 2]), None, None, Some(&[3, 4]), None, None]);
- let b = create_list_array(&[Some(&[1, 2]), None, None, Some(&[3, 4]), None, None]);
+ let a = create_list_array([Some(&[1, 2]), None, None, Some(&[3, 4]), None, None]);
+ let b = create_list_array([Some(&[1, 2]), None, None, Some(&[3, 4]), None, None]);
test_equal(&a, &b, true);
- let b = create_list_array(&[
+ let b = create_list_array([
Some(&[1, 2]),
None,
Some(&[5, 6]),
@@ -462,7 +462,7 @@ fn test_list_null() {
]);
test_equal(&a, &b, false);
- let b = create_list_array(&[Some(&[1, 2]), None, None, Some(&[3, 5]), None, None]);
+ let b = create_list_array([Some(&[1, 2]), None, None, Some(&[3, 5]), None, None]);
test_equal(&a, &b, false);
// a list where the nullness of values is determined by the list's bitmap
@@ -506,8 +506,8 @@ fn test_list_null() {
// Test the case where offset != 0
#[test]
fn test_list_offsets() {
- let a = create_list_array(&[Some(&[1, 2]), None, None, Some(&[3, 4]), None, None]);
- let b = create_list_array(&[Some(&[1, 2]), None, None, Some(&[3, 5]), None, None]);
+ let a = create_list_array([Some(&[1, 2]), None, None, Some(&[3, 4]), None, None]);
+ let b = create_list_array([Some(&[1, 2]), None, None, Some(&[3, 5]), None, None]);
let a_slice = a.slice(0, 3);
let b_slice = b.slice(0, 3);
@@ -539,32 +539,32 @@ fn create_fixed_size_binary_array<U: AsRef<[u8]>, T: AsRef<[Option<U>]>>(
#[test]
fn test_fixed_size_binary_equal() {
- let a = create_fixed_size_binary_array(&[Some(b"hello"), Some(b"world")]);
- let b = create_fixed_size_binary_array(&[Some(b"hello"), Some(b"world")]);
+ let a = create_fixed_size_binary_array([Some(b"hello"), Some(b"world")]);
+ let b = create_fixed_size_binary_array([Some(b"hello"), Some(b"world")]);
test_equal(&a, &b, true);
- let b = create_fixed_size_binary_array(&[Some(b"hello"), Some(b"arrow")]);
+ let b = create_fixed_size_binary_array([Some(b"hello"), Some(b"arrow")]);
test_equal(&a, &b, false);
}
// Test the case where null_count > 0
#[test]
fn test_fixed_size_binary_null() {
- let a = create_fixed_size_binary_array(&[Some(b"hello"), None, Some(b"world")]);
- let b = create_fixed_size_binary_array(&[Some(b"hello"), None, Some(b"world")]);
+ let a = create_fixed_size_binary_array([Some(b"hello"), None, Some(b"world")]);
+ let b = create_fixed_size_binary_array([Some(b"hello"), None, Some(b"world")]);
test_equal(&a, &b, true);
- let b = create_fixed_size_binary_array(&[Some(b"hello"), Some(b"world"), None]);
+ let b = create_fixed_size_binary_array([Some(b"hello"), Some(b"world"), None]);
test_equal(&a, &b, false);
- let b = create_fixed_size_binary_array(&[Some(b"hello"), None, Some(b"arrow")]);
+ let b = create_fixed_size_binary_array([Some(b"hello"), None, Some(b"arrow")]);
test_equal(&a, &b, false);
}
#[test]
fn test_fixed_size_binary_offsets() {
// Test the case where offset != 0
- let a = create_fixed_size_binary_array(&[
+ let a = create_fixed_size_binary_array([
Some(b"hello"),
None,
None,
@@ -572,7 +572,7 @@ fn test_fixed_size_binary_offsets() {
None,
None,
]);
- let b = create_fixed_size_binary_array(&[
+ let b = create_fixed_size_binary_array([
Some(b"hello"),
None,
None,
@@ -706,18 +706,18 @@ fn create_fixed_size_list_array<U: AsRef<[i32]>, T: AsRef<[Option<U>]>>(
#[test]
fn test_fixed_size_list_equal() {
- let a = create_fixed_size_list_array(&[Some(&[1, 2, 3]), Some(&[4, 5, 6])]);
- let b = create_fixed_size_list_array(&[Some(&[1, 2, 3]), Some(&[4, 5, 6])]);
+ let a = create_fixed_size_list_array([Some(&[1, 2, 3]), Some(&[4, 5, 6])]);
+ let b = create_fixed_size_list_array([Some(&[1, 2, 3]), Some(&[4, 5, 6])]);
test_equal(&a, &b, true);
- let b = create_fixed_size_list_array(&[Some(&[1, 2, 3]), Some(&[4, 5, 7])]);
+ let b = create_fixed_size_list_array([Some(&[1, 2, 3]), Some(&[4, 5, 7])]);
test_equal(&a, &b, false);
}
// Test the case where null_count > 0
#[test]
fn test_fixed_list_null() {
- let a = create_fixed_size_list_array(&[
+ let a = create_fixed_size_list_array([
Some(&[1, 2, 3]),
None,
None,
@@ -725,7 +725,7 @@ fn test_fixed_list_null() {
None,
None,
]);
- let b = create_fixed_size_list_array(&[
+ let b = create_fixed_size_list_array([
Some(&[1, 2, 3]),
None,
None,
@@ -735,7 +735,7 @@ fn test_fixed_list_null() {
]);
test_equal(&a, &b, true);
- let b = create_fixed_size_list_array(&[
+ let b = create_fixed_size_list_array([
Some(&[1, 2, 3]),
None,
Some(&[7, 8, 9]),
@@ -745,7 +745,7 @@ fn test_fixed_list_null() {
]);
test_equal(&a, &b, false);
- let b = create_fixed_size_list_array(&[
+ let b = create_fixed_size_list_array([
Some(&[1, 2, 3]),
None,
None,
@@ -755,7 +755,7 @@ fn test_fixed_list_null() {
]);
test_equal(&a, &b, false);
- let b = create_fixed_size_list_array(&[None, Some(&[4, 5, 6]), None, None]);
+ let b = create_fixed_size_list_array([None, Some(&[4, 5, 6]), None, None]);
test_equal(&a.slice(2, 4), &b, true);
test_equal(&a.slice(3, 3), &b.slice(1, 3), true);
@@ -764,7 +764,7 @@ fn test_fixed_list_null() {
#[test]
fn test_fixed_list_offsets() {
// Test the case where offset != 0
- let a = create_fixed_size_list_array(&[
+ let a = create_fixed_size_list_array([
Some(&[1, 2, 3]),
None,
None,
@@ -772,7 +772,7 @@ fn test_fixed_list_offsets() {
None,
None,
]);
- let b = create_fixed_size_list_array(&[
+ let b = create_fixed_size_list_array([
Some(&[1, 2, 3]),
None,
None,
diff --git a/parquet/src/bin/parquet-read.rs b/parquet/src/bin/parquet-read.rs
index 733e56173..cf8009956 100644
--- a/parquet/src/bin/parquet-read.rs
+++ b/parquet/src/bin/parquet-read.rs
@@ -78,7 +78,7 @@ fn main() {
)
} else {
let path = Path::new(&filename);
- let file = File::open(&path).expect("Unable to open file");
+ let file = File::open(path).expect("Unable to open file");
Box::new(SerializedFileReader::new(file).expect("Failed to create reader"))
};
diff --git a/parquet/src/bin/parquet-schema.rs b/parquet/src/bin/parquet-schema.rs
index 68c52def7..cd8e76922 100644
--- a/parquet/src/bin/parquet-schema.rs
+++ b/parquet/src/bin/parquet-schema.rs
@@ -57,7 +57,7 @@ fn main() {
let args = Args::parse();
let filename = args.file_path;
let path = Path::new(&filename);
- let file = File::open(&path).expect("Unable to open file");
+ let file = File::open(path).expect("Unable to open file");
let verbose = args.verbose;
match SerializedFileReader::new(file) {
diff --git a/parquet/src/record/api.rs b/parquet/src/record/api.rs
index 22b8a7978..d7e1e7550 100644
--- a/parquet/src/record/api.rs
+++ b/parquet/src/record/api.rs
@@ -835,7 +835,7 @@ fn convert_decimal_to_string(decimal: &Decimal) -> String {
let num = BigInt::from_signed_bytes_be(decimal.data());
// Offset of the first digit in a string.
- let negative = if num.sign() == Sign::Minus { 1 } else { 0 };
+ let negative = i32::from(num.sign() == Sign::Minus);
let mut num_str = num.to_string();
let mut point = num_str.len() as i32 - decimal.scale() - negative;
diff --git a/parquet/src/schema/types.rs b/parquet/src/schema/types.rs
index da6419424..9f8023c91 100644
--- a/parquet/src/schema/types.rs
+++ b/parquet/src/schema/types.rs
@@ -2075,7 +2075,7 @@ mod tests {
let mut thrift_schema = to_thrift(&expected_schema).unwrap();
// Change all of None to Some(0)
for mut elem in &mut thrift_schema[..] {
- if elem.num_children == None {
+ if elem.num_children.is_none() {
elem.num_children = Some(0);
}
}
diff --git a/parquet/tests/boolean_writer.rs b/parquet/tests/boolean_writer.rs
index dc2eccfbf..8c3d50d8f 100644
--- a/parquet/tests/boolean_writer.rs
+++ b/parquet/tests/boolean_writer.rs
@@ -38,7 +38,7 @@ fn it_writes_data_without_hanging() {
";
let schema = Arc::new(parse_message_type(message_type).expect("parse schema"));
let props = Arc::new(WriterProperties::builder().build());
- let file = fs::File::create(&path).expect("create file");
+ let file = fs::File::create(path).expect("create file");
let mut writer =
SerializedFileWriter::new(file, schema, props).expect("create parquet writer");
for _group in 0..1 {
@@ -64,14 +64,14 @@ fn it_writes_data_without_hanging() {
}
writer.close().expect("close writer");
- let bytes = fs::read(&path).expect("read file");
+ let bytes = fs::read(path).expect("read file");
assert_eq!(&bytes[0..4], &[b'P', b'A', b'R', b'1']);
// Now that we have written our data and are happy with it, make
// sure we can read it back in < 5 seconds...
let (sender, receiver) = mpsc::channel();
let _t = thread::spawn(move || {
- let file = fs::File::open(&Path::new("it_writes_data_without_hanging.parquet"))
+ let file = fs::File::open(Path::new("it_writes_data_without_hanging.parquet"))
.expect("open file");
let reader = SerializedFileReader::new(file).expect("get serialized reader");
let iter = reader.get_row_iter(None).expect("get iterator");
diff --git a/parquet_derive/src/parquet_field.rs b/parquet_derive/src/parquet_field.rs
index 82e3b5112..06bcc0aca 100644
--- a/parquet_derive/src/parquet_field.rs
+++ b/parquet_derive/src/parquet_field.rs
@@ -362,21 +362,20 @@ impl Type {
/// Useful in determining the physical type of a field and the
/// definition levels.
fn leaf_type_recursive(&self) -> &Type {
- self.leaf_type_recursive_helper(self, None)
+ Type::leaf_type_recursive_helper(self, None)
}
fn leaf_type_recursive_helper<'a>(
- &'a self,
ty: &'a Type,
parent_ty: Option<&'a Type>,
- ) -> &Type {
+ ) -> &'a Type {
match ty {
Type::TypePath(_) => parent_ty.unwrap_or(ty),
Type::Option(ref first_type)
| Type::Vec(ref first_type)
| Type::Array(ref first_type)
| Type::Reference(_, ref first_type) => {
- self.leaf_type_recursive_helper(first_type, Some(ty))
+ Type::leaf_type_recursive_helper(first_type, Some(ty))
}
}
}