Skip to content

Commit

Permalink
[3.11] gh-101100: Fix sphinx warnings in library/codecs.rst (GH-110979
Browse files Browse the repository at this point in the history
) (#111071)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
  • Loading branch information
3 people committed Oct 20, 2023
1 parent f1dbde0 commit 6df935c
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 34 deletions.
71 changes: 38 additions & 33 deletions Doc/library/codecs.rst
Original file line number Diff line number Diff line change
Expand Up @@ -520,44 +520,46 @@ The base :class:`Codec` class defines these methods which also define the
function interfaces of the stateless encoder and decoder:


.. method:: Codec.encode(input, errors='strict')
.. class:: Codec

Encodes the object *input* and returns a tuple (output object, length consumed).
For instance, :term:`text encoding` converts
a string object to a bytes object using a particular
character set encoding (e.g., ``cp1252`` or ``iso-8859-1``).
.. method:: encode(input, errors='strict')

The *errors* argument defines the error handling to apply.
It defaults to ``'strict'`` handling.
Encodes the object *input* and returns a tuple (output object, length consumed).
For instance, :term:`text encoding` converts
a string object to a bytes object using a particular
character set encoding (e.g., ``cp1252`` or ``iso-8859-1``).

The method may not store state in the :class:`Codec` instance. Use
:class:`StreamWriter` for codecs which have to keep state in order to make
encoding efficient.
The *errors* argument defines the error handling to apply.
It defaults to ``'strict'`` handling.

The encoder must be able to handle zero length input and return an empty object
of the output object type in this situation.
The method may not store state in the :class:`Codec` instance. Use
:class:`StreamWriter` for codecs which have to keep state in order to make
encoding efficient.

The encoder must be able to handle zero length input and return an empty object
of the output object type in this situation.

.. method:: Codec.decode(input, errors='strict')

Decodes the object *input* and returns a tuple (output object, length
consumed). For instance, for a :term:`text encoding`, decoding converts
a bytes object encoded using a particular
character set encoding to a string object.
.. method:: decode(input, errors='strict')

For text encodings and bytes-to-bytes codecs,
*input* must be a bytes object or one which provides the read-only
buffer interface -- for example, buffer objects and memory mapped files.
Decodes the object *input* and returns a tuple (output object, length
consumed). For instance, for a :term:`text encoding`, decoding converts
a bytes object encoded using a particular
character set encoding to a string object.

The *errors* argument defines the error handling to apply.
It defaults to ``'strict'`` handling.
For text encodings and bytes-to-bytes codecs,
*input* must be a bytes object or one which provides the read-only
buffer interface -- for example, buffer objects and memory mapped files.

The method may not store state in the :class:`Codec` instance. Use
:class:`StreamReader` for codecs which have to keep state in order to make
decoding efficient.
The *errors* argument defines the error handling to apply.
It defaults to ``'strict'`` handling.

The decoder must be able to handle zero length input and return an empty object
of the output object type in this situation.
The method may not store state in the :class:`Codec` instance. Use
:class:`StreamReader` for codecs which have to keep state in order to make
decoding efficient.

The decoder must be able to handle zero length input and return an empty object
of the output object type in this situation.


Incremental Encoding and Decoding
Expand Down Expand Up @@ -705,7 +707,7 @@ Stream Encoding and Decoding

The :class:`StreamWriter` and :class:`StreamReader` classes provide generic
working interfaces which can be used to implement new encoding submodules very
easily. See :mod:`encodings.utf_8` for an example of how this is done.
easily. See :mod:`!encodings.utf_8` for an example of how this is done.


.. _stream-writer-objects:
Expand Down Expand Up @@ -895,9 +897,10 @@ The design is such that one can use the factory functions returned by the
.. class:: StreamRecoder(stream, encode, decode, Reader, Writer, errors='strict')

Creates a :class:`StreamRecoder` instance which implements a two-way conversion:
*encode* and *decode* work on the frontend — the data visible to
code calling :meth:`read` and :meth:`write`, while *Reader* and *Writer*
work on the backend — the data in *stream*.
*encode* and *decode* work on the frontend — the data visible to
code calling :meth:`~StreamReader.read` and :meth:`~StreamWriter.write`,
while *Reader* and *Writer*
work on the backend — the data in *stream*.

You can use these objects to do transparent transcodings, e.g., from Latin-1
to UTF-8 and back.
Expand Down Expand Up @@ -1417,8 +1420,10 @@ to :class:`bytes` mappings. They are not supported by :meth:`bytes.decode`
| | quotedprintable, | quoted printable. | ``quotetabs=True`` / |
| | quoted_printable | | :meth:`quopri.decode` |
+----------------------+------------------+------------------------------+------------------------------+
| uu_codec | uu | Convert the operand using | :meth:`uu.encode` / |
| | | uuencode. | :meth:`uu.decode` |
| uu_codec | uu | Convert the operand using | :meth:`!uu.encode` / |
| | | uuencode. | :meth:`!uu.decode` |
| | | | (Note: :mod:`uu` is |
| | | | deprecated.) |
+----------------------+------------------+------------------------------+------------------------------+
| zlib_codec | zip, zlib | Compress the operand using | :meth:`zlib.compress` / |
| | | gzip. | :meth:`zlib.decompress` |
Expand Down
1 change: 0 additions & 1 deletion Doc/tools/.nitignore
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,6 @@ Doc/library/bisect.rst
Doc/library/bz2.rst
Doc/library/calendar.rst
Doc/library/cmd.rst
Doc/library/codecs.rst
Doc/library/collections.abc.rst
Doc/library/collections.rst
Doc/library/concurrent.futures.rst
Expand Down

0 comments on commit 6df935c

Please sign in to comment.