class Hash
Public Instance Methods
define_reader(key)
click to toggle source
# File lib/hash-dot-evil.rb, line 2 def define_reader(key) define_singleton_method(key.to_sym) do if has_key?(key) return self[key] else return self[key.to_sym] end end end
define_writer(key)
click to toggle source
# File lib/hash-dot-evil.rb, line 12 def define_writer(key) define_singleton_method(key.to_sym) do |value| self[key[0..-2].to_sym] = value end end
method_missing(method, *opts)
click to toggle source
# File lib/hash-dot-evil.rb, line 18 def method_missing(method, *opts) m = method.to_s if m[-1] == '=' define_writer(m) return self.send(method, *opts) else define_reader(m) return self.send(method, *opts) end end