class HTTP::Response::Status

def __getobj__

def __getobj__
  @code
end

def __setobj__(obj)

def __setobj__(obj)
  raise TypeError, "Expected #{obj.inspect} to respond to #to_i" unless obj.respond_to? :to_i
  @code = obj.to_i
end

def client_error?

Returns:
  • (Boolean) -
def client_error?
  400 <= code && code < 500
end

def coerce(object)

Returns:
  • (Status) -

Parameters:
  • object (Symbol, #to_i) --

Raises:
  • (Error) - if coercion is impossible
def coerce(object)
  code = case
         when object.is_a?(String)  then SYMBOL_CODES[symbolize object]
         when object.is_a?(Symbol)  then SYMBOL_CODES[object]
         when object.is_a?(Numeric) then object.to_i
         end
  return new code if code
  raise Error, "Can't coerce #{object.class}(#{object}) to #{self}"
end

def informational?

Returns:
  • (Boolean) -
def informational?
  100 <= code && code < 200
end

def inspect

(see String#inspect)

with special characters escaped.
Printable version of HTTP Status, surrounded by quote marks,
def inspect
  "#<#{self.class} #{self}>"
end

def reason

Returns:
  • (String, nil) - status message

Other tags:
    See: REASONS -
def reason
  REASONS[code]
end

def redirect?

Returns:
  • (Boolean) -
def redirect?
  300 <= code && code < 400
end

def server_error?

Returns:
  • (Boolean) -
def server_error?
  500 <= code && code < 600
end

def success?

Returns:
  • (Boolean) -
def success?
  200 <= code && code < 300
end

def symbolize(str)

Returns:
  • (Symbol) -

Parameters:
  • str (#to_s) --
def symbolize(str)
  str.to_s.downcase.tr("-", " ").gsub(/[^a-z ]/, "").gsub(/\s+/, "_").to_sym
end

def to_s

Returns:
  • (String) - string representation of HTTP status
def to_s
  "#{code} #{reason}".strip
end

def to_sym

Returns:
  • (Symbol) -
  • (nil) - unless code is well-known (see REASONS)
def to_sym
  SYMBOLS[code]
end