Class: RubyEventStore::TransformKeys
- Inherits:
-
Object
- Object
- RubyEventStore::TransformKeys
- Defined in:
- lib/ruby_event_store/transform_keys.rb
Class Method Summary collapse
Class Method Details
.stringify(data) ⇒ Object
3 4 5 |
# File 'lib/ruby_event_store/transform_keys.rb', line 3 def self.stringify(data) transform(data) {|k| k.to_s} end |
.symbolize(data) ⇒ Object
7 8 9 |
# File 'lib/ruby_event_store/transform_keys.rb', line 7 def self.symbolize(data) transform(data) {|k| k.to_sym} end |
.transform(data, &block) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/ruby_event_store/transform_keys.rb', line 12 def self.transform(data, &block) data.each_with_object({}) do |(k, v), h| h[yield(k)] = case v when Hash transform(v, &block) when Array v.map{|i| Hash === i ? transform(i, &block) : i} else v end end end |