This repository was archived by the owner on Nov 12, 2025. It is now read-only.
File tree Expand file tree Collapse file tree 1 file changed +5
-9
lines changed Expand file tree Collapse file tree 1 file changed +5
-9
lines changed Original file line number Diff line number Diff line change @@ -235,20 +235,16 @@ shorter : (more : List tok) -> .(ys : List tok) ->
235235shorter more [] = lteRefl
236236shorter more (x :: xs) = LTESucc (lteSuccLeft (shorter more xs))
237237
238- upgradeRes : {c : Bool } -> {xs : List tok} ->
239- outerST ->
240- ParseResult innerST xs c ty ->
241- ParseResult outerST xs c (ty, innerST)
242- upgradeRes state (Failure com msg xs) = Failure com msg xs
243- upgradeRes state (EmptyRes inner com val xs) = EmptyRes state com (val, inner) xs
244- upgradeRes state (NonEmptyRes inner com val xs) = NonEmptyRes state com (val, inner) xs
245-
246238doParse : {c : Bool } ->
247239 (state : st) ->
248240 (commit : Bool ) -> (xs : List tok) -> (act : GrammarT st tok c ty) ->
249241 ParseResult st xs c ty
250242doParse state com xs act with (sizeAccessible xs)
251- doParse state com xs (Run sub init ) | sml = upgradeRes state (doParse init com xs sub | sml)
243+ doParse state com xs (Run sub init ) | sml
244+ = case (doParse init com xs sub | sml) of
245+ Failure com' msg xs' => Failure com' msg xs'
246+ EmptyRes inner com' val xs' => EmptyRes state com' (val, inner) xs'
247+ NonEmptyRes inner com' val xs' => NonEmptyRes state com' (val, inner) xs'
252248 doParse state com xs Get | sml = EmptyRes state com state xs
253249 doParse state com xs (Put newState) | sml = EmptyRes newState com () xs
254250 doParse state com xs (Empty val) | sml = EmptyRes state com val xs
You can’t perform that action at this time.
0 commit comments