Module: Route4me::Util

Defined in:
lib/route4me/util.rb

Class Method Summary collapse

Class Method Details

.extract(params, keys) ⇒ Object



3
4
5
6
# File 'lib/route4me/util.rb', line 3

def self.extract(params, keys)
  s = params.select{|k,v| keys.include? k.to_sym }
  Hash[s.map{|k, v| [k.to_sym, v] }]
end

.symbolize_names(object) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/route4me/util.rb', line 12

def self.symbolize_names(object)
  case object
  when Hash
    new = {}
    object.each do |key, value|
      key = (key.to_sym rescue key) || key
      new[key] = symbolize_names(value)
    end
    new
  when Array
    object.map { |value| symbolize_names(value) }
  else
    object
  end
end

.url_encode(key) ⇒ Object



8
9
10
# File 'lib/route4me/util.rb', line 8

def self.url_encode(key)
  URI.escape(key.to_s, Regexp.new("[^#{URI::PATTERN::UNRESERVED}]"))
end