blob: 0d8a3e0e0d150f12e828590d73f1157a45ffa11a [file] [log] [blame]
Brett Cannonf2de1fc2014-08-22 11:45:03 -04001/*[clinic input]
2preserve
3[clinic start generated code]*/
4
5PyDoc_STRVAR(_multibytecodec_MultibyteCodec_encode__doc__,
6"encode($self, /, input, errors=None)\n"
7"--\n"
8"\n"
9"Return an encoded string version of `input\'.\n"
10"\n"
11"\'errors\' may be given to set a different error handling scheme. Default is\n"
12"\'strict\' meaning that encoding errors raise a UnicodeEncodeError. Other possible\n"
13"values are \'ignore\', \'replace\' and \'xmlcharrefreplace\' as well as any other name\n"
14"registered with codecs.register_error that can handle UnicodeEncodeErrors.");
15
16#define _MULTIBYTECODEC_MULTIBYTECODEC_ENCODE_METHODDEF \
17 {"encode", (PyCFunction)_multibytecodec_MultibyteCodec_encode, METH_VARARGS|METH_KEYWORDS, _multibytecodec_MultibyteCodec_encode__doc__},
18
19static PyObject *
Larry Hastings89964c42015-04-14 18:07:59 -040020_multibytecodec_MultibyteCodec_encode_impl(MultibyteCodecObject *self,
21 PyObject *input,
22 const char *errors);
Brett Cannonf2de1fc2014-08-22 11:45:03 -040023
24static PyObject *
25_multibytecodec_MultibyteCodec_encode(MultibyteCodecObject *self, PyObject *args, PyObject *kwargs)
26{
27 PyObject *return_value = NULL;
28 static char *_keywords[] = {"input", "errors", NULL};
29 PyObject *input;
30 const char *errors = NULL;
31
Serhiy Storchaka247789c2015-04-24 00:40:51 +030032 if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|z:encode", _keywords,
Serhiy Storchaka5dee6552016-06-09 16:16:06 +030033 &input, &errors)) {
Brett Cannonf2de1fc2014-08-22 11:45:03 -040034 goto exit;
Serhiy Storchaka5dee6552016-06-09 16:16:06 +030035 }
Brett Cannonf2de1fc2014-08-22 11:45:03 -040036 return_value = _multibytecodec_MultibyteCodec_encode_impl(self, input, errors);
37
38exit:
39 return return_value;
40}
41
42PyDoc_STRVAR(_multibytecodec_MultibyteCodec_decode__doc__,
43"decode($self, /, input, errors=None)\n"
44"--\n"
45"\n"
46"Decodes \'input\'.\n"
47"\n"
48"\'errors\' may be given to set a different error handling scheme. Default is\n"
49"\'strict\' meaning that encoding errors raise a UnicodeDecodeError. Other possible\n"
50"values are \'ignore\' and \'replace\' as well as any other name registered with\n"
51"codecs.register_error that is able to handle UnicodeDecodeErrors.\"");
52
53#define _MULTIBYTECODEC_MULTIBYTECODEC_DECODE_METHODDEF \
54 {"decode", (PyCFunction)_multibytecodec_MultibyteCodec_decode, METH_VARARGS|METH_KEYWORDS, _multibytecodec_MultibyteCodec_decode__doc__},
55
56static PyObject *
Larry Hastings89964c42015-04-14 18:07:59 -040057_multibytecodec_MultibyteCodec_decode_impl(MultibyteCodecObject *self,
58 Py_buffer *input,
59 const char *errors);
Brett Cannonf2de1fc2014-08-22 11:45:03 -040060
61static PyObject *
62_multibytecodec_MultibyteCodec_decode(MultibyteCodecObject *self, PyObject *args, PyObject *kwargs)
63{
64 PyObject *return_value = NULL;
65 static char *_keywords[] = {"input", "errors", NULL};
66 Py_buffer input = {NULL, NULL};
67 const char *errors = NULL;
68
Serhiy Storchaka247789c2015-04-24 00:40:51 +030069 if (!PyArg_ParseTupleAndKeywords(args, kwargs, "y*|z:decode", _keywords,
Serhiy Storchaka5dee6552016-06-09 16:16:06 +030070 &input, &errors)) {
Brett Cannonf2de1fc2014-08-22 11:45:03 -040071 goto exit;
Serhiy Storchaka5dee6552016-06-09 16:16:06 +030072 }
Brett Cannonf2de1fc2014-08-22 11:45:03 -040073 return_value = _multibytecodec_MultibyteCodec_decode_impl(self, &input, errors);
74
75exit:
76 /* Cleanup for input */
Serhiy Storchaka5dee6552016-06-09 16:16:06 +030077 if (input.obj) {
Brett Cannonf2de1fc2014-08-22 11:45:03 -040078 PyBuffer_Release(&input);
Serhiy Storchaka5dee6552016-06-09 16:16:06 +030079 }
Brett Cannonf2de1fc2014-08-22 11:45:03 -040080
81 return return_value;
82}
83
84PyDoc_STRVAR(_multibytecodec_MultibyteIncrementalEncoder_encode__doc__,
Serhiy Storchaka8b2e8b62015-05-30 11:30:39 +030085"encode($self, /, input, final=False)\n"
Zachary Ware8ef887c2015-04-13 18:22:35 -050086"--\n"
87"\n");
Brett Cannonf2de1fc2014-08-22 11:45:03 -040088
89#define _MULTIBYTECODEC_MULTIBYTEINCREMENTALENCODER_ENCODE_METHODDEF \
90 {"encode", (PyCFunction)_multibytecodec_MultibyteIncrementalEncoder_encode, METH_VARARGS|METH_KEYWORDS, _multibytecodec_MultibyteIncrementalEncoder_encode__doc__},
91
92static PyObject *
Larry Hastings89964c42015-04-14 18:07:59 -040093_multibytecodec_MultibyteIncrementalEncoder_encode_impl(MultibyteIncrementalEncoderObject *self,
94 PyObject *input,
95 int final);
Brett Cannonf2de1fc2014-08-22 11:45:03 -040096
97static PyObject *
98_multibytecodec_MultibyteIncrementalEncoder_encode(MultibyteIncrementalEncoderObject *self, PyObject *args, PyObject *kwargs)
99{
100 PyObject *return_value = NULL;
101 static char *_keywords[] = {"input", "final", NULL};
102 PyObject *input;
103 int final = 0;
104
Serhiy Storchaka247789c2015-04-24 00:40:51 +0300105 if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|i:encode", _keywords,
Serhiy Storchaka5dee6552016-06-09 16:16:06 +0300106 &input, &final)) {
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400107 goto exit;
Serhiy Storchaka5dee6552016-06-09 16:16:06 +0300108 }
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400109 return_value = _multibytecodec_MultibyteIncrementalEncoder_encode_impl(self, input, final);
110
111exit:
112 return return_value;
113}
114
115PyDoc_STRVAR(_multibytecodec_MultibyteIncrementalEncoder_reset__doc__,
116"reset($self, /)\n"
Zachary Ware8ef887c2015-04-13 18:22:35 -0500117"--\n"
118"\n");
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400119
120#define _MULTIBYTECODEC_MULTIBYTEINCREMENTALENCODER_RESET_METHODDEF \
121 {"reset", (PyCFunction)_multibytecodec_MultibyteIncrementalEncoder_reset, METH_NOARGS, _multibytecodec_MultibyteIncrementalEncoder_reset__doc__},
122
123static PyObject *
124_multibytecodec_MultibyteIncrementalEncoder_reset_impl(MultibyteIncrementalEncoderObject *self);
125
126static PyObject *
127_multibytecodec_MultibyteIncrementalEncoder_reset(MultibyteIncrementalEncoderObject *self, PyObject *Py_UNUSED(ignored))
128{
129 return _multibytecodec_MultibyteIncrementalEncoder_reset_impl(self);
130}
131
132PyDoc_STRVAR(_multibytecodec_MultibyteIncrementalDecoder_decode__doc__,
Serhiy Storchaka8b2e8b62015-05-30 11:30:39 +0300133"decode($self, /, input, final=False)\n"
Zachary Ware8ef887c2015-04-13 18:22:35 -0500134"--\n"
135"\n");
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400136
137#define _MULTIBYTECODEC_MULTIBYTEINCREMENTALDECODER_DECODE_METHODDEF \
138 {"decode", (PyCFunction)_multibytecodec_MultibyteIncrementalDecoder_decode, METH_VARARGS|METH_KEYWORDS, _multibytecodec_MultibyteIncrementalDecoder_decode__doc__},
139
140static PyObject *
Larry Hastings89964c42015-04-14 18:07:59 -0400141_multibytecodec_MultibyteIncrementalDecoder_decode_impl(MultibyteIncrementalDecoderObject *self,
142 Py_buffer *input,
143 int final);
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400144
145static PyObject *
146_multibytecodec_MultibyteIncrementalDecoder_decode(MultibyteIncrementalDecoderObject *self, PyObject *args, PyObject *kwargs)
147{
148 PyObject *return_value = NULL;
149 static char *_keywords[] = {"input", "final", NULL};
150 Py_buffer input = {NULL, NULL};
151 int final = 0;
152
Serhiy Storchaka247789c2015-04-24 00:40:51 +0300153 if (!PyArg_ParseTupleAndKeywords(args, kwargs, "y*|i:decode", _keywords,
Serhiy Storchaka5dee6552016-06-09 16:16:06 +0300154 &input, &final)) {
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400155 goto exit;
Serhiy Storchaka5dee6552016-06-09 16:16:06 +0300156 }
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400157 return_value = _multibytecodec_MultibyteIncrementalDecoder_decode_impl(self, &input, final);
158
159exit:
160 /* Cleanup for input */
Serhiy Storchaka5dee6552016-06-09 16:16:06 +0300161 if (input.obj) {
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400162 PyBuffer_Release(&input);
Serhiy Storchaka5dee6552016-06-09 16:16:06 +0300163 }
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400164
165 return return_value;
166}
167
168PyDoc_STRVAR(_multibytecodec_MultibyteIncrementalDecoder_reset__doc__,
169"reset($self, /)\n"
Zachary Ware8ef887c2015-04-13 18:22:35 -0500170"--\n"
171"\n");
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400172
173#define _MULTIBYTECODEC_MULTIBYTEINCREMENTALDECODER_RESET_METHODDEF \
174 {"reset", (PyCFunction)_multibytecodec_MultibyteIncrementalDecoder_reset, METH_NOARGS, _multibytecodec_MultibyteIncrementalDecoder_reset__doc__},
175
176static PyObject *
177_multibytecodec_MultibyteIncrementalDecoder_reset_impl(MultibyteIncrementalDecoderObject *self);
178
179static PyObject *
180_multibytecodec_MultibyteIncrementalDecoder_reset(MultibyteIncrementalDecoderObject *self, PyObject *Py_UNUSED(ignored))
181{
182 return _multibytecodec_MultibyteIncrementalDecoder_reset_impl(self);
183}
184
185PyDoc_STRVAR(_multibytecodec_MultibyteStreamReader_read__doc__,
186"read($self, sizeobj=None, /)\n"
Zachary Ware8ef887c2015-04-13 18:22:35 -0500187"--\n"
188"\n");
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400189
190#define _MULTIBYTECODEC_MULTIBYTESTREAMREADER_READ_METHODDEF \
191 {"read", (PyCFunction)_multibytecodec_MultibyteStreamReader_read, METH_VARARGS, _multibytecodec_MultibyteStreamReader_read__doc__},
192
193static PyObject *
Larry Hastings89964c42015-04-14 18:07:59 -0400194_multibytecodec_MultibyteStreamReader_read_impl(MultibyteStreamReaderObject *self,
195 PyObject *sizeobj);
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400196
197static PyObject *
198_multibytecodec_MultibyteStreamReader_read(MultibyteStreamReaderObject *self, PyObject *args)
199{
200 PyObject *return_value = NULL;
201 PyObject *sizeobj = Py_None;
202
203 if (!PyArg_UnpackTuple(args, "read",
204 0, 1,
Serhiy Storchaka5dee6552016-06-09 16:16:06 +0300205 &sizeobj)) {
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400206 goto exit;
Serhiy Storchaka5dee6552016-06-09 16:16:06 +0300207 }
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400208 return_value = _multibytecodec_MultibyteStreamReader_read_impl(self, sizeobj);
209
210exit:
211 return return_value;
212}
213
214PyDoc_STRVAR(_multibytecodec_MultibyteStreamReader_readline__doc__,
215"readline($self, sizeobj=None, /)\n"
Zachary Ware8ef887c2015-04-13 18:22:35 -0500216"--\n"
217"\n");
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400218
219#define _MULTIBYTECODEC_MULTIBYTESTREAMREADER_READLINE_METHODDEF \
220 {"readline", (PyCFunction)_multibytecodec_MultibyteStreamReader_readline, METH_VARARGS, _multibytecodec_MultibyteStreamReader_readline__doc__},
221
222static PyObject *
Larry Hastings89964c42015-04-14 18:07:59 -0400223_multibytecodec_MultibyteStreamReader_readline_impl(MultibyteStreamReaderObject *self,
224 PyObject *sizeobj);
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400225
226static PyObject *
227_multibytecodec_MultibyteStreamReader_readline(MultibyteStreamReaderObject *self, PyObject *args)
228{
229 PyObject *return_value = NULL;
230 PyObject *sizeobj = Py_None;
231
232 if (!PyArg_UnpackTuple(args, "readline",
233 0, 1,
Serhiy Storchaka5dee6552016-06-09 16:16:06 +0300234 &sizeobj)) {
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400235 goto exit;
Serhiy Storchaka5dee6552016-06-09 16:16:06 +0300236 }
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400237 return_value = _multibytecodec_MultibyteStreamReader_readline_impl(self, sizeobj);
238
239exit:
240 return return_value;
241}
242
243PyDoc_STRVAR(_multibytecodec_MultibyteStreamReader_readlines__doc__,
244"readlines($self, sizehintobj=None, /)\n"
Zachary Ware8ef887c2015-04-13 18:22:35 -0500245"--\n"
246"\n");
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400247
248#define _MULTIBYTECODEC_MULTIBYTESTREAMREADER_READLINES_METHODDEF \
249 {"readlines", (PyCFunction)_multibytecodec_MultibyteStreamReader_readlines, METH_VARARGS, _multibytecodec_MultibyteStreamReader_readlines__doc__},
250
251static PyObject *
Larry Hastings89964c42015-04-14 18:07:59 -0400252_multibytecodec_MultibyteStreamReader_readlines_impl(MultibyteStreamReaderObject *self,
253 PyObject *sizehintobj);
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400254
255static PyObject *
256_multibytecodec_MultibyteStreamReader_readlines(MultibyteStreamReaderObject *self, PyObject *args)
257{
258 PyObject *return_value = NULL;
259 PyObject *sizehintobj = Py_None;
260
261 if (!PyArg_UnpackTuple(args, "readlines",
262 0, 1,
Serhiy Storchaka5dee6552016-06-09 16:16:06 +0300263 &sizehintobj)) {
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400264 goto exit;
Serhiy Storchaka5dee6552016-06-09 16:16:06 +0300265 }
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400266 return_value = _multibytecodec_MultibyteStreamReader_readlines_impl(self, sizehintobj);
267
268exit:
269 return return_value;
270}
271
272PyDoc_STRVAR(_multibytecodec_MultibyteStreamReader_reset__doc__,
273"reset($self, /)\n"
Zachary Ware8ef887c2015-04-13 18:22:35 -0500274"--\n"
275"\n");
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400276
277#define _MULTIBYTECODEC_MULTIBYTESTREAMREADER_RESET_METHODDEF \
278 {"reset", (PyCFunction)_multibytecodec_MultibyteStreamReader_reset, METH_NOARGS, _multibytecodec_MultibyteStreamReader_reset__doc__},
279
280static PyObject *
281_multibytecodec_MultibyteStreamReader_reset_impl(MultibyteStreamReaderObject *self);
282
283static PyObject *
284_multibytecodec_MultibyteStreamReader_reset(MultibyteStreamReaderObject *self, PyObject *Py_UNUSED(ignored))
285{
286 return _multibytecodec_MultibyteStreamReader_reset_impl(self);
287}
288
289PyDoc_STRVAR(_multibytecodec_MultibyteStreamWriter_write__doc__,
290"write($self, strobj, /)\n"
Zachary Ware8ef887c2015-04-13 18:22:35 -0500291"--\n"
292"\n");
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400293
294#define _MULTIBYTECODEC_MULTIBYTESTREAMWRITER_WRITE_METHODDEF \
295 {"write", (PyCFunction)_multibytecodec_MultibyteStreamWriter_write, METH_O, _multibytecodec_MultibyteStreamWriter_write__doc__},
296
297PyDoc_STRVAR(_multibytecodec_MultibyteStreamWriter_writelines__doc__,
298"writelines($self, lines, /)\n"
Zachary Ware8ef887c2015-04-13 18:22:35 -0500299"--\n"
300"\n");
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400301
302#define _MULTIBYTECODEC_MULTIBYTESTREAMWRITER_WRITELINES_METHODDEF \
303 {"writelines", (PyCFunction)_multibytecodec_MultibyteStreamWriter_writelines, METH_O, _multibytecodec_MultibyteStreamWriter_writelines__doc__},
304
305PyDoc_STRVAR(_multibytecodec_MultibyteStreamWriter_reset__doc__,
306"reset($self, /)\n"
Zachary Ware8ef887c2015-04-13 18:22:35 -0500307"--\n"
308"\n");
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400309
310#define _MULTIBYTECODEC_MULTIBYTESTREAMWRITER_RESET_METHODDEF \
311 {"reset", (PyCFunction)_multibytecodec_MultibyteStreamWriter_reset, METH_NOARGS, _multibytecodec_MultibyteStreamWriter_reset__doc__},
312
313static PyObject *
314_multibytecodec_MultibyteStreamWriter_reset_impl(MultibyteStreamWriterObject *self);
315
316static PyObject *
317_multibytecodec_MultibyteStreamWriter_reset(MultibyteStreamWriterObject *self, PyObject *Py_UNUSED(ignored))
318{
319 return _multibytecodec_MultibyteStreamWriter_reset_impl(self);
320}
321
322PyDoc_STRVAR(_multibytecodec___create_codec__doc__,
323"__create_codec($module, arg, /)\n"
Zachary Ware8ef887c2015-04-13 18:22:35 -0500324"--\n"
325"\n");
Brett Cannonf2de1fc2014-08-22 11:45:03 -0400326
327#define _MULTIBYTECODEC___CREATE_CODEC_METHODDEF \
328 {"__create_codec", (PyCFunction)_multibytecodec___create_codec, METH_O, _multibytecodec___create_codec__doc__},
Serhiy Storchaka5dee6552016-06-09 16:16:06 +0300329/*[clinic end generated code: output=f837bc56b2fa2a4e input=a9049054013a1b77]*/