Skip to content

Latest commit

 

History

History
31 lines (24 loc) · 974 Bytes

README.rdoc

File metadata and controls

31 lines (24 loc) · 974 Bytes

hash_transformer

create HashTransformers for Hashes with a simple DSL. a HashTransformer applies a sequence of transforms to a Hash to produce a new Hash

require 'hash_transformer'
t = HashTransformer.new do
  delete_key :foo
  map_key :bar, :baz
  map_key :foobar, :foobaz
  transform_hash :boo do
    map_key :foofoo, :barbar
  end
end

t.transform(:foo=>1, :bar=>2, :foobar=>3, :boo=>{:foofoo=>5})
=> {:baz=>2, :foobaz=>3, :boo=>{:barbar=>5}}

Note on Patches/Pull Requests

  • Fork the project.

  • Make your feature addition or bug fix.

  • Add tests for it. This is important so I don’t break it in a future version unintentionally.

  • Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)

  • Send me a pull request. Bonus points for topic branches.

Copyright © 2010 Trampoline Systems Ltd. See LICENSE for details.