erikrose / parsimonious

The fastest pure-Python PEG parser I can muster
MIT License
1.79k stars 126 forks source link

fixed recursion errors of `Expressions.__eq__` #212

Closed FelisNivalis closed 2 years ago

FelisNivalis commented 2 years ago
  1. The equality of two Compounds relies on checking the equality of the corresponding members, and when there is a loop in the membership relations (e.g. A = B, B = (A)) the function will cause a RecursionError.
  2. Quantifier and Lookahead lack a __eq__ which should check the equality of their attributes.
lucaswiman commented 2 years ago

LGTM. I'll try to push a 0.10.0 release sometime this week, which should include this change.