From: Nathaniel Wesley Filardo Date: Fri, 16 Nov 2012 05:46:30 +0000 (-0500) Subject: Minor parser nits X-Git-Url: https://hydra-www.ietfng.org/gitweb/?a=commitdiff_plain;h=fe8b59270c184b28cbdd6cd924b149eb2482dd4b;p=dyna2 Minor parser nits --- diff --git a/src/Dyna/ParserHS/Parser.hs b/src/Dyna/ParserHS/Parser.hs index c92290a..3956bf9 100644 --- a/src/Dyna/ParserHS/Parser.hs +++ b/src/Dyna/ParserHS/Parser.hs @@ -258,16 +258,16 @@ rulepfx = Rule <$> term rule :: DeltaParsing m => m Rule rule = choice [ - -- HEAD OP= RESULT EXPR whenever EXPRS . + -- HEAD OP= RESULTEXPR whenever EXPRS . (try (liftA flip rulepfx <*> texpr <* hrss "whenever")) <*> (texpr `sepBy1` symbolic ',') - -- HEAD OP= EXPRS, RESULT EXPR . - , (try rulepfx) + -- HEAD OP= EXPRS, RESULTEXPR . + , try (rulepfx <*> many (try (texpr <* symbolic ',')) - <*> texpr + <*> texpr) -- HEAD . , Fact <$> term @@ -289,7 +289,7 @@ progline = do ]) dline :: DeltaParsing m => m (Spanned Line) -dline = unDL (progline <* optional (char '.') <* optional newline) +dline = unDL (progline <* optional (char '.') <* optional whiteSpace) dlines :: DeltaParsing m => m [Spanned Line] dlines = unDL (progline `sepEndBy` (char '.' <* whiteSpace))