Деструктивно присвояване в аргументи на метод
Свойствата на паралелното, "деструктивно" присвояване в Ruby са приложими както за самото присвояване, така и за параметри на блокове и Proc
обекти.
Валидни са, обаче, и за обикновени методи. Например, следното работи:
def foo(a, (b, c))
[a, b, c]
end
foo :first, [:second, :third, :even_fourth]
Резултатът от горния метод ще бъде [:first, :second, :third]
.
Разбира се, тази техника в практиката се избягва за обикновени методи и дори при блокове се ползва рядко.
Може да прочетете повече за паралелното присвояване и отношението му към блокове и методи в тази лекция.