mirror of
https://github.com/github/semantic.git
synced 2024-12-22 06:11:49 +03:00
Factor labels in.
This commit is contained in:
parent
2e671db7e3
commit
1cec072932
@ -185,8 +185,9 @@ choice alternatives = tracing (Choose symbols (IntMap.fromList choices) (asum (f
|
||||
toChoices :: Assignment ast grammar a -> ([grammar], [(Int, Assignment ast grammar a)], [Assignment ast grammar a])
|
||||
toChoices rule = case rule of
|
||||
Tracing _ (Choose s c a) `Then` continue -> (s, IntMap.toList (fmap continue c), toList (fmap continue a))
|
||||
Tracing _ (Many child) `Then` _ -> let (s, c, _) = toChoices child in (s, fmap (rule <$) c, [rule])
|
||||
Tracing _ (Catch during _) `Then` _ -> let (s, c, _) = toChoices during in (s, fmap (rule <$) c, [rule])
|
||||
Tracing _ (Many child) `Then` _ -> let (s, c, _) = toChoices child in (s, fmap (rule <$) c, [rule])
|
||||
Tracing _ (Catch child _) `Then` _ -> let (s, c, _) = toChoices child in (s, fmap (rule <$) c, [rule])
|
||||
Tracing _ (Label child _) `Then` _ -> let (s, c, _) = toChoices child in (s, fmap (rule <$) c, [rule])
|
||||
_ -> ([], [], [rule])
|
||||
|
||||
-- | Match and advance past a node with the given symbol.
|
||||
|
Loading…
Reference in New Issue
Block a user