int PyCodec_Register(PyObject *search_function)
ABI .

(side effect) encodings

int PyCodec_Unregister(PyObject *search_function)
ABI 3.10 .

(registry) 0 -1

3.10 .

int PyCodec_KnownEncoding(const char *encoding)
ABI .

1 0 encoding

PyObject *PyCodec_Encode(PyObject *object, const char *encoding, const char *errors)
ABI .

API

object encoding errors errors NULL LookupError

PyObject *PyCodec_Decode(PyObject *object, const char *encoding, const char *errors)
ABI .

API

object encoding errors errors NULL LookupError

API

encoding KeyError NULL

PyObject *PyCodec_Encoder(const char *encoding)
ABI .

encoding

PyObject *PyCodec_Decoder(const char *encoding)
ABI .

encoding

PyObject *PyCodec_IncrementalEncoder(const char *encoding, const char *errors)
ABI .

encoding IncrementalEncoder

PyObject *PyCodec_IncrementalDecoder(const char *encoding, const char *errors)
ABI .

encoding IncrementalDecoder

PyObject *PyCodec_StreamReader(const char *encoding, PyObject *stream, const char *errors)
ABI .

encoding StreamReader

PyObject *PyCodec_StreamWriter(const char *encoding, PyObject *stream, const char *errors)
ABI .

encoding StreamWriter

Unicode API

int PyCodec_RegisterError(const char *name, PyObject *error)
ABI .

name (callback) error/ name /

UnicodeEncodeErrorUnicodeDecodeError UnicodeTranslateError Unicode (two-item tuple)/

0 -1

PyObject *PyCodec_LookupError(const char *name)
ABI .

name NULL "strict"

PyObject *PyCodec_StrictErrors(PyObject *exc)
NULL ABI .

exc

PyObject *PyCodec_IgnoreErrors(PyObject *exc)
ABI .

unicode

PyObject *PyCodec_ReplaceErrors(PyObject *exc)
ABI .

unicode ? U+FFFD

PyObject *PyCodec_XMLCharRefReplaceErrors(PyObject *exc)
ABI .

unicode XML

PyObject *PyCodec_BackslashReplaceErrors(PyObject *exc)
ABI .

unicode \x\u \U

PyObject *PyCodec_NameReplaceErrors(PyObject *exc)
ABI 3.7 .

unicode \N{...}

3.5 .

Codec utility variables

const char *Py_hexdigits

A string constant containing the lowercase hexadecimal digits: "0123456789abcdef".

3.3 .