chore: Switched to WinnowDay
This commit is contained in:
parent
d08eabf619
commit
e3affe980a
@ -1,4 +1,4 @@
|
|||||||
use crate::{AoC, SimpleDay};
|
use crate::{AoC, WinnowDay};
|
||||||
use winnow::{
|
use winnow::{
|
||||||
Parser, Result,
|
Parser, Result,
|
||||||
ascii::{digit1, multispace0},
|
ascii::{digit1, multispace0},
|
||||||
@ -11,13 +11,12 @@ enum Side {
|
|||||||
Right(i64),
|
Right(i64),
|
||||||
}
|
}
|
||||||
|
|
||||||
fn day() -> impl SimpleDay {
|
fn day() -> impl WinnowDay {
|
||||||
AoC::new(parse as _, part1 as _, part2 as _)
|
AoC::new(parse as _, part1 as _, part2 as _)
|
||||||
}
|
}
|
||||||
|
|
||||||
fn parse(input: String) -> Parsed {
|
fn parse(input: &mut &str) -> Result<Parsed> {
|
||||||
let mut input: &str = input.as_str();
|
repeat(1.., parse_line).parse_next(input)
|
||||||
repeat(1.., parse_line).parse_next(&mut input).unwrap()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fn parse_line(input: &mut &str) -> Result<Side> {
|
fn parse_line(input: &mut &str) -> Result<Side> {
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
use crate::{AoC, SimpleDay};
|
use crate::{AoC, WinnowDay};
|
||||||
use winnow::{
|
use winnow::{
|
||||||
Parser, Result,
|
Parser, Result,
|
||||||
ascii::digit1,
|
ascii::digit1,
|
||||||
@ -7,15 +7,12 @@ use winnow::{
|
|||||||
|
|
||||||
type Parsed = Vec<(u64, u64)>;
|
type Parsed = Vec<(u64, u64)>;
|
||||||
|
|
||||||
fn day() -> impl SimpleDay {
|
fn day() -> impl WinnowDay {
|
||||||
AoC::new(parse as _, part1 as _, part2 as _)
|
AoC::new(parse as _, part1 as _, part2 as _)
|
||||||
}
|
}
|
||||||
|
|
||||||
fn parse(input: String) -> Parsed {
|
fn parse(input: &mut &str) -> Result<Parsed> {
|
||||||
let mut input: &str = input.as_str();
|
separated(1.., parse_range, ",").parse_next(input)
|
||||||
separated(1.., parse_range, ",")
|
|
||||||
.parse_next(&mut input)
|
|
||||||
.unwrap()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fn parse_range(input: &mut &str) -> Result<(u64, u64)> {
|
fn parse_range(input: &mut &str) -> Result<(u64, u64)> {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user