Class: Requests::LookupDict

Inherits:
Object
  • Object
show all
Defined in:
lib/requests/status_codes.rb

Instance Method Summary collapse

Constructor Details

#initialize(code_map, aliases = {}) ⇒ LookupDict

Returns a new instance of LookupDict.



7
8
9
10
11
# File 'lib/requests/status_codes.rb', line 7

def initialize(code_map, aliases = {})
  @by_name = {}
  code_map.each { |code, name| @by_name[name] = code }
  aliases.each { |name, code| @by_name[name] ||= code }
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(name, *_args) ⇒ Object



12
13
14
# File 'lib/requests/status_codes.rb', line 12

def method_missing(name, *_args)
  @by_name.key?(name) ? @by_name[name] : super
end

Instance Method Details

#[](name) ⇒ Object



18
19
20
# File 'lib/requests/status_codes.rb', line 18

def [](name)
  @by_name[name.to_sym]
end

#name_for(code) ⇒ Object



21
22
23
# File 'lib/requests/status_codes.rb', line 21

def name_for(code)
  STATUS_CODES[code]
end

#respond_to_missing?(name, include_private = false) ⇒ Boolean

Returns:

  • (Boolean)


15
16
17
# File 'lib/requests/status_codes.rb', line 15

def respond_to_missing?(name, include_private = false)
  @by_name.key?(name) || super
end