From 6f8a79e4b97d92497d198ce3f6e4d5b108f2b04d Mon Sep 17 00:00:00 2001 From: Xavier L'Heureux <xavier.lheureux@icloud.com> Date: Tue, 12 Feb 2019 17:07:46 -0500 Subject: [PATCH] WIP clippy --- src/lib/builtins/source.rs | 1 - src/lib/parser/pipelines/collector.rs | 9 +++++---- src/lib/parser/shell_expand/mod.rs | 2 +- .../parser/shell_expand/words/methods/arrays.rs | 4 ++-- src/lib/parser/shell_expand/words/mod.rs | 15 +++++++-------- 5 files changed, 15 insertions(+), 16 deletions(-) diff --git a/src/lib/builtins/source.rs b/src/lib/builtins/source.rs index f9371066..650e8c18 100644 --- a/src/lib/builtins/source.rs +++ b/src/lib/builtins/source.rs @@ -15,7 +15,6 @@ pub(crate) fn source(shell: &mut Shell, arguments: &[small::String]) -> Result<( for command in command_list.lines() { shell.on_command(command); } - () }) } else { Err(format!("ion: failed to open {}\n", argument)) diff --git a/src/lib/parser/pipelines/collector.rs b/src/lib/parser/pipelines/collector.rs index 835d6bc2..fe40dee5 100644 --- a/src/lib/parser/pipelines/collector.rs +++ b/src/lib/parser/pipelines/collector.rs @@ -82,13 +82,14 @@ impl<'a> Collector<'a> { let arg = self.arg(bytes)?; match arg { Some(file) => { - outputs.as_mut().map(|o| { + if let Some(o) = outputs.as_mut() { o.push(Redirection { from, file: file.into(), append, - }) - }); + }); + } + Ok(()) } None => Err("expected file argument after redirection for output"), @@ -411,7 +412,7 @@ impl<'a> Collector<'a> { // We return an inclusive range to keep the quote type intact b'"' => { bytes.next(); - return Ok(&self.data[start..i + 1]); + return Ok(&self.data[start..=i]); } _ => (), } diff --git a/src/lib/parser/shell_expand/mod.rs b/src/lib/parser/shell_expand/mod.rs index 05b2b7b5..a130a0f1 100644 --- a/src/lib/parser/shell_expand/mod.rs +++ b/src/lib/parser/shell_expand/mod.rs @@ -722,7 +722,7 @@ pub(crate) fn expand_tokens<E: Expander>( } expanded_words } else { - array![] + Array::new() } } diff --git a/src/lib/parser/shell_expand/words/methods/arrays.rs b/src/lib/parser/shell_expand/words/methods/arrays.rs index f590fde6..ecd1e097 100644 --- a/src/lib/parser/shell_expand/words/methods/arrays.rs +++ b/src/lib/parser/shell_expand/words/methods/arrays.rs @@ -172,7 +172,7 @@ impl<'a> ArrayMethod<'a> { } else if is_expression(self.variable) { expand_string(self.variable, expand_func, false) } else { - array![] + Array::new() } } @@ -203,7 +203,7 @@ impl<'a> ArrayMethod<'a> { res.unwrap_or_else(|m| { eprintln!("ion: {}: {}", self.method, m); - array![] + Array::new() }) } diff --git a/src/lib/parser/shell_expand/words/mod.rs b/src/lib/parser/shell_expand/words/mod.rs index e0f2b2bb..c60650ab 100644 --- a/src/lib/parser/shell_expand/words/mod.rs +++ b/src/lib/parser/shell_expand/words/mod.rs @@ -169,7 +169,7 @@ impl<'a, E: Expander + 'a> WordIterator<'a, E> { let mut start = self.read; let mut level = 0; let mut elements = Vec::new(); - while let Some(character) = iterator.next() { + for character in iterator { match character { _ if self.flags.contains(Flags::BACKSL) => self.flags ^= Flags::BACKSL, b'\\' => self.flags ^= Flags::BACKSL, @@ -480,7 +480,7 @@ impl<'a, E: Expander + 'a> WordIterator<'a, E> { { self.read += 1; let start = self.read; - while let Some(character) = iterator.next() { + for character in iterator { if let b']' = character { let value = expand_string(&self.data[start..self.read], self.expanders, false).join(" "); @@ -630,7 +630,7 @@ impl<'a, E: Expander + 'a> WordIterator<'a, E> { I: Iterator<Item = u8>, { let start = self.read; - while let Some(character) = iterator.next() { + for character in iterator { if character == b'}' { let output = &self.data[start..self.read]; self.read += 1; @@ -650,12 +650,11 @@ impl<'a, E: Expander + 'a> WordIterator<'a, E> { { let start = self.read; self.read += 1; - while let Some(character) = iterator.next() { - if character == b' ' { - self.read += 1; - } else { - return WordToken::Whitespace(&self.data[start..self.read]); + for character in iterator { + if character != b' ' { + break; } + self.read += 1; } WordToken::Whitespace(&self.data[start..self.read]) -- GitLab