mirror of
https://github.com/python/cpython.git
synced 2025-08-03 16:39:00 +00:00
PEP 293 implemention (from SF patch http://www.python.org/sf/432401)
This commit is contained in:
parent
94fab762de
commit
3aeb632c31
12 changed files with 2936 additions and 563 deletions
|
@ -17,7 +17,7 @@
|
|||
|
||||
This module defines base classes for standard Python codecs (encoders
|
||||
and decoders) and provides access to the internal Python codec
|
||||
registry which manages the codec lookup process.
|
||||
registry which manages the codec and error handling lookup process.
|
||||
|
||||
It defines the following functions:
|
||||
|
||||
|
@ -98,6 +98,43 @@ Raises a \exception{LookupError} in case the encoding cannot be found.
|
|||
To simplify working with encoded files or stream, the module
|
||||
also defines these utility functions:
|
||||
|
||||
\begin{funcdesc}{register_error}{name, error_handler}
|
||||
Register the error handling function \var{error_handler} under the
|
||||
name \var{name}. \vari{error_handler} will be called during encoding
|
||||
and decoding in case of an error, when \var{name} is specified as the
|
||||
errors parameter. \var{error_handler} will be called with an
|
||||
\exception{UnicodeEncodeError}, \exception{UnicodeDecodeError} or
|
||||
\exception{UnicodeTranslateError} instance and must return a tuple
|
||||
with a replacement for the unencodable/undecodable part of the input
|
||||
and a position where encoding/decoding should continue.
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{lookup_error}{name}
|
||||
Return the error handler previously register under the name \var{name}.
|
||||
|
||||
Raises a \exception{LookupError} in case the handler cannot be found.
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{strict_errors}{exception}
|
||||
Implements the \code{strict} error handling.
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{replace_errors}{exception}
|
||||
Implements the \code{replace} error handling.
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{ignore_errors}{exception}
|
||||
Implements the \code{ignore} error handling.
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{xmlcharrefreplace_errors_errors}{exception}
|
||||
Implements the \code{xmlcharrefreplace} error handling.
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{backslashreplace_errors_errors}{exception}
|
||||
Implements the \code{backslashreplace} error handling.
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{open}{filename, mode\optional{, encoding\optional{,
|
||||
errors\optional{, buffering}}}}
|
||||
Open an encoded file using the given \var{mode} and return
|
||||
|
|
|
@ -335,6 +335,24 @@ Raised when an \keyword{assert} statement fails.
|
|||
\versionadded{2.0}
|
||||
\end{excdesc}
|
||||
|
||||
\begin{excdesc}{UnicodeEncodeError}
|
||||
Raised when a Unicode-related error occurs during encoding. It
|
||||
is a subclass of \exception{UnicodeError}.
|
||||
\versionadded{2.3}
|
||||
\end{excdesc}
|
||||
|
||||
\begin{excdesc}{UnicodeDecodeError}
|
||||
Raised when a Unicode-related error occurs during decoding. It
|
||||
is a subclass of \exception{UnicodeError}.
|
||||
\versionadded{2.3}
|
||||
\end{excdesc}
|
||||
|
||||
\begin{excdesc}{UnicodeTranslateError}
|
||||
Raised when a Unicode-related error occurs during translating. It
|
||||
is a subclass of \exception{UnicodeError}.
|
||||
\versionadded{2.3}
|
||||
\end{excdesc}
|
||||
|
||||
\begin{excdesc}{ValueError}
|
||||
Raised when a built-in operation or function receives an argument
|
||||
that has the right type but an inappropriate value, and the
|
||||
|
@ -426,6 +444,9 @@ The class hierarchy for built-in exceptions is:
|
|||
| | +-- FloatingPointError
|
||||
| +-- ValueError
|
||||
| | +-- UnicodeError
|
||||
| | +-- UnicodeEncodeError
|
||||
| | +-- UnicodeDecodeError
|
||||
| | +-- UnicodeTranslateError
|
||||
| +-- ReferenceError
|
||||
| +-- SystemError
|
||||
| +-- MemoryError
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue