def _error_expected(self, expected_tokens): expected_tokens = list(expected_tokens) if len(expected_tokens) == 1: expected_desc = expected_tokens[0] else: expected_desc = "one of {}".format(", ".join(expected_tokens)) raise ParseError.from_token( "Expected {}".format(expected_desc), self._token )
def go(self, token): if self.can_go(token): self.node = self.node.out_edges[token.value] else: raise ParseError.from_token("Unexpected token", token)