# File lib/treetop/compiler/node_classes/repetition.rb, line 4
      def compile(address, builder, parent_expression)
        super
        repeated_expression = parent_expression.atomic
        begin_comment(parent_expression)
        use_vars :result, :accumulator, :start_index

        builder.loop do
          obtain_new_subexpression_address
          repeated_expression.compile(subexpression_address, builder)
          builder.if__ subexpression_success? do
            accumulate_subexpression_result
          end
          builder.else_ do
            builder.break
          end
          if max && !max.empty?
            builder.if_ "#{accumulator_var}.size == #{max.text_value}" do
              builder.break
            end
          end
        end
      end