Skip to content
This repository was archived by the owner on Nov 12, 2025. It is now read-only.

Commit 1a7a84d

Browse files
committed
inline upgradeRes in doParse
1 parent 484b30c commit 1a7a84d

File tree

1 file changed

+5
-9
lines changed

1 file changed

+5
-9
lines changed

libs/contrib/Text/Parser/Core.idr

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -235,20 +235,16 @@ shorter : (more : List tok) -> .(ys : List tok) ->
235235
shorter more [] = lteRefl
236236
shorter 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-
246238
doParse : {c : Bool} ->
247239
(state : st) ->
248240
(commit : Bool) -> (xs : List tok) -> (act : GrammarT st tok c ty) ->
249241
ParseResult st xs c ty
250242
doParse 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

0 commit comments

Comments
 (0)