class Parser::Ruby32

Constants

Racc_arg
Racc_debug_parser
Racc_token_to_s_table

Public Instance Methods

_reduce_1(val, _values, result) click to toggle source

reduce 0 omitted

# File lib/parser/ruby32.rb, line 4070
def _reduce_1(val, _values, result)
                      @current_arg_stack.push(nil)
                      @max_numparam_stack.push(static: true)
                    
    result
end
_reduce_10(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4124
def _reduce_10(val, _values, result)
                      result = val
                    
    result
end
_reduce_100(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4755
def _reduce_100(val, _values, result)
                      result = [ @builder.splat(val[0]),
                                 *val[2] ]
                    
    result
end
_reduce_102(val, _values, result) click to toggle source

reduce 101 omitted

# File lib/parser/ruby32.rb, line 4764
def _reduce_102(val, _values, result)
                      result = @builder.begin(val[0], val[1], val[2])
                    
    result
end
_reduce_103(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4770
def _reduce_103(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_104(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4776
def _reduce_104(val, _values, result)
                      result = val[0] << val[1]
                    
    result
end
_reduce_105(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4782
def _reduce_105(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_106(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4788
def _reduce_106(val, _values, result)
                      result = val[0] << val[2]
                    
    result
end
_reduce_107(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4794
def _reduce_107(val, _values, result)
                      result = @builder.assignable(val[0])
                    
    result
end
_reduce_108(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4800
def _reduce_108(val, _values, result)
                      result = @builder.assignable(val[0])
                    
    result
end
_reduce_109(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4806
def _reduce_109(val, _values, result)
                      result = @builder.index_asgn(val[0], val[1], val[2], val[3])
                    
    result
end
_reduce_11(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4130
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
_reduce_110(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4812
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
_reduce_111(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4822
def _reduce_111(val, _values, result)
                      result = @builder.attr_asgn(val[0], val[1], val[2])
                    
    result
end
_reduce_112(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4828
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
_reduce_113(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4838
def _reduce_113(val, _values, result)
                      result = @builder.assignable(
                                  @builder.const_fetch(val[0], val[1], val[2]))
                    
    result
end
_reduce_114(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4845
def _reduce_114(val, _values, result)
                      result = @builder.assignable(
                                  @builder.const_global(val[0], val[1]))
                    
    result
end
_reduce_115(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4852
def _reduce_115(val, _values, result)
                      result = @builder.assignable(val[0])
                    
    result
end
_reduce_116(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4858
def _reduce_116(val, _values, result)
                      result = @builder.assignable(val[0])
                    
    result
end
_reduce_117(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4864
def _reduce_117(val, _values, result)
                      result = @builder.assignable(val[0])
                    
    result
end
_reduce_118(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4870
def _reduce_118(val, _values, result)
                      result = @builder.index_asgn(val[0], val[1], val[2], val[3])
                    
    result
end
_reduce_119(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4876
def _reduce_119(val, _values, result)
                      result = @builder.attr_asgn(val[0], val[1], val[2])
                    
    result
end
_reduce_12(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4147
def _reduce_12(val, _values, result)
                      result = @builder.compstmt(val[0])
                    
    result
end
_reduce_120(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4882
def _reduce_120(val, _values, result)
                      result = @builder.attr_asgn(val[0], val[1], val[2])
                    
    result
end
_reduce_121(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4888
def _reduce_121(val, _values, result)
                      result = @builder.attr_asgn(val[0], val[1], val[2])
                    
    result
end
_reduce_122(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4894
def _reduce_122(val, _values, result)
                      result = @builder.assignable(
                                  @builder.const_fetch(val[0], val[1], val[2]))
                    
    result
end
_reduce_123(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4901
def _reduce_123(val, _values, result)
                      result = @builder.assignable(
                                  @builder.const_global(val[0], val[1]))
                    
    result
end
_reduce_124(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4908
def _reduce_124(val, _values, result)
                      result = @builder.assignable(val[0])
                    
    result
end
_reduce_125(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4914
def _reduce_125(val, _values, result)
                      diagnostic :error, :module_name_const, nil, val[0]
                    
    result
end
_reduce_127(val, _values, result) click to toggle source

reduce 126 omitted

# File lib/parser/ruby32.rb, line 4922
def _reduce_127(val, _values, result)
                      result = @builder.const_global(val[0], val[1])
                    
    result
end
_reduce_128(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4928
def _reduce_128(val, _values, result)
                      result = @builder.const(val[0])
                    
    result
end
_reduce_129(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4934
def _reduce_129(val, _values, result)
                      result = @builder.const_fetch(val[0], val[1], val[2])
                    
    result
end
_reduce_13(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4153
def _reduce_13(val, _values, result)
                      result = []
                    
    result
end
_reduce_135(val, _values, result) click to toggle source

reduce 134 omitted

# File lib/parser/ruby32.rb, line 4950
def _reduce_135(val, _values, result)
                      result = @builder.symbol_internal(val[0])
                    
    result
end
_reduce_137(val, _values, result) click to toggle source

reduce 136 omitted

# File lib/parser/ruby32.rb, line 4958
def _reduce_137(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_138(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4964
def _reduce_138(val, _values, result)
                      @lexer.state = :expr_fname
                    
    result
end
_reduce_139(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4970
def _reduce_139(val, _values, result)
                      result = val[0] << val[3]
                    
    result
end
_reduce_14(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4159
def _reduce_14(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_15(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4165
def _reduce_15(val, _values, result)
                      result = val[0] << val[2]
                    
    result
end
_reduce_16(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4171
def _reduce_16(val, _values, result)
                      result = [ val[1] ]
                    
    result
end
_reduce_18(val, _values, result) click to toggle source

reduce 17 omitted

# File lib/parser/ruby32.rb, line 4179
def _reduce_18(val, _values, result)
                      diagnostic :error, :begin_in_method, nil, val[0]
                    
    result
end
_reduce_19(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4185
def _reduce_19(val, _values, result)
                      @lexer.state = :expr_fname
                    
    result
end
_reduce_2(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4077
def _reduce_2(val, _values, result)
                      result = val[1]

                      @current_arg_stack.pop
                      @max_numparam_stack.pop
                    
    result
end
_reduce_20(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4191
def _reduce_20(val, _values, result)
                      result = @builder.alias(val[0], val[1], val[3])
                    
    result
end
_reduce_21(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4197
def _reduce_21(val, _values, result)
                      result = @builder.alias(val[0],
                                  @builder.gvar(val[1]),
                                  @builder.gvar(val[2]))
                    
    result
end
_reduce_211(val, _values, result) click to toggle source

reduce 210 omitted

# File lib/parser/ruby32.rb, line 5118
def _reduce_211(val, _values, result)
                      result = @builder.assign(val[0], val[1], val[2])
                    
    result
end
_reduce_212(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5124
def _reduce_212(val, _values, result)
                      result = @builder.op_assign(val[0], val[1], val[2])
                    
    result
end
_reduce_213(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5130
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
_reduce_214(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5139
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
_reduce_215(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5148
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
_reduce_216(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5157
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
_reduce_217(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5166
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
_reduce_218(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5174
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
_reduce_219(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5182
def _reduce_219(val, _values, result)
                      result = @builder.op_assign(val[0], val[1], val[2])
                    
    result
end
_reduce_22(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4205
def _reduce_22(val, _values, result)
                      result = @builder.alias(val[0],
                                  @builder.gvar(val[1]),
                                  @builder.back_ref(val[2]))
                    
    result
end
_reduce_220(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5188
def _reduce_220(val, _values, result)
                      result = @builder.range_inclusive(val[0], val[1], val[2])
                    
    result
end
_reduce_221(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5194
def _reduce_221(val, _values, result)
                      result = @builder.range_exclusive(val[0], val[1], val[2])
                    
    result
end
_reduce_222(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5200
def _reduce_222(val, _values, result)
                      result = @builder.range_inclusive(val[0], val[1], nil)
                    
    result
end
_reduce_223(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5206
def _reduce_223(val, _values, result)
                      result = @builder.range_exclusive(val[0], val[1], nil)
                    
    result
end
_reduce_224(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5212
def _reduce_224(val, _values, result)
                      result = @builder.range_inclusive(nil, val[0], val[1])
                    
    result
end
_reduce_225(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5218
def _reduce_225(val, _values, result)
                      result = @builder.range_exclusive(nil, val[0], val[1])
                    
    result
end
_reduce_226(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5224
def _reduce_226(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])
                    
    result
end
_reduce_227(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5230
def _reduce_227(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])
                    
    result
end
_reduce_228(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5236
def _reduce_228(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])
                    
    result
end
_reduce_229(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5242
def _reduce_229(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])
                    
    result
end
_reduce_23(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4213
def _reduce_23(val, _values, result)
                      diagnostic :error, :nth_ref_alias, nil, val[2]
                    
    result
end
_reduce_230(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5248
def _reduce_230(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])
                    
    result
end
_reduce_231(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5254
def _reduce_231(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])
                    
    result
end
_reduce_232(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5260
def _reduce_232(val, _values, result)
                      result = @builder.unary_op(val[0],
                                  @builder.binary_op(
                                    val[1], val[2], val[3]))
                    
    result
end
_reduce_233(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5268
def _reduce_233(val, _values, result)
                      result = @builder.unary_op(val[0], val[1])
                    
    result
end
_reduce_234(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5274
def _reduce_234(val, _values, result)
                      result = @builder.unary_op(val[0], val[1])
                    
    result
end
_reduce_235(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5280
def _reduce_235(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])
                    
    result
end
_reduce_236(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5286
def _reduce_236(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])
                    
    result
end
_reduce_237(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5292
def _reduce_237(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])
                    
    result
end
_reduce_238(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5298
def _reduce_238(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])
                    
    result
end
_reduce_24(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4219
def _reduce_24(val, _values, result)
                      result = @builder.undef_method(val[0], val[1])
                    
    result
end
_reduce_240(val, _values, result) click to toggle source

reduce 239 omitted

# File lib/parser/ruby32.rb, line 5306
def _reduce_240(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])
                    
    result
end
_reduce_241(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5312
def _reduce_241(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])
                    
    result
end
_reduce_242(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5318
def _reduce_242(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])
                    
    result
end
_reduce_243(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5324
def _reduce_243(val, _values, result)
                      result = @builder.match_op(val[0], val[1], val[2])
                    
    result
end
_reduce_244(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5330
def _reduce_244(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])
                    
    result
end
_reduce_245(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5336
def _reduce_245(val, _values, result)
                      result = @builder.not_op(val[0], nil, val[1], nil)
                    
    result
end
_reduce_246(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5342
def _reduce_246(val, _values, result)
                      result = @builder.unary_op(val[0], val[1])
                    
    result
end
_reduce_247(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5348
def _reduce_247(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])
                    
    result
end
_reduce_248(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5354
def _reduce_248(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])
                    
    result
end
_reduce_249(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5360
def _reduce_249(val, _values, result)
                      result = @builder.logical_op(:and, val[0], val[1], val[2])
                    
    result
end
_reduce_25(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4225
def _reduce_25(val, _values, result)
                      result = @builder.condition_mod(val[0], nil,
                                                      val[1], val[2])
                    
    result
end
_reduce_250(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5366
def _reduce_250(val, _values, result)
                      result = @builder.logical_op(:or, val[0], val[1], val[2])
                    
    result
end
_reduce_251(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5372
def _reduce_251(val, _values, result)
                      @context.in_defined = true
                    
    result
end
_reduce_252(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5378
def _reduce_252(val, _values, result)
                      @context.in_defined = false
                      result = @builder.keyword_cmd(:defined?, val[0], nil, [ val[3] ], nil)
                    
    result
end
_reduce_253(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5385
def _reduce_253(val, _values, result)
                      result = @builder.ternary(val[0], val[1],
                                                val[2], val[4], val[5])
                    
    result
end
_reduce_254(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5392
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
_reduce_255(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5406
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
_reduce_256(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5426
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
_reduce_257(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5440
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
_reduce_26(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4232
def _reduce_26(val, _values, result)
                      result = @builder.condition_mod(nil, val[0],
                                                      val[1], val[2])
                    
    result
end
_reduce_263(val, _values, result) click to toggle source

reduce 262 omitted

# File lib/parser/ruby32.rb, line 5470
def _reduce_263(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])
                    
    result
end
_reduce_264(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5476
def _reduce_264(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])
                    
    result
end
_reduce_268(val, _values, result) click to toggle source

reduce 267 omitted

# File lib/parser/ruby32.rb, line 5488
def _reduce_268(val, _values, result)
                      result = val[0] << @builder.associate(nil, val[2], nil)
                    
    result
end
_reduce_269(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5494
def _reduce_269(val, _values, result)
                      result = [ @builder.associate(nil, val[0], nil) ]
                    
    result
end
_reduce_27(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4239
def _reduce_27(val, _values, result)
                      result = @builder.loop_mod(:while, val[0], val[1], val[2])
                    
    result
end
_reduce_271(val, _values, result) click to toggle source

reduce 270 omitted

# File lib/parser/ruby32.rb, line 5502
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
_reduce_272(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5512
def _reduce_272(val, _values, result)
                      result = val
                    
    result
end
_reduce_273(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5518
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
_reduce_274(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5528
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
_reduce_275(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5538
def _reduce_275(val, _values, result)
                      result = [ nil, [], nil ]
                    
    result
end
_reduce_277(val, _values, result) click to toggle source

reduce 276 omitted

# File lib/parser/ruby32.rb, line 5546
def _reduce_277(val, _values, result)
                      result = []
                    
    result
end
_reduce_28(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4245
def _reduce_28(val, _values, result)
                      result = @builder.loop_mod(:until, val[0], val[1], val[2])
                    
    result
end
_reduce_280(val, _values, result) click to toggle source

reduce 279 omitted

# File lib/parser/ruby32.rb, line 5556
def _reduce_280(val, _values, result)
                      result = val[0] << @builder.associate(nil, val[2], nil)
                    
    result
end
_reduce_281(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5562
def _reduce_281(val, _values, result)
                      result = [ @builder.associate(nil, val[0], nil) ]
                    
    result
end
_reduce_282(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5568
def _reduce_282(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_283(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5574
def _reduce_283(val, _values, result)
                      result = val[0].concat(val[1])
                    
    result
end
_reduce_284(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5580
def _reduce_284(val, _values, result)
                      result = [ @builder.associate(nil, val[0], nil) ]
                      result.concat(val[1])
                    
    result
end
_reduce_285(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5587
def _reduce_285(val, _values, result)
                      assocs = @builder.associate(nil, val[2], nil)
                      result = val[0] << assocs
                      result.concat(val[3])
                    
    result
end
_reduce_286(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5595
def _reduce_286(val, _values, result)
                      result =  [ val[0] ]
                    
    result
end
_reduce_287(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5601
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
_reduce_288(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5628
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
_reduce_289(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5649
def _reduce_289(val, _values, result)
                      result = @builder.block_pass(val[0], val[1])
                    
    result
end
_reduce_29(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4251
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
_reduce_290(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5655
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
_reduce_291(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5665
def _reduce_291(val, _values, result)
                      result = [ val[1] ]
                    
    result
end
_reduce_292(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5671
def _reduce_292(val, _values, result)
                      result = []
                    
    result
end
_reduce_293(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5677
def _reduce_293(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_294(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5683
def _reduce_294(val, _values, result)
                      result = [ @builder.splat(val[0], val[1]) ]
                    
    result
end
_reduce_295(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5689
def _reduce_295(val, _values, result)
                      result = val[0] << val[2]
                    
    result
end
_reduce_296(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5695
def _reduce_296(val, _values, result)
                      result = val[0] << @builder.splat(val[2], val[3])
                    
    result
end
_reduce_297(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5701
def _reduce_297(val, _values, result)
                      result = @builder.array(nil, val[0], nil)
                    
    result
end
_reduce_299(val, _values, result) click to toggle source

reduce 298 omitted

# File lib/parser/ruby32.rb, line 5709
def _reduce_299(val, _values, result)
                      result = val[0] << val[2]
                    
    result
end
_reduce_3(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4086
def _reduce_3(val, _values, result)
                      result = @builder.compstmt(val[0])
                    
    result
end
_reduce_30(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4261
def _reduce_30(val, _values, result)
                      result = @builder.postexe(val[0], val[1], val[2], val[3])
                    
    result
end
_reduce_300(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5715
def _reduce_300(val, _values, result)
                      result = val[0] << @builder.splat(val[2], val[3])
                    
    result
end
_reduce_301(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5721
def _reduce_301(val, _values, result)
                      result = [ @builder.splat(val[0], val[1]) ]
                    
    result
end
_reduce_312(val, _values, result) click to toggle source

reduce 311 omitted

# File lib/parser/ruby32.rb, line 5747
def _reduce_312(val, _values, result)
                      result = @builder.call_method(nil, nil, val[0])
                    
    result
end
_reduce_313(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5753
def _reduce_313(val, _values, result)
                      @lexer.cmdarg.push(false)
                    
    result
end
_reduce_314(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5759
def _reduce_314(val, _values, result)
                      @lexer.cmdarg.pop

                      result = @builder.begin_keyword(val[0], val[2], val[3])
                    
    result
end
_reduce_315(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5767
def _reduce_315(val, _values, result)
                      @lexer.state = :expr_endarg
                    
    result
end
_reduce_316(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5773
def _reduce_316(val, _values, result)
                      result = @builder.begin(val[0], val[1], val[3])
                    
    result
end
_reduce_317(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5779
def _reduce_317(val, _values, result)
                      @lexer.state = :expr_endarg
                    
    result
end
_reduce_318(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5785
def _reduce_318(val, _values, result)
                      result = @builder.begin(val[0], nil, val[3])
                    
    result
end
_reduce_319(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5791
def _reduce_319(val, _values, result)
                      result = @builder.begin(val[0], val[1], val[2])
                    
    result
end
_reduce_32(val, _values, result) click to toggle source

reduce 31 omitted

# File lib/parser/ruby32.rb, line 4269
def _reduce_32(val, _values, result)
                      result = @builder.multi_assign(val[0], val[1], val[2])
                    
    result
end
_reduce_320(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5797
def _reduce_320(val, _values, result)
                      result = @builder.const_fetch(val[0], val[1], val[2])
                    
    result
end
_reduce_321(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5803
def _reduce_321(val, _values, result)
                      result = @builder.const_global(val[0], val[1])
                    
    result
end
_reduce_322(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5809
def _reduce_322(val, _values, result)
                      result = @builder.array(val[0], val[1], val[2])
                    
    result
end
_reduce_323(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5815
def _reduce_323(val, _values, result)
                      result = @builder.associate(val[0], val[1], val[2])
                    
    result
end
_reduce_324(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5821
def _reduce_324(val, _values, result)
                      result = @builder.keyword_cmd(:return, val[0])
                    
    result
end
_reduce_325(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5827
def _reduce_325(val, _values, result)
                      result = @builder.keyword_cmd(:yield, val[0], val[1], val[2], val[3])
                    
    result
end
_reduce_326(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5833
def _reduce_326(val, _values, result)
                      result = @builder.keyword_cmd(:yield, val[0], val[1], [], val[2])
                    
    result
end
_reduce_327(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5839
def _reduce_327(val, _values, result)
                      result = @builder.keyword_cmd(:yield, val[0])
                    
    result
end
_reduce_328(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5845
def _reduce_328(val, _values, result)
                      @context.in_defined = true
                    
    result
end
_reduce_329(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5851
def _reduce_329(val, _values, result)
                      @context.in_defined = false
                      result = @builder.keyword_cmd(:defined?, val[0],
                                                    val[2], [ val[4] ], val[5])
                    
    result
end
_reduce_33(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4275
def _reduce_33(val, _values, result)
                      result = @builder.assign(val[0], val[1],
                                  @builder.array(nil, val[2], nil))
                    
    result
end
_reduce_330(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5859
def _reduce_330(val, _values, result)
                      result = @builder.not_op(val[0], val[1], val[2], val[3])
                    
    result
end
_reduce_331(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5865
def _reduce_331(val, _values, result)
                      result = @builder.not_op(val[0], val[1], nil, val[2])
                    
    result
end
_reduce_332(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5871
def _reduce_332(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_334(val, _values, result) click to toggle source

reduce 333 omitted

# File lib/parser/ruby32.rb, line 5883
def _reduce_334(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_336(val, _values, result) click to toggle source

reduce 335 omitted

# File lib/parser/ruby32.rb, line 5893
def _reduce_336(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
_reduce_337(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5902
def _reduce_337(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
_reduce_338(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5911
def _reduce_338(val, _values, result)
                      result = @builder.loop(:while, val[0], *val[1], val[2], val[3])
                    
    result
end
_reduce_339(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5917
def _reduce_339(val, _values, result)
                      result = @builder.loop(:until, val[0], *val[1], val[2], val[3])
                    
    result
end
_reduce_34(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4282
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
_reduce_340(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5923
def _reduce_340(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
_reduce_341(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5933
def _reduce_341(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
_reduce_342(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5943
def _reduce_342(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
_reduce_343(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5953
def _reduce_343(val, _values, result)
                      result = @builder.for(val[0], val[1], val[2], *val[3], val[4], val[5])
                    
    result
end
_reduce_344(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5959
def _reduce_344(val, _values, result)
                      @context.in_class = true
                      local_push
                    
    result
end
_reduce_345(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5966
def _reduce_345(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
_reduce_346(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5982
def _reduce_346(val, _values, result)
                      @context.in_def = false
                      @context.in_class = false
                      local_push
                    
    result
end
_reduce_347(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 5990
def _reduce_347(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
_reduce_348(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6002
def _reduce_348(val, _values, result)
                      @context.in_class = true
                      local_push
                    
    result
end
_reduce_349(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6009
def _reduce_349(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
_reduce_35(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4293
def _reduce_35(val, _values, result)
                      result = @builder.multi_assign(val[0], val[1], val[2])
                    
    result
end
_reduce_350(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6023
def _reduce_350(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
_reduce_351(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6035
def _reduce_351(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
_reduce_352(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6047
def _reduce_352(val, _values, result)
                      result = @builder.keyword_cmd(:break, val[0])
                    
    result
end
_reduce_353(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6053
def _reduce_353(val, _values, result)
                      result = @builder.keyword_cmd(:next, val[0])
                    
    result
end
_reduce_354(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6059
def _reduce_354(val, _values, result)
                      result = @builder.keyword_cmd(:redo, val[0])
                    
    result
end
_reduce_355(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6065
def _reduce_355(val, _values, result)
                      result = @builder.keyword_cmd(:retry, val[0])
                    
    result
end
_reduce_357(val, _values, result) click to toggle source

reduce 356 omitted

# File lib/parser/ruby32.rb, line 6073
def _reduce_357(val, _values, result)
                      result = [ val[0], @context.dup ]
                    
    result
end
_reduce_358(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6079
def _reduce_358(val, _values, result)
                      result = [ val[0], @context.dup ]
                    
    result
end
_reduce_359(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6085
def _reduce_359(val, _values, result)
                      result = val[0]
                      @context.in_argdef = true
                    
    result
end
_reduce_360(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6092
def _reduce_360(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_363(val, _values, result) click to toggle source

reduce 362 omitted

# File lib/parser/ruby32.rb, line 6104
def _reduce_363(val, _values, result)
                      result = val[1]
                    
    result
end
_reduce_367(val, _values, result) click to toggle source

reduce 366 omitted

# File lib/parser/ruby32.rb, line 6116
def _reduce_367(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_369(val, _values, result) click to toggle source

reduce 368 omitted

# File lib/parser/ruby32.rb, line 6129
def _reduce_369(val, _values, result)
                      result = val
                    
    result
end
_reduce_37(val, _values, result) click to toggle source

reduce 36 omitted

# File lib/parser/ruby32.rb, line 4301
def _reduce_37(val, _values, result)
                      result = @builder.assign(val[0], val[1], val[2])
                    
    result
end
_reduce_372(val, _values, result) click to toggle source

reduce 371 omitted

# File lib/parser/ruby32.rb, line 6139
def _reduce_372(val, _values, result)
                      result = @builder.arg(val[0])
                    
    result
end
_reduce_373(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6145
def _reduce_373(val, _values, result)
                      result = @builder.multi_lhs(val[0], val[1], val[2])
                    
    result
end
_reduce_374(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6151
def _reduce_374(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_375(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6157
def _reduce_375(val, _values, result)
                      result = val[0] << val[2]
                    
    result
end
_reduce_377(val, _values, result) click to toggle source

reduce 376 omitted

# File lib/parser/ruby32.rb, line 6165
def _reduce_377(val, _values, result)
                      result = val[0].
                                  push(val[2])
                    
    result
end
_reduce_378(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6172
def _reduce_378(val, _values, result)
                      result = val[0].
                                  push(val[2]).
                                  concat(val[4])
                    
    result
end
_reduce_379(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6180
def _reduce_379(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_38(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4307
def _reduce_38(val, _values, result)
                      result = @builder.op_assign(val[0], val[1], val[2])
                    
    result
end
_reduce_380(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6186
def _reduce_380(val, _values, result)
                      result = [ val[0], *val[2] ]
                    
    result
end
_reduce_381(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6192
def _reduce_381(val, _values, result)
                      result = @builder.restarg(val[0], val[1])
                    
    result
end
_reduce_382(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6198
def _reduce_382(val, _values, result)
                      result = @builder.restarg(val[0])
                    
    result
end
_reduce_385(val, _values, result) click to toggle source

reduce 384 omitted

# File lib/parser/ruby32.rb, line 6208
def _reduce_385(val, _values, result)
                      @context.in_argdef = false
                    
    result
end
_reduce_386(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6214
def _reduce_386(val, _values, result)
                      result = val[1]
                    
    result
end
_reduce_387(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6220
def _reduce_387(val, _values, result)
                      result = val[0].concat(val[2]).concat(val[3])
                    
    result
end
_reduce_388(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6226
def _reduce_388(val, _values, result)
                      result = val[0].concat(val[1])
                    
    result
end
_reduce_389(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6232
def _reduce_389(val, _values, result)
                      result = val[0].concat(val[1])
                    
    result
end
_reduce_39(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4313
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
_reduce_390(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6238
def _reduce_390(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_391(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6244
def _reduce_391(val, _values, result)
                      result = val[1]
                    
    result
end
_reduce_392(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6250
def _reduce_392(val, _values, result)
                      result = []
                    
    result
end
_reduce_394(val, _values, result) click to toggle source

reduce 393 omitted

# File lib/parser/ruby32.rb, line 6258
def _reduce_394(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[4]).
                                  concat(val[5])
                    
    result
end
_reduce_395(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6267
def _reduce_395(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[4]).
                                  concat(val[6]).
                                  concat(val[7])
                    
    result
end
_reduce_396(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6277
def _reduce_396(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[3])
                    
    result
end
_reduce_397(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6285
def _reduce_397(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[4]).
                                  concat(val[5])
                    
    result
end
_reduce_398(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6294
def _reduce_398(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[3])
                    
    result
end
_reduce_4(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4092
def _reduce_4(val, _values, result)
                      result = []
                    
    result
end
_reduce_40(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4322
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
_reduce_400(val, _values, result) click to toggle source

reduce 399 omitted

# File lib/parser/ruby32.rb, line 6304
def _reduce_400(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[4]).
                                  concat(val[5])
                    
    result
end
_reduce_401(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6313
def _reduce_401(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
_reduce_402(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6323
def _reduce_402(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[3])
                    
    result
end
_reduce_403(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6331
def _reduce_403(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[4]).
                                  concat(val[5])
                    
    result
end
_reduce_404(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6340
def _reduce_404(val, _values, result)
                      result = val[0].
                                  concat(val[1])
                    
    result
end
_reduce_405(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6347
def _reduce_405(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[3])
                    
    result
end
_reduce_406(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6355
def _reduce_406(val, _values, result)
                      result = val[0].
                                  concat(val[1])
                    
    result
end
_reduce_407(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6362
def _reduce_407(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[3])
                    
    result
end
_reduce_409(val, _values, result) click to toggle source

reduce 408 omitted

# File lib/parser/ruby32.rb, line 6372
def _reduce_409(val, _values, result)
                      result = @builder.args(nil, [], nil)
                    
    result
end
_reduce_41(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4331
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(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6378
def _reduce_410(val, _values, result)
                      @lexer.state = :expr_value
                    
    result
end
_reduce_411(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6384
def _reduce_411(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
_reduce_412(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6393
def _reduce_412(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
_reduce_413(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6402
def _reduce_413(val, _values, result)
                      result = []
                    
    result
end
_reduce_414(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6408
def _reduce_414(val, _values, result)
                      result = val[2]
                    
    result
end
_reduce_415(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6414
def _reduce_415(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_416(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6420
def _reduce_416(val, _values, result)
                      result = val[0] << val[2]
                    
    result
end
_reduce_417(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6426
def _reduce_417(val, _values, result)
                      @static_env.declare val[0][0]
                      result = @builder.shadowarg(val[0])
                    
    result
end
_reduce_419(val, _values, result) click to toggle source

reduce 418 omitted

# File lib/parser/ruby32.rb, line 6435
def _reduce_419(val, _values, result)
                      @static_env.extend_dynamic
                      @max_numparam_stack.push(static: false)
                      result = @context.dup
                      @context.in_lambda = true
                    
    result
end
_reduce_42(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4340
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(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6444
def _reduce_420(val, _values, result)
                      @lexer.cmdarg.push(false)
                    
    result
end
_reduce_421(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6450
def _reduce_421(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
_reduce_422(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6466
def _reduce_422(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
_reduce_423(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6474
def _reduce_423(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
_reduce_424(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6484
def _reduce_424(val, _values, result)
                      result = @context.dup
                      @context.in_lambda = true
                    
    result
end
_reduce_425(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6491
def _reduce_425(val, _values, result)
                      @context.in_lambda = val[1].in_lambda
                      result = [ val[0], val[2], val[3] ]
                    
    result
end
_reduce_426(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6498
def _reduce_426(val, _values, result)
                      result = @context.dup
                      @context.in_lambda = true
                    
    result
end
_reduce_427(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6505
def _reduce_427(val, _values, result)
                      @context.in_lambda = val[1].in_lambda
                      result = [ val[0], val[2], val[3] ]
                    
    result
end
_reduce_428(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6512
def _reduce_428(val, _values, result)
                      result = @context.dup
                      @context.in_block = true
                    
    result
end
_reduce_429(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6519
def _reduce_429(val, _values, result)
                      @context.in_block = val[1].in_block
                      result = [ val[0], *val[2], val[3] ]
                    
    result
end
_reduce_43(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4348
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
_reduce_430(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6526
def _reduce_430(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
_reduce_431(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6534
def _reduce_431(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
_reduce_432(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6542
def _reduce_432(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
_reduce_433(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6554
def _reduce_433(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
_reduce_434(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6565
def _reduce_434(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
_reduce_435(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6573
def _reduce_435(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
_reduce_436(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6581
def _reduce_436(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
_reduce_437(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6589
def _reduce_437(val, _values, result)
                      result = @builder.call_method(val[0], val[1], val[2])
                    
    result
end
_reduce_438(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6595
def _reduce_438(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
_reduce_439(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6603
def _reduce_439(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
_reduce_44(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4357
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
_reduce_440(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6611
def _reduce_440(val, _values, result)
                      lparen_t, args, rparen_t = val[1]
                      result = @builder.keyword_cmd(:super, val[0],
                                  lparen_t, args, rparen_t)
                    
    result
end
_reduce_441(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6619
def _reduce_441(val, _values, result)
                      result = @builder.keyword_cmd(:zsuper, val[0])
                    
    result
end
_reduce_442(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6625
def _reduce_442(val, _values, result)
                      result = @builder.index(val[0], val[1], val[2], val[3])
                    
    result
end
_reduce_443(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6631
def _reduce_443(val, _values, result)
                      result = @context.dup
                      @context.in_block = true
                    
    result
end
_reduce_444(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6638
def _reduce_444(val, _values, result)
                      @context.in_block = val[1].in_block
                      result = [ val[0], *val[2], val[3] ]
                    
    result
end
_reduce_445(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6645
def _reduce_445(val, _values, result)
                      result = @context.dup
                      @context.in_block = true
                    
    result
end
_reduce_446(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6652
def _reduce_446(val, _values, result)
                      @context.in_block = val[1].in_block
                      result = [ val[0], *val[2], val[3] ]
                    
    result
end
_reduce_447(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6659
def _reduce_447(val, _values, result)
                      @static_env.extend_dynamic
                      @max_numparam_stack.push(static: false)
                    
    result
end
_reduce_448(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6666
def _reduce_448(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
_reduce_449(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6676
def _reduce_449(val, _values, result)
                      @static_env.extend_dynamic
                      @max_numparam_stack.push(static: false)
                    
    result
end
_reduce_45(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4371
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
_reduce_450(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6683
def _reduce_450(val, _values, result)
                      @lexer.cmdarg.push(false)
                    
    result
end
_reduce_451(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6689
def _reduce_451(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
_reduce_452(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6700
def _reduce_452(val, _values, result)
                      result = [ @builder.when(val[0], val[1], val[2], val[3]),
                                 *val[4] ]
                    
    result
end
_reduce_453(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6707
def _reduce_453(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_455(val, _values, result) click to toggle source

reduce 454 omitted

# File lib/parser/ruby32.rb, line 6715
def _reduce_455(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
_reduce_456(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6727
def _reduce_456(val, _values, result)
                      @pattern_variables.pop
                      @pattern_hash_keys.pop
                      @context.in_kwarg = val[1]
                    
    result
end
_reduce_457(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6735
def _reduce_457(val, _values, result)
                      result = [ @builder.in_pattern(val[0], *val[2], val[3], val[5]),
                                 *val[6] ]
                    
    result
end
_reduce_458(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6742
def _reduce_458(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_46(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4391
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
_reduce_460(val, _values, result) click to toggle source

reduce 459 omitted

# File lib/parser/ruby32.rb, line 6750
def _reduce_460(val, _values, result)
                      result = [ val[0], nil ]
                    
    result
end
_reduce_461(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6756
def _reduce_461(val, _values, result)
                      result = [ val[0], @builder.if_guard(val[1], val[2]) ]
                    
    result
end
_reduce_462(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6762
def _reduce_462(val, _values, result)
                      result = [ val[0], @builder.unless_guard(val[1], val[2]) ]
                    
    result
end
_reduce_464(val, _values, result) click to toggle source

reduce 463 omitted

# File lib/parser/ruby32.rb, line 6770
def _reduce_464(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
_reduce_465(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6780
def _reduce_465(val, _values, result)
                      result = @builder.array_pattern(nil, [val[0]].concat(val[2]), nil)
                    
    result
end
_reduce_466(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6786
def _reduce_466(val, _values, result)
                      result = @builder.find_pattern(nil, val[0], nil)
                    
    result
end
_reduce_467(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6792
def _reduce_467(val, _values, result)
                      result = @builder.array_pattern(nil, val[0], nil)
                    
    result
end
_reduce_468(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6798
def _reduce_468(val, _values, result)
                      result = @builder.hash_pattern(nil, val[0], nil)
                    
    result
end
_reduce_47(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4405
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
_reduce_470(val, _values, result) click to toggle source

reduce 469 omitted

# File lib/parser/ruby32.rb, line 6806
def _reduce_470(val, _values, result)
                      result = @builder.match_as(val[0], val[1], val[2])
                    
    result
end
_reduce_472(val, _values, result) click to toggle source

reduce 471 omitted

# File lib/parser/ruby32.rb, line 6814
def _reduce_472(val, _values, result)
                      result = @builder.match_alt(val[0], val[1], val[2])
                    
    result
end
_reduce_474(val, _values, result) click to toggle source

reduce 473 omitted

# File lib/parser/ruby32.rb, line 6822
def _reduce_474(val, _values, result)
                      result = val[0]
                      @pattern_hash_keys.push
                    
    result
end
_reduce_475(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6829
def _reduce_475(val, _values, result)
                      result = val[0]
                      @pattern_hash_keys.push
                    
    result
end
_reduce_478(val, _values, result) click to toggle source

reduce 477 omitted

# File lib/parser/ruby32.rb, line 6840
def _reduce_478(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
_reduce_479(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6848
def _reduce_479(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
_reduce_48(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4425
def _reduce_48(val, _values, result)
                      @builder.op_assign(val[0], val[1], val[2])
                    
    result
end
_reduce_480(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6856
def _reduce_480(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
_reduce_481(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6864
def _reduce_481(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
_reduce_482(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6871
def _reduce_482(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
_reduce_483(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6879
def _reduce_483(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
_reduce_484(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6887
def _reduce_484(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
_reduce_485(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6895
def _reduce_485(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
_reduce_486(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6902
def _reduce_486(val, _values, result)
                      result = @builder.array_pattern(val[0], val[1], val[2])
                    
    result
end
_reduce_487(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6908
def _reduce_487(val, _values, result)
                      result = @builder.find_pattern(val[0], val[1], val[2])
                    
    result
end
_reduce_488(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6914
def _reduce_488(val, _values, result)
                      result = @builder.array_pattern(val[0], [], val[1])
                    
    result
end
_reduce_489(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6920
def _reduce_489(val, _values, result)
                      @pattern_hash_keys.push
                      result = @context.in_kwarg
                      @context.in_kwarg = false
                    
    result
end
_reduce_490(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6928
def _reduce_490(val, _values, result)
                      @pattern_hash_keys.pop
                      @context.in_kwarg = val[1]
                      result = @builder.hash_pattern(val[0], val[2], val[3])
                    
    result
end
_reduce_491(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6936
def _reduce_491(val, _values, result)
                      result = @builder.hash_pattern(val[0], [], val[1])
                    
    result
end
_reduce_492(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6942
def _reduce_492(val, _values, result)
                      @pattern_hash_keys.push
                    
    result
end
_reduce_493(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6948
def _reduce_493(val, _values, result)
                      @pattern_hash_keys.pop
                      result = @builder.begin(val[0], val[2], val[3])
                    
    result
end
_reduce_494(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6955
def _reduce_494(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_495(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6961
def _reduce_495(val, _values, result)
                      result = val[0]
                    
    result
end
_reduce_496(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6967
def _reduce_496(val, _values, result)
                      result = [ *val[0], val[1] ]
                    
    result
end
_reduce_497(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6973
def _reduce_497(val, _values, result)
                      result = [ *val[0], val[1] ]
                    
    result
end
_reduce_498(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6979
def _reduce_498(val, _values, result)
                      result = [ *val[0], val[1], *val[3] ]
                    
    result
end
_reduce_5(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4098
def _reduce_5(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_50(val, _values, result) click to toggle source

reduce 49 omitted

# File lib/parser/ruby32.rb, line 4433
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
_reduce_500(val, _values, result) click to toggle source

reduce 499 omitted

# File lib/parser/ruby32.rb, line 6987
def _reduce_500(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
_reduce_501(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 6997
def _reduce_501(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
_reduce_502(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7007
def _reduce_502(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_503(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7013
def _reduce_503(val, _values, result)
                      result = [ val[0], *val[2] ]
                    
    result
end
_reduce_504(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7019
def _reduce_504(val, _values, result)
                      result = [ val[0], *val[2], val[4] ]
                    
    result
end
_reduce_505(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7025
def _reduce_505(val, _values, result)
                      result = @builder.match_rest(val[0], val[1])
                    
    result
end
_reduce_506(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7031
def _reduce_506(val, _values, result)
                      result = @builder.match_rest(val[0])
                    
    result
end
_reduce_507(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7037
def _reduce_507(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_508(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7043
def _reduce_508(val, _values, result)
                      result = [ *val[0], val[2] ]
                    
    result
end
_reduce_510(val, _values, result) click to toggle source

reduce 509 omitted

# File lib/parser/ruby32.rb, line 7051
def _reduce_510(val, _values, result)
                      result = [ *val[0], *val[2] ]
                    
    result
end
_reduce_511(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7057
def _reduce_511(val, _values, result)
                      result = val[0]
                    
    result
end
_reduce_512(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7063
def _reduce_512(val, _values, result)
                      result = val[0]
                    
    result
end
_reduce_513(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7069
def _reduce_513(val, _values, result)
                      result = val[0]
                    
    result
end
_reduce_514(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7075
def _reduce_514(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_515(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7081
def _reduce_515(val, _values, result)
                      result = [ *val[0], val[2] ]
                    
    result
end
_reduce_516(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7087
def _reduce_516(val, _values, result)
                      result = @builder.match_pair(*val[0], val[1])
                    
    result
end
_reduce_517(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7093
def _reduce_517(val, _values, result)
                      result = @builder.match_label(*val[0])
                    
    result
end
_reduce_518(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7099
def _reduce_518(val, _values, result)
                    result = [:label, val[0]]
                  
    result
end
_reduce_519(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7105
def _reduce_519(val, _values, result)
                    result = [:quoted, [val[0], val[1], val[2]]]
                  
    result
end
_reduce_520(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7111
def _reduce_520(val, _values, result)
                      result = [ @builder.match_rest(val[0], val[1]) ]
                    
    result
end
_reduce_521(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7117
def _reduce_521(val, _values, result)
                      result = [ @builder.match_rest(val[0], nil) ]
                    
    result
end
_reduce_522(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7123
def _reduce_522(val, _values, result)
                      result = [ @builder.match_nil_pattern(val[0], val[1]) ]
                    
    result
end
_reduce_526(val, _values, result) click to toggle source

reduce 525 omitted

# File lib/parser/ruby32.rb, line 7135
def _reduce_526(val, _values, result)
                      result = @builder.range_inclusive(val[0], val[1], val[2])
                    
    result
end
_reduce_527(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7141
def _reduce_527(val, _values, result)
                      result = @builder.range_exclusive(val[0], val[1], val[2])
                    
    result
end
_reduce_528(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7147
def _reduce_528(val, _values, result)
                      result = @builder.range_inclusive(val[0], val[1], nil)
                    
    result
end
_reduce_529(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7153
def _reduce_529(val, _values, result)
                      result = @builder.range_exclusive(val[0], val[1], nil)
                    
    result
end
_reduce_53(val, _values, result) click to toggle source

reduce 52 omitted

# File lib/parser/ruby32.rb, line 4447
def _reduce_53(val, _values, result)
                      result = @builder.logical_op(:and, val[0], val[1], val[2])
                    
    result
end
_reduce_533(val, _values, result) click to toggle source

reduce 532 omitted

# File lib/parser/ruby32.rb, line 7165
def _reduce_533(val, _values, result)
                      result = @builder.range_inclusive(nil, val[0], val[1])
                    
    result
end
_reduce_534(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7171
def _reduce_534(val, _values, result)
                      result = @builder.range_exclusive(nil, val[0], val[1])
                    
    result
end
_reduce_54(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4453
def _reduce_54(val, _values, result)
                      result = @builder.logical_op(:or, val[0], val[1], val[2])
                    
    result
end
_reduce_543(val, _values, result) click to toggle source

reduce 542 omitted

# File lib/parser/ruby32.rb, line 7193
def _reduce_543(val, _values, result)
                      result = @builder.accessible(val[0])
                    
    result
end
_reduce_545(val, _values, result) click to toggle source

reduce 544 omitted

# File lib/parser/ruby32.rb, line 7201
def _reduce_545(val, _values, result)
                      result = @builder.assignable(@builder.match_var(val[0]))
                    
    result
end
_reduce_546(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7207
def _reduce_546(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
_reduce_547(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7219
def _reduce_547(val, _values, result)
                      non_lvar = @builder.accessible(val[1])
                      result = @builder.pin(val[0], non_lvar)
                    
    result
end
_reduce_548(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7226
def _reduce_548(val, _values, result)
                      expr = @builder.begin(val[1], val[2], val[3])
                      result = @builder.pin(val[0], expr)
                    
    result
end
_reduce_549(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7233
def _reduce_549(val, _values, result)
                      result = @builder.const_global(val[0], val[1])
                    
    result
end
_reduce_55(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4459
def _reduce_55(val, _values, result)
                      result = @builder.not_op(val[0], nil, val[2], nil)
                    
    result
end
_reduce_550(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7239
def _reduce_550(val, _values, result)
                      result = @builder.const_fetch(val[0], val[1], val[2])
                    
    result
end
_reduce_551(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7245
def _reduce_551(val, _values, result)
                      result = @builder.const(val[0])
                   
    result
end
_reduce_552(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7251
def _reduce_552(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
_reduce_553(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7266
def _reduce_553(val, _values, result)
                      result = []
                    
    result
end
_reduce_554(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7272
def _reduce_554(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_557(val, _values, result) click to toggle source

reduce 556 omitted

# File lib/parser/ruby32.rb, line 7282
def _reduce_557(val, _values, result)
                      result = [ val[0], val[1] ]
                    
    result
end
_reduce_559(val, _values, result) click to toggle source

reduce 558 omitted

# File lib/parser/ruby32.rb, line 7290
def _reduce_559(val, _values, result)
                      result = [ val[0], val[1] ]
                    
    result
end
_reduce_56(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4465
def _reduce_56(val, _values, result)
                      result = @builder.not_op(val[0], nil, val[1], nil)
                    
    result
end
_reduce_563(val, _values, result) click to toggle source

reduce 562 omitted

# File lib/parser/ruby32.rb, line 7302
def _reduce_563(val, _values, result)
                      result = @builder.string_compose(nil, val[0], nil)
                    
    result
end
_reduce_564(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7308
def _reduce_564(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_565(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7314
def _reduce_565(val, _values, result)
                      result = val[0] << val[1]
                    
    result
end
_reduce_566(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7320
def _reduce_566(val, _values, result)
                      string = @builder.string_compose(val[0], val[1], val[2])
                      result = @builder.dedent_string(string, @lexer.dedent_level)
                    
    result
end
_reduce_567(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7327
def _reduce_567(val, _values, result)
                      string = @builder.string(val[0])
                      result = @builder.dedent_string(string, @lexer.dedent_level)
                    
    result
end
_reduce_568(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7334
def _reduce_568(val, _values, result)
                      result = @builder.character(val[0])
                    
    result
end
_reduce_569(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7340
def _reduce_569(val, _values, result)
                      string = @builder.xstring_compose(val[0], val[1], val[2])
                      result = @builder.dedent_string(string, @lexer.dedent_level)
                    
    result
end
_reduce_57(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4471
def _reduce_57(val, _values, result)
                      @lexer.state = :expr_beg
                      @lexer.command_start = false
                      @pattern_variables.push

                      result = @context.in_kwarg
                      @context.in_kwarg = true
                    
    result
end
_reduce_570(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7347
def _reduce_570(val, _values, result)
                      opts   = @builder.regexp_options(val[3])
                      result = @builder.regexp_compose(val[0], val[1], val[2], opts)
                    
    result
end
_reduce_571(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7354
def _reduce_571(val, _values, result)
                      result = @builder.words_compose(val[0], val[1], val[2])
                    
    result
end
_reduce_572(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7360
def _reduce_572(val, _values, result)
                      result = []
                    
    result
end
_reduce_573(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7366
def _reduce_573(val, _values, result)
                      result = val[0] << @builder.word(val[1])
                    
    result
end
_reduce_574(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7372
def _reduce_574(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_575(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7378
def _reduce_575(val, _values, result)
                      result = val[0] << val[1]
                    
    result
end
_reduce_576(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7384
def _reduce_576(val, _values, result)
                      result = @builder.symbols_compose(val[0], val[1], val[2])
                    
    result
end
_reduce_577(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7390
def _reduce_577(val, _values, result)
                      result = []
                    
    result
end
_reduce_578(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7396
def _reduce_578(val, _values, result)
                      result = val[0] << @builder.word(val[1])
                    
    result
end
_reduce_579(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7402
def _reduce_579(val, _values, result)
                      result = @builder.words_compose(val[0], val[1], val[2])
                    
    result
end
_reduce_58(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4482
def _reduce_58(val, _values, result)
                      @pattern_variables.pop
                      @context.in_kwarg = val[2]
                      result = @builder.match_pattern(val[0], val[1], val[3])
                    
    result
end
_reduce_580(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7408
def _reduce_580(val, _values, result)
                      result = @builder.symbols_compose(val[0], val[1], val[2])
                    
    result
end
_reduce_581(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7414
def _reduce_581(val, _values, result)
                      result = []
                    
    result
end
_reduce_582(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7420
def _reduce_582(val, _values, result)
                      result = val[0] << @builder.string_internal(val[1])
                    
    result
end
_reduce_583(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7426
def _reduce_583(val, _values, result)
                      result = []
                    
    result
end
_reduce_584(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7432
def _reduce_584(val, _values, result)
                      result = val[0] << @builder.symbol_internal(val[1])
                    
    result
end
_reduce_585(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7438
def _reduce_585(val, _values, result)
                      result = []
                    
    result
end
_reduce_586(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7444
def _reduce_586(val, _values, result)
                      result = val[0] << val[1]
                    
    result
end
_reduce_587(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7450
def _reduce_587(val, _values, result)
                      result = []
                    
    result
end
_reduce_588(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7456
def _reduce_588(val, _values, result)
                      result = val[0] << val[1]
                    
    result
end
_reduce_589(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7462
def _reduce_589(val, _values, result)
                      result = []
                    
    result
end
_reduce_59(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4490
def _reduce_59(val, _values, result)
                      @lexer.state = :expr_beg
                      @lexer.command_start = false
                      @pattern_variables.push

                      result = @context.in_kwarg
                      @context.in_kwarg = true
                    
    result
end
_reduce_590(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7468
def _reduce_590(val, _values, result)
                      result = val[0] << val[1]
                    
    result
end
_reduce_591(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7474
def _reduce_591(val, _values, result)
                      result = @builder.string_internal(val[0])
                    
    result
end
_reduce_592(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7480
def _reduce_592(val, _values, result)
                      result = val[1]
                    
    result
end
_reduce_593(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7486
def _reduce_593(val, _values, result)
                      @lexer.cmdarg.push(false)
                      @lexer.cond.push(false)
                    
    result
end
_reduce_594(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7493
def _reduce_594(val, _values, result)
                      @lexer.cmdarg.pop
                      @lexer.cond.pop

                      result = @builder.begin(val[0], val[2], val[3])
                    
    result
end
_reduce_595(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7502
def _reduce_595(val, _values, result)
                      result = @builder.gvar(val[0])
                    
    result
end
_reduce_596(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7508
def _reduce_596(val, _values, result)
                      result = @builder.ivar(val[0])
                    
    result
end
_reduce_597(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7514
def _reduce_597(val, _values, result)
                      result = @builder.cvar(val[0])
                    
    result
end
_reduce_6(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4104
def _reduce_6(val, _values, result)
                      result = val[0] << val[2]
                    
    result
end
_reduce_60(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4501
def _reduce_60(val, _values, result)
                      @pattern_variables.pop
                      @context.in_kwarg = val[2]
                      result = @builder.match_pattern_p(val[0], val[1], val[3])
                    
    result
end
_reduce_601(val, _values, result) click to toggle source

reduce 600 omitted

# File lib/parser/ruby32.rb, line 7526
def _reduce_601(val, _values, result)
                      @lexer.state = :expr_end
                      result = @builder.symbol(val[0])
                    
    result
end
_reduce_602(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7533
def _reduce_602(val, _values, result)
                      @lexer.state = :expr_end
                      result = @builder.symbol_compose(val[0], val[1], val[2])
                    
    result
end
_reduce_603(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7540
def _reduce_603(val, _values, result)
                      result = val[0]
                    
    result
end
_reduce_604(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7546
def _reduce_604(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
_reduce_605(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7557
def _reduce_605(val, _values, result)
                      @lexer.state = :expr_end
                      result = @builder.integer(val[0])
                    
    result
end
_reduce_606(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7564
def _reduce_606(val, _values, result)
                      @lexer.state = :expr_end
                      result = @builder.float(val[0])
                    
    result
end
_reduce_607(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7571
def _reduce_607(val, _values, result)
                      @lexer.state = :expr_end
                      result = @builder.rational(val[0])
                    
    result
end
_reduce_608(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7578
def _reduce_608(val, _values, result)
                      @lexer.state = :expr_end
                      result = @builder.complex(val[0])
                    
    result
end
_reduce_609(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7585
def _reduce_609(val, _values, result)
                      result = @builder.ivar(val[0])
                    
    result
end
_reduce_610(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7591
def _reduce_610(val, _values, result)
                      result = @builder.gvar(val[0])
                    
    result
end
_reduce_611(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7597
def _reduce_611(val, _values, result)
                      result = @builder.cvar(val[0])
                    
    result
end
_reduce_612(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7603
def _reduce_612(val, _values, result)
                      result = @builder.ident(val[0])
                    
    result
end
_reduce_613(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7609
def _reduce_613(val, _values, result)
                      result = @builder.ivar(val[0])
                    
    result
end
_reduce_614(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7615
def _reduce_614(val, _values, result)
                      result = @builder.gvar(val[0])
                    
    result
end
_reduce_615(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7621
def _reduce_615(val, _values, result)
                      result = @builder.const(val[0])
                    
    result
end
_reduce_616(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7627
def _reduce_616(val, _values, result)
                      result = @builder.cvar(val[0])
                    
    result
end
_reduce_617(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7633
def _reduce_617(val, _values, result)
                      result = @builder.nil(val[0])
                    
    result
end
_reduce_618(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7639
def _reduce_618(val, _values, result)
                      result = @builder.self(val[0])
                    
    result
end
_reduce_619(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7645
def _reduce_619(val, _values, result)
                      result = @builder.true(val[0])
                    
    result
end
_reduce_620(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7651
def _reduce_620(val, _values, result)
                      result = @builder.false(val[0])
                    
    result
end
_reduce_621(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7657
def _reduce_621(val, _values, result)
                      result = @builder.__FILE__(val[0])
                    
    result
end
_reduce_622(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7663
def _reduce_622(val, _values, result)
                      result = @builder.__LINE__(val[0])
                    
    result
end
_reduce_623(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7669
def _reduce_623(val, _values, result)
                      result = @builder.__ENCODING__(val[0])
                    
    result
end
_reduce_624(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7675
def _reduce_624(val, _values, result)
                      result = @builder.accessible(val[0])
                    
    result
end
_reduce_625(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7681
def _reduce_625(val, _values, result)
                      result = @builder.accessible(val[0])
                    
    result
end
_reduce_626(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7687
def _reduce_626(val, _values, result)
                      result = @builder.assignable(val[0])
                    
    result
end
_reduce_627(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7693
def _reduce_627(val, _values, result)
                      result = @builder.assignable(val[0])
                    
    result
end
_reduce_628(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7699
def _reduce_628(val, _values, result)
                      result = @builder.nth_ref(val[0])
                    
    result
end
_reduce_629(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7705
def _reduce_629(val, _values, result)
                      result = @builder.back_ref(val[0])
                    
    result
end
_reduce_63(val, _values, result) click to toggle source

reduce 62 omitted

# File lib/parser/ruby32.rb, line 4513
def _reduce_63(val, _values, result)
                      @lexer.cond.push(true)
                    
    result
end
_reduce_630(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7711
def _reduce_630(val, _values, result)
                      @lexer.state = :expr_value
                    
    result
end
_reduce_631(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7717
def _reduce_631(val, _values, result)
                      result = [ val[0], val[2] ]
                    
    result
end
_reduce_632(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7723
def _reduce_632(val, _values, result)
                      result = nil
                    
    result
end
_reduce_634(val, _values, result) click to toggle source

reduce 633 omitted

# File lib/parser/ruby32.rb, line 7731
def _reduce_634(val, _values, result)
                      @context.in_argdef = false
                      result = @builder.args(nil, [], nil)
                    
    result
end
_reduce_635(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7738
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_637(val, _values, result) click to toggle source

reduce 636 omitted

# File lib/parser/ruby32.rb, line 7749
def _reduce_637(val, _values, result)
                      result = @context.dup
                      @context.in_kwarg = true
                      @context.in_argdef = true
                    
    result
end
_reduce_638(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7757
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
_reduce_639(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7765
def _reduce_639(val, _values, result)
                      result = val[0].concat(val[2]).concat(val[3])
                    
    result
end
_reduce_64(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4519
def _reduce_64(val, _values, result)
                      @lexer.cond.pop
                      result = [ val[1], val[2] ]
                    
    result
end
_reduce_640(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7771
def _reduce_640(val, _values, result)
                      result = val[0].concat(val[1])
                    
    result
end
_reduce_641(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7777
def _reduce_641(val, _values, result)
                      result = val[0].concat(val[1])
                    
    result
end
_reduce_642(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7783
def _reduce_642(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_643(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7789
def _reduce_643(val, _values, result)
                      @static_env.declare_forward_args
                      result = [ @builder.forward_arg(val[0]) ]
                    
    result
end
_reduce_644(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7796
def _reduce_644(val, _values, result)
                      result = val[1]
                    
    result
end
_reduce_645(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7802
def _reduce_645(val, _values, result)
                      result = []
                    
    result
end
_reduce_646(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7808
def _reduce_646(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[4]).
                                  concat(val[5])
                    
    result
end
_reduce_647(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7817
def _reduce_647(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[4]).
                                  concat(val[6]).
                                  concat(val[7])
                    
    result
end
_reduce_648(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7827
def _reduce_648(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[3])
                    
    result
end
_reduce_649(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7835
def _reduce_649(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[4]).
                                  concat(val[5])
                    
    result
end
_reduce_65(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4526
def _reduce_65(val, _values, result)
                      local_push
                      @current_arg_stack.push(nil)

                      result = [ val[0], @context.dup ]
                      @context.in_def = true
                    
    result
end
_reduce_650(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7844
def _reduce_650(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[3])
                    
    result
end
_reduce_651(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7852
def _reduce_651(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[4]).
                                  concat(val[5])
                    
    result
end
_reduce_652(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7861
def _reduce_652(val, _values, result)
                      result = val[0].
                                  concat(val[1])
                    
    result
end
_reduce_653(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7868
def _reduce_653(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[3])
                    
    result
end
_reduce_654(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7876
def _reduce_654(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[4]).
                                  concat(val[5])
                    
    result
end
_reduce_655(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7885
def _reduce_655(val, _values, result)
                      result = val[0].
                                  concat(val[1])
                    
    result
end
_reduce_656(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7892
def _reduce_656(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[3])
                    
    result
end
_reduce_657(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7900
def _reduce_657(val, _values, result)
                      result = val[0].
                                  concat(val[1])
                    
    result
end
_reduce_658(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7907
def _reduce_658(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[3])
                    
    result
end
_reduce_659(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7915
def _reduce_659(val, _values, result)
                      result = val[0]
                    
    result
end
_reduce_66(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4536
def _reduce_66(val, _values, result)
                      result = [ val[0], val[1] ]
                    
    result
end
_reduce_660(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7921
def _reduce_660(val, _values, result)
                      result = []
                    
    result
end
_reduce_661(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7927
def _reduce_661(val, _values, result)
                      result = val[0]
                    
    result
end
_reduce_662(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7933
def _reduce_662(val, _values, result)
                      diagnostic :error, :argument_const, nil, val[0]
                    
    result
end
_reduce_663(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7939
def _reduce_663(val, _values, result)
                      diagnostic :error, :argument_ivar, nil, val[0]
                    
    result
end
_reduce_664(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7945
def _reduce_664(val, _values, result)
                      diagnostic :error, :argument_gvar, nil, val[0]
                    
    result
end
_reduce_665(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7951
def _reduce_665(val, _values, result)
                      diagnostic :error, :argument_cvar, nil, val[0]
                    
    result
end
_reduce_667(val, _values, result) click to toggle source

reduce 666 omitted

# File lib/parser/ruby32.rb, line 7959
def _reduce_667(val, _values, result)
                      @static_env.declare val[0][0]

                      @max_numparam_stack.has_ordinary_params!

                      result = val[0]
                    
    result
end
_reduce_668(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7969
def _reduce_668(val, _values, result)
                      @current_arg_stack.set(val[0][0])
                      result = val[0]
                    
    result
end
_reduce_669(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7976
def _reduce_669(val, _values, result)
                      @current_arg_stack.set(0)
                      result = @builder.arg(val[0])
                    
    result
end
_reduce_67(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4542
def _reduce_67(val, _values, result)
                      @lexer.state = :expr_fname
                      @context.in_argdef = true
                    
    result
end
_reduce_670(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7983
def _reduce_670(val, _values, result)
                      result = @builder.multi_lhs(val[0], val[1], val[2])
                    
    result
end
_reduce_671(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7989
def _reduce_671(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_672(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 7995
def _reduce_672(val, _values, result)
                      result = val[0] << val[2]
                    
    result
end
_reduce_673(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8001
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
_reduce_674(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8016
def _reduce_674(val, _values, result)
                      @current_arg_stack.set(nil)
                      @context.in_argdef = true
                      result = @builder.kwoptarg(val[0], val[1])
                    
    result
end
_reduce_675(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8024
def _reduce_675(val, _values, result)
                      @current_arg_stack.set(nil)
                      @context.in_argdef = true
                      result = @builder.kwarg(val[0])
                    
    result
end
_reduce_676(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8032
def _reduce_676(val, _values, result)
                      @context.in_argdef = true
                      result = @builder.kwoptarg(val[0], val[1])
                    
    result
end
_reduce_677(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8039
def _reduce_677(val, _values, result)
                      @context.in_argdef = true
                      result = @builder.kwarg(val[0])
                    
    result
end
_reduce_678(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8046
def _reduce_678(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_679(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8052
def _reduce_679(val, _values, result)
                      result = val[0] << val[2]
                    
    result
end
_reduce_68(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4549
def _reduce_68(val, _values, result)
                      result = [ val[0], val[1], val[2], val[4] ]
                    
    result
end
_reduce_680(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8058
def _reduce_680(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_681(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8064
def _reduce_681(val, _values, result)
                      result = val[0] << val[2]
                    
    result
end
_reduce_684(val, _values, result) click to toggle source

reduce 683 omitted

# File lib/parser/ruby32.rb, line 8074
def _reduce_684(val, _values, result)
                      result = [ @builder.kwnilarg(val[0], val[1]) ]
                    
    result
end
_reduce_685(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8080
def _reduce_685(val, _values, result)
                      @static_env.declare val[1][0]

                      result = [ @builder.kwrestarg(val[0], val[1]) ]
                    
    result
end
_reduce_686(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8088
def _reduce_686(val, _values, result)
                      result = [ @builder.kwrestarg(val[0]) ]
                    
    result
end
_reduce_687(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8094
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
_reduce_688(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8102
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
_reduce_689(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8110
def _reduce_689(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_690(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8116
def _reduce_690(val, _values, result)
                      result = val[0] << val[2]
                    
    result
end
_reduce_691(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8122
def _reduce_691(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_692(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8128
def _reduce_692(val, _values, result)
                      result = val[0] << val[2]
                    
    result
end
_reduce_695(val, _values, result) click to toggle source

reduce 694 omitted

# File lib/parser/ruby32.rb, line 8138
def _reduce_695(val, _values, result)
                      @static_env.declare val[1][0]

                      result = [ @builder.restarg(val[0], val[1]) ]
                    
    result
end
_reduce_696(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8146
def _reduce_696(val, _values, result)
                      result = [ @builder.restarg(val[0]) ]
                    
    result
end
_reduce_699(val, _values, result) click to toggle source

reduce 698 omitted

# File lib/parser/ruby32.rb, line 8156
def _reduce_699(val, _values, result)
                      @static_env.declare val[1][0]

                      result = @builder.blockarg(val[0], val[1])
                    
    result
end
_reduce_7(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4110
def _reduce_7(val, _values, result)
                      result = [ val[1] ]
                    
    result
end
_reduce_700(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8164
def _reduce_700(val, _values, result)
                      @static_env.declare_anonymous_blockarg

                      result = @builder.blockarg(val[0], nil)
                    
    result
end
_reduce_701(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8172
def _reduce_701(val, _values, result)
                      result = [ val[1] ]
                    
    result
end
_reduce_702(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8178
def _reduce_702(val, _values, result)
                      result = []
                    
    result
end
_reduce_704(val, _values, result) click to toggle source

reduce 703 omitted

# File lib/parser/ruby32.rb, line 8186
def _reduce_704(val, _values, result)
                      result = val[1]
                    
    result
end
_reduce_705(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8192
def _reduce_705(val, _values, result)
                      result = []
                    
    result
end
_reduce_707(val, _values, result) click to toggle source

reduce 706 omitted

# File lib/parser/ruby32.rb, line 8200
def _reduce_707(val, _values, result)
                      result = [ val[0] ]
                    
    result
end
_reduce_708(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8206
def _reduce_708(val, _values, result)
                      result = val[0] << val[2]
                    
    result
end
_reduce_709(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8212
def _reduce_709(val, _values, result)
                      result = @builder.pair(val[0], val[1], val[2])
                    
    result
end
_reduce_710(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8218
def _reduce_710(val, _values, result)
                      result = @builder.pair_keyword(val[0], val[1])
                    
    result
end
_reduce_711(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8224
def _reduce_711(val, _values, result)
                      result = @builder.pair_label(val[0])
                    
    result
end
_reduce_712(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8230
def _reduce_712(val, _values, result)
                      result = @builder.pair_quoted(val[0], val[1], val[2], val[3])
                    
    result
end
_reduce_713(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8236
def _reduce_713(val, _values, result)
                      result = @builder.kwsplat(val[0], val[1])
                    
    result
end
_reduce_72(val, _values, result) click to toggle source

reduce 71 omitted

# File lib/parser/ruby32.rb, line 4561
def _reduce_72(val, _values, result)
                      result = @builder.call_method(val[0], val[1], val[2],
                                  nil, val[3], nil)
                    
    result
end
_reduce_724(val, _values, result) click to toggle source

reduce 723 omitted

# File lib/parser/ruby32.rb, line 8262
def _reduce_724(val, _values, result)
                      result = [:dot, val[0][1]]
                    
    result
end
_reduce_725(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8268
def _reduce_725(val, _values, result)
                      result = [:anddot, val[0][1]]
                    
    result
end
_reduce_73(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4568
def _reduce_73(val, _values, result)
                      result = @context.dup
                      @context.in_block = true
                    
    result
end
_reduce_730(val, _values, result) click to toggle source

reduce 729 omitted

# File lib/parser/ruby32.rb, line 8282
def _reduce_730(val, _values, result)
                      result = val[1]
                    
    result
end
_reduce_731(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8288
def _reduce_731(val, _values, result)
                      result = val[1]
                    
    result
end
_reduce_732(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8294
def _reduce_732(val, _values, result)
                      result = val[1]
                    
    result
end
_reduce_736(val, _values, result) click to toggle source

reduce 735 omitted

# File lib/parser/ruby32.rb, line 8306
def _reduce_736(val, _values, result)
                    yyerrok
                  
    result
end
_reduce_74(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4575
def _reduce_74(val, _values, result)
                      @context.in_block = val[1].in_block
                      result = [ val[0], *val[2], val[3] ]
                    
    result
end
_reduce_740(val, _values, result) click to toggle source

reduce 739 omitted

# File lib/parser/ruby32.rb, line 8318
def _reduce_740(val, _values, result)
                    result = nil
                  
    result
end
_reduce_76(val, _values, result) click to toggle source

reduce 75 omitted

# File lib/parser/ruby32.rb, line 4584
def _reduce_76(val, _values, result)
                      result = @builder.call_method(nil, nil, val[0],
                                  nil, val[1], nil)
                    
    result
end
_reduce_77(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4591
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
_reduce_78(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4602
def _reduce_78(val, _values, result)
                      result = @builder.call_method(val[0], val[1], val[2],
                                  nil, val[3], nil)
                    
    result
end
_reduce_79(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4609
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
_reduce_80(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4620
def _reduce_80(val, _values, result)
                      result = @builder.call_method(val[0], val[1], val[2],
                                  nil, val[3], nil)
                    
    result
end
_reduce_81(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4627
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
_reduce_82(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4638
def _reduce_82(val, _values, result)
                      result = @builder.keyword_cmd(:super, val[0],
                                  nil, val[1], nil)
                    
    result
end
_reduce_83(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4645
def _reduce_83(val, _values, result)
                      result = @builder.keyword_cmd(:yield, val[0],
                                  nil, val[1], nil)
                    
    result
end
_reduce_84(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4652
def _reduce_84(val, _values, result)
                      result = @builder.keyword_cmd(:return, val[0],
                                  nil, val[1], nil)
                    
    result
end
_reduce_85(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4659
def _reduce_85(val, _values, result)
                      result = @builder.keyword_cmd(:break, val[0],
                                  nil, val[1], nil)
                    
    result
end
_reduce_86(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4666
def _reduce_86(val, _values, result)
                      result = @builder.keyword_cmd(:next, val[0],
                                  nil, val[1], nil)
                    
    result
end
_reduce_87(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4673
def _reduce_87(val, _values, result)
                      result = @builder.multi_lhs(nil, val[0], nil)
                    
    result
end
_reduce_88(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4679
def _reduce_88(val, _values, result)
                      result = @builder.begin(val[0], val[1], val[2])
                    
    result
end
_reduce_89(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4685
def _reduce_89(val, _values, result)
                      result = @builder.multi_lhs(nil, val[0], nil)
                    
    result
end
_reduce_9(val, _values, result) click to toggle source

reduce 8 omitted

# File lib/parser/ruby32.rb, line 4118
def _reduce_9(val, _values, result)
                      result = @builder.preexe(val[0], *val[1])
                    
    result
end
_reduce_90(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4691
def _reduce_90(val, _values, result)
                      result = @builder.multi_lhs(val[0], val[1], val[2])
                    
    result
end
_reduce_92(val, _values, result) click to toggle source

reduce 91 omitted

# File lib/parser/ruby32.rb, line 4699
def _reduce_92(val, _values, result)
                      result = val[0].
                                  push(val[1])
                    
    result
end
_reduce_93(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4706
def _reduce_93(val, _values, result)
                      result = val[0].
                                  push(@builder.splat(val[1], val[2]))
                    
    result
end
_reduce_94(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4713
def _reduce_94(val, _values, result)
                      result = val[0].
                                  push(@builder.splat(val[1], val[2])).
                                  concat(val[4])
                    
    result
end
_reduce_95(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4721
def _reduce_95(val, _values, result)
                      result = val[0].
                                  push(@builder.splat(val[1]))
                    
    result
end
_reduce_96(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4728
def _reduce_96(val, _values, result)
                      result = val[0].
                                  push(@builder.splat(val[1])).
                                  concat(val[3])
                    
    result
end
_reduce_97(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4736
def _reduce_97(val, _values, result)
                      result = [ @builder.splat(val[0], val[1]) ]
                    
    result
end
_reduce_98(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4742
def _reduce_98(val, _values, result)
                      result = [ @builder.splat(val[0], val[1]),
                                 *val[3] ]
                    
    result
end
_reduce_99(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 4749
def _reduce_99(val, _values, result)
                      result = [ @builder.splat(val[0]) ]
                    
    result
end
_reduce_none(val, _values, result) click to toggle source
# File lib/parser/ruby32.rb, line 8324
def _reduce_none(val, _values, result)
  val[0]
end
default_encoding() click to toggle source
# File lib/parser/ruby32.rb, line 20
def default_encoding
  Encoding::UTF_8
end
endless_method_name(name_t) click to toggle source
# 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
local_pop() click to toggle source
# File lib/parser/ruby32.rb, line 37
def local_pop
  @static_env.unextend
  @lexer.cmdarg.pop
  @lexer.cond.pop
  @max_numparam_stack.pop
end
local_push() click to toggle source
# 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
try_declare_numparam(node) click to toggle source
# 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
version() click to toggle source
# File lib/parser/ruby32.rb, line 16
def version
  32
end