次のように動作するようにハッシュにパッチを適用したモンキーの影響は何でしょうか。
class Hash
def method_missing(method,*args, &block)
if self.has_key?(method)
return self[method]
elsif self.has_key?(method.to_s)
return self[method.to_s]
else
return nil
end
end
end
私の正当化は次のとおりです。
基本的に、オブジェクトをハッシュに追加するときは、それらの keys.to_s が一意であることを確認します。
私は心配する必要があります、私は何かが欠けていますか?
h = { :foo => "bar", "hello" => "bar" }
h.foo => "bar"
h.hello => "bar"