@@ -2567,30 +2567,28 @@ class _empty:
25672567
25682568
25692569class _ParameterKind (enum .IntEnum ):
2570- POSITIONAL_ONLY = 0
2571- POSITIONAL_OR_KEYWORD = 1
2572- VAR_POSITIONAL = 2
2573- KEYWORD_ONLY = 3
2574- VAR_KEYWORD = 4
2570+ POSITIONAL_ONLY = 'positional-only'
2571+ POSITIONAL_OR_KEYWORD = 'positional or keyword'
2572+ VAR_POSITIONAL = 'variadic positional'
2573+ KEYWORD_ONLY = 'keyword-only'
2574+ VAR_KEYWORD = 'variadic keyword'
2575+
2576+ def __new__ (cls , description ):
2577+ value = len (cls .__members__ )
2578+ member = int .__new__ (cls , value )
2579+ member ._value_ = value
2580+ member .description = description
2581+ return member
25752582
2576- @property
2577- def description (self ):
2578- return _PARAM_NAME_MAPPING [self ]
2583+ def __str__ (self ):
2584+ return self .name
25792585
25802586_POSITIONAL_ONLY = _ParameterKind .POSITIONAL_ONLY
25812587_POSITIONAL_OR_KEYWORD = _ParameterKind .POSITIONAL_OR_KEYWORD
25822588_VAR_POSITIONAL = _ParameterKind .VAR_POSITIONAL
25832589_KEYWORD_ONLY = _ParameterKind .KEYWORD_ONLY
25842590_VAR_KEYWORD = _ParameterKind .VAR_KEYWORD
25852591
2586- _PARAM_NAME_MAPPING = {
2587- _POSITIONAL_ONLY : 'positional-only' ,
2588- _POSITIONAL_OR_KEYWORD : 'positional or keyword' ,
2589- _VAR_POSITIONAL : 'variadic positional' ,
2590- _KEYWORD_ONLY : 'keyword-only' ,
2591- _VAR_KEYWORD : 'variadic keyword'
2592- }
2593-
25942592
25952593class Parameter :
25962594 """Represents a parameter in a function signature.
0 commit comments