module AmazingPrint::OpenStruct
def self.included(base)
def self.included(base) base.send :alias_method, :cast_without_ostruct, :cast base.send :alias_method, :cast, :cast_with_ostruct end
def awesome_open_struct_instance(object)
def awesome_open_struct_instance(object) "#{object.class} #{awesome_hash(object.marshal_dump)}" end
def cast_with_ostruct(object, type)
def cast_with_ostruct(object, type) cast = cast_without_ostruct(object, type) if defined?(::OpenStruct) && object.is_a?(::OpenStruct) cast = :open_struct_instance end cast end