1
1
mirror of https://github.com/github/semantic.git synced 2025-01-03 04:51:57 +03:00

Don’t bother capturing the call stack.

This commit is contained in:
Rob Rix 2017-08-21 15:35:03 -04:00
parent 5f19a7415b
commit f924b8b63c

View File

@ -285,7 +285,7 @@ runAssignment source = \ assignment state -> go assignment state >>= requireExha
expectedSymbols = firstSet (t `Then` return)
makeError = withStateCallStack (tracingCallSite t) state $ maybe (Error (Info.Span statePos statePos) (fmap Right expectedSymbols) Nothing) (nodeError (fmap Right expectedSymbols))
requireExhaustive :: (Symbol grammar, HasCallStack) => Maybe (String, SrcLoc) -> (result, State ast grammar) -> Either (Error (Either String grammar)) (result, State ast grammar)
requireExhaustive :: Symbol grammar => Maybe (String, SrcLoc) -> (result, State ast grammar) -> Either (Error (Either String grammar)) (result, State ast grammar)
requireExhaustive callSite (a, state) = let state' = skipTokens state in case stateNodes state' of
[] -> Right (a, state')
(node :< _) : _ -> Left (withStateCallStack callSite state (nodeError [] node))