code: func (a *Addr) Listen() (net.Listener, error) {
  	// Start the listener now, if there's a default
  	// and nothing's called Set yet.
  	if a.err == nil && a.ln == nil && a.s != "" {
  		if err := a.Set(a.s); err != nil {
  			return nil, err
  		}
  	}
  	if a.err != nil {
  		return nil, a.err
  	}
  	if a.ln != nil {
  		return a.ln, nil
  	}
  	return nil, errors.New("listen: no error or listener")
  }
docs: // Listen returns the address's TCP listener.