[
https://issues.apache.org/jira/browse/ARROW-7692?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Krisztian Szucs resolved ARROW-7692.
------------------------------------
Fix Version/s: 0.16.0
Resolution: Fixed
Issue resolved by pull request 6292
[https://github.com/apache/arrow/pull/6292]
> [Rust] Several pattern matches are hard to read
> -----------------------------------------------
>
> Key: ARROW-7692
> URL: https://issues.apache.org/jira/browse/ARROW-7692
> Project: Apache Arrow
> Issue Type: Improvement
> Components: Rust
> Reporter: François Garillot
> Assignee: François Garillot
> Priority: Minor
> Labels: pull-request-available
> Fix For: 0.16.0
>
> Original Estimate: 0.5h
> Time Spent: 40m
> Remaining Estimate: 0h
>
> Several pattern matches can be rewritten directly using a combinator, e.g.
> array's `{{value_as_date}}`, more succintly expressed as a `map`:
> {{match self.value_as_datetime(i) {}}
> {{ Some(datetime) => Some(datetime.date()),}}
> {{ None => None,}}
> {{ }}}
> More importantly some of these matches obscure what the code is doing, e.g.
> parquet column writer `{{read_fully}}`'s extraction of a mutable slice:
> {{let actual_def_levels = match &mut def_levels {}}
> {{ Some(ref mut vec) => Some(&mut vec[..]),}}
> {{ None => None,}}
> {{ };}}
> which can be written, using `as_mut` and `map`, as:
> {{let actual_def_levels = def_levels.as_mut().map(|vec| &mut vec[..]);}}
> A large # of these are meant to be addressed in
> [https://github.com/apache/arrow/pull/6292/files]
--
This message was sent by Atlassian Jira
(v8.3.4#803005)