Я пытаюсь понять следующий код Ruby.
Похоже, что attrs
- хэш, который передается как аргумент со значением по умолчанию для пустого хэша.
Затем attrs.each
выполняет итерацию по ключам, парам значений в хеше (|k,v|
).
Какое влияние достигается при вызове self.send
элементов пары значений ключа во время этой итерации?
def initialize(attrs = {}, *args)
super(*args)
attrs.each do |k,v|
self.send "#{k}=", v
end
end