func NewRLConn(ctx context.Context, conn net.Conn, rl *RateLimit) net.Conn {
	return &rlConn{
		Conn: conn,
		rlrw: rlReadWriter{
			ReadWriter: conn,
			rl:         rl,
			ctx:        ctx,
		},
	}
}
// NewRLConn wrap a net.Conn into a rlReadWriter.
NewRLConn wrap a net.Conn into a rlReadWriter.
// NewRLConn wrap a net . Conn into a rlReadWriter .
func NewRLConn(ctx context.Context, conn net.Conn, rl *RateLimit) net.Conn {
	return &rlConn{
		Conn: conn,
		rlrw: rlReadWriter{
			ReadWriter: conn,
			rl:         rl,
			ctx:        ctx,
		},
	}
}
func NewRLConn ( ctx context . Context , conn net . Conn , rl * RateLimit ) net . Conn { return & rlConn { Conn : conn , rlrw : rlReadWriter { ReadWriter : conn , rl : rl , ctx : ctx , } , } }
NewRLConn wrap a net.Conn into a rlReadWriter.
NewRLConn wrap a net . Conn into a rlReadWriter .