Module: HashEnhancement
- Defined in:
- lib/subelsky_enhancements/hash.rb
Overview
Slightly modified from
* https://wincent.com/wiki/Fixtures_considered_harmful%3F
By way of Topfunky’s Peepcode Rspec screencasts
Instance Method Summary collapse
-
#except(*keys) ⇒ Object
Filter keys out of a Hash.
-
#only(*keys) ⇒ Object
Returns a Hash with only the pairs identified by
keys
.
Instance Method Details
#except(*keys) ⇒ Object
Filter keys out of a Hash.
{ :a => 1, :b => 2, :c => 3 }.except(:a)
=> { :b => 2, :c => 3 }
12 13 14 |
# File 'lib/subelsky_enhancements/hash.rb', line 12 def except(*keys) self.reject { |k,v| keys.flatten.include?(k || k.to_sym) } end |
#only(*keys) ⇒ Object
Returns a Hash with only the pairs identified by keys
.
{ :a => 1, :b => 2, :c => 3 }.only(:a)
=> { :a => 1 }
21 22 23 |
# File 'lib/subelsky_enhancements/hash.rb', line 21 def only(*keys) self.reject { |k,v| !keys.include?(k || k.to_sym) } end |