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クラスは使用されません。Hashクラスのinitializeメソッドが呼び出されることを期待しています。なぜこのように振る舞うのですか?