1 2 3 4 5 6 7
module CoreExtensions refine Hash do def to_struct Struct.new(*self.keys).new(*self.values.map { |value| value.is_a?(Hash) ? value.to_struct : value }) end end end