class RubyEventStore::TransformKeys
Public Class Methods
Source
# File lib/ruby_event_store/transform_keys.rb, line 6 def stringify(data) deep_transform(data, &:to_s) end
Source
# File lib/ruby_event_store/transform_keys.rb, line 10 def symbolize(data) deep_transform(data, &:to_sym) end
Private Class Methods
Source
# File lib/ruby_event_store/transform_keys.rb, line 16 def deep_transform(data, &block) case data when Hash data.each_with_object({}) { |(key, value), hash| hash[yield(key)] = deep_transform(value, &block) } when Array data.map { |i| deep_transform(i, &block) } else data end end