Some formatting cleanups.

This commit is contained in:
2020-12-03 07:49:59 -08:00
parent 5a495ddc17
commit 12819f0eb8
2 changed files with 18 additions and 7 deletions

View File

@@ -38,7 +38,11 @@ impl FromStr for PasswordData {
impl PasswordData { impl PasswordData {
fn is_valid_interpretation1(&self) -> bool { fn is_valid_interpretation1(&self) -> bool {
let count = self.password.chars().filter(|x| *x == self.character).count(); let count = self
.password
.chars()
.filter(|x| *x == self.character)
.count();
(count >= self.first_number) && (count <= self.second_number) (count >= self.first_number) && (count <= self.second_number)
} }
@@ -60,7 +64,6 @@ impl PasswordData {
} }
} }
fn real_main() -> Result<(), TopLevelError> { fn real_main() -> Result<(), TopLevelError> {
let mut good_items_interpretation1 = 0u64; let mut good_items_interpretation1 = 0u64;
let mut good_items_interpretation2 = 0u64; let mut good_items_interpretation2 = 0u64;
@@ -83,8 +86,14 @@ fn real_main() -> Result<(), TopLevelError> {
} }
} }
println!("# of good passwords, according to interpretation #1: {}", good_items_interpretation1); println!(
println!("# of good passwords, according to interpretation #2: {}", good_items_interpretation2); "# of good passwords, according to interpretation #1: {}",
good_items_interpretation1
);
println!(
"# of good passwords, according to interpretation #2: {}",
good_items_interpretation2
);
Ok(()) Ok(())
} }

View File

@@ -35,17 +35,19 @@ convert_error!(io::Error, TopLevelError, IOError);
pub enum PasswordParseError { pub enum PasswordParseError {
StringToIntError(ParseIntError), StringToIntError(ParseIntError),
NomError(nom::Err<()>) NomError(nom::Err<()>),
} }
impl fmt::Display for PasswordParseError { impl fmt::Display for PasswordParseError {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
match self { match self {
PasswordParseError::NomError(e) => write!(f, "Parse error: {}", e), PasswordParseError::NomError(e) => write!(f, "Parse error: {}", e),
PasswordParseError::StringToIntError(e) => write!(f, "Error converting string to integer: {}", e), PasswordParseError::StringToIntError(e) => {
write!(f, "Error converting string to integer: {}", e)
}
} }
} }
} }
convert_error!(ParseIntError, PasswordParseError, StringToIntError); convert_error!(ParseIntError, PasswordParseError, StringToIntError);
convert_error!(nom::Err<()>, PasswordParseError, NomError); convert_error!(nom::Err<()>, PasswordParseError, NomError);