A simple gem to provide juxtaposition to Objects and Arrays
Example
['foo', 'bar'].map_juxt :upcase, :reverse
# [['FOO', 'oof'], ['BAR', 'rab']]
'foo'.juxt :upcase, :reverse
# ['FOO', 'oof']
{:foo => 'foo', :bar => 'bar'}.juxt :foo, :bar
# ['foo', 'bar']
# Procs and Lambdas are ok too
proc = Proc.new{ |m| m.class }
lambda = ->(m){ m.length + 100 }
'foo'.juxt proc, lambda
# [String, 103]
# Need to create a hash from some Object properties/method/attributes?
arr = ['foo', 'bar']
Hash[arr.map_juxt :upcase, :reverse]
# {'FOO' => 'oof', 'BAR' => 'rab'}
Add this line to your application's Gemfile:
gem 'juxt'
And then execute:
$ bundle
Or install it yourself as:
$ gem install juxt
TODO: Write usage instructions here
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request