generated by Argument Clinic. Patch by Petr Viktorin.
[clinic start generated code]*/
static PyObject *
- _codecs_utf_7_encode_impl(PyModuleDef *module, PyObject *str,
+ _codecs_utf_7_encode_impl(PyObject *module, PyObject *str,
const char *errors)
- /*[clinic end generated code: output=a7accc496a32b759 input=d1a47579e79cbe15]*/
-/*[clinic end generated code: output=0feda21ffc921bc8 input=fd91a78f103b0421]*/
++/*[clinic end generated code: output=0feda21ffc921bc8 input=d1a47579e79cbe15]*/
{
- PyObject *v;
-
- str = PyUnicode_FromObject(str);
- if (str == NULL || PyUnicode_READY(str) < 0) {
- Py_XDECREF(str);
- return NULL;
- }
- v = codec_tuple(_PyUnicode_EncodeUTF7(str, 0, 0, errors),
- PyUnicode_GET_LENGTH(str));
- Py_DECREF(str);
- return v;
+ return codec_tuple(_PyUnicode_EncodeUTF7(str, 0, 0, errors),
+ PyUnicode_GET_LENGTH(str));
}
/*[clinic input]
[clinic start generated code]*/
static PyObject *
- _codecs_utf_8_encode_impl(PyModuleDef *module, PyObject *str,
+ _codecs_utf_8_encode_impl(PyObject *module, PyObject *str,
const char *errors)
- /*[clinic end generated code: output=ec831d80e7aedede input=42e3ba73c4392eef]*/
-/*[clinic end generated code: output=02bf47332b9c796c input=2c22d40532f071f3]*/
++/*[clinic end generated code: output=02bf47332b9c796c input=42e3ba73c4392eef]*/
{
- PyObject *v;
-
- str = PyUnicode_FromObject(str);
- if (str == NULL || PyUnicode_READY(str) < 0) {
- Py_XDECREF(str);
- return NULL;
- }
- v = codec_tuple(PyUnicode_AsEncodedString(str, "utf-8", errors),
- PyUnicode_GET_LENGTH(str));
- Py_DECREF(str);
- return v;
+ return codec_tuple(_PyUnicode_AsUTF8String(str, errors),
+ PyUnicode_GET_LENGTH(str));
}
/* This version provides access to the byteorder parameter of the
[clinic start generated code]*/
static PyObject *
- _codecs_utf_16_encode_impl(PyModuleDef *module, PyObject *str,
+ _codecs_utf_16_encode_impl(PyObject *module, PyObject *str,
const char *errors, int byteorder)
- /*[clinic end generated code: output=93ac58e960a9ee4d input=ff46416b04edb944]*/
-/*[clinic end generated code: output=c654e13efa2e64e4 input=3935a489b2d5385e]*/
++/*[clinic end generated code: output=c654e13efa2e64e4 input=ff46416b04edb944]*/
{
- PyObject *v;
-
- str = PyUnicode_FromObject(str);
- if (str == NULL || PyUnicode_READY(str) < 0) {
- Py_XDECREF(str);
- return NULL;
- }
- v = codec_tuple(_PyUnicode_EncodeUTF16(str, errors, byteorder),
- PyUnicode_GET_LENGTH(str));
- Py_DECREF(str);
- return v;
+ return codec_tuple(_PyUnicode_EncodeUTF16(str, errors, byteorder),
+ PyUnicode_GET_LENGTH(str));
}
/*[clinic input]
[clinic start generated code]*/
static PyObject *
- _codecs_utf_16_le_encode_impl(PyModuleDef *module, PyObject *str,
+ _codecs_utf_16_le_encode_impl(PyObject *module, PyObject *str,
const char *errors)
- /*[clinic end generated code: output=422bedb8da34fb66 input=cb385455ea8f2fe0]*/
-/*[clinic end generated code: output=431b01e55f2d4995 input=bc27df05d1d20dfe]*/
++/*[clinic end generated code: output=431b01e55f2d4995 input=cb385455ea8f2fe0]*/
{
- PyObject *v;
-
- str = PyUnicode_FromObject(str);
- if (str == NULL || PyUnicode_READY(str) < 0) {
- Py_XDECREF(str);
- return NULL;
- }
- v = codec_tuple(_PyUnicode_EncodeUTF16(str, errors, -1),
- PyUnicode_GET_LENGTH(str));
- Py_DECREF(str);
- return v;
+ return codec_tuple(_PyUnicode_EncodeUTF16(str, errors, -1),
+ PyUnicode_GET_LENGTH(str));
}
/*[clinic input]
[clinic start generated code]*/
static PyObject *
- _codecs_utf_16_be_encode_impl(PyModuleDef *module, PyObject *str,
+ _codecs_utf_16_be_encode_impl(PyObject *module, PyObject *str,
const char *errors)
- /*[clinic end generated code: output=3aa7ee9502acdd77 input=9119997066bdaefd]*/
-/*[clinic end generated code: output=96886a6fd54dcae3 input=5a69d4112763462b]*/
++/*[clinic end generated code: output=96886a6fd54dcae3 input=9119997066bdaefd]*/
{
- PyObject *v;
-
- str = PyUnicode_FromObject(str);
- if (str == NULL || PyUnicode_READY(str) < 0) {
- Py_XDECREF(str);
- return NULL;
- }
- v = codec_tuple(_PyUnicode_EncodeUTF16(str, errors, +1),
- PyUnicode_GET_LENGTH(str));
- Py_DECREF(str);
- return v;
+ return codec_tuple(_PyUnicode_EncodeUTF16(str, errors, +1),
+ PyUnicode_GET_LENGTH(str));
}
/* This version provides access to the byteorder parameter of the
[clinic start generated code]*/
static PyObject *
- _codecs_utf_32_encode_impl(PyModuleDef *module, PyObject *str,
+ _codecs_utf_32_encode_impl(PyObject *module, PyObject *str,
const char *errors, int byteorder)
- /*[clinic end generated code: output=3e7d5a003b02baed input=c5e77da82fbe5c2a]*/
-/*[clinic end generated code: output=5c760da0c09a8b83 input=434a1efa492b8d58]*/
++/*[clinic end generated code: output=5c760da0c09a8b83 input=c5e77da82fbe5c2a]*/
{
- PyObject *v;
-
- str = PyUnicode_FromObject(str);
- if (str == NULL || PyUnicode_READY(str) < 0) {
- Py_XDECREF(str);
- return NULL;
- }
- v = codec_tuple(_PyUnicode_EncodeUTF32(str, errors, byteorder),
- PyUnicode_GET_LENGTH(str));
- Py_DECREF(str);
- return v;
+ return codec_tuple(_PyUnicode_EncodeUTF32(str, errors, byteorder),
+ PyUnicode_GET_LENGTH(str));
}
/*[clinic input]
[clinic start generated code]*/
static PyObject *
- _codecs_utf_32_le_encode_impl(PyModuleDef *module, PyObject *str,
+ _codecs_utf_32_le_encode_impl(PyObject *module, PyObject *str,
const char *errors)
- /*[clinic end generated code: output=5dda641cd33dbfc2 input=9993b25fe0877848]*/
-/*[clinic end generated code: output=b65cd176de8e36d6 input=dfa2d7dc78b99422]*/
++/*[clinic end generated code: output=b65cd176de8e36d6 input=9993b25fe0877848]*/
{
- PyObject *v;
-
- str = PyUnicode_FromObject(str);
- if (str == NULL || PyUnicode_READY(str) < 0) {
- Py_XDECREF(str);
- return NULL;
- }
- v = codec_tuple(_PyUnicode_EncodeUTF32(str, errors, -1),
- PyUnicode_GET_LENGTH(str));
- Py_DECREF(str);
- return v;
+ return codec_tuple(_PyUnicode_EncodeUTF32(str, errors, -1),
+ PyUnicode_GET_LENGTH(str));
}
/*[clinic input]
[clinic start generated code]*/
static PyObject *
- _codecs_utf_32_be_encode_impl(PyModuleDef *module, PyObject *str,
+ _codecs_utf_32_be_encode_impl(PyObject *module, PyObject *str,
const char *errors)
- /*[clinic end generated code: output=ccca8b44d91a7c7a input=d3e0ccaa02920431]*/
-/*[clinic end generated code: output=1d9e71a9358709e9 input=4595617b18169002]*/
++/*[clinic end generated code: output=1d9e71a9358709e9 input=d3e0ccaa02920431]*/
{
- PyObject *v;
-
- str = PyUnicode_FromObject(str);
- if (str == NULL || PyUnicode_READY(str) < 0) {
- Py_XDECREF(str);
- return NULL;
- }
- v = codec_tuple(_PyUnicode_EncodeUTF32(str, errors, +1),
- PyUnicode_GET_LENGTH(str));
- Py_DECREF(str);
- return v;
+ return codec_tuple(_PyUnicode_EncodeUTF32(str, errors, +1),
+ PyUnicode_GET_LENGTH(str));
}
/*[clinic input]
[clinic start generated code]*/
static PyObject *
- _codecs_unicode_escape_encode_impl(PyModuleDef *module, PyObject *str,
+ _codecs_unicode_escape_encode_impl(PyObject *module, PyObject *str,
const char *errors)
- /*[clinic end generated code: output=389f23d2b8f8d80b input=65d9eefca65b455a]*/
-/*[clinic end generated code: output=66271b30bc4f7a3c input=8273506f14076912]*/
++/*[clinic end generated code: output=66271b30bc4f7a3c input=65d9eefca65b455a]*/
{
- PyObject *v;
-
- str = PyUnicode_FromObject(str);
- if (str == NULL || PyUnicode_READY(str) < 0) {
- Py_XDECREF(str);
- return NULL;
- }
- v = codec_tuple(PyUnicode_AsUnicodeEscapeString(str),
- PyUnicode_GET_LENGTH(str));
- Py_DECREF(str);
- return v;
+ return codec_tuple(PyUnicode_AsUnicodeEscapeString(str),
+ PyUnicode_GET_LENGTH(str));
}
/*[clinic input]
[clinic start generated code]*/
static PyObject *
- _codecs_raw_unicode_escape_encode_impl(PyModuleDef *module, PyObject *str,
+ _codecs_raw_unicode_escape_encode_impl(PyObject *module, PyObject *str,
const char *errors)
- /*[clinic end generated code: output=fec4e39d6ec37a62 input=5aa33e4a133391ab]*/
-/*[clinic end generated code: output=a66a806ed01c830a input=181755d5dfacef3c]*/
++/*[clinic end generated code: output=a66a806ed01c830a input=5aa33e4a133391ab]*/
{
- PyObject *v;
-
- str = PyUnicode_FromObject(str);
- if (str == NULL || PyUnicode_READY(str) < 0) {
- Py_XDECREF(str);
- return NULL;
- }
- v = codec_tuple(PyUnicode_AsRawUnicodeEscapeString(str),
- PyUnicode_GET_LENGTH(str));
- Py_DECREF(str);
- return v;
+ return codec_tuple(PyUnicode_AsRawUnicodeEscapeString(str),
+ PyUnicode_GET_LENGTH(str));
}
/*[clinic input]
[clinic start generated code]*/
static PyObject *
- _codecs_latin_1_encode_impl(PyModuleDef *module, PyObject *str,
+ _codecs_latin_1_encode_impl(PyObject *module, PyObject *str,
const char *errors)
- /*[clinic end generated code: output=ecf00eb8e48c889c input=30b11c9e49a65150]*/
-/*[clinic end generated code: output=2c28c83a27884e08 input=f03f6dcf1d84bee4]*/
++/*[clinic end generated code: output=2c28c83a27884e08 input=30b11c9e49a65150]*/
{
- PyObject *v;
-
- str = PyUnicode_FromObject(str);
- if (str == NULL || PyUnicode_READY(str) < 0) {
- Py_XDECREF(str);
- return NULL;
- }
- v = codec_tuple(_PyUnicode_AsLatin1String(str, errors),
- PyUnicode_GET_LENGTH(str));
- Py_DECREF(str);
- return v;
+ return codec_tuple(_PyUnicode_AsLatin1String(str, errors),
+ PyUnicode_GET_LENGTH(str));
}
/*[clinic input]
[clinic start generated code]*/
static PyObject *
- _codecs_ascii_encode_impl(PyModuleDef *module, PyObject *str,
+ _codecs_ascii_encode_impl(PyObject *module, PyObject *str,
const char *errors)
- /*[clinic end generated code: output=a9d18fc6b6b91cfb input=843a1d268e6dfa8e]*/
-/*[clinic end generated code: output=b5e035182d33befc input=d87e25a10a593fee]*/
++/*[clinic end generated code: output=b5e035182d33befc input=843a1d268e6dfa8e]*/
{
- PyObject *v;
-
- str = PyUnicode_FromObject(str);
- if (str == NULL || PyUnicode_READY(str) < 0) {
- Py_XDECREF(str);
- return NULL;
- }
- v = codec_tuple(_PyUnicode_AsASCIIString(str, errors),
- PyUnicode_GET_LENGTH(str));
- Py_DECREF(str);
- return v;
+ return codec_tuple(_PyUnicode_AsASCIIString(str, errors),
+ PyUnicode_GET_LENGTH(str));
}
/*[clinic input]
[clinic start generated code]*/
static PyObject *
- _codecs_charmap_encode_impl(PyModuleDef *module, PyObject *str,
+ _codecs_charmap_encode_impl(PyObject *module, PyObject *str,
const char *errors, PyObject *mapping)
- /*[clinic end generated code: output=14ca42b83853c643 input=0752cde07a6d6d00]*/
-/*[clinic end generated code: output=047476f48495a9e9 input=85f4172661e8dad9]*/
++/*[clinic end generated code: output=047476f48495a9e9 input=0752cde07a6d6d00]*/
{
- PyObject *v;
-
if (mapping == Py_None)
mapping = NULL;
[clinic start generated code]*/
static PyObject *
- _codecs_mbcs_encode_impl(PyModuleDef *module, PyObject *str,
- const char *errors)
- /*[clinic end generated code: output=d1a013bc68798bd7 input=de471e0815947553]*/
+ _codecs_mbcs_encode_impl(PyObject *module, PyObject *str, const char *errors)
-/*[clinic end generated code: output=76e2e170c966c080 input=65c09ee1e4203263]*/
++/*[clinic end generated code: output=76e2e170c966c080 input=de471e0815947553]*/
{
- PyObject *v;
-
- str = PyUnicode_FromObject(str);
- if (str == NULL || PyUnicode_READY(str) < 0) {
- Py_XDECREF(str);
- return NULL;
- }
- v = codec_tuple(PyUnicode_EncodeCodePage(CP_ACP, str, errors),
- PyUnicode_GET_LENGTH(str));
- Py_DECREF(str);
- return v;
+ return codec_tuple(PyUnicode_EncodeCodePage(CP_ACP, str, errors),
+ PyUnicode_GET_LENGTH(str));
}
/*[clinic input]
[clinic start generated code]*/
static PyObject *
- _codecs_code_page_encode_impl(PyModuleDef *module, int code_page,
- PyObject *str, const char *errors)
- /*[clinic end generated code: output=3b406618dbfbce25 input=786421ae617d680b]*/
+ _codecs_code_page_encode_impl(PyObject *module, int code_page, PyObject *str,
+ const char *errors)
-/*[clinic end generated code: output=45673f6085657a9e input=c8562ec460c2e309]*/
++/*[clinic end generated code: output=45673f6085657a9e input=786421ae617d680b]*/
{
- PyObject *v;
-
- str = PyUnicode_FromObject(str);
- if (str == NULL || PyUnicode_READY(str) < 0) {
- Py_XDECREF(str);
- return NULL;
- }
- v = codec_tuple(PyUnicode_EncodeCodePage(code_page,
- str,
- errors),
- PyUnicode_GET_LENGTH(str));
- Py_DECREF(str);
- return v;
+ return codec_tuple(PyUnicode_EncodeCodePage(code_page, str, errors),
+ PyUnicode_GET_LENGTH(str));
}
#endif /* HAVE_MBCS */
exit:
return return_value;
}
- /*[clinic end generated code: output=079f597e71e9f0c6 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=bc2c003cb7daeafe input=a9049054013a1b77]*/
++/*[clinic end generated code: output=ae2facf262cf464e input=a9049054013a1b77]*/
[clinic start generated code]*/
static PyObject *
- binascii_a2b_uu_impl(PyModuleDef *module, Py_buffer *data)
- /*[clinic end generated code: output=5779f39b0b48459f input=7cafeaf73df63d1c]*/
+ binascii_a2b_uu_impl(PyObject *module, Py_buffer *data)
+ /*[clinic end generated code: output=e027f8e0b0598742 input=7cafeaf73df63d1c]*/
{
- unsigned char *ascii_data, *bin_data;
+ const unsigned char *ascii_data;
+ unsigned char *bin_data;
int leftbits = 0;
unsigned char this_ch;
unsigned int leftchar = 0;
[clinic start generated code]*/
static PyObject *
- binascii_b2a_uu_impl(PyModuleDef *module, Py_buffer *data)
- /*[clinic end generated code: output=181021b69bb9a414 input=00fdf458ce8b465b]*/
+ binascii_b2a_uu_impl(PyObject *module, Py_buffer *data)
+ /*[clinic end generated code: output=0070670e52e4aa6b input=00fdf458ce8b465b]*/
{
- unsigned char *ascii_data, *bin_data;
+ unsigned char *ascii_data;
+ const unsigned char *bin_data;
int leftbits = 0;
unsigned char this_ch;
unsigned int leftchar = 0;
[clinic start generated code]*/
static PyObject *
- binascii_a2b_base64_impl(PyModuleDef *module, Py_buffer *data)
- /*[clinic end generated code: output=3e351b702bed56d2 input=5872acf6e1cac243]*/
+ binascii_a2b_base64_impl(PyObject *module, Py_buffer *data)
+ /*[clinic end generated code: output=0628223f19fd3f9b input=5872acf6e1cac243]*/
{
- unsigned char *ascii_data, *bin_data;
+ const unsigned char *ascii_data;
+ unsigned char *bin_data;
int leftbits = 0;
unsigned char this_ch;
unsigned int leftchar = 0;
[clinic start generated code]*/
static PyObject *
- binascii_b2a_base64_impl(PyModuleDef *module, Py_buffer *data, int newline)
- /*[clinic end generated code: output=19e1dd719a890b50 input=7b2ea6fa38d8924c]*/
-binascii_b2a_base64_impl(PyObject *module, Py_buffer *data)
-/*[clinic end generated code: output=4d96663170778dc3 input=14ec4e47371174a9]*/
++binascii_b2a_base64_impl(PyObject *module, Py_buffer *data, int newline)
++/*[clinic end generated code: output=4ad62c8e8485d3b3 input=7b2ea6fa38d8924c]*/
{
- unsigned char *ascii_data, *bin_data;
+ unsigned char *ascii_data;
+ const unsigned char *bin_data;
int leftbits = 0;
unsigned char this_ch;
unsigned int leftchar = 0;
[clinic start generated code]*/
static PyObject *
- binascii_a2b_hqx_impl(PyModuleDef *module, Py_buffer *data)
- /*[clinic end generated code: output=60bcdbbd28b105cd input=0d914c680e0eed55]*/
+ binascii_a2b_hqx_impl(PyObject *module, Py_buffer *data)
+ /*[clinic end generated code: output=4d6d8c54d54ea1c1 input=0d914c680e0eed55]*/
{
- unsigned char *ascii_data, *bin_data;
+ const unsigned char *ascii_data;
+ unsigned char *bin_data;
int leftbits = 0;
unsigned char this_ch;
unsigned int leftchar = 0;
[clinic start generated code]*/
static PyObject *
- binascii_rlecode_hqx_impl(PyModuleDef *module, Py_buffer *data)
- /*[clinic end generated code: output=0905da344dbf0648 input=e1f1712447a82b09]*/
+ binascii_rlecode_hqx_impl(PyObject *module, Py_buffer *data)
+ /*[clinic end generated code: output=393d79338f5f5629 input=e1f1712447a82b09]*/
{
- unsigned char *in_data, *out_data;
- PyObject *rv;
+ const unsigned char *in_data;
+ unsigned char *out_data;
unsigned char ch;
Py_ssize_t in, inend, len;
+ _PyBytesWriter writer;
+ _PyBytesWriter_Init(&writer);
in_data = data->buf;
len = data->len;
[clinic start generated code]*/
static PyObject *
- binascii_b2a_hqx_impl(PyModuleDef *module, Py_buffer *data)
- /*[clinic end generated code: output=5a987810d5e3cdbb input=9596ebe019fe12ba]*/
+ binascii_b2a_hqx_impl(PyObject *module, Py_buffer *data)
+ /*[clinic end generated code: output=d0aa5a704bc9f7de input=9596ebe019fe12ba]*/
{
- unsigned char *ascii_data, *bin_data;
+ unsigned char *ascii_data;
+ const unsigned char *bin_data;
int leftbits = 0;
unsigned char this_ch;
unsigned int leftchar = 0;
[clinic start generated code]*/
static PyObject *
- binascii_rledecode_hqx_impl(PyModuleDef *module, Py_buffer *data)
- /*[clinic end generated code: output=f7afd89b789946ab input=54cdd49fc014402c]*/
+ binascii_rledecode_hqx_impl(PyObject *module, Py_buffer *data)
+ /*[clinic end generated code: output=9826619565de1c6c input=54cdd49fc014402c]*/
{
- unsigned char *in_data, *out_data;
+ const unsigned char *in_data;
+ unsigned char *out_data;
unsigned char in_byte, in_repeat;
- PyObject *rv;
- Py_ssize_t in_len, out_len, out_len_left;
+ Py_ssize_t in_len;
+ _PyBytesWriter writer;
in_data = data->buf;
in_len = data->len;
[clinic start generated code]*/
static unsigned int
- binascii_crc_hqx_impl(PyModuleDef *module, Py_buffer *data, unsigned int crc)
- /*[clinic end generated code: output=167c2dac62625717 input=add8c53712ccceda]*/
+ binascii_crc_hqx_impl(PyObject *module, Py_buffer *data, unsigned int crc)
+ /*[clinic end generated code: output=8ec2a78590d19170 input=add8c53712ccceda]*/
{
- unsigned char *bin_data;
+ const unsigned char *bin_data;
Py_ssize_t len;
crc &= 0xffff;
[clinic start generated code]*/
static PyObject *
- binascii_a2b_hex_impl(PyModuleDef *module, Py_buffer *hexstr)
- /*[clinic end generated code: output=d61da452b5c6d290 input=9e1e7f2f94db24fd]*/
+ binascii_a2b_hex_impl(PyObject *module, Py_buffer *hexstr)
+ /*[clinic end generated code: output=0cc1a139af0eeecb input=9e1e7f2f94db24fd]*/
{
- char* argbuf;
+ const char* argbuf;
Py_ssize_t arglen;
PyObject *retval;
char* retbuf;
[clinic start generated code]*/
static PyObject *
- binascii_b2a_qp_impl(PyModuleDef *module, Py_buffer *data, int quotetabs,
+ binascii_b2a_qp_impl(PyObject *module, Py_buffer *data, int quotetabs,
int istext, int header)
- /*[clinic end generated code: output=a87ca9ccb94e2a9f input=7f2a9aaa008e92b2]*/
+ /*[clinic end generated code: output=e9884472ebb1a94c input=7f2a9aaa008e92b2]*/
{
Py_ssize_t in, out;
- unsigned char *databuf, *odata;
+ const unsigned char *databuf;
+ unsigned char *odata;
Py_ssize_t datalen = 0, odatalen = 0;
PyObject *rv;
unsigned int linelen = 0;
#ifndef _CODECS_CODE_PAGE_ENCODE_METHODDEF
#define _CODECS_CODE_PAGE_ENCODE_METHODDEF
#endif /* !defined(_CODECS_CODE_PAGE_ENCODE_METHODDEF) */
- /*[clinic end generated code: output=120320fe2ac32085 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=42fed94e2ab765ba input=a9049054013a1b77]*/
++/*[clinic end generated code: output=6e89ff4423c12a9b input=a9049054013a1b77]*/
exit:
return return_value;
}
- /*[clinic end generated code: output=6977cf9917d9a684 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=e0493a9691537690 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=8dfc88264e662df4 input=a9049054013a1b77]*/
exit:
return return_value;
}
- /*[clinic end generated code: output=97f8b6f542973b71 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=fff12f168cdf8b43 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=99adf966ef0475ff input=a9049054013a1b77]*/
exit:
return return_value;
}
- /*[clinic end generated code: output=418849fb5dbe69a5 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=9ac7a89858a9765f input=a9049054013a1b77]*/
++/*[clinic end generated code: output=ed0f5d4e3d79b80c input=a9049054013a1b77]*/
return return_value;
}
- /*[clinic end generated code: output=804aed7d196ba52e input=a9049054013a1b77]*/
-/*[clinic end generated code: output=fada06020fd318cc input=a9049054013a1b77]*/
++/*[clinic end generated code: output=25bf57a0845d147a input=a9049054013a1b77]*/
exit:
return return_value;
}
- /*[clinic end generated code: output=5bd7c1c113e6526a input=a9049054013a1b77]*/
-/*[clinic end generated code: output=984d6de140303d10 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=4d91c6a765097853 input=a9049054013a1b77]*/
exit:
return return_value;
}
- /*[clinic end generated code: output=5e972f339d197760 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=93657e55d6a748af input=a9049054013a1b77]*/
++/*[clinic end generated code: output=5c5f9149df292ce4 input=a9049054013a1b77]*/
{
return _sre_SRE_Scanner_search_impl(self);
}
- /*[clinic end generated code: output=00f7bf869b3283bc input=a9049054013a1b77]*/
-/*[clinic end generated code: output=a4ce9e5b748ce532 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=af9455cb54b2a907 input=a9049054013a1b77]*/
#ifndef _SSL_ENUM_CRLS_METHODDEF
#define _SSL_ENUM_CRLS_METHODDEF
#endif /* !defined(_SSL_ENUM_CRLS_METHODDEF) */
- /*[clinic end generated code: output=df99659ec790e573 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=6fb10594d8351dc5 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=02444732c19722b3 input=a9049054013a1b77]*/
#ifndef _TKINTER_TKAPP_DELETEFILEHANDLER_METHODDEF
#define _TKINTER_TKAPP_DELETEFILEHANDLER_METHODDEF
#endif /* !defined(_TKINTER_TKAPP_DELETEFILEHANDLER_METHODDEF) */
- /*[clinic end generated code: output=13be3f8313bba3c7 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=f9057c8bf288633d input=a9049054013a1b77]*/
++/*[clinic end generated code: output=836c578b71d69097 input=a9049054013a1b77]*/
exit:
return return_value;
}
- /*[clinic end generated code: output=00e317cda5359ea3 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=d9086c8576d46933 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=e1ad587147323e19 input=a9049054013a1b77]*/
exit:
return return_value;
}
- /*[clinic end generated code: output=d099ee4fbcdd5bc0 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=a4c4b2a9fcb0bea1 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=8032f3371c14749e input=a9049054013a1b77]*/
#define ARRAY_ARRAYITERATOR___SETSTATE___METHODDEF \
{"__setstate__", (PyCFunction)array_arrayiterator___setstate__, METH_O, array_arrayiterator___setstate____doc__},
- /*[clinic end generated code: output=0b99c89275eda265 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=305df3f5796039e4 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=b2054fb764c8cc64 input=a9049054013a1b77]*/
return return_value;
}
- /*[clinic end generated code: output=af5b025f0241fee2 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=385fb09fa21a62c0 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=e0ab74c3fa57c39c input=a9049054013a1b77]*/
"Base64-code line of data.");
#define BINASCII_B2A_BASE64_METHODDEF \
- {"b2a_base64", (PyCFunction)binascii_b2a_base64, METH_O, binascii_b2a_base64__doc__},
+ {"b2a_base64", (PyCFunction)binascii_b2a_base64, METH_VARARGS|METH_KEYWORDS, binascii_b2a_base64__doc__},
static PyObject *
- binascii_b2a_base64_impl(PyModuleDef *module, Py_buffer *data, int newline);
-binascii_b2a_base64_impl(PyObject *module, Py_buffer *data);
++binascii_b2a_base64_impl(PyObject *module, Py_buffer *data, int newline);
static PyObject *
- binascii_b2a_base64(PyModuleDef *module, PyObject *args, PyObject *kwargs)
-binascii_b2a_base64(PyObject *module, PyObject *arg)
++binascii_b2a_base64(PyObject *module, PyObject *args, PyObject *kwargs)
{
PyObject *return_value = NULL;
+ static char *_keywords[] = {"data", "newline", NULL};
Py_buffer data = {NULL, NULL};
+ int newline = 1;
- if (!PyArg_Parse(arg, "y*:b2a_base64", &data))
+ if (!PyArg_ParseTupleAndKeywords(args, kwargs, "y*|$i:b2a_base64", _keywords,
+ &data, &newline)) {
goto exit;
- return_value = binascii_b2a_base64_impl(module, &data);
+ }
+ return_value = binascii_b2a_base64_impl(module, &data, newline);
exit:
/* Cleanup for data */
return return_value;
}
- /*[clinic end generated code: output=7fb420392d78ac4d input=a9049054013a1b77]*/
-/*[clinic end generated code: output=51173fc9718a5edc input=a9049054013a1b77]*/
++/*[clinic end generated code: output=d91d1058dc0590e1 input=a9049054013a1b77]*/
exit:
return return_value;
}
- /*[clinic end generated code: output=f166205b4beb1826 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=732194029b7fb1e7 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=0f49dd11b50175bc input=a9049054013a1b77]*/
exit:
return return_value;
}
- /*[clinic end generated code: output=b08537e9adc04ca2 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=97b1306b864c01c8 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=36cff76a8fb2c9a6 input=a9049054013a1b77]*/
{
return grp_getgrall_impl(module);
}
- /*[clinic end generated code: output=a8a097520206ccd6 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=bee09feefc54a2cb input=a9049054013a1b77]*/
++/*[clinic end generated code: output=8b7502970a29e7f1 input=a9049054013a1b77]*/
exit:
return return_value;
}
- /*[clinic end generated code: output=d701d041d387b081 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=4cd3cc96e35563d2 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=8f640a98761daffe input=a9049054013a1b77]*/
#endif /* defined(MS_WINDOWS) */
- os_fspath_impl(PyModuleDef *module, PyObject *path);
+PyDoc_STRVAR(os_fspath__doc__,
+"fspath($module, /, path)\n"
+"--\n"
+"\n"
+"Return the file system path representation of the object.\n"
+"\n"
+"If the object is str or bytes, then allow it to pass through as-is. If the\n"
+"object defines __fspath__(), then return the result of that method. All other\n"
+"types raise a TypeError.");
+
+#define OS_FSPATH_METHODDEF \
+ {"fspath", (PyCFunction)os_fspath, METH_VARARGS|METH_KEYWORDS, os_fspath__doc__},
+
+static PyObject *
- os_fspath(PyModuleDef *module, PyObject *args, PyObject *kwargs)
++os_fspath_impl(PyObject *module, PyObject *path);
+
+static PyObject *
++os_fspath(PyObject *module, PyObject *args, PyObject *kwargs)
+{
+ PyObject *return_value = NULL;
+ static char *_keywords[] = {"path", NULL};
+ PyObject *path;
+
+ if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O:fspath", _keywords,
+ &path)) {
+ goto exit;
+ }
+ return_value = os_fspath_impl(module, path);
+
+exit:
+ return return_value;
+}
+
#ifndef OS_TTYNAME_METHODDEF
#define OS_TTYNAME_METHODDEF
#endif /* !defined(OS_TTYNAME_METHODDEF) */
#ifndef OS_SET_HANDLE_INHERITABLE_METHODDEF
#define OS_SET_HANDLE_INHERITABLE_METHODDEF
#endif /* !defined(OS_SET_HANDLE_INHERITABLE_METHODDEF) */
- /*[clinic end generated code: output=1b91c3a100e75a4d input=a9049054013a1b77]*/
-/*[clinic end generated code: output=c27221987f987cf3 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=e91e62d8e8f1b6ac input=a9049054013a1b77]*/
#ifndef PWD_GETPWALL_METHODDEF
#define PWD_GETPWALL_METHODDEF
#endif /* !defined(PWD_GETPWALL_METHODDEF) */
- /*[clinic end generated code: output=f807c89b44be0fde input=a9049054013a1b77]*/
-/*[clinic end generated code: output=d0ea1c5c832f0c1a input=a9049054013a1b77]*/
++/*[clinic end generated code: output=fc41d8d88ec206d8 input=a9049054013a1b77]*/
#ifndef PYEXPAT_XMLPARSER_USEFOREIGNDTD_METHODDEF
#define PYEXPAT_XMLPARSER_USEFOREIGNDTD_METHODDEF
#endif /* !defined(PYEXPAT_XMLPARSER_USEFOREIGNDTD_METHODDEF) */
- /*[clinic end generated code: output=71a60d709647fbe3 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=d479cfab607e9dc8 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=9de21f46734b1311 input=a9049054013a1b77]*/
exit:
return return_value;
}
- /*[clinic end generated code: output=40df3f8955919e72 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=0b6a194fbb0b94f2 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=475c4cc749ab31b1 input=a9049054013a1b77]*/
exit:
return return_value;
}
- /*[clinic end generated code: output=e85cc4a223371d84 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=5a1fc5480e399f95 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=a41a21c08fcddd70 input=a9049054013a1b77]*/
#ifndef _SHA512_SHA384_METHODDEF
#define _SHA512_SHA384_METHODDEF
#endif /* !defined(_SHA512_SHA384_METHODDEF) */
- /*[clinic end generated code: output=845af47cea22e2a1 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=bb87f494df50ffc0 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=e314c0f773abd5d7 input=a9049054013a1b77]*/
#ifndef SIGNAL_PTHREAD_KILL_METHODDEF
#define SIGNAL_PTHREAD_KILL_METHODDEF
#endif /* !defined(SIGNAL_PTHREAD_KILL_METHODDEF) */
- /*[clinic end generated code: output=4b9519180a091536 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=dafa598412bfb8d2 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=c6990ef0d0ba72b6 input=a9049054013a1b77]*/
#ifndef SPWD_GETSPALL_METHODDEF
#define SPWD_GETSPALL_METHODDEF
#endif /* !defined(SPWD_GETSPALL_METHODDEF) */
- /*[clinic end generated code: output=2b7a384447e5f1e3 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=510f681b36f54c30 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=07cd8af0afd77fe7 input=a9049054013a1b77]*/
"\n"
"Returns a bytes object containing compressed data.\n"
"\n"
-" bytes\n"
+" data\n"
" Binary data to be compressed.\n"
" level\n"
-" Compression level, in 0-9.");
+" Compression level, in 0-9 or -1.");
#define ZLIB_COMPRESS_METHODDEF \
- {"compress", (PyCFunction)zlib_compress, METH_VARARGS, zlib_compress__doc__},
+ {"compress", (PyCFunction)zlib_compress, METH_VARARGS|METH_KEYWORDS, zlib_compress__doc__},
static PyObject *
- zlib_compress_impl(PyModuleDef *module, Py_buffer *data, int level);
-zlib_compress_impl(PyObject *module, Py_buffer *bytes, int level);
++zlib_compress_impl(PyObject *module, Py_buffer *data, int level);
static PyObject *
- zlib_compress(PyModuleDef *module, PyObject *args, PyObject *kwargs)
-zlib_compress(PyObject *module, PyObject *args)
++zlib_compress(PyObject *module, PyObject *args, PyObject *kwargs)
{
PyObject *return_value = NULL;
- Py_buffer bytes = {NULL, NULL};
+ static char *_keywords[] = {"", "level", NULL};
+ Py_buffer data = {NULL, NULL};
int level = Z_DEFAULT_COMPRESSION;
- if (!PyArg_ParseTuple(args, "y*|i:compress",
- &bytes, &level))
+ if (!PyArg_ParseTupleAndKeywords(args, kwargs, "y*|i:compress", _keywords,
+ &data, &level)) {
goto exit;
- return_value = zlib_compress_impl(module, &bytes, level);
+ }
+ return_value = zlib_compress_impl(module, &data, level);
exit:
- /* Cleanup for bytes */
- if (bytes.obj)
- PyBuffer_Release(&bytes);
+ /* Cleanup for data */
+ if (data.obj) {
+ PyBuffer_Release(&data);
+ }
return return_value;
}
#ifndef ZLIB_COMPRESS_COPY_METHODDEF
#define ZLIB_COMPRESS_COPY_METHODDEF
#endif /* !defined(ZLIB_COMPRESS_COPY_METHODDEF) */
- /*[clinic end generated code: output=ba904dec30cc1a1a input=a9049054013a1b77]*/
-/*[clinic end generated code: output=8545565b1a1822de input=a9049054013a1b77]*/
++/*[clinic end generated code: output=519446af912f4e72 input=a9049054013a1b77]*/
[clinic start generated code]*/
static PyObject *
- os__getvolumepathname_impl(PyModuleDef *module, PyObject *path)
- /*[clinic end generated code: output=79a0ba729f956dbe input=7eacadc40acbda6b]*/
+ os__getvolumepathname_impl(PyObject *module, PyObject *path)
+ /*[clinic end generated code: output=cbdcbd1059ceef4c input=7eacadc40acbda6b]*/
{
PyObject *result;
- wchar_t *path_wchar, *mountpath=NULL;
+ const wchar_t *path_wchar;
+ wchar_t *mountpath=NULL;
size_t buflen;
BOOL ret;
[clinic start generated code]*/
static long
- os_system_impl(PyModuleDef *module, PyObject *command)
- /*[clinic end generated code: output=800f775e10b7be55 input=86a58554ba6094af]*/
+ os_system_impl(PyObject *module, PyObject *command)
+ /*[clinic end generated code: output=290fc437dd4f33a0 input=86a58554ba6094af]*/
{
long result;
- char *bytes = PyBytes_AsString(command);
+ const char *bytes = PyBytes_AsString(command);
Py_BEGIN_ALLOW_THREADS
result = system(bytes);
Py_END_ALLOW_THREADS
[clinic start generated code]*/
static PyObject *
- os_execv_impl(PyModuleDef *module, PyObject *path, PyObject *argv)
- /*[clinic end generated code: output=9221f08143146fff input=96041559925e5229]*/
+ os_execv_impl(PyObject *module, PyObject *path, PyObject *argv)
+ /*[clinic end generated code: output=b21dc34deeb5b004 input=96041559925e5229]*/
{
- char *path_char;
+ const char *path_char;
char **argvlist;
Py_ssize_t argc;
[clinic start generated code]*/
static PyObject *
- os_spawnv_impl(PyModuleDef *module, int mode, PyObject *path, PyObject *argv)
- /*[clinic end generated code: output=140a7945484c8cc5 input=042c91dfc1e6debc]*/
+ os_spawnv_impl(PyObject *module, int mode, PyObject *path, PyObject *argv)
+ /*[clinic end generated code: output=c427c0ce40f10638 input=042c91dfc1e6debc]*/
{
- char *path_char;
+ const char *path_char;
char **argvlist;
int i;
Py_ssize_t argc;
[clinic start generated code]*/
static PyObject *
- os_spawnve_impl(PyModuleDef *module, int mode, PyObject *path,
- PyObject *argv, PyObject *env)
- /*[clinic end generated code: output=e7f5f0703610531f input=02362fd937963f8f]*/
+ os_spawnve_impl(PyObject *module, int mode, PyObject *path, PyObject *argv,
+ PyObject *env)
+ /*[clinic end generated code: output=ebcfa5f7ba2f4219 input=02362fd937963f8f]*/
{
- char *path_char;
+ const char *path_char;
char **argvlist;
char **envlist;
PyObject *res = NULL;
[clinic start generated code]*/
static PyObject *
- os_sched_getaffinity_impl(PyModuleDef *module, pid_t pid)
- /*[clinic end generated code: output=b431a8f310e369e7 input=983ce7cb4a565980]*/
+ os_sched_getaffinity_impl(PyObject *module, pid_t pid)
-/*[clinic end generated code: output=f726f2c193c17a4f input=eaf161936874b8a1]*/
++/*[clinic end generated code: output=f726f2c193c17a4f input=983ce7cb4a565980]*/
{
int cpu, ncpus, count;
size_t setsize;
[clinic start generated code]*/
static PyObject *
- os_putenv_impl(PyModuleDef *module, PyObject *name, PyObject *value)
- /*[clinic end generated code: output=a2438cf95e5a0c1c input=ba586581c2e6105f]*/
+ os_putenv_impl(PyObject *module, PyObject *name, PyObject *value)
+ /*[clinic end generated code: output=d29a567d6b2327d2 input=ba586581c2e6105f]*/
{
- wchar_t *env;
+ const wchar_t *env;
PyObject *unicode = PyUnicode_FromFormat("%U=%U", name, value);
if (unicode == NULL) {
[clinic start generated code]*/
static PyObject *
- os_cpu_count_impl(PyModuleDef *module)
- /*[clinic end generated code: output=c59ee7f6bce832b8 input=e7c8f4ba6dbbadd3]*/
+ os_cpu_count_impl(PyObject *module)
-/*[clinic end generated code: output=5fc29463c3936a9c input=d55e2f8f3823a628]*/
++/*[clinic end generated code: output=5fc29463c3936a9c input=e7c8f4ba6dbbadd3]*/
{
int ncpu = 0;
#ifdef MS_WINDOWS
return NULL;
}
- os_fspath_impl(PyModuleDef *module, PyObject *path)
- /*[clinic end generated code: output=51ef0c2772c1932a input=e357165f7b22490f]*/
+/*
+ Return the file system path representation of the object.
+
+ If the object is str or bytes, then allow it to pass through with
+ an incremented refcount. If the object defines __fspath__(), then
+ return the result of that method. All other types raise a TypeError.
+*/
+PyObject *
+PyOS_FSPath(PyObject *path)
+{
+ _Py_IDENTIFIER(__fspath__);
+ PyObject *func = NULL;
+ PyObject *path_repr = NULL;
+
+ if (PyUnicode_Check(path) || PyBytes_Check(path)) {
+ Py_INCREF(path);
+ return path;
+ }
+
+ func = _PyObject_LookupSpecial(path, &PyId___fspath__);
+ if (NULL == func) {
+ return PyErr_Format(PyExc_TypeError,
+ "expected str, bytes or os.PathLike object, "
+ "not %.200s",
+ Py_TYPE(path)->tp_name);
+ }
+
+ path_repr = PyObject_CallFunctionObjArgs(func, NULL);
+ Py_DECREF(func);
+ if (!(PyUnicode_Check(path_repr) || PyBytes_Check(path_repr))) {
+ PyErr_Format(PyExc_TypeError,
+ "expected %.200s.__fspath__() to return str or bytes, "
+ "not %.200s", Py_TYPE(path)->tp_name,
+ Py_TYPE(path_repr)->tp_name);
+ Py_DECREF(path_repr);
+ return NULL;
+ }
+
+ return path_repr;
+}
+
+/*[clinic input]
+os.fspath
+
+ path: object
+
+Return the file system path representation of the object.
+
+If the object is str or bytes, then allow it to pass through as-is. If the
+object defines __fspath__(), then return the result of that method. All other
+types raise a TypeError.
+[clinic start generated code]*/
+
+static PyObject *
++os_fspath_impl(PyObject *module, PyObject *path)
++/*[clinic end generated code: output=c3c3b78ecff2914f input=e357165f7b22490f]*/
+{
+ return PyOS_FSPath(path);
+}
#include "clinic/posixmodule.c.h"
[clinic start generated code]*/
static PyObject *
- zlib_compress_impl(PyModuleDef *module, Py_buffer *data, int level)
- /*[clinic end generated code: output=1b97589132b203b4 input=638d54b6315dbed3]*/
-zlib_compress_impl(PyObject *module, Py_buffer *bytes, int level)
-/*[clinic end generated code: output=ae64c2c3076321a0 input=be3abe9934bda4b3]*/
++zlib_compress_impl(PyObject *module, Py_buffer *data, int level)
++/*[clinic end generated code: output=d80906d73f6294c8 input=638d54b6315dbed3]*/
{
PyObject *ReturnVal = NULL;
Byte *input, *output = NULL;
#ifndef MSVCRT_SET_ERROR_MODE_METHODDEF
#define MSVCRT_SET_ERROR_MODE_METHODDEF
#endif /* !defined(MSVCRT_SET_ERROR_MODE_METHODDEF) */
- /*[clinic end generated code: output=636de3460aecbca7 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=2a794c520d6ae887 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=ece8106c0592ff1f input=a9049054013a1b77]*/
exit:
return return_value;
}
- /*[clinic end generated code: output=ca128bfa212d8d1f input=a9049054013a1b77]*/
-/*[clinic end generated code: output=7b8940a23f605ddc input=a9049054013a1b77]*/
++/*[clinic end generated code: output=c35ce71f825424d1 input=a9049054013a1b77]*/
exit:
return return_value;
}
- /*[clinic end generated code: output=a5f53e42d4396bb4 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=c0b290daf2330dc9 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=1044b2adf3c67014 input=a9049054013a1b77]*/
[clinic start generated code]*/
static PyObject *
- winreg_SetValueEx_impl(PyModuleDef *module, HKEY key, Py_UNICODE *value_name,
+ winreg_SetValueEx_impl(PyObject *module, HKEY key, Py_UNICODE *value_name,
PyObject *reserved, DWORD type, PyObject *value)
- /*[clinic end generated code: output=ea092a935c361582 input=900a9e3990bfb196]*/
-/*[clinic end generated code: output=c88c8426b6c00ec7 input=f1b16cbcc3ed4101]*/
++/*[clinic end generated code: output=c88c8426b6c00ec7 input=900a9e3990bfb196]*/
{
BYTE *data;
DWORD len;
exit:
return return_value;
}
- /*[clinic end generated code: output=940f25126caf8166 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=9031270b64c794b8 input=a9049054013a1b77]*/
++/*[clinic end generated code: output=6ab37e6c6d2e7b19 input=a9049054013a1b77]*/
#ifndef _IMP_EXEC_DYNAMIC_METHODDEF
#define _IMP_EXEC_DYNAMIC_METHODDEF
#endif /* !defined(_IMP_EXEC_DYNAMIC_METHODDEF) */
- /*[clinic end generated code: output=22a7225925755674 input=a9049054013a1b77]*/
-/*[clinic end generated code: output=90ad6e5833e6170d input=a9049054013a1b77]*/
++/*[clinic end generated code: output=d24d7f73702a907f input=a9049054013a1b77]*/