module Kernel - uri: Ruby Standard Library Documentation

# module Kernel

### Public Class Methods

URI(uri) click to toggle source

Returns a URI object derived from the given `uri`, which may be a URI string or an existing URI object:

    # Returns a new URI.
    uri = URI('http://github.com/ruby/ruby')
    # => #<URI::HTTP http://github.com/ruby/ruby>
    # Returns the given URI.
    URI(uri)
    # => #<URI::HTTP http://github.com/ruby/ruby>

    # File uri/common.rb, line 865
    def URI(uri)
      if uri.is_a?(URI::Generic)
        uri
      elsif uri = String.try_convert(uri)
        URI.parse(uri)
      else
        raise ArgumentError,
          "bad argument (expected URI object or URI string)"
      end
    end

### Private Instance Methods

URI(uri) click to toggle source

Returns a URI object derived from the given `uri`, which may be a URI string or an existing URI object:

    # Returns a new URI.
    uri = URI('http://github.com/ruby/ruby')
    # => #<URI::HTTP http://github.com/ruby/ruby>
    # Returns the given URI.
    URI(uri)
    # => #<URI::HTTP http://github.com/ruby/ruby>

    # File uri/common.rb, line 865
    def URI(uri)
      if uri.is_a?(URI::Generic)
        uri
      elsif uri = String.try_convert(uri)
        URI.parse(uri)
      else
        raise ArgumentError,
          "bad argument (expected URI object or URI string)"
      end
    end