diff options
author | Jed Barber <jjbarber@y7mail.com> | 2014-02-13 02:02:11 +1100 |
---|---|---|
committer | Jed Barber <jjbarber@y7mail.com> | 2014-02-13 02:02:11 +1100 |
commit | ab757822c75aa71bd725126d9511fcb678f6e5e3 (patch) | |
tree | 3e42f31ead0af187cdc88475ad8ead733ddc7671 /Thue | |
parent | 96d6b8ebd32166f5d72420e94060de4792da999b (diff) |
Added better error messages in parsers
Diffstat (limited to 'Thue')
-rw-r--r-- | Thue/Parser.hs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/Thue/Parser.hs b/Thue/Parser.hs index d7b0719..2ee41ae 100644 --- a/Thue/Parser.hs +++ b/Thue/Parser.hs @@ -49,7 +49,8 @@ rule = do separatorLine = whiteSpace >> separator >> whiteSpace >> eol -separator = string "::=" +separator = string "::=" + <?> "rule separator" initialState = do @@ -62,12 +63,14 @@ ruleState = some ruleStateChar ruleStateChar = noneOf "\n\r:" <|> try (char ':' >> notFollowedBy (string ":=") >> return ':') + <?> "state character" state = many stateChar -stateChar = noneOf "\n\r" +stateChar = noneOf "\n\r" + <?> "state character" whiteSpace = many (oneOf "\t ") @@ -77,4 +80,5 @@ eol = try (string "\r\n") <|> try (string "\n\r") <|> try (string "\r") <|> try (string "\n") + <?> "end of line" |