lib/code/parser/operation.rb in template-ruby-parser-0.1.3 vs lib/code/parser/operation.rb in template-ruby-parser-0.1.4
- old
+ new
@@ -17,28 +17,30 @@
right = []
while operator = match(operators)
comments_before = parse_comments
statement = parse_subclass(subclass)
- previous_cursor = cursor
comments_after = parse_comments
- right << {
- statement: statement,
- operator: operator,
- comments_before: comments_before,
- comments_after: comments_after
- }.compact
+ if statement
+ right << {
+ statement: statement,
+ operator: operator,
+ comments_before: comments_before,
+ comments_after: comments_after
+ }.compact
+ else
+ @cursor = previous_cursor
+ buffer!
+ break
+ end
end
if right.empty?
@cursor = previous_cursor
buffer!
left
else
- @cursor = previous_cursor
- buffer!
-
right[-1].delete(:comments_after)
{
operation: {
left: left,