Very simple method can be defined:
def merge! other
require 'active_support/all' # can't use #tap, see #8457
tail = extract_options!
other_tail = other.extract_options!
concat( other ) << tail.update( other_tail )
When pondering about where this method should dwell, it seemed to me, perhaps in the core itself? Am I deluding myself?
#2 Updated by Boris Stitnicky about 2 years ago
Still, many thanks for [:A, :B, C: 1] syntax, I was very happy to discover it!
matz (Yukihiro Matsumoto) wrote:
Generally speaking, arrays are not argument lists. This method is specific to argument lists.
Thus Array is not the right place for the method.