From bf5ec1f3e2325e28154b9796532d37ee84753349 Mon Sep 17 00:00:00 2001 From: Eugen Wissner Date: Thu, 17 Oct 2024 00:37:42 +0200 Subject: Parse type declarations --- lib/Language/Elna/Frontend/Parser.hs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'lib/Language/Elna/Frontend/Parser.hs') diff --git a/lib/Language/Elna/Frontend/Parser.hs b/lib/Language/Elna/Frontend/Parser.hs index e85f3b1..89853f0 100644 --- a/lib/Language/Elna/Frontend/Parser.hs +++ b/lib/Language/Elna/Frontend/Parser.hs @@ -52,14 +52,14 @@ literalP where charP = fromIntegral . fromEnum <$> between (char '\'') (char '\'') Lexer.charLiteral -{- + typeDefinitionP :: Parser Declaration typeDefinitionP = TypeDefinition <$> (symbol "type" *> identifierP) <*> (symbol "=" *> typeExpressionP) <* semicolonP "type definition" --} + termP :: Parser Expression termP = choice [ parensP expressionP @@ -214,7 +214,7 @@ variableDeclarationP = VariableDeclaration "variable declaration" declarationP :: Parser Declaration -declarationP = procedureDeclarationP -- <|> typeDefinitionP +declarationP = procedureDeclarationP <|> typeDefinitionP programP :: Parser Program programP = Program <$> many declarationP <* eof -- cgit v1.2.3