aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/parcom/many.cr9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/parcom/many.cr b/src/parcom/many.cr
index d76fc91..a734c63 100644
--- a/src/parcom/many.cr
+++ b/src/parcom/many.cr
@@ -21,13 +21,10 @@ module Parcom
loop do
result = @p.parse?(tokens)
+ break unless !result.nil? && result.tokens != tokens
- if !result.nil? && result.tokens != tokens
- parsed << result.value
- tokens = result.tokens
- else
- break
- end
+ parsed << result.value
+ tokens = result.tokens
end
Result.new(tokens, parsed)