Mercurial > cpython-lru_cache-weakref
comparison Python/getargs.c @ 43423:0476a2cc5658
Change PyBuffer to Py_buffer to be consistent with other non-object structures like Py_complex. Add some more functionality to the memoryview object.
| author | Travis E. Oliphant <oliphant@enthought.com> |
|---|---|
| date | Sun, 23 Sep 2007 02:00:13 +0000 |
| parents | 34491dc143e7 |
| children | 8e72dacf7f3a |
comparison
equal
deleted
inserted
replaced
| 43421:f31d415554cd | 43423:0476a2cc5658 |
|---|---|
| 1209 case 'w': { /* memory buffer, read-write access */ | 1209 case 'w': { /* memory buffer, read-write access */ |
| 1210 void **p = va_arg(*p_va, void **); | 1210 void **p = va_arg(*p_va, void **); |
| 1211 PyBufferProcs *pb = arg->ob_type->tp_as_buffer; | 1211 PyBufferProcs *pb = arg->ob_type->tp_as_buffer; |
| 1212 int count; | 1212 int count; |
| 1213 int temp=-1; | 1213 int temp=-1; |
| 1214 PyBuffer view; | 1214 Py_buffer view; |
| 1215 | 1215 |
| 1216 if (pb == NULL || | 1216 if (pb == NULL || |
| 1217 pb->bf_getbuffer == NULL || | 1217 pb->bf_getbuffer == NULL || |
| 1218 ((temp = (*pb->bf_getbuffer)(arg, &view, | 1218 ((temp = (*pb->bf_getbuffer)(arg, &view, |
| 1219 PyBUF_SIMPLE)) != 0) || | 1219 PyBUF_SIMPLE)) != 0) || |
| 1240 | 1240 |
| 1241 case 't': { /* 8-bit character buffer, read-only access */ | 1241 case 't': { /* 8-bit character buffer, read-only access */ |
| 1242 char **p = va_arg(*p_va, char **); | 1242 char **p = va_arg(*p_va, char **); |
| 1243 PyBufferProcs *pb = arg->ob_type->tp_as_buffer; | 1243 PyBufferProcs *pb = arg->ob_type->tp_as_buffer; |
| 1244 int count; | 1244 int count; |
| 1245 PyBuffer view; | 1245 Py_buffer view; |
| 1246 | 1246 |
| 1247 if (*format++ != '#') | 1247 if (*format++ != '#') |
| 1248 return converterr( | 1248 return converterr( |
| 1249 "invalid use of 't' format character", | 1249 "invalid use of 't' format character", |
| 1250 arg, msgbuf, bufsize); | 1250 arg, msgbuf, bufsize); |
| 1284 static Py_ssize_t | 1284 static Py_ssize_t |
| 1285 convertbuffer(PyObject *arg, void **p, char **errmsg) | 1285 convertbuffer(PyObject *arg, void **p, char **errmsg) |
| 1286 { | 1286 { |
| 1287 PyBufferProcs *pb = arg->ob_type->tp_as_buffer; | 1287 PyBufferProcs *pb = arg->ob_type->tp_as_buffer; |
| 1288 Py_ssize_t count; | 1288 Py_ssize_t count; |
| 1289 PyBuffer view; | 1289 Py_buffer view; |
| 1290 | 1290 |
| 1291 *errmsg = NULL; | 1291 *errmsg = NULL; |
| 1292 *p = NULL; | 1292 *p = NULL; |
| 1293 if (pb == NULL || | 1293 if (pb == NULL || |
| 1294 pb->bf_getbuffer == NULL) { | 1294 pb->bf_getbuffer == NULL) { |
