diff --git a/aoc_2025/src/day1.rs b/aoc_2025/src/day1.rs index 79c5305..3e07b5e 100644 --- a/aoc_2025/src/day1.rs +++ b/aoc_2025/src/day1.rs @@ -1,4 +1,4 @@ -use crate::{AoC, SimpleDay}; +use crate::{AoC, WinnowDay}; use winnow::{ Parser, Result, ascii::{digit1, multispace0}, @@ -11,13 +11,12 @@ enum Side { Right(i64), } -fn day() -> impl SimpleDay { +fn day() -> impl WinnowDay { AoC::new(parse as _, part1 as _, part2 as _) } -fn parse(input: String) -> Parsed { - let mut input: &str = input.as_str(); - repeat(1.., parse_line).parse_next(&mut input).unwrap() +fn parse(input: &mut &str) -> Result { + repeat(1.., parse_line).parse_next(input) } fn parse_line(input: &mut &str) -> Result { diff --git a/aoc_2025/src/day2.rs b/aoc_2025/src/day2.rs index dda0563..1cbfccd 100644 --- a/aoc_2025/src/day2.rs +++ b/aoc_2025/src/day2.rs @@ -1,4 +1,4 @@ -use crate::{AoC, SimpleDay}; +use crate::{AoC, WinnowDay}; use winnow::{ Parser, Result, ascii::digit1, @@ -7,15 +7,12 @@ use winnow::{ type Parsed = Vec<(u64, u64)>; -fn day() -> impl SimpleDay { +fn day() -> impl WinnowDay { AoC::new(parse as _, part1 as _, part2 as _) } -fn parse(input: String) -> Parsed { - let mut input: &str = input.as_str(); - separated(1.., parse_range, ",") - .parse_next(&mut input) - .unwrap() +fn parse(input: &mut &str) -> Result { + separated(1.., parse_range, ",").parse_next(input) } fn parse_range(input: &mut &str) -> Result<(u64, u64)> {