Commit 37e4ef7b authored by Victor Stinner's avatar Victor Stinner

Issue #27810: Rerun Argument Clinic on all modules

parent f0ccbbbc
......@@ -115,14 +115,14 @@ PyDoc_STRVAR(_bz2_BZ2Decompressor_decompress__doc__,
"the unused_data attribute.");
#define _BZ2_BZ2DECOMPRESSOR_DECOMPRESS_METHODDEF \
{"decompress", (PyCFunction)_bz2_BZ2Decompressor_decompress, METH_VARARGS|METH_KEYWORDS, _bz2_BZ2Decompressor_decompress__doc__},
{"decompress", (PyCFunction)_bz2_BZ2Decompressor_decompress, METH_FASTCALL, _bz2_BZ2Decompressor_decompress__doc__},
static PyObject *
_bz2_BZ2Decompressor_decompress_impl(BZ2Decompressor *self, Py_buffer *data,
Py_ssize_t max_length);
static PyObject *
_bz2_BZ2Decompressor_decompress(BZ2Decompressor *self, PyObject *args, PyObject *kwargs)
_bz2_BZ2Decompressor_decompress(BZ2Decompressor *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"data", "max_length", NULL};
......@@ -130,7 +130,7 @@ _bz2_BZ2Decompressor_decompress(BZ2Decompressor *self, PyObject *args, PyObject
Py_buffer data = {NULL, NULL};
Py_ssize_t max_length = -1;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&data, &max_length)) {
goto exit;
}
......@@ -174,4 +174,4 @@ _bz2_BZ2Decompressor___init__(PyObject *self, PyObject *args, PyObject *kwargs)
exit:
return return_value;
}
/*[clinic end generated code: output=40e5ef049f9e719b input=a9049054013a1b77]*/
/*[clinic end generated code: output=7e57af0b368d3e55 input=a9049054013a1b77]*/
......@@ -55,14 +55,14 @@ PyDoc_STRVAR(_codecs_encode__doc__,
"codecs.register_error that can handle ValueErrors.");
#define _CODECS_ENCODE_METHODDEF \
{"encode", (PyCFunction)_codecs_encode, METH_VARARGS|METH_KEYWORDS, _codecs_encode__doc__},
{"encode", (PyCFunction)_codecs_encode, METH_FASTCALL, _codecs_encode__doc__},
static PyObject *
_codecs_encode_impl(PyObject *module, PyObject *obj, const char *encoding,
const char *errors);
static PyObject *
_codecs_encode(PyObject *module, PyObject *args, PyObject *kwargs)
_codecs_encode(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"obj", "encoding", "errors", NULL};
......@@ -71,7 +71,7 @@ _codecs_encode(PyObject *module, PyObject *args, PyObject *kwargs)
const char *encoding = NULL;
const char *errors = NULL;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&obj, &encoding, &errors)) {
goto exit;
}
......@@ -94,14 +94,14 @@ PyDoc_STRVAR(_codecs_decode__doc__,
"codecs.register_error that can handle ValueErrors.");
#define _CODECS_DECODE_METHODDEF \
{"decode", (PyCFunction)_codecs_decode, METH_VARARGS|METH_KEYWORDS, _codecs_decode__doc__},
{"decode", (PyCFunction)_codecs_decode, METH_FASTCALL, _codecs_decode__doc__},
static PyObject *
_codecs_decode_impl(PyObject *module, PyObject *obj, const char *encoding,
const char *errors);
static PyObject *
_codecs_decode(PyObject *module, PyObject *args, PyObject *kwargs)
_codecs_decode(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"obj", "encoding", "errors", NULL};
......@@ -110,7 +110,7 @@ _codecs_decode(PyObject *module, PyObject *args, PyObject *kwargs)
const char *encoding = NULL;
const char *errors = NULL;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&obj, &encoding, &errors)) {
goto exit;
}
......@@ -1536,4 +1536,4 @@ exit:
#ifndef _CODECS_CODE_PAGE_ENCODE_METHODDEF
#define _CODECS_CODE_PAGE_ENCODE_METHODDEF
#endif /* !defined(_CODECS_CODE_PAGE_ENCODE_METHODDEF) */
/*[clinic end generated code: output=ebe313ab417b17bb input=a9049054013a1b77]*/
/*[clinic end generated code: output=6d6afcabde10ed79 input=a9049054013a1b77]*/
......@@ -14,20 +14,20 @@ PyDoc_STRVAR(datetime_datetime_now__doc__,
"If no tz is specified, uses local timezone.");
#define DATETIME_DATETIME_NOW_METHODDEF \
{"now", (PyCFunction)datetime_datetime_now, METH_VARARGS|METH_KEYWORDS|METH_CLASS, datetime_datetime_now__doc__},
{"now", (PyCFunction)datetime_datetime_now, METH_FASTCALL|METH_CLASS, datetime_datetime_now__doc__},
static PyObject *
datetime_datetime_now_impl(PyTypeObject *type, PyObject *tz);
static PyObject *
datetime_datetime_now(PyTypeObject *type, PyObject *args, PyObject *kwargs)
datetime_datetime_now(PyTypeObject *type, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"tz", NULL};
static _PyArg_Parser _parser = {"|O:now", _keywords, 0};
PyObject *tz = Py_None;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&tz)) {
goto exit;
}
......@@ -36,4 +36,4 @@ datetime_datetime_now(PyTypeObject *type, PyObject *args, PyObject *kwargs)
exit:
return return_value;
}
/*[clinic end generated code: output=61f85af5637df8b5 input=a9049054013a1b77]*/
/*[clinic end generated code: output=8aaac0705add61ca input=a9049054013a1b77]*/
......@@ -136,14 +136,14 @@ PyDoc_STRVAR(_elementtree_Element_find__doc__,
"\n");
#define _ELEMENTTREE_ELEMENT_FIND_METHODDEF \
{"find", (PyCFunction)_elementtree_Element_find, METH_VARARGS|METH_KEYWORDS, _elementtree_Element_find__doc__},
{"find", (PyCFunction)_elementtree_Element_find, METH_FASTCALL, _elementtree_Element_find__doc__},
static PyObject *
_elementtree_Element_find_impl(ElementObject *self, PyObject *path,
PyObject *namespaces);
static PyObject *
_elementtree_Element_find(ElementObject *self, PyObject *args, PyObject *kwargs)
_elementtree_Element_find(ElementObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "namespaces", NULL};
......@@ -151,7 +151,7 @@ _elementtree_Element_find(ElementObject *self, PyObject *args, PyObject *kwargs)
PyObject *path;
PyObject *namespaces = Py_None;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&path, &namespaces)) {
goto exit;
}
......@@ -167,7 +167,7 @@ PyDoc_STRVAR(_elementtree_Element_findtext__doc__,
"\n");
#define _ELEMENTTREE_ELEMENT_FINDTEXT_METHODDEF \
{"findtext", (PyCFunction)_elementtree_Element_findtext, METH_VARARGS|METH_KEYWORDS, _elementtree_Element_findtext__doc__},
{"findtext", (PyCFunction)_elementtree_Element_findtext, METH_FASTCALL, _elementtree_Element_findtext__doc__},
static PyObject *
_elementtree_Element_findtext_impl(ElementObject *self, PyObject *path,
......@@ -175,7 +175,7 @@ _elementtree_Element_findtext_impl(ElementObject *self, PyObject *path,
PyObject *namespaces);
static PyObject *
_elementtree_Element_findtext(ElementObject *self, PyObject *args, PyObject *kwargs)
_elementtree_Element_findtext(ElementObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "default", "namespaces", NULL};
......@@ -184,7 +184,7 @@ _elementtree_Element_findtext(ElementObject *self, PyObject *args, PyObject *kwa
PyObject *default_value = Py_None;
PyObject *namespaces = Py_None;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&path, &default_value, &namespaces)) {
goto exit;
}
......@@ -200,14 +200,14 @@ PyDoc_STRVAR(_elementtree_Element_findall__doc__,
"\n");
#define _ELEMENTTREE_ELEMENT_FINDALL_METHODDEF \
{"findall", (PyCFunction)_elementtree_Element_findall, METH_VARARGS|METH_KEYWORDS, _elementtree_Element_findall__doc__},
{"findall", (PyCFunction)_elementtree_Element_findall, METH_FASTCALL, _elementtree_Element_findall__doc__},
static PyObject *
_elementtree_Element_findall_impl(ElementObject *self, PyObject *path,
PyObject *namespaces);
static PyObject *
_elementtree_Element_findall(ElementObject *self, PyObject *args, PyObject *kwargs)
_elementtree_Element_findall(ElementObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "namespaces", NULL};
......@@ -215,7 +215,7 @@ _elementtree_Element_findall(ElementObject *self, PyObject *args, PyObject *kwar
PyObject *path;
PyObject *namespaces = Py_None;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&path, &namespaces)) {
goto exit;
}
......@@ -231,14 +231,14 @@ PyDoc_STRVAR(_elementtree_Element_iterfind__doc__,
"\n");
#define _ELEMENTTREE_ELEMENT_ITERFIND_METHODDEF \
{"iterfind", (PyCFunction)_elementtree_Element_iterfind, METH_VARARGS|METH_KEYWORDS, _elementtree_Element_iterfind__doc__},
{"iterfind", (PyCFunction)_elementtree_Element_iterfind, METH_FASTCALL, _elementtree_Element_iterfind__doc__},
static PyObject *
_elementtree_Element_iterfind_impl(ElementObject *self, PyObject *path,
PyObject *namespaces);
static PyObject *
_elementtree_Element_iterfind(ElementObject *self, PyObject *args, PyObject *kwargs)
_elementtree_Element_iterfind(ElementObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "namespaces", NULL};
......@@ -246,7 +246,7 @@ _elementtree_Element_iterfind(ElementObject *self, PyObject *args, PyObject *kwa
PyObject *path;
PyObject *namespaces = Py_None;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&path, &namespaces)) {
goto exit;
}
......@@ -262,14 +262,14 @@ PyDoc_STRVAR(_elementtree_Element_get__doc__,
"\n");
#define _ELEMENTTREE_ELEMENT_GET_METHODDEF \
{"get", (PyCFunction)_elementtree_Element_get, METH_VARARGS|METH_KEYWORDS, _elementtree_Element_get__doc__},
{"get", (PyCFunction)_elementtree_Element_get, METH_FASTCALL, _elementtree_Element_get__doc__},
static PyObject *
_elementtree_Element_get_impl(ElementObject *self, PyObject *key,
PyObject *default_value);
static PyObject *
_elementtree_Element_get(ElementObject *self, PyObject *args, PyObject *kwargs)
_elementtree_Element_get(ElementObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"key", "default", NULL};
......@@ -277,7 +277,7 @@ _elementtree_Element_get(ElementObject *self, PyObject *args, PyObject *kwargs)
PyObject *key;
PyObject *default_value = Py_None;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&key, &default_value)) {
goto exit;
}
......@@ -310,20 +310,20 @@ PyDoc_STRVAR(_elementtree_Element_iter__doc__,
"\n");
#define _ELEMENTTREE_ELEMENT_ITER_METHODDEF \
{"iter", (PyCFunction)_elementtree_Element_iter, METH_VARARGS|METH_KEYWORDS, _elementtree_Element_iter__doc__},
{"iter", (PyCFunction)_elementtree_Element_iter, METH_FASTCALL, _elementtree_Element_iter__doc__},
static PyObject *
_elementtree_Element_iter_impl(ElementObject *self, PyObject *tag);
static PyObject *
_elementtree_Element_iter(ElementObject *self, PyObject *args, PyObject *kwargs)
_elementtree_Element_iter(ElementObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"tag", NULL};
static _PyArg_Parser _parser = {"|O:iter", _keywords, 0};
PyObject *tag = Py_None;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&tag)) {
goto exit;
}
......@@ -702,4 +702,4 @@ _elementtree_XMLParser__setevents(XMLParserObject *self, PyObject *args)
exit:
return return_value;
}
/*[clinic end generated code: output=4c5e94c28a009ce6 input=a9049054013a1b77]*/
/*[clinic end generated code: output=b4a571a98ced3163 input=a9049054013a1b77]*/
......@@ -12,7 +12,7 @@ PyDoc_STRVAR(_hashlib_scrypt__doc__,
"scrypt password-based key derivation function.");
#define _HASHLIB_SCRYPT_METHODDEF \
{"scrypt", (PyCFunction)_hashlib_scrypt, METH_VARARGS|METH_KEYWORDS, _hashlib_scrypt__doc__},
{"scrypt", (PyCFunction)_hashlib_scrypt, METH_FASTCALL, _hashlib_scrypt__doc__},
static PyObject *
_hashlib_scrypt_impl(PyObject *module, Py_buffer *password, Py_buffer *salt,
......@@ -20,7 +20,7 @@ _hashlib_scrypt_impl(PyObject *module, Py_buffer *password, Py_buffer *salt,
long maxmem, long dklen);
static PyObject *
_hashlib_scrypt(PyObject *module, PyObject *args, PyObject *kwargs)
_hashlib_scrypt(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"password", "salt", "n", "r", "p", "maxmem", "dklen", NULL};
......@@ -33,7 +33,7 @@ _hashlib_scrypt(PyObject *module, PyObject *args, PyObject *kwargs)
long maxmem = 0;
long dklen = 64;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&password, &salt, &PyLong_Type, &n_obj, &PyLong_Type, &r_obj, &PyLong_Type, &p_obj, &maxmem, &dklen)) {
goto exit;
}
......@@ -57,4 +57,4 @@ exit:
#ifndef _HASHLIB_SCRYPT_METHODDEF
#define _HASHLIB_SCRYPT_METHODDEF
#endif /* !defined(_HASHLIB_SCRYPT_METHODDEF) */
/*[clinic end generated code: output=8c5386789f77430a input=a9049054013a1b77]*/
/*[clinic end generated code: output=118cd7036fa0fb52 input=a9049054013a1b77]*/
......@@ -81,14 +81,14 @@ PyDoc_STRVAR(_lzma_LZMADecompressor_decompress__doc__,
"the unused_data attribute.");
#define _LZMA_LZMADECOMPRESSOR_DECOMPRESS_METHODDEF \
{"decompress", (PyCFunction)_lzma_LZMADecompressor_decompress, METH_VARARGS|METH_KEYWORDS, _lzma_LZMADecompressor_decompress__doc__},
{"decompress", (PyCFunction)_lzma_LZMADecompressor_decompress, METH_FASTCALL, _lzma_LZMADecompressor_decompress__doc__},
static PyObject *
_lzma_LZMADecompressor_decompress_impl(Decompressor *self, Py_buffer *data,
Py_ssize_t max_length);
static PyObject *
_lzma_LZMADecompressor_decompress(Decompressor *self, PyObject *args, PyObject *kwargs)
_lzma_LZMADecompressor_decompress(Decompressor *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"data", "max_length", NULL};
......@@ -96,7 +96,7 @@ _lzma_LZMADecompressor_decompress(Decompressor *self, PyObject *args, PyObject *
Py_buffer data = {NULL, NULL};
Py_ssize_t max_length = -1;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&data, &max_length)) {
goto exit;
}
......@@ -256,4 +256,4 @@ exit:
return return_value;
}
/*[clinic end generated code: output=9434583fe111c771 input=a9049054013a1b77]*/
/*[clinic end generated code: output=f27abae460122706 input=a9049054013a1b77]*/
......@@ -384,14 +384,14 @@ PyDoc_STRVAR(_pickle_dump__doc__,
"2, so that the pickle data stream is readable with Python 2.");
#define _PICKLE_DUMP_METHODDEF \
{"dump", (PyCFunction)_pickle_dump, METH_VARARGS|METH_KEYWORDS, _pickle_dump__doc__},
{"dump", (PyCFunction)_pickle_dump, METH_FASTCALL, _pickle_dump__doc__},
static PyObject *
_pickle_dump_impl(PyObject *module, PyObject *obj, PyObject *file,
PyObject *protocol, int fix_imports);
static PyObject *
_pickle_dump(PyObject *module, PyObject *args, PyObject *kwargs)
_pickle_dump(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"obj", "file", "protocol", "fix_imports", NULL};
......@@ -401,7 +401,7 @@ _pickle_dump(PyObject *module, PyObject *args, PyObject *kwargs)
PyObject *protocol = NULL;
int fix_imports = 1;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&obj, &file, &protocol, &fix_imports)) {
goto exit;
}
......@@ -430,14 +430,14 @@ PyDoc_STRVAR(_pickle_dumps__doc__,
"Python 2, so that the pickle data stream is readable with Python 2.");
#define _PICKLE_DUMPS_METHODDEF \
{"dumps", (PyCFunction)_pickle_dumps, METH_VARARGS|METH_KEYWORDS, _pickle_dumps__doc__},
{"dumps", (PyCFunction)_pickle_dumps, METH_FASTCALL, _pickle_dumps__doc__},
static PyObject *
_pickle_dumps_impl(PyObject *module, PyObject *obj, PyObject *protocol,
int fix_imports);
static PyObject *
_pickle_dumps(PyObject *module, PyObject *args, PyObject *kwargs)
_pickle_dumps(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"obj", "protocol", "fix_imports", NULL};
......@@ -446,7 +446,7 @@ _pickle_dumps(PyObject *module, PyObject *args, PyObject *kwargs)
PyObject *protocol = NULL;
int fix_imports = 1;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&obj, &protocol, &fix_imports)) {
goto exit;
}
......@@ -486,14 +486,14 @@ PyDoc_STRVAR(_pickle_load__doc__,
"string instances as bytes objects.");
#define _PICKLE_LOAD_METHODDEF \
{"load", (PyCFunction)_pickle_load, METH_VARARGS|METH_KEYWORDS, _pickle_load__doc__},
{"load", (PyCFunction)_pickle_load, METH_FASTCALL, _pickle_load__doc__},
static PyObject *
_pickle_load_impl(PyObject *module, PyObject *file, int fix_imports,
const char *encoding, const char *errors);
static PyObject *
_pickle_load(PyObject *module, PyObject *args, PyObject *kwargs)
_pickle_load(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"file", "fix_imports", "encoding", "errors", NULL};
......@@ -503,7 +503,7 @@ _pickle_load(PyObject *module, PyObject *args, PyObject *kwargs)
const char *encoding = "ASCII";
const char *errors = "strict";
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&file, &fix_imports, &encoding, &errors)) {
goto exit;
}
......@@ -534,14 +534,14 @@ PyDoc_STRVAR(_pickle_loads__doc__,
"string instances as bytes objects.");
#define _PICKLE_LOADS_METHODDEF \
{"loads", (PyCFunction)_pickle_loads, METH_VARARGS|METH_KEYWORDS, _pickle_loads__doc__},
{"loads", (PyCFunction)_pickle_loads, METH_FASTCALL, _pickle_loads__doc__},
static PyObject *
_pickle_loads_impl(PyObject *module, PyObject *data, int fix_imports,
const char *encoding, const char *errors);
static PyObject *
_pickle_loads(PyObject *module, PyObject *args, PyObject *kwargs)
_pickle_loads(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"data", "fix_imports", "encoding", "errors", NULL};
......@@ -551,7 +551,7 @@ _pickle_loads(PyObject *module, PyObject *args, PyObject *kwargs)
const char *encoding = "ASCII";
const char *errors = "strict";
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&data, &fix_imports, &encoding, &errors)) {
goto exit;
}
......@@ -560,4 +560,4 @@ _pickle_loads(PyObject *module, PyObject *args, PyObject *kwargs)
exit:
return return_value;
}
/*[clinic end generated code: output=50f9127109673c98 input=a9049054013a1b77]*/
/*[clinic end generated code: output=82be137b3c09cb9f input=a9049054013a1b77]*/
......@@ -69,7 +69,7 @@ PyDoc_STRVAR(_sre_SRE_Pattern_match__doc__,
"Matches zero or more characters at the beginning of the string.");
#define _SRE_SRE_PATTERN_MATCH_METHODDEF \
{"match", (PyCFunction)_sre_SRE_Pattern_match, METH_VARARGS|METH_KEYWORDS, _sre_SRE_Pattern_match__doc__},
{"match", (PyCFunction)_sre_SRE_Pattern_match, METH_FASTCALL, _sre_SRE_Pattern_match__doc__},
static PyObject *
_sre_SRE_Pattern_match_impl(PatternObject *self, PyObject *string,
......@@ -77,7 +77,7 @@ _sre_SRE_Pattern_match_impl(PatternObject *self, PyObject *string,
PyObject *pattern);
static PyObject *
_sre_SRE_Pattern_match(PatternObject *self, PyObject *args, PyObject *kwargs)
_sre_SRE_Pattern_match(PatternObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"string", "pos", "endpos", "pattern", NULL};
......@@ -87,7 +87,7 @@ _sre_SRE_Pattern_match(PatternObject *self, PyObject *args, PyObject *kwargs)
Py_ssize_t endpos = PY_SSIZE_T_MAX;
PyObject *pattern = NULL;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&string, &pos, &endpos, &pattern)) {
goto exit;
}
......@@ -105,7 +105,7 @@ PyDoc_STRVAR(_sre_SRE_Pattern_fullmatch__doc__,
"Matches against all of the string");
#define _SRE_SRE_PATTERN_FULLMATCH_METHODDEF \
{"fullmatch", (PyCFunction)_sre_SRE_Pattern_fullmatch, METH_VARARGS|METH_KEYWORDS, _sre_SRE_Pattern_fullmatch__doc__},
{"fullmatch", (PyCFunction)_sre_SRE_Pattern_fullmatch, METH_FASTCALL, _sre_SRE_Pattern_fullmatch__doc__},
static PyObject *
_sre_SRE_Pattern_fullmatch_impl(PatternObject *self, PyObject *string,
......@@ -113,7 +113,7 @@ _sre_SRE_Pattern_fullmatch_impl(PatternObject *self, PyObject *string,
PyObject *pattern);
static PyObject *
_sre_SRE_Pattern_fullmatch(PatternObject *self, PyObject *args, PyObject *kwargs)
_sre_SRE_Pattern_fullmatch(PatternObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"string", "pos", "endpos", "pattern", NULL};
......@@ -123,7 +123,7 @@ _sre_SRE_Pattern_fullmatch(PatternObject *self, PyObject *args, PyObject *kwargs
Py_ssize_t endpos = PY_SSIZE_T_MAX;
PyObject *pattern = NULL;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&string, &pos, &endpos, &pattern)) {
goto exit;
}
......@@ -143,7 +143,7 @@ PyDoc_STRVAR(_sre_SRE_Pattern_search__doc__,
"Return None if no position in the string matches.");
#define _SRE_SRE_PATTERN_SEARCH_METHODDEF \
{"search", (PyCFunction)_sre_SRE_Pattern_search, METH_VARARGS|METH_KEYWORDS, _sre_SRE_Pattern_search__doc__},
{"search", (PyCFunction)_sre_SRE_Pattern_search, METH_FASTCALL, _sre_SRE_Pattern_search__doc__},
static PyObject *
_sre_SRE_Pattern_search_impl(PatternObject *self, PyObject *string,
......@@ -151,7 +151,7 @@ _sre_SRE_Pattern_search_impl(PatternObject *self, PyObject *string,
PyObject *pattern);
static PyObject *
_sre_SRE_Pattern_search(PatternObject *self, PyObject *args, PyObject *kwargs)
_sre_SRE_Pattern_search(PatternObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"string", "pos", "endpos", "pattern", NULL};
......@@ -161,7 +161,7 @@ _sre_SRE_Pattern_search(PatternObject *self, PyObject *args, PyObject *kwargs)
Py_ssize_t endpos = PY_SSIZE_T_MAX;
PyObject *pattern = NULL;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&string, &pos, &endpos, &pattern)) {
goto exit;
}
......@@ -179,7 +179,7 @@ PyDoc_STRVAR(_sre_SRE_Pattern_findall__doc__,
"Return a list of all non-overlapping matches of pattern in string.");
#define _SRE_SRE_PATTERN_FINDALL_METHODDEF \
{"findall", (PyCFunction)_sre_SRE_Pattern_findall, METH_VARARGS|METH_KEYWORDS, _sre_SRE_Pattern_findall__doc__},
{"findall", (PyCFunction)_sre_SRE_Pattern_findall, METH_FASTCALL, _sre_SRE_Pattern_findall__doc__},
static PyObject *
_sre_SRE_Pattern_findall_impl(PatternObject *self, PyObject *string,
......@@ -187,7 +187,7 @@ _sre_SRE_Pattern_findall_impl(PatternObject *self, PyObject *string,
PyObject *source);
static PyObject *
_sre_SRE_Pattern_findall(PatternObject *self, PyObject *args, PyObject *kwargs)
_sre_SRE_Pattern_findall(PatternObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"string", "pos", "endpos", "source", NULL};
......@@ -197,7 +197,7 @@ _sre_SRE_Pattern_findall(PatternObject *self, PyObject *args, PyObject *kwargs)
Py_ssize_t endpos = PY_SSIZE_T_MAX;
PyObject *source = NULL;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&string, &pos, &endpos, &source)) {
goto exit;
}
......@@ -216,14 +216,14 @@ PyDoc_STRVAR(_sre_SRE_Pattern_finditer__doc__,
"For each match, the iterator returns a match object.");
#define _SRE_SRE_PATTERN_FINDITER_METHODDEF \
{"finditer", (PyCFunction)_sre_SRE_Pattern_finditer, METH_VARARGS|METH_KEYWORDS, _sre_SRE_Pattern_finditer__doc__},
{"finditer", (PyCFunction)_sre_SRE_Pattern_finditer, METH_FASTCALL, _sre_SRE_Pattern_finditer__doc__},
static PyObject *
_sre_SRE_Pattern_finditer_impl(PatternObject *self, PyObject *string,
Py_ssize_t pos, Py_ssize_t endpos);
static PyObject *
_sre_SRE_Pattern_finditer(PatternObject *self, PyObject *args, PyObject *kwargs)
_sre_SRE_Pattern_finditer(PatternObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"string", "pos", "endpos", NULL};
......@@ -232,7 +232,7 @@ _sre_SRE_Pattern_finditer(PatternObject *self, PyObject *args, PyObject *kwargs)
Py_ssize_t pos = 0;
Py_ssize_t endpos = PY_SSIZE_T_MAX;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&string, &pos, &endpos)) {
goto exit;
}
......@@ -248,14 +248,14 @@ PyDoc_STRVAR(_sre_SRE_Pattern_scanner__doc__,
"\n");
#define _SRE_SRE_PATTERN_SCANNER_METHODDEF \
{"scanner", (PyCFunction)_sre_SRE_Pattern_scanner, METH_VARARGS|METH_KEYWORDS, _sre_SRE_Pattern_scanner__doc__},
{"scanner", (PyCFunction)_sre_SRE_Pattern_scanner, METH_FASTCALL, _sre_SRE_Pattern_scanner__doc__},
static PyObject *
_sre_SRE_Pattern_scanner_impl(PatternObject *self, PyObject *string,
Py_ssize_t pos, Py_ssize_t endpos);
static PyObject *
_sre_SRE_Pattern_scanner(PatternObject *self, PyObject *args, PyObject *kwargs)
_sre_SRE_Pattern_scanner(PatternObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"string", "pos", "endpos", NULL};
......@@ -264,7 +264,7 @@ _sre_SRE_Pattern_scanner(PatternObject *self, PyObject *args, PyObject *kwargs)
Py_ssize_t pos = 0;
Py_ssize_t endpos = PY_SSIZE_T_MAX;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&string, &pos, &endpos)) {
goto exit;
}
......@@ -281,14 +281,14 @@ PyDoc_STRVAR(_sre_SRE_Pattern_split__doc__,
"Split string by the occurrences of pattern.");
#define _SRE_SRE_PATTERN_SPLIT_METHODDEF \
{"split", (PyCFunction)_sre_SRE_Pattern_split, METH_VARARGS|METH_KEYWORDS, _sre_SRE_Pattern_split__doc__},
{"split", (PyCFunction)_sre_SRE_Pattern_split, METH_FASTCALL, _sre_SRE_Pattern_split__doc__},
static PyObject *
_sre_SRE_Pattern_split_impl(PatternObject *self, PyObject *string,
Py_ssize_t maxsplit, PyObject *source);
static PyObject *
_sre_SRE_Pattern_split(PatternObject *self, PyObject *args, PyObject *kwargs)
_sre_SRE_Pattern_split(PatternObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"string", "maxsplit", "source", NULL};
......@@ -297,7 +297,7 @@ _sre_SRE_Pattern_split(PatternObject *self, PyObject *args, PyObject *kwargs)
Py_ssize_t maxsplit = 0;
PyObject *source = NULL;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&string, &maxsplit, &source)) {
goto exit;
}
......@@ -314,14 +314,14 @@ PyDoc_STRVAR(_sre_SRE_Pattern_sub__doc__,
"Return the string obtained by replacing the leftmost non-overlapping occurrences of pattern in string by the replacement repl.");
#define _SRE_SRE_PATTERN_SUB_METHODDEF \
{"sub", (PyCFunction)_sre_SRE_Pattern_sub, METH_VARARGS|METH_KEYWORDS, _sre_SRE_Pattern_sub__doc__},
{"sub", (PyCFunction)_sre_SRE_Pattern_sub, METH_FASTCALL, _sre_SRE_Pattern_sub__doc__},
static PyObject *
_sre_SRE_Pattern_sub_impl(PatternObject *self, PyObject *repl,
PyObject *string, Py_ssize_t count);
static PyObject *
_sre_SRE_Pattern_sub(PatternObject *self, PyObject *args, PyObject *kwargs)
_sre_SRE_Pattern_sub(PatternObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"repl", "string", "count", NULL};
......@@ -330,7 +330,7 @@ _sre_SRE_Pattern_sub(PatternObject *self, PyObject *args, PyObject *kwargs)
PyObject *string;
Py_ssize_t count = 0;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&repl, &string, &count)) {
goto exit;
}
......@@ -347,14 +347,14 @@ PyDoc_STRVAR(_sre_SRE_Pattern_subn__doc__,
"Return the tuple (new_string, number_of_subs_made) found by replacing the leftmost non-overlapping occurrences of pattern with the replacement repl.");
#define _SRE_SRE_PATTERN_SUBN_METHODDEF \
{"subn", (PyCFunction)_sre_SRE_Pattern_subn, METH_VARARGS|METH_KEYWORDS, _sre_SRE_Pattern_subn__doc__},
{"subn", (PyCFunction)_sre_SRE_Pattern_subn, METH_FASTCALL, _sre_SRE_Pattern_subn__doc__},
static PyObject *
_sre_SRE_Pattern_subn_impl(PatternObject *self, PyObject *repl,
PyObject *string, Py_ssize_t count);
static PyObject *
_sre_SRE_Pattern_subn(PatternObject *self, PyObject *args, PyObject *kwargs)
_sre_SRE_Pattern_subn(PatternObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"repl", "string", "count", NULL};
......@@ -363,7 +363,7 @@ _sre_SRE_Pattern_subn(PatternObject *self, PyObject *args, PyObject *kwargs)
PyObject *string;
Py_ssize_t count = 0;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&repl, &string, &count)) {
goto exit;
}
......@@ -396,20 +396,20 @@ PyDoc_STRVAR(_sre_SRE_Pattern___deepcopy____doc__,
"\n");
#define _SRE_SRE_PATTERN___DEEPCOPY___METHODDEF \
{"__deepcopy__", (PyCFunction)_sre_SRE_Pattern___deepcopy__, METH_VARARGS|METH_KEYWORDS, _sre_SRE_Pattern___deepcopy____doc__},
{"__deepcopy__", (PyCFunction)_sre_SRE_Pattern___deepcopy__, METH_FASTCALL, _sre_SRE_Pattern___deepcopy____doc__},
static PyObject *
_sre_SRE_Pattern___deepcopy___impl(PatternObject *self, PyObject *memo);
static PyObject *
_sre_SRE_Pattern___deepcopy__(PatternObject *self, PyObject *args, PyObject *kwargs)
_sre_SRE_Pattern___deepcopy__(PatternObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"memo", NULL};
static _PyArg_Parser _parser = {"O:__deepcopy__", _keywords, 0};
PyObject *memo;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&memo)) {
goto exit;
}
......@@ -426,7 +426,7 @@ PyDoc_STRVAR(_sre_compile__doc__,
"\n");
#define _SRE_COMPILE_METHODDEF \
{"compile", (PyCFunction)_sre_compile, METH_VARARGS|METH_KEYWORDS, _sre_compile__doc__},
{"compile", (PyCFunction)_sre_compile, METH_FASTCALL, _sre_compile__doc__},
static PyObject *
_sre_compile_impl(PyObject *module, PyObject *pattern, int flags,
......@@ -434,7 +434,7 @@ _sre_compile_impl(PyObject *module, PyObject *pattern, int flags,
PyObject *indexgroup);
static PyObject *
_sre_compile(PyObject *module, PyObject *args, PyObject *kwargs)
_sre_compile(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"pattern", "flags", "code", "groups", "groupindex", "indexgroup", NULL};
......@@ -446,7 +446,7 @@ _sre_compile(PyObject *module, PyObject *args, PyObject *kwargs)
PyObject *groupindex;
PyObject *indexgroup;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&pattern, &flags, &PyList_Type, &code, &groups, &groupindex, &indexgroup)) {
goto exit;
}
......@@ -463,20 +463,20 @@ PyDoc_STRVAR(_sre_SRE_Match_expand__doc__,
"Return the string obtained by doing backslash substitution on the string template, as done by the sub() method.");
#define _SRE_SRE_MATCH_EXPAND_METHODDEF \
{"expand", (PyCFunction)_sre_SRE_Match_expand, METH_VARARGS|METH_KEYWORDS, _sre_SRE_Match_expand__doc__},
{"expand", (PyCFunction)_sre_SRE_Match_expand, METH_FASTCALL, _sre_SRE_Match_expand__doc__},
static PyObject *
_sre_SRE_Match_expand_impl(MatchObject *self, PyObject *template);
static PyObject *
_sre_SRE_Match_expand(MatchObject *self, PyObject *args, PyObject *kwargs)
_sre_SRE_Match_expand(MatchObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"template", NULL};
static _PyArg_Parser _parser = {"O:expand", _keywords, 0};
PyObject *template;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&template)) {
goto exit;
}
......@@ -496,20 +496,20 @@ PyDoc_STRVAR(_sre_SRE_Match_groups__doc__,
" Is used for groups that did not participate in the match.");
#define _SRE_SRE_MATCH_GROUPS_METHODDEF \
{"groups", (PyCFunction)_sre_SRE_Match_groups, METH_VARARGS|METH_KEYWORDS, _sre_SRE_Match_groups__doc__},
{"groups", (PyCFunction)_sre_SRE_Match_groups, METH_FASTCALL, _sre_SRE_Match_groups__doc__},
static PyObject *
_sre_SRE_Match_groups_impl(MatchObject *self, PyObject *default_value);
static PyObject *
_sre_SRE_Match_groups(MatchObject *self, PyObject *args, PyObject *kwargs)
_sre_SRE_Match_groups(MatchObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"default", NULL};
static _PyArg_Parser _parser = {"|O:groups", _keywords, 0};
PyObject *default_value = Py_None;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&default_value)) {
goto exit;
}
......@@ -529,20 +529,20 @@ PyDoc_STRVAR(_sre_SRE_Match_groupdict__doc__,
" Is used for groups that did not participate in the match.");
#define _SRE_SRE_MATCH_GROUPDICT_METHODDEF \
{"groupdict", (PyCFunction)_sre_SRE_Match_groupdict, METH_VARARGS|METH_KEYWORDS, _sre_SRE_Match_groupdict__doc__},
{"groupdict", (PyCFunction)_sre_SRE_Match_groupdict, METH_FASTCALL, _sre_SRE_Match_groupdict__doc__},
static PyObject *
_sre_SRE_Match_groupdict_impl(MatchObject *self, PyObject *default_value);
static PyObject *
_sre_SRE_Match_groupdict(MatchObject *self, PyObject *args, PyObject *kwargs)
_sre_SRE_Match_groupdict(MatchObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"default", NULL};
static _PyArg_Parser _parser = {"|O:groupdict", _keywords, 0};
PyObject *default_value = Py_None;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&default_value)) {
goto exit;
}
......@@ -672,20 +672,20 @@ PyDoc_STRVAR(_sre_SRE_Match___deepcopy____doc__,
"\n");
#define _SRE_SRE_MATCH___DEEPCOPY___METHODDEF \
{"__deepcopy__", (PyCFunction)_sre_SRE_Match___deepcopy__, METH_VARARGS|METH_KEYWORDS, _sre_SRE_Match___deepcopy____doc__},
{"__deepcopy__", (PyCFunction)_sre_SRE_Match___deepcopy__, METH_FASTCALL, _sre_SRE_Match___deepcopy____doc__},
static PyObject *
_sre_SRE_Match___deepcopy___impl(MatchObject *self, PyObject *memo);
static PyObject *
_sre_SRE_Match___deepcopy__(MatchObject *self, PyObject *args, PyObject *kwargs)
_sre_SRE_Match___deepcopy__(MatchObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"memo", NULL};
static _PyArg_Parser _parser = {"O:__deepcopy__", _keywords, 0};
PyObject *memo;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&memo)) {
goto exit;
}
......@@ -728,4 +728,4 @@ _sre_SRE_Scanner_search(ScannerObject *self, PyObject *Py_UNUSED(ignored))
{
return _sre_SRE_Scanner_search_impl(self);
}
/*[clinic end generated code: output=2cbc2b1482738e54 input=a9049054013a1b77]*/
/*[clinic end generated code: output=a4a246bca1963bc9 input=a9049054013a1b77]*/
......@@ -469,14 +469,14 @@ PyDoc_STRVAR(_ssl__SSLContext_load_cert_chain__doc__,
"\n");
#define _SSL__SSLCONTEXT_LOAD_CERT_CHAIN_METHODDEF \
{"load_cert_chain", (PyCFunction)_ssl__SSLContext_load_cert_chain, METH_VARARGS|METH_KEYWORDS, _ssl__SSLContext_load_cert_chain__doc__},
{"load_cert_chain", (PyCFunction)_ssl__SSLContext_load_cert_chain, METH_FASTCALL, _ssl__SSLContext_load_cert_chain__doc__},
static PyObject *
_ssl__SSLContext_load_cert_chain_impl(PySSLContext *self, PyObject *certfile,
PyObject *keyfile, PyObject *password);
static PyObject *
_ssl__SSLContext_load_cert_chain(PySSLContext *self, PyObject *args, PyObject *kwargs)
_ssl__SSLContext_load_cert_chain(PySSLContext *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"certfile", "keyfile", "password", NULL};
......@@ -485,7 +485,7 @@ _ssl__SSLContext_load_cert_chain(PySSLContext *self, PyObject *args, PyObject *k
PyObject *keyfile = NULL;
PyObject *password = NULL;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&certfile, &keyfile, &password)) {
goto exit;
}
......@@ -501,7 +501,7 @@ PyDoc_STRVAR(_ssl__SSLContext_load_verify_locations__doc__,
"\n");
#define _SSL__SSLCONTEXT_LOAD_VERIFY_LOCATIONS_METHODDEF \
{"load_verify_locations", (PyCFunction)_ssl__SSLContext_load_verify_locations, METH_VARARGS|METH_KEYWORDS, _ssl__SSLContext_load_verify_locations__doc__},
{"load_verify_locations", (PyCFunction)_ssl__SSLContext_load_verify_locations, METH_FASTCALL, _ssl__SSLContext_load_verify_locations__doc__},
static PyObject *
_ssl__SSLContext_load_verify_locations_impl(PySSLContext *self,
......@@ -510,7 +510,7 @@ _ssl__SSLContext_load_verify_locations_impl(PySSLContext *self,
PyObject *cadata);
static PyObject *
_ssl__SSLContext_load_verify_locations(PySSLContext *self, PyObject *args, PyObject *kwargs)
_ssl__SSLContext_load_verify_locations(PySSLContext *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"cafile", "capath", "cadata", NULL};
......@@ -519,7 +519,7 @@ _ssl__SSLContext_load_verify_locations(PySSLContext *self, PyObject *args, PyObj
PyObject *capath = NULL;
PyObject *cadata = NULL;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&cafile, &capath, &cadata)) {
goto exit;
}
......@@ -543,14 +543,14 @@ PyDoc_STRVAR(_ssl__SSLContext__wrap_socket__doc__,
"\n");
#define _SSL__SSLCONTEXT__WRAP_SOCKET_METHODDEF \
{"_wrap_socket", (PyCFunction)_ssl__SSLContext__wrap_socket, METH_VARARGS|METH_KEYWORDS, _ssl__SSLContext__wrap_socket__doc__},
{"_wrap_socket", (PyCFunction)_ssl__SSLContext__wrap_socket, METH_FASTCALL, _ssl__SSLContext__wrap_socket__doc__},
static PyObject *
_ssl__SSLContext__wrap_socket_impl(PySSLContext *self, PyObject *sock,
int server_side, PyObject *hostname_obj);
static PyObject *
_ssl__SSLContext__wrap_socket(PySSLContext *self, PyObject *args, PyObject *kwargs)
_ssl__SSLContext__wrap_socket(PySSLContext *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"sock", "server_side", "server_hostname", NULL};
......@@ -559,7 +559,7 @@ _ssl__SSLContext__wrap_socket(PySSLContext *self, PyObject *args, PyObject *kwar
int server_side;
PyObject *hostname_obj = Py_None;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
PySocketModule.Sock_Type, &sock, &server_side, &hostname_obj)) {
goto exit;
}
......@@ -576,7 +576,7 @@ PyDoc_STRVAR(_ssl__SSLContext__wrap_bio__doc__,
"\n");
#define _SSL__SSLCONTEXT__WRAP_BIO_METHODDEF \
{"_wrap_bio", (PyCFunction)_ssl__SSLContext__wrap_bio, METH_VARARGS|METH_KEYWORDS, _ssl__SSLContext__wrap_bio__doc__},
{"_wrap_bio", (PyCFunction)_ssl__SSLContext__wrap_bio, METH_FASTCALL, _ssl__SSLContext__wrap_bio__doc__},
static PyObject *
_ssl__SSLContext__wrap_bio_impl(PySSLContext *self, PySSLMemoryBIO *incoming,
......@@ -584,7 +584,7 @@ _ssl__SSLContext__wrap_bio_impl(PySSLContext *self, PySSLMemoryBIO *incoming,
PyObject *hostname_obj);
static PyObject *
_ssl__SSLContext__wrap_bio(PySSLContext *self, PyObject *args, PyObject *kwargs)
_ssl__SSLContext__wrap_bio(PySSLContext *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"incoming", "outgoing", "server_side", "server_hostname", NULL};
......@@ -594,7 +594,7 @@ _ssl__SSLContext__wrap_bio(PySSLContext *self, PyObject *args, PyObject *kwargs)
int server_side;
PyObject *hostname_obj = Py_None;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&PySSLMemoryBIO_Type, &incoming, &PySSLMemoryBIO_Type, &outgoing, &server_side, &hostname_obj)) {
goto exit;
}
......@@ -700,20 +700,20 @@ PyDoc_STRVAR(_ssl__SSLContext_get_ca_certs__doc__,
"been used at least once.");
#define _SSL__SSLCONTEXT_GET_CA_CERTS_METHODDEF \
{"get_ca_certs", (PyCFunction)_ssl__SSLContext_get_ca_certs, METH_VARARGS|METH_KEYWORDS, _ssl__SSLContext_get_ca_certs__doc__},
{"get_ca_certs", (PyCFunction)_ssl__SSLContext_get_ca_certs, METH_FASTCALL, _ssl__SSLContext_get_ca_certs__doc__},
static PyObject *
_ssl__SSLContext_get_ca_certs_impl(PySSLContext *self, int binary_form);
static PyObject *
_ssl__SSLContext_get_ca_certs(PySSLContext *self, PyObject *args, PyObject *kwargs)
_ssl__SSLContext_get_ca_certs(PySSLContext *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"binary_form", NULL};
static _PyArg_Parser _parser = {"|p:get_ca_certs", _keywords, 0};
int binary_form = 0;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&binary_form)) {
goto exit;
}
......@@ -1011,13 +1011,13 @@ PyDoc_STRVAR(_ssl_txt2obj__doc__,
"long name are also matched.");
#define _SSL_TXT2OBJ_METHODDEF \
{"txt2obj", (PyCFunction)_ssl_txt2obj, METH_VARARGS|METH_KEYWORDS, _ssl_txt2obj__doc__},
{"txt2obj", (PyCFunction)_ssl_txt2obj, METH_FASTCALL, _ssl_txt2obj__doc__},
static PyObject *
_ssl_txt2obj_impl(PyObject *module, const char *txt, int name);
static PyObject *
_ssl_txt2obj(PyObject *module, PyObject *args, PyObject *kwargs)
_ssl_txt2obj(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"txt", "name", NULL};
......@@ -1025,7 +1025,7 @@ _ssl_txt2obj(PyObject *module, PyObject *args, PyObject *kwargs)
const char *txt;
int name = 0;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&txt, &name)) {
goto exit;
}
......@@ -1077,20 +1077,20 @@ PyDoc_STRVAR(_ssl_enum_certificates__doc__,
"a set of OIDs or the boolean True.");
#define _SSL_ENUM_CERTIFICATES_METHODDEF \
{"enum_certificates", (PyCFunction)_ssl_enum_certificates, METH_VARARGS|METH_KEYWORDS, _ssl_enum_certificates__doc__},
{"enum_certificates", (PyCFunction)_ssl_enum_certificates, METH_FASTCALL, _ssl_enum_certificates__doc__},
static PyObject *
_ssl_enum_certificates_impl(PyObject *module, const char *store_name);
static PyObject *
_ssl_enum_certificates(PyObject *module, PyObject *args, PyObject *kwargs)
_ssl_enum_certificates(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"store_name", NULL};
static _PyArg_Parser _parser = {"s:enum_certificates", _keywords, 0};
const char *store_name;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&store_name)) {
goto exit;
}
......@@ -1116,20 +1116,20 @@ PyDoc_STRVAR(_ssl_enum_crls__doc__,
"X509_ASN_ENCODING or PKCS_7_ASN_ENCODING.");
#define _SSL_ENUM_CRLS_METHODDEF \
{"enum_crls", (PyCFunction)_ssl_enum_crls, METH_VARARGS|METH_KEYWORDS, _ssl_enum_crls__doc__},
{"enum_crls", (PyCFunction)_ssl_enum_crls, METH_FASTCALL, _ssl_enum_crls__doc__},
static PyObject *
_ssl_enum_crls_impl(PyObject *module, const char *store_name);
static PyObject *
_ssl_enum_crls(PyObject *module, PyObject *args, PyObject *kwargs)
_ssl_enum_crls(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"store_name", NULL};
static _PyArg_Parser _parser = {"s:enum_crls", _keywords, 0};
const char *store_name;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&store_name)) {
goto exit;
}
......@@ -1168,4 +1168,4 @@ exit:
#ifndef _SSL_ENUM_CRLS_METHODDEF
#define _SSL_ENUM_CRLS_METHODDEF
#endif /* !defined(_SSL_ENUM_CRLS_METHODDEF) */
/*[clinic end generated code: output=2e7907a7d8f97ccf input=a9049054013a1b77]*/
/*[clinic end generated code: output=a859b21fe68a6115 input=a9049054013a1b77]*/
......@@ -95,14 +95,14 @@ PyDoc_STRVAR(_winapi_ConnectNamedPipe__doc__,
"\n");
#define _WINAPI_CONNECTNAMEDPIPE_METHODDEF \
{"ConnectNamedPipe", (PyCFunction)_winapi_ConnectNamedPipe, METH_VARARGS|METH_KEYWORDS, _winapi_ConnectNamedPipe__doc__},
{"ConnectNamedPipe", (PyCFunction)_winapi_ConnectNamedPipe, METH_FASTCALL, _winapi_ConnectNamedPipe__doc__},
static PyObject *
_winapi_ConnectNamedPipe_impl(PyObject *module, HANDLE handle,
int use_overlapped);
static PyObject *
_winapi_ConnectNamedPipe(PyObject *module, PyObject *args, PyObject *kwargs)
_winapi_ConnectNamedPipe(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"handle", "overlapped", NULL};
......@@ -110,7 +110,7 @@ _winapi_ConnectNamedPipe(PyObject *module, PyObject *args, PyObject *kwargs)
HANDLE handle;
int use_overlapped = 0;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&handle, &use_overlapped)) {
goto exit;
}
......@@ -670,14 +670,14 @@ PyDoc_STRVAR(_winapi_ReadFile__doc__,
"\n");
#define _WINAPI_READFILE_METHODDEF \
{"ReadFile", (PyCFunction)_winapi_ReadFile, METH_VARARGS|METH_KEYWORDS, _winapi_ReadFile__doc__},
{"ReadFile", (PyCFunction)_winapi_ReadFile, METH_FASTCALL, _winapi_ReadFile__doc__},
static PyObject *
_winapi_ReadFile_impl(PyObject *module, HANDLE handle, int size,
int use_overlapped);
static PyObject *
_winapi_ReadFile(PyObject *module, PyObject *args, PyObject *kwargs)
_winapi_ReadFile(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"handle", "size", "overlapped", NULL};
......@@ -686,7 +686,7 @@ _winapi_ReadFile(PyObject *module, PyObject *args, PyObject *kwargs)
int size;
int use_overlapped = 0;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&handle, &size, &use_overlapped)) {
goto exit;
}
......@@ -864,14 +864,14 @@ PyDoc_STRVAR(_winapi_WriteFile__doc__,
"\n");
#define _WINAPI_WRITEFILE_METHODDEF \
{"WriteFile", (PyCFunction)_winapi_WriteFile, METH_VARARGS|METH_KEYWORDS, _winapi_WriteFile__doc__},
{"WriteFile", (PyCFunction)_winapi_WriteFile, METH_FASTCALL, _winapi_WriteFile__doc__},
static PyObject *
_winapi_WriteFile_impl(PyObject *module, HANDLE handle, PyObject *buffer,
int use_overlapped);
static PyObject *
_winapi_WriteFile(PyObject *module, PyObject *args, PyObject *kwargs)
_winapi_WriteFile(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"handle", "buffer", "overlapped", NULL};
......@@ -880,7 +880,7 @@ _winapi_WriteFile(PyObject *module, PyObject *args, PyObject *kwargs)
PyObject *buffer;
int use_overlapped = 0;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&handle, &buffer, &use_overlapped)) {
goto exit;
}
......@@ -889,4 +889,4 @@ _winapi_WriteFile(PyObject *module, PyObject *args, PyObject *kwargs)
exit:
return return_value;
}
/*[clinic end generated code: output=4bfccfb32ab726e8 input=a9049054013a1b77]*/
/*[clinic end generated code: output=46d6382a6662c4a9 input=a9049054013a1b77]*/
......@@ -103,13 +103,13 @@ PyDoc_STRVAR(binascii_b2a_base64__doc__,
"Base64-code line of data.");
#define BINASCII_B2A_BASE64_METHODDEF \
{"b2a_base64", (PyCFunction)binascii_b2a_base64, METH_VARARGS|METH_KEYWORDS, binascii_b2a_base64__doc__},
{"b2a_base64", (PyCFunction)binascii_b2a_base64, METH_FASTCALL, binascii_b2a_base64__doc__},
static PyObject *
binascii_b2a_base64_impl(PyObject *module, Py_buffer *data, int newline);
static PyObject *
binascii_b2a_base64(PyObject *module, PyObject *args, PyObject *kwargs)
binascii_b2a_base64(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"data", "newline", NULL};
......@@ -117,7 +117,7 @@ binascii_b2a_base64(PyObject *module, PyObject *args, PyObject *kwargs)
Py_buffer data = {NULL, NULL};
int newline = 1;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&data, &newline)) {
goto exit;
}
......@@ -480,13 +480,13 @@ PyDoc_STRVAR(binascii_a2b_qp__doc__,
"Decode a string of qp-encoded data.");
#define BINASCII_A2B_QP_METHODDEF \
{"a2b_qp", (PyCFunction)binascii_a2b_qp, METH_VARARGS|METH_KEYWORDS, binascii_a2b_qp__doc__},
{"a2b_qp", (PyCFunction)binascii_a2b_qp, METH_FASTCALL, binascii_a2b_qp__doc__},
static PyObject *
binascii_a2b_qp_impl(PyObject *module, Py_buffer *data, int header);
static PyObject *
binascii_a2b_qp(PyObject *module, PyObject *args, PyObject *kwargs)
binascii_a2b_qp(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"data", "header", NULL};
......@@ -494,7 +494,7 @@ binascii_a2b_qp(PyObject *module, PyObject *args, PyObject *kwargs)
Py_buffer data = {NULL, NULL};
int header = 0;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
ascii_buffer_converter, &data, &header)) {
goto exit;
}
......@@ -519,14 +519,14 @@ PyDoc_STRVAR(binascii_b2a_qp__doc__,
"are both encoded. When quotetabs is set, space and tabs are encoded.");
#define BINASCII_B2A_QP_METHODDEF \
{"b2a_qp", (PyCFunction)binascii_b2a_qp, METH_VARARGS|METH_KEYWORDS, binascii_b2a_qp__doc__},
{"b2a_qp", (PyCFunction)binascii_b2a_qp, METH_FASTCALL, binascii_b2a_qp__doc__},
static PyObject *
binascii_b2a_qp_impl(PyObject *module, Py_buffer *data, int quotetabs,
int istext, int header);
static PyObject *
binascii_b2a_qp(PyObject *module, PyObject *args, PyObject *kwargs)
binascii_b2a_qp(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"data", "quotetabs", "istext", "header", NULL};
......@@ -536,7 +536,7 @@ binascii_b2a_qp(PyObject *module, PyObject *args, PyObject *kwargs)
int istext = 1;
int header = 0;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&data, &quotetabs, &istext, &header)) {
goto exit;
}
......@@ -550,4 +550,4 @@ exit:
return return_value;
}
/*[clinic end generated code: output=12611b05d8bf4a9c input=a9049054013a1b77]*/
/*[clinic end generated code: output=1f8d6e48f75f6d1e input=a9049054013a1b77]*/
......@@ -851,14 +851,14 @@ PyDoc_STRVAR(cmath_isclose__doc__,
"not close to anything, even itself. inf and -inf are only close to themselves.");
#define CMATH_ISCLOSE_METHODDEF \
{"isclose", (PyCFunction)cmath_isclose, METH_VARARGS|METH_KEYWORDS, cmath_isclose__doc__},
{"isclose", (PyCFunction)cmath_isclose, METH_FASTCALL, cmath_isclose__doc__},
static int
cmath_isclose_impl(PyObject *module, Py_complex a, Py_complex b,
double rel_tol, double abs_tol);
static PyObject *
cmath_isclose(PyObject *module, PyObject *args, PyObject *kwargs)
cmath_isclose(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"a", "b", "rel_tol", "abs_tol", NULL};
......@@ -869,7 +869,7 @@ cmath_isclose(PyObject *module, PyObject *args, PyObject *kwargs)
double abs_tol = 0.0;
int _return_value;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&a, &b, &rel_tol, &abs_tol)) {
goto exit;
}
......@@ -882,4 +882,4 @@ cmath_isclose(PyObject *module, PyObject *args, PyObject *kwargs)
exit:
return return_value;
}
/*[clinic end generated code: output=aa2e77ca9fc26928 input=a9049054013a1b77]*/
/*[clinic end generated code: output=978f59702b41655f input=a9049054013a1b77]*/
......@@ -11,20 +11,20 @@ PyDoc_STRVAR(grp_getgrgid__doc__,
"If id is not valid, raise KeyError.");
#define GRP_GETGRGID_METHODDEF \
{"getgrgid", (PyCFunction)grp_getgrgid, METH_VARARGS|METH_KEYWORDS, grp_getgrgid__doc__},
{"getgrgid", (PyCFunction)grp_getgrgid, METH_FASTCALL, grp_getgrgid__doc__},
static PyObject *
grp_getgrgid_impl(PyObject *module, PyObject *id);
static PyObject *
grp_getgrgid(PyObject *module, PyObject *args, PyObject *kwargs)
grp_getgrgid(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"id", NULL};
static _PyArg_Parser _parser = {"O:getgrgid", _keywords, 0};
PyObject *id;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&id)) {
goto exit;
}
......@@ -43,20 +43,20 @@ PyDoc_STRVAR(grp_getgrnam__doc__,
"If name is not valid, raise KeyError.");
#define GRP_GETGRNAM_METHODDEF \
{"getgrnam", (PyCFunction)grp_getgrnam, METH_VARARGS|METH_KEYWORDS, grp_getgrnam__doc__},
{"getgrnam", (PyCFunction)grp_getgrnam, METH_FASTCALL, grp_getgrnam__doc__},
static PyObject *
grp_getgrnam_impl(PyObject *module, PyObject *name);
static PyObject *
grp_getgrnam(PyObject *module, PyObject *args, PyObject *kwargs)
grp_getgrnam(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"name", NULL};
static _PyArg_Parser _parser = {"U:getgrnam", _keywords, 0};
PyObject *name;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&name)) {
goto exit;
}
......@@ -86,4 +86,4 @@ grp_getgrall(PyObject *module, PyObject *Py_UNUSED(ignored))
{
return grp_getgrall_impl(module);
}
/*[clinic end generated code: output=c06081097b7fffe7 input=a9049054013a1b77]*/
/*[clinic end generated code: output=d6417ae0a7298e0e input=a9049054013a1b77]*/
......@@ -72,20 +72,20 @@ PyDoc_STRVAR(_md5_md5__doc__,
"Return a new MD5 hash object; optionally initialized with a string.");
#define _MD5_MD5_METHODDEF \
{"md5", (PyCFunction)_md5_md5, METH_VARARGS|METH_KEYWORDS, _md5_md5__doc__},
{"md5", (PyCFunction)_md5_md5, METH_FASTCALL, _md5_md5__doc__},
static PyObject *
_md5_md5_impl(PyObject *module, PyObject *string);
static PyObject *
_md5_md5(PyObject *module, PyObject *args, PyObject *kwargs)
_md5_md5(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"string", NULL};
static _PyArg_Parser _parser = {"|O:md5", _keywords, 0};
PyObject *string = NULL;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&string)) {
goto exit;
}
......@@ -94,4 +94,4 @@ _md5_md5(PyObject *module, PyObject *args, PyObject *kwargs)
exit:
return return_value;
}
/*[clinic end generated code: output=f86fc2f3f21831e2 input=a9049054013a1b77]*/
/*[clinic end generated code: output=54cd50db050f2589 input=a9049054013a1b77]*/
......@@ -27,13 +27,13 @@ PyDoc_STRVAR(os_stat__doc__,
" an open file descriptor.");
#define OS_STAT_METHODDEF \
{"stat", (PyCFunction)os_stat, METH_VARARGS|METH_KEYWORDS, os_stat__doc__},
{"stat", (PyCFunction)os_stat, METH_FASTCALL, os_stat__doc__},
static PyObject *
os_stat_impl(PyObject *module, path_t *path, int dir_fd, int follow_symlinks);
static PyObject *
os_stat(PyObject *module, PyObject *args, PyObject *kwargs)
os_stat(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "dir_fd", "follow_symlinks", NULL};
......@@ -42,7 +42,7 @@ os_stat(PyObject *module, PyObject *args, PyObject *kwargs)
int dir_fd = DEFAULT_DIR_FD;
int follow_symlinks = 1;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, FSTATAT_DIR_FD_CONVERTER, &dir_fd, &follow_symlinks)) {
goto exit;
}
......@@ -65,13 +65,13 @@ PyDoc_STRVAR(os_lstat__doc__,
"Equivalent to stat(path, follow_symlinks=False).");
#define OS_LSTAT_METHODDEF \
{"lstat", (PyCFunction)os_lstat, METH_VARARGS|METH_KEYWORDS, os_lstat__doc__},
{"lstat", (PyCFunction)os_lstat, METH_FASTCALL, os_lstat__doc__},
static PyObject *
os_lstat_impl(PyObject *module, path_t *path, int dir_fd);
static PyObject *
os_lstat(PyObject *module, PyObject *args, PyObject *kwargs)
os_lstat(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "dir_fd", NULL};
......@@ -79,7 +79,7 @@ os_lstat(PyObject *module, PyObject *args, PyObject *kwargs)
path_t path = PATH_T_INITIALIZE("lstat", "path", 0, 0);
int dir_fd = DEFAULT_DIR_FD;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, FSTATAT_DIR_FD_CONVERTER, &dir_fd)) {
goto exit;
}
......@@ -125,14 +125,14 @@ PyDoc_STRVAR(os_access__doc__,
" has the specified access to the path.");
#define OS_ACCESS_METHODDEF \
{"access", (PyCFunction)os_access, METH_VARARGS|METH_KEYWORDS, os_access__doc__},
{"access", (PyCFunction)os_access, METH_FASTCALL, os_access__doc__},
static int
os_access_impl(PyObject *module, path_t *path, int mode, int dir_fd,
int effective_ids, int follow_symlinks);
static PyObject *
os_access(PyObject *module, PyObject *args, PyObject *kwargs)
os_access(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "mode", "dir_fd", "effective_ids", "follow_symlinks", NULL};
......@@ -144,7 +144,7 @@ os_access(PyObject *module, PyObject *args, PyObject *kwargs)
int follow_symlinks = 1;
int _return_value;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, &mode, FACCESSAT_DIR_FD_CONVERTER, &dir_fd, &effective_ids, &follow_symlinks)) {
goto exit;
}
......@@ -233,20 +233,20 @@ PyDoc_STRVAR(os_chdir__doc__,
" If this functionality is unavailable, using it raises an exception.");
#define OS_CHDIR_METHODDEF \
{"chdir", (PyCFunction)os_chdir, METH_VARARGS|METH_KEYWORDS, os_chdir__doc__},
{"chdir", (PyCFunction)os_chdir, METH_FASTCALL, os_chdir__doc__},
static PyObject *
os_chdir_impl(PyObject *module, path_t *path);
static PyObject *
os_chdir(PyObject *module, PyObject *args, PyObject *kwargs)
os_chdir(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", NULL};
static _PyArg_Parser _parser = {"O&:chdir", _keywords, 0};
path_t path = PATH_T_INITIALIZE("chdir", "path", 0, PATH_HAVE_FCHDIR);
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path)) {
goto exit;
}
......@@ -271,20 +271,20 @@ PyDoc_STRVAR(os_fchdir__doc__,
"Equivalent to os.chdir(fd).");
#define OS_FCHDIR_METHODDEF \
{"fchdir", (PyCFunction)os_fchdir, METH_VARARGS|METH_KEYWORDS, os_fchdir__doc__},
{"fchdir", (PyCFunction)os_fchdir, METH_FASTCALL, os_fchdir__doc__},
static PyObject *
os_fchdir_impl(PyObject *module, int fd);
static PyObject *
os_fchdir(PyObject *module, PyObject *args, PyObject *kwargs)
os_fchdir(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"fd", NULL};
static _PyArg_Parser _parser = {"O&:fchdir", _keywords, 0};
int fd;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
fildes_converter, &fd)) {
goto exit;
}
......@@ -323,14 +323,14 @@ PyDoc_STRVAR(os_chmod__doc__,
" If they are unavailable, using them will raise a NotImplementedError.");
#define OS_CHMOD_METHODDEF \
{"chmod", (PyCFunction)os_chmod, METH_VARARGS|METH_KEYWORDS, os_chmod__doc__},
{"chmod", (PyCFunction)os_chmod, METH_FASTCALL, os_chmod__doc__},
static PyObject *
os_chmod_impl(PyObject *module, path_t *path, int mode, int dir_fd,
int follow_symlinks);
static PyObject *
os_chmod(PyObject *module, PyObject *args, PyObject *kwargs)
os_chmod(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "mode", "dir_fd", "follow_symlinks", NULL};
......@@ -340,7 +340,7 @@ os_chmod(PyObject *module, PyObject *args, PyObject *kwargs)
int dir_fd = DEFAULT_DIR_FD;
int follow_symlinks = 1;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, &mode, FCHMODAT_DIR_FD_CONVERTER, &dir_fd, &follow_symlinks)) {
goto exit;
}
......@@ -364,13 +364,13 @@ PyDoc_STRVAR(os_fchmod__doc__,
"Equivalent to os.chmod(fd, mode).");
#define OS_FCHMOD_METHODDEF \
{"fchmod", (PyCFunction)os_fchmod, METH_VARARGS|METH_KEYWORDS, os_fchmod__doc__},
{"fchmod", (PyCFunction)os_fchmod, METH_FASTCALL, os_fchmod__doc__},
static PyObject *
os_fchmod_impl(PyObject *module, int fd, int mode);
static PyObject *
os_fchmod(PyObject *module, PyObject *args, PyObject *kwargs)
os_fchmod(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"fd", "mode", NULL};
......@@ -378,7 +378,7 @@ os_fchmod(PyObject *module, PyObject *args, PyObject *kwargs)
int fd;
int mode;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&fd, &mode)) {
goto exit;
}
......@@ -402,13 +402,13 @@ PyDoc_STRVAR(os_lchmod__doc__,
"Equivalent to chmod(path, mode, follow_symlinks=False).\"");
#define OS_LCHMOD_METHODDEF \
{"lchmod", (PyCFunction)os_lchmod, METH_VARARGS|METH_KEYWORDS, os_lchmod__doc__},
{"lchmod", (PyCFunction)os_lchmod, METH_FASTCALL, os_lchmod__doc__},
static PyObject *
os_lchmod_impl(PyObject *module, path_t *path, int mode);
static PyObject *
os_lchmod(PyObject *module, PyObject *args, PyObject *kwargs)
os_lchmod(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "mode", NULL};
......@@ -416,7 +416,7 @@ os_lchmod(PyObject *module, PyObject *args, PyObject *kwargs)
path_t path = PATH_T_INITIALIZE("lchmod", "path", 0, 0);
int mode;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, &mode)) {
goto exit;
}
......@@ -446,14 +446,14 @@ PyDoc_STRVAR(os_chflags__doc__,
"unavailable, using it will raise a NotImplementedError.");
#define OS_CHFLAGS_METHODDEF \
{"chflags", (PyCFunction)os_chflags, METH_VARARGS|METH_KEYWORDS, os_chflags__doc__},
{"chflags", (PyCFunction)os_chflags, METH_FASTCALL, os_chflags__doc__},
static PyObject *
os_chflags_impl(PyObject *module, path_t *path, unsigned long flags,
int follow_symlinks);
static PyObject *
os_chflags(PyObject *module, PyObject *args, PyObject *kwargs)
os_chflags(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "flags", "follow_symlinks", NULL};
......@@ -462,7 +462,7 @@ os_chflags(PyObject *module, PyObject *args, PyObject *kwargs)
unsigned long flags;
int follow_symlinks = 1;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, &flags, &follow_symlinks)) {
goto exit;
}
......@@ -489,13 +489,13 @@ PyDoc_STRVAR(os_lchflags__doc__,
"Equivalent to chflags(path, flags, follow_symlinks=False).");
#define OS_LCHFLAGS_METHODDEF \
{"lchflags", (PyCFunction)os_lchflags, METH_VARARGS|METH_KEYWORDS, os_lchflags__doc__},
{"lchflags", (PyCFunction)os_lchflags, METH_FASTCALL, os_lchflags__doc__},
static PyObject *
os_lchflags_impl(PyObject *module, path_t *path, unsigned long flags);
static PyObject *
os_lchflags(PyObject *module, PyObject *args, PyObject *kwargs)
os_lchflags(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "flags", NULL};
......@@ -503,7 +503,7 @@ os_lchflags(PyObject *module, PyObject *args, PyObject *kwargs)
path_t path = PATH_T_INITIALIZE("lchflags", "path", 0, 0);
unsigned long flags;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, &flags)) {
goto exit;
}
......@@ -527,20 +527,20 @@ PyDoc_STRVAR(os_chroot__doc__,
"Change root directory to path.");
#define OS_CHROOT_METHODDEF \
{"chroot", (PyCFunction)os_chroot, METH_VARARGS|METH_KEYWORDS, os_chroot__doc__},
{"chroot", (PyCFunction)os_chroot, METH_FASTCALL, os_chroot__doc__},
static PyObject *
os_chroot_impl(PyObject *module, path_t *path);
static PyObject *
os_chroot(PyObject *module, PyObject *args, PyObject *kwargs)
os_chroot(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", NULL};
static _PyArg_Parser _parser = {"O&:chroot", _keywords, 0};
path_t path = PATH_T_INITIALIZE("chroot", "path", 0, 0);
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path)) {
goto exit;
}
......@@ -564,20 +564,20 @@ PyDoc_STRVAR(os_fsync__doc__,
"Force write of fd to disk.");
#define OS_FSYNC_METHODDEF \
{"fsync", (PyCFunction)os_fsync, METH_VARARGS|METH_KEYWORDS, os_fsync__doc__},
{"fsync", (PyCFunction)os_fsync, METH_FASTCALL, os_fsync__doc__},
static PyObject *
os_fsync_impl(PyObject *module, int fd);
static PyObject *
os_fsync(PyObject *module, PyObject *args, PyObject *kwargs)
os_fsync(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"fd", NULL};
static _PyArg_Parser _parser = {"O&:fsync", _keywords, 0};
int fd;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
fildes_converter, &fd)) {
goto exit;
}
......@@ -620,20 +620,20 @@ PyDoc_STRVAR(os_fdatasync__doc__,
"Force write of fd to disk without forcing update of metadata.");
#define OS_FDATASYNC_METHODDEF \
{"fdatasync", (PyCFunction)os_fdatasync, METH_VARARGS|METH_KEYWORDS, os_fdatasync__doc__},
{"fdatasync", (PyCFunction)os_fdatasync, METH_FASTCALL, os_fdatasync__doc__},
static PyObject *
os_fdatasync_impl(PyObject *module, int fd);
static PyObject *
os_fdatasync(PyObject *module, PyObject *args, PyObject *kwargs)
os_fdatasync(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"fd", NULL};
static _PyArg_Parser _parser = {"O&:fdatasync", _keywords, 0};
int fd;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
fildes_converter, &fd)) {
goto exit;
}
......@@ -678,14 +678,14 @@ PyDoc_STRVAR(os_chown__doc__,
" If they are unavailable, using them will raise a NotImplementedError.");
#define OS_CHOWN_METHODDEF \
{"chown", (PyCFunction)os_chown, METH_VARARGS|METH_KEYWORDS, os_chown__doc__},
{"chown", (PyCFunction)os_chown, METH_FASTCALL, os_chown__doc__},
static PyObject *
os_chown_impl(PyObject *module, path_t *path, uid_t uid, gid_t gid,
int dir_fd, int follow_symlinks);
static PyObject *
os_chown(PyObject *module, PyObject *args, PyObject *kwargs)
os_chown(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "uid", "gid", "dir_fd", "follow_symlinks", NULL};
......@@ -696,7 +696,7 @@ os_chown(PyObject *module, PyObject *args, PyObject *kwargs)
int dir_fd = DEFAULT_DIR_FD;
int follow_symlinks = 1;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, _Py_Uid_Converter, &uid, _Py_Gid_Converter, &gid, FCHOWNAT_DIR_FD_CONVERTER, &dir_fd, &follow_symlinks)) {
goto exit;
}
......@@ -722,13 +722,13 @@ PyDoc_STRVAR(os_fchown__doc__,
"Equivalent to os.chown(fd, uid, gid).");
#define OS_FCHOWN_METHODDEF \
{"fchown", (PyCFunction)os_fchown, METH_VARARGS|METH_KEYWORDS, os_fchown__doc__},
{"fchown", (PyCFunction)os_fchown, METH_FASTCALL, os_fchown__doc__},
static PyObject *
os_fchown_impl(PyObject *module, int fd, uid_t uid, gid_t gid);
static PyObject *
os_fchown(PyObject *module, PyObject *args, PyObject *kwargs)
os_fchown(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"fd", "uid", "gid", NULL};
......@@ -737,7 +737,7 @@ os_fchown(PyObject *module, PyObject *args, PyObject *kwargs)
uid_t uid;
gid_t gid;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&fd, _Py_Uid_Converter, &uid, _Py_Gid_Converter, &gid)) {
goto exit;
}
......@@ -761,13 +761,13 @@ PyDoc_STRVAR(os_lchown__doc__,
"Equivalent to os.chown(path, uid, gid, follow_symlinks=False).");
#define OS_LCHOWN_METHODDEF \
{"lchown", (PyCFunction)os_lchown, METH_VARARGS|METH_KEYWORDS, os_lchown__doc__},
{"lchown", (PyCFunction)os_lchown, METH_FASTCALL, os_lchown__doc__},
static PyObject *
os_lchown_impl(PyObject *module, path_t *path, uid_t uid, gid_t gid);
static PyObject *
os_lchown(PyObject *module, PyObject *args, PyObject *kwargs)
os_lchown(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "uid", "gid", NULL};
......@@ -776,7 +776,7 @@ os_lchown(PyObject *module, PyObject *args, PyObject *kwargs)
uid_t uid;
gid_t gid;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, _Py_Uid_Converter, &uid, _Py_Gid_Converter, &gid)) {
goto exit;
}
......@@ -847,14 +847,14 @@ PyDoc_STRVAR(os_link__doc__,
" NotImplementedError.");
#define OS_LINK_METHODDEF \
{"link", (PyCFunction)os_link, METH_VARARGS|METH_KEYWORDS, os_link__doc__},
{"link", (PyCFunction)os_link, METH_FASTCALL, os_link__doc__},
static PyObject *
os_link_impl(PyObject *module, path_t *src, path_t *dst, int src_dir_fd,
int dst_dir_fd, int follow_symlinks);
static PyObject *
os_link(PyObject *module, PyObject *args, PyObject *kwargs)
os_link(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"src", "dst", "src_dir_fd", "dst_dir_fd", "follow_symlinks", NULL};
......@@ -865,7 +865,7 @@ os_link(PyObject *module, PyObject *args, PyObject *kwargs)
int dst_dir_fd = DEFAULT_DIR_FD;
int follow_symlinks = 1;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &src, path_converter, &dst, dir_fd_converter, &src_dir_fd, dir_fd_converter, &dst_dir_fd, &follow_symlinks)) {
goto exit;
}
......@@ -900,20 +900,20 @@ PyDoc_STRVAR(os_listdir__doc__,
"entries \'.\' and \'..\' even if they are present in the directory.");
#define OS_LISTDIR_METHODDEF \
{"listdir", (PyCFunction)os_listdir, METH_VARARGS|METH_KEYWORDS, os_listdir__doc__},
{"listdir", (PyCFunction)os_listdir, METH_FASTCALL, os_listdir__doc__},
static PyObject *
os_listdir_impl(PyObject *module, path_t *path);
static PyObject *
os_listdir(PyObject *module, PyObject *args, PyObject *kwargs)
os_listdir(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", NULL};
static _PyArg_Parser _parser = {"|O&:listdir", _keywords, 0};
path_t path = PATH_T_INITIALIZE("listdir", "path", 1, PATH_HAVE_FDOPENDIR);
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path)) {
goto exit;
}
......@@ -1032,20 +1032,20 @@ PyDoc_STRVAR(os__getvolumepathname__doc__,
"A helper function for ismount on Win32.");
#define OS__GETVOLUMEPATHNAME_METHODDEF \
{"_getvolumepathname", (PyCFunction)os__getvolumepathname, METH_VARARGS|METH_KEYWORDS, os__getvolumepathname__doc__},
{"_getvolumepathname", (PyCFunction)os__getvolumepathname, METH_FASTCALL, os__getvolumepathname__doc__},
static PyObject *
os__getvolumepathname_impl(PyObject *module, PyObject *path);
static PyObject *
os__getvolumepathname(PyObject *module, PyObject *args, PyObject *kwargs)
os__getvolumepathname(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", NULL};
static _PyArg_Parser _parser = {"U:_getvolumepathname", _keywords, 0};
PyObject *path;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&path)) {
goto exit;
}
......@@ -1071,13 +1071,13 @@ PyDoc_STRVAR(os_mkdir__doc__,
"The mode argument is ignored on Windows.");
#define OS_MKDIR_METHODDEF \
{"mkdir", (PyCFunction)os_mkdir, METH_VARARGS|METH_KEYWORDS, os_mkdir__doc__},
{"mkdir", (PyCFunction)os_mkdir, METH_FASTCALL, os_mkdir__doc__},
static PyObject *
os_mkdir_impl(PyObject *module, path_t *path, int mode, int dir_fd);
static PyObject *
os_mkdir(PyObject *module, PyObject *args, PyObject *kwargs)
os_mkdir(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "mode", "dir_fd", NULL};
......@@ -1086,7 +1086,7 @@ os_mkdir(PyObject *module, PyObject *args, PyObject *kwargs)
int mode = 511;
int dir_fd = DEFAULT_DIR_FD;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, &mode, MKDIRAT_DIR_FD_CONVERTER, &dir_fd)) {
goto exit;
}
......@@ -1139,13 +1139,13 @@ PyDoc_STRVAR(os_getpriority__doc__,
"Return program scheduling priority.");
#define OS_GETPRIORITY_METHODDEF \
{"getpriority", (PyCFunction)os_getpriority, METH_VARARGS|METH_KEYWORDS, os_getpriority__doc__},
{"getpriority", (PyCFunction)os_getpriority, METH_FASTCALL, os_getpriority__doc__},
static PyObject *
os_getpriority_impl(PyObject *module, int which, int who);
static PyObject *
os_getpriority(PyObject *module, PyObject *args, PyObject *kwargs)
os_getpriority(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"which", "who", NULL};
......@@ -1153,7 +1153,7 @@ os_getpriority(PyObject *module, PyObject *args, PyObject *kwargs)
int which;
int who;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&which, &who)) {
goto exit;
}
......@@ -1174,13 +1174,13 @@ PyDoc_STRVAR(os_setpriority__doc__,
"Set program scheduling priority.");
#define OS_SETPRIORITY_METHODDEF \
{"setpriority", (PyCFunction)os_setpriority, METH_VARARGS|METH_KEYWORDS, os_setpriority__doc__},
{"setpriority", (PyCFunction)os_setpriority, METH_FASTCALL, os_setpriority__doc__},
static PyObject *
os_setpriority_impl(PyObject *module, int which, int who, int priority);
static PyObject *
os_setpriority(PyObject *module, PyObject *args, PyObject *kwargs)
os_setpriority(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"which", "who", "priority", NULL};
......@@ -1189,7 +1189,7 @@ os_setpriority(PyObject *module, PyObject *args, PyObject *kwargs)
int who;
int priority;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&which, &who, &priority)) {
goto exit;
}
......@@ -1214,14 +1214,14 @@ PyDoc_STRVAR(os_rename__doc__,
" If they are unavailable, using them will raise a NotImplementedError.");
#define OS_RENAME_METHODDEF \
{"rename", (PyCFunction)os_rename, METH_VARARGS|METH_KEYWORDS, os_rename__doc__},
{"rename", (PyCFunction)os_rename, METH_FASTCALL, os_rename__doc__},
static PyObject *
os_rename_impl(PyObject *module, path_t *src, path_t *dst, int src_dir_fd,
int dst_dir_fd);
static PyObject *
os_rename(PyObject *module, PyObject *args, PyObject *kwargs)
os_rename(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"src", "dst", "src_dir_fd", "dst_dir_fd", NULL};
......@@ -1231,7 +1231,7 @@ os_rename(PyObject *module, PyObject *args, PyObject *kwargs)
int src_dir_fd = DEFAULT_DIR_FD;
int dst_dir_fd = DEFAULT_DIR_FD;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &src, path_converter, &dst, dir_fd_converter, &src_dir_fd, dir_fd_converter, &dst_dir_fd)) {
goto exit;
}
......@@ -1259,14 +1259,14 @@ PyDoc_STRVAR(os_replace__doc__,
" If they are unavailable, using them will raise a NotImplementedError.\"");
#define OS_REPLACE_METHODDEF \
{"replace", (PyCFunction)os_replace, METH_VARARGS|METH_KEYWORDS, os_replace__doc__},
{"replace", (PyCFunction)os_replace, METH_FASTCALL, os_replace__doc__},
static PyObject *
os_replace_impl(PyObject *module, path_t *src, path_t *dst, int src_dir_fd,
int dst_dir_fd);
static PyObject *
os_replace(PyObject *module, PyObject *args, PyObject *kwargs)
os_replace(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"src", "dst", "src_dir_fd", "dst_dir_fd", NULL};
......@@ -1276,7 +1276,7 @@ os_replace(PyObject *module, PyObject *args, PyObject *kwargs)
int src_dir_fd = DEFAULT_DIR_FD;
int dst_dir_fd = DEFAULT_DIR_FD;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &src, path_converter, &dst, dir_fd_converter, &src_dir_fd, dir_fd_converter, &dst_dir_fd)) {
goto exit;
}
......@@ -1303,13 +1303,13 @@ PyDoc_STRVAR(os_rmdir__doc__,
" If it is unavailable, using it will raise a NotImplementedError.");
#define OS_RMDIR_METHODDEF \
{"rmdir", (PyCFunction)os_rmdir, METH_VARARGS|METH_KEYWORDS, os_rmdir__doc__},
{"rmdir", (PyCFunction)os_rmdir, METH_FASTCALL, os_rmdir__doc__},
static PyObject *
os_rmdir_impl(PyObject *module, path_t *path, int dir_fd);
static PyObject *
os_rmdir(PyObject *module, PyObject *args, PyObject *kwargs)
os_rmdir(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "dir_fd", NULL};
......@@ -1317,7 +1317,7 @@ os_rmdir(PyObject *module, PyObject *args, PyObject *kwargs)
path_t path = PATH_T_INITIALIZE("rmdir", "path", 0, 0);
int dir_fd = DEFAULT_DIR_FD;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, UNLINKAT_DIR_FD_CONVERTER, &dir_fd)) {
goto exit;
}
......@@ -1339,13 +1339,13 @@ PyDoc_STRVAR(os_system__doc__,
"Execute the command in a subshell.");
#define OS_SYSTEM_METHODDEF \
{"system", (PyCFunction)os_system, METH_VARARGS|METH_KEYWORDS, os_system__doc__},
{"system", (PyCFunction)os_system, METH_FASTCALL, os_system__doc__},
static long
os_system_impl(PyObject *module, Py_UNICODE *command);
static PyObject *
os_system(PyObject *module, PyObject *args, PyObject *kwargs)
os_system(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"command", NULL};
......@@ -1353,7 +1353,7 @@ os_system(PyObject *module, PyObject *args, PyObject *kwargs)
Py_UNICODE *command;
long _return_value;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&command)) {
goto exit;
}
......@@ -1378,13 +1378,13 @@ PyDoc_STRVAR(os_system__doc__,
"Execute the command in a subshell.");
#define OS_SYSTEM_METHODDEF \
{"system", (PyCFunction)os_system, METH_VARARGS|METH_KEYWORDS, os_system__doc__},
{"system", (PyCFunction)os_system, METH_FASTCALL, os_system__doc__},
static long
os_system_impl(PyObject *module, PyObject *command);
static PyObject *
os_system(PyObject *module, PyObject *args, PyObject *kwargs)
os_system(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"command", NULL};
......@@ -1392,7 +1392,7 @@ os_system(PyObject *module, PyObject *args, PyObject *kwargs)
PyObject *command = NULL;
long _return_value;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
PyUnicode_FSConverter, &command)) {
goto exit;
}
......@@ -1450,13 +1450,13 @@ PyDoc_STRVAR(os_unlink__doc__,
" If it is unavailable, using it will raise a NotImplementedError.");
#define OS_UNLINK_METHODDEF \
{"unlink", (PyCFunction)os_unlink, METH_VARARGS|METH_KEYWORDS, os_unlink__doc__},
{"unlink", (PyCFunction)os_unlink, METH_FASTCALL, os_unlink__doc__},
static PyObject *
os_unlink_impl(PyObject *module, path_t *path, int dir_fd);
static PyObject *
os_unlink(PyObject *module, PyObject *args, PyObject *kwargs)
os_unlink(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "dir_fd", NULL};
......@@ -1464,7 +1464,7 @@ os_unlink(PyObject *module, PyObject *args, PyObject *kwargs)
path_t path = PATH_T_INITIALIZE("unlink", "path", 0, 0);
int dir_fd = DEFAULT_DIR_FD;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, UNLINKAT_DIR_FD_CONVERTER, &dir_fd)) {
goto exit;
}
......@@ -1489,13 +1489,13 @@ PyDoc_STRVAR(os_remove__doc__,
" If it is unavailable, using it will raise a NotImplementedError.");
#define OS_REMOVE_METHODDEF \
{"remove", (PyCFunction)os_remove, METH_VARARGS|METH_KEYWORDS, os_remove__doc__},
{"remove", (PyCFunction)os_remove, METH_FASTCALL, os_remove__doc__},
static PyObject *
os_remove_impl(PyObject *module, path_t *path, int dir_fd);
static PyObject *
os_remove(PyObject *module, PyObject *args, PyObject *kwargs)
os_remove(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "dir_fd", NULL};
......@@ -1503,7 +1503,7 @@ os_remove(PyObject *module, PyObject *args, PyObject *kwargs)
path_t path = PATH_T_INITIALIZE("remove", "path", 0, 0);
int dir_fd = DEFAULT_DIR_FD;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, UNLINKAT_DIR_FD_CONVERTER, &dir_fd)) {
goto exit;
}
......@@ -1571,14 +1571,14 @@ PyDoc_STRVAR(os_utime__doc__,
" If they are unavailable, using them will raise a NotImplementedError.");
#define OS_UTIME_METHODDEF \
{"utime", (PyCFunction)os_utime, METH_VARARGS|METH_KEYWORDS, os_utime__doc__},
{"utime", (PyCFunction)os_utime, METH_FASTCALL, os_utime__doc__},
static PyObject *
os_utime_impl(PyObject *module, path_t *path, PyObject *times, PyObject *ns,
int dir_fd, int follow_symlinks);
static PyObject *
os_utime(PyObject *module, PyObject *args, PyObject *kwargs)
os_utime(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "times", "ns", "dir_fd", "follow_symlinks", NULL};
......@@ -1589,7 +1589,7 @@ os_utime(PyObject *module, PyObject *args, PyObject *kwargs)
int dir_fd = DEFAULT_DIR_FD;
int follow_symlinks = 1;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, &times, &ns, FUTIMENSAT_DIR_FD_CONVERTER, &dir_fd, &follow_symlinks)) {
goto exit;
}
......@@ -1609,20 +1609,20 @@ PyDoc_STRVAR(os__exit__doc__,
"Exit to the system with specified status, without normal exit processing.");
#define OS__EXIT_METHODDEF \
{"_exit", (PyCFunction)os__exit, METH_VARARGS|METH_KEYWORDS, os__exit__doc__},
{"_exit", (PyCFunction)os__exit, METH_FASTCALL, os__exit__doc__},
static PyObject *
os__exit_impl(PyObject *module, int status);
static PyObject *
os__exit(PyObject *module, PyObject *args, PyObject *kwargs)
os__exit(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"status", NULL};
static _PyArg_Parser _parser = {"i:_exit", _keywords, 0};
int status;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&status)) {
goto exit;
}
......@@ -1689,13 +1689,13 @@ PyDoc_STRVAR(os_execve__doc__,
" Dictionary of strings mapping to strings.");
#define OS_EXECVE_METHODDEF \
{"execve", (PyCFunction)os_execve, METH_VARARGS|METH_KEYWORDS, os_execve__doc__},
{"execve", (PyCFunction)os_execve, METH_FASTCALL, os_execve__doc__},
static PyObject *
os_execve_impl(PyObject *module, path_t *path, PyObject *argv, PyObject *env);
static PyObject *
os_execve(PyObject *module, PyObject *args, PyObject *kwargs)
os_execve(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "argv", "env", NULL};
......@@ -1704,7 +1704,7 @@ os_execve(PyObject *module, PyObject *args, PyObject *kwargs)
PyObject *argv;
PyObject *env;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, &argv, &env)) {
goto exit;
}
......@@ -1868,20 +1868,20 @@ PyDoc_STRVAR(os_sched_get_priority_max__doc__,
"Get the maximum scheduling priority for policy.");
#define OS_SCHED_GET_PRIORITY_MAX_METHODDEF \
{"sched_get_priority_max", (PyCFunction)os_sched_get_priority_max, METH_VARARGS|METH_KEYWORDS, os_sched_get_priority_max__doc__},
{"sched_get_priority_max", (PyCFunction)os_sched_get_priority_max, METH_FASTCALL, os_sched_get_priority_max__doc__},
static PyObject *
os_sched_get_priority_max_impl(PyObject *module, int policy);
static PyObject *
os_sched_get_priority_max(PyObject *module, PyObject *args, PyObject *kwargs)
os_sched_get_priority_max(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"policy", NULL};
static _PyArg_Parser _parser = {"i:sched_get_priority_max", _keywords, 0};
int policy;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&policy)) {
goto exit;
}
......@@ -1902,20 +1902,20 @@ PyDoc_STRVAR(os_sched_get_priority_min__doc__,
"Get the minimum scheduling priority for policy.");
#define OS_SCHED_GET_PRIORITY_MIN_METHODDEF \
{"sched_get_priority_min", (PyCFunction)os_sched_get_priority_min, METH_VARARGS|METH_KEYWORDS, os_sched_get_priority_min__doc__},
{"sched_get_priority_min", (PyCFunction)os_sched_get_priority_min, METH_FASTCALL, os_sched_get_priority_min__doc__},
static PyObject *
os_sched_get_priority_min_impl(PyObject *module, int policy);
static PyObject *
os_sched_get_priority_min(PyObject *module, PyObject *args, PyObject *kwargs)
os_sched_get_priority_min(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"policy", NULL};
static _PyArg_Parser _parser = {"i:sched_get_priority_min", _keywords, 0};
int policy;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&policy)) {
goto exit;
}
......@@ -2398,20 +2398,20 @@ PyDoc_STRVAR(os_getpgid__doc__,
"Call the system call getpgid(), and return the result.");
#define OS_GETPGID_METHODDEF \
{"getpgid", (PyCFunction)os_getpgid, METH_VARARGS|METH_KEYWORDS, os_getpgid__doc__},
{"getpgid", (PyCFunction)os_getpgid, METH_FASTCALL, os_getpgid__doc__},
static PyObject *
os_getpgid_impl(PyObject *module, pid_t pid);
static PyObject *
os_getpgid(PyObject *module, PyObject *args, PyObject *kwargs)
os_getpgid(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"pid", NULL};
static _PyArg_Parser _parser = {"" _Py_PARSE_PID ":getpgid", _keywords, 0};
pid_t pid;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&pid)) {
goto exit;
}
......@@ -2848,20 +2848,20 @@ PyDoc_STRVAR(os_wait3__doc__,
" (pid, status, rusage)");
#define OS_WAIT3_METHODDEF \
{"wait3", (PyCFunction)os_wait3, METH_VARARGS|METH_KEYWORDS, os_wait3__doc__},
{"wait3", (PyCFunction)os_wait3, METH_FASTCALL, os_wait3__doc__},
static PyObject *
os_wait3_impl(PyObject *module, int options);
static PyObject *
os_wait3(PyObject *module, PyObject *args, PyObject *kwargs)
os_wait3(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"options", NULL};
static _PyArg_Parser _parser = {"i:wait3", _keywords, 0};
int options;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&options)) {
goto exit;
}
......@@ -2885,13 +2885,13 @@ PyDoc_STRVAR(os_wait4__doc__,
" (pid, status, rusage)");
#define OS_WAIT4_METHODDEF \
{"wait4", (PyCFunction)os_wait4, METH_VARARGS|METH_KEYWORDS, os_wait4__doc__},
{"wait4", (PyCFunction)os_wait4, METH_FASTCALL, os_wait4__doc__},
static PyObject *
os_wait4_impl(PyObject *module, pid_t pid, int options);
static PyObject *
os_wait4(PyObject *module, PyObject *args, PyObject *kwargs)
os_wait4(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"pid", "options", NULL};
......@@ -2899,7 +2899,7 @@ os_wait4(PyObject *module, PyObject *args, PyObject *kwargs)
pid_t pid;
int options;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&pid, &options)) {
goto exit;
}
......@@ -3076,14 +3076,14 @@ PyDoc_STRVAR(os_symlink__doc__,
" If it is unavailable, using it will raise a NotImplementedError.");
#define OS_SYMLINK_METHODDEF \
{"symlink", (PyCFunction)os_symlink, METH_VARARGS|METH_KEYWORDS, os_symlink__doc__},
{"symlink", (PyCFunction)os_symlink, METH_FASTCALL, os_symlink__doc__},
static PyObject *
os_symlink_impl(PyObject *module, path_t *src, path_t *dst,
int target_is_directory, int dir_fd);
static PyObject *
os_symlink(PyObject *module, PyObject *args, PyObject *kwargs)
os_symlink(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"src", "dst", "target_is_directory", "dir_fd", NULL};
......@@ -3093,7 +3093,7 @@ os_symlink(PyObject *module, PyObject *args, PyObject *kwargs)
int target_is_directory = 0;
int dir_fd = DEFAULT_DIR_FD;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &src, path_converter, &dst, &target_is_directory, SYMLINKAT_DIR_FD_CONVERTER, &dir_fd)) {
goto exit;
}
......@@ -3298,13 +3298,13 @@ PyDoc_STRVAR(os_open__doc__,
" If it is unavailable, using it will raise a NotImplementedError.");
#define OS_OPEN_METHODDEF \
{"open", (PyCFunction)os_open, METH_VARARGS|METH_KEYWORDS, os_open__doc__},
{"open", (PyCFunction)os_open, METH_FASTCALL, os_open__doc__},
static int
os_open_impl(PyObject *module, path_t *path, int flags, int mode, int dir_fd);
static PyObject *
os_open(PyObject *module, PyObject *args, PyObject *kwargs)
os_open(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "flags", "mode", "dir_fd", NULL};
......@@ -3315,7 +3315,7 @@ os_open(PyObject *module, PyObject *args, PyObject *kwargs)
int dir_fd = DEFAULT_DIR_FD;
int _return_value;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, &flags, &mode, OPENAT_DIR_FD_CONVERTER, &dir_fd)) {
goto exit;
}
......@@ -3339,20 +3339,20 @@ PyDoc_STRVAR(os_close__doc__,
"Close a file descriptor.");
#define OS_CLOSE_METHODDEF \
{"close", (PyCFunction)os_close, METH_VARARGS|METH_KEYWORDS, os_close__doc__},
{"close", (PyCFunction)os_close, METH_FASTCALL, os_close__doc__},
static PyObject *
os_close_impl(PyObject *module, int fd);
static PyObject *
os_close(PyObject *module, PyObject *args, PyObject *kwargs)
os_close(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"fd", NULL};
static _PyArg_Parser _parser = {"i:close", _keywords, 0};
int fd;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&fd)) {
goto exit;
}
......@@ -3430,13 +3430,13 @@ PyDoc_STRVAR(os_dup2__doc__,
"Duplicate file descriptor.");
#define OS_DUP2_METHODDEF \
{"dup2", (PyCFunction)os_dup2, METH_VARARGS|METH_KEYWORDS, os_dup2__doc__},
{"dup2", (PyCFunction)os_dup2, METH_FASTCALL, os_dup2__doc__},
static PyObject *
os_dup2_impl(PyObject *module, int fd, int fd2, int inheritable);
static PyObject *
os_dup2(PyObject *module, PyObject *args, PyObject *kwargs)
os_dup2(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"fd", "fd2", "inheritable", NULL};
......@@ -3445,7 +3445,7 @@ os_dup2(PyObject *module, PyObject *args, PyObject *kwargs)
int fd2;
int inheritable = 1;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&fd, &fd2, &inheritable)) {
goto exit;
}
......@@ -3695,20 +3695,20 @@ PyDoc_STRVAR(os_fstat__doc__,
"Equivalent to os.stat(fd).");
#define OS_FSTAT_METHODDEF \
{"fstat", (PyCFunction)os_fstat, METH_VARARGS|METH_KEYWORDS, os_fstat__doc__},
{"fstat", (PyCFunction)os_fstat, METH_FASTCALL, os_fstat__doc__},
static PyObject *
os_fstat_impl(PyObject *module, int fd);
static PyObject *
os_fstat(PyObject *module, PyObject *args, PyObject *kwargs)
os_fstat(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"fd", NULL};
static _PyArg_Parser _parser = {"i:fstat", _keywords, 0};
int fd;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&fd)) {
goto exit;
}
......@@ -3918,13 +3918,13 @@ PyDoc_STRVAR(os_mkfifo__doc__,
" If it is unavailable, using it will raise a NotImplementedError.");
#define OS_MKFIFO_METHODDEF \
{"mkfifo", (PyCFunction)os_mkfifo, METH_VARARGS|METH_KEYWORDS, os_mkfifo__doc__},
{"mkfifo", (PyCFunction)os_mkfifo, METH_FASTCALL, os_mkfifo__doc__},
static PyObject *
os_mkfifo_impl(PyObject *module, path_t *path, int mode, int dir_fd);
static PyObject *
os_mkfifo(PyObject *module, PyObject *args, PyObject *kwargs)
os_mkfifo(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "mode", "dir_fd", NULL};
......@@ -3933,7 +3933,7 @@ os_mkfifo(PyObject *module, PyObject *args, PyObject *kwargs)
int mode = 438;
int dir_fd = DEFAULT_DIR_FD;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, &mode, MKFIFOAT_DIR_FD_CONVERTER, &dir_fd)) {
goto exit;
}
......@@ -3969,14 +3969,14 @@ PyDoc_STRVAR(os_mknod__doc__,
" If it is unavailable, using it will raise a NotImplementedError.");
#define OS_MKNOD_METHODDEF \
{"mknod", (PyCFunction)os_mknod, METH_VARARGS|METH_KEYWORDS, os_mknod__doc__},
{"mknod", (PyCFunction)os_mknod, METH_FASTCALL, os_mknod__doc__},
static PyObject *
os_mknod_impl(PyObject *module, path_t *path, int mode, dev_t device,
int dir_fd);
static PyObject *
os_mknod(PyObject *module, PyObject *args, PyObject *kwargs)
os_mknod(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "mode", "device", "dir_fd", NULL};
......@@ -3986,7 +3986,7 @@ os_mknod(PyObject *module, PyObject *args, PyObject *kwargs)
dev_t device = 0;
int dir_fd = DEFAULT_DIR_FD;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, &mode, _Py_Dev_Converter, &device, MKNODAT_DIR_FD_CONVERTER, &dir_fd)) {
goto exit;
}
......@@ -4156,13 +4156,13 @@ PyDoc_STRVAR(os_truncate__doc__,
" If this functionality is unavailable, using it raises an exception.");
#define OS_TRUNCATE_METHODDEF \
{"truncate", (PyCFunction)os_truncate, METH_VARARGS|METH_KEYWORDS, os_truncate__doc__},
{"truncate", (PyCFunction)os_truncate, METH_FASTCALL, os_truncate__doc__},
static PyObject *
os_truncate_impl(PyObject *module, path_t *path, Py_off_t length);
static PyObject *
os_truncate(PyObject *module, PyObject *args, PyObject *kwargs)
os_truncate(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "length", NULL};
......@@ -4170,7 +4170,7 @@ os_truncate(PyObject *module, PyObject *args, PyObject *kwargs)
path_t path = PATH_T_INITIALIZE("truncate", "path", 0, PATH_HAVE_FTRUNCATE);
Py_off_t length;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, Py_off_t_converter, &length)) {
goto exit;
}
......@@ -4447,13 +4447,13 @@ PyDoc_STRVAR(os_WIFCONTINUED__doc__,
"job control stop.");
#define OS_WIFCONTINUED_METHODDEF \
{"WIFCONTINUED", (PyCFunction)os_WIFCONTINUED, METH_VARARGS|METH_KEYWORDS, os_WIFCONTINUED__doc__},
{"WIFCONTINUED", (PyCFunction)os_WIFCONTINUED, METH_FASTCALL, os_WIFCONTINUED__doc__},
static int
os_WIFCONTINUED_impl(PyObject *module, int status);
static PyObject *
os_WIFCONTINUED(PyObject *module, PyObject *args, PyObject *kwargs)
os_WIFCONTINUED(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"status", NULL};
......@@ -4461,7 +4461,7 @@ os_WIFCONTINUED(PyObject *module, PyObject *args, PyObject *kwargs)
int status;
int _return_value;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&status)) {
goto exit;
}
......@@ -4486,13 +4486,13 @@ PyDoc_STRVAR(os_WIFSTOPPED__doc__,
"Return True if the process returning status was stopped.");
#define OS_WIFSTOPPED_METHODDEF \
{"WIFSTOPPED", (PyCFunction)os_WIFSTOPPED, METH_VARARGS|METH_KEYWORDS, os_WIFSTOPPED__doc__},
{"WIFSTOPPED", (PyCFunction)os_WIFSTOPPED, METH_FASTCALL, os_WIFSTOPPED__doc__},
static int
os_WIFSTOPPED_impl(PyObject *module, int status);
static PyObject *
os_WIFSTOPPED(PyObject *module, PyObject *args, PyObject *kwargs)
os_WIFSTOPPED(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"status", NULL};
......@@ -4500,7 +4500,7 @@ os_WIFSTOPPED(PyObject *module, PyObject *args, PyObject *kwargs)
int status;
int _return_value;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&status)) {
goto exit;
}
......@@ -4525,13 +4525,13 @@ PyDoc_STRVAR(os_WIFSIGNALED__doc__,
"Return True if the process returning status was terminated by a signal.");
#define OS_WIFSIGNALED_METHODDEF \
{"WIFSIGNALED", (PyCFunction)os_WIFSIGNALED, METH_VARARGS|METH_KEYWORDS, os_WIFSIGNALED__doc__},
{"WIFSIGNALED", (PyCFunction)os_WIFSIGNALED, METH_FASTCALL, os_WIFSIGNALED__doc__},
static int
os_WIFSIGNALED_impl(PyObject *module, int status);
static PyObject *
os_WIFSIGNALED(PyObject *module, PyObject *args, PyObject *kwargs)
os_WIFSIGNALED(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"status", NULL};
......@@ -4539,7 +4539,7 @@ os_WIFSIGNALED(PyObject *module, PyObject *args, PyObject *kwargs)
int status;
int _return_value;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&status)) {
goto exit;
}
......@@ -4564,13 +4564,13 @@ PyDoc_STRVAR(os_WIFEXITED__doc__,
"Return True if the process returning status exited via the exit() system call.");
#define OS_WIFEXITED_METHODDEF \
{"WIFEXITED", (PyCFunction)os_WIFEXITED, METH_VARARGS|METH_KEYWORDS, os_WIFEXITED__doc__},
{"WIFEXITED", (PyCFunction)os_WIFEXITED, METH_FASTCALL, os_WIFEXITED__doc__},
static int
os_WIFEXITED_impl(PyObject *module, int status);
static PyObject *
os_WIFEXITED(PyObject *module, PyObject *args, PyObject *kwargs)
os_WIFEXITED(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"status", NULL};
......@@ -4578,7 +4578,7 @@ os_WIFEXITED(PyObject *module, PyObject *args, PyObject *kwargs)
int status;
int _return_value;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&status)) {
goto exit;
}
......@@ -4603,13 +4603,13 @@ PyDoc_STRVAR(os_WEXITSTATUS__doc__,
"Return the process return code from status.");
#define OS_WEXITSTATUS_METHODDEF \
{"WEXITSTATUS", (PyCFunction)os_WEXITSTATUS, METH_VARARGS|METH_KEYWORDS, os_WEXITSTATUS__doc__},
{"WEXITSTATUS", (PyCFunction)os_WEXITSTATUS, METH_FASTCALL, os_WEXITSTATUS__doc__},
static int
os_WEXITSTATUS_impl(PyObject *module, int status);
static PyObject *
os_WEXITSTATUS(PyObject *module, PyObject *args, PyObject *kwargs)
os_WEXITSTATUS(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"status", NULL};
......@@ -4617,7 +4617,7 @@ os_WEXITSTATUS(PyObject *module, PyObject *args, PyObject *kwargs)
int status;
int _return_value;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&status)) {
goto exit;
}
......@@ -4642,13 +4642,13 @@ PyDoc_STRVAR(os_WTERMSIG__doc__,
"Return the signal that terminated the process that provided the status value.");
#define OS_WTERMSIG_METHODDEF \
{"WTERMSIG", (PyCFunction)os_WTERMSIG, METH_VARARGS|METH_KEYWORDS, os_WTERMSIG__doc__},
{"WTERMSIG", (PyCFunction)os_WTERMSIG, METH_FASTCALL, os_WTERMSIG__doc__},
static int
os_WTERMSIG_impl(PyObject *module, int status);
static PyObject *
os_WTERMSIG(PyObject *module, PyObject *args, PyObject *kwargs)
os_WTERMSIG(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"status", NULL};
......@@ -4656,7 +4656,7 @@ os_WTERMSIG(PyObject *module, PyObject *args, PyObject *kwargs)
int status;
int _return_value;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&status)) {
goto exit;
}
......@@ -4681,13 +4681,13 @@ PyDoc_STRVAR(os_WSTOPSIG__doc__,
"Return the signal that stopped the process that provided the status value.");
#define OS_WSTOPSIG_METHODDEF \
{"WSTOPSIG", (PyCFunction)os_WSTOPSIG, METH_VARARGS|METH_KEYWORDS, os_WSTOPSIG__doc__},
{"WSTOPSIG", (PyCFunction)os_WSTOPSIG, METH_FASTCALL, os_WSTOPSIG__doc__},
static int
os_WSTOPSIG_impl(PyObject *module, int status);
static PyObject *
os_WSTOPSIG(PyObject *module, PyObject *args, PyObject *kwargs)
os_WSTOPSIG(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"status", NULL};
......@@ -4695,7 +4695,7 @@ os_WSTOPSIG(PyObject *module, PyObject *args, PyObject *kwargs)
int status;
int _return_value;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&status)) {
goto exit;
}
......@@ -4757,20 +4757,20 @@ PyDoc_STRVAR(os_statvfs__doc__,
" If this functionality is unavailable, using it raises an exception.");
#define OS_STATVFS_METHODDEF \
{"statvfs", (PyCFunction)os_statvfs, METH_VARARGS|METH_KEYWORDS, os_statvfs__doc__},
{"statvfs", (PyCFunction)os_statvfs, METH_FASTCALL, os_statvfs__doc__},
static PyObject *
os_statvfs_impl(PyObject *module, path_t *path);
static PyObject *
os_statvfs(PyObject *module, PyObject *args, PyObject *kwargs)
os_statvfs(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", NULL};
static _PyArg_Parser _parser = {"O&:statvfs", _keywords, 0};
path_t path = PATH_T_INITIALIZE("statvfs", "path", 0, PATH_HAVE_FSTATVFS);
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path)) {
goto exit;
}
......@@ -4794,20 +4794,20 @@ PyDoc_STRVAR(os__getdiskusage__doc__,
"Return disk usage statistics about the given path as a (total, free) tuple.");
#define OS__GETDISKUSAGE_METHODDEF \
{"_getdiskusage", (PyCFunction)os__getdiskusage, METH_VARARGS|METH_KEYWORDS, os__getdiskusage__doc__},
{"_getdiskusage", (PyCFunction)os__getdiskusage, METH_FASTCALL, os__getdiskusage__doc__},
static PyObject *
os__getdiskusage_impl(PyObject *module, Py_UNICODE *path);
static PyObject *
os__getdiskusage(PyObject *module, PyObject *args, PyObject *kwargs)
os__getdiskusage(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", NULL};
static _PyArg_Parser _parser = {"u:_getdiskusage", _keywords, 0};
Py_UNICODE *path;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&path)) {
goto exit;
}
......@@ -4872,13 +4872,13 @@ PyDoc_STRVAR(os_pathconf__doc__,
" If this functionality is unavailable, using it raises an exception.");
#define OS_PATHCONF_METHODDEF \
{"pathconf", (PyCFunction)os_pathconf, METH_VARARGS|METH_KEYWORDS, os_pathconf__doc__},
{"pathconf", (PyCFunction)os_pathconf, METH_FASTCALL, os_pathconf__doc__},
static long
os_pathconf_impl(PyObject *module, path_t *path, int name);
static PyObject *
os_pathconf(PyObject *module, PyObject *args, PyObject *kwargs)
os_pathconf(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "name", NULL};
......@@ -4887,7 +4887,7 @@ os_pathconf(PyObject *module, PyObject *args, PyObject *kwargs)
int name;
long _return_value;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, conv_path_confname, &name)) {
goto exit;
}
......@@ -5020,20 +5020,21 @@ PyDoc_STRVAR(os_startfile__doc__,
"the underlying Win32 ShellExecute function doesn\'t work if it is.");
#define OS_STARTFILE_METHODDEF \
{"startfile", (PyCFunction)os_startfile, METH_VARARGS|METH_KEYWORDS, os_startfile__doc__},
{"startfile", (PyCFunction)os_startfile, METH_FASTCALL, os_startfile__doc__},
static PyObject *
os_startfile_impl(PyObject *module, path_t *filepath, Py_UNICODE *operation);
static PyObject *
os_startfile(PyObject *module, PyObject *args, PyObject *kwargs)
os_startfile(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static char *_keywords[] = {"filepath", "operation", NULL};
static const char * const _keywords[] = {"filepath", "operation", NULL};
static _PyArg_Parser _parser = {"O&|u:startfile", _keywords, 0};
path_t filepath = PATH_T_INITIALIZE("startfile", "filepath", 0, 0);
Py_UNICODE *operation = NULL;
if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O&|u:startfile", _keywords,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &filepath, &operation)) {
goto exit;
}
......@@ -5084,20 +5085,20 @@ PyDoc_STRVAR(os_device_encoding__doc__,
"If the device is not a terminal, return None.");
#define OS_DEVICE_ENCODING_METHODDEF \
{"device_encoding", (PyCFunction)os_device_encoding, METH_VARARGS|METH_KEYWORDS, os_device_encoding__doc__},
{"device_encoding", (PyCFunction)os_device_encoding, METH_FASTCALL, os_device_encoding__doc__},
static PyObject *
os_device_encoding_impl(PyObject *module, int fd);
static PyObject *
os_device_encoding(PyObject *module, PyObject *args, PyObject *kwargs)
os_device_encoding(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"fd", NULL};
static _PyArg_Parser _parser = {"i:device_encoding", _keywords, 0};
int fd;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&fd)) {
goto exit;
}
......@@ -5233,14 +5234,14 @@ PyDoc_STRVAR(os_getxattr__doc__,
" the link points to.");
#define OS_GETXATTR_METHODDEF \
{"getxattr", (PyCFunction)os_getxattr, METH_VARARGS|METH_KEYWORDS, os_getxattr__doc__},
{"getxattr", (PyCFunction)os_getxattr, METH_FASTCALL, os_getxattr__doc__},
static PyObject *
os_getxattr_impl(PyObject *module, path_t *path, path_t *attribute,
int follow_symlinks);
static PyObject *
os_getxattr(PyObject *module, PyObject *args, PyObject *kwargs)
os_getxattr(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "attribute", "follow_symlinks", NULL};
......@@ -5249,7 +5250,7 @@ os_getxattr(PyObject *module, PyObject *args, PyObject *kwargs)
path_t attribute = PATH_T_INITIALIZE("getxattr", "attribute", 0, 0);
int follow_symlinks = 1;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, path_converter, &attribute, &follow_symlinks)) {
goto exit;
}
......@@ -5281,14 +5282,14 @@ PyDoc_STRVAR(os_setxattr__doc__,
" the link points to.");
#define OS_SETXATTR_METHODDEF \
{"setxattr", (PyCFunction)os_setxattr, METH_VARARGS|METH_KEYWORDS, os_setxattr__doc__},
{"setxattr", (PyCFunction)os_setxattr, METH_FASTCALL, os_setxattr__doc__},
static PyObject *
os_setxattr_impl(PyObject *module, path_t *path, path_t *attribute,
Py_buffer *value, int flags, int follow_symlinks);
static PyObject *
os_setxattr(PyObject *module, PyObject *args, PyObject *kwargs)
os_setxattr(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "attribute", "value", "flags", "follow_symlinks", NULL};
......@@ -5299,7 +5300,7 @@ os_setxattr(PyObject *module, PyObject *args, PyObject *kwargs)
int flags = 0;
int follow_symlinks = 1;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, path_converter, &attribute, &value, &flags, &follow_symlinks)) {
goto exit;
}
......@@ -5334,14 +5335,14 @@ PyDoc_STRVAR(os_removexattr__doc__,
" the link points to.");
#define OS_REMOVEXATTR_METHODDEF \
{"removexattr", (PyCFunction)os_removexattr, METH_VARARGS|METH_KEYWORDS, os_removexattr__doc__},
{"removexattr", (PyCFunction)os_removexattr, METH_FASTCALL, os_removexattr__doc__},
static PyObject *
os_removexattr_impl(PyObject *module, path_t *path, path_t *attribute,
int follow_symlinks);
static PyObject *
os_removexattr(PyObject *module, PyObject *args, PyObject *kwargs)
os_removexattr(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "attribute", "follow_symlinks", NULL};
......@@ -5350,7 +5351,7 @@ os_removexattr(PyObject *module, PyObject *args, PyObject *kwargs)
path_t attribute = PATH_T_INITIALIZE("removexattr", "attribute", 0, 0);
int follow_symlinks = 1;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, path_converter, &attribute, &follow_symlinks)) {
goto exit;
}
......@@ -5382,13 +5383,13 @@ PyDoc_STRVAR(os_listxattr__doc__,
" the link points to.");
#define OS_LISTXATTR_METHODDEF \
{"listxattr", (PyCFunction)os_listxattr, METH_VARARGS|METH_KEYWORDS, os_listxattr__doc__},
{"listxattr", (PyCFunction)os_listxattr, METH_FASTCALL, os_listxattr__doc__},
static PyObject *
os_listxattr_impl(PyObject *module, path_t *path, int follow_symlinks);
static PyObject *
os_listxattr(PyObject *module, PyObject *args, PyObject *kwargs)
os_listxattr(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", "follow_symlinks", NULL};
......@@ -5396,7 +5397,7 @@ os_listxattr(PyObject *module, PyObject *args, PyObject *kwargs)
path_t path = PATH_T_INITIALIZE("listxattr", "path", 1, 1);
int follow_symlinks = 1;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
path_converter, &path, &follow_symlinks)) {
goto exit;
}
......@@ -5602,20 +5603,20 @@ PyDoc_STRVAR(os_fspath__doc__,
"types raise a TypeError.");
#define OS_FSPATH_METHODDEF \
{"fspath", (PyCFunction)os_fspath, METH_VARARGS|METH_KEYWORDS, os_fspath__doc__},
{"fspath", (PyCFunction)os_fspath, METH_FASTCALL, os_fspath__doc__},
static PyObject *
os_fspath_impl(PyObject *module, PyObject *path);
static PyObject *
os_fspath(PyObject *module, PyObject *args, PyObject *kwargs)
os_fspath(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"path", NULL};
static _PyArg_Parser _parser = {"O:fspath", _keywords, 0};
PyObject *path;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&path)) {
goto exit;
}
......@@ -5634,13 +5635,13 @@ PyDoc_STRVAR(os_getrandom__doc__,
"Obtain a series of random bytes.");
#define OS_GETRANDOM_METHODDEF \
{"getrandom", (PyCFunction)os_getrandom, METH_VARARGS|METH_KEYWORDS, os_getrandom__doc__},
{"getrandom", (PyCFunction)os_getrandom, METH_FASTCALL, os_getrandom__doc__},
static PyObject *
os_getrandom_impl(PyObject *module, Py_ssize_t size, int flags);
static PyObject *
os_getrandom(PyObject *module, PyObject *args, PyObject *kwargs)
os_getrandom(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"size", "flags", NULL};
......@@ -5648,7 +5649,7 @@ os_getrandom(PyObject *module, PyObject *args, PyObject *kwargs)
Py_ssize_t size;
int flags = 0;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&size, &flags)) {
goto exit;
}
......@@ -6139,4 +6140,4 @@ exit:
#ifndef OS_GETRANDOM_METHODDEF
#define OS_GETRANDOM_METHODDEF
#endif /* !defined(OS_GETRANDOM_METHODDEF) */
/*[clinic end generated code: output=fce51c7d432662c2 input=a9049054013a1b77]*/
/*[clinic end generated code: output=dfa6bc9d1f2db750 input=a9049054013a1b77]*/
......@@ -233,14 +233,14 @@ PyDoc_STRVAR(pyexpat_ParserCreate__doc__,
"Return a new XML parser object.");
#define PYEXPAT_PARSERCREATE_METHODDEF \
{"ParserCreate", (PyCFunction)pyexpat_ParserCreate, METH_VARARGS|METH_KEYWORDS, pyexpat_ParserCreate__doc__},
{"ParserCreate", (PyCFunction)pyexpat_ParserCreate, METH_FASTCALL, pyexpat_ParserCreate__doc__},
static PyObject *
pyexpat_ParserCreate_impl(PyObject *module, const char *encoding,
const char *namespace_separator, PyObject *intern);
static PyObject *
pyexpat_ParserCreate(PyObject *module, PyObject *args, PyObject *kwargs)
pyexpat_ParserCreate(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"encoding", "namespace_separator", "intern", NULL};
......@@ -249,7 +249,7 @@ pyexpat_ParserCreate(PyObject *module, PyObject *args, PyObject *kwargs)
const char *namespace_separator = NULL;
PyObject *intern = NULL;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&encoding, &namespace_separator, &intern)) {
goto exit;
}
......@@ -289,4 +289,4 @@ exit:
#ifndef PYEXPAT_XMLPARSER_USEFOREIGNDTD_METHODDEF
#define PYEXPAT_XMLPARSER_USEFOREIGNDTD_METHODDEF
#endif /* !defined(PYEXPAT_XMLPARSER_USEFOREIGNDTD_METHODDEF) */
/*[clinic end generated code: output=93cfe662f2bc48e5 input=a9049054013a1b77]*/
/*[clinic end generated code: output=e889f7c6af6cc42f input=a9049054013a1b77]*/
......@@ -72,20 +72,20 @@ PyDoc_STRVAR(_sha1_sha1__doc__,
"Return a new SHA1 hash object; optionally initialized with a string.");
#define _SHA1_SHA1_METHODDEF \
{"sha1", (PyCFunction)_sha1_sha1, METH_VARARGS|METH_KEYWORDS, _sha1_sha1__doc__},
{"sha1", (PyCFunction)_sha1_sha1, METH_FASTCALL, _sha1_sha1__doc__},
static PyObject *
_sha1_sha1_impl(PyObject *module, PyObject *string);
static PyObject *
_sha1_sha1(PyObject *module, PyObject *args, PyObject *kwargs)
_sha1_sha1(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"string", NULL};
static _PyArg_Parser _parser = {"|O:sha1", _keywords, 0};
PyObject *string = NULL;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&string)) {
goto exit;
}
......@@ -94,4 +94,4 @@ _sha1_sha1(PyObject *module, PyObject *args, PyObject *kwargs)
exit:
return return_value;
}
/*[clinic end generated code: output=549a5d08c248337d input=a9049054013a1b77]*/
/*[clinic end generated code: output=1430450f3f806895 input=a9049054013a1b77]*/
......@@ -72,20 +72,20 @@ PyDoc_STRVAR(_sha256_sha256__doc__,
"Return a new SHA-256 hash object; optionally initialized with a string.");
#define _SHA256_SHA256_METHODDEF \
{"sha256", (PyCFunction)_sha256_sha256, METH_VARARGS|METH_KEYWORDS, _sha256_sha256__doc__},
{"sha256", (PyCFunction)_sha256_sha256, METH_FASTCALL, _sha256_sha256__doc__},
static PyObject *
_sha256_sha256_impl(PyObject *module, PyObject *string);
static PyObject *
_sha256_sha256(PyObject *module, PyObject *args, PyObject *kwargs)
_sha256_sha256(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"string", NULL};
static _PyArg_Parser _parser = {"|O:sha256", _keywords, 0};
PyObject *string = NULL;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&string)) {
goto exit;
}
......@@ -102,20 +102,20 @@ PyDoc_STRVAR(_sha256_sha224__doc__,
"Return a new SHA-224 hash object; optionally initialized with a string.");
#define _SHA256_SHA224_METHODDEF \
{"sha224", (PyCFunction)_sha256_sha224, METH_VARARGS|METH_KEYWORDS, _sha256_sha224__doc__},
{"sha224", (PyCFunction)_sha256_sha224, METH_FASTCALL, _sha256_sha224__doc__},
static PyObject *
_sha256_sha224_impl(PyObject *module, PyObject *string);
static PyObject *
_sha256_sha224(PyObject *module, PyObject *args, PyObject *kwargs)
_sha256_sha224(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"string", NULL};
static _PyArg_Parser _parser = {"|O:sha224", _keywords, 0};
PyObject *string = NULL;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&string)) {
goto exit;
}
......@@ -124,4 +124,4 @@ _sha256_sha224(PyObject *module, PyObject *args, PyObject *kwargs)
exit:
return return_value;
}
/*[clinic end generated code: output=a1296ba6d0780051 input=a9049054013a1b77]*/
/*[clinic end generated code: output=19439d70db7ead5c input=a9049054013a1b77]*/
......@@ -72,20 +72,20 @@ PyDoc_STRVAR(_sha512_sha512__doc__,
"Return a new SHA-512 hash object; optionally initialized with a string.");
#define _SHA512_SHA512_METHODDEF \
{"sha512", (PyCFunction)_sha512_sha512, METH_VARARGS|METH_KEYWORDS, _sha512_sha512__doc__},
{"sha512", (PyCFunction)_sha512_sha512, METH_FASTCALL, _sha512_sha512__doc__},
static PyObject *
_sha512_sha512_impl(PyObject *module, PyObject *string);
static PyObject *
_sha512_sha512(PyObject *module, PyObject *args, PyObject *kwargs)
_sha512_sha512(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"string", NULL};
static _PyArg_Parser _parser = {"|O:sha512", _keywords, 0};
PyObject *string = NULL;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&string)) {
goto exit;
}
......@@ -102,20 +102,20 @@ PyDoc_STRVAR(_sha512_sha384__doc__,
"Return a new SHA-384 hash object; optionally initialized with a string.");
#define _SHA512_SHA384_METHODDEF \
{"sha384", (PyCFunction)_sha512_sha384, METH_VARARGS|METH_KEYWORDS, _sha512_sha384__doc__},
{"sha384", (PyCFunction)_sha512_sha384, METH_FASTCALL, _sha512_sha384__doc__},
static PyObject *
_sha512_sha384_impl(PyObject *module, PyObject *string);
static PyObject *
_sha512_sha384(PyObject *module, PyObject *args, PyObject *kwargs)
_sha512_sha384(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"string", NULL};
static _PyArg_Parser _parser = {"|O:sha384", _keywords, 0};
PyObject *string = NULL;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&string)) {
goto exit;
}
......@@ -124,4 +124,4 @@ _sha512_sha384(PyObject *module, PyObject *args, PyObject *kwargs)
exit:
return return_value;
}
/*[clinic end generated code: output=8f7f6603a9c4e910 input=a9049054013a1b77]*/
/*[clinic end generated code: output=18f15598c3487045 input=a9049054013a1b77]*/
......@@ -14,13 +14,13 @@ PyDoc_STRVAR(zlib_compress__doc__,
" Compression level, in 0-9 or -1.");
#define ZLIB_COMPRESS_METHODDEF \
{"compress", (PyCFunction)zlib_compress, METH_VARARGS|METH_KEYWORDS, zlib_compress__doc__},
{"compress", (PyCFunction)zlib_compress, METH_FASTCALL, zlib_compress__doc__},
static PyObject *
zlib_compress_impl(PyObject *module, Py_buffer *data, int level);
static PyObject *
zlib_compress(PyObject *module, PyObject *args, PyObject *kwargs)
zlib_compress(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"", "level", NULL};
......@@ -28,7 +28,7 @@ zlib_compress(PyObject *module, PyObject *args, PyObject *kwargs)
Py_buffer data = {NULL, NULL};
int level = Z_DEFAULT_COMPRESSION;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&data, &level)) {
goto exit;
}
......@@ -57,14 +57,14 @@ PyDoc_STRVAR(zlib_decompress__doc__,
" The initial output buffer size.");
#define ZLIB_DECOMPRESS_METHODDEF \
{"decompress", (PyCFunction)zlib_decompress, METH_VARARGS|METH_KEYWORDS, zlib_decompress__doc__},
{"decompress", (PyCFunction)zlib_decompress, METH_FASTCALL, zlib_decompress__doc__},
static PyObject *
zlib_decompress_impl(PyObject *module, Py_buffer *data, int wbits,
Py_ssize_t bufsize);
static PyObject *
zlib_decompress(PyObject *module, PyObject *args, PyObject *kwargs)
zlib_decompress(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"", "wbits", "bufsize", NULL};
......@@ -73,7 +73,7 @@ zlib_decompress(PyObject *module, PyObject *args, PyObject *kwargs)
int wbits = MAX_WBITS;
Py_ssize_t bufsize = DEF_BUF_SIZE;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&data, &wbits, ssize_t_converter, &bufsize)) {
goto exit;
}
......@@ -119,14 +119,14 @@ PyDoc_STRVAR(zlib_compressobj__doc__,
" containing subsequences that are likely to occur in the input data.");
#define ZLIB_COMPRESSOBJ_METHODDEF \
{"compressobj", (PyCFunction)zlib_compressobj, METH_VARARGS|METH_KEYWORDS, zlib_compressobj__doc__},
{"compressobj", (PyCFunction)zlib_compressobj, METH_FASTCALL, zlib_compressobj__doc__},
static PyObject *
zlib_compressobj_impl(PyObject *module, int level, int method, int wbits,
int memLevel, int strategy, Py_buffer *zdict);
static PyObject *
zlib_compressobj(PyObject *module, PyObject *args, PyObject *kwargs)
zlib_compressobj(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"level", "method", "wbits", "memLevel", "strategy", "zdict", NULL};
......@@ -138,7 +138,7 @@ zlib_compressobj(PyObject *module, PyObject *args, PyObject *kwargs)
int strategy = Z_DEFAULT_STRATEGY;
Py_buffer zdict = {NULL, NULL};
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&level, &method, &wbits, &memLevel, &strategy, &zdict)) {
goto exit;
}
......@@ -166,13 +166,13 @@ PyDoc_STRVAR(zlib_decompressobj__doc__,
" dictionary as used by the compressor that produced the input data.");
#define ZLIB_DECOMPRESSOBJ_METHODDEF \
{"decompressobj", (PyCFunction)zlib_decompressobj, METH_VARARGS|METH_KEYWORDS, zlib_decompressobj__doc__},
{"decompressobj", (PyCFunction)zlib_decompressobj, METH_FASTCALL, zlib_decompressobj__doc__},
static PyObject *
zlib_decompressobj_impl(PyObject *module, int wbits, PyObject *zdict);
static PyObject *
zlib_decompressobj(PyObject *module, PyObject *args, PyObject *kwargs)
zlib_decompressobj(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"wbits", "zdict", NULL};
......@@ -180,7 +180,7 @@ zlib_decompressobj(PyObject *module, PyObject *args, PyObject *kwargs)
int wbits = MAX_WBITS;
PyObject *zdict = NULL;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&wbits, &zdict)) {
goto exit;
}
......@@ -247,14 +247,14 @@ PyDoc_STRVAR(zlib_Decompress_decompress__doc__,
"Call the flush() method to clear these buffers.");
#define ZLIB_DECOMPRESS_DECOMPRESS_METHODDEF \
{"decompress", (PyCFunction)zlib_Decompress_decompress, METH_VARARGS|METH_KEYWORDS, zlib_Decompress_decompress__doc__},
{"decompress", (PyCFunction)zlib_Decompress_decompress, METH_FASTCALL, zlib_Decompress_decompress__doc__},
static PyObject *
zlib_Decompress_decompress_impl(compobject *self, Py_buffer *data,
Py_ssize_t max_length);
static PyObject *
zlib_Decompress_decompress(compobject *self, PyObject *args, PyObject *kwargs)
zlib_Decompress_decompress(compobject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"", "max_length", NULL};
......@@ -262,7 +262,7 @@ zlib_Decompress_decompress(compobject *self, PyObject *args, PyObject *kwargs)
Py_buffer data = {NULL, NULL};
Py_ssize_t max_length = 0;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&data, ssize_t_converter, &max_length)) {
goto exit;
}
......@@ -467,4 +467,4 @@ exit:
#ifndef ZLIB_COMPRESS_COPY_METHODDEF
#define ZLIB_COMPRESS_COPY_METHODDEF
#endif /* !defined(ZLIB_COMPRESS_COPY_METHODDEF) */
/*[clinic end generated code: output=48911ef429b65903 input=a9049054013a1b77]*/
/*[clinic end generated code: output=3a4e2bfe750423a3 input=a9049054013a1b77]*/
......@@ -51,14 +51,14 @@ PyDoc_STRVAR(bytearray_translate__doc__,
"The remaining characters are mapped through the given translation table.");
#define BYTEARRAY_TRANSLATE_METHODDEF \
{"translate", (PyCFunction)bytearray_translate, METH_VARARGS|METH_KEYWORDS, bytearray_translate__doc__},
{"translate", (PyCFunction)bytearray_translate, METH_FASTCALL, bytearray_translate__doc__},
static PyObject *
bytearray_translate_impl(PyByteArrayObject *self, PyObject *table,
PyObject *deletechars);
static PyObject *
bytearray_translate(PyByteArrayObject *self, PyObject *args, PyObject *kwargs)
bytearray_translate(PyByteArrayObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"", "delete", NULL};
......@@ -66,7 +66,7 @@ bytearray_translate(PyByteArrayObject *self, PyObject *args, PyObject *kwargs)
PyObject *table;
PyObject *deletechars = NULL;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&table, &deletechars)) {
goto exit;
}
......@@ -181,14 +181,14 @@ PyDoc_STRVAR(bytearray_split__doc__,
" -1 (the default value) means no limit.");
#define BYTEARRAY_SPLIT_METHODDEF \
{"split", (PyCFunction)bytearray_split, METH_VARARGS|METH_KEYWORDS, bytearray_split__doc__},
{"split", (PyCFunction)bytearray_split, METH_FASTCALL, bytearray_split__doc__},
static PyObject *
bytearray_split_impl(PyByteArrayObject *self, PyObject *sep,
Py_ssize_t maxsplit);
static PyObject *
bytearray_split(PyByteArrayObject *self, PyObject *args, PyObject *kwargs)
bytearray_split(PyByteArrayObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"sep", "maxsplit", NULL};
......@@ -196,7 +196,7 @@ bytearray_split(PyByteArrayObject *self, PyObject *args, PyObject *kwargs)
PyObject *sep = Py_None;
Py_ssize_t maxsplit = -1;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&sep, &maxsplit)) {
goto exit;
}
......@@ -255,14 +255,14 @@ PyDoc_STRVAR(bytearray_rsplit__doc__,
"Splitting is done starting at the end of the bytearray and working to the front.");
#define BYTEARRAY_RSPLIT_METHODDEF \
{"rsplit", (PyCFunction)bytearray_rsplit, METH_VARARGS|METH_KEYWORDS, bytearray_rsplit__doc__},
{"rsplit", (PyCFunction)bytearray_rsplit, METH_FASTCALL, bytearray_rsplit__doc__},
static PyObject *
bytearray_rsplit_impl(PyByteArrayObject *self, PyObject *sep,
Py_ssize_t maxsplit);
static PyObject *
bytearray_rsplit(PyByteArrayObject *self, PyObject *args, PyObject *kwargs)
bytearray_rsplit(PyByteArrayObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"sep", "maxsplit", NULL};
......@@ -270,7 +270,7 @@ bytearray_rsplit(PyByteArrayObject *self, PyObject *args, PyObject *kwargs)
PyObject *sep = Py_None;
Py_ssize_t maxsplit = -1;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&sep, &maxsplit)) {
goto exit;
}
......@@ -547,14 +547,14 @@ PyDoc_STRVAR(bytearray_decode__doc__,
" can handle UnicodeDecodeErrors.");
#define BYTEARRAY_DECODE_METHODDEF \
{"decode", (PyCFunction)bytearray_decode, METH_VARARGS|METH_KEYWORDS, bytearray_decode__doc__},
{"decode", (PyCFunction)bytearray_decode, METH_FASTCALL, bytearray_decode__doc__},
static PyObject *
bytearray_decode_impl(PyByteArrayObject *self, const char *encoding,
const char *errors);
static PyObject *
bytearray_decode(PyByteArrayObject *self, PyObject *args, PyObject *kwargs)
bytearray_decode(PyByteArrayObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"encoding", "errors", NULL};
......@@ -562,7 +562,7 @@ bytearray_decode(PyByteArrayObject *self, PyObject *args, PyObject *kwargs)
const char *encoding = NULL;
const char *errors = NULL;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&encoding, &errors)) {
goto exit;
}
......@@ -595,20 +595,20 @@ PyDoc_STRVAR(bytearray_splitlines__doc__,
"true.");
#define BYTEARRAY_SPLITLINES_METHODDEF \
{"splitlines", (PyCFunction)bytearray_splitlines, METH_VARARGS|METH_KEYWORDS, bytearray_splitlines__doc__},
{"splitlines", (PyCFunction)bytearray_splitlines, METH_FASTCALL, bytearray_splitlines__doc__},
static PyObject *
bytearray_splitlines_impl(PyByteArrayObject *self, int keepends);
static PyObject *
bytearray_splitlines(PyByteArrayObject *self, PyObject *args, PyObject *kwargs)
bytearray_splitlines(PyByteArrayObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"keepends", NULL};
static _PyArg_Parser _parser = {"|i:splitlines", _keywords, 0};
int keepends = 0;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&keepends)) {
goto exit;
}
......@@ -711,4 +711,4 @@ bytearray_sizeof(PyByteArrayObject *self, PyObject *Py_UNUSED(ignored))
{
return bytearray_sizeof_impl(self);
}
/*[clinic end generated code: output=59a0c86b29ff06d1 input=a9049054013a1b77]*/
/*[clinic end generated code: output=225342a680391b9c input=a9049054013a1b77]*/
......@@ -17,13 +17,13 @@ PyDoc_STRVAR(bytes_split__doc__,
" -1 (the default value) means no limit.");
#define BYTES_SPLIT_METHODDEF \
{"split", (PyCFunction)bytes_split, METH_VARARGS|METH_KEYWORDS, bytes_split__doc__},
{"split", (PyCFunction)bytes_split, METH_FASTCALL, bytes_split__doc__},
static PyObject *
bytes_split_impl(PyBytesObject *self, PyObject *sep, Py_ssize_t maxsplit);
static PyObject *
bytes_split(PyBytesObject *self, PyObject *args, PyObject *kwargs)
bytes_split(PyBytesObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"sep", "maxsplit", NULL};
......@@ -31,7 +31,7 @@ bytes_split(PyBytesObject *self, PyObject *args, PyObject *kwargs)
PyObject *sep = Py_None;
Py_ssize_t maxsplit = -1;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&sep, &maxsplit)) {
goto exit;
}
......@@ -136,13 +136,13 @@ PyDoc_STRVAR(bytes_rsplit__doc__,
"Splitting is done starting at the end of the bytes and working to the front.");
#define BYTES_RSPLIT_METHODDEF \
{"rsplit", (PyCFunction)bytes_rsplit, METH_VARARGS|METH_KEYWORDS, bytes_rsplit__doc__},
{"rsplit", (PyCFunction)bytes_rsplit, METH_FASTCALL, bytes_rsplit__doc__},
static PyObject *
bytes_rsplit_impl(PyBytesObject *self, PyObject *sep, Py_ssize_t maxsplit);
static PyObject *
bytes_rsplit(PyBytesObject *self, PyObject *args, PyObject *kwargs)
bytes_rsplit(PyBytesObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"sep", "maxsplit", NULL};
......@@ -150,7 +150,7 @@ bytes_rsplit(PyBytesObject *self, PyObject *args, PyObject *kwargs)
PyObject *sep = Py_None;
Py_ssize_t maxsplit = -1;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&sep, &maxsplit)) {
goto exit;
}
......@@ -281,14 +281,14 @@ PyDoc_STRVAR(bytes_translate__doc__,
"The remaining characters are mapped through the given translation table.");
#define BYTES_TRANSLATE_METHODDEF \
{"translate", (PyCFunction)bytes_translate, METH_VARARGS|METH_KEYWORDS, bytes_translate__doc__},
{"translate", (PyCFunction)bytes_translate, METH_FASTCALL, bytes_translate__doc__},
static PyObject *
bytes_translate_impl(PyBytesObject *self, PyObject *table,
PyObject *deletechars);
static PyObject *
bytes_translate(PyBytesObject *self, PyObject *args, PyObject *kwargs)
bytes_translate(PyBytesObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"", "delete", NULL};
......@@ -296,7 +296,7 @@ bytes_translate(PyBytesObject *self, PyObject *args, PyObject *kwargs)
PyObject *table;
PyObject *deletechars = NULL;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&table, &deletechars)) {
goto exit;
}
......@@ -412,14 +412,14 @@ PyDoc_STRVAR(bytes_decode__doc__,
" can handle UnicodeDecodeErrors.");
#define BYTES_DECODE_METHODDEF \
{"decode", (PyCFunction)bytes_decode, METH_VARARGS|METH_KEYWORDS, bytes_decode__doc__},
{"decode", (PyCFunction)bytes_decode, METH_FASTCALL, bytes_decode__doc__},
static PyObject *
bytes_decode_impl(PyBytesObject *self, const char *encoding,
const char *errors);
static PyObject *
bytes_decode(PyBytesObject *self, PyObject *args, PyObject *kwargs)
bytes_decode(PyBytesObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"encoding", "errors", NULL};
......@@ -427,7 +427,7 @@ bytes_decode(PyBytesObject *self, PyObject *args, PyObject *kwargs)
const char *encoding = NULL;
const char *errors = NULL;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&encoding, &errors)) {
goto exit;
}
......@@ -447,20 +447,20 @@ PyDoc_STRVAR(bytes_splitlines__doc__,
"true.");
#define BYTES_SPLITLINES_METHODDEF \
{"splitlines", (PyCFunction)bytes_splitlines, METH_VARARGS|METH_KEYWORDS, bytes_splitlines__doc__},
{"splitlines", (PyCFunction)bytes_splitlines, METH_FASTCALL, bytes_splitlines__doc__},
static PyObject *
bytes_splitlines_impl(PyBytesObject *self, int keepends);
static PyObject *
bytes_splitlines(PyBytesObject *self, PyObject *args, PyObject *kwargs)
bytes_splitlines(PyBytesObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"keepends", NULL};
static _PyArg_Parser _parser = {"|i:splitlines", _keywords, 0};
int keepends = 0;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&keepends)) {
goto exit;
}
......@@ -499,4 +499,4 @@ bytes_fromhex(PyTypeObject *type, PyObject *arg)
exit:
return return_value;
}
/*[clinic end generated code: output=5618c05c24c1e617 input=a9049054013a1b77]*/
/*[clinic end generated code: output=2dc3c93cfd2dc440 input=a9049054013a1b77]*/
......@@ -77,14 +77,14 @@ PyDoc_STRVAR(winreg_HKEYType___exit____doc__,
"\n");
#define WINREG_HKEYTYPE___EXIT___METHODDEF \
{"__exit__", (PyCFunction)winreg_HKEYType___exit__, METH_VARARGS|METH_KEYWORDS, winreg_HKEYType___exit____doc__},
{"__exit__", (PyCFunction)winreg_HKEYType___exit__, METH_FASTCALL, winreg_HKEYType___exit____doc__},
static PyObject *
winreg_HKEYType___exit___impl(PyHKEYObject *self, PyObject *exc_type,
PyObject *exc_value, PyObject *traceback);
static PyObject *
winreg_HKEYType___exit__(PyHKEYObject *self, PyObject *args, PyObject *kwargs)
winreg_HKEYType___exit__(PyHKEYObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"exc_type", "exc_value", "traceback", NULL};
......@@ -93,7 +93,7 @@ winreg_HKEYType___exit__(PyHKEYObject *self, PyObject *args, PyObject *kwargs)
PyObject *exc_value;
PyObject *traceback;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&exc_type, &exc_value, &traceback)) {
goto exit;
}
......@@ -235,14 +235,14 @@ PyDoc_STRVAR(winreg_CreateKeyEx__doc__,
"If the function fails, an OSError exception is raised.");
#define WINREG_CREATEKEYEX_METHODDEF \
{"CreateKeyEx", (PyCFunction)winreg_CreateKeyEx, METH_VARARGS|METH_KEYWORDS, winreg_CreateKeyEx__doc__},
{"CreateKeyEx", (PyCFunction)winreg_CreateKeyEx, METH_FASTCALL, winreg_CreateKeyEx__doc__},
static HKEY
winreg_CreateKeyEx_impl(PyObject *module, HKEY key, Py_UNICODE *sub_key,
int reserved, REGSAM access);
static PyObject *
winreg_CreateKeyEx(PyObject *module, PyObject *args, PyObject *kwargs)
winreg_CreateKeyEx(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"key", "sub_key", "reserved", "access", NULL};
......@@ -253,7 +253,7 @@ winreg_CreateKeyEx(PyObject *module, PyObject *args, PyObject *kwargs)
REGSAM access = KEY_WRITE;
HKEY _return_value;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
clinic_HKEY_converter, &key, &sub_key, &reserved, &access)) {
goto exit;
}
......@@ -334,14 +334,14 @@ PyDoc_STRVAR(winreg_DeleteKeyEx__doc__,
"On unsupported Windows versions, NotImplementedError is raised.");
#define WINREG_DELETEKEYEX_METHODDEF \
{"DeleteKeyEx", (PyCFunction)winreg_DeleteKeyEx, METH_VARARGS|METH_KEYWORDS, winreg_DeleteKeyEx__doc__},
{"DeleteKeyEx", (PyCFunction)winreg_DeleteKeyEx, METH_FASTCALL, winreg_DeleteKeyEx__doc__},
static PyObject *
winreg_DeleteKeyEx_impl(PyObject *module, HKEY key, Py_UNICODE *sub_key,
REGSAM access, int reserved);
static PyObject *
winreg_DeleteKeyEx(PyObject *module, PyObject *args, PyObject *kwargs)
winreg_DeleteKeyEx(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"key", "sub_key", "access", "reserved", NULL};
......@@ -351,7 +351,7 @@ winreg_DeleteKeyEx(PyObject *module, PyObject *args, PyObject *kwargs)
REGSAM access = KEY_WOW64_64KEY;
int reserved = 0;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
clinic_HKEY_converter, &key, &sub_key, &access, &reserved)) {
goto exit;
}
......@@ -620,14 +620,14 @@ PyDoc_STRVAR(winreg_OpenKey__doc__,
"If the function fails, an OSError exception is raised.");
#define WINREG_OPENKEY_METHODDEF \
{"OpenKey", (PyCFunction)winreg_OpenKey, METH_VARARGS|METH_KEYWORDS, winreg_OpenKey__doc__},
{"OpenKey", (PyCFunction)winreg_OpenKey, METH_FASTCALL, winreg_OpenKey__doc__},
static HKEY
winreg_OpenKey_impl(PyObject *module, HKEY key, Py_UNICODE *sub_key,
int reserved, REGSAM access);
static PyObject *
winreg_OpenKey(PyObject *module, PyObject *args, PyObject *kwargs)
winreg_OpenKey(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"key", "sub_key", "reserved", "access", NULL};
......@@ -638,7 +638,7 @@ winreg_OpenKey(PyObject *module, PyObject *args, PyObject *kwargs)
REGSAM access = KEY_READ;
HKEY _return_value;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
clinic_HKEY_converter, &key, &sub_key, &reserved, &access)) {
goto exit;
}
......@@ -672,14 +672,14 @@ PyDoc_STRVAR(winreg_OpenKeyEx__doc__,
"If the function fails, an OSError exception is raised.");
#define WINREG_OPENKEYEX_METHODDEF \
{"OpenKeyEx", (PyCFunction)winreg_OpenKeyEx, METH_VARARGS|METH_KEYWORDS, winreg_OpenKeyEx__doc__},
{"OpenKeyEx", (PyCFunction)winreg_OpenKeyEx, METH_FASTCALL, winreg_OpenKeyEx__doc__},
static HKEY
winreg_OpenKeyEx_impl(PyObject *module, HKEY key, Py_UNICODE *sub_key,
int reserved, REGSAM access);
static PyObject *
winreg_OpenKeyEx(PyObject *module, PyObject *args, PyObject *kwargs)
winreg_OpenKeyEx(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"key", "sub_key", "reserved", "access", NULL};
......@@ -690,7 +690,7 @@ winreg_OpenKeyEx(PyObject *module, PyObject *args, PyObject *kwargs)
REGSAM access = KEY_READ;
HKEY _return_value;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
clinic_HKEY_converter, &key, &sub_key, &reserved, &access)) {
goto exit;
}
......@@ -1091,4 +1091,4 @@ winreg_QueryReflectionKey(PyObject *module, PyObject *arg)
exit:
return return_value;
}
/*[clinic end generated code: output=5b53d19cbe3f37cd input=a9049054013a1b77]*/
/*[clinic end generated code: output=16dd06be6e14b86e input=a9049054013a1b77]*/
......@@ -14,13 +14,13 @@ PyDoc_STRVAR(winsound_PlaySound__doc__,
" Flag values, ored together. See module documentation.");
#define WINSOUND_PLAYSOUND_METHODDEF \
{"PlaySound", (PyCFunction)winsound_PlaySound, METH_VARARGS|METH_KEYWORDS, winsound_PlaySound__doc__},
{"PlaySound", (PyCFunction)winsound_PlaySound, METH_FASTCALL, winsound_PlaySound__doc__},
static PyObject *
winsound_PlaySound_impl(PyObject *module, PyObject *sound, int flags);
static PyObject *
winsound_PlaySound(PyObject *module, PyObject *args, PyObject *kwargs)
winsound_PlaySound(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"sound", "flags", NULL};
......@@ -28,7 +28,7 @@ winsound_PlaySound(PyObject *module, PyObject *args, PyObject *kwargs)
PyObject *sound;
int flags;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&sound, &flags)) {
goto exit;
}
......@@ -51,13 +51,13 @@ PyDoc_STRVAR(winsound_Beep__doc__,
" How long the sound should play, in milliseconds.");
#define WINSOUND_BEEP_METHODDEF \
{"Beep", (PyCFunction)winsound_Beep, METH_VARARGS|METH_KEYWORDS, winsound_Beep__doc__},
{"Beep", (PyCFunction)winsound_Beep, METH_FASTCALL, winsound_Beep__doc__},
static PyObject *
winsound_Beep_impl(PyObject *module, int frequency, int duration);
static PyObject *
winsound_Beep(PyObject *module, PyObject *args, PyObject *kwargs)
winsound_Beep(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"frequency", "duration", NULL};
......@@ -65,7 +65,7 @@ winsound_Beep(PyObject *module, PyObject *args, PyObject *kwargs)
int frequency;
int duration;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&frequency, &duration)) {
goto exit;
}
......@@ -84,20 +84,20 @@ PyDoc_STRVAR(winsound_MessageBeep__doc__,
"x defaults to MB_OK.");
#define WINSOUND_MESSAGEBEEP_METHODDEF \
{"MessageBeep", (PyCFunction)winsound_MessageBeep, METH_VARARGS|METH_KEYWORDS, winsound_MessageBeep__doc__},
{"MessageBeep", (PyCFunction)winsound_MessageBeep, METH_FASTCALL, winsound_MessageBeep__doc__},
static PyObject *
winsound_MessageBeep_impl(PyObject *module, int type);
static PyObject *
winsound_MessageBeep(PyObject *module, PyObject *args, PyObject *kwargs)
winsound_MessageBeep(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"type", NULL};
static _PyArg_Parser _parser = {"|i:MessageBeep", _keywords, 0};
int type = MB_OK;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&type)) {
goto exit;
}
......@@ -106,4 +106,4 @@ winsound_MessageBeep(PyObject *module, PyObject *args, PyObject *kwargs)
exit:
return return_value;
}
/*[clinic end generated code: output=40b3d3ef2faefb15 input=a9049054013a1b77]*/
/*[clinic end generated code: output=bfe16b2b8b490cb1 input=a9049054013a1b77]*/
......@@ -148,7 +148,7 @@ PyDoc_STRVAR(builtin_compile__doc__,
"in addition to any features explicitly specified.");
#define BUILTIN_COMPILE_METHODDEF \
{"compile", (PyCFunction)builtin_compile, METH_VARARGS|METH_KEYWORDS, builtin_compile__doc__},
{"compile", (PyCFunction)builtin_compile, METH_FASTCALL, builtin_compile__doc__},
static PyObject *
builtin_compile_impl(PyObject *module, PyObject *source, PyObject *filename,
......@@ -156,7 +156,7 @@ builtin_compile_impl(PyObject *module, PyObject *source, PyObject *filename,
int optimize);
static PyObject *
builtin_compile(PyObject *module, PyObject *args, PyObject *kwargs)
builtin_compile(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
{
PyObject *return_value = NULL;
static const char * const _keywords[] = {"source", "filename", "mode", "flags", "dont_inherit", "optimize", NULL};
......@@ -168,7 +168,7 @@ builtin_compile(PyObject *module, PyObject *args, PyObject *kwargs)
int dont_inherit = 0;
int optimize = -1;
if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
&source, PyUnicode_FSDecoder, &filename, &mode, &flags, &dont_inherit, &optimize)) {
goto exit;
}
......@@ -674,4 +674,4 @@ builtin_issubclass(PyObject *module, PyObject *args)
exit:
return return_value;
}
/*[clinic end generated code: output=790cb3d26531dfda input=a9049054013a1b77]*/
/*[clinic end generated code: output=63483deb75805f7c input=a9049054013a1b77]*/
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment