got lexer balancing parens, indent/outdents, brackets, and curlies

This commit is contained in:
Jeremy Ashkenas
2009-12-28 21:02:40 -05:00
parent bb84a982ce
commit 50bdd2668c
7 changed files with 38 additions and 18 deletions

View File

@@ -392,7 +392,7 @@ rule
# The full complement of if blocks, including postfix one-liner ifs and unlesses.
If:
IF Expression Block IfEnd { result = IfNode.new(val[1], val[3], val[4]) }
IF Expression Block IfEnd { result = IfNode.new(val[1], val[2], val[3]) }
| Expression IF Expression { result = IfNode.new(val[2], Expressions.new([val[0]]), nil, {:statement => true}) }
| Expression UNLESS Expression { result = IfNode.new(val[2], Expressions.new([val[0]]), nil, {:statement => true, :invert => true}) }
;