التابع Hash.merge! في روبي
يضيف التابع merge! محتويات الكائن Hash الذي مُمرِّر إليه إلى الكائن الذي استدعي معه. إذا لم تُحدَد أية كتلة، فسيُكتب فوق الأزواج ذات المفاتيح المكررة مع القيم من الكائن المُمرَّر. أما إن أعطيت، فستُحدَد قيمة كل مفتاح مكرَّر عن طريق استدعاء الكتلة مع المفتاح وقيمته من الكائن المعطى وقيمته من الكائن المُمرَّر.
البنية العامة
merge!(other_hash) → hsh
merge!(other_hash){|key, oldval, newval| block} → hsh
المعاملات
other_hash
كائن جديد من النوع Hash يراد دمج محتوياته مع الكائن Hash المعطى.
القيمة المعادة
يعاد الكائن Hash المعطى بعد إضافة محتويات المعامل other_hash إليه.
أمثلة
مثال على استعمال التابع merge!:
h1 = { "a" => 100, "b" => 200 }
h2 = { "b" => 254, "c" => 300 }
h1.merge!(h2) #=> {"a"=>100, "b"=>254, "c"=>300}
h1 #=> {"a"=>100, "b"=>254, "c"=>300}
h1 = { "a" => 100, "b" => 200 }
h2 = { "b" => 254, "c" => 300 }
h1.merge!(h2) { |key, v1, v2| v1 }
#=> {"a"=>100, "b"=>200, "c"=>300}
h1 #=> {"a"=>100, "b"=>200, "c"=>300}