module Dr::Utils

Public Class Methods

stringify_keys(hash) click to toggle source
# File lib/dr/utils.rb, line 17
def self.stringify_keys(hash)
  return hash unless hash.is_a? Hash

  hash.inject({}) do |new_hash, (key, value)|
    new_hash[key.to_s] = stringify_keys value
    new_hash
  end
end
stringify_symbols(var) click to toggle source
# File lib/dr/utils.rb, line 26
def self.stringify_symbols(var)
  case
    when var.is_a?(Hash)
      var.inject({}) do |new_hash, (key, value)|
        new_hash[key.to_s] = stringify_keys value
        new_hash
      end
    when var.is_a?(Array)
      var.map {|e| stringify_symbols e}
    when var.is_a?(Symbol)
      var.to_s
    else
      var
  end
end
symbolise_keys(hash) click to toggle source
# File lib/dr/utils.rb, line 6
def self.symbolise_keys(hash)
  if hash.is_a? Hash
    hash.inject({}) do |new_hash, (key, value)|
      new_hash[key.to_sym] = symbolise_keys value
      new_hash
    end
  else
    hash
  end
end