module Hashie::Extensions::RedefineMethod

def method?(name)

def method?(name)
  methods.map(&:to_s).include?(name)
end

def redefine_method(method_name)

def redefine_method(method_name)
  eigenclass = class << self; self; end
  eigenclass.__send__(:alias_method, "__#{method_name}", method_name)
  eigenclass.__send__(:define_method, method_name, -> { self[method_name] })
end