15 lines
344 B
Rust
15 lines
344 B
Rust
use yap::Tokens;
|
|
|
|
use crate::parsing::{newline, parse_digit, parse_n};
|
|
|
|
use super::OctopusGrid;
|
|
|
|
pub fn parse_octopus_grid(tokens: &mut impl Tokens<Item = char>) -> Option<OctopusGrid> {
|
|
parse_n(
|
|
tokens,
|
|
&|t| parse_n(t, &|t| parse_digit(t), &|_| true),
|
|
&|t| newline(t),
|
|
)
|
|
.map(|grid| OctopusGrid { grid })
|
|
}
|