@@ -3046,7 +3046,7 @@ def pre_render(self) -> None:
3046
3046
"""
3047
3047
pass
3048
3048
3049
- def parse_arg (self , argname : str , displayname : str ):
3049
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3050
3050
if self .format_unit == 'O&' :
3051
3051
return """
3052
3052
if (!{converter}({argname}, &{paramname})) {{{{
@@ -3149,7 +3149,7 @@ def converter_init(self, *, accept: TypeSet = {object}) -> None:
3149
3149
self .default = bool (self .default )
3150
3150
self .c_default = str (int (self .default ))
3151
3151
3152
- def parse_arg (self , argname : str , displayname : str ) -> str :
3152
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3153
3153
if self .format_unit == 'i' :
3154
3154
return """
3155
3155
{paramname} = _PyLong_AsInt({argname});
@@ -3200,7 +3200,7 @@ def converter_init(self) -> None:
3200
3200
if self .c_default == '"\' "' :
3201
3201
self .c_default = r"'\''"
3202
3202
3203
- def parse_arg (self , argname : str , displayname : str ) -> str :
3203
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3204
3204
if self .format_unit == 'c' :
3205
3205
return """
3206
3206
if (PyBytes_Check({argname}) && PyBytes_GET_SIZE({argname}) == 1) {{{{
@@ -3229,7 +3229,7 @@ def converter_init(self, *, bitwise: bool = False) -> None:
3229
3229
if bitwise :
3230
3230
self .format_unit = 'B'
3231
3231
3232
- def parse_arg (self , argname : str , displayname : str ) -> str :
3232
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3233
3233
if self .format_unit == 'b' :
3234
3234
return """
3235
3235
{{{{
@@ -3274,7 +3274,7 @@ class short_converter(CConverter):
3274
3274
format_unit = 'h'
3275
3275
c_ignored_default = "0"
3276
3276
3277
- def parse_arg (self , argname : str , displayname : str ) -> str :
3277
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3278
3278
if self .format_unit == 'h' :
3279
3279
return """
3280
3280
{{{{
@@ -3310,7 +3310,7 @@ def converter_init(self, *, bitwise: bool = False) -> None:
3310
3310
else :
3311
3311
self .converter = '_PyLong_UnsignedShort_Converter'
3312
3312
3313
- def parse_arg (self , argname : str , displayname : str ) -> str :
3313
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3314
3314
if self .format_unit == 'H' :
3315
3315
return """
3316
3316
{paramname} = (unsigned short)PyLong_AsUnsignedLongMask({argname});
@@ -3337,7 +3337,7 @@ def converter_init(
3337
3337
if type is not None :
3338
3338
self .type = type
3339
3339
3340
- def parse_arg (self , argname : str , displayname : str ) -> str :
3340
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3341
3341
if self .format_unit == 'i' :
3342
3342
return """
3343
3343
{paramname} = _PyLong_AsInt({argname});
@@ -3371,7 +3371,7 @@ def converter_init(self, *, bitwise: bool = False) -> None:
3371
3371
else :
3372
3372
self .converter = '_PyLong_UnsignedInt_Converter'
3373
3373
3374
- def parse_arg (self , argname : str , displayname : str ) -> str :
3374
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3375
3375
if self .format_unit == 'I' :
3376
3376
return """
3377
3377
{paramname} = (unsigned int)PyLong_AsUnsignedLongMask({argname});
@@ -3387,7 +3387,7 @@ class long_converter(CConverter):
3387
3387
format_unit = 'l'
3388
3388
c_ignored_default = "0"
3389
3389
3390
- def parse_arg (self , argname : str , displayname : str ) -> str :
3390
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3391
3391
if self .format_unit == 'l' :
3392
3392
return """
3393
3393
{paramname} = PyLong_AsLong({argname});
@@ -3408,7 +3408,7 @@ def converter_init(self, *, bitwise: bool = False) -> None:
3408
3408
else :
3409
3409
self .converter = '_PyLong_UnsignedLong_Converter'
3410
3410
3411
- def parse_arg (self , argname : str , displayname : str ) -> str :
3411
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3412
3412
if self .format_unit == 'k' :
3413
3413
return """
3414
3414
if (!PyLong_Check({argname})) {{{{
@@ -3426,7 +3426,7 @@ class long_long_converter(CConverter):
3426
3426
format_unit = 'L'
3427
3427
c_ignored_default = "0"
3428
3428
3429
- def parse_arg (self , argname : str , displayname : str ) -> str :
3429
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3430
3430
if self .format_unit == 'L' :
3431
3431
return """
3432
3432
{paramname} = PyLong_AsLongLong({argname});
@@ -3447,7 +3447,7 @@ def converter_init(self, *, bitwise: bool = False) -> None:
3447
3447
else :
3448
3448
self .converter = '_PyLong_UnsignedLongLong_Converter'
3449
3449
3450
- def parse_arg (self , argname : str , displayname : str ) -> str :
3450
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3451
3451
if self .format_unit == 'K' :
3452
3452
return """
3453
3453
if (!PyLong_Check({argname})) {{{{
@@ -3472,7 +3472,7 @@ def converter_init(self, *, accept: TypeSet = {int}) -> None:
3472
3472
else :
3473
3473
fail ("Py_ssize_t_converter: illegal 'accept' argument " + repr (accept ))
3474
3474
3475
- def parse_arg (self , argname : str , displayname : str ) -> str :
3475
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3476
3476
if self .format_unit == 'n' :
3477
3477
return """
3478
3478
{{{{
@@ -3507,7 +3507,7 @@ class size_t_converter(CConverter):
3507
3507
converter = '_PyLong_Size_t_Converter'
3508
3508
c_ignored_default = "0"
3509
3509
3510
- def parse_arg (self , argname : str , displayname : str ) -> str :
3510
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3511
3511
if self .format_unit == 'n' :
3512
3512
return """
3513
3513
{paramname} = PyNumber_AsSsize_t({argname}, PyExc_OverflowError);
@@ -3522,7 +3522,7 @@ class fildes_converter(CConverter):
3522
3522
type = 'int'
3523
3523
converter = '_PyLong_FileDescriptor_Converter'
3524
3524
3525
- def _parse_arg (self , argname : str , displayname : str ) -> str :
3525
+ def _parse_arg (self , argname : str , displayname : str ) -> str | None :
3526
3526
return """
3527
3527
{paramname} = PyObject_AsFileDescriptor({argname});
3528
3528
if ({paramname} == -1) {{{{
@@ -3537,7 +3537,7 @@ class float_converter(CConverter):
3537
3537
format_unit = 'f'
3538
3538
c_ignored_default = "0.0"
3539
3539
3540
- def parse_arg (self , argname : str , displayname : str ) -> str :
3540
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3541
3541
if self .format_unit == 'f' :
3542
3542
return """
3543
3543
if (PyFloat_CheckExact({argname})) {{{{
@@ -3559,7 +3559,7 @@ class double_converter(CConverter):
3559
3559
format_unit = 'd'
3560
3560
c_ignored_default = "0.0"
3561
3561
3562
- def parse_arg (self , argname : str , displayname : str ) -> str :
3562
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3563
3563
if self .format_unit == 'd' :
3564
3564
return """
3565
3565
if (PyFloat_CheckExact({argname})) {{{{
@@ -3582,7 +3582,7 @@ class Py_complex_converter(CConverter):
3582
3582
format_unit = 'D'
3583
3583
c_ignored_default = "{0.0, 0.0}"
3584
3584
3585
- def parse_arg (self , argname : str , displayname : str ) -> str :
3585
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3586
3586
if self .format_unit == 'D' :
3587
3587
return """
3588
3588
{paramname} = PyComplex_AsCComplex({argname});
@@ -3671,7 +3671,7 @@ def post_parsing(self) -> str:
3671
3671
else :
3672
3672
return ""
3673
3673
3674
- def parse_arg (self , argname : str , displayname : str ) -> str :
3674
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3675
3675
if self .format_unit == 's' :
3676
3676
return """
3677
3677
if (!PyUnicode_Check({argname})) {{{{
@@ -3773,7 +3773,7 @@ class PyBytesObject_converter(CConverter):
3773
3773
format_unit = 'S'
3774
3774
# accept = {bytes}
3775
3775
3776
- def parse_arg (self , argname : str , displayname : str ) -> str :
3776
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3777
3777
if self .format_unit == 'S' :
3778
3778
return """
3779
3779
if (!PyBytes_Check({argname})) {{{{
@@ -3790,7 +3790,7 @@ class PyByteArrayObject_converter(CConverter):
3790
3790
format_unit = 'Y'
3791
3791
# accept = {bytearray}
3792
3792
3793
- def parse_arg (self , argname : str , displayname : str ) -> str :
3793
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3794
3794
if self .format_unit == 'Y' :
3795
3795
return """
3796
3796
if (!PyByteArray_Check({argname})) {{{{
@@ -3807,7 +3807,7 @@ class unicode_converter(CConverter):
3807
3807
default_type = (str , Null , NoneType )
3808
3808
format_unit = 'U'
3809
3809
3810
- def parse_arg (self , argname : str , displayname : str ) -> str :
3810
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3811
3811
if self .format_unit == 'U' :
3812
3812
return """
3813
3813
if (!PyUnicode_Check({argname})) {{{{
@@ -3855,7 +3855,7 @@ def cleanup(self) -> str:
3855
3855
PyMem_Free((void *){name});
3856
3856
""" .format (name = self .name )
3857
3857
3858
- def parse_arg (self , argname : str , argnum : str ) -> str :
3858
+ def parse_arg (self , argname : str , argnum : str ) -> str | None :
3859
3859
if not self .length :
3860
3860
if self .accept == {str }:
3861
3861
return """
@@ -3918,7 +3918,7 @@ def cleanup(self) -> str:
3918
3918
name = self .name
3919
3919
return "" .join (["if (" , name , ".obj) {\n PyBuffer_Release(&" , name , ");\n }\n " ])
3920
3920
3921
- def parse_arg (self , argname : str , displayname : str ) -> str :
3921
+ def parse_arg (self , argname : str , displayname : str ) -> str | None :
3922
3922
if self .format_unit == 'y*' :
3923
3923
return """
3924
3924
if (PyObject_GetBuffer({argname}, &{paramname}, PyBUF_SIMPLE) != 0) {{{{
0 commit comments