comparison src/if_python3.c @ 4627:18ba89e06fab v7.3.1061

updated for version 7.3.1061 Problem: Python: Dictionary is not standard. Solution: Python patch 20: Add standard methods and fields. (ZyX)
author Bram Moolenaar <bram@vim.org>
date Thu, 30 May 2013 13:01:18 +0200
parents 548b889fe3cf
children 07c534fe9b6c
comparison
equal deleted inserted replaced
4626:329c896801ce 4627:18ba89e06fab
94 #define PyString_AsStringAndSize(obj, buffer, len) PyBytes_AsStringAndSize(obj, buffer, len) 94 #define PyString_AsStringAndSize(obj, buffer, len) PyBytes_AsStringAndSize(obj, buffer, len)
95 #define PyInt_Check(obj) PyLong_Check(obj) 95 #define PyInt_Check(obj) PyLong_Check(obj)
96 #define PyInt_FromLong(i) PyLong_FromLong(i) 96 #define PyInt_FromLong(i) PyLong_FromLong(i)
97 #define PyInt_AsLong(obj) PyLong_AsLong(obj) 97 #define PyInt_AsLong(obj) PyLong_AsLong(obj)
98 #define Py_ssize_t_fmt "n" 98 #define Py_ssize_t_fmt "n"
99 #define Py_bytes_fmt "y"
99 100
100 #if defined(DYNAMIC_PYTHON3) || defined(PROTO) 101 #if defined(DYNAMIC_PYTHON3) || defined(PROTO)
101 102
102 # ifndef WIN3264 103 # ifndef WIN3264
103 # include <dlfcn.h> 104 # include <dlfcn.h>
147 # define PyList_SetItem py3_PyList_SetItem 148 # define PyList_SetItem py3_PyList_SetItem
148 # define PyList_Size py3_PyList_Size 149 # define PyList_Size py3_PyList_Size
149 # define PySequence_Check py3_PySequence_Check 150 # define PySequence_Check py3_PySequence_Check
150 # define PySequence_Size py3_PySequence_Size 151 # define PySequence_Size py3_PySequence_Size
151 # define PySequence_GetItem py3_PySequence_GetItem 152 # define PySequence_GetItem py3_PySequence_GetItem
153 # define PySequence_Fast py3_PySequence_Fast
152 # define PyTuple_Size py3_PyTuple_Size 154 # define PyTuple_Size py3_PyTuple_Size
153 # define PyTuple_GetItem py3_PyTuple_GetItem 155 # define PyTuple_GetItem py3_PyTuple_GetItem
154 # define PySlice_GetIndicesEx py3_PySlice_GetIndicesEx 156 # define PySlice_GetIndicesEx py3_PySlice_GetIndicesEx
155 # define PyImport_ImportModule py3_PyImport_ImportModule 157 # define PyImport_ImportModule py3_PyImport_ImportModule
156 # define PyObject_Init py3__PyObject_Init 158 # define PyObject_Init py3__PyObject_Init
166 #undef PyRun_SimpleString 168 #undef PyRun_SimpleString
167 # define PyRun_SimpleString py3_PyRun_SimpleString 169 # define PyRun_SimpleString py3_PyRun_SimpleString
168 #undef PyRun_String 170 #undef PyRun_String
169 # define PyRun_String py3_PyRun_String 171 # define PyRun_String py3_PyRun_String
170 # define PyObject_GetAttrString py3_PyObject_GetAttrString 172 # define PyObject_GetAttrString py3_PyObject_GetAttrString
173 # define PyObject_HasAttrString py3_PyObject_HasAttrString
171 # define PyObject_SetAttrString py3_PyObject_SetAttrString 174 # define PyObject_SetAttrString py3_PyObject_SetAttrString
172 # define PyObject_CallFunctionObjArgs py3_PyObject_CallFunctionObjArgs 175 # define PyObject_CallFunctionObjArgs py3_PyObject_CallFunctionObjArgs
173 # define PyEval_GetLocals py3_PyEval_GetLocals 176 # define PyEval_GetLocals py3_PyEval_GetLocals
174 # define PyEval_GetGlobals py3_PyEval_GetGlobals 177 # define PyEval_GetGlobals py3_PyEval_GetGlobals
175 # define PySys_SetObject py3_PySys_SetObject 178 # define PySys_SetObject py3_PySys_SetObject
267 static PyObject* (*py3_PyList_Append)(PyObject *, PyObject *); 270 static PyObject* (*py3_PyList_Append)(PyObject *, PyObject *);
268 static Py_ssize_t (*py3_PyList_Size)(PyObject *); 271 static Py_ssize_t (*py3_PyList_Size)(PyObject *);
269 static int (*py3_PySequence_Check)(PyObject *); 272 static int (*py3_PySequence_Check)(PyObject *);
270 static Py_ssize_t (*py3_PySequence_Size)(PyObject *); 273 static Py_ssize_t (*py3_PySequence_Size)(PyObject *);
271 static PyObject* (*py3_PySequence_GetItem)(PyObject *, Py_ssize_t); 274 static PyObject* (*py3_PySequence_GetItem)(PyObject *, Py_ssize_t);
275 static PyObject* (*py3_PySequence_Fast)(PyObject *, const char *);
272 static Py_ssize_t (*py3_PyTuple_Size)(PyObject *); 276 static Py_ssize_t (*py3_PyTuple_Size)(PyObject *);
273 static PyObject* (*py3_PyTuple_GetItem)(PyObject *, Py_ssize_t); 277 static PyObject* (*py3_PyTuple_GetItem)(PyObject *, Py_ssize_t);
274 static int (*py3_PyMapping_Check)(PyObject *); 278 static int (*py3_PyMapping_Check)(PyObject *);
275 static PyObject* (*py3_PyMapping_Items)(PyObject *); 279 static PyObject* (*py3_PyMapping_Items)(PyObject *);
276 static int (*py3_PySlice_GetIndicesEx)(PyObject *r, Py_ssize_t length, 280 static int (*py3_PySlice_GetIndicesEx)(PyObject *r, Py_ssize_t length,
280 static void (*py3_PyErr_SetString)(PyObject *, const char *); 284 static void (*py3_PyErr_SetString)(PyObject *, const char *);
281 static void (*py3_PyErr_SetObject)(PyObject *, PyObject *); 285 static void (*py3_PyErr_SetObject)(PyObject *, PyObject *);
282 static int (*py3_PyRun_SimpleString)(char *); 286 static int (*py3_PyRun_SimpleString)(char *);
283 static PyObject* (*py3_PyRun_String)(char *, int, PyObject *, PyObject *); 287 static PyObject* (*py3_PyRun_String)(char *, int, PyObject *, PyObject *);
284 static PyObject* (*py3_PyObject_GetAttrString)(PyObject *, const char *); 288 static PyObject* (*py3_PyObject_GetAttrString)(PyObject *, const char *);
289 static int (*py3_PyObject_HasAttrString)(PyObject *, const char *);
285 static PyObject* (*py3_PyObject_SetAttrString)(PyObject *, const char *, PyObject *); 290 static PyObject* (*py3_PyObject_SetAttrString)(PyObject *, const char *, PyObject *);
286 static PyObject* (*py3_PyObject_CallFunctionObjArgs)(PyObject *, ...); 291 static PyObject* (*py3_PyObject_CallFunctionObjArgs)(PyObject *, ...);
287 static PyObject* (*py3_PyEval_GetGlobals)(); 292 static PyObject* (*py3_PyEval_GetGlobals)();
288 static PyObject* (*py3_PyEval_GetLocals)(); 293 static PyObject* (*py3_PyEval_GetLocals)();
289 static PyObject* (*py3_PyList_GetItem)(PyObject *, Py_ssize_t); 294 static PyObject* (*py3_PyList_GetItem)(PyObject *, Py_ssize_t);
423 {"PyList_Append", (PYTHON_PROC*)&py3_PyList_Append}, 428 {"PyList_Append", (PYTHON_PROC*)&py3_PyList_Append},
424 {"PyList_Size", (PYTHON_PROC*)&py3_PyList_Size}, 429 {"PyList_Size", (PYTHON_PROC*)&py3_PyList_Size},
425 {"PySequence_Check", (PYTHON_PROC*)&py3_PySequence_Check}, 430 {"PySequence_Check", (PYTHON_PROC*)&py3_PySequence_Check},
426 {"PySequence_Size", (PYTHON_PROC*)&py3_PySequence_Size}, 431 {"PySequence_Size", (PYTHON_PROC*)&py3_PySequence_Size},
427 {"PySequence_GetItem", (PYTHON_PROC*)&py3_PySequence_GetItem}, 432 {"PySequence_GetItem", (PYTHON_PROC*)&py3_PySequence_GetItem},
433 {"PySequence_Fast", (PYTHON_PROC*)&py3_PySequence_Fast},
428 {"PyTuple_Size", (PYTHON_PROC*)&py3_PyTuple_Size}, 434 {"PyTuple_Size", (PYTHON_PROC*)&py3_PyTuple_Size},
429 {"PyTuple_GetItem", (PYTHON_PROC*)&py3_PyTuple_GetItem}, 435 {"PyTuple_GetItem", (PYTHON_PROC*)&py3_PyTuple_GetItem},
430 {"PySlice_GetIndicesEx", (PYTHON_PROC*)&py3_PySlice_GetIndicesEx}, 436 {"PySlice_GetIndicesEx", (PYTHON_PROC*)&py3_PySlice_GetIndicesEx},
431 {"PyErr_NoMemory", (PYTHON_PROC*)&py3_PyErr_NoMemory}, 437 {"PyErr_NoMemory", (PYTHON_PROC*)&py3_PyErr_NoMemory},
432 {"Py_Finalize", (PYTHON_PROC*)&py3_Py_Finalize}, 438 {"Py_Finalize", (PYTHON_PROC*)&py3_Py_Finalize},
433 {"PyErr_SetString", (PYTHON_PROC*)&py3_PyErr_SetString}, 439 {"PyErr_SetString", (PYTHON_PROC*)&py3_PyErr_SetString},
434 {"PyErr_SetObject", (PYTHON_PROC*)&py3_PyErr_SetObject}, 440 {"PyErr_SetObject", (PYTHON_PROC*)&py3_PyErr_SetObject},
435 {"PyRun_SimpleString", (PYTHON_PROC*)&py3_PyRun_SimpleString}, 441 {"PyRun_SimpleString", (PYTHON_PROC*)&py3_PyRun_SimpleString},
436 {"PyRun_String", (PYTHON_PROC*)&py3_PyRun_String}, 442 {"PyRun_String", (PYTHON_PROC*)&py3_PyRun_String},
437 {"PyObject_GetAttrString", (PYTHON_PROC*)&py3_PyObject_GetAttrString}, 443 {"PyObject_GetAttrString", (PYTHON_PROC*)&py3_PyObject_GetAttrString},
444 {"PyObject_HasAttrString", (PYTHON_PROC*)&py3_PyObject_HasAttrString},
438 {"PyObject_SetAttrString", (PYTHON_PROC*)&py3_PyObject_SetAttrString}, 445 {"PyObject_SetAttrString", (PYTHON_PROC*)&py3_PyObject_SetAttrString},
439 {"PyObject_CallFunctionObjArgs", (PYTHON_PROC*)&py3_PyObject_CallFunctionObjArgs}, 446 {"PyObject_CallFunctionObjArgs", (PYTHON_PROC*)&py3_PyObject_CallFunctionObjArgs},
440 {"PyEval_GetGlobals", (PYTHON_PROC*)&py3_PyEval_GetGlobals}, 447 {"PyEval_GetGlobals", (PYTHON_PROC*)&py3_PyEval_GetGlobals},
441 {"PyEval_GetLocals", (PYTHON_PROC*)&py3_PyEval_GetLocals}, 448 {"PyEval_GetLocals", (PYTHON_PROC*)&py3_PyEval_GetLocals},
442 {"PyList_GetItem", (PYTHON_PROC*)&py3_PyList_GetItem}, 449 {"PyList_GetItem", (PYTHON_PROC*)&py3_PyList_GetItem},