From 95c30b68910c8d1033e718ee3ff790e67a42b041 Mon Sep 17 00:00:00 2001 From: Danila Fedorin Date: Sun, 26 Nov 2023 11:42:46 -0800 Subject: [PATCH] Also parse whole programs Signed-off-by: Danila Fedorin --- src/Bergamot/Parser.elm | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/Bergamot/Parser.elm b/src/Bergamot/Parser.elm index eeb6619..799304c 100644 --- a/src/Bergamot/Parser.elm +++ b/src/Bergamot/Parser.elm @@ -1,7 +1,7 @@ module Bergamot.Parser exposing (..) import Bergamot.Syntax exposing (Term(..), Metavariable) -import Bergamot.Rules exposing (Rule) +import Bergamot.Rules exposing (Rule, RuleEnv) import Parser exposing (Parser, Trailing(..), (|.), (|=)) import Set @@ -57,3 +57,16 @@ rule = , item = term , trailing = Forbidden } + +program : Parser RuleEnv +program = + Parser.succeed (\rs -> { rules = rs }) + |= Parser.sequence + { start = "" + , separator = ";" + , end = "" + , spaces = Parser.spaces + , item = rule + , trailing = Mandatory + } + |. Parser.end