code: func GenScheme(scheme string) func(*URL) (string, error) {
  	return func(u *URL) (string, error) {
  		z := &url.URL{
  			Scheme:   scheme,
  			Opaque:   u.Opaque,
  			User:     u.User,
  			Host:     u.Host,
  			Path:     u.Path,
  			RawPath:  u.RawPath,
  			RawQuery: u.RawQuery,
  			Fragment: u.Fragment,
  		}
  
  		return z.String(), nil
  	}
  }
docs: // GenScheme returns a func that generates a scheme:// style DSN from the
  // passed URL.