forked from aniani/vim
updated for version 7.3.1231
Problem: Python: use of numbers not consistent. Solution: Add support for Number protocol. (ZyX)
This commit is contained in:
@@ -160,6 +160,7 @@
|
||||
# define PyMapping_Keys py3_PyMapping_Keys
|
||||
# define PyIter_Next py3_PyIter_Next
|
||||
# define PyObject_GetIter py3_PyObject_GetIter
|
||||
# define PyObject_Repr py3_PyObject_Repr
|
||||
# define PyObject_GetItem py3_PyObject_GetItem
|
||||
# define PyObject_IsTrue py3_PyObject_IsTrue
|
||||
# define PyModule_GetDict py3_PyModule_GetDict
|
||||
@@ -211,6 +212,8 @@
|
||||
# define PyType_Type (*py3_PyType_Type)
|
||||
# define PySlice_Type (*py3_PySlice_Type)
|
||||
# define PyFloat_Type (*py3_PyFloat_Type)
|
||||
# define PyNumber_Check (*py3_PyNumber_Check)
|
||||
# define PyNumber_Long (*py3_PyNumber_Long)
|
||||
# define PyBool_Type (*py3_PyBool_Type)
|
||||
# define PyErr_NewException py3_PyErr_NewException
|
||||
# ifdef Py_DEBUG
|
||||
@@ -310,6 +313,7 @@ static PyObject* (*py3_PyLong_FromLong)(long);
|
||||
static PyObject* (*py3_PyDict_New)(void);
|
||||
static PyObject* (*py3_PyIter_Next)(PyObject *);
|
||||
static PyObject* (*py3_PyObject_GetIter)(PyObject *);
|
||||
static PyObject* (*py3_PyObject_Repr)(PyObject *);
|
||||
static PyObject* (*py3_PyObject_GetItem)(PyObject *, PyObject *);
|
||||
static int (*py3_PyObject_IsTrue)(PyObject *);
|
||||
static PyObject* (*py3_Py_BuildValue)(char *, ...);
|
||||
@@ -365,6 +369,8 @@ static PyTypeObject* py3_PyType_Type;
|
||||
static PyTypeObject* py3_PySlice_Type;
|
||||
static PyTypeObject* py3_PyFloat_Type;
|
||||
static PyTypeObject* py3_PyBool_Type;
|
||||
static int (*py3_PyNumber_Check)(PyObject *);
|
||||
static PyObject* (*py3_PyNumber_Long)(PyObject *);
|
||||
static PyObject* (*py3_PyErr_NewException)(char *name, PyObject *base, PyObject *dict);
|
||||
static PyObject* (*py3_PyCapsule_New)(void *, char *, PyCapsule_Destructor);
|
||||
static void* (*py3_PyCapsule_GetPointer)(PyObject *, char *);
|
||||
@@ -399,6 +405,7 @@ static PyObject *p3imp_PyExc_TypeError;
|
||||
static PyObject *p3imp_PyExc_ValueError;
|
||||
static PyObject *p3imp_PyExc_RuntimeError;
|
||||
static PyObject *p3imp_PyExc_ImportError;
|
||||
static PyObject *p3imp_PyExc_OverflowError;
|
||||
|
||||
# define PyExc_AttributeError p3imp_PyExc_AttributeError
|
||||
# define PyExc_IndexError p3imp_PyExc_IndexError
|
||||
@@ -408,6 +415,7 @@ static PyObject *p3imp_PyExc_ImportError;
|
||||
# define PyExc_ValueError p3imp_PyExc_ValueError
|
||||
# define PyExc_RuntimeError p3imp_PyExc_RuntimeError
|
||||
# define PyExc_ImportError p3imp_PyExc_ImportError
|
||||
# define PyExc_OverflowError p3imp_PyExc_OverflowError
|
||||
|
||||
/*
|
||||
* Table of name to function pointer of python.
|
||||
@@ -469,6 +477,7 @@ static struct
|
||||
{"PyMapping_Keys", (PYTHON_PROC*)&py3_PyMapping_Keys},
|
||||
{"PyIter_Next", (PYTHON_PROC*)&py3_PyIter_Next},
|
||||
{"PyObject_GetIter", (PYTHON_PROC*)&py3_PyObject_GetIter},
|
||||
{"PyObject_Repr", (PYTHON_PROC*)&py3_PyObject_Repr},
|
||||
{"PyObject_GetItem", (PYTHON_PROC*)&py3_PyObject_GetItem},
|
||||
{"PyObject_IsTrue", (PYTHON_PROC*)&py3_PyObject_IsTrue},
|
||||
{"PyLong_FromLong", (PYTHON_PROC*)&py3_PyLong_FromLong},
|
||||
@@ -518,6 +527,8 @@ static struct
|
||||
{"PySlice_Type", (PYTHON_PROC*)&py3_PySlice_Type},
|
||||
{"PyFloat_Type", (PYTHON_PROC*)&py3_PyFloat_Type},
|
||||
{"PyBool_Type", (PYTHON_PROC*)&py3_PyBool_Type},
|
||||
{"PyNumber_Check", (PYTHON_PROC*)&py3_PyNumber_Check},
|
||||
{"PyNumber_Long", (PYTHON_PROC*)&py3_PyNumber_Long},
|
||||
{"PyErr_NewException", (PYTHON_PROC*)&py3_PyErr_NewException},
|
||||
# ifdef Py_DEBUG
|
||||
{"_Py_NegativeRefcount", (PYTHON_PROC*)&py3__Py_NegativeRefcount},
|
||||
@@ -672,6 +683,7 @@ get_py3_exceptions()
|
||||
p3imp_PyExc_ValueError = PyDict_GetItemString(exdict, "ValueError");
|
||||
p3imp_PyExc_RuntimeError = PyDict_GetItemString(exdict, "RuntimeError");
|
||||
p3imp_PyExc_ImportError = PyDict_GetItemString(exdict, "ImportError");
|
||||
p3imp_PyExc_OverflowError = PyDict_GetItemString(exdict, "OverflowError");
|
||||
Py_XINCREF(p3imp_PyExc_AttributeError);
|
||||
Py_XINCREF(p3imp_PyExc_IndexError);
|
||||
Py_XINCREF(p3imp_PyExc_KeyError);
|
||||
@@ -680,6 +692,7 @@ get_py3_exceptions()
|
||||
Py_XINCREF(p3imp_PyExc_ValueError);
|
||||
Py_XINCREF(p3imp_PyExc_RuntimeError);
|
||||
Py_XINCREF(p3imp_PyExc_ImportError);
|
||||
Py_XINCREF(p3imp_PyExc_OverflowError);
|
||||
Py_XDECREF(exmod);
|
||||
}
|
||||
#endif /* DYNAMIC_PYTHON3 */
|
||||
|
Reference in New Issue
Block a user