Home | History | Annotate | Download | only in clinic
      1 /*[clinic input]
      2 preserve
      3 [clinic start generated code]*/
      4 
      5 PyDoc_STRVAR(_io__BufferedIOBase_readinto__doc__,
      6 "readinto($self, buffer, /)\n"
      7 "--\n"
      8 "\n");
      9 
     10 #define _IO__BUFFEREDIOBASE_READINTO_METHODDEF    \
     11     {"readinto", (PyCFunction)_io__BufferedIOBase_readinto, METH_O, _io__BufferedIOBase_readinto__doc__},
     12 
     13 static PyObject *
     14 _io__BufferedIOBase_readinto_impl(PyObject *self, Py_buffer *buffer);
     15 
     16 static PyObject *
     17 _io__BufferedIOBase_readinto(PyObject *self, PyObject *arg)
     18 {
     19     PyObject *return_value = NULL;
     20     Py_buffer buffer = {NULL, NULL};
     21 
     22     if (!PyArg_Parse(arg, "w*:readinto", &buffer)) {
     23         goto exit;
     24     }
     25     return_value = _io__BufferedIOBase_readinto_impl(self, &buffer);
     26 
     27 exit:
     28     /* Cleanup for buffer */
     29     if (buffer.obj) {
     30        PyBuffer_Release(&buffer);
     31     }
     32 
     33     return return_value;
     34 }
     35 
     36 PyDoc_STRVAR(_io__BufferedIOBase_readinto1__doc__,
     37 "readinto1($self, buffer, /)\n"
     38 "--\n"
     39 "\n");
     40 
     41 #define _IO__BUFFEREDIOBASE_READINTO1_METHODDEF    \
     42     {"readinto1", (PyCFunction)_io__BufferedIOBase_readinto1, METH_O, _io__BufferedIOBase_readinto1__doc__},
     43 
     44 static PyObject *
     45 _io__BufferedIOBase_readinto1_impl(PyObject *self, Py_buffer *buffer);
     46 
     47 static PyObject *
     48 _io__BufferedIOBase_readinto1(PyObject *self, PyObject *arg)
     49 {
     50     PyObject *return_value = NULL;
     51     Py_buffer buffer = {NULL, NULL};
     52 
     53     if (!PyArg_Parse(arg, "w*:readinto1", &buffer)) {
     54         goto exit;
     55     }
     56     return_value = _io__BufferedIOBase_readinto1_impl(self, &buffer);
     57 
     58 exit:
     59     /* Cleanup for buffer */
     60     if (buffer.obj) {
     61        PyBuffer_Release(&buffer);
     62     }
     63 
     64     return return_value;
     65 }
     66 
     67 PyDoc_STRVAR(_io__BufferedIOBase_detach__doc__,
     68 "detach($self, /)\n"
     69 "--\n"
     70 "\n"
     71 "Disconnect this buffer from its underlying raw stream and return it.\n"
     72 "\n"
     73 "After the raw stream has been detached, the buffer is in an unusable\n"
     74 "state.");
     75 
     76 #define _IO__BUFFEREDIOBASE_DETACH_METHODDEF    \
     77     {"detach", (PyCFunction)_io__BufferedIOBase_detach, METH_NOARGS, _io__BufferedIOBase_detach__doc__},
     78 
     79 static PyObject *
     80 _io__BufferedIOBase_detach_impl(PyObject *self);
     81 
     82 static PyObject *
     83 _io__BufferedIOBase_detach(PyObject *self, PyObject *Py_UNUSED(ignored))
     84 {
     85     return _io__BufferedIOBase_detach_impl(self);
     86 }
     87 
     88 PyDoc_STRVAR(_io__Buffered_peek__doc__,
     89 "peek($self, size=0, /)\n"
     90 "--\n"
     91 "\n");
     92 
     93 #define _IO__BUFFERED_PEEK_METHODDEF    \
     94     {"peek", (PyCFunction)_io__Buffered_peek, METH_FASTCALL, _io__Buffered_peek__doc__},
     95 
     96 static PyObject *
     97 _io__Buffered_peek_impl(buffered *self, Py_ssize_t size);
     98 
     99 static PyObject *
    100 _io__Buffered_peek(buffered *self, PyObject *const *args, Py_ssize_t nargs)
    101 {
    102     PyObject *return_value = NULL;
    103     Py_ssize_t size = 0;
    104 
    105     if (!_PyArg_ParseStack(args, nargs, "|n:peek",
    106         &size)) {
    107         goto exit;
    108     }
    109     return_value = _io__Buffered_peek_impl(self, size);
    110 
    111 exit:
    112     return return_value;
    113 }
    114 
    115 PyDoc_STRVAR(_io__Buffered_read__doc__,
    116 "read($self, size=-1, /)\n"
    117 "--\n"
    118 "\n");
    119 
    120 #define _IO__BUFFERED_READ_METHODDEF    \
    121     {"read", (PyCFunction)_io__Buffered_read, METH_FASTCALL, _io__Buffered_read__doc__},
    122 
    123 static PyObject *
    124 _io__Buffered_read_impl(buffered *self, Py_ssize_t n);
    125 
    126 static PyObject *
    127 _io__Buffered_read(buffered *self, PyObject *const *args, Py_ssize_t nargs)
    128 {
    129     PyObject *return_value = NULL;
    130     Py_ssize_t n = -1;
    131 
    132     if (!_PyArg_ParseStack(args, nargs, "|O&:read",
    133         _Py_convert_optional_to_ssize_t, &n)) {
    134         goto exit;
    135     }
    136     return_value = _io__Buffered_read_impl(self, n);
    137 
    138 exit:
    139     return return_value;
    140 }
    141 
    142 PyDoc_STRVAR(_io__Buffered_read1__doc__,
    143 "read1($self, size=-1, /)\n"
    144 "--\n"
    145 "\n");
    146 
    147 #define _IO__BUFFERED_READ1_METHODDEF    \
    148     {"read1", (PyCFunction)_io__Buffered_read1, METH_FASTCALL, _io__Buffered_read1__doc__},
    149 
    150 static PyObject *
    151 _io__Buffered_read1_impl(buffered *self, Py_ssize_t n);
    152 
    153 static PyObject *
    154 _io__Buffered_read1(buffered *self, PyObject *const *args, Py_ssize_t nargs)
    155 {
    156     PyObject *return_value = NULL;
    157     Py_ssize_t n = -1;
    158 
    159     if (!_PyArg_ParseStack(args, nargs, "|n:read1",
    160         &n)) {
    161         goto exit;
    162     }
    163     return_value = _io__Buffered_read1_impl(self, n);
    164 
    165 exit:
    166     return return_value;
    167 }
    168 
    169 PyDoc_STRVAR(_io__Buffered_readinto__doc__,
    170 "readinto($self, buffer, /)\n"
    171 "--\n"
    172 "\n");
    173 
    174 #define _IO__BUFFERED_READINTO_METHODDEF    \
    175     {"readinto", (PyCFunction)_io__Buffered_readinto, METH_O, _io__Buffered_readinto__doc__},
    176 
    177 static PyObject *
    178 _io__Buffered_readinto_impl(buffered *self, Py_buffer *buffer);
    179 
    180 static PyObject *
    181 _io__Buffered_readinto(buffered *self, PyObject *arg)
    182 {
    183     PyObject *return_value = NULL;
    184     Py_buffer buffer = {NULL, NULL};
    185 
    186     if (!PyArg_Parse(arg, "w*:readinto", &buffer)) {
    187         goto exit;
    188     }
    189     return_value = _io__Buffered_readinto_impl(self, &buffer);
    190 
    191 exit:
    192     /* Cleanup for buffer */
    193     if (buffer.obj) {
    194        PyBuffer_Release(&buffer);
    195     }
    196 
    197     return return_value;
    198 }
    199 
    200 PyDoc_STRVAR(_io__Buffered_readinto1__doc__,
    201 "readinto1($self, buffer, /)\n"
    202 "--\n"
    203 "\n");
    204 
    205 #define _IO__BUFFERED_READINTO1_METHODDEF    \
    206     {"readinto1", (PyCFunction)_io__Buffered_readinto1, METH_O, _io__Buffered_readinto1__doc__},
    207 
    208 static PyObject *
    209 _io__Buffered_readinto1_impl(buffered *self, Py_buffer *buffer);
    210 
    211 static PyObject *
    212 _io__Buffered_readinto1(buffered *self, PyObject *arg)
    213 {
    214     PyObject *return_value = NULL;
    215     Py_buffer buffer = {NULL, NULL};
    216 
    217     if (!PyArg_Parse(arg, "w*:readinto1", &buffer)) {
    218         goto exit;
    219     }
    220     return_value = _io__Buffered_readinto1_impl(self, &buffer);
    221 
    222 exit:
    223     /* Cleanup for buffer */
    224     if (buffer.obj) {
    225        PyBuffer_Release(&buffer);
    226     }
    227 
    228     return return_value;
    229 }
    230 
    231 PyDoc_STRVAR(_io__Buffered_readline__doc__,
    232 "readline($self, size=-1, /)\n"
    233 "--\n"
    234 "\n");
    235 
    236 #define _IO__BUFFERED_READLINE_METHODDEF    \
    237     {"readline", (PyCFunction)_io__Buffered_readline, METH_FASTCALL, _io__Buffered_readline__doc__},
    238 
    239 static PyObject *
    240 _io__Buffered_readline_impl(buffered *self, Py_ssize_t size);
    241 
    242 static PyObject *
    243 _io__Buffered_readline(buffered *self, PyObject *const *args, Py_ssize_t nargs)
    244 {
    245     PyObject *return_value = NULL;
    246     Py_ssize_t size = -1;
    247 
    248     if (!_PyArg_ParseStack(args, nargs, "|O&:readline",
    249         _Py_convert_optional_to_ssize_t, &size)) {
    250         goto exit;
    251     }
    252     return_value = _io__Buffered_readline_impl(self, size);
    253 
    254 exit:
    255     return return_value;
    256 }
    257 
    258 PyDoc_STRVAR(_io__Buffered_seek__doc__,
    259 "seek($self, target, whence=0, /)\n"
    260 "--\n"
    261 "\n");
    262 
    263 #define _IO__BUFFERED_SEEK_METHODDEF    \
    264     {"seek", (PyCFunction)_io__Buffered_seek, METH_FASTCALL, _io__Buffered_seek__doc__},
    265 
    266 static PyObject *
    267 _io__Buffered_seek_impl(buffered *self, PyObject *targetobj, int whence);
    268 
    269 static PyObject *
    270 _io__Buffered_seek(buffered *self, PyObject *const *args, Py_ssize_t nargs)
    271 {
    272     PyObject *return_value = NULL;
    273     PyObject *targetobj;
    274     int whence = 0;
    275 
    276     if (!_PyArg_ParseStack(args, nargs, "O|i:seek",
    277         &targetobj, &whence)) {
    278         goto exit;
    279     }
    280     return_value = _io__Buffered_seek_impl(self, targetobj, whence);
    281 
    282 exit:
    283     return return_value;
    284 }
    285 
    286 PyDoc_STRVAR(_io__Buffered_truncate__doc__,
    287 "truncate($self, pos=None, /)\n"
    288 "--\n"
    289 "\n");
    290 
    291 #define _IO__BUFFERED_TRUNCATE_METHODDEF    \
    292     {"truncate", (PyCFunction)_io__Buffered_truncate, METH_FASTCALL, _io__Buffered_truncate__doc__},
    293 
    294 static PyObject *
    295 _io__Buffered_truncate_impl(buffered *self, PyObject *pos);
    296 
    297 static PyObject *
    298 _io__Buffered_truncate(buffered *self, PyObject *const *args, Py_ssize_t nargs)
    299 {
    300     PyObject *return_value = NULL;
    301     PyObject *pos = Py_None;
    302 
    303     if (!_PyArg_UnpackStack(args, nargs, "truncate",
    304         0, 1,
    305         &pos)) {
    306         goto exit;
    307     }
    308     return_value = _io__Buffered_truncate_impl(self, pos);
    309 
    310 exit:
    311     return return_value;
    312 }
    313 
    314 PyDoc_STRVAR(_io_BufferedReader___init____doc__,
    315 "BufferedReader(raw, buffer_size=DEFAULT_BUFFER_SIZE)\n"
    316 "--\n"
    317 "\n"
    318 "Create a new buffered reader using the given readable raw IO object.");
    319 
    320 static int
    321 _io_BufferedReader___init___impl(buffered *self, PyObject *raw,
    322                                  Py_ssize_t buffer_size);
    323 
    324 static int
    325 _io_BufferedReader___init__(PyObject *self, PyObject *args, PyObject *kwargs)
    326 {
    327     int return_value = -1;
    328     static const char * const _keywords[] = {"raw", "buffer_size", NULL};
    329     static _PyArg_Parser _parser = {"O|n:BufferedReader", _keywords, 0};
    330     PyObject *raw;
    331     Py_ssize_t buffer_size = DEFAULT_BUFFER_SIZE;
    332 
    333     if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
    334         &raw, &buffer_size)) {
    335         goto exit;
    336     }
    337     return_value = _io_BufferedReader___init___impl((buffered *)self, raw, buffer_size);
    338 
    339 exit:
    340     return return_value;
    341 }
    342 
    343 PyDoc_STRVAR(_io_BufferedWriter___init____doc__,
    344 "BufferedWriter(raw, buffer_size=DEFAULT_BUFFER_SIZE)\n"
    345 "--\n"
    346 "\n"
    347 "A buffer for a writeable sequential RawIO object.\n"
    348 "\n"
    349 "The constructor creates a BufferedWriter for the given writeable raw\n"
    350 "stream. If the buffer_size is not given, it defaults to\n"
    351 "DEFAULT_BUFFER_SIZE.");
    352 
    353 static int
    354 _io_BufferedWriter___init___impl(buffered *self, PyObject *raw,
    355                                  Py_ssize_t buffer_size);
    356 
    357 static int
    358 _io_BufferedWriter___init__(PyObject *self, PyObject *args, PyObject *kwargs)
    359 {
    360     int return_value = -1;
    361     static const char * const _keywords[] = {"raw", "buffer_size", NULL};
    362     static _PyArg_Parser _parser = {"O|n:BufferedWriter", _keywords, 0};
    363     PyObject *raw;
    364     Py_ssize_t buffer_size = DEFAULT_BUFFER_SIZE;
    365 
    366     if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
    367         &raw, &buffer_size)) {
    368         goto exit;
    369     }
    370     return_value = _io_BufferedWriter___init___impl((buffered *)self, raw, buffer_size);
    371 
    372 exit:
    373     return return_value;
    374 }
    375 
    376 PyDoc_STRVAR(_io_BufferedWriter_write__doc__,
    377 "write($self, buffer, /)\n"
    378 "--\n"
    379 "\n");
    380 
    381 #define _IO_BUFFEREDWRITER_WRITE_METHODDEF    \
    382     {"write", (PyCFunction)_io_BufferedWriter_write, METH_O, _io_BufferedWriter_write__doc__},
    383 
    384 static PyObject *
    385 _io_BufferedWriter_write_impl(buffered *self, Py_buffer *buffer);
    386 
    387 static PyObject *
    388 _io_BufferedWriter_write(buffered *self, PyObject *arg)
    389 {
    390     PyObject *return_value = NULL;
    391     Py_buffer buffer = {NULL, NULL};
    392 
    393     if (!PyArg_Parse(arg, "y*:write", &buffer)) {
    394         goto exit;
    395     }
    396     return_value = _io_BufferedWriter_write_impl(self, &buffer);
    397 
    398 exit:
    399     /* Cleanup for buffer */
    400     if (buffer.obj) {
    401        PyBuffer_Release(&buffer);
    402     }
    403 
    404     return return_value;
    405 }
    406 
    407 PyDoc_STRVAR(_io_BufferedRWPair___init____doc__,
    408 "BufferedRWPair(reader, writer, buffer_size=DEFAULT_BUFFER_SIZE, /)\n"
    409 "--\n"
    410 "\n"
    411 "A buffered reader and writer object together.\n"
    412 "\n"
    413 "A buffered reader object and buffered writer object put together to\n"
    414 "form a sequential IO object that can read and write. This is typically\n"
    415 "used with a socket or two-way pipe.\n"
    416 "\n"
    417 "reader and writer are RawIOBase objects that are readable and\n"
    418 "writeable respectively. If the buffer_size is omitted it defaults to\n"
    419 "DEFAULT_BUFFER_SIZE.");
    420 
    421 static int
    422 _io_BufferedRWPair___init___impl(rwpair *self, PyObject *reader,
    423                                  PyObject *writer, Py_ssize_t buffer_size);
    424 
    425 static int
    426 _io_BufferedRWPair___init__(PyObject *self, PyObject *args, PyObject *kwargs)
    427 {
    428     int return_value = -1;
    429     PyObject *reader;
    430     PyObject *writer;
    431     Py_ssize_t buffer_size = DEFAULT_BUFFER_SIZE;
    432 
    433     if ((Py_TYPE(self) == &PyBufferedRWPair_Type) &&
    434         !_PyArg_NoKeywords("BufferedRWPair", kwargs)) {
    435         goto exit;
    436     }
    437     if (!PyArg_ParseTuple(args, "OO|n:BufferedRWPair",
    438         &reader, &writer, &buffer_size)) {
    439         goto exit;
    440     }
    441     return_value = _io_BufferedRWPair___init___impl((rwpair *)self, reader, writer, buffer_size);
    442 
    443 exit:
    444     return return_value;
    445 }
    446 
    447 PyDoc_STRVAR(_io_BufferedRandom___init____doc__,
    448 "BufferedRandom(raw, buffer_size=DEFAULT_BUFFER_SIZE)\n"
    449 "--\n"
    450 "\n"
    451 "A buffered interface to random access streams.\n"
    452 "\n"
    453 "The constructor creates a reader and writer for a seekable stream,\n"
    454 "raw, given in the first argument. If the buffer_size is omitted it\n"
    455 "defaults to DEFAULT_BUFFER_SIZE.");
    456 
    457 static int
    458 _io_BufferedRandom___init___impl(buffered *self, PyObject *raw,
    459                                  Py_ssize_t buffer_size);
    460 
    461 static int
    462 _io_BufferedRandom___init__(PyObject *self, PyObject *args, PyObject *kwargs)
    463 {
    464     int return_value = -1;
    465     static const char * const _keywords[] = {"raw", "buffer_size", NULL};
    466     static _PyArg_Parser _parser = {"O|n:BufferedRandom", _keywords, 0};
    467     PyObject *raw;
    468     Py_ssize_t buffer_size = DEFAULT_BUFFER_SIZE;
    469 
    470     if (!_PyArg_ParseTupleAndKeywordsFast(args, kwargs, &_parser,
    471         &raw, &buffer_size)) {
    472         goto exit;
    473     }
    474     return_value = _io_BufferedRandom___init___impl((buffered *)self, raw, buffer_size);
    475 
    476 exit:
    477     return return_value;
    478 }
    479 /*[clinic end generated code: output=9a20dd4eaabb5d58 input=a9049054013a1b77]*/
    480