Skip to content

Commit

Permalink
pythongh-107801: Document io.TextIOWrapper.tell (python#108265)
Browse files Browse the repository at this point in the history
  • Loading branch information
erlend-aasland committed Aug 27, 2023
1 parent a429eaf commit 38afa4a
Show file tree
Hide file tree
Showing 3 changed files with 21 additions and 4 deletions.
10 changes: 9 additions & 1 deletion Doc/library/io.rst
Original file line number Diff line number Diff line change
Expand Up @@ -1054,13 +1054,21 @@ Text I/O

* ``seek(0, SEEK_SET)``: Rewind to the start of the stream.
* ``seek(cookie, SEEK_SET)``: Restore a previous position;
*cookie* **must be** a number returned by :meth:`!tell`.
*cookie* **must be** a number returned by :meth:`tell`.
* ``seek(0, SEEK_END)``: Fast-forward to the end of the stream.
* ``seek(0, SEEK_CUR)``: Leave the current stream position unchanged.

Any other argument combinations are invalid,
and may raise exceptions.

.. method:: tell()

Return the stream position as an opaque number.
The return value of :meth:`!tell` can be given as input to :meth:`seek`,
to restore a previous stream position.



.. class:: StringIO(initial_value='', newline='\n')

A text stream using an in-memory text buffer. It inherits
Expand Down
8 changes: 6 additions & 2 deletions Modules/_io/clinic/textio.c.h

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 6 additions & 1 deletion Modules/_io/textio.c
Original file line number Diff line number Diff line change
Expand Up @@ -2640,11 +2640,16 @@ _io_TextIOWrapper_seek_impl(textio *self, PyObject *cookieObj, int whence)

/*[clinic input]
_io.TextIOWrapper.tell
Return the stream position as an opaque number.
The return value of tell() can be given as input to seek(), to restore a
previous stream position.
[clinic start generated code]*/

static PyObject *
_io_TextIOWrapper_tell_impl(textio *self)
/*[clinic end generated code: output=4f168c08bf34ad5f input=9a2caf88c24f9ddf]*/
/*[clinic end generated code: output=4f168c08bf34ad5f input=0852d627d76fb520]*/
{
PyObject *res;
PyObject *posobj = NULL;
Expand Down

0 comments on commit 38afa4a

Please sign in to comment.