class Parser::Ruby21

Constants

Racc_arg
Racc_debug_parser
Racc_token_to_s_table

Public Instance Methods

_reduce_10(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 6975
def _reduce_10(val, _values, result)
                      result = @builder.compstmt(val[0])

    result
end
_reduce_100(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7532
def _reduce_100(val, _values, result)
                      result = @builder.attr_asgn(val[0], val[1], val[2])

    result
end
_reduce_101(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7538
def _reduce_101(val, _values, result)
                      result = @builder.attr_asgn(val[0], val[1], val[2])

    result
end
_reduce_102(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7544
def _reduce_102(val, _values, result)
                      result = @builder.attr_asgn(val[0], val[1], val[2])

    result
end
_reduce_103(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7550
def _reduce_103(val, _values, result)
                      result = @builder.assignable(
                                  @builder.const_fetch(val[0], val[1], val[2]))

    result
end
_reduce_104(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7557
def _reduce_104(val, _values, result)
                      result = @builder.assignable(
                                  @builder.const_global(val[0], val[1]))

    result
end
_reduce_105(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7564
def _reduce_105(val, _values, result)
                      result = @builder.assignable(val[0])

    result
end
_reduce_106(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7570
def _reduce_106(val, _values, result)
                      diagnostic :error, :module_name_const, nil, val[0]

    result
end
_reduce_108(val, _values, result) click to toggle source

reduce 107 omitted

# File lib/parser/ruby21.rb, line 7578
def _reduce_108(val, _values, result)
                      result = @builder.const_global(val[0], val[1])

    result
end
_reduce_109(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7584
def _reduce_109(val, _values, result)
                      result = @builder.const(val[0])

    result
end
_reduce_11(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 6981
def _reduce_11(val, _values, result)
                      result = []

    result
end
_reduce_110(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7590
def _reduce_110(val, _values, result)
                      result = @builder.const_fetch(val[0], val[1], val[2])

    result
end
_reduce_116(val, _values, result) click to toggle source

reduce 115 omitted

# File lib/parser/ruby21.rb, line 7606
def _reduce_116(val, _values, result)
                      result = @builder.symbol_internal(val[0])

    result
end
_reduce_12(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 6987
def _reduce_12(val, _values, result)
                      result = [ val[0] ]

    result
end
_reduce_120(val, _values, result) click to toggle source

reduce 119 omitted

# File lib/parser/ruby21.rb, line 7618
def _reduce_120(val, _values, result)
                      result = [ val[0] ]

    result
end
_reduce_121(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7624
def _reduce_121(val, _values, result)
                      @lexer.state = :expr_fname

    result
end
_reduce_122(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7630
def _reduce_122(val, _values, result)
                      result = val[0] << val[3]

    result
end
_reduce_13(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 6993
def _reduce_13(val, _values, result)
                      result = val[0] << val[2]

    result
end
_reduce_14(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 6999
def _reduce_14(val, _values, result)
                      result = [ val[1] ]

    result
end
_reduce_16(val, _values, result) click to toggle source

reduce 15 omitted

# File lib/parser/ruby21.rb, line 7007
def _reduce_16(val, _values, result)
                      diagnostic :error, :begin_in_method, nil, val[0]

    result
end
_reduce_17(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7013
def _reduce_17(val, _values, result)
                      @lexer.state = :expr_fname

    result
end
_reduce_18(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7019
def _reduce_18(val, _values, result)
                      result = @builder.alias(val[0], val[1], val[3])

    result
end
_reduce_19(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7025
def _reduce_19(val, _values, result)
                      result = @builder.alias(val[0],
                                  @builder.gvar(val[1]),
                                  @builder.gvar(val[2]))

    result
end
_reduce_194(val, _values, result) click to toggle source

reduce 193 omitted

# File lib/parser/ruby21.rb, line 7778
def _reduce_194(val, _values, result)
                      result = @builder.assign(val[0], val[1], val[2])

    result
end
_reduce_195(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7784
def _reduce_195(val, _values, result)
                      rescue_body = @builder.rescue_body(val[3],
                                        nil, nil, nil,
                                        nil, val[4])

                      rescue_ = @builder.begin_body(val[2], [ rescue_body ])

                      result  = @builder.assign(val[0], val[1], rescue_)

    result
end
_reduce_196(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7796
def _reduce_196(val, _values, result)
                      result = @builder.op_assign(val[0], val[1], val[2])

    result
end
_reduce_197(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7802
def _reduce_197(val, _values, result)
                      rescue_body = @builder.rescue_body(val[3],
                                        nil, nil, nil,
                                        nil, val[4])

                      rescue_ = @builder.begin_body(val[2], [ rescue_body ])

                      result = @builder.op_assign(val[0], val[1], rescue_)

    result
end
_reduce_198(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7814
def _reduce_198(val, _values, result)
                      result = @builder.op_assign(
                                  @builder.index(
                                    val[0], val[1], val[2], val[3]),
                                  val[4], val[5])

    result
end
_reduce_199(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7823
def _reduce_199(val, _values, result)
                      result = @builder.op_assign(
                                  @builder.call_method(
                                    val[0], val[1], val[2]),
                                  val[3], val[4])

    result
end
_reduce_2(val, _values, result) click to toggle source

reduce 1 omitted

# File lib/parser/ruby21.rb, line 6920
def _reduce_2(val, _values, result)
                      result = @builder.compstmt(val[0])

    result
end
_reduce_20(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7033
def _reduce_20(val, _values, result)
                      result = @builder.alias(val[0],
                                  @builder.gvar(val[1]),
                                  @builder.back_ref(val[2]))

    result
end
_reduce_200(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7832
def _reduce_200(val, _values, result)
                      result = @builder.op_assign(
                                  @builder.call_method(
                                    val[0], val[1], val[2]),
                                  val[3], val[4])

    result
end
_reduce_201(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7841
def _reduce_201(val, _values, result)
                      result = @builder.op_assign(
                                  @builder.call_method(
                                    val[0], val[1], val[2]),
                                  val[3], val[4])

    result
end
_reduce_202(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7850
def _reduce_202(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_203(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7858
def _reduce_203(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_204(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7866
def _reduce_204(val, _values, result)
                      result = @builder.op_assign(val[0], val[1], val[2])

    result
end
_reduce_205(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7872
def _reduce_205(val, _values, result)
                      result = @builder.range_inclusive(val[0], val[1], val[2])

    result
end
_reduce_206(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7878
def _reduce_206(val, _values, result)
                      result = @builder.range_exclusive(val[0], val[1], val[2])

    result
end
_reduce_207(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7884
def _reduce_207(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])

    result
end
_reduce_208(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7890
def _reduce_208(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])

    result
end
_reduce_209(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7896
def _reduce_209(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])

    result
end
_reduce_21(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7041
def _reduce_21(val, _values, result)
                      diagnostic :error, :nth_ref_alias, nil, val[2]

    result
end
_reduce_210(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7902
def _reduce_210(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])

    result
end
_reduce_211(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7908
def _reduce_211(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])

    result
end
_reduce_212(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7914
def _reduce_212(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])

    result
end
_reduce_213(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7920
def _reduce_213(val, _values, result)
                      result = @builder.unary_op(val[0],
                                  @builder.binary_op(
                                    val[1], val[2], val[3]))

    result
end
_reduce_214(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7928
def _reduce_214(val, _values, result)
                      result = @builder.unary_op(val[0], val[1])

    result
end
_reduce_215(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7934
def _reduce_215(val, _values, result)
                      result = @builder.unary_op(val[0], val[1])

    result
end
_reduce_216(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7940
def _reduce_216(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])

    result
end
_reduce_217(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7946
def _reduce_217(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])

    result
end
_reduce_218(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7952
def _reduce_218(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])

    result
end
_reduce_219(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7958
def _reduce_219(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])

    result
end
_reduce_22(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7047
def _reduce_22(val, _values, result)
                      result = @builder.undef_method(val[0], val[1])

    result
end
_reduce_220(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7964
def _reduce_220(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])

    result
end
_reduce_221(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7970
def _reduce_221(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])

    result
end
_reduce_222(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7976
def _reduce_222(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])

    result
end
_reduce_223(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7982
def _reduce_223(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])

    result
end
_reduce_224(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7988
def _reduce_224(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])

    result
end
_reduce_225(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7994
def _reduce_225(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])

    result
end
_reduce_226(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8000
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/ruby21.rb, line 8006
def _reduce_227(val, _values, result)
                      result = @builder.match_op(val[0], val[1], val[2])

    result
end
_reduce_228(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8012
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/ruby21.rb, line 8018
def _reduce_229(val, _values, result)
                      result = @builder.not_op(val[0], nil, val[1], nil)

    result
end
_reduce_23(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7053
def _reduce_23(val, _values, result)
                      result = @builder.condition_mod(val[0], nil,
                                                      val[1], val[2])

    result
end
_reduce_230(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8024
def _reduce_230(val, _values, result)
                      result = @builder.unary_op(val[0], val[1])

    result
end
_reduce_231(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8030
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/ruby21.rb, line 8036
def _reduce_232(val, _values, result)
                      result = @builder.binary_op(val[0], val[1], val[2])

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

    result
end
_reduce_234(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8048
def _reduce_234(val, _values, result)
                      result = @builder.logical_op(:or, val[0], val[1], val[2])

    result
end
_reduce_235(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8054
def _reduce_235(val, _values, result)
                      result = @builder.keyword_cmd(:defined?, val[0], nil, [ val[2] ], nil)

    result
end
_reduce_236(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8060
def _reduce_236(val, _values, result)
                      result = @builder.ternary(val[0], val[1],
                                                val[2], val[4], val[5])

    result
end
_reduce_24(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7060
def _reduce_24(val, _values, result)
                      result = @builder.condition_mod(nil, val[0],
                                                      val[1], val[2])

    result
end
_reduce_241(val, _values, result) click to toggle source

reduce 240 omitted

# File lib/parser/ruby21.rb, line 8075
def _reduce_241(val, _values, result)
                      result = val[0] << @builder.associate(nil, val[2], nil)

    result
end
_reduce_242(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8081
def _reduce_242(val, _values, result)
                      result = [ @builder.associate(nil, val[0], nil) ]

    result
end
_reduce_243(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8087
def _reduce_243(val, _values, result)
                      result = val

    result
end
_reduce_244(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8093
def _reduce_244(val, _values, result)
                      result = [ nil, [], nil ]

    result
end
_reduce_246(val, _values, result) click to toggle source

reduce 245 omitted

# File lib/parser/ruby21.rb, line 8101
def _reduce_246(val, _values, result)
                      result = []

    result
end
_reduce_249(val, _values, result) click to toggle source

reduce 248 omitted

# File lib/parser/ruby21.rb, line 8111
def _reduce_249(val, _values, result)
                      result = val[0] << @builder.associate(nil, val[2], nil)

    result
end
_reduce_25(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7067
def _reduce_25(val, _values, result)
                      result = @builder.loop_mod(:while, val[0], val[1], val[2])

    result
end
_reduce_250(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8117
def _reduce_250(val, _values, result)
                      result = [ @builder.associate(nil, val[0], nil) ]

    result
end
_reduce_251(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8123
def _reduce_251(val, _values, result)
                      result = [ val[0] ]

    result
end
_reduce_252(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8129
def _reduce_252(val, _values, result)
                      result = val[0].concat(val[1])

    result
end
_reduce_253(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8135
def _reduce_253(val, _values, result)
                      result = [ @builder.associate(nil, val[0], nil) ]
                      result.concat(val[1])

    result
end
_reduce_254(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8142
def _reduce_254(val, _values, result)
                      assocs = @builder.associate(nil, val[2], nil)
                      result = val[0] << assocs
                      result.concat(val[3])

    result
end
_reduce_255(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8150
def _reduce_255(val, _values, result)
                      result =  [ val[0] ]

    result
end
_reduce_256(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8156
def _reduce_256(val, _values, result)
                      result = @lexer.cmdarg.dup
                      @lexer.cmdarg.push(true)

    result
end
_reduce_257(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8163
def _reduce_257(val, _values, result)
                      @lexer.cmdarg = val[0]

                      result = val[1]

    result
end
_reduce_258(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8171
def _reduce_258(val, _values, result)
                      result = @builder.block_pass(val[0], val[1])

    result
end
_reduce_259(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8177
def _reduce_259(val, _values, result)
                      result = [ val[1] ]

    result
end
_reduce_26(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7073
def _reduce_26(val, _values, result)
                      result = @builder.loop_mod(:until, val[0], val[1], val[2])

    result
end
_reduce_260(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8183
def _reduce_260(val, _values, result)
                      result = []

    result
end
_reduce_261(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8189
def _reduce_261(val, _values, result)
                      result = [ val[0] ]

    result
end
_reduce_262(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8195
def _reduce_262(val, _values, result)
                      result = [ @builder.splat(val[0], val[1]) ]

    result
end
_reduce_263(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8201
def _reduce_263(val, _values, result)
                      result = val[0] << val[2]

    result
end
_reduce_264(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8207
def _reduce_264(val, _values, result)
                      result = val[0] << @builder.splat(val[2], val[3])

    result
end
_reduce_265(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8213
def _reduce_265(val, _values, result)
                      result = @builder.array(nil, val[0], nil)

    result
end
_reduce_267(val, _values, result) click to toggle source

reduce 266 omitted

# File lib/parser/ruby21.rb, line 8221
def _reduce_267(val, _values, result)
                      result = val[0] << val[2]

    result
end
_reduce_268(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8227
def _reduce_268(val, _values, result)
                      result = val[0] << @builder.splat(val[2], val[3])

    result
end
_reduce_269(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8233
def _reduce_269(val, _values, result)
                      result = [ @builder.splat(val[0], val[1]) ]

    result
end
_reduce_27(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7079
def _reduce_27(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_28(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7089
def _reduce_28(val, _values, result)
                      result = @builder.postexe(val[0], val[1], val[2], val[3])

    result
end
_reduce_280(val, _values, result) click to toggle source

reduce 279 omitted

# File lib/parser/ruby21.rb, line 8259
def _reduce_280(val, _values, result)
                      result = @builder.call_method(nil, nil, val[0])

    result
end
_reduce_281(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8265
def _reduce_281(val, _values, result)
                      result = @lexer.cmdarg.dup
                      @lexer.cmdarg.clear

    result
end
_reduce_282(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8272
def _reduce_282(val, _values, result)
                      @lexer.cmdarg = val[1]

                      result = @builder.begin_keyword(val[0], val[2], val[3])

    result
end
_reduce_283(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8280
def _reduce_283(val, _values, result)
                      result = @lexer.cmdarg.dup
                      @lexer.cmdarg.clear

    result
end
_reduce_284(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8287
def _reduce_284(val, _values, result)
                      @lexer.state = :expr_endarg

    result
end
_reduce_285(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8293
def _reduce_285(val, _values, result)
                      @lexer.cmdarg = val[1]

                      result = @builder.begin(val[0], val[2], val[5])

    result
end
_reduce_286(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8301
def _reduce_286(val, _values, result)
                      @lexer.state = :expr_endarg

    result
end
_reduce_287(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8307
def _reduce_287(val, _values, result)
                      result = @builder.begin(val[0], nil, val[3])

    result
end
_reduce_288(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8313
def _reduce_288(val, _values, result)
                      result = @builder.begin(val[0], val[1], val[2])

    result
end
_reduce_289(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8319
def _reduce_289(val, _values, result)
                      result = @builder.const_fetch(val[0], val[1], val[2])

    result
end
_reduce_290(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8325
def _reduce_290(val, _values, result)
                      result = @builder.const_global(val[0], val[1])

    result
end
_reduce_291(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8331
def _reduce_291(val, _values, result)
                      result = @builder.array(val[0], val[1], val[2])

    result
end
_reduce_292(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8337
def _reduce_292(val, _values, result)
                      result = @builder.associate(val[0], val[1], val[2])

    result
end
_reduce_293(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8343
def _reduce_293(val, _values, result)
                      result = @builder.keyword_cmd(:return, val[0])

    result
end
_reduce_294(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8349
def _reduce_294(val, _values, result)
                      result = @builder.keyword_cmd(:yield, val[0], val[1], val[2], val[3])

    result
end
_reduce_295(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8355
def _reduce_295(val, _values, result)
                      result = @builder.keyword_cmd(:yield, val[0], val[1], [], val[2])

    result
end
_reduce_296(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8361
def _reduce_296(val, _values, result)
                      result = @builder.keyword_cmd(:yield, val[0])

    result
end
_reduce_297(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8367
def _reduce_297(val, _values, result)
                      result = @builder.keyword_cmd(:defined?, val[0],
                                                    val[2], [ val[3] ], val[4])

    result
end
_reduce_298(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8374
def _reduce_298(val, _values, result)
                      result = @builder.not_op(val[0], val[1], val[2], val[3])

    result
end
_reduce_299(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8380
def _reduce_299(val, _values, result)
                      result = @builder.not_op(val[0], val[1], nil, val[2])

    result
end
_reduce_3(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 6926
def _reduce_3(val, _values, result)
                      result = []

    result
end
_reduce_30(val, _values, result) click to toggle source

reduce 29 omitted

# File lib/parser/ruby21.rb, line 7097
def _reduce_30(val, _values, result)
                      result = @builder.multi_assign(val[0], val[1], val[2])

    result
end
_reduce_300(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8386
def _reduce_300(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_302(val, _values, result) click to toggle source

reduce 301 omitted

# File lib/parser/ruby21.rb, line 8398
def _reduce_302(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_303(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8406
def _reduce_303(val, _values, result)
                      result = @context.dup
                      @context.in_lambda = true

    result
end
_reduce_304(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8413
def _reduce_304(val, _values, result)
                      lambda_call = @builder.call_lambda(val[0])

                      args, (begin_t, body, end_t) = val[2]
                      result      = @builder.block(lambda_call,
                                      begin_t, args, body, end_t)

                      @context.in_lambda = val[1].in_lambda

    result
end
_reduce_305(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8425
def _reduce_305(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_306(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8434
def _reduce_306(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_307(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8443
def _reduce_307(val, _values, result)
                      @lexer.cond.push(true)

    result
end
_reduce_308(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8449
def _reduce_308(val, _values, result)
                      @lexer.cond.pop

    result
end
_reduce_309(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8455
def _reduce_309(val, _values, result)
                      result = @builder.loop(:while, val[0], val[2], val[3],
                                             val[5], val[6])

    result
end
_reduce_31(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7103
def _reduce_31(val, _values, result)
                      result = @builder.op_assign(val[0], val[1], val[2])

    result
end
_reduce_310(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8462
def _reduce_310(val, _values, result)
                      @lexer.cond.push(true)

    result
end
_reduce_311(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8468
def _reduce_311(val, _values, result)
                      @lexer.cond.pop

    result
end
_reduce_312(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8474
def _reduce_312(val, _values, result)
                      result = @builder.loop(:until, val[0], val[2], val[3],
                                             val[5], val[6])

    result
end
_reduce_313(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8481
def _reduce_313(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_314(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8491
def _reduce_314(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_315(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8501
def _reduce_315(val, _values, result)
                      @lexer.cond.push(true)

    result
end
_reduce_316(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8507
def _reduce_316(val, _values, result)
                      @lexer.cond.pop

    result
end
_reduce_317(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8513
def _reduce_317(val, _values, result)
                      result = @builder.for(val[0], val[1],
                                            val[2], val[4],
                                            val[5], val[7], val[8])

    result
end
_reduce_318(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8521
def _reduce_318(val, _values, result)
                      local_push
                      @context.in_class = true

    result
end
_reduce_319(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8528
def _reduce_319(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_32(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7109
def _reduce_32(val, _values, result)
                      result = @builder.op_assign(
                                  @builder.index(
                                    val[0], val[1], val[2], val[3]),
                                  val[4], val[5])

    result
end
_reduce_320(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8545
def _reduce_320(val, _values, result)
                      @context.in_def = false
                      @context.in_class = false
                      local_push

    result
end
_reduce_321(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8553
def _reduce_321(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_322(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8565
def _reduce_322(val, _values, result)
                      @context.in_class = true
                      local_push

    result
end
_reduce_323(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8572
def _reduce_323(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_324(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8587
def _reduce_324(val, _values, result)
                      local_push
                      result = context.dup
                      @context.in_def = true

    result
end
_reduce_325(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8595
def _reduce_325(val, _values, result)
                      result = @builder.def_method(val[0], val[1],
                                  val[3], val[4], val[5])

                      local_pop
                      @context.in_def = val[2].in_def

    result
end
_reduce_326(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8605
def _reduce_326(val, _values, result)
                      @lexer.state = :expr_fname

    result
end
_reduce_327(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8611
def _reduce_327(val, _values, result)
                      local_push
                      result = context.dup
                      @context.in_def = true

    result
end
_reduce_328(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8619
def _reduce_328(val, _values, result)
                      result = @builder.def_singleton(val[0], val[1], val[2],
                                  val[4], val[6], val[7], val[8])

                      local_pop
                      @context.in_def = val[5].in_def

    result
end
_reduce_329(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8629
def _reduce_329(val, _values, result)
                      result = @builder.keyword_cmd(:break, val[0])

    result
end
_reduce_33(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7118
def _reduce_33(val, _values, result)
                      result = @builder.op_assign(
                                  @builder.call_method(
                                    val[0], val[1], val[2]),
                                  val[3], val[4])

    result
end
_reduce_330(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8635
def _reduce_330(val, _values, result)
                      result = @builder.keyword_cmd(:next, val[0])

    result
end
_reduce_331(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8641
def _reduce_331(val, _values, result)
                      result = @builder.keyword_cmd(:redo, val[0])

    result
end
_reduce_332(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8647
def _reduce_332(val, _values, result)
                      result = @builder.keyword_cmd(:retry, val[0])

    result
end
_reduce_334(val, _values, result) click to toggle source

reduce 333 omitted

# File lib/parser/ruby21.rb, line 8655
def _reduce_334(val, _values, result)
                      result = [ val[0], @context.dup ]

    result
end
_reduce_335(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8661
def _reduce_335(val, _values, result)
                      result = [ val[0], @context.dup ]

    result
end
_reduce_338(val, _values, result) click to toggle source

reduce 337 omitted

# File lib/parser/ruby21.rb, line 8671
def _reduce_338(val, _values, result)
                      result = val[1]

    result
end
_reduce_34(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7127
def _reduce_34(val, _values, result)
                      result = @builder.op_assign(
                                  @builder.call_method(
                                    val[0], val[1], val[2]),
                                  val[3], val[4])

    result
end
_reduce_342(val, _values, result) click to toggle source

reduce 341 omitted

# File lib/parser/ruby21.rb, line 8683
def _reduce_342(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_344(val, _values, result) click to toggle source

reduce 343 omitted

# File lib/parser/ruby21.rb, line 8696
def _reduce_344(val, _values, result)
                      result = val

    result
end
_reduce_347(val, _values, result) click to toggle source

reduce 346 omitted

# File lib/parser/ruby21.rb, line 8706
def _reduce_347(val, _values, result)
                      result = @builder.arg(val[0])

    result
end
_reduce_348(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8712
def _reduce_348(val, _values, result)
                      result = @builder.multi_lhs(val[0], val[1], val[2])

    result
end
_reduce_349(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8718
def _reduce_349(val, _values, result)
                      result = [ val[0] ]

    result
end
_reduce_35(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7136
def _reduce_35(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_350(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8724
def _reduce_350(val, _values, result)
                      result = val[0] << val[2]

    result
end
_reduce_352(val, _values, result) click to toggle source

reduce 351 omitted

# File lib/parser/ruby21.rb, line 8732
def _reduce_352(val, _values, result)
                      result = val[0].
                                  push(@builder.restarg(val[2], val[3]))

    result
end
_reduce_353(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8739
def _reduce_353(val, _values, result)
                      result = val[0].
                                  push(@builder.restarg(val[2], val[3])).
                                  concat(val[5])

    result
end
_reduce_354(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8747
def _reduce_354(val, _values, result)
                      result = val[0].
                                  push(@builder.restarg(val[2]))

    result
end
_reduce_355(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8754
def _reduce_355(val, _values, result)
                      result = val[0].
                                  push(@builder.restarg(val[2])).
                                  concat(val[4])

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

    result
end
_reduce_357(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8768
def _reduce_357(val, _values, result)
                      result = [ @builder.restarg(val[0], val[1]),
                                 *val[3] ]

    result
end
_reduce_358(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8775
def _reduce_358(val, _values, result)
                      result = [ @builder.restarg(val[0]) ]

    result
end
_reduce_359(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8781
def _reduce_359(val, _values, result)
                      result = [ @builder.restarg(val[0]),
                                 *val[2] ]

    result
end
_reduce_36(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7144
def _reduce_36(val, _values, result)
                      result = @builder.op_assign(
                                  @builder.call_method(
                                    val[0], val[1], val[2]),
                                  val[3], val[4])

    result
end
_reduce_360(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8788
def _reduce_360(val, _values, result)
                      result = val[0].concat(val[2]).concat(val[3])

    result
end
_reduce_361(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8794
def _reduce_361(val, _values, result)
                      result = val[0].concat(val[1])

    result
end
_reduce_362(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8800
def _reduce_362(val, _values, result)
                      result = val[0].concat(val[1])

    result
end
_reduce_363(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8806
def _reduce_363(val, _values, result)
                      result = [ val[0] ]

    result
end
_reduce_364(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8812
def _reduce_364(val, _values, result)
                      result = val[1]

    result
end
_reduce_365(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8818
def _reduce_365(val, _values, result)
                      result = []

    result
end
_reduce_366(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8824
def _reduce_366(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[4]).
                                  concat(val[5])

    result
end
_reduce_367(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8833
def _reduce_367(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[4]).
                                  concat(val[6]).
                                  concat(val[7])

    result
end
_reduce_368(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8843
def _reduce_368(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[3])

    result
end
_reduce_369(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8851
def _reduce_369(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[4]).
                                  concat(val[5])

    result
end
_reduce_37(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7153
def _reduce_37(val, _values, result)
                      @builder.op_assign(val[0], val[1], val[2])

    result
end
_reduce_370(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8860
def _reduce_370(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[3])

    result
end
_reduce_372(val, _values, result) click to toggle source

reduce 371 omitted

# File lib/parser/ruby21.rb, line 8870
def _reduce_372(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[4]).
                                  concat(val[5])

    result
end
_reduce_373(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8879
def _reduce_373(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_374(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8889
def _reduce_374(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[3])

    result
end
_reduce_375(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8897
def _reduce_375(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[4]).
                                  concat(val[5])

    result
end
_reduce_376(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8906
def _reduce_376(val, _values, result)
                      result = val[0].
                                  concat(val[1])

    result
end
_reduce_377(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8913
def _reduce_377(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[3])

    result
end
_reduce_378(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8921
def _reduce_378(val, _values, result)
                      result = val[0].
                                  concat(val[1])

    result
end
_reduce_379(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8928
def _reduce_379(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[3])

    result
end
_reduce_38(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7159
def _reduce_38(val, _values, result)
                      result = @builder.assign(val[0], val[1],
                                  @builder.array(nil, val[2], nil))

    result
end
_reduce_381(val, _values, result) click to toggle source

reduce 380 omitted

# File lib/parser/ruby21.rb, line 8938
def _reduce_381(val, _values, result)
                      result = @builder.args(nil, [], nil)

    result
end
_reduce_382(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8944
def _reduce_382(val, _values, result)
                      @lexer.state = :expr_value

    result
end
_reduce_383(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8950
def _reduce_383(val, _values, result)
                      result = @builder.args(val[0], val[1], val[2])

    result
end
_reduce_384(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8956
def _reduce_384(val, _values, result)
                      result = @builder.args(val[0], [], val[0])

    result
end
_reduce_385(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8962
def _reduce_385(val, _values, result)
                      result = @builder.args(val[0], val[1].concat(val[2]), val[3])

    result
end
_reduce_386(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8968
def _reduce_386(val, _values, result)
                      result = []

    result
end
_reduce_387(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8974
def _reduce_387(val, _values, result)
                      result = val[2]

    result
end
_reduce_388(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8980
def _reduce_388(val, _values, result)
                      result = [ val[0] ]

    result
end
_reduce_389(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8986
def _reduce_389(val, _values, result)
                      result = val[0] << val[2]

    result
end
_reduce_39(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7166
def _reduce_39(val, _values, result)
                      result = @builder.multi_assign(val[0], val[1], val[2])

    result
end
_reduce_390(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 8992
def _reduce_390(val, _values, result)
                      @static_env.declare val[0][0]
                      result = @builder.shadowarg(val[0])

    result
end
_reduce_392(val, _values, result) click to toggle source

reduce 391 omitted

# File lib/parser/ruby21.rb, line 9001
def _reduce_392(val, _values, result)
                      @static_env.extend_dynamic

    result
end
_reduce_393(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9007
def _reduce_393(val, _values, result)
                      result = @lexer.cmdarg.dup
                      @lexer.cmdarg.clear

    result
end
_reduce_394(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9014
def _reduce_394(val, _values, result)
                      @lexer.cmdarg = val[2]
                      @lexer.cmdarg.lexpop

                      result = [ val[1], val[3] ]

                      @static_env.unextend

    result
end
_reduce_395(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9025
def _reduce_395(val, _values, result)
                      result = @builder.args(val[0], val[1].concat(val[2]), val[3])

    result
end
_reduce_396(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9031
def _reduce_396(val, _values, result)
                      result = @builder.args(nil, val[0], nil)

    result
end
_reduce_397(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9037
def _reduce_397(val, _values, result)
                      result = @context.dup
                      @context.in_lambda = true

    result
end
_reduce_398(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9044
def _reduce_398(val, _values, result)
                      result = [ val[0], val[2], val[3] ]
                      @context.in_lambda = val[1].in_lambda

    result
end
_reduce_399(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9051
def _reduce_399(val, _values, result)
                      result = @context.dup
                      @context.in_lambda = true

    result
end
_reduce_4(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 6932
def _reduce_4(val, _values, result)
                      result = [ val[0] ]

    result
end
_reduce_400(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9058
def _reduce_400(val, _values, result)
                      result = [ val[0], val[2], val[3] ]
                      @context.in_lambda = val[1].in_lambda

    result
end
_reduce_401(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9065
def _reduce_401(val, _values, result)
                      @static_env.extend_dynamic
                      result = @context.dup
                      @context.in_block = true

    result
end
_reduce_402(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9073
def _reduce_402(val, _values, result)
                      result = [ val[0], val[2], val[3], val[4] ]

                      @static_env.unextend
                      @context.in_block = val[1].in_block

    result
end
_reduce_403(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9082
def _reduce_403(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_404(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9090
def _reduce_404(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_405(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9098
def _reduce_405(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_406(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9110
def _reduce_406(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_407(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9121
def _reduce_407(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_408(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9129
def _reduce_408(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_409(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9137
def _reduce_409(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_41(val, _values, result) click to toggle source

reduce 40 omitted

# File lib/parser/ruby21.rb, line 7174
def _reduce_41(val, _values, result)
                      result = @builder.assign(val[0], val[1], val[2])

    result
end
_reduce_410(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9145
def _reduce_410(val, _values, result)
                      result = @builder.call_method(val[0], val[1], val[2])

    result
end
_reduce_411(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9151
def _reduce_411(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_412(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9159
def _reduce_412(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_413(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9167
def _reduce_413(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_414(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9175
def _reduce_414(val, _values, result)
                      result = @builder.keyword_cmd(:zsuper, val[0])

    result
end
_reduce_415(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9181
def _reduce_415(val, _values, result)
                      result = @builder.index(val[0], val[1], val[2], val[3])

    result
end
_reduce_416(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9187
def _reduce_416(val, _values, result)
                      @static_env.extend_dynamic
                      result = @context.dup
                      @context.in_block = true

    result
end
_reduce_417(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9195
def _reduce_417(val, _values, result)
                      result = [ val[0], val[2], val[3], val[4] ]

                      @static_env.unextend
                      @context.in_block = val[1].in_block

    result
end
_reduce_418(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9204
def _reduce_418(val, _values, result)
                      @static_env.extend_dynamic
                      result = @context.dup
                      @context.in_block = true

    result
end
_reduce_419(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9212
def _reduce_419(val, _values, result)
                      result = [ val[0], val[2], val[3], val[4] ]

                      @static_env.unextend
                      @context.in_block = val[1].in_block

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

    result
end
_reduce_420(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9221
def _reduce_420(val, _values, result)
                      result = [ @builder.when(val[0], val[1], val[2], val[3]),
                                 *val[4] ]

    result
end
_reduce_421(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9228
def _reduce_421(val, _values, result)
                      result = [ val[0] ]

    result
end
_reduce_423(val, _values, result) click to toggle source

reduce 422 omitted

# File lib/parser/ruby21.rb, line 9236
def _reduce_423(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_424(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9251
def _reduce_424(val, _values, result)
                      result = []

    result
end
_reduce_425(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9257
def _reduce_425(val, _values, result)
                      result = [ val[0] ]

    result
end
_reduce_428(val, _values, result) click to toggle source

reduce 427 omitted

# File lib/parser/ruby21.rb, line 9267
def _reduce_428(val, _values, result)
                      result = [ val[0], val[1] ]

    result
end
_reduce_430(val, _values, result) click to toggle source

reduce 429 omitted

# File lib/parser/ruby21.rb, line 9275
def _reduce_430(val, _values, result)
                      result = [ val[0], val[1] ]

    result
end
_reduce_435(val, _values, result) click to toggle source

reduce 434 omitted

# File lib/parser/ruby21.rb, line 9289
def _reduce_435(val, _values, result)
                      result = @builder.string_compose(nil, val[0], nil)

    result
end
_reduce_436(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9295
def _reduce_436(val, _values, result)
                      result = [ val[0] ]

    result
end
_reduce_437(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9301
def _reduce_437(val, _values, result)
                      result = val[0] << val[1]

    result
end
_reduce_438(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9307
def _reduce_438(val, _values, result)
                      result = @builder.string_compose(val[0], val[1], val[2])

    result
end
_reduce_439(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9313
def _reduce_439(val, _values, result)
                      result = @builder.string(val[0])

    result
end
_reduce_44(val, _values, result) click to toggle source

reduce 43 omitted

# File lib/parser/ruby21.rb, line 7188
def _reduce_44(val, _values, result)
                      result = @builder.logical_op(:and, val[0], val[1], val[2])

    result
end
_reduce_440(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9319
def _reduce_440(val, _values, result)
                      result = @builder.character(val[0])

    result
end
_reduce_441(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9325
def _reduce_441(val, _values, result)
                      result = @builder.xstring_compose(val[0], val[1], val[2])

    result
end
_reduce_442(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9331
def _reduce_442(val, _values, result)
                      opts   = @builder.regexp_options(val[3])
                      result = @builder.regexp_compose(val[0], val[1], val[2], opts)

    result
end
_reduce_443(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9338
def _reduce_443(val, _values, result)
                      result = @builder.words_compose(val[0], val[1], val[2])

    result
end
_reduce_444(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9344
def _reduce_444(val, _values, result)
                      result = []

    result
end
_reduce_445(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9350
def _reduce_445(val, _values, result)
                      result = val[0] << @builder.word(val[1])

    result
end
_reduce_446(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9356
def _reduce_446(val, _values, result)
                      result = [ val[0] ]

    result
end
_reduce_447(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9362
def _reduce_447(val, _values, result)
                      result = val[0] << val[1]

    result
end
_reduce_448(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9368
def _reduce_448(val, _values, result)
                      result = @builder.symbols_compose(val[0], val[1], val[2])

    result
end
_reduce_449(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9374
def _reduce_449(val, _values, result)
                      result = []

    result
end
_reduce_45(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7194
def _reduce_45(val, _values, result)
                      result = @builder.logical_op(:or, val[0], val[1], val[2])

    result
end
_reduce_450(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9380
def _reduce_450(val, _values, result)
                      result = val[0] << @builder.word(val[1])

    result
end
_reduce_451(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9386
def _reduce_451(val, _values, result)
                      result = @builder.words_compose(val[0], val[1], val[2])

    result
end
_reduce_452(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9392
def _reduce_452(val, _values, result)
                      result = @builder.symbols_compose(val[0], val[1], val[2])

    result
end
_reduce_453(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9398
def _reduce_453(val, _values, result)
                      result = []

    result
end
_reduce_454(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9404
def _reduce_454(val, _values, result)
                      result = val[0] << @builder.string_internal(val[1])

    result
end
_reduce_455(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9410
def _reduce_455(val, _values, result)
                      result = []

    result
end
_reduce_456(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9416
def _reduce_456(val, _values, result)
                      result = val[0] << @builder.symbol_internal(val[1])

    result
end
_reduce_457(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9422
def _reduce_457(val, _values, result)
                      result = []

    result
end
_reduce_458(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9428
def _reduce_458(val, _values, result)
                      result = val[0] << val[1]

    result
end
_reduce_459(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9434
def _reduce_459(val, _values, result)
                      result = []

    result
end
_reduce_46(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7200
def _reduce_46(val, _values, result)
                      result = @builder.not_op(val[0], nil, val[2], nil)

    result
end
_reduce_460(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9440
def _reduce_460(val, _values, result)
                      result = val[0] << val[1]

    result
end
_reduce_461(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9446
def _reduce_461(val, _values, result)
                      result = []

    result
end
_reduce_462(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9452
def _reduce_462(val, _values, result)
                      result = val[0] << val[1]

    result
end
_reduce_463(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9458
def _reduce_463(val, _values, result)
                      result = @builder.string_internal(val[0])

    result
end
_reduce_464(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9464
def _reduce_464(val, _values, result)
                      result = val[1]

    result
end
_reduce_465(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9470
def _reduce_465(val, _values, result)
                      @lexer.cond.push(false)
                      @lexer.cmdarg.push(false)

    result
end
_reduce_466(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9477
def _reduce_466(val, _values, result)
                      @lexer.cond.lexpop
                      @lexer.cmdarg.lexpop

                      result = @builder.begin(val[0], val[2], val[3])

    result
end
_reduce_467(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9486
def _reduce_467(val, _values, result)
                      result = @builder.gvar(val[0])

    result
end
_reduce_468(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9492
def _reduce_468(val, _values, result)
                      result = @builder.ivar(val[0])

    result
end
_reduce_469(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9498
def _reduce_469(val, _values, result)
                      result = @builder.cvar(val[0])

    result
end
_reduce_47(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7206
def _reduce_47(val, _values, result)
                      result = @builder.not_op(val[0], nil, val[1], nil)

    result
end
_reduce_471(val, _values, result) click to toggle source

reduce 470 omitted

# File lib/parser/ruby21.rb, line 9506
def _reduce_471(val, _values, result)
                      result = @builder.symbol(val[0])

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

    result
end
_reduce_473(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9518
def _reduce_473(val, _values, result)
                      result = val[0]

    result
end
_reduce_474(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9524
def _reduce_474(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_475(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9535
def _reduce_475(val, _values, result)
                      result = @builder.integer(val[0])

    result
end
_reduce_476(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9541
def _reduce_476(val, _values, result)
                      result = @builder.float(val[0])

    result
end
_reduce_477(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9547
def _reduce_477(val, _values, result)
                      result = @builder.rational(val[0])

    result
end
_reduce_478(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9553
def _reduce_478(val, _values, result)
                      result = @builder.complex(val[0])

    result
end
_reduce_479(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9559
def _reduce_479(val, _values, result)
                      result = @builder.ident(val[0])

    result
end
_reduce_480(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9565
def _reduce_480(val, _values, result)
                      result = @builder.ivar(val[0])

    result
end
_reduce_481(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9571
def _reduce_481(val, _values, result)
                      result = @builder.gvar(val[0])

    result
end
_reduce_482(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9577
def _reduce_482(val, _values, result)
                      result = @builder.const(val[0])

    result
end
_reduce_483(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9583
def _reduce_483(val, _values, result)
                      result = @builder.cvar(val[0])

    result
end
_reduce_484(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9589
def _reduce_484(val, _values, result)
                      result = @builder.nil(val[0])

    result
end
_reduce_485(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9595
def _reduce_485(val, _values, result)
                      result = @builder.self(val[0])

    result
end
_reduce_486(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9601
def _reduce_486(val, _values, result)
                      result = @builder.true(val[0])

    result
end
_reduce_487(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9607
def _reduce_487(val, _values, result)
                      result = @builder.false(val[0])

    result
end
_reduce_488(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9613
def _reduce_488(val, _values, result)
                      result = @builder.__FILE__(val[0])

    result
end
_reduce_489(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9619
def _reduce_489(val, _values, result)
                      result = @builder.__LINE__(val[0])

    result
end
_reduce_490(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9625
def _reduce_490(val, _values, result)
                      result = @builder.__ENCODING__(val[0])

    result
end
_reduce_491(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9631
def _reduce_491(val, _values, result)
                      result = @builder.accessible(val[0])

    result
end
_reduce_492(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9637
def _reduce_492(val, _values, result)
                      result = @builder.accessible(val[0])

    result
end
_reduce_493(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9643
def _reduce_493(val, _values, result)
                      result = @builder.assignable(val[0])

    result
end
_reduce_494(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9649
def _reduce_494(val, _values, result)
                      result = @builder.assignable(val[0])

    result
end
_reduce_495(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9655
def _reduce_495(val, _values, result)
                      result = @builder.nth_ref(val[0])

    result
end
_reduce_496(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9661
def _reduce_496(val, _values, result)
                      result = @builder.back_ref(val[0])

    result
end
_reduce_497(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9667
def _reduce_497(val, _values, result)
                      result = nil

    result
end
_reduce_498(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9673
def _reduce_498(val, _values, result)
                      @lexer.state = :expr_value

    result
end
_reduce_499(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9679
def _reduce_499(val, _values, result)
                      result = [ val[0], val[2] ]

    result
end
_reduce_5(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 6938
def _reduce_5(val, _values, result)
                      result = val[0] << val[2]

    result
end
_reduce_500(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9685
def _reduce_500(val, _values, result)
                      yyerrok
                      result = nil

    result
end
_reduce_501(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9692
def _reduce_501(val, _values, result)
                      result = @builder.args(val[0], val[1], val[2])

                      @lexer.state = :expr_value

    result
end
_reduce_502(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9700
def _reduce_502(val, _values, result)
                      result = @context.in_kwarg
                      @context.in_kwarg = true

    result
end
_reduce_503(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9707
def _reduce_503(val, _values, result)
                      @context.in_kwarg = val[0]
                      result = @builder.args(nil, val[1], nil)

    result
end
_reduce_504(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9714
def _reduce_504(val, _values, result)
                      result = val[0].concat(val[2]).concat(val[3])

    result
end
_reduce_505(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9720
def _reduce_505(val, _values, result)
                      result = val[0].concat(val[1])

    result
end
_reduce_506(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9726
def _reduce_506(val, _values, result)
                      result = val[0].concat(val[1])

    result
end
_reduce_507(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9732
def _reduce_507(val, _values, result)
                      result = [ val[0] ]

    result
end
_reduce_508(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9738
def _reduce_508(val, _values, result)
                      result = val[1]

    result
end
_reduce_509(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9744
def _reduce_509(val, _values, result)
                      result = []

    result
end
_reduce_510(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9750
def _reduce_510(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[4]).
                                  concat(val[5])

    result
end
_reduce_511(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9759
def _reduce_511(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[4]).
                                  concat(val[6]).
                                  concat(val[7])

    result
end
_reduce_512(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9769
def _reduce_512(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[3])

    result
end
_reduce_513(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9777
def _reduce_513(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[4]).
                                  concat(val[5])

    result
end
_reduce_514(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9786
def _reduce_514(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[3])

    result
end
_reduce_515(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9794
def _reduce_515(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[4]).
                                  concat(val[5])

    result
end
_reduce_516(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9803
def _reduce_516(val, _values, result)
                      result = val[0].
                                  concat(val[1])

    result
end
_reduce_517(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9810
def _reduce_517(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[3])

    result
end
_reduce_518(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9818
def _reduce_518(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[4]).
                                  concat(val[5])

    result
end
_reduce_519(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9827
def _reduce_519(val, _values, result)
                      result = val[0].
                                  concat(val[1])

    result
end
_reduce_520(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9834
def _reduce_520(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[3])

    result
end
_reduce_521(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9842
def _reduce_521(val, _values, result)
                      result = val[0].
                                  concat(val[1])

    result
end
_reduce_522(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9849
def _reduce_522(val, _values, result)
                      result = val[0].
                                  concat(val[2]).
                                  concat(val[3])

    result
end
_reduce_523(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9857
def _reduce_523(val, _values, result)
                      result = val[0]

    result
end
_reduce_524(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9863
def _reduce_524(val, _values, result)
                      result = []

    result
end
_reduce_525(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9869
def _reduce_525(val, _values, result)
                      diagnostic :error, :argument_const, nil, val[0]

    result
end
_reduce_526(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9875
def _reduce_526(val, _values, result)
                      diagnostic :error, :argument_ivar, nil, val[0]

    result
end
_reduce_527(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9881
def _reduce_527(val, _values, result)
                      diagnostic :error, :argument_gvar, nil, val[0]

    result
end
_reduce_528(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9887
def _reduce_528(val, _values, result)
                      diagnostic :error, :argument_cvar, nil, val[0]

    result
end
_reduce_53(val, _values, result) click to toggle source

reduce 52 omitted

# File lib/parser/ruby21.rb, line 7222
def _reduce_53(val, _values, result)
                      result = @builder.call_method(val[0], val[1], val[2],
                                  nil, val[3], nil)

    result
end
_reduce_530(val, _values, result) click to toggle source

reduce 529 omitted

# File lib/parser/ruby21.rb, line 9895
def _reduce_530(val, _values, result)
                      @static_env.declare val[0][0]

                      result = val[0]

    result
end
_reduce_531(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9903
def _reduce_531(val, _values, result)
                      result = @builder.arg(val[0])

    result
end
_reduce_532(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9909
def _reduce_532(val, _values, result)
                      result = @builder.multi_lhs(val[0], val[1], val[2])

    result
end
_reduce_533(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9915
def _reduce_533(val, _values, result)
                      result = [ val[0] ]

    result
end
_reduce_534(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9921
def _reduce_534(val, _values, result)
                      result = val[0] << val[2]

    result
end
_reduce_535(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9927
def _reduce_535(val, _values, result)
                      check_kwarg_name(val[0])

                      @static_env.declare val[0][0]

                      result = val[0]

    result
end
_reduce_536(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9937
def _reduce_536(val, _values, result)
                      result = @builder.kwoptarg(val[0], val[1])

    result
end
_reduce_537(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9943
def _reduce_537(val, _values, result)
                      result = @builder.kwarg(val[0])

    result
end
_reduce_538(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9949
def _reduce_538(val, _values, result)
                      result = @builder.kwoptarg(val[0], val[1])

    result
end
_reduce_539(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9955
def _reduce_539(val, _values, result)
                      result = @builder.kwarg(val[0])

    result
end
_reduce_54(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7229
def _reduce_54(val, _values, result)
                      @static_env.extend_dynamic
                      result = @context.dup
                      @context.in_block = true

    result
end
_reduce_540(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9961
def _reduce_540(val, _values, result)
                      result = [ val[0] ]

    result
end
_reduce_541(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9967
def _reduce_541(val, _values, result)
                      result = val[0] << val[2]

    result
end
_reduce_542(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9973
def _reduce_542(val, _values, result)
                      result = [ val[0] ]

    result
end
_reduce_543(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9979
def _reduce_543(val, _values, result)
                      result = val[0] << val[2]

    result
end
_reduce_546(val, _values, result) click to toggle source

reduce 545 omitted

# File lib/parser/ruby21.rb, line 9989
def _reduce_546(val, _values, result)
                      @static_env.declare val[1][0]

                      result = [ @builder.kwrestarg(val[0], val[1]) ]

    result
end
_reduce_547(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 9997
def _reduce_547(val, _values, result)
                      result = [ @builder.kwrestarg(val[0]) ]

    result
end
_reduce_548(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 10003
def _reduce_548(val, _values, result)
                      result = @builder.optarg(val[0], val[1], val[2])

    result
end
_reduce_549(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 10009
def _reduce_549(val, _values, result)
                      result = @builder.optarg(val[0], val[1], val[2])

    result
end
_reduce_55(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7237
def _reduce_55(val, _values, result)
                      result = [ val[0], val[2], val[3], val[4] ]

                      @static_env.unextend
                      @context.in_block = val[1].in_block

    result
end
_reduce_550(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 10015
def _reduce_550(val, _values, result)
                      result = [ val[0] ]

    result
end
_reduce_551(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 10021
def _reduce_551(val, _values, result)
                      result = val[0] << val[2]

    result
end
_reduce_552(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 10027
def _reduce_552(val, _values, result)
                      result = [ val[0] ]

    result
end
_reduce_553(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 10033
def _reduce_553(val, _values, result)
                      result = val[0] << val[2]

    result
end
_reduce_556(val, _values, result) click to toggle source

reduce 555 omitted

# File lib/parser/ruby21.rb, line 10043
def _reduce_556(val, _values, result)
                      @static_env.declare val[1][0]

                      result = [ @builder.restarg(val[0], val[1]) ]

    result
end
_reduce_557(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 10051
def _reduce_557(val, _values, result)
                      result = [ @builder.restarg(val[0]) ]

    result
end
_reduce_560(val, _values, result) click to toggle source

reduce 559 omitted

# File lib/parser/ruby21.rb, line 10061
def _reduce_560(val, _values, result)
                      @static_env.declare val[1][0]

                      result = @builder.blockarg(val[0], val[1])

    result
end
_reduce_561(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 10069
def _reduce_561(val, _values, result)
                      result = [ val[1] ]

    result
end
_reduce_562(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 10075
def _reduce_562(val, _values, result)
                      result = []

    result
end
_reduce_564(val, _values, result) click to toggle source

reduce 563 omitted

# File lib/parser/ruby21.rb, line 10083
def _reduce_564(val, _values, result)
                      result = val[1]

    result
end
_reduce_565(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 10089
def _reduce_565(val, _values, result)
                      result = []

    result
end
_reduce_567(val, _values, result) click to toggle source

reduce 566 omitted

# File lib/parser/ruby21.rb, line 10097
def _reduce_567(val, _values, result)
                      result = [ val[0] ]

    result
end
_reduce_568(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 10103
def _reduce_568(val, _values, result)
                      result = val[0] << val[2]

    result
end
_reduce_569(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 10109
def _reduce_569(val, _values, result)
                      result = @builder.pair(val[0], val[1], val[2])

    result
end
_reduce_57(val, _values, result) click to toggle source

reduce 56 omitted

# File lib/parser/ruby21.rb, line 7248
def _reduce_57(val, _values, result)
                      result = @builder.call_method(nil, nil, val[0],
                                  nil, val[1], nil)

    result
end
_reduce_570(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 10115
def _reduce_570(val, _values, result)
                      result = @builder.pair_keyword(val[0], val[1])

    result
end
_reduce_571(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 10121
def _reduce_571(val, _values, result)
                      result = @builder.kwsplat(val[0], val[1])

    result
end
_reduce_58(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7255
def _reduce_58(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_588(val, _values, result) click to toggle source

reduce 587 omitted

# File lib/parser/ruby21.rb, line 10159
def _reduce_588(val, _values, result)
                      result = val[1]

    result
end
_reduce_589(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 10165
def _reduce_589(val, _values, result)
                      result = val[1]

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

    result
end
_reduce_593(val, _values, result) click to toggle source

reduce 592 omitted

# File lib/parser/ruby21.rb, line 10177
def _reduce_593(val, _values, result)
                    yyerrok

    result
end
_reduce_597(val, _values, result) click to toggle source

reduce 596 omitted

# File lib/parser/ruby21.rb, line 10189
def _reduce_597(val, _values, result)
                    result = nil

    result
end
_reduce_6(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 6944
def _reduce_6(val, _values, result)
                      result = [ val[1] ]

    result
end
_reduce_60(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7273
def _reduce_60(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_61(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7284
def _reduce_61(val, _values, result)
                      result = @builder.call_method(val[0], val[1], val[2],
                                  nil, val[3], nil)

    result
end
_reduce_62(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7291
def _reduce_62(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_63(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7302
def _reduce_63(val, _values, result)
                      result = @builder.keyword_cmd(:super, val[0],
                                  nil, val[1], nil)

    result
end
_reduce_64(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7309
def _reduce_64(val, _values, result)
                      result = @builder.keyword_cmd(:yield, val[0],
                                  nil, val[1], nil)

    result
end
_reduce_65(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7316
def _reduce_65(val, _values, result)
                      result = @builder.keyword_cmd(:return, val[0],
                                  nil, val[1], nil)

    result
end
_reduce_66(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7323
def _reduce_66(val, _values, result)
                      result = @builder.keyword_cmd(:break, val[0],
                                  nil, val[1], nil)

    result
end
_reduce_67(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7330
def _reduce_67(val, _values, result)
                      result = @builder.keyword_cmd(:next, val[0],
                                  nil, val[1], nil)

    result
end
_reduce_68(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7337
def _reduce_68(val, _values, result)
                      result = @builder.multi_lhs(nil, val[0], nil)

    result
end
_reduce_69(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7343
def _reduce_69(val, _values, result)
                      result = @builder.begin(val[0], val[1], val[2])

    result
end
_reduce_70(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7349
def _reduce_70(val, _values, result)
                      result = @builder.multi_lhs(nil, val[0], nil)

    result
end
_reduce_71(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7355
def _reduce_71(val, _values, result)
                      result = @builder.multi_lhs(val[0], val[1], val[2])

    result
end
_reduce_73(val, _values, result) click to toggle source

reduce 72 omitted

# File lib/parser/ruby21.rb, line 7363
def _reduce_73(val, _values, result)
                      result = val[0].
                                  push(val[1])

    result
end
_reduce_74(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7370
def _reduce_74(val, _values, result)
                      result = val[0].
                                  push(@builder.splat(val[1], val[2]))

    result
end
_reduce_75(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7377
def _reduce_75(val, _values, result)
                      result = val[0].
                                  push(@builder.splat(val[1], val[2])).
                                  concat(val[4])

    result
end
_reduce_76(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7385
def _reduce_76(val, _values, result)
                      result = val[0].
                                  push(@builder.splat(val[1]))

    result
end
_reduce_77(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7392
def _reduce_77(val, _values, result)
                      result = val[0].
                                  push(@builder.splat(val[1])).
                                  concat(val[3])

    result
end
_reduce_78(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7400
def _reduce_78(val, _values, result)
                      result = [ @builder.splat(val[0], val[1]) ]

    result
end
_reduce_79(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7406
def _reduce_79(val, _values, result)
                      result = [ @builder.splat(val[0], val[1]),
                                 *val[3] ]

    result
end
_reduce_8(val, _values, result) click to toggle source

reduce 7 omitted

# File lib/parser/ruby21.rb, line 6952
def _reduce_8(val, _values, result)
                      result = @builder.preexe(val[0], val[1], val[2], val[3])

    result
end
_reduce_80(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7413
def _reduce_80(val, _values, result)
                      result = [ @builder.splat(val[0]) ]

    result
end
_reduce_81(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7419
def _reduce_81(val, _values, result)
                      result = [ @builder.splat(val[0]),
                                 *val[2] ]

    result
end
_reduce_83(val, _values, result) click to toggle source

reduce 82 omitted

# File lib/parser/ruby21.rb, line 7428
def _reduce_83(val, _values, result)
                      result = @builder.begin(val[0], val[1], val[2])

    result
end
_reduce_84(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7434
def _reduce_84(val, _values, result)
                      result = [ val[0] ]

    result
end
_reduce_85(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7440
def _reduce_85(val, _values, result)
                      result = val[0] << val[1]

    result
end
_reduce_86(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7446
def _reduce_86(val, _values, result)
                      result = [ val[0] ]

    result
end
_reduce_87(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7452
def _reduce_87(val, _values, result)
                      result = val[0] << val[2]

    result
end
_reduce_88(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7458
def _reduce_88(val, _values, result)
                      result = @builder.assignable(val[0])

    result
end
_reduce_89(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7464
def _reduce_89(val, _values, result)
                      result = @builder.assignable(val[0])

    result
end
_reduce_9(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 6958
def _reduce_9(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 :warning, :useless_else, nil, else_t
                      end

                      result = @builder.begin_body(val[0],
                                  rescue_bodies,
                                  else_t,   else_,
                                  ensure_t, ensure_)

    result
end
_reduce_90(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7470
def _reduce_90(val, _values, result)
                      result = @builder.index_asgn(val[0], val[1], val[2], val[3])

    result
end
_reduce_91(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7476
def _reduce_91(val, _values, result)
                      result = @builder.attr_asgn(val[0], val[1], val[2])

    result
end
_reduce_92(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7482
def _reduce_92(val, _values, result)
                      result = @builder.attr_asgn(val[0], val[1], val[2])

    result
end
_reduce_93(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7488
def _reduce_93(val, _values, result)
                      result = @builder.attr_asgn(val[0], val[1], val[2])

    result
end
_reduce_94(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7494
def _reduce_94(val, _values, result)
                      result = @builder.assignable(
                                  @builder.const_fetch(val[0], val[1], val[2]))

    result
end
_reduce_95(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7501
def _reduce_95(val, _values, result)
                      result = @builder.assignable(
                                  @builder.const_global(val[0], val[1]))

    result
end
_reduce_96(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7508
def _reduce_96(val, _values, result)
                      result = @builder.assignable(val[0])

    result
end
_reduce_97(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7514
def _reduce_97(val, _values, result)
                      result = @builder.assignable(val[0])

    result
end
_reduce_98(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7520
def _reduce_98(val, _values, result)
                      result = @builder.assignable(val[0])

    result
end
_reduce_99(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 7526
def _reduce_99(val, _values, result)
                      result = @builder.index_asgn(val[0], val[1], val[2], val[3])

    result
end
_reduce_none(val, _values, result) click to toggle source
# File lib/parser/ruby21.rb, line 10195
def _reduce_none(val, _values, result)
  val[0]
end
default_encoding() click to toggle source
# File lib/parser/ruby21.rb, line 20
def default_encoding
  Encoding::UTF_8
end
local_pop() click to toggle source
# File lib/parser/ruby21.rb, line 30
def local_pop
  @static_env.unextend
  @lexer.cmdarg.pop
  @lexer.cond.pop
end
local_push() click to toggle source
# File lib/parser/ruby21.rb, line 24
def local_push
  @static_env.extend_static
  @lexer.cmdarg.push(false)
  @lexer.cond.push(false)
end
version() click to toggle source
# File lib/parser/ruby21.rb, line 16
def version
  21
end