Я лечу класс Ruby Hash
.
class Hash
alias_method :_initialize, :initialize
def initialize
puts 'In my hash class'
_initialize
end
end
Когда я делаю
Hash.new
он работает так, как ожидалось. Но скажем, у меня есть функция, которая принимает Hash
. Что-то типа,
foo 'a' => 'b'
В этом случае мой класс Hash
не используется. Я ожидаю, что будет вызван метод initialize
моего класса Hash
. Почему оно так себя ведет?
foo 'key' => 'value'
С этим я могу писать,foo do {'key' => 'value'}{'key1' => 'value1'} end
Мне не нужно везде повторятьfoo
. - person Navaneeth K N   schedule 20.03.2013In this case my Hash class is not used
? - person Arup Rakshit   schedule 20.03.2013initialize
- person Navaneeth K N   schedule 20.03.2013