Class: Hash
- Inherits:
-
Object
- Object
- Hash
- Defined in:
- lib/freesound/core_ext/hash.rb
Instance Method Summary collapse
-
#flatten_single_element_array_values ⇒ Object
converting xml into a hash sometimes gives you things like: { ‘element’ => [‘just_one_value’] } this method converts this to the more useful { ‘element’ => ‘just_one_value’ }.
- #numberize_values ⇒ Object
- #symbolize_keys ⇒ Object
-
#to_uri ⇒ Object
convert to a uri string.
Instance Method Details
#flatten_single_element_array_values ⇒ Object
converting xml into a hash sometimes gives you things like: { ‘element’ => [‘just_one_value’] } this method converts this to the more useful { ‘element’ => ‘just_one_value’ }
10 11 12 13 14 |
# File 'lib/freesound/core_ext/hash.rb', line 10 def flatten_single_element_array_values Hash[ map do |k, v| [k, (v.is_a?(Array) && v.size == 1) ? v[0] : (v.flatten_single_element_array_values rescue v)] end ] end |
#numberize_values ⇒ Object
21 22 23 |
# File 'lib/freesound/core_ext/hash.rb', line 21 def numberize_values Hash[ map { |k, v| [k, ((v.numberizeable? rescue false) ? v.numberize : v)] } ] end |
#symbolize_keys ⇒ Object
2 3 4 |
# File 'lib/freesound/core_ext/hash.rb', line 2 def symbolize_keys Hash[ map { |k, v| [k.underscore.to_sym, v.is_a?(Hash) ? v.symbolize_keys : v] } ] end |
#to_uri ⇒ Object
convert to a uri string
17 18 19 |
# File 'lib/freesound/core_ext/hash.rb', line 17 def to_uri map { |k, v| "#{k}=#{v}" }.join("&") end |