Module: Hashie::HashExtensions
- Included in:
- Hash
- Defined in:
- lib/hashie/hash_extensions.rb
Class Method Summary (collapse)
Instance Method Summary (collapse)
-
- (Object) hashie_stringify_keys
Convert all of the keys of a Hash to their string representations.
-
- (Object) hashie_stringify_keys!
Destructively convert all of the keys of a Hash to their string representations.
-
- (Object) to_mash
Convert this hash into a Mash.
Class Method Details
+ (Object) included(base)
3 4 5 6 7 8 9 |
# File 'lib/hashie/hash_extensions.rb', line 3 def self.included(base) # Don't tread on existing extensions of Hash by # adding methods that are likely to exist. %w(stringify_keys stringify_keys!).each do |hashie_method| base.send :alias_method, hashie_method, "hashie_#{hashie_method}" unless base.instance_methods.include?(hashie_method) end end |
Instance Method Details
- (Object) hashie_stringify_keys
Convert all of the keys of a Hash to their string representations.
24 25 26 |
# File 'lib/hashie/hash_extensions.rb', line 24 def hashie_stringify_keys self.dup.stringify_keys! end |
- (Object) hashie_stringify_keys!
Destructively convert all of the keys of a Hash to their string representations.
13 14 15 16 17 18 19 20 |
# File 'lib/hashie/hash_extensions.rb', line 13 def hashie_stringify_keys! self.keys.each do |k| unless String === k self[k.to_s] = self.delete(k) end end self end |
- (Object) to_mash
Convert this hash into a Mash
29 30 31 |
# File 'lib/hashie/hash_extensions.rb', line 29 def to_mash ::Hashie::Mash.new(self) end |