Improve parsers of 2020-02

This commit is contained in:
Julien Dessaux 2023-03-09 23:14:48 +01:00
parent 316a48b6a8
commit 8bc73de30d
Signed by: adyxax
GPG key ID: F92E51B86E07177E
2 changed files with 4 additions and 10 deletions

View file

@ -25,15 +25,12 @@ parseRule = do
void (char ' ')
e <- anySingle
void (string ": ")
pass <- (many letterChar)
pass <- (some letterChar)
void (char '\n')
return Rule { lower = read l, higher = read h, elt = e, pass = pass }
parseRules :: Parser [Rule]
parseRules = do
rules <- many parseRule
eof
return rules
parseRules = some parseRule <* eof
parseInput :: String -> IO [Rule]
parseInput filename = do

View file

@ -25,15 +25,12 @@ parseRule = do
void (char ' ')
e <- anySingle
void (string ": ")
pass <- (many letterChar)
pass <- (some letterChar)
void (char '\n')
return Rule { lower = (read l) - 1, higher = (read h) - 1, elt = e, pass = pass }
parseRules :: Parser [Rule]
parseRules = do
rules <- many parseRule
eof
return rules
parseRules = some parseRule <* eof
parseInput :: String -> IO [Rule]
parseInput filename = do