# File lib/core/url.rb, line 31 def initialize(url = nil, options = {}) options[:defaults] = true if url @url = Cproton.pn_url_parse(url) if @url.nil? raise ::ArgumentError.new("invalid url: #{url}") end else @url = Cproton.pn_url end @scheme = Cproton.pn_url_get_scheme(@url) @username = Cproton.pn_url_get_username(@url) @password = Cproton.pn_url_get_password(@url) @host = Cproton.pn_url_get_host(@url) @port = Cproton.pn_url_get_port(@url) @path = Cproton.pn_url_get_path(@url) defaults end