on master help sign in
add eof to tutorial d parser to improve error messages
839ee52AgentM
TutorialDInterpreter.hs+2−2
@@ -240,7 +240,7 @@ attributeAssignment = do
240 return $ (attrName, atom)
240 return $ (attrName, atom)
241
241
242parseString :: String -> Either RelationalError DatabaseExpr
242parseString :: String -> Either RelationalError DatabaseExpr
243−parseString str = case parse multipleDatabaseExpr "" str of
243+parseString str = case parse (multipleDatabaseExpr <* eof) "" str of
244 Left err -> Left $ ParseError (show err)
244 Left err -> Left $ ParseError (show err)
245 Right r -> Right r
245 Right r -> Right r
246
246
@@ -261,7 +261,7 @@ typeP = do
261showRelP :: Parser TutorialDOperator
261showRelP :: Parser TutorialDOperator
262showRelP = do
262showRelP = do
263 reservedOp ":s"
263 reservedOp ":s"
264− expr <- relExpr
264+ expr <- relExpr <* eof
265 return $ ShowRelation expr
265 return $ ShowRelation expr
266
266
267showPlanP :: Parser TutorialDOperator
267showPlanP :: Parser TutorialDOperator