]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Added prototypes for the new codec APIs for strings. These APIs
authorMarc-André Lemburg <mal@egenix.com>
Thu, 6 Jul 2000 11:25:40 +0000 (11:25 +0000)
committerMarc-André Lemburg <mal@egenix.com>
Thu, 6 Jul 2000 11:25:40 +0000 (11:25 +0000)
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.

Include/stringobject.h

index 377ab251737d3db4743ffa8ff0114e0940b425ba..d30bc03eef5b72cacb2c364f1f7b1ae3417c9862 100644 (file)
@@ -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