blob: bb782f57570d8b988ce0a33eb61e9588db255c24 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
module Parser.Assignment where
import Control.Applicative
import Parser.Core
import qualified Parser.Expr as E
import Assignment
variableP :: Parser Assignment
variableP = Variable <$> alphaStringP <* char '=' <*> E.exprP
functionP :: Parser Assignment
functionP = Function <$> alphaStringP <*> parenthesize alphaStringP <* char '=' <*> E.exprP
assignmentP :: Parser Assignment
assignmentP = variableP <|> functionP
|