Skip to content

Instantly share code, notes, and snippets.

@ezekg
Forked from pjb3/symbolize_keys.rb
Last active August 29, 2015 14:23
Show Gist options
  • Save ezekg/211b18fde10a1f3eb41a to your computer and use it in GitHub Desktop.
Save ezekg/211b18fde10a1f3eb41a to your computer and use it in GitHub Desktop.
module HashExtensions
def symbolize_keys
inject({}) do |acc, (k,v)|
key = String === k ? k.to_sym : k
value = Hash === v ? v.symbolize_keys : v
acc[key] = value
acc
end
end
end
Hash.send(:include, HashExtensions)
hash = {"drinks"=>{"gibson"=>{"garnish"=>"onion"}, "martini"=>{"garnish"=>"olive"}}}
puts hash.symbolize_keys.inspect
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment