Method: HTTP::URI.parse

Defined in:
lib/http/uri/parsing.rb

.parse(uri) ⇒ HTTP::URI

Parse the given URI string, returning an HTTP::URI object

Examples:

HTTP::URI.parse("http://example.com/path")

Parameters:

Returns:

Raises:



15
16
17
18
19
20
21
22
23
24
25
# File 'lib/http/uri/parsing.rb', line 15

def self.parse(uri)
  return uri if uri.is_a?(self)
  raise InvalidError, "invalid URI: nil" if uri.nil?

  uri_string = begin
    String(uri)
  rescue TypeError, NoMethodError
    raise InvalidError, "invalid URI: #{uri.inspect}"
  end
  new(**parse_components(uri_string))
end