struct PyGetSetDef *);
#ifndef Py_LIMITED_API
-PyAPI_FUNC(PyObject *) _PyMethodDescr_FastCallKeywords(
+PyAPI_FUNC(PyObject *) _PyMethodDescr_Vectorcall(
PyObject *descrobj, PyObject *const *args, size_t nargsf, PyObject *kwnames);
PyAPI_FUNC(PyObject *) PyDescr_NewWrapper(PyTypeObject *,
struct wrapperbase *, void *);
Py_ssize_t nargs,
PyObject *kwargs);
-PyAPI_FUNC(PyObject *) _PyFunction_FastCallKeywords(
+PyAPI_FUNC(PyObject *) _PyFunction_Vectorcall(
PyObject *func,
PyObject *const *stack,
size_t nargsf,
Py_ssize_t nargs,
PyObject *kwargs);
-PyAPI_FUNC(PyObject *) _PyCFunction_FastCallKeywords(PyObject *func,
+PyAPI_FUNC(PyObject *) _PyCFunction_Vectorcall(PyObject *func,
PyObject *const *stack,
size_t nargsf,
PyObject *kwnames);
PyObject *
-_PyFunction_FastCallKeywords(PyObject *func, PyObject* const* stack,
- size_t nargsf, PyObject *kwnames)
+_PyFunction_Vectorcall(PyObject *func, PyObject* const* stack,
+ size_t nargsf, PyObject *kwnames)
{
PyCodeObject *co = (PyCodeObject *)PyFunction_GET_CODE(func);
PyObject *globals = PyFunction_GET_GLOBALS(func);
PyObject *
-_PyCFunction_FastCallKeywords(PyObject *func,
- PyObject *const *args, size_t nargsf,
- PyObject *kwnames)
+_PyCFunction_Vectorcall(PyObject *func,
+ PyObject *const *args, size_t nargsf,
+ PyObject *kwnames)
{
PyObject *result;
// same to methoddescr_call(), but use FASTCALL convention.
PyObject *
-_PyMethodDescr_FastCallKeywords(PyObject *descrobj,
- PyObject *const *args, size_t nargsf,
- PyObject *kwnames)
+_PyMethodDescr_Vectorcall(PyObject *descrobj,
+ PyObject *const *args, size_t nargsf,
+ PyObject *kwnames)
{
assert(Py_TYPE(descrobj) == &PyMethodDescr_Type);
PyMethodDescrObject *descr = (PyMethodDescrObject *)descrobj;
type, method->ml_name);
if (descr != NULL) {
descr->d_method = method;
- descr->vectorcall = &_PyMethodDescr_FastCallKeywords;
+ descr->vectorcall = _PyMethodDescr_Vectorcall;
}
return (PyObject *)descr;
}
op->func_defaults = NULL; /* No default arguments */
op->func_kwdefaults = NULL; /* No keyword only defaults */
op->func_closure = NULL;
- op->vectorcall = _PyFunction_FastCallKeywords;
+ op->vectorcall = _PyFunction_Vectorcall;
consts = ((PyCodeObject *)code)->co_consts;
if (PyTuple_Size(consts) >= 1) {
op->vectorcall = NULL;
}
else {
- op->vectorcall = &_PyCFunction_FastCallKeywords;
+ op->vectorcall = _PyCFunction_Vectorcall;
}
_PyObject_GC_TRACK(op);
return (PyObject *)op;
{
PyObject *x;
if (PyCFunction_Check(func)) {
- C_TRACE(x, _PyCFunction_FastCallKeywords(func, args, nargs, kwnames));
+ C_TRACE(x, _PyCFunction_Vectorcall(func, args, nargs, kwnames));
return x;
}
else if (Py_TYPE(func) == &PyMethodDescr_Type && nargs > 0) {
if (func == NULL) {
return NULL;
}
- C_TRACE(x, _PyCFunction_FastCallKeywords(func,
- args+1, nargs-1,
- kwnames));
+ C_TRACE(x, _PyCFunction_Vectorcall(func,
+ args+1, nargs-1,
+ kwnames));
Py_DECREF(func);
return x;
}
return False
if caller in ('_PyCFunction_FastCallDict',
- '_PyCFunction_FastCallKeywords',
+ '_PyCFunction_Vectorcall',
'cfunction_call_varargs'):
arg_name = 'func'
# Within that frame: