@@ -2698,10 +2698,10 @@ class CConverter(metaclass=CConverterAutoRegister):
2698
2698
"""
2699
2699
2700
2700
# The C name to use for this variable.
2701
- name : str | None = None
2701
+ name : str
2702
2702
2703
2703
# The Python name to use for this variable.
2704
- py_name : str | None = None
2704
+ py_name : str
2705
2705
2706
2706
# The C type to use for this variable.
2707
2707
# 'type' should be a Python string specifying the type, e.g. "int".
@@ -2864,7 +2864,11 @@ def _render_self(self, parameter: Parameter, data: CRenderData) -> None:
2864
2864
if self .length :
2865
2865
data .impl_parameters .append ("Py_ssize_t " + self .length_name ())
2866
2866
2867
- def _render_non_self (self , parameter , data ):
2867
+ def _render_non_self (
2868
+ self ,
2869
+ parameter : Parameter ,
2870
+ data : CRenderData
2871
+ ) -> None :
2868
2872
self .parameter = parameter
2869
2873
name = self .name
2870
2874
@@ -2917,31 +2921,30 @@ def render(self, parameter: Parameter, data: CRenderData) -> None:
2917
2921
self ._render_self (parameter , data )
2918
2922
self ._render_non_self (parameter , data )
2919
2923
2920
- def length_name (self ):
2924
+ def length_name (self ) -> str :
2921
2925
"""Computes the name of the associated "length" variable."""
2922
- if not self .length :
2923
- return None
2926
+ assert self .length is not None
2924
2927
return self .parser_name + "_length"
2925
2928
2926
2929
# Why is this one broken out separately?
2927
2930
# For "positional-only" function parsing,
2928
2931
# which generates a bunch of PyArg_ParseTuple calls.
2929
- def parse_argument (self , list ) :
2932
+ def parse_argument (self , args : list [ str ]) -> None :
2930
2933
assert not (self .converter and self .encoding )
2931
2934
if self .format_unit == 'O&' :
2932
2935
assert self .converter
2933
- list .append (self .converter )
2936
+ args .append (self .converter )
2934
2937
2935
2938
if self .encoding :
2936
- list .append (c_repr (self .encoding ))
2939
+ args .append (c_repr (self .encoding ))
2937
2940
elif self .subclass_of :
2938
- list .append (self .subclass_of )
2941
+ args .append (self .subclass_of )
2939
2942
2940
2943
s = ("&" if self .parse_by_reference else "" ) + self .name
2941
- list .append (s )
2944
+ args .append (s )
2942
2945
2943
2946
if self .length :
2944
- list .append ("&" + self .length_name ())
2947
+ args .append ("&" + self .length_name ())
2945
2948
2946
2949
#
2947
2950
# All the functions after here are intended as extension points.
@@ -3066,7 +3069,7 @@ def set_template_dict(self, template_dict: TemplateDict) -> None:
3066
3069
pass
3067
3070
3068
3071
@property
3069
- def parser_name (self ):
3072
+ def parser_name (self ) -> str :
3070
3073
if self .name in CLINIC_PREFIXED_ARGS : # bpo-39741
3071
3074
return CLINIC_PREFIX + self .name
3072
3075
else :
0 commit comments