@@ -437,7 +437,9 @@ class FormatCounterFormatter(string.Formatter):
437
437
def __init__ (self ) -> None :
438
438
self .counts = collections .Counter [str ]()
439
439
440
- def get_value (self , key : str , args , kwargs ) -> str : # type: ignore[override]
440
+ def get_value (
441
+ self , key : str , args : object , kwargs : object # type: ignore[override]
442
+ ) -> Literal ['' ]:
441
443
self .counts [key ] += 1
442
444
return ''
443
445
@@ -2797,7 +2799,7 @@ class CConverter(metaclass=CConverterAutoRegister):
2797
2799
# This lets the self_converter overrule the user-settable
2798
2800
# name, *just* for the text signature.
2799
2801
# Only set by self_converter.
2800
- signature_name = None
2802
+ signature_name : str | None = None
2801
2803
2802
2804
# keep in sync with self_converter.__init__!
2803
2805
def __init__ (self ,
@@ -2811,8 +2813,8 @@ def __init__(self,
2811
2813
py_default : str | None = None ,
2812
2814
annotation : str | Literal [Sentinels .unspecified ] = unspecified ,
2813
2815
unused : bool = False ,
2814
- ** kwargs
2815
- ):
2816
+ ** kwargs : Any
2817
+ ) -> None :
2816
2818
self .name = ensure_legal_c_identifier (name )
2817
2819
self .py_name = py_name
2818
2820
self .unused = unused
@@ -2849,7 +2851,7 @@ def __init__(self,
2849
2851
self .converter_init (** kwargs )
2850
2852
self .function = function
2851
2853
2852
- def converter_init (self ):
2854
+ def converter_init (self ) -> None :
2853
2855
pass
2854
2856
2855
2857
def is_optional (self ) -> bool :
@@ -3032,7 +3034,7 @@ def cleanup(self) -> str:
3032
3034
"""
3033
3035
return ""
3034
3036
3035
- def pre_render (self ):
3037
+ def pre_render (self ) -> None :
3036
3038
"""
3037
3039
A second initialization function, like converter_init,
3038
3040
called just before rendering.
@@ -3169,7 +3171,7 @@ class defining_class_converter(CConverter):
3169
3171
format_unit = ''
3170
3172
show_in_signature = False
3171
3173
3172
- def converter_init (self , * , type = None ) -> None :
3174
+ def converter_init (self , * , type : str | None = None ) -> None :
3173
3175
self .specified_type = type
3174
3176
3175
3177
def render (self , parameter , data ) -> None :
@@ -3321,7 +3323,9 @@ class int_converter(CConverter):
3321
3323
format_unit = 'i'
3322
3324
c_ignored_default = "0"
3323
3325
3324
- def converter_init (self , * , accept : TypeSet = {int }, type = None ) -> None :
3326
+ def converter_init (
3327
+ self , * , accept : TypeSet = {int }, type : str | None = None
3328
+ ) -> None :
3325
3329
if accept == {str }:
3326
3330
self .format_unit = 'C'
3327
3331
elif accept != {int }:
@@ -3982,14 +3986,15 @@ class self_converter(CConverter):
3982
3986
A special-case converter:
3983
3987
this is the default converter used for "self".
3984
3988
"""
3985
- type = None
3989
+ type : str | None = None
3986
3990
format_unit = ''
3987
3991
3988
3992
def converter_init (self , * , type : str | None = None ) -> None :
3989
3993
self .specified_type = type
3990
3994
3991
- def pre_render (self ):
3995
+ def pre_render (self ) -> None :
3992
3996
f = self .function
3997
+ assert isinstance (f , Function )
3993
3998
default_type , default_name = correct_name_for_self (f )
3994
3999
self .signature_name = default_name
3995
4000
self .type = self .specified_type or self .type or default_type
@@ -4038,7 +4043,9 @@ def pre_render(self):
4038
4043
# in the impl call.
4039
4044
4040
4045
@property
4041
- def parser_type (self ):
4046
+ def parser_type (self ) -> str :
4047
+ assert self .type is not None
4048
+ assert isinstance (self .function , Function )
4042
4049
return required_type_for_self_for_parser (self .function ) or self .type
4043
4050
4044
4051
def render (self , parameter , data ):
0 commit comments