code: func NewRaftLayer(src, addr net.Addr, tlsWrap tlsutil.Wrapper, tlsFunc func(raft.ServerAddress) bool) *RaftLayer {
  	layer := &RaftLayer{
  		src:     src,
  		addr:    addr,
  		connCh:  make(chan net.Conn),
  		tlsWrap: tlsWrap,
  		closeCh: make(chan struct{}),
  		tlsFunc: tlsFunc,
  	}
  	return layer
  }
docs: // NewRaftLayer is used to initialize a new RaftLayer which can
  // be used as a StreamLayer for Raft. If a tlsConfig is provided,
  // then the connection will use TLS.