Add a (debug) interactive demo
This commit is contained in:
@@ -26,7 +26,8 @@ variable = Parser.variable
|
||||
term : Parser (Term Metavariable)
|
||||
term = Parser.lazy (\() -> Parser.oneOf
|
||||
[ Parser.succeed IntLit |= intLit
|
||||
, Parser.succeed Call
|
||||
, Parser.backtrackable <|
|
||||
Parser.succeed Call
|
||||
|= name
|
||||
|= Parser.sequence
|
||||
{ start = "("
|
||||
@@ -36,6 +37,8 @@ term = Parser.lazy (\() -> Parser.oneOf
|
||||
, item = term
|
||||
, trailing = Forbidden
|
||||
}
|
||||
, Parser.succeed (\n -> Call n [])
|
||||
|= name
|
||||
, Parser.succeed Var |= variable
|
||||
])
|
||||
|
||||
@@ -70,3 +73,9 @@ program =
|
||||
, trailing = Mandatory
|
||||
}
|
||||
|. Parser.end
|
||||
|
||||
run : Parser a -> String -> Maybe a
|
||||
run prs s =
|
||||
case Parser.run prs s of
|
||||
Ok a -> Just a
|
||||
Err _ -> Nothing
|
||||
|
||||
Reference in New Issue
Block a user