class Hash

Public Instance Methods

only(*keys) click to toggle source

raw.github.com/lukeredpath/clickatell/master/lib/core-ext/hash.rb Returns a new hash containing only the keys specified that exist in the current hash.

{:a => '1', :b => '2', :c => '3'}.only(:a, :c)
# => {:a => '1', :c => '3'}

Keys that do not exist in the original hash are ignored.

# File lib/core-ext/hash.rb, line 10
def only(*keys)
  inject( {} ) do |new_hash, (key, value)|
    new_hash[key] = value if keys.include?(key)
    new_hash
  end
end