# File lib/ruby_parser_extras.rb, line 568 def new_op_asgn val lhs, asgn_op, arg = val[0], val[1].to_sym, val[2] name = lhs.value arg = remove_begin(arg) result = case asgn_op # REFACTOR when "||""||" then lhs << arg s(:op_asgn_or, self.gettable(name), lhs) when "&&""&&" then lhs << arg s(:op_asgn_and, self.gettable(name), lhs) else # TODO: why [2] ? lhs[2] = new_call(self.gettable(name), asgn_op, s(:arglist, arg)) lhs end result.line = lhs.line result end