code: func (u URL) String() string {
  	var s string
  	switch u.Type {
  	case URLTypeURL:
  		return u.URL.String()
  	case URLTypeSCP:
  		if u.URL.User != nil {
  			s = u.URL.User.Username() + "@"
  		}
  		s += u.URL.Host + ":" + u.URL.Path
  	case URLTypeLocal:
  		s = u.URL.Path
  	}
  	if u.URL.RawQuery != "" {
  		s += "?" + u.URL.RawQuery
  	}
  	if u.URL.Fragment != "" {
  		s += "#" + u.URL.Fragment
  	}
  	return s
  }
docs: // String returns a string representation of the URL