1
Fork 0
mirror of https://github.com/RGBCube/uutils-coreutils synced 2025-08-04 15:07:47 +00:00

refactor/polish ~ fix cargo clippy complaints (new_ret_no_self)

This commit is contained in:
Roy Ivy III 2019-12-29 12:30:51 -06:00
parent 6131f6f0e1
commit 1deac8df87

View file

@ -156,15 +156,15 @@ struct LineSplitter {
} }
impl LineSplitter { impl LineSplitter {
fn new(settings: &Settings) -> Box<dyn Splitter> { fn new(settings: &Settings) -> LineSplitter {
let n = match settings.strategy_param.parse() { let n = match settings.strategy_param.parse() {
Ok(a) => a, Ok(a) => a,
Err(e) => crash!(1, "invalid number of lines: {}", e), Err(e) => crash!(1, "invalid number of lines: {}", e),
}; };
Box::new(LineSplitter { LineSplitter {
saved_lines_to_write: n, saved_lines_to_write: n,
lines_to_write: n, lines_to_write: n,
}) as Box<dyn Splitter> }
} }
} }
@ -187,7 +187,7 @@ struct ByteSplitter {
} }
impl ByteSplitter { impl ByteSplitter {
fn new(settings: &Settings) -> Box<dyn Splitter> { fn new(settings: &Settings) -> ByteSplitter {
let mut strategy_param: Vec<char> = settings.strategy_param.chars().collect(); let mut strategy_param: Vec<char> = settings.strategy_param.chars().collect();
let suffix = strategy_param.pop().unwrap(); let suffix = strategy_param.pop().unwrap();
let multiplier = match suffix { let multiplier = match suffix {
@ -213,12 +213,12 @@ impl ByteSplitter {
Err(e) => crash!(1, "invalid number of bytes: {}", e), Err(e) => crash!(1, "invalid number of bytes: {}", e),
} }
}; };
Box::new(ByteSplitter { ByteSplitter {
saved_bytes_to_write: n * multiplier, saved_bytes_to_write: n * multiplier,
bytes_to_write: n * multiplier, bytes_to_write: n * multiplier,
break_on_line_end: settings.strategy == "b", break_on_line_end: settings.strategy == "b",
require_whole_line: false, require_whole_line: false,
}) as Box<dyn Splitter> }
} }
} }
@ -290,8 +290,8 @@ fn split(settings: &Settings) -> i32 {
}); });
let mut splitter: Box<dyn Splitter> = match settings.strategy.as_ref() { let mut splitter: Box<dyn Splitter> = match settings.strategy.as_ref() {
"l" => LineSplitter::new(settings), "l" => Box::new(LineSplitter::new(settings)),
"b" | "C" => ByteSplitter::new(settings), "b" | "C" => Box::new(ByteSplitter::new(settings)),
a => crash!(1, "strategy {} not supported", a), a => crash!(1, "strategy {} not supported", a),
}; };