@@ -261,6 +261,8 @@ typedef struct {
261
261
PyObject * weakreflist ;
262
262
} buffered ;
263
263
264
+ #define buffered_CAST (op ) ((buffered *)(op))
265
+
264
266
/*
265
267
Implementation notes:
266
268
@@ -399,25 +401,27 @@ _enter_buffered_busy(buffered *self)
399
401
400
402
401
403
static int
402
- buffered_clear (buffered * self )
404
+ buffered_clear (PyObject * op )
403
405
{
406
+ buffered * self = buffered_CAST (op );
404
407
self -> ok = 0 ;
405
408
Py_CLEAR (self -> raw );
406
409
Py_CLEAR (self -> dict );
407
410
return 0 ;
408
411
}
409
412
410
413
static void
411
- buffered_dealloc (buffered * self )
414
+ buffered_dealloc (PyObject * op )
412
415
{
416
+ buffered * self = buffered_CAST (op );
413
417
PyTypeObject * tp = Py_TYPE (self );
414
418
self -> finalizing = 1 ;
415
- if (_PyIOBase_finalize (( PyObject * ) self ) < 0 )
419
+ if (_PyIOBase_finalize (op ) < 0 )
416
420
return ;
417
421
_PyObject_GC_UNTRACK (self );
418
422
self -> ok = 0 ;
419
423
if (self -> weakreflist != NULL )
420
- PyObject_ClearWeakRefs (( PyObject * ) self );
424
+ PyObject_ClearWeakRefs (op );
421
425
if (self -> buffer ) {
422
426
PyMem_Free (self -> buffer );
423
427
self -> buffer = NULL ;
@@ -426,8 +430,8 @@ buffered_dealloc(buffered *self)
426
430
PyThread_free_lock (self -> lock );
427
431
self -> lock = NULL ;
428
432
}
429
- (void )buffered_clear (self );
430
- tp -> tp_free (( PyObject * ) self );
433
+ (void )buffered_clear (op );
434
+ tp -> tp_free (self );
431
435
Py_DECREF (tp );
432
436
}
433
437
@@ -2227,6 +2231,8 @@ typedef struct {
2227
2231
PyObject * weakreflist ;
2228
2232
} rwpair ;
2229
2233
2234
+ #define rwpair_CAST (op ) ((rwpair *)(op))
2235
+
2230
2236
/*[clinic input]
2231
2237
_io.BufferedRWPair.__init__
2232
2238
reader: object
@@ -2276,8 +2282,9 @@ _io_BufferedRWPair___init___impl(rwpair *self, PyObject *reader,
2276
2282
}
2277
2283
2278
2284
static int
2279
- bufferedrwpair_traverse (rwpair * self , visitproc visit , void * arg )
2285
+ bufferedrwpair_traverse (PyObject * op , visitproc visit , void * arg )
2280
2286
{
2287
+ rwpair * self = rwpair_CAST (op );
2281
2288
Py_VISIT (Py_TYPE (self ));
2282
2289
Py_VISIT (self -> dict );
2283
2290
Py_VISIT (self -> reader );
@@ -2286,23 +2293,25 @@ bufferedrwpair_traverse(rwpair *self, visitproc visit, void *arg)
2286
2293
}
2287
2294
2288
2295
static int
2289
- bufferedrwpair_clear (rwpair * self )
2296
+ bufferedrwpair_clear (PyObject * op )
2290
2297
{
2298
+ rwpair * self = rwpair_CAST (op );
2291
2299
Py_CLEAR (self -> reader );
2292
2300
Py_CLEAR (self -> writer );
2293
2301
Py_CLEAR (self -> dict );
2294
2302
return 0 ;
2295
2303
}
2296
2304
2297
2305
static void
2298
- bufferedrwpair_dealloc (rwpair * self )
2306
+ bufferedrwpair_dealloc (PyObject * op )
2299
2307
{
2308
+ rwpair * self = rwpair_CAST (op );
2300
2309
PyTypeObject * tp = Py_TYPE (self );
2301
2310
_PyObject_GC_UNTRACK (self );
2302
2311
if (self -> weakreflist != NULL )
2303
- PyObject_ClearWeakRefs (( PyObject * ) self );
2304
- (void )bufferedrwpair_clear (self );
2305
- tp -> tp_free (( PyObject * ) self );
2312
+ PyObject_ClearWeakRefs (op );
2313
+ (void )bufferedrwpair_clear (op );
2314
+ tp -> tp_free (self );
2306
2315
Py_DECREF (tp );
2307
2316
}
2308
2317
@@ -2328,62 +2337,72 @@ _forward_call(buffered *self, PyObject *name, PyObject *args)
2328
2337
}
2329
2338
2330
2339
static PyObject *
2331
- bufferedrwpair_read (rwpair * self , PyObject * args )
2340
+ bufferedrwpair_read (PyObject * op , PyObject * args )
2332
2341
{
2342
+ rwpair * self = rwpair_CAST (op );
2333
2343
return _forward_call (self -> reader , & _Py_ID (read ), args );
2334
2344
}
2335
2345
2336
2346
static PyObject *
2337
- bufferedrwpair_peek (rwpair * self , PyObject * args )
2347
+ bufferedrwpair_peek (PyObject * op , PyObject * args )
2338
2348
{
2349
+ rwpair * self = rwpair_CAST (op );
2339
2350
return _forward_call (self -> reader , & _Py_ID (peek ), args );
2340
2351
}
2341
2352
2342
2353
static PyObject *
2343
- bufferedrwpair_read1 (rwpair * self , PyObject * args )
2354
+ bufferedrwpair_read1 (PyObject * op , PyObject * args )
2344
2355
{
2356
+ rwpair * self = rwpair_CAST (op );
2345
2357
return _forward_call (self -> reader , & _Py_ID (read1 ), args );
2346
2358
}
2347
2359
2348
2360
static PyObject *
2349
- bufferedrwpair_readinto (rwpair * self , PyObject * args )
2361
+ bufferedrwpair_readinto (PyObject * op , PyObject * args )
2350
2362
{
2363
+ rwpair * self = rwpair_CAST (op );
2351
2364
return _forward_call (self -> reader , & _Py_ID (readinto ), args );
2352
2365
}
2353
2366
2354
2367
static PyObject *
2355
- bufferedrwpair_readinto1 (rwpair * self , PyObject * args )
2368
+ bufferedrwpair_readinto1 (PyObject * op , PyObject * args )
2356
2369
{
2370
+ rwpair * self = rwpair_CAST (op );
2357
2371
return _forward_call (self -> reader , & _Py_ID (readinto1 ), args );
2358
2372
}
2359
2373
2360
2374
static PyObject *
2361
- bufferedrwpair_write (rwpair * self , PyObject * args )
2375
+ bufferedrwpair_write (PyObject * op , PyObject * args )
2362
2376
{
2377
+ rwpair * self = rwpair_CAST (op );
2363
2378
return _forward_call (self -> writer , & _Py_ID (write ), args );
2364
2379
}
2365
2380
2366
2381
static PyObject *
2367
- bufferedrwpair_flush (rwpair * self , PyObject * Py_UNUSED (ignored ))
2382
+ bufferedrwpair_flush (PyObject * op , PyObject * Py_UNUSED (dummy ))
2368
2383
{
2384
+ rwpair * self = rwpair_CAST (op );
2369
2385
return _forward_call (self -> writer , & _Py_ID (flush ), NULL );
2370
2386
}
2371
2387
2372
2388
static PyObject *
2373
- bufferedrwpair_readable (rwpair * self , PyObject * Py_UNUSED (ignored ))
2389
+ bufferedrwpair_readable (PyObject * op , PyObject * Py_UNUSED (dummy ))
2374
2390
{
2391
+ rwpair * self = rwpair_CAST (op );
2375
2392
return _forward_call (self -> reader , & _Py_ID (readable ), NULL );
2376
2393
}
2377
2394
2378
2395
static PyObject *
2379
- bufferedrwpair_writable (rwpair * self , PyObject * Py_UNUSED (ignored ))
2396
+ bufferedrwpair_writable (PyObject * op , PyObject * Py_UNUSED (dummy ))
2380
2397
{
2398
+ rwpair * self = rwpair_CAST (op );
2381
2399
return _forward_call (self -> writer , & _Py_ID (writable ), NULL );
2382
2400
}
2383
2401
2384
2402
static PyObject *
2385
- bufferedrwpair_close (rwpair * self , PyObject * Py_UNUSED (ignored ))
2403
+ bufferedrwpair_close (PyObject * op , PyObject * Py_UNUSED (dummy ))
2386
2404
{
2405
+ rwpair * self = rwpair_CAST (op );
2387
2406
PyObject * exc = NULL ;
2388
2407
PyObject * ret = _forward_call (self -> writer , & _Py_ID (close ), NULL );
2389
2408
if (ret == NULL ) {
@@ -2401,8 +2420,9 @@ bufferedrwpair_close(rwpair *self, PyObject *Py_UNUSED(ignored))
2401
2420
}
2402
2421
2403
2422
static PyObject *
2404
- bufferedrwpair_isatty (rwpair * self , PyObject * Py_UNUSED (ignored ))
2423
+ bufferedrwpair_isatty (PyObject * op , PyObject * Py_UNUSED (dummy ))
2405
2424
{
2425
+ rwpair * self = rwpair_CAST (op );
2406
2426
PyObject * ret = _forward_call (self -> writer , & _Py_ID (isatty ), NULL );
2407
2427
2408
2428
if (ret != Py_False ) {
@@ -2415,8 +2435,9 @@ bufferedrwpair_isatty(rwpair *self, PyObject *Py_UNUSED(ignored))
2415
2435
}
2416
2436
2417
2437
static PyObject *
2418
- bufferedrwpair_closed_get (rwpair * self , void * context )
2438
+ bufferedrwpair_closed_get (PyObject * op , void * Py_UNUSED ( dummy ) )
2419
2439
{
2440
+ rwpair * self = rwpair_CAST (op );
2420
2441
if (self -> writer == NULL ) {
2421
2442
PyErr_SetString (PyExc_RuntimeError ,
2422
2443
"the BufferedRWPair object is being garbage-collected" );
@@ -2633,20 +2654,20 @@ PyType_Spec bufferedwriter_spec = {
2633
2654
};
2634
2655
2635
2656
static PyMethodDef bufferedrwpair_methods [] = {
2636
- {"read" , ( PyCFunction ) bufferedrwpair_read , METH_VARARGS },
2637
- {"peek" , ( PyCFunction ) bufferedrwpair_peek , METH_VARARGS },
2638
- {"read1" , ( PyCFunction ) bufferedrwpair_read1 , METH_VARARGS },
2639
- {"readinto" , ( PyCFunction ) bufferedrwpair_readinto , METH_VARARGS },
2640
- {"readinto1" , ( PyCFunction ) bufferedrwpair_readinto1 , METH_VARARGS },
2657
+ {"read" , bufferedrwpair_read , METH_VARARGS },
2658
+ {"peek" , bufferedrwpair_peek , METH_VARARGS },
2659
+ {"read1" , bufferedrwpair_read1 , METH_VARARGS },
2660
+ {"readinto" , bufferedrwpair_readinto , METH_VARARGS },
2661
+ {"readinto1" , bufferedrwpair_readinto1 , METH_VARARGS },
2641
2662
2642
- {"write" , ( PyCFunction ) bufferedrwpair_write , METH_VARARGS },
2643
- {"flush" , ( PyCFunction ) bufferedrwpair_flush , METH_NOARGS },
2663
+ {"write" , bufferedrwpair_write , METH_VARARGS },
2664
+ {"flush" , bufferedrwpair_flush , METH_NOARGS },
2644
2665
2645
- {"readable" , ( PyCFunction ) bufferedrwpair_readable , METH_NOARGS },
2646
- {"writable" , ( PyCFunction ) bufferedrwpair_writable , METH_NOARGS },
2666
+ {"readable" , bufferedrwpair_readable , METH_NOARGS },
2667
+ {"writable" , bufferedrwpair_writable , METH_NOARGS },
2647
2668
2648
- {"close" , ( PyCFunction ) bufferedrwpair_close , METH_NOARGS },
2649
- {"isatty" , ( PyCFunction ) bufferedrwpair_isatty , METH_NOARGS },
2669
+ {"close" , bufferedrwpair_close , METH_NOARGS },
2670
+ {"isatty" , bufferedrwpair_isatty , METH_NOARGS },
2650
2671
2651
2672
{NULL , NULL }
2652
2673
};
@@ -2658,7 +2679,7 @@ static PyMemberDef bufferedrwpair_members[] = {
2658
2679
};
2659
2680
2660
2681
static PyGetSetDef bufferedrwpair_getset [] = {
2661
- {"closed" , ( getter ) bufferedrwpair_closed_get , NULL , NULL },
2682
+ {"closed" , bufferedrwpair_closed_get , NULL , NULL },
2662
2683
{NULL }
2663
2684
};
2664
2685
0 commit comments