From: Marc-André Lemburg Date: Thu, 6 Jul 2000 11:25:40 +0000 (+0000) Subject: Added prototypes for the new codec APIs for strings. These APIs X-Git-Tag: v2.0b1~1055 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=3d1a1d7f0c56fc9e25806d559ef08963d88022db;p=thirdparty%2FPython%2Fcpython.git Added prototypes for the new codec APIs for strings. These APIs match the ones in the Unicode implementation, but were extended to be able to reuse the existing Unicode codecs for string purposes too. Conversion from string to Unicode and back are done using the default encoding. --- diff --git a/Include/stringobject.h b/Include/stringobject.h index 377ab251737d..d30bc03eef5b 100644 --- a/Include/stringobject.h +++ b/Include/stringobject.h @@ -81,6 +81,37 @@ extern DL_IMPORT(PyObject *) PyString_InternFromString Py_PROTO((const char *)); #define PyString_AS_STRING(op) (((PyStringObject *)(op))->ob_sval) #define PyString_GET_SIZE(op) (((PyStringObject *)(op))->ob_size) +/* --- Generic Codecs ----------------------------------------------------- */ + +/* Create a string object by decoding the encoded string s of the + given size. */ + +extern DL_IMPORT(PyObject*) PyString_Decode( + const char *s, /* encoded string */ + int size, /* size of buffer */ + const char *encoding, /* encoding */ + const char *errors /* error handling */ + ); + +/* Encodes a char buffer of the given size and returns a + Python string object. */ + +extern DL_IMPORT(PyObject*) PyString_Encode( + const char *s, /* string char buffer */ + int size, /* number of chars to encode */ + const char *encoding, /* encoding */ + const char *errors /* error handling */ + ); + +/* Encodes a string object and returns the result as Python string + object. */ + +extern DL_IMPORT(PyObject*) PyString_AsEncodedString( + PyObject *str, /* string object */ + const char *encoding, /* encoding */ + const char *errors /* error handling */ + ); + #ifdef __cplusplus } #endif