Consistently use separator parsing combinators in infix form

This commit is contained in:
George Thomas 2025-12-08 23:44:43 +00:00
parent 832b85fb7b
commit ea64a5af3e
5 changed files with 6 additions and 6 deletions

View File

@ -8,7 +8,7 @@ puzzle :: Puzzle
puzzle =
Puzzle
{ number = 1
, parser = const $ flip sepEndBy newline $ (,) <$> ((char 'L' $> L) <|> (char 'R' $> R)) <*> (Inc <$> decimal)
, parser = const $ ((,) <$> ((char 'L' $> L) <|> (char 'R' $> R)) <*> (Inc <$> decimal)) `sepEndBy` newline
, parts =
[ TL.show
. sum

View File

@ -9,7 +9,7 @@ puzzle :: Puzzle
puzzle =
Puzzle
{ number = 2
, parser = const $ (<* newline) $ flip sepBy (char ',') $ (,) <$> (decimal <* char '-') <*> decimal
, parser = const $ (<* newline) $ ((,) <$> (decimal <* char '-') <*> decimal) `sepBy` (char ',')
, parts =
[ TL.show
. sum

View File

@ -9,7 +9,7 @@ puzzle :: Puzzle
puzzle =
Puzzle
{ number = 3
, parser = const $ flip sepEndBy newline $ Bank <$> some1 digit
, parser = const $ (Bank <$> some1 digit) `sepEndBy` newline
, parts =
[ TL.show
. sum

View File

@ -12,7 +12,7 @@ puzzle :: Puzzle
puzzle =
Puzzle
{ number = 4
, parser = const $ flip sepEndBy newline $ some $ asum $ enumerate <&> \t -> char (inToChar t) $> t
, parser = const $ (some $ asum $ enumerate <&> \t -> char (inToChar t) $> t) `sepEndBy` newline
, parts =
[ TL.show
. (\g -> countRolls g - countRolls (removeAccessibleRolls $ findAccessible g))

View File

@ -9,9 +9,9 @@ puzzle =
Puzzle
{ number = 5
, parser = const do
ranges <- flip sepEndBy newline $ Range <$> decimal <* single '-' <*> decimal
ranges <- (Range <$> decimal <* single '-' <*> decimal) `sepEndBy` newline
void newline
vals <- sepEndBy decimal newline
vals <- decimal `sepEndBy` newline
pure (ranges, vals)
, parts =
[ \(ranges, vals) ->