in lib/http.go [966:996]
func parseURL(arg ref.Val) ref.Val {
addr, ok := arg.(types.String)
if !ok {
return types.ValOrErr(addr, "no such overload for request")
}
u, err := url.Parse(string(addr))
if err != nil {
return types.NewErr("%s", err)
}
var user interface{}
if u.User != nil {
password, passwordSet := u.User.Password()
user = map[string]interface{}{
"Username": u.User.Username(),
"Password": password,
"PasswordSet": passwordSet,
}
}
return types.NewStringInterfaceMap(types.DefaultTypeAdapter, map[string]interface{}{
"Scheme": u.Scheme,
"Opaque": u.Opaque,
"User": user,
"Host": u.Host,
"Path": u.Path,
"RawPath": u.RawPath,
"ForceQuery": u.ForceQuery,
"RawQuery": u.RawQuery,
"Fragment": u.Fragment,
"RawFragment": u.RawFragment,
})
}