From 70fa3c6ea9d5009bfea5f24f1312b80f1f73b3c2 Mon Sep 17 00:00:00 2001 From: Erez Shinan Date: Mon, 24 Jul 2017 20:11:38 +0300 Subject: [PATCH] Tiny fix for issue #14 Version bump --- lark/__init__.py | 2 +- lark/parsers/earley.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/lark/__init__.py b/lark/__init__.py index d91a460..92f1c78 100644 --- a/lark/__init__.py +++ b/lark/__init__.py @@ -3,4 +3,4 @@ from .common import ParseError, GrammarError from .lark import Lark from .utils import inline_args -__version__ = "0.2.8" +__version__ = "0.2.9" diff --git a/lark/parsers/earley.py b/lark/parsers/earley.py index b808ff1..3c02332 100644 --- a/lark/parsers/earley.py +++ b/lark/parsers/earley.py @@ -224,7 +224,8 @@ class ApplyCallbacks(Transformer_NoRecurse): return Tree(rule.origin, children) def _compare_rules(rule1, rule2): - assert rule1.origin == rule2.origin + if rule1.origin != rule2.origin: + return 0 c = compare( len(rule1.expansion), len(rule2.expansion)) if rule1.origin.startswith('__'): # XXX hack! We need to set priority in parser, not here c = -c