# File lib/treetop/compiler/node_classes/choice.rb, line 4 4: def compile(address, builder, parent_expression = nil) 5: super 6: begin_comment(self) 7: use_vars :result, :start_index 8: compile_alternatives(alternatives) 9: end_comment(self) 10: end
# File lib/treetop/compiler/node_classes/choice.rb, line 12 12: def compile_alternatives(alternatives) 13: obtain_new_subexpression_address 14: alternatives.first.compile(subexpression_address, builder) 15: builder.if__ subexpression_success? do 16: assign_result subexpression_result_var 17: extend_result_with_declared_module 18: extend_result_with_inline_module 19: end 20: builder.else_ do 21: if alternatives.size == 1 22: reset_index 23: assign_failure start_index_var 24: else 25: compile_alternatives(alternatives[1..1]) 26: end 27: end 28: end
Disabled; run with --debug to generate this.
Generated with the Darkfish Rdoc Generator 1.1.6.