Commit e83ed432 authored by Benjamin Peterson's avatar Benjamin Peterson

improve description of buffers argument for readv/writev (closes #17811)

Patch by Nikolaus Rath.
parent a96860c9
...@@ -1019,10 +1019,13 @@ as internal buffering of data. ...@@ -1019,10 +1019,13 @@ as internal buffering of data.
.. function:: readv(fd, buffers) .. function:: readv(fd, buffers)
Read from a file descriptor into a number of writable buffers. *buffers* is Read from a file descriptor *fd* into a number of mutable :term:`bytes-like
an arbitrary sequence of writable buffers. Returns the total number of bytes objects <bytes-like object>` *buffers*. :func:`~os.readv` will transfer data
read. into each buffer until it is full and then move on to the next buffer in the
sequence to hold the rest of the data. :func:`~os.readv` returns the total
number of bytes read (which may be less than the total capacity of all the
objects).
Availability: Unix. Availability: Unix.
.. versionadded:: 3.3 .. versionadded:: 3.3
...@@ -1071,10 +1074,11 @@ as internal buffering of data. ...@@ -1071,10 +1074,11 @@ as internal buffering of data.
.. function:: writev(fd, buffers) .. function:: writev(fd, buffers)
Write the contents of *buffers* to file descriptor *fd*, where *buffers* Write the contents of *buffers* to file descriptor *fd*. *buffers* must be a
is an arbitrary sequence of buffers. sequence of :term:`bytes-like objects <bytes-like object>`.
Returns the total number of bytes written. :func:`~os.writev` writes the contents of each object to the file descriptor
and returns the total number of bytes written.
Availability: Unix. Availability: Unix.
.. versionadded:: 3.3 .. versionadded:: 3.3
......
...@@ -8100,9 +8100,12 @@ iov_cleanup(struct iovec *iov, Py_buffer *buf, int cnt) ...@@ -8100,9 +8100,12 @@ iov_cleanup(struct iovec *iov, Py_buffer *buf, int cnt)
#ifdef HAVE_READV #ifdef HAVE_READV
PyDoc_STRVAR(posix_readv__doc__, PyDoc_STRVAR(posix_readv__doc__,
"readv(fd, buffers) -> bytesread\n\n\ "readv(fd, buffers) -> bytesread\n\n\
Read from a file descriptor into a number of writable buffers. buffers\n\ Read from a file descriptor fd into a number of mutable, bytes-like\n\
is an arbitrary sequence of writable buffers.\n\ objects (\"buffers\"). readv will transfer data into each buffer\n\
Returns the total number of bytes read."); until it is full and then move on to the next buffer in the sequence\n\
to hold the rest of the data.\n\n\
readv returns the total number of bytes read (which may be less than\n\
the total capacity of all the buffers.");
static PyObject * static PyObject *
posix_readv(PyObject *self, PyObject *args) posix_readv(PyObject *self, PyObject *args)
...@@ -8465,9 +8468,10 @@ posix_pipe2(PyObject *self, PyObject *arg) ...@@ -8465,9 +8468,10 @@ posix_pipe2(PyObject *self, PyObject *arg)
#ifdef HAVE_WRITEV #ifdef HAVE_WRITEV
PyDoc_STRVAR(posix_writev__doc__, PyDoc_STRVAR(posix_writev__doc__,
"writev(fd, buffers) -> byteswritten\n\n\ "writev(fd, buffers) -> byteswritten\n\n\
Write the contents of buffers to a file descriptor, where buffers is an\n\ Write the contents of *buffers* to file descriptor *fd*. *buffers*\n\
arbitrary sequence of buffers.\n\ must be a sequence of bytes-like objects.\n\n\
Returns the total bytes written."); writev writes the contents of each object to the file descriptor\n\
and returns the total number of bytes written.");
static PyObject * static PyObject *
posix_writev(PyObject *self, PyObject *args) posix_writev(PyObject *self, PyObject *args)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment