class Parser::Ruby32
Constants
- Racc_arg
- Racc_debug_parser
- Racc_token_to_s_table
Public Instance Methods
reduce 0 omitted
# File lib/parser/ruby32.rb, line 8420 def _reduce_1(val, _values, result) @current_arg_stack.push(nil) @max_numparam_stack.push(static: true) result end
# File lib/parser/ruby32.rb, line 8474 def _reduce_10(val, _values, result) result = val result end
# File lib/parser/ruby32.rb, line 9109 def _reduce_100(val, _values, result) result = [ @builder.splat(val[0]), *val[2] ] result end
reduce 101 omitted
# File lib/parser/ruby32.rb, line 9118 def _reduce_102(val, _values, result) result = @builder.begin(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9124 def _reduce_103(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 9130 def _reduce_104(val, _values, result) result = val[0] << val[1] result end
# File lib/parser/ruby32.rb, line 9136 def _reduce_105(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 9142 def _reduce_106(val, _values, result) result = val[0] << val[2] result end
# File lib/parser/ruby32.rb, line 9148 def _reduce_107(val, _values, result) result = @builder.assignable(val[0]) result end
# File lib/parser/ruby32.rb, line 9154 def _reduce_108(val, _values, result) result = @builder.assignable(val[0]) result end
# File lib/parser/ruby32.rb, line 9160 def _reduce_109(val, _values, result) result = @builder.index_asgn(val[0], val[1], val[2], val[3]) result end
# File lib/parser/ruby32.rb, line 8480 def _reduce_11(val, _values, result) rescue_bodies = val[1] else_t, else_ = val[2] ensure_t, ensure_ = val[3] if rescue_bodies.empty? && !else_t.nil? diagnostic :error, :useless_else, nil, else_t end result = @builder.begin_body(val[0], rescue_bodies, else_t, else_, ensure_t, ensure_) result end
# File lib/parser/ruby32.rb, line 9166 def _reduce_110(val, _values, result) if (val[1][0] == :anddot) diagnostic :error, :csend_in_lhs_of_masgn, nil, val[1] end result = @builder.attr_asgn(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9176 def _reduce_111(val, _values, result) result = @builder.attr_asgn(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9182 def _reduce_112(val, _values, result) if (val[1][0] == :anddot) diagnostic :error, :csend_in_lhs_of_masgn, nil, val[1] end result = @builder.attr_asgn(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9192 def _reduce_113(val, _values, result) result = @builder.assignable( @builder.const_fetch(val[0], val[1], val[2])) result end
# File lib/parser/ruby32.rb, line 9199 def _reduce_114(val, _values, result) result = @builder.assignable( @builder.const_global(val[0], val[1])) result end
# File lib/parser/ruby32.rb, line 9206 def _reduce_115(val, _values, result) result = @builder.assignable(val[0]) result end
# File lib/parser/ruby32.rb, line 9212 def _reduce_116(val, _values, result) result = @builder.assignable(val[0]) result end
# File lib/parser/ruby32.rb, line 9218 def _reduce_117(val, _values, result) result = @builder.assignable(val[0]) result end
# File lib/parser/ruby32.rb, line 9224 def _reduce_118(val, _values, result) result = @builder.index_asgn(val[0], val[1], val[2], val[3]) result end
# File lib/parser/ruby32.rb, line 9230 def _reduce_119(val, _values, result) result = @builder.attr_asgn(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 8497 def _reduce_12(val, _values, result) result = @builder.compstmt(val[0]) result end
# File lib/parser/ruby32.rb, line 9236 def _reduce_120(val, _values, result) result = @builder.attr_asgn(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9242 def _reduce_121(val, _values, result) result = @builder.attr_asgn(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9248 def _reduce_122(val, _values, result) result = @builder.assignable( @builder.const_fetch(val[0], val[1], val[2])) result end
# File lib/parser/ruby32.rb, line 9255 def _reduce_123(val, _values, result) result = @builder.assignable( @builder.const_global(val[0], val[1])) result end
# File lib/parser/ruby32.rb, line 9262 def _reduce_124(val, _values, result) result = @builder.assignable(val[0]) result end
# File lib/parser/ruby32.rb, line 9268 def _reduce_125(val, _values, result) diagnostic :error, :module_name_const, nil, val[0] result end
reduce 126 omitted
# File lib/parser/ruby32.rb, line 9276 def _reduce_127(val, _values, result) result = @builder.const_global(val[0], val[1]) result end
# File lib/parser/ruby32.rb, line 9282 def _reduce_128(val, _values, result) result = @builder.const(val[0]) result end
# File lib/parser/ruby32.rb, line 9288 def _reduce_129(val, _values, result) result = @builder.const_fetch(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 8503 def _reduce_13(val, _values, result) result = [] result end
reduce 134 omitted
# File lib/parser/ruby32.rb, line 9304 def _reduce_135(val, _values, result) result = @builder.symbol_internal(val[0]) result end
reduce 136 omitted
# File lib/parser/ruby32.rb, line 9312 def _reduce_137(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 9318 def _reduce_138(val, _values, result) @lexer.state = :expr_fname result end
# File lib/parser/ruby32.rb, line 9324 def _reduce_139(val, _values, result) result = val[0] << val[3] result end
# File lib/parser/ruby32.rb, line 8509 def _reduce_14(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 8515 def _reduce_15(val, _values, result) result = val[0] << val[2] result end
# File lib/parser/ruby32.rb, line 8521 def _reduce_16(val, _values, result) result = [ val[1] ] result end
reduce 17 omitted
# File lib/parser/ruby32.rb, line 8529 def _reduce_18(val, _values, result) diagnostic :error, :begin_in_method, nil, val[0] result end
# File lib/parser/ruby32.rb, line 8535 def _reduce_19(val, _values, result) @lexer.state = :expr_fname result end
# File lib/parser/ruby32.rb, line 8427 def _reduce_2(val, _values, result) result = val[1] @current_arg_stack.pop @max_numparam_stack.pop result end
# File lib/parser/ruby32.rb, line 8541 def _reduce_20(val, _values, result) result = @builder.alias(val[0], val[1], val[3]) result end
# File lib/parser/ruby32.rb, line 8547 def _reduce_21(val, _values, result) result = @builder.alias(val[0], @builder.gvar(val[1]), @builder.gvar(val[2])) result end
reduce 210 omitted
# File lib/parser/ruby32.rb, line 9472 def _reduce_211(val, _values, result) result = @builder.assign(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9478 def _reduce_212(val, _values, result) result = @builder.op_assign(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9484 def _reduce_213(val, _values, result) result = @builder.op_assign( @builder.index( val[0], val[1], val[2], val[3]), val[4], val[5]) result end
# File lib/parser/ruby32.rb, line 9493 def _reduce_214(val, _values, result) result = @builder.op_assign( @builder.call_method( val[0], val[1], val[2]), val[3], val[4]) result end
# File lib/parser/ruby32.rb, line 9502 def _reduce_215(val, _values, result) result = @builder.op_assign( @builder.call_method( val[0], val[1], val[2]), val[3], val[4]) result end
# File lib/parser/ruby32.rb, line 9511 def _reduce_216(val, _values, result) result = @builder.op_assign( @builder.call_method( val[0], val[1], val[2]), val[3], val[4]) result end
# File lib/parser/ruby32.rb, line 9520 def _reduce_217(val, _values, result) const = @builder.const_op_assignable( @builder.const_fetch(val[0], val[1], val[2])) result = @builder.op_assign(const, val[3], val[4]) result end
# File lib/parser/ruby32.rb, line 9528 def _reduce_218(val, _values, result) const = @builder.const_op_assignable( @builder.const_global(val[0], val[1])) result = @builder.op_assign(const, val[2], val[3]) result end
# File lib/parser/ruby32.rb, line 9536 def _reduce_219(val, _values, result) result = @builder.op_assign(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 8555 def _reduce_22(val, _values, result) result = @builder.alias(val[0], @builder.gvar(val[1]), @builder.back_ref(val[2])) result end
# File lib/parser/ruby32.rb, line 9542 def _reduce_220(val, _values, result) result = @builder.range_inclusive(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9548 def _reduce_221(val, _values, result) result = @builder.range_exclusive(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9554 def _reduce_222(val, _values, result) result = @builder.range_inclusive(val[0], val[1], nil) result end
# File lib/parser/ruby32.rb, line 9560 def _reduce_223(val, _values, result) result = @builder.range_exclusive(val[0], val[1], nil) result end
# File lib/parser/ruby32.rb, line 9566 def _reduce_224(val, _values, result) result = @builder.range_inclusive(nil, val[0], val[1]) result end
# File lib/parser/ruby32.rb, line 9572 def _reduce_225(val, _values, result) result = @builder.range_exclusive(nil, val[0], val[1]) result end
# File lib/parser/ruby32.rb, line 9578 def _reduce_226(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9584 def _reduce_227(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9590 def _reduce_228(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9596 def _reduce_229(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 8563 def _reduce_23(val, _values, result) diagnostic :error, :nth_ref_alias, nil, val[2] result end
# File lib/parser/ruby32.rb, line 9602 def _reduce_230(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9608 def _reduce_231(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9614 def _reduce_232(val, _values, result) result = @builder.unary_op(val[0], @builder.binary_op( val[1], val[2], val[3])) result end
# File lib/parser/ruby32.rb, line 9622 def _reduce_233(val, _values, result) result = @builder.unary_op(val[0], val[1]) result end
# File lib/parser/ruby32.rb, line 9628 def _reduce_234(val, _values, result) result = @builder.unary_op(val[0], val[1]) result end
# File lib/parser/ruby32.rb, line 9634 def _reduce_235(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9640 def _reduce_236(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9646 def _reduce_237(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9652 def _reduce_238(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 8569 def _reduce_24(val, _values, result) result = @builder.undef_method(val[0], val[1]) result end
reduce 239 omitted
# File lib/parser/ruby32.rb, line 9660 def _reduce_240(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9666 def _reduce_241(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9672 def _reduce_242(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9678 def _reduce_243(val, _values, result) result = @builder.match_op(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9684 def _reduce_244(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9690 def _reduce_245(val, _values, result) result = @builder.not_op(val[0], nil, val[1], nil) result end
# File lib/parser/ruby32.rb, line 9696 def _reduce_246(val, _values, result) result = @builder.unary_op(val[0], val[1]) result end
# File lib/parser/ruby32.rb, line 9702 def _reduce_247(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9708 def _reduce_248(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9714 def _reduce_249(val, _values, result) result = @builder.logical_op(:and, val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 8575 def _reduce_25(val, _values, result) result = @builder.condition_mod(val[0], nil, val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9720 def _reduce_250(val, _values, result) result = @builder.logical_op(:or, val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9726 def _reduce_251(val, _values, result) @context.in_defined = true result end
# File lib/parser/ruby32.rb, line 9732 def _reduce_252(val, _values, result) @context.in_defined = false result = @builder.keyword_cmd(:defined?, val[0], nil, [ val[3] ], nil) result end
# File lib/parser/ruby32.rb, line 9739 def _reduce_253(val, _values, result) result = @builder.ternary(val[0], val[1], val[2], val[4], val[5]) result end
# File lib/parser/ruby32.rb, line 9746 def _reduce_254(val, _values, result) def_t, (name_t, ctx) = val[0] endless_method_name(name_t) result = @builder.def_endless_method(def_t, name_t, val[1], val[2], val[3]) local_pop @current_arg_stack.pop @context.in_def = ctx.in_def result end
# File lib/parser/ruby32.rb, line 9760 def _reduce_255(val, _values, result) def_t, (name_t, ctx) = val[0] endless_method_name(name_t) rescue_body = @builder.rescue_body(val[4], nil, nil, nil, nil, val[5]) method_body = @builder.begin_body(val[3], [ rescue_body ]) result = @builder.def_endless_method(def_t, name_t, val[1], val[2], method_body) local_pop @current_arg_stack.pop @context.in_def = ctx.in_def result end
# File lib/parser/ruby32.rb, line 9780 def _reduce_256(val, _values, result) def_t, recv, dot_t, (name_t, ctx) = val[0] endless_method_name(name_t) result = @builder.def_endless_singleton(def_t, recv, dot_t, name_t, val[1], val[2], val[3]) local_pop @current_arg_stack.pop @context.in_def = ctx.in_def result end
# File lib/parser/ruby32.rb, line 9794 def _reduce_257(val, _values, result) def_t, recv, dot_t, (name_t, ctx) = val[0] endless_method_name(name_t) rescue_body = @builder.rescue_body(val[4], nil, nil, nil, nil, val[5]) method_body = @builder.begin_body(val[3], [ rescue_body ]) result = @builder.def_endless_singleton(def_t, recv, dot_t, name_t, val[1], val[2], method_body) local_pop @current_arg_stack.pop @context.in_def = ctx.in_def result end
# File lib/parser/ruby32.rb, line 8582 def _reduce_26(val, _values, result) result = @builder.condition_mod(nil, val[0], val[1], val[2]) result end
reduce 262 omitted
# File lib/parser/ruby32.rb, line 9824 def _reduce_263(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9830 def _reduce_264(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end
reduce 267 omitted
# File lib/parser/ruby32.rb, line 9842 def _reduce_268(val, _values, result) result = val[0] << @builder.associate(nil, val[2], nil) result end
# File lib/parser/ruby32.rb, line 9848 def _reduce_269(val, _values, result) result = [ @builder.associate(nil, val[0], nil) ] result end
# File lib/parser/ruby32.rb, line 8589 def _reduce_27(val, _values, result) result = @builder.loop_mod(:while, val[0], val[1], val[2]) result end
reduce 270 omitted
# File lib/parser/ruby32.rb, line 9856 def _reduce_271(val, _values, result) rescue_body = @builder.rescue_body(val[1], nil, nil, nil, nil, val[2]) result = @builder.begin_body(val[0], [ rescue_body ]) result end
# File lib/parser/ruby32.rb, line 9866 def _reduce_272(val, _values, result) result = val result end
# File lib/parser/ruby32.rb, line 9872 def _reduce_273(val, _values, result) unless @static_env.declared_forward_args? diagnostic :error, :unexpected_token, { :token => 'tBDOT3' } , val[3] end result = [val[0], [*val[1], @builder.forwarded_args(val[3])], val[4]] result end
# File lib/parser/ruby32.rb, line 9882 def _reduce_274(val, _values, result) unless @static_env.declared_forward_args? diagnostic :error, :unexpected_token, { :token => 'tBDOT3' } , val[1] end result = [val[0], [@builder.forwarded_args(val[1])], val[2]] result end
# File lib/parser/ruby32.rb, line 9892 def _reduce_275(val, _values, result) result = [ nil, [], nil ] result end
reduce 276 omitted
# File lib/parser/ruby32.rb, line 9900 def _reduce_277(val, _values, result) result = [] result end
# File lib/parser/ruby32.rb, line 8595 def _reduce_28(val, _values, result) result = @builder.loop_mod(:until, val[0], val[1], val[2]) result end
reduce 279 omitted
# File lib/parser/ruby32.rb, line 9910 def _reduce_280(val, _values, result) result = val[0] << @builder.associate(nil, val[2], nil) result end
# File lib/parser/ruby32.rb, line 9916 def _reduce_281(val, _values, result) result = [ @builder.associate(nil, val[0], nil) ] result end
# File lib/parser/ruby32.rb, line 9922 def _reduce_282(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 9928 def _reduce_283(val, _values, result) result = val[0].concat(val[1]) result end
# File lib/parser/ruby32.rb, line 9934 def _reduce_284(val, _values, result) result = [ @builder.associate(nil, val[0], nil) ] result.concat(val[1]) result end
# File lib/parser/ruby32.rb, line 9941 def _reduce_285(val, _values, result) assocs = @builder.associate(nil, val[2], nil) result = val[0] << assocs result.concat(val[3]) result end
# File lib/parser/ruby32.rb, line 9949 def _reduce_286(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 9955 def _reduce_287(val, _values, result) # When branch gets invoked by RACC's lookahead # and command args start with '[' or '(' # we need to put `true` to the cmdarg stack # **before** `false` pushed by lexer # m [], n # ^ # Right here we have cmdarg [...0] because # lexer pushed it on '[' # We need to modify cmdarg stack to [...10] # # For all other cases (like `m n` or `m n, []`) we simply put 1 to the stack # and later lexer pushes corresponding bits on top of it. last_token = @last_token[0] lookahead = last_token == :tLBRACK || last_token == :tLPAREN_ARG if lookahead top = @lexer.cmdarg.pop @lexer.cmdarg.push(true) @lexer.cmdarg.push(top) else @lexer.cmdarg.push(true) end result end
# File lib/parser/ruby32.rb, line 9982 def _reduce_288(val, _values, result) # call_args can be followed by tLBRACE_ARG (that does cmdarg.push(0) in the lexer) # but the push must be done after cmdarg.pop() in the parser. # So this code does cmdarg.pop() to pop 0 pushed by tLBRACE_ARG, # cmdarg.pop() to pop 1 pushed by command_args, # and cmdarg.push(0) to restore back the flag set by tLBRACE_ARG. last_token = @last_token[0] lookahead = last_token == :tLBRACE_ARG if lookahead top = @lexer.cmdarg.pop @lexer.cmdarg.pop @lexer.cmdarg.push(top) else @lexer.cmdarg.pop end result = val[1] result end
# File lib/parser/ruby32.rb, line 10003 def _reduce_289(val, _values, result) result = @builder.block_pass(val[0], val[1]) result end
# File lib/parser/ruby32.rb, line 8601 def _reduce_29(val, _values, result) rescue_body = @builder.rescue_body(val[1], nil, nil, nil, nil, val[2]) result = @builder.begin_body(val[0], [ rescue_body ]) result end
# File lib/parser/ruby32.rb, line 10009 def _reduce_290(val, _values, result) if !@static_env.declared_anonymous_blockarg? diagnostic :error, :no_anonymous_blockarg, nil, val[0] end result = @builder.block_pass(val[0], nil) result end
# File lib/parser/ruby32.rb, line 10019 def _reduce_291(val, _values, result) result = [ val[1] ] result end
# File lib/parser/ruby32.rb, line 10025 def _reduce_292(val, _values, result) result = [] result end
# File lib/parser/ruby32.rb, line 10031 def _reduce_293(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 10037 def _reduce_294(val, _values, result) result = [ @builder.splat(val[0], val[1]) ] result end
# File lib/parser/ruby32.rb, line 10043 def _reduce_295(val, _values, result) if !@static_env.declared_anonymous_restarg? diagnostic :error, :no_anonymous_restarg, nil, val[0] end result = [ @builder.forwarded_restarg(val[0]) ] result end
# File lib/parser/ruby32.rb, line 10053 def _reduce_296(val, _values, result) result = val[0] << val[2] result end
# File lib/parser/ruby32.rb, line 10059 def _reduce_297(val, _values, result) result = val[0] << @builder.splat(val[2], val[3]) result end
# File lib/parser/ruby32.rb, line 10065 def _reduce_298(val, _values, result) if !@static_env.declared_anonymous_restarg? diagnostic :error, :no_anonymous_restarg, nil, val[2] end result = val[0] << @builder.forwarded_restarg(val[2]) result end
# File lib/parser/ruby32.rb, line 10075 def _reduce_299(val, _values, result) result = @builder.array(nil, val[0], nil) result end
# File lib/parser/ruby32.rb, line 8436 def _reduce_3(val, _values, result) result = @builder.compstmt(val[0]) result end
# File lib/parser/ruby32.rb, line 8611 def _reduce_30(val, _values, result) result = @builder.postexe(val[0], val[1], val[2], val[3]) result end
reduce 300 omitted
# File lib/parser/ruby32.rb, line 10083 def _reduce_301(val, _values, result) result = val[0] << val[2] result end
# File lib/parser/ruby32.rb, line 10089 def _reduce_302(val, _values, result) result = val[0] << @builder.splat(val[2], val[3]) result end
# File lib/parser/ruby32.rb, line 10095 def _reduce_303(val, _values, result) result = [ @builder.splat(val[0], val[1]) ] result end
reduce 313 omitted
# File lib/parser/ruby32.rb, line 10121 def _reduce_314(val, _values, result) result = @builder.call_method(nil, nil, val[0]) result end
# File lib/parser/ruby32.rb, line 10127 def _reduce_315(val, _values, result) @lexer.cmdarg.push(false) result end
# File lib/parser/ruby32.rb, line 10133 def _reduce_316(val, _values, result) @lexer.cmdarg.pop result = @builder.begin_keyword(val[0], val[2], val[3]) result end
# File lib/parser/ruby32.rb, line 10141 def _reduce_317(val, _values, result) @lexer.state = :expr_endarg result end
# File lib/parser/ruby32.rb, line 10147 def _reduce_318(val, _values, result) result = @builder.begin(val[0], val[1], val[3]) result end
# File lib/parser/ruby32.rb, line 10153 def _reduce_319(val, _values, result) @lexer.state = :expr_endarg result end
reduce 31 omitted
# File lib/parser/ruby32.rb, line 8619 def _reduce_32(val, _values, result) result = @builder.multi_assign(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 10159 def _reduce_320(val, _values, result) result = @builder.begin(val[0], nil, val[3]) result end
# File lib/parser/ruby32.rb, line 10165 def _reduce_321(val, _values, result) result = @builder.begin(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 10171 def _reduce_322(val, _values, result) result = @builder.const_fetch(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 10177 def _reduce_323(val, _values, result) result = @builder.const_global(val[0], val[1]) result end
# File lib/parser/ruby32.rb, line 10183 def _reduce_324(val, _values, result) result = @builder.array(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 10189 def _reduce_325(val, _values, result) result = @builder.associate(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 10195 def _reduce_326(val, _values, result) result = @builder.keyword_cmd(:return, val[0]) result end
# File lib/parser/ruby32.rb, line 10201 def _reduce_327(val, _values, result) result = @builder.keyword_cmd(:yield, val[0], val[1], val[2], val[3]) result end
# File lib/parser/ruby32.rb, line 10207 def _reduce_328(val, _values, result) result = @builder.keyword_cmd(:yield, val[0], val[1], [], val[2]) result end
# File lib/parser/ruby32.rb, line 10213 def _reduce_329(val, _values, result) result = @builder.keyword_cmd(:yield, val[0]) result end
# File lib/parser/ruby32.rb, line 8625 def _reduce_33(val, _values, result) result = @builder.assign(val[0], val[1], @builder.array(nil, val[2], nil)) result end
# File lib/parser/ruby32.rb, line 10219 def _reduce_330(val, _values, result) @context.in_defined = true result end
# File lib/parser/ruby32.rb, line 10225 def _reduce_331(val, _values, result) @context.in_defined = false result = @builder.keyword_cmd(:defined?, val[0], val[2], [ val[4] ], val[5]) result end
# File lib/parser/ruby32.rb, line 10233 def _reduce_332(val, _values, result) result = @builder.not_op(val[0], val[1], val[2], val[3]) result end
# File lib/parser/ruby32.rb, line 10239 def _reduce_333(val, _values, result) result = @builder.not_op(val[0], val[1], nil, val[2]) result end
# File lib/parser/ruby32.rb, line 10245 def _reduce_334(val, _values, result) method_call = @builder.call_method(nil, nil, val[0]) begin_t, args, body, end_t = val[1] result = @builder.block(method_call, begin_t, args, body, end_t) result end
reduce 335 omitted
# File lib/parser/ruby32.rb, line 10257 def _reduce_336(val, _values, result) begin_t, args, body, end_t = val[1] result = @builder.block(val[0], begin_t, args, body, end_t) result end
reduce 337 omitted
# File lib/parser/ruby32.rb, line 10267 def _reduce_338(val, _values, result) else_t, else_ = val[4] result = @builder.condition(val[0], val[1], val[2], val[3], else_t, else_, val[5]) result end
# File lib/parser/ruby32.rb, line 10276 def _reduce_339(val, _values, result) else_t, else_ = val[4] result = @builder.condition(val[0], val[1], val[2], else_, else_t, val[3], val[5]) result end
# File lib/parser/ruby32.rb, line 8632 def _reduce_34(val, _values, result) rescue_body = @builder.rescue_body(val[3], nil, nil, nil, nil, val[4]) begin_body = @builder.begin_body(val[2], [ rescue_body ]) result = @builder.multi_assign(val[0], val[1], begin_body) result end
# File lib/parser/ruby32.rb, line 10285 def _reduce_340(val, _values, result) result = @builder.loop(:while, val[0], *val[1], val[2], val[3]) result end
# File lib/parser/ruby32.rb, line 10291 def _reduce_341(val, _values, result) result = @builder.loop(:until, val[0], *val[1], val[2], val[3]) result end
# File lib/parser/ruby32.rb, line 10297 def _reduce_342(val, _values, result) *when_bodies, (else_t, else_body) = *val[3] result = @builder.case(val[0], val[1], when_bodies, else_t, else_body, val[4]) result end
# File lib/parser/ruby32.rb, line 10307 def _reduce_343(val, _values, result) *when_bodies, (else_t, else_body) = *val[2] result = @builder.case(val[0], nil, when_bodies, else_t, else_body, val[3]) result end
# File lib/parser/ruby32.rb, line 10317 def _reduce_344(val, _values, result) *in_bodies, (else_t, else_body) = *val[3] result = @builder.case_match(val[0], val[1], in_bodies, else_t, else_body, val[4]) result end
# File lib/parser/ruby32.rb, line 10327 def _reduce_345(val, _values, result) result = @builder.for(val[0], val[1], val[2], *val[3], val[4], val[5]) result end
# File lib/parser/ruby32.rb, line 10333 def _reduce_346(val, _values, result) @context.in_class = true local_push result end
# File lib/parser/ruby32.rb, line 10340 def _reduce_347(val, _values, result) k_class, ctx = val[0] if @context.in_def diagnostic :error, :class_in_def, nil, k_class end lt_t, superclass = val[2] result = @builder.def_class(k_class, val[1], lt_t, superclass, val[4], val[5]) local_pop @context.in_class = ctx.in_class result end
# File lib/parser/ruby32.rb, line 10356 def _reduce_348(val, _values, result) @context.in_def = false @context.in_class = false local_push result end
# File lib/parser/ruby32.rb, line 10364 def _reduce_349(val, _values, result) k_class, ctx = val[0] result = @builder.def_sclass(k_class, val[1], val[2], val[5], val[6]) local_pop @context.in_def = ctx.in_def @context.in_class = ctx.in_class result end
# File lib/parser/ruby32.rb, line 8643 def _reduce_35(val, _values, result) result = @builder.multi_assign(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 10376 def _reduce_350(val, _values, result) @context.in_class = true local_push result end
# File lib/parser/ruby32.rb, line 10383 def _reduce_351(val, _values, result) k_mod, ctx = val[0] if @context.in_def diagnostic :error, :module_in_def, nil, k_mod end result = @builder.def_module(k_mod, val[1], val[3], val[4]) local_pop @context.in_class = ctx.in_class result end
# File lib/parser/ruby32.rb, line 10397 def _reduce_352(val, _values, result) def_t, (name_t, ctx) = val[0] result = @builder.def_method(def_t, name_t, val[1], val[2], val[3]) local_pop @current_arg_stack.pop @context.in_def = ctx.in_def result end
# File lib/parser/ruby32.rb, line 10409 def _reduce_353(val, _values, result) def_t, recv, dot_t, (name_t, ctx) = val[0] result = @builder.def_singleton(def_t, recv, dot_t, name_t, val[1], val[2], val[3]) local_pop @current_arg_stack.pop @context.in_def = ctx.in_def result end
# File lib/parser/ruby32.rb, line 10421 def _reduce_354(val, _values, result) result = @builder.keyword_cmd(:break, val[0]) result end
# File lib/parser/ruby32.rb, line 10427 def _reduce_355(val, _values, result) result = @builder.keyword_cmd(:next, val[0]) result end
# File lib/parser/ruby32.rb, line 10433 def _reduce_356(val, _values, result) result = @builder.keyword_cmd(:redo, val[0]) result end
# File lib/parser/ruby32.rb, line 10439 def _reduce_357(val, _values, result) result = @builder.keyword_cmd(:retry, val[0]) result end
reduce 358 omitted
# File lib/parser/ruby32.rb, line 10447 def _reduce_359(val, _values, result) result = [ val[0], @context.dup ] result end
# File lib/parser/ruby32.rb, line 10453 def _reduce_360(val, _values, result) result = [ val[0], @context.dup ] result end
# File lib/parser/ruby32.rb, line 10459 def _reduce_361(val, _values, result) result = val[0] @context.in_argdef = true result end
# File lib/parser/ruby32.rb, line 10466 def _reduce_362(val, _values, result) if @context.in_class && !@context.in_def && !(context.in_block || context.in_lambda) diagnostic :error, :invalid_return, nil, val[0] end result end
reduce 364 omitted
# File lib/parser/ruby32.rb, line 10478 def _reduce_365(val, _values, result) result = val[1] result end
reduce 368 omitted
# File lib/parser/ruby32.rb, line 10490 def _reduce_369(val, _values, result) else_t, else_ = val[4] result = [ val[0], @builder.condition(val[0], val[1], val[2], val[3], else_t, else_, nil), ] result end
reduce 36 omitted
# File lib/parser/ruby32.rb, line 8651 def _reduce_37(val, _values, result) result = @builder.assign(val[0], val[1], val[2]) result end
reduce 370 omitted
# File lib/parser/ruby32.rb, line 10503 def _reduce_371(val, _values, result) result = val result end
reduce 373 omitted
# File lib/parser/ruby32.rb, line 10513 def _reduce_374(val, _values, result) result = @builder.arg(val[0]) result end
# File lib/parser/ruby32.rb, line 10519 def _reduce_375(val, _values, result) result = @builder.multi_lhs(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 10525 def _reduce_376(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 10531 def _reduce_377(val, _values, result) result = val[0] << val[2] result end
reduce 378 omitted
# File lib/parser/ruby32.rb, line 10539 def _reduce_379(val, _values, result) result = val[0]. push(val[2]) result end
# File lib/parser/ruby32.rb, line 8657 def _reduce_38(val, _values, result) result = @builder.op_assign(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 10546 def _reduce_380(val, _values, result) result = val[0]. push(val[2]). concat(val[4]) result end
# File lib/parser/ruby32.rb, line 10554 def _reduce_381(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 10560 def _reduce_382(val, _values, result) result = [ val[0], *val[2] ] result end
# File lib/parser/ruby32.rb, line 10566 def _reduce_383(val, _values, result) result = @builder.restarg(val[0], val[1]) result end
# File lib/parser/ruby32.rb, line 10572 def _reduce_384(val, _values, result) result = @builder.restarg(val[0]) result end
reduce 386 omitted
# File lib/parser/ruby32.rb, line 10582 def _reduce_387(val, _values, result) @context.in_argdef = false result end
# File lib/parser/ruby32.rb, line 10588 def _reduce_388(val, _values, result) result = val[1] result end
# File lib/parser/ruby32.rb, line 10594 def _reduce_389(val, _values, result) result = val[0].concat(val[2]).concat(val[3]) result end
# File lib/parser/ruby32.rb, line 8663 def _reduce_39(val, _values, result) result = @builder.op_assign( @builder.index( val[0], val[1], val[2], val[3]), val[4], val[5]) result end
# File lib/parser/ruby32.rb, line 10600 def _reduce_390(val, _values, result) result = val[0].concat(val[1]) result end
# File lib/parser/ruby32.rb, line 10606 def _reduce_391(val, _values, result) result = val[0].concat(val[1]) result end
# File lib/parser/ruby32.rb, line 10612 def _reduce_392(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 10618 def _reduce_393(val, _values, result) result = val[1] result end
# File lib/parser/ruby32.rb, line 10624 def _reduce_394(val, _values, result) result = [] result end
reduce 395 omitted
# File lib/parser/ruby32.rb, line 10632 def _reduce_396(val, _values, result) result = val[0]. concat(val[2]). concat(val[4]). concat(val[5]) result end
# File lib/parser/ruby32.rb, line 10641 def _reduce_397(val, _values, result) result = val[0]. concat(val[2]). concat(val[4]). concat(val[6]). concat(val[7]) result end
# File lib/parser/ruby32.rb, line 10651 def _reduce_398(val, _values, result) result = val[0]. concat(val[2]). concat(val[3]) result end
# File lib/parser/ruby32.rb, line 10659 def _reduce_399(val, _values, result) result = val[0]. concat(val[2]). concat(val[4]). concat(val[5]) result end
# File lib/parser/ruby32.rb, line 8442 def _reduce_4(val, _values, result) result = [] result end
# File lib/parser/ruby32.rb, line 8672 def _reduce_40(val, _values, result) result = @builder.op_assign( @builder.call_method( val[0], val[1], val[2]), val[3], val[4]) result end
# File lib/parser/ruby32.rb, line 10668 def _reduce_400(val, _values, result) result = val[0]. concat(val[2]). concat(val[3]) result end
reduce 401 omitted
# File lib/parser/ruby32.rb, line 10678 def _reduce_402(val, _values, result) result = val[0]. concat(val[2]). concat(val[4]). concat(val[5]) result end
# File lib/parser/ruby32.rb, line 10687 def _reduce_403(val, _values, result) if val[1].empty? && val[0].size == 1 result = [@builder.procarg0(val[0][0])] else result = val[0].concat(val[1]) end result end
# File lib/parser/ruby32.rb, line 10697 def _reduce_404(val, _values, result) result = val[0]. concat(val[2]). concat(val[3]) result end
# File lib/parser/ruby32.rb, line 10705 def _reduce_405(val, _values, result) result = val[0]. concat(val[2]). concat(val[4]). concat(val[5]) result end
# File lib/parser/ruby32.rb, line 10714 def _reduce_406(val, _values, result) result = val[0]. concat(val[1]) result end
# File lib/parser/ruby32.rb, line 10721 def _reduce_407(val, _values, result) result = val[0]. concat(val[2]). concat(val[3]) result end
# File lib/parser/ruby32.rb, line 10729 def _reduce_408(val, _values, result) result = val[0]. concat(val[1]) result end
# File lib/parser/ruby32.rb, line 10736 def _reduce_409(val, _values, result) result = val[0]. concat(val[2]). concat(val[3]) result end
# File lib/parser/ruby32.rb, line 8681 def _reduce_41(val, _values, result) result = @builder.op_assign( @builder.call_method( val[0], val[1], val[2]), val[3], val[4]) result end
reduce 410 omitted
# File lib/parser/ruby32.rb, line 10746 def _reduce_411(val, _values, result) result = @builder.args(nil, [], nil) result end
# File lib/parser/ruby32.rb, line 10752 def _reduce_412(val, _values, result) @lexer.state = :expr_value result end
# File lib/parser/ruby32.rb, line 10758 def _reduce_413(val, _values, result) @max_numparam_stack.has_ordinary_params! @current_arg_stack.set(nil) @context.in_argdef = false result = @builder.args(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 10767 def _reduce_414(val, _values, result) @max_numparam_stack.has_ordinary_params! @current_arg_stack.set(nil) @context.in_argdef = false result = @builder.args(val[0], val[1].concat(val[2]), val[3]) result end
# File lib/parser/ruby32.rb, line 10776 def _reduce_415(val, _values, result) result = [] result end
# File lib/parser/ruby32.rb, line 10782 def _reduce_416(val, _values, result) result = val[2] result end
# File lib/parser/ruby32.rb, line 10788 def _reduce_417(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 10794 def _reduce_418(val, _values, result) result = val[0] << val[2] result end
# File lib/parser/ruby32.rb, line 10800 def _reduce_419(val, _values, result) @static_env.declare val[0][0] result = @builder.shadowarg(val[0]) result end
# File lib/parser/ruby32.rb, line 8690 def _reduce_42(val, _values, result) const = @builder.const_op_assignable( @builder.const_fetch(val[0], val[1], val[2])) result = @builder.op_assign(const, val[3], val[4]) result end
reduce 420 omitted
# File lib/parser/ruby32.rb, line 10809 def _reduce_421(val, _values, result) @static_env.extend_dynamic @max_numparam_stack.push(static: false) result = @context.dup @context.in_lambda = true result end
# File lib/parser/ruby32.rb, line 10818 def _reduce_422(val, _values, result) @lexer.cmdarg.push(false) result end
# File lib/parser/ruby32.rb, line 10824 def _reduce_423(val, _values, result) lambda_call = @builder.call_lambda(val[0]) args = @max_numparam_stack.has_numparams? ? @builder.numargs(@max_numparam_stack.top) : val[2] begin_t, body, end_t = val[4] @max_numparam_stack.pop @static_env.unextend @lexer.cmdarg.pop @context.in_lambda = val[1].in_lambda result = @builder.block(lambda_call, begin_t, args, body, end_t) result end
# File lib/parser/ruby32.rb, line 10840 def _reduce_424(val, _values, result) @context.in_argdef = false @max_numparam_stack.has_ordinary_params! result = @builder.args(val[0], val[1].concat(val[2]), val[3]) result end
# File lib/parser/ruby32.rb, line 10848 def _reduce_425(val, _values, result) @context.in_argdef = false if val[0].any? @max_numparam_stack.has_ordinary_params! end result = @builder.args(nil, val[0], nil) result end
# File lib/parser/ruby32.rb, line 10858 def _reduce_426(val, _values, result) result = @context.dup @context.in_lambda = true result end
# File lib/parser/ruby32.rb, line 10865 def _reduce_427(val, _values, result) @context.in_lambda = val[1].in_lambda result = [ val[0], val[2], val[3] ] result end
# File lib/parser/ruby32.rb, line 10872 def _reduce_428(val, _values, result) result = @context.dup @context.in_lambda = true result end
# File lib/parser/ruby32.rb, line 10879 def _reduce_429(val, _values, result) @context.in_lambda = val[1].in_lambda result = [ val[0], val[2], val[3] ] result end
# File lib/parser/ruby32.rb, line 8698 def _reduce_43(val, _values, result) result = @builder.op_assign( @builder.call_method( val[0], val[1], val[2]), val[3], val[4]) result end
# File lib/parser/ruby32.rb, line 10886 def _reduce_430(val, _values, result) result = @context.dup @context.in_block = true result end
# File lib/parser/ruby32.rb, line 10893 def _reduce_431(val, _values, result) @context.in_block = val[1].in_block result = [ val[0], *val[2], val[3] ] result end
# File lib/parser/ruby32.rb, line 10900 def _reduce_432(val, _values, result) begin_t, block_args, body, end_t = val[1] result = @builder.block(val[0], begin_t, block_args, body, end_t) result end
# File lib/parser/ruby32.rb, line 10908 def _reduce_433(val, _values, result) lparen_t, args, rparen_t = val[3] result = @builder.call_method(val[0], val[1], val[2], lparen_t, args, rparen_t) result end
# File lib/parser/ruby32.rb, line 10916 def _reduce_434(val, _values, result) lparen_t, args, rparen_t = val[3] method_call = @builder.call_method(val[0], val[1], val[2], lparen_t, args, rparen_t) begin_t, args, body, end_t = val[4] result = @builder.block(method_call, begin_t, args, body, end_t) result end
# File lib/parser/ruby32.rb, line 10928 def _reduce_435(val, _values, result) method_call = @builder.call_method(val[0], val[1], val[2], nil, val[3], nil) begin_t, args, body, end_t = val[4] result = @builder.block(method_call, begin_t, args, body, end_t) result end
# File lib/parser/ruby32.rb, line 10939 def _reduce_436(val, _values, result) lparen_t, args, rparen_t = val[1] result = @builder.call_method(nil, nil, val[0], lparen_t, args, rparen_t) result end
# File lib/parser/ruby32.rb, line 10947 def _reduce_437(val, _values, result) lparen_t, args, rparen_t = val[3] result = @builder.call_method(val[0], val[1], val[2], lparen_t, args, rparen_t) result end
# File lib/parser/ruby32.rb, line 10955 def _reduce_438(val, _values, result) lparen_t, args, rparen_t = val[3] result = @builder.call_method(val[0], val[1], val[2], lparen_t, args, rparen_t) result end
# File lib/parser/ruby32.rb, line 10963 def _reduce_439(val, _values, result) result = @builder.call_method(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 8707 def _reduce_44(val, _values, result) def_t, (name_t, ctx) = val[0] endless_method_name(name_t) result = @builder.def_endless_method(def_t, name_t, val[1], val[2], val[3]) local_pop @current_arg_stack.pop @context.in_def = ctx.in_def result end
# File lib/parser/ruby32.rb, line 10969 def _reduce_440(val, _values, result) lparen_t, args, rparen_t = val[2] result = @builder.call_method(val[0], val[1], nil, lparen_t, args, rparen_t) result end
# File lib/parser/ruby32.rb, line 10977 def _reduce_441(val, _values, result) lparen_t, args, rparen_t = val[2] result = @builder.call_method(val[0], val[1], nil, lparen_t, args, rparen_t) result end
# File lib/parser/ruby32.rb, line 10985 def _reduce_442(val, _values, result) lparen_t, args, rparen_t = val[1] result = @builder.keyword_cmd(:super, val[0], lparen_t, args, rparen_t) result end
# File lib/parser/ruby32.rb, line 10993 def _reduce_443(val, _values, result) result = @builder.keyword_cmd(:zsuper, val[0]) result end
# File lib/parser/ruby32.rb, line 10999 def _reduce_444(val, _values, result) result = @builder.index(val[0], val[1], val[2], val[3]) result end
# File lib/parser/ruby32.rb, line 11005 def _reduce_445(val, _values, result) result = @context.dup @context.in_block = true result end
# File lib/parser/ruby32.rb, line 11012 def _reduce_446(val, _values, result) @context.in_block = val[1].in_block result = [ val[0], *val[2], val[3] ] result end
# File lib/parser/ruby32.rb, line 11019 def _reduce_447(val, _values, result) result = @context.dup @context.in_block = true result end
# File lib/parser/ruby32.rb, line 11026 def _reduce_448(val, _values, result) @context.in_block = val[1].in_block result = [ val[0], *val[2], val[3] ] result end
# File lib/parser/ruby32.rb, line 11033 def _reduce_449(val, _values, result) @static_env.extend_dynamic @max_numparam_stack.push(static: false) result end
# File lib/parser/ruby32.rb, line 8721 def _reduce_45(val, _values, result) def_t, (name_t, ctx) = val[0] endless_method_name(name_t) rescue_body = @builder.rescue_body(val[4], nil, nil, nil, nil, val[5]) method_body = @builder.begin_body(val[3], [ rescue_body ]) result = @builder.def_endless_method(def_t, name_t, val[1], val[2], method_body) local_pop @current_arg_stack.pop @context.in_def = ctx.in_def result end
# File lib/parser/ruby32.rb, line 11040 def _reduce_450(val, _values, result) args = @max_numparam_stack.has_numparams? ? @builder.numargs(@max_numparam_stack.top) : val[1] result = [ args, val[2] ] @max_numparam_stack.pop @static_env.unextend result end
# File lib/parser/ruby32.rb, line 11050 def _reduce_451(val, _values, result) @static_env.extend_dynamic @max_numparam_stack.push(static: false) result end
# File lib/parser/ruby32.rb, line 11057 def _reduce_452(val, _values, result) @lexer.cmdarg.push(false) result end
# File lib/parser/ruby32.rb, line 11063 def _reduce_453(val, _values, result) args = @max_numparam_stack.has_numparams? ? @builder.numargs(@max_numparam_stack.top) : val[2] result = [ args, val[3] ] @max_numparam_stack.pop @static_env.unextend @lexer.cmdarg.pop result end
# File lib/parser/ruby32.rb, line 11074 def _reduce_454(val, _values, result) result = [ @builder.when(val[0], val[1], val[2], val[3]), *val[4] ] result end
# File lib/parser/ruby32.rb, line 11081 def _reduce_455(val, _values, result) result = [ val[0] ] result end
reduce 456 omitted
# File lib/parser/ruby32.rb, line 11089 def _reduce_457(val, _values, result) @lexer.state = :expr_beg @lexer.command_start = false @pattern_variables.push @pattern_hash_keys.push result = @context.in_kwarg @context.in_kwarg = true result end
# File lib/parser/ruby32.rb, line 11101 def _reduce_458(val, _values, result) @pattern_variables.pop @pattern_hash_keys.pop @context.in_kwarg = val[1] result end
# File lib/parser/ruby32.rb, line 11109 def _reduce_459(val, _values, result) result = [ @builder.in_pattern(val[0], *val[2], val[3], val[5]), *val[6] ] result end
# File lib/parser/ruby32.rb, line 8741 def _reduce_46(val, _values, result) def_t, recv, dot_t, (name_t, ctx) = val[0] endless_method_name(name_t) result = @builder.def_endless_singleton(def_t, recv, dot_t, name_t, val[1], val[2], val[3]) local_pop @current_arg_stack.pop @context.in_def = ctx.in_def result end
# File lib/parser/ruby32.rb, line 11116 def _reduce_460(val, _values, result) result = [ val[0] ] result end
reduce 461 omitted
# File lib/parser/ruby32.rb, line 11124 def _reduce_462(val, _values, result) result = [ val[0], nil ] result end
# File lib/parser/ruby32.rb, line 11130 def _reduce_463(val, _values, result) result = [ val[0], @builder.if_guard(val[1], val[2]) ] result end
# File lib/parser/ruby32.rb, line 11136 def _reduce_464(val, _values, result) result = [ val[0], @builder.unless_guard(val[1], val[2]) ] result end
reduce 465 omitted
# File lib/parser/ruby32.rb, line 11144 def _reduce_466(val, _values, result) # array patterns that end with comma # like 1, 2, # must be emitted as `array_pattern_with_tail` item = @builder.match_with_trailing_comma(val[0], val[1]) result = @builder.array_pattern(nil, [ item ], nil) result end
# File lib/parser/ruby32.rb, line 11154 def _reduce_467(val, _values, result) result = @builder.array_pattern(nil, [val[0]].concat(val[2]), nil) result end
# File lib/parser/ruby32.rb, line 11160 def _reduce_468(val, _values, result) result = @builder.find_pattern(nil, val[0], nil) result end
# File lib/parser/ruby32.rb, line 11166 def _reduce_469(val, _values, result) result = @builder.array_pattern(nil, val[0], nil) result end
# File lib/parser/ruby32.rb, line 8755 def _reduce_47(val, _values, result) def_t, recv, dot_t, (name_t, ctx) = val[0] endless_method_name(name_t) rescue_body = @builder.rescue_body(val[4], nil, nil, nil, nil, val[5]) method_body = @builder.begin_body(val[3], [ rescue_body ]) result = @builder.def_endless_singleton(def_t, recv, dot_t, name_t, val[1], val[2], method_body) local_pop @current_arg_stack.pop @context.in_def = ctx.in_def result end
# File lib/parser/ruby32.rb, line 11172 def _reduce_470(val, _values, result) result = @builder.hash_pattern(nil, val[0], nil) result end
reduce 471 omitted
# File lib/parser/ruby32.rb, line 11180 def _reduce_472(val, _values, result) result = @builder.match_as(val[0], val[1], val[2]) result end
reduce 473 omitted
# File lib/parser/ruby32.rb, line 11188 def _reduce_474(val, _values, result) result = @builder.match_alt(val[0], val[1], val[2]) result end
reduce 475 omitted
# File lib/parser/ruby32.rb, line 11196 def _reduce_476(val, _values, result) result = val[0] @pattern_hash_keys.push result end
# File lib/parser/ruby32.rb, line 11203 def _reduce_477(val, _values, result) result = val[0] @pattern_hash_keys.push result end
# File lib/parser/ruby32.rb, line 8775 def _reduce_48(val, _values, result) @builder.op_assign(val[0], val[1], val[2]) result end
reduce 479 omitted
# File lib/parser/ruby32.rb, line 11214 def _reduce_480(val, _values, result) @pattern_hash_keys.pop pattern = @builder.array_pattern(nil, val[2], nil) result = @builder.const_pattern(val[0], val[1], pattern, val[3]) result end
# File lib/parser/ruby32.rb, line 11222 def _reduce_481(val, _values, result) @pattern_hash_keys.pop pattern = @builder.find_pattern(nil, val[2], nil) result = @builder.const_pattern(val[0], val[1], pattern, val[3]) result end
# File lib/parser/ruby32.rb, line 11230 def _reduce_482(val, _values, result) @pattern_hash_keys.pop pattern = @builder.hash_pattern(nil, val[2], nil) result = @builder.const_pattern(val[0], val[1], pattern, val[3]) result end
# File lib/parser/ruby32.rb, line 11238 def _reduce_483(val, _values, result) pattern = @builder.array_pattern(val[1], nil, val[2]) result = @builder.const_pattern(val[0], val[1], pattern, val[2]) result end
# File lib/parser/ruby32.rb, line 11245 def _reduce_484(val, _values, result) @pattern_hash_keys.pop pattern = @builder.array_pattern(nil, val[2], nil) result = @builder.const_pattern(val[0], val[1], pattern, val[3]) result end
# File lib/parser/ruby32.rb, line 11253 def _reduce_485(val, _values, result) @pattern_hash_keys.pop pattern = @builder.find_pattern(nil, val[2], nil) result = @builder.const_pattern(val[0], val[1], pattern, val[3]) result end
# File lib/parser/ruby32.rb, line 11261 def _reduce_486(val, _values, result) @pattern_hash_keys.pop pattern = @builder.hash_pattern(nil, val[2], nil) result = @builder.const_pattern(val[0], val[1], pattern, val[3]) result end
# File lib/parser/ruby32.rb, line 11269 def _reduce_487(val, _values, result) pattern = @builder.array_pattern(val[1], nil, val[2]) result = @builder.const_pattern(val[0], val[1], pattern, val[2]) result end
# File lib/parser/ruby32.rb, line 11276 def _reduce_488(val, _values, result) result = @builder.array_pattern(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 11282 def _reduce_489(val, _values, result) result = @builder.find_pattern(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 11288 def _reduce_490(val, _values, result) result = @builder.array_pattern(val[0], [], val[1]) result end
# File lib/parser/ruby32.rb, line 11294 def _reduce_491(val, _values, result) @pattern_hash_keys.push result = @context.in_kwarg @context.in_kwarg = false result end
# File lib/parser/ruby32.rb, line 11302 def _reduce_492(val, _values, result) @pattern_hash_keys.pop @context.in_kwarg = val[1] result = @builder.hash_pattern(val[0], val[2], val[3]) result end
# File lib/parser/ruby32.rb, line 11310 def _reduce_493(val, _values, result) result = @builder.hash_pattern(val[0], [], val[1]) result end
# File lib/parser/ruby32.rb, line 11316 def _reduce_494(val, _values, result) @pattern_hash_keys.push result end
# File lib/parser/ruby32.rb, line 11322 def _reduce_495(val, _values, result) @pattern_hash_keys.pop result = @builder.begin(val[0], val[2], val[3]) result end
# File lib/parser/ruby32.rb, line 11329 def _reduce_496(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 11335 def _reduce_497(val, _values, result) result = val[0] result end
# File lib/parser/ruby32.rb, line 11341 def _reduce_498(val, _values, result) result = [ *val[0], val[1] ] result end
# File lib/parser/ruby32.rb, line 11347 def _reduce_499(val, _values, result) result = [ *val[0], val[1] ] result end
# File lib/parser/ruby32.rb, line 8448 def _reduce_5(val, _values, result) result = [ val[0] ] result end
reduce 49 omitted
# File lib/parser/ruby32.rb, line 8783 def _reduce_50(val, _values, result) rescue_body = @builder.rescue_body(val[1], nil, nil, nil, nil, val[2]) result = @builder.begin_body(val[0], [ rescue_body ]) result end
# File lib/parser/ruby32.rb, line 11353 def _reduce_500(val, _values, result) result = [ *val[0], val[1], *val[3] ] result end
reduce 501 omitted
# File lib/parser/ruby32.rb, line 11361 def _reduce_502(val, _values, result) # array patterns that end with comma # like [1, 2,] # must be emitted as `array_pattern_with_tail` item = @builder.match_with_trailing_comma(val[0], val[1]) result = [ item ] result end
# File lib/parser/ruby32.rb, line 11371 def _reduce_503(val, _values, result) # array patterns that end with comma # like [1, 2,] # must be emitted as `array_pattern_with_tail` last_item = @builder.match_with_trailing_comma(val[1], val[2]) result = [ *val[0], last_item ] result end
# File lib/parser/ruby32.rb, line 11381 def _reduce_504(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 11387 def _reduce_505(val, _values, result) result = [ val[0], *val[2] ] result end
# File lib/parser/ruby32.rb, line 11393 def _reduce_506(val, _values, result) result = [ val[0], *val[2], val[4] ] result end
# File lib/parser/ruby32.rb, line 11399 def _reduce_507(val, _values, result) result = @builder.match_rest(val[0], val[1]) result end
# File lib/parser/ruby32.rb, line 11405 def _reduce_508(val, _values, result) result = @builder.match_rest(val[0]) result end
# File lib/parser/ruby32.rb, line 11411 def _reduce_509(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 11417 def _reduce_510(val, _values, result) result = [ *val[0], val[2] ] result end
reduce 511 omitted
# File lib/parser/ruby32.rb, line 11425 def _reduce_512(val, _values, result) result = [ *val[0], *val[2] ] result end
# File lib/parser/ruby32.rb, line 11431 def _reduce_513(val, _values, result) result = val[0] result end
# File lib/parser/ruby32.rb, line 11437 def _reduce_514(val, _values, result) result = val[0] result end
# File lib/parser/ruby32.rb, line 11443 def _reduce_515(val, _values, result) result = val[0] result end
# File lib/parser/ruby32.rb, line 11449 def _reduce_516(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 11455 def _reduce_517(val, _values, result) result = [ *val[0], val[2] ] result end
# File lib/parser/ruby32.rb, line 11461 def _reduce_518(val, _values, result) result = @builder.match_pair(*val[0], val[1]) result end
# File lib/parser/ruby32.rb, line 11467 def _reduce_519(val, _values, result) result = @builder.match_label(*val[0]) result end
# File lib/parser/ruby32.rb, line 11473 def _reduce_520(val, _values, result) result = [:label, val[0]] result end
# File lib/parser/ruby32.rb, line 11479 def _reduce_521(val, _values, result) result = [:quoted, [val[0], val[1], val[2]]] result end
# File lib/parser/ruby32.rb, line 11485 def _reduce_522(val, _values, result) result = [ @builder.match_rest(val[0], val[1]) ] result end
# File lib/parser/ruby32.rb, line 11491 def _reduce_523(val, _values, result) result = [ @builder.match_rest(val[0], nil) ] result end
# File lib/parser/ruby32.rb, line 11497 def _reduce_524(val, _values, result) result = val result end
reduce 525 omitted
# File lib/parser/ruby32.rb, line 11505 def _reduce_526(val, _values, result) result = [ @builder.match_nil_pattern(val[0][0], val[0][1]) ] result end
reduce 527 omitted
# File lib/parser/ruby32.rb, line 11513 def _reduce_528(val, _values, result) result = @builder.range_inclusive(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 11519 def _reduce_529(val, _values, result) result = @builder.range_exclusive(val[0], val[1], val[2]) result end
reduce 52 omitted
# File lib/parser/ruby32.rb, line 8797 def _reduce_53(val, _values, result) result = @builder.logical_op(:and, val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 11525 def _reduce_530(val, _values, result) result = @builder.range_inclusive(val[0], val[1], nil) result end
# File lib/parser/ruby32.rb, line 11531 def _reduce_531(val, _values, result) result = @builder.range_exclusive(val[0], val[1], nil) result end
reduce 534 omitted
# File lib/parser/ruby32.rb, line 11543 def _reduce_535(val, _values, result) result = @builder.range_inclusive(nil, val[0], val[1]) result end
# File lib/parser/ruby32.rb, line 11549 def _reduce_536(val, _values, result) result = @builder.range_exclusive(nil, val[0], val[1]) result end
# File lib/parser/ruby32.rb, line 8803 def _reduce_54(val, _values, result) result = @builder.logical_op(:or, val[0], val[1], val[2]) result end
reduce 544 omitted
# File lib/parser/ruby32.rb, line 11571 def _reduce_545(val, _values, result) result = @builder.accessible(val[0]) result end
reduce 546 omitted
# File lib/parser/ruby32.rb, line 11579 def _reduce_547(val, _values, result) result = @builder.assignable(@builder.match_var(val[0])) result end
# File lib/parser/ruby32.rb, line 11585 def _reduce_548(val, _values, result) name = val[1][0] unless static_env.declared?(name) diagnostic :error, :undefined_lvar, { :name => name }, val[1] end lvar = @builder.accessible(@builder.ident(val[1])) result = @builder.pin(val[0], lvar) result end
# File lib/parser/ruby32.rb, line 11597 def _reduce_549(val, _values, result) non_lvar = @builder.accessible(val[1]) result = @builder.pin(val[0], non_lvar) result end
# File lib/parser/ruby32.rb, line 8809 def _reduce_55(val, _values, result) result = @builder.not_op(val[0], nil, val[2], nil) result end
# File lib/parser/ruby32.rb, line 11604 def _reduce_550(val, _values, result) expr = @builder.begin(val[1], val[2], val[3]) result = @builder.pin(val[0], expr) result end
# File lib/parser/ruby32.rb, line 11611 def _reduce_551(val, _values, result) result = @builder.const_global(val[0], val[1]) result end
# File lib/parser/ruby32.rb, line 11617 def _reduce_552(val, _values, result) result = @builder.const_fetch(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 11623 def _reduce_553(val, _values, result) result = @builder.const(val[0]) result end
# File lib/parser/ruby32.rb, line 11629 def _reduce_554(val, _values, result) assoc_t, exc_var = val[2] if val[1] exc_list = @builder.array(nil, val[1], nil) end result = [ @builder.rescue_body(val[0], exc_list, assoc_t, exc_var, val[3], val[4]), *val[5] ] result end
# File lib/parser/ruby32.rb, line 11644 def _reduce_555(val, _values, result) result = [] result end
# File lib/parser/ruby32.rb, line 11650 def _reduce_556(val, _values, result) result = [ val[0] ] result end
reduce 558 omitted
# File lib/parser/ruby32.rb, line 11660 def _reduce_559(val, _values, result) result = [ val[0], val[1] ] result end
# File lib/parser/ruby32.rb, line 8815 def _reduce_56(val, _values, result) result = @builder.not_op(val[0], nil, val[1], nil) result end
reduce 560 omitted
# File lib/parser/ruby32.rb, line 11668 def _reduce_561(val, _values, result) result = [ val[0], val[1] ] result end
reduce 564 omitted
# File lib/parser/ruby32.rb, line 11680 def _reduce_565(val, _values, result) result = @builder.string_compose(nil, val[0], nil) result end
# File lib/parser/ruby32.rb, line 11686 def _reduce_566(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 11692 def _reduce_567(val, _values, result) result = val[0] << val[1] result end
# File lib/parser/ruby32.rb, line 11698 def _reduce_568(val, _values, result) string = @builder.string_compose(val[0], val[1], val[2]) result = @builder.dedent_string(string, @lexer.dedent_level) result end
# File lib/parser/ruby32.rb, line 11705 def _reduce_569(val, _values, result) string = @builder.string(val[0]) result = @builder.dedent_string(string, @lexer.dedent_level) result end
# File lib/parser/ruby32.rb, line 8821 def _reduce_57(val, _values, result) @lexer.state = :expr_beg @lexer.command_start = false @pattern_variables.push @pattern_hash_keys.push result = @context.in_kwarg @context.in_kwarg = true result end
# File lib/parser/ruby32.rb, line 11712 def _reduce_570(val, _values, result) result = @builder.character(val[0]) result end
# File lib/parser/ruby32.rb, line 11718 def _reduce_571(val, _values, result) string = @builder.xstring_compose(val[0], val[1], val[2]) result = @builder.dedent_string(string, @lexer.dedent_level) result end
# File lib/parser/ruby32.rb, line 11725 def _reduce_572(val, _values, result) opts = @builder.regexp_options(val[3]) result = @builder.regexp_compose(val[0], val[1], val[2], opts) result end
# File lib/parser/ruby32.rb, line 11732 def _reduce_573(val, _values, result) result = @builder.words_compose(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 11738 def _reduce_574(val, _values, result) result = [] result end
# File lib/parser/ruby32.rb, line 11744 def _reduce_575(val, _values, result) result = val[0] << @builder.word(val[1]) result end
# File lib/parser/ruby32.rb, line 11750 def _reduce_576(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 11756 def _reduce_577(val, _values, result) result = val[0] << val[1] result end
# File lib/parser/ruby32.rb, line 11762 def _reduce_578(val, _values, result) result = @builder.symbols_compose(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 11768 def _reduce_579(val, _values, result) result = [] result end
# File lib/parser/ruby32.rb, line 8833 def _reduce_58(val, _values, result) @pattern_variables.pop @pattern_hash_keys.pop @context.in_kwarg = val[2] result = @builder.match_pattern(val[0], val[1], val[3]) result end
# File lib/parser/ruby32.rb, line 11774 def _reduce_580(val, _values, result) result = val[0] << @builder.word(val[1]) result end
# File lib/parser/ruby32.rb, line 11780 def _reduce_581(val, _values, result) result = @builder.words_compose(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 11786 def _reduce_582(val, _values, result) result = @builder.symbols_compose(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 11792 def _reduce_583(val, _values, result) result = [] result end
# File lib/parser/ruby32.rb, line 11798 def _reduce_584(val, _values, result) result = val[0] << @builder.string_internal(val[1]) result end
# File lib/parser/ruby32.rb, line 11804 def _reduce_585(val, _values, result) result = [] result end
# File lib/parser/ruby32.rb, line 11810 def _reduce_586(val, _values, result) result = val[0] << @builder.symbol_internal(val[1]) result end
# File lib/parser/ruby32.rb, line 11816 def _reduce_587(val, _values, result) result = [] result end
# File lib/parser/ruby32.rb, line 11822 def _reduce_588(val, _values, result) result = val[0] << val[1] result end
# File lib/parser/ruby32.rb, line 11828 def _reduce_589(val, _values, result) result = [] result end
# File lib/parser/ruby32.rb, line 8842 def _reduce_59(val, _values, result) @lexer.state = :expr_beg @lexer.command_start = false @pattern_variables.push @pattern_hash_keys.push result = @context.in_kwarg @context.in_kwarg = true result end
# File lib/parser/ruby32.rb, line 11834 def _reduce_590(val, _values, result) result = val[0] << val[1] result end
# File lib/parser/ruby32.rb, line 11840 def _reduce_591(val, _values, result) result = [] result end
# File lib/parser/ruby32.rb, line 11846 def _reduce_592(val, _values, result) result = val[0] << val[1] result end
# File lib/parser/ruby32.rb, line 11852 def _reduce_593(val, _values, result) result = @builder.string_internal(val[0]) result end
# File lib/parser/ruby32.rb, line 11858 def _reduce_594(val, _values, result) result = val[1] result end
# File lib/parser/ruby32.rb, line 11864 def _reduce_595(val, _values, result) @lexer.cmdarg.push(false) @lexer.cond.push(false) result end
# File lib/parser/ruby32.rb, line 11871 def _reduce_596(val, _values, result) @lexer.cmdarg.pop @lexer.cond.pop result = @builder.begin(val[0], val[2], val[3]) result end
# File lib/parser/ruby32.rb, line 11880 def _reduce_597(val, _values, result) result = @builder.gvar(val[0]) result end
# File lib/parser/ruby32.rb, line 11886 def _reduce_598(val, _values, result) result = @builder.ivar(val[0]) result end
# File lib/parser/ruby32.rb, line 11892 def _reduce_599(val, _values, result) result = @builder.cvar(val[0]) result end
# File lib/parser/ruby32.rb, line 8454 def _reduce_6(val, _values, result) result = val[0] << val[2] result end
# File lib/parser/ruby32.rb, line 8854 def _reduce_60(val, _values, result) @pattern_variables.pop @pattern_hash_keys.pop @context.in_kwarg = val[2] result = @builder.match_pattern_p(val[0], val[1], val[3]) result end
reduce 602 omitted
# File lib/parser/ruby32.rb, line 11904 def _reduce_603(val, _values, result) @lexer.state = :expr_end result = @builder.symbol(val[0]) result end
# File lib/parser/ruby32.rb, line 11911 def _reduce_604(val, _values, result) @lexer.state = :expr_end result = @builder.symbol_compose(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 11918 def _reduce_605(val, _values, result) result = val[0] result end
# File lib/parser/ruby32.rb, line 11924 def _reduce_606(val, _values, result) if @builder.respond_to? :negate # AST builder interface compatibility result = @builder.negate(val[0], val[1]) else result = @builder.unary_num(val[0], val[1]) end result end
# File lib/parser/ruby32.rb, line 11935 def _reduce_607(val, _values, result) @lexer.state = :expr_end result = @builder.integer(val[0]) result end
# File lib/parser/ruby32.rb, line 11942 def _reduce_608(val, _values, result) @lexer.state = :expr_end result = @builder.float(val[0]) result end
# File lib/parser/ruby32.rb, line 11949 def _reduce_609(val, _values, result) @lexer.state = :expr_end result = @builder.rational(val[0]) result end
# File lib/parser/ruby32.rb, line 11956 def _reduce_610(val, _values, result) @lexer.state = :expr_end result = @builder.complex(val[0]) result end
# File lib/parser/ruby32.rb, line 11963 def _reduce_611(val, _values, result) result = @builder.ivar(val[0]) result end
# File lib/parser/ruby32.rb, line 11969 def _reduce_612(val, _values, result) result = @builder.gvar(val[0]) result end
# File lib/parser/ruby32.rb, line 11975 def _reduce_613(val, _values, result) result = @builder.cvar(val[0]) result end
# File lib/parser/ruby32.rb, line 11981 def _reduce_614(val, _values, result) result = @builder.ident(val[0]) result end
# File lib/parser/ruby32.rb, line 11987 def _reduce_615(val, _values, result) result = @builder.const(val[0]) result end
reduce 616 omitted
# File lib/parser/ruby32.rb, line 11995 def _reduce_617(val, _values, result) result = @builder.nil(val[0]) result end
# File lib/parser/ruby32.rb, line 12001 def _reduce_618(val, _values, result) result = @builder.self(val[0]) result end
# File lib/parser/ruby32.rb, line 12007 def _reduce_619(val, _values, result) result = @builder.true(val[0]) result end
# File lib/parser/ruby32.rb, line 12013 def _reduce_620(val, _values, result) result = @builder.false(val[0]) result end
# File lib/parser/ruby32.rb, line 12019 def _reduce_621(val, _values, result) result = @builder.__FILE__(val[0]) result end
# File lib/parser/ruby32.rb, line 12025 def _reduce_622(val, _values, result) result = @builder.__LINE__(val[0]) result end
# File lib/parser/ruby32.rb, line 12031 def _reduce_623(val, _values, result) result = @builder.__ENCODING__(val[0]) result end
# File lib/parser/ruby32.rb, line 12037 def _reduce_624(val, _values, result) result = @builder.accessible(val[0]) result end
# File lib/parser/ruby32.rb, line 12043 def _reduce_625(val, _values, result) result = @builder.accessible(val[0]) result end
# File lib/parser/ruby32.rb, line 12049 def _reduce_626(val, _values, result) result = @builder.assignable(val[0]) result end
# File lib/parser/ruby32.rb, line 12055 def _reduce_627(val, _values, result) result = @builder.assignable(val[0]) result end
# File lib/parser/ruby32.rb, line 12061 def _reduce_628(val, _values, result) result = @builder.nth_ref(val[0]) result end
# File lib/parser/ruby32.rb, line 12067 def _reduce_629(val, _values, result) result = @builder.back_ref(val[0]) result end
reduce 62 omitted
# File lib/parser/ruby32.rb, line 8867 def _reduce_63(val, _values, result) @lexer.cond.push(true) result end
# File lib/parser/ruby32.rb, line 12073 def _reduce_630(val, _values, result) @lexer.state = :expr_value result end
# File lib/parser/ruby32.rb, line 12079 def _reduce_631(val, _values, result) result = [ val[0], val[2] ] result end
# File lib/parser/ruby32.rb, line 12085 def _reduce_632(val, _values, result) result = nil result end
reduce 633 omitted
# File lib/parser/ruby32.rb, line 12093 def _reduce_634(val, _values, result) @context.in_argdef = false result = @builder.args(nil, [], nil) result end
# File lib/parser/ruby32.rb, line 12100 def _reduce_635(val, _values, result) result = @builder.args(val[0], val[1], val[2]) @lexer.state = :expr_value @context.in_argdef = false result end
reduce 636 omitted
# File lib/parser/ruby32.rb, line 12111 def _reduce_637(val, _values, result) result = @context.dup @context.in_kwarg = true @context.in_argdef = true result end
# File lib/parser/ruby32.rb, line 12119 def _reduce_638(val, _values, result) @context.in_kwarg = val[0].in_kwarg @context.in_argdef = false result = @builder.args(nil, val[1], nil) result end
# File lib/parser/ruby32.rb, line 12127 def _reduce_639(val, _values, result) result = val[0].concat(val[2]).concat(val[3]) result end
# File lib/parser/ruby32.rb, line 8873 def _reduce_64(val, _values, result) @lexer.cond.pop result = [ val[1], val[2] ] result end
# File lib/parser/ruby32.rb, line 12133 def _reduce_640(val, _values, result) result = val[0].concat(val[1]) result end
# File lib/parser/ruby32.rb, line 12139 def _reduce_641(val, _values, result) result = val[0].concat(val[1]) result end
# File lib/parser/ruby32.rb, line 12145 def _reduce_642(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 12151 def _reduce_643(val, _values, result) @static_env.declare_forward_args result = [ @builder.forward_arg(val[0]) ] result end
# File lib/parser/ruby32.rb, line 12158 def _reduce_644(val, _values, result) result = val[1] result end
# File lib/parser/ruby32.rb, line 12164 def _reduce_645(val, _values, result) result = [] result end
# File lib/parser/ruby32.rb, line 12170 def _reduce_646(val, _values, result) result = val[0]. concat(val[2]). concat(val[4]). concat(val[5]) result end
# File lib/parser/ruby32.rb, line 12179 def _reduce_647(val, _values, result) result = val[0]. concat(val[2]). concat(val[4]). concat(val[6]). concat(val[7]) result end
# File lib/parser/ruby32.rb, line 12189 def _reduce_648(val, _values, result) result = val[0]. concat(val[2]). concat(val[3]) result end
# File lib/parser/ruby32.rb, line 12197 def _reduce_649(val, _values, result) result = val[0]. concat(val[2]). concat(val[4]). concat(val[5]) result end
# File lib/parser/ruby32.rb, line 8880 def _reduce_65(val, _values, result) local_push @current_arg_stack.push(nil) result = [ val[0], @context.dup ] @context.in_def = true result end
# File lib/parser/ruby32.rb, line 12206 def _reduce_650(val, _values, result) result = val[0]. concat(val[2]). concat(val[3]) result end
# File lib/parser/ruby32.rb, line 12214 def _reduce_651(val, _values, result) result = val[0]. concat(val[2]). concat(val[4]). concat(val[5]) result end
# File lib/parser/ruby32.rb, line 12223 def _reduce_652(val, _values, result) result = val[0]. concat(val[1]) result end
# File lib/parser/ruby32.rb, line 12230 def _reduce_653(val, _values, result) result = val[0]. concat(val[2]). concat(val[3]) result end
# File lib/parser/ruby32.rb, line 12238 def _reduce_654(val, _values, result) result = val[0]. concat(val[2]). concat(val[4]). concat(val[5]) result end
# File lib/parser/ruby32.rb, line 12247 def _reduce_655(val, _values, result) result = val[0]. concat(val[1]) result end
# File lib/parser/ruby32.rb, line 12254 def _reduce_656(val, _values, result) result = val[0]. concat(val[2]). concat(val[3]) result end
# File lib/parser/ruby32.rb, line 12262 def _reduce_657(val, _values, result) result = val[0]. concat(val[1]) result end
# File lib/parser/ruby32.rb, line 12269 def _reduce_658(val, _values, result) result = val[0]. concat(val[2]). concat(val[3]) result end
# File lib/parser/ruby32.rb, line 12277 def _reduce_659(val, _values, result) result = val[0] result end
# File lib/parser/ruby32.rb, line 8890 def _reduce_66(val, _values, result) result = [ val[0], val[1] ] result end
# File lib/parser/ruby32.rb, line 12283 def _reduce_660(val, _values, result) result = [] result end
# File lib/parser/ruby32.rb, line 12289 def _reduce_661(val, _values, result) result = val[0] result end
# File lib/parser/ruby32.rb, line 12295 def _reduce_662(val, _values, result) diagnostic :error, :argument_const, nil, val[0] result end
# File lib/parser/ruby32.rb, line 12301 def _reduce_663(val, _values, result) diagnostic :error, :argument_ivar, nil, val[0] result end
# File lib/parser/ruby32.rb, line 12307 def _reduce_664(val, _values, result) diagnostic :error, :argument_gvar, nil, val[0] result end
# File lib/parser/ruby32.rb, line 12313 def _reduce_665(val, _values, result) diagnostic :error, :argument_cvar, nil, val[0] result end
reduce 666 omitted
# File lib/parser/ruby32.rb, line 12321 def _reduce_667(val, _values, result) @static_env.declare val[0][0] @max_numparam_stack.has_ordinary_params! result = val[0] result end
# File lib/parser/ruby32.rb, line 12331 def _reduce_668(val, _values, result) @current_arg_stack.set(val[0][0]) result = val[0] result end
# File lib/parser/ruby32.rb, line 12338 def _reduce_669(val, _values, result) @current_arg_stack.set(0) result = @builder.arg(val[0]) result end
# File lib/parser/ruby32.rb, line 8896 def _reduce_67(val, _values, result) @lexer.state = :expr_fname @context.in_argdef = true result end
# File lib/parser/ruby32.rb, line 12345 def _reduce_670(val, _values, result) result = @builder.multi_lhs(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 12351 def _reduce_671(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 12357 def _reduce_672(val, _values, result) result = val[0] << val[2] result end
# File lib/parser/ruby32.rb, line 12363 def _reduce_673(val, _values, result) check_kwarg_name(val[0]) @static_env.declare val[0][0] @max_numparam_stack.has_ordinary_params! @current_arg_stack.set(val[0][0]) @context.in_argdef = false result = val[0] result end
# File lib/parser/ruby32.rb, line 12378 def _reduce_674(val, _values, result) @current_arg_stack.set(nil) @context.in_argdef = true result = @builder.kwoptarg(val[0], val[1]) result end
# File lib/parser/ruby32.rb, line 12386 def _reduce_675(val, _values, result) @current_arg_stack.set(nil) @context.in_argdef = true result = @builder.kwarg(val[0]) result end
# File lib/parser/ruby32.rb, line 12394 def _reduce_676(val, _values, result) @context.in_argdef = true result = @builder.kwoptarg(val[0], val[1]) result end
# File lib/parser/ruby32.rb, line 12401 def _reduce_677(val, _values, result) @context.in_argdef = true result = @builder.kwarg(val[0]) result end
# File lib/parser/ruby32.rb, line 12408 def _reduce_678(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 12414 def _reduce_679(val, _values, result) result = val[0] << val[2] result end
# File lib/parser/ruby32.rb, line 8903 def _reduce_68(val, _values, result) result = [ val[0], val[1], val[2], val[4] ] result end
# File lib/parser/ruby32.rb, line 12420 def _reduce_680(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 12426 def _reduce_681(val, _values, result) result = val[0] << val[2] result end
reduce 683 omitted
# File lib/parser/ruby32.rb, line 12436 def _reduce_684(val, _values, result) result = [ @builder.kwnilarg(val[0][0], val[0][1]) ] result end
# File lib/parser/ruby32.rb, line 12442 def _reduce_685(val, _values, result) @static_env.declare val[1][0] result = [ @builder.kwrestarg(val[0], val[1]) ] result end
# File lib/parser/ruby32.rb, line 12450 def _reduce_686(val, _values, result) @static_env.declare_anonymous_kwrestarg result = [ @builder.kwrestarg(val[0]) ] result end
# File lib/parser/ruby32.rb, line 12458 def _reduce_687(val, _values, result) @current_arg_stack.set(0) @context.in_argdef = true result = @builder.optarg(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 12466 def _reduce_688(val, _values, result) @current_arg_stack.set(0) @context.in_argdef = true result = @builder.optarg(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 12474 def _reduce_689(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 12480 def _reduce_690(val, _values, result) result = val[0] << val[2] result end
# File lib/parser/ruby32.rb, line 12486 def _reduce_691(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 12492 def _reduce_692(val, _values, result) result = val[0] << val[2] result end
reduce 694 omitted
# File lib/parser/ruby32.rb, line 12502 def _reduce_695(val, _values, result) @static_env.declare val[1][0] result = [ @builder.restarg(val[0], val[1]) ] result end
# File lib/parser/ruby32.rb, line 12510 def _reduce_696(val, _values, result) @static_env.declare_anonymous_restarg result = [ @builder.restarg(val[0]) ] result end
reduce 698 omitted
# File lib/parser/ruby32.rb, line 12522 def _reduce_699(val, _values, result) @static_env.declare val[1][0] result = @builder.blockarg(val[0], val[1]) result end
# File lib/parser/ruby32.rb, line 8460 def _reduce_7(val, _values, result) result = [ val[1] ] result end
# File lib/parser/ruby32.rb, line 12530 def _reduce_700(val, _values, result) @static_env.declare_anonymous_blockarg result = @builder.blockarg(val[0], nil) result end
# File lib/parser/ruby32.rb, line 12538 def _reduce_701(val, _values, result) result = [ val[1] ] result end
# File lib/parser/ruby32.rb, line 12544 def _reduce_702(val, _values, result) result = [] result end
reduce 703 omitted
# File lib/parser/ruby32.rb, line 12552 def _reduce_704(val, _values, result) result = val[1] result end
# File lib/parser/ruby32.rb, line 12558 def _reduce_705(val, _values, result) result = [] result end
reduce 706 omitted
# File lib/parser/ruby32.rb, line 12566 def _reduce_707(val, _values, result) result = [ val[0] ] result end
# File lib/parser/ruby32.rb, line 12572 def _reduce_708(val, _values, result) result = val[0] << val[2] result end
# File lib/parser/ruby32.rb, line 12578 def _reduce_709(val, _values, result) result = @builder.pair(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 12584 def _reduce_710(val, _values, result) result = @builder.pair_keyword(val[0], val[1]) result end
# File lib/parser/ruby32.rb, line 12590 def _reduce_711(val, _values, result) result = @builder.pair_label(val[0]) result end
# File lib/parser/ruby32.rb, line 12596 def _reduce_712(val, _values, result) result = @builder.pair_quoted(val[0], val[1], val[2], val[3]) result end
# File lib/parser/ruby32.rb, line 12602 def _reduce_713(val, _values, result) result = @builder.kwsplat(val[0], val[1]) result end
# File lib/parser/ruby32.rb, line 12608 def _reduce_714(val, _values, result) if !@static_env.declared_anonymous_kwrestarg? diagnostic :error, :no_anonymous_kwrestarg, nil, val[0] end result = @builder.forwarded_kwrestarg(val[0]) result end
reduce 71 omitted
# File lib/parser/ruby32.rb, line 8915 def _reduce_72(val, _values, result) result = @builder.call_method(val[0], val[1], val[2], nil, val[3], nil) result end
reduce 724 omitted
# File lib/parser/ruby32.rb, line 12638 def _reduce_725(val, _values, result) result = [:dot, val[0][1]] result end
# File lib/parser/ruby32.rb, line 12644 def _reduce_726(val, _values, result) result = [:anddot, val[0][1]] result end
# File lib/parser/ruby32.rb, line 8922 def _reduce_73(val, _values, result) result = @context.dup @context.in_block = true result end
reduce 730 omitted
# File lib/parser/ruby32.rb, line 12658 def _reduce_731(val, _values, result) result = val[1] result end
# File lib/parser/ruby32.rb, line 12664 def _reduce_732(val, _values, result) result = val[1] result end
# File lib/parser/ruby32.rb, line 12670 def _reduce_733(val, _values, result) result = val[1] result end
reduce 735 omitted
# File lib/parser/ruby32.rb, line 12680 def _reduce_736(val, _values, result) yyerrok result end
# File lib/parser/ruby32.rb, line 8929 def _reduce_74(val, _values, result) @context.in_block = val[1].in_block result = [ val[0], *val[2], val[3] ] result end
reduce 739 omitted
# File lib/parser/ruby32.rb, line 12692 def _reduce_740(val, _values, result) result = nil result end
reduce 75 omitted
# File lib/parser/ruby32.rb, line 8938 def _reduce_76(val, _values, result) result = @builder.call_method(nil, nil, val[0], nil, val[1], nil) result end
# File lib/parser/ruby32.rb, line 8945 def _reduce_77(val, _values, result) method_call = @builder.call_method(nil, nil, val[0], nil, val[1], nil) begin_t, args, body, end_t = val[2] result = @builder.block(method_call, begin_t, args, body, end_t) result end
# File lib/parser/ruby32.rb, line 8956 def _reduce_78(val, _values, result) result = @builder.call_method(val[0], val[1], val[2], nil, val[3], nil) result end
# File lib/parser/ruby32.rb, line 8963 def _reduce_79(val, _values, result) method_call = @builder.call_method(val[0], val[1], val[2], nil, val[3], nil) begin_t, args, body, end_t = val[4] result = @builder.block(method_call, begin_t, args, body, end_t) result end
# File lib/parser/ruby32.rb, line 8974 def _reduce_80(val, _values, result) result = @builder.call_method(val[0], val[1], val[2], nil, val[3], nil) result end
# File lib/parser/ruby32.rb, line 8981 def _reduce_81(val, _values, result) method_call = @builder.call_method(val[0], val[1], val[2], nil, val[3], nil) begin_t, args, body, end_t = val[4] result = @builder.block(method_call, begin_t, args, body, end_t) result end
# File lib/parser/ruby32.rb, line 8992 def _reduce_82(val, _values, result) result = @builder.keyword_cmd(:super, val[0], nil, val[1], nil) result end
# File lib/parser/ruby32.rb, line 8999 def _reduce_83(val, _values, result) result = @builder.keyword_cmd(:yield, val[0], nil, val[1], nil) result end
# File lib/parser/ruby32.rb, line 9006 def _reduce_84(val, _values, result) result = @builder.keyword_cmd(:return, val[0], nil, val[1], nil) result end
# File lib/parser/ruby32.rb, line 9013 def _reduce_85(val, _values, result) result = @builder.keyword_cmd(:break, val[0], nil, val[1], nil) result end
# File lib/parser/ruby32.rb, line 9020 def _reduce_86(val, _values, result) result = @builder.keyword_cmd(:next, val[0], nil, val[1], nil) result end
# File lib/parser/ruby32.rb, line 9027 def _reduce_87(val, _values, result) result = @builder.multi_lhs(nil, val[0], nil) result end
# File lib/parser/ruby32.rb, line 9033 def _reduce_88(val, _values, result) result = @builder.begin(val[0], val[1], val[2]) result end
# File lib/parser/ruby32.rb, line 9039 def _reduce_89(val, _values, result) result = @builder.multi_lhs(nil, val[0], nil) result end
reduce 8 omitted
# File lib/parser/ruby32.rb, line 8468 def _reduce_9(val, _values, result) result = @builder.preexe(val[0], *val[1]) result end
# File lib/parser/ruby32.rb, line 9045 def _reduce_90(val, _values, result) result = @builder.multi_lhs(val[0], val[1], val[2]) result end
reduce 91 omitted
# File lib/parser/ruby32.rb, line 9053 def _reduce_92(val, _values, result) result = val[0]. push(val[1]) result end
# File lib/parser/ruby32.rb, line 9060 def _reduce_93(val, _values, result) result = val[0]. push(@builder.splat(val[1], val[2])) result end
# File lib/parser/ruby32.rb, line 9067 def _reduce_94(val, _values, result) result = val[0]. push(@builder.splat(val[1], val[2])). concat(val[4]) result end
# File lib/parser/ruby32.rb, line 9075 def _reduce_95(val, _values, result) result = val[0]. push(@builder.splat(val[1])) result end
# File lib/parser/ruby32.rb, line 9082 def _reduce_96(val, _values, result) result = val[0]. push(@builder.splat(val[1])). concat(val[3]) result end
# File lib/parser/ruby32.rb, line 9090 def _reduce_97(val, _values, result) result = [ @builder.splat(val[0], val[1]) ] result end
# File lib/parser/ruby32.rb, line 9096 def _reduce_98(val, _values, result) result = [ @builder.splat(val[0], val[1]), *val[3] ] result end
# File lib/parser/ruby32.rb, line 9103 def _reduce_99(val, _values, result) result = [ @builder.splat(val[0]) ] result end
# File lib/parser/ruby32.rb, line 12698 def _reduce_none(val, _values, result) val[0] end
# File lib/parser/ruby32.rb, line 20 def default_encoding Encoding::UTF_8 end
# File lib/parser/ruby32.rb, line 24 def endless_method_name(name_t) if !%w[=== == != <= >=].include?(name_t[0]) && name_t[0].end_with?('=') diagnostic :error, :endless_setter, nil, name_t end end
# File lib/parser/ruby32.rb, line 37 def local_pop @static_env.unextend @lexer.cmdarg.pop @lexer.cond.pop @max_numparam_stack.pop end
# File lib/parser/ruby32.rb, line 30 def local_push @static_env.extend_static @lexer.cmdarg.push(false) @lexer.cond.push(false) @max_numparam_stack.push(static: true) end
# File lib/parser/ruby32.rb, line 44 def try_declare_numparam(node) name = node.children[0] if name =~ /\A_[1-9]\z/ && !static_env.declared?(name) && @context.in_dynamic_block? # definitely an implicit param location = node.loc.expression if max_numparam_stack.has_ordinary_params? diagnostic :error, :ordinary_param_defined, nil, [nil, location] end raw_max_numparam_stack = max_numparam_stack.stack.dup # ignore current block scope raw_max_numparam_stack.pop raw_max_numparam_stack.reverse_each do |outer_scope| if outer_scope[:static] # found an outer scope that can't have numparams # like def/class/etc break else outer_scope_has_numparams = outer_scope[:value] > 0 if outer_scope_has_numparams diagnostic :error, :numparam_used_in_outer_scope, nil, [nil, location] else # for now it's ok, but an outer scope can also be a block # like proc { _1; proc { proc { proc { _2 }} }} # with numparams, so we need to continue end end end static_env.declare(name) max_numparam_stack.register(name[1].to_i) true else false end end
# File lib/parser/ruby32.rb, line 16 def version 32 end