Module: Typhoeus::Utils

Defined in:
lib/typhoeus/utils.rb

Class Method Summary collapse

Class Method Details

.bytesize(string) ⇒ Object



29
30
31
# File 'lib/typhoeus/utils.rb', line 29

def bytesize(string)
  string.bytesize
end

.escape(s) ⇒ Object

Taken from Rack::Utils, 1.2.1 to remove Rack dependency.



6
7
8
9
10
# File 'lib/typhoeus/utils.rb', line 6

def escape(s)
  s.to_s.gsub(/([^ a-zA-Z0-9_.-]+)/u) {
    '%'+$1.unpack('H2'*bytesize($1)).join('%').upcase
  }.tr(' ', '+')
end

.traversal_to_param_string(traversal, escape = true) ⇒ Object



19
20
21
22
23
# File 'lib/typhoeus/utils.rb', line 19

def traversal_to_param_string(traversal, escape = true)
  traversal[:params].collect { |param|
    escape ? "#{Typhoeus::Utils.escape(param[0])}=#{Typhoeus::Utils.escape(param[1])}" : "#{param[0]}=#{param[1]}"
  }.join('&')
end

.traverse_params_hash(hash, result = nil, current_key = nil) ⇒ Object

Params are NOT escaped.



14
15
16
# File 'lib/typhoeus/utils.rb', line 14

def traverse_params_hash(hash, result = nil, current_key = nil)
  result = ParamProcessor.traverse_params_hash hash, result, current_key
end