Ran autoformatter

This commit is contained in:
2023-10-11 12:49:53 +02:00
parent 4f1a3b8e7a
commit c1ac8c30e5

View File

@@ -1,11 +1,11 @@
use nom::{ use nom::{
IResult, branch::alt,
multi::separated_list1,
sequence::{tuple, preceded},
character::complete::{self, multispace1},
bytes::complete::take, bytes::complete::take,
bytes::streaming::tag, bytes::streaming::tag,
branch::alt, Parser, character::complete::{self, multispace1},
multi::separated_list1,
sequence::{preceded, tuple},
IResult, Parser,
}; };
#[derive(Debug, PartialEq, PartialOrd, Clone)] #[derive(Debug, PartialEq, PartialOrd, Clone)]
@@ -19,23 +19,19 @@ fn parse_input(input: &str) -> IResult<&str, Vec<(String, u32, Vec<String>)>> {
let (input, valve_tuples) = separated_list1( let (input, valve_tuples) = separated_list1(
multispace1, multispace1,
tuple(( tuple((
preceded( preceded(tag("Valve "), take(2 as usize).map(|s| String::from(s))),
tag("Valve "), preceded(tag(" has flow rate="), complete::u32),
take(2 as usize).map(|s| String::from(s))),
preceded(
tag(" has flow rate="),
complete::u32),
alt(( alt((
preceded( preceded(
tag("; tunnels lead to valves "), tag("; tunnels lead to valves "),
separated_list1( separated_list1(tag(", "), take(2 as usize).map(|s| String::from(s))),
tag(", "), ),
take(2 as usize).map(|s| String::from(s)))),
preceded( preceded(
tag("; tunnel leads to valve "), tag("; tunnel leads to valve "),
take(2 as usize).map(|s| vec![String::from(s)])), take(2 as usize).map(|s| vec![String::from(s)]),
),
)),
)), )),
))
)(input)?; )(input)?;
Ok((input, valve_tuples)) Ok((input, valve_tuples))
@@ -54,10 +50,12 @@ fn main() {
// println!(); // println!();
// } // }
let valves : Vec<Valve> = valve_tuples let valves: Vec<Valve> = valve_tuples
.into_iter() .into_iter()
.map(|(i, f, t)| Valve {id: i, flow: f, tunnels: t}) .map(|(i, f, t)| Valve {
id: i,
flow: f,
tunnels: t,
})
.collect(); .collect();
} }