diff options
author | Guido van Rossum <guido@python.org> | 1998-12-04 18:48:25 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 1998-12-04 18:48:25 (GMT) |
commit | 43466ec7b07de6bcad016bec60839cd6079c5a9c (patch) | |
tree | ec3bf3e1dfbf9535fa56e153e200f6491f34a6b0 /Include/abstract.h | |
parent | b241b67b8954b0679377af00d668e3dc92f4c858 (diff) | |
download | cpython-43466ec7b07de6bcad016bec60839cd6079c5a9c.zip cpython-43466ec7b07de6bcad016bec60839cd6079c5a9c.tar.gz cpython-43466ec7b07de6bcad016bec60839cd6079c5a9c.tar.bz2 |
Add DL_IMPORT(returntype) for all officially exported functions.
Diffstat (limited to 'Include/abstract.h')
-rw-r--r-- | Include/abstract.h | 102 |
1 files changed, 51 insertions, 51 deletions
diff --git a/Include/abstract.h b/Include/abstract.h index 333b15e..a4b1bc3 100644 --- a/Include/abstract.h +++ b/Include/abstract.h @@ -254,7 +254,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ #define PyObject_DelAttr(O,A) PyObject_SetAttr((O),(A),NULL) - int PyObject_Cmp Py_PROTO((PyObject *o1, PyObject *o2, int *result)); + DL_IMPORT(int) PyObject_Cmp Py_PROTO((PyObject *o1, PyObject *o2, int *result)); /* Compare the values of o1 and o2 using a routine provided by @@ -302,7 +302,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - int PyCallable_Check Py_PROTO((PyObject *o)); + DL_IMPORT(int) PyCallable_Check Py_PROTO((PyObject *o)); /* Determine if the object, o, is callable. Return 1 if the @@ -314,7 +314,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ - PyObject *PyObject_CallObject Py_PROTO((PyObject *callable_object, + DL_IMPORT(PyObject *) PyObject_CallObject Py_PROTO((PyObject *callable_object, PyObject *args)); /* @@ -327,7 +327,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyObject_CallFunction Py_PROTO((PyObject *callable_object, + DL_IMPORT(PyObject *) PyObject_CallFunction Py_PROTO((PyObject *callable_object, char *format, ...)); /* @@ -341,7 +341,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyObject_CallMethod Py_PROTO((PyObject *o, char *m, + DL_IMPORT(PyObject *) PyObject_CallMethod Py_PROTO((PyObject *o, char *m, char *format, ...)); /* @@ -394,7 +394,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyObject_Type Py_PROTO((PyObject *o)); + DL_IMPORT(PyObject *) PyObject_Type Py_PROTO((PyObject *o)); /* On success, returns a type object corresponding to the object @@ -402,7 +402,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ equivalent to the Python expression: type(o). */ - int PyObject_Length Py_PROTO((PyObject *o)); + DL_IMPORT(int) PyObject_Length Py_PROTO((PyObject *o)); /* Return the length of object o. If the object, o, provides @@ -412,7 +412,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyObject_GetItem Py_PROTO((PyObject *o, PyObject *key)); + DL_IMPORT(PyObject *) PyObject_GetItem Py_PROTO((PyObject *o, PyObject *key)); /* Return element of o corresponding to the object, key, or NULL @@ -421,7 +421,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - int PyObject_SetItem Py_PROTO((PyObject *o, PyObject *key, PyObject *v)); + DL_IMPORT(int) PyObject_SetItem Py_PROTO((PyObject *o, PyObject *key, PyObject *v)); /* Map the object, key, to the value, v. Returns @@ -429,7 +429,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ statement: o[key]=v. */ - int PyObject_DelItem Py_PROTO((PyObject *o, PyObject *key)); + DL_IMPORT(int) PyObject_DelItem Py_PROTO((PyObject *o, PyObject *key)); /* Delete the mapping for key from *o. Returns -1 on failure. @@ -439,7 +439,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ /* Number Protocol:*/ - int PyNumber_Check Py_PROTO((PyObject *o)); + DL_IMPORT(int) PyNumber_Check Py_PROTO((PyObject *o)); /* Returns 1 if the object, o, provides numeric protocols, and @@ -449,7 +449,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyNumber_Add Py_PROTO((PyObject *o1, PyObject *o2)); + DL_IMPORT(PyObject *) PyNumber_Add Py_PROTO((PyObject *o1, PyObject *o2)); /* Returns the result of adding o1 and o2, or null on failure. @@ -458,7 +458,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyNumber_Subtract Py_PROTO((PyObject *o1, PyObject *o2)); + DL_IMPORT(PyObject *) PyNumber_Subtract Py_PROTO((PyObject *o1, PyObject *o2)); /* Returns the result of subtracting o2 from o1, or null on @@ -467,7 +467,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyNumber_Multiply Py_PROTO((PyObject *o1, PyObject *o2)); + DL_IMPORT(PyObject *) PyNumber_Multiply Py_PROTO((PyObject *o1, PyObject *o2)); /* Returns the result of multiplying o1 and o2, or null on @@ -477,7 +477,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyNumber_Divide Py_PROTO((PyObject *o1, PyObject *o2)); + DL_IMPORT(PyObject *) PyNumber_Divide Py_PROTO((PyObject *o1, PyObject *o2)); /* Returns the result of dividing o1 by o2, or null on failure. @@ -486,7 +486,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyNumber_Remainder Py_PROTO((PyObject *o1, PyObject *o2)); + DL_IMPORT(PyObject *) PyNumber_Remainder Py_PROTO((PyObject *o1, PyObject *o2)); /* Returns the remainder of dividing o1 by o2, or null on @@ -496,7 +496,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyNumber_Divmod Py_PROTO((PyObject *o1, PyObject *o2)); + DL_IMPORT(PyObject *) PyNumber_Divmod Py_PROTO((PyObject *o1, PyObject *o2)); /* See the built-in function divmod. Returns NULL on failure. @@ -506,7 +506,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyNumber_Power Py_PROTO((PyObject *o1, PyObject *o2, PyObject *o3)); + DL_IMPORT(PyObject *) PyNumber_Power Py_PROTO((PyObject *o1, PyObject *o2, PyObject *o3)); /* See the built-in function pow. Returns NULL on failure. @@ -515,7 +515,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyNumber_Negative Py_PROTO((PyObject *o)); + DL_IMPORT(PyObject *) PyNumber_Negative Py_PROTO((PyObject *o)); /* Returns the negation of o on success, or null on failure. @@ -523,7 +523,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyNumber_Positive Py_PROTO((PyObject *o)); + DL_IMPORT(PyObject *) PyNumber_Positive Py_PROTO((PyObject *o)); /* Returns the (what?) of o on success, or NULL on failure. @@ -531,7 +531,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyNumber_Absolute Py_PROTO((PyObject *o)); + DL_IMPORT(PyObject *) PyNumber_Absolute Py_PROTO((PyObject *o)); /* Returns the absolute value of o, or null on failure. This is @@ -539,7 +539,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyNumber_Invert Py_PROTO((PyObject *o)); + DL_IMPORT(PyObject *) PyNumber_Invert Py_PROTO((PyObject *o)); /* Returns the bitwise negation of o on success, or NULL on @@ -549,7 +549,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyNumber_Lshift Py_PROTO((PyObject *o1, PyObject *o2)); + DL_IMPORT(PyObject *) PyNumber_Lshift Py_PROTO((PyObject *o1, PyObject *o2)); /* Returns the result of left shifting o1 by o2 on success, or @@ -559,7 +559,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyNumber_Rshift Py_PROTO((PyObject *o1, PyObject *o2)); + DL_IMPORT(PyObject *) PyNumber_Rshift Py_PROTO((PyObject *o1, PyObject *o2)); /* Returns the result of right shifting o1 by o2 on success, or @@ -568,7 +568,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyNumber_And Py_PROTO((PyObject *o1, PyObject *o2)); + DL_IMPORT(PyObject *) PyNumber_And Py_PROTO((PyObject *o1, PyObject *o2)); /* Returns the result of bitwise and of o1 and o2 on success, or @@ -578,7 +578,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyNumber_Xor Py_PROTO((PyObject *o1, PyObject *o2)); + DL_IMPORT(PyObject *) PyNumber_Xor Py_PROTO((PyObject *o1, PyObject *o2)); /* Returns the bitwise exclusive or of o1 by o2 on success, or @@ -588,7 +588,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyNumber_Or Py_PROTO((PyObject *o1, PyObject *o2)); + DL_IMPORT(PyObject *) PyNumber_Or Py_PROTO((PyObject *o1, PyObject *o2)); /* Returns the result of bitwise or or o1 and o2 on success, or @@ -616,7 +616,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyNumber_Int Py_PROTO((PyObject *o)); + DL_IMPORT(PyObject *) PyNumber_Int Py_PROTO((PyObject *o)); /* Returns the o converted to an integer object on success, or @@ -625,7 +625,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyNumber_Long Py_PROTO((PyObject *o)); + DL_IMPORT(PyObject *) PyNumber_Long Py_PROTO((PyObject *o)); /* Returns the o converted to a long integer object on success, @@ -634,7 +634,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PyNumber_Float Py_PROTO((PyObject *o)); + DL_IMPORT(PyObject *) PyNumber_Float Py_PROTO((PyObject *o)); /* Returns the o converted to a float object on success, or NULL @@ -645,7 +645,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ /* Sequence protocol:*/ - int PySequence_Check Py_PROTO((PyObject *o)); + DL_IMPORT(int) PySequence_Check Py_PROTO((PyObject *o)); /* Return 1 if the object provides sequence protocol, and zero @@ -655,14 +655,14 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - int PySequence_Length Py_PROTO((PyObject *o)); + DL_IMPORT(int) PySequence_Length Py_PROTO((PyObject *o)); /* Return the length of sequence object o, or -1 on failure. */ - PyObject *PySequence_Concat Py_PROTO((PyObject *o1, PyObject *o2)); + DL_IMPORT(PyObject *) PySequence_Concat Py_PROTO((PyObject *o1, PyObject *o2)); /* Return the concatination of o1 and o2 on success, and NULL on @@ -671,7 +671,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PySequence_Repeat Py_PROTO((PyObject *o, int count)); + DL_IMPORT(PyObject *) PySequence_Repeat Py_PROTO((PyObject *o, int count)); /* Return the result of repeating sequence object o count times, @@ -680,7 +680,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PySequence_GetItem Py_PROTO((PyObject *o, int i)); + DL_IMPORT(PyObject *) PySequence_GetItem Py_PROTO((PyObject *o, int i)); /* Return the ith element of o, or NULL on failure. This is the @@ -688,7 +688,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - PyObject *PySequence_GetSlice Py_PROTO((PyObject *o, int i1, int i2)); + DL_IMPORT(PyObject *) PySequence_GetSlice Py_PROTO((PyObject *o, int i1, int i2)); /* Return the slice of sequence object o between i1 and i2, or @@ -697,7 +697,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - int PySequence_SetItem Py_PROTO((PyObject *o, int i, PyObject *v)); + DL_IMPORT(int) PySequence_SetItem Py_PROTO((PyObject *o, int i, PyObject *v)); /* Assign object v to the ith element of o. Returns @@ -706,7 +706,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ - int PySequence_DelItem Py_PROTO((PyObject *o, int i)); + DL_IMPORT(int) PySequence_DelItem Py_PROTO((PyObject *o, int i)); /* Delete the ith element of object v. Returns @@ -714,7 +714,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ statement: del o[i]. */ - int PySequence_SetSlice Py_PROTO((PyObject *o, int i1, int i2, PyObject *v)); + DL_IMPORT(int) PySequence_SetSlice Py_PROTO((PyObject *o, int i1, int i2, PyObject *v)); /* Assign the sequence object, v, to the slice in sequence @@ -722,7 +722,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ equivalent of the Python statement: o[i1:i2]=v. */ - int PySequence_DelSlice Py_PROTO((PyObject *o, int i1, int i2)); + DL_IMPORT(int) PySequence_DelSlice Py_PROTO((PyObject *o, int i1, int i2)); /* Delete the slice in sequence object, o, from i1 to i2. @@ -730,21 +730,21 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ statement: del o[i1:i2]. */ - PyObject *PySequence_Tuple Py_PROTO((PyObject *o)); + DL_IMPORT(PyObject *) PySequence_Tuple Py_PROTO((PyObject *o)); /* Returns the sequence, o, as a tuple on success, and NULL on failure. This is equivalent to the Python expression: tuple(o) */ - PyObject *PySequence_List Py_PROTO((PyObject *o)); + DL_IMPORT(PyObject *) PySequence_List Py_PROTO((PyObject *o)); /* Returns the sequence, o, as a list on success, and NULL on failure. This is equivalent to the Python expression: list(o) */ - int PySequence_Count Py_PROTO((PyObject *o, PyObject *value)); + DL_IMPORT(int) PySequence_Count Py_PROTO((PyObject *o, PyObject *value)); /* Return the number of occurrences on value on o, that is, @@ -753,7 +753,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ expression: o.count(value). */ - int PySequence_Contains Py_PROTO((PyObject *o, PyObject *value)); + DL_IMPORT(int) PySequence_Contains Py_PROTO((PyObject *o, PyObject *value)); #define PySequence_In PySequence_Contains /* @@ -762,7 +762,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ is equivalent to the Python expression: value in o. */ - int PySequence_Index Py_PROTO((PyObject *o, PyObject *value)); + DL_IMPORT(int) PySequence_Index Py_PROTO((PyObject *o, PyObject *value)); /* Return the first index for which o[i]=value. On error, @@ -772,7 +772,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ /* Mapping protocol:*/ - int PyMapping_Check Py_PROTO((PyObject *o)); + DL_IMPORT(int) PyMapping_Check Py_PROTO((PyObject *o)); /* Return 1 if the object provides mapping protocol, and zero @@ -781,7 +781,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ This function always succeeds. */ - int PyMapping_Length Py_PROTO((PyObject *o)); + DL_IMPORT(int) PyMapping_Length Py_PROTO((PyObject *o)); /* Returns the number of keys in object o on success, and -1 on @@ -809,7 +809,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ #define PyMapping_DelItem(O,K) PyDict_DelItem((O),(K)) - int PyMapping_HasKeyString Py_PROTO((PyObject *o, char *key)); + DL_IMPORT(int) PyMapping_HasKeyString Py_PROTO((PyObject *o, char *key)); /* On success, return 1 if the mapping object has the key, key, @@ -819,7 +819,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ This function always succeeds. */ - int PyMapping_HasKey Py_PROTO((PyObject *o, PyObject *key)); + DL_IMPORT(int) PyMapping_HasKey Py_PROTO((PyObject *o, PyObject *key)); /* Return 1 if the mapping object has the key, key, @@ -862,7 +862,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ */ #define PyMapping_Items(O) PyObject_CallMethod(O,"items",NULL) - PyObject *PyMapping_GetItemString Py_PROTO((PyObject *o, char *key)); + DL_IMPORT(PyObject *) PyMapping_GetItemString Py_PROTO((PyObject *o, char *key)); /* Return element of o corresponding to the object, key, or NULL @@ -870,7 +870,7 @@ xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx*/ o[key]. */ - int PyMapping_SetItemString Py_PROTO((PyObject *o, char *key, + DL_IMPORT(int) PyMapping_SetItemString Py_PROTO((PyObject *o, char *key, PyObject *value)); /* |