mirror of
https://github.com/rust-lang/rustlings.git
synced 2026-01-11 13:19:18 +00:00
Finally figured out ?
This commit is contained in:
parent
754a006da8
commit
c393f0e6e5
@ -16,16 +16,20 @@
|
||||
// There are at least two ways to implement this that are both correct-- but
|
||||
// one is a lot shorter! Execute `rustlings hint errors2` for hints to both ways.
|
||||
|
||||
// I AM NOT DONE
|
||||
|
||||
use std::num::ParseIntError;
|
||||
|
||||
pub fn total_cost(item_quantity: &str) -> Result<i32, ParseIntError> {
|
||||
let processing_fee = 1;
|
||||
let cost_per_item = 5;
|
||||
let qty = item_quantity.parse::<i32>();
|
||||
|
||||
Ok(qty * cost_per_item + processing_fee)
|
||||
let qty = item_quantity.parse::<i32>()/*?*/;
|
||||
// The slick answer is just skipping
|
||||
// the match statement and putting a ? where I left it in the comments.
|
||||
// It does the same thing as the match statement below.
|
||||
match qty {
|
||||
Ok(qty) => Ok(qty * cost_per_item + processing_fee),
|
||||
Err(ParseIntError) => Err(ParseIntError),
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user