1
+ from _typeshed import Incomplete
1
2
from abc import abstractmethod
2
3
from collections .abc import Callable , Iterable , Mapping , Sequence
3
- from typing import IO , Any , AnyStr , overload
4
+ from typing import IO , Any , AnyStr , Literal , overload
4
5
5
6
__all__ = [
6
7
"Option" ,
@@ -26,8 +27,8 @@ NO_DEFAULT: tuple[str, ...]
26
27
SUPPRESS_HELP : str
27
28
SUPPRESS_USAGE : str
28
29
29
- def check_builtin (option : Option , opt : Any , value : str ) -> Any : ...
30
- def check_choice (option : Option , opt : Any , value : str ) -> str : ...
30
+ def check_builtin (option : Option , opt , value : str ): ...
31
+ def check_choice (option : Option , opt , value : str ) -> str : ...
31
32
32
33
class OptParseError (Exception ):
33
34
msg : str
@@ -54,26 +55,26 @@ class HelpFormatter:
54
55
_short_opt_fmt : str
55
56
current_indent : int
56
57
default_tag : str
57
- help_position : Any
58
- help_width : Any
58
+ help_position : int
59
+ help_width : int | Any # initialized as None and computed later as int when storing option strings
59
60
indent_increment : int
60
61
level : int
61
62
max_help_position : int
62
63
option_strings : dict [Option , str ]
63
64
parser : OptionParser
64
- short_first : Any
65
+ short_first : Incomplete
65
66
width : int
66
67
def __init__ (self , indent_increment : int , max_help_position : int , width : int | None , short_first : int ) -> None : ...
67
68
def dedent (self ) -> None : ...
68
69
def expand_default (self , option : Option ) -> str : ...
69
- def format_description (self , description : str ) -> str : ...
70
- def format_epilog (self , epilog : str ) -> str : ...
70
+ def format_description (self , description : str | None ) -> str : ...
71
+ def format_epilog (self , epilog : str | None ) -> str : ...
71
72
@abstractmethod
72
- def format_heading (self , heading : Any ) -> str : ...
73
+ def format_heading (self , heading : str ) -> str : ...
73
74
def format_option (self , option : Option ) -> str : ...
74
75
def format_option_strings (self , option : Option ) -> str : ...
75
76
@abstractmethod
76
- def format_usage (self , usage : Any ) -> str : ...
77
+ def format_usage (self , usage : str ) -> str : ...
77
78
def indent (self ) -> None : ...
78
79
def set_long_opt_delimiter (self , delim : str ) -> None : ...
79
80
def set_parser (self , parser : OptionParser ) -> None : ...
@@ -98,25 +99,25 @@ class Option:
98
99
ACTIONS : tuple [str , ...]
99
100
ALWAYS_TYPED_ACTIONS : tuple [str , ...]
100
101
ATTRS : list [str ]
101
- CHECK_METHODS : list [Callable [..., Any ]] | None
102
+ CHECK_METHODS : list [Callable [..., Incomplete ]] | None
102
103
CONST_ACTIONS : tuple [str , ...]
103
104
STORE_ACTIONS : tuple [str , ...]
104
105
TYPED_ACTIONS : tuple [str , ...]
105
106
TYPES : tuple [str , ...]
106
- TYPE_CHECKER : dict [str , Callable [... , Any ]]
107
+ TYPE_CHECKER : dict [str , Callable [[ Option , str , Incomplete ] , Any ]]
107
108
_long_opts : list [str ]
108
109
_short_opts : list [str ]
109
110
action : str
110
111
dest : str | None
111
- default : Any
112
+ default : Incomplete
112
113
nargs : int
113
- type : Any
114
- callback : Callable [..., Any ] | None
115
- callback_args : tuple [Any , ...] | None
116
- callback_kwargs : dict [str , Any ] | None
114
+ type : Incomplete
115
+ callback : Callable [..., Incomplete ] | None
116
+ callback_args : tuple [Incomplete , ...] | None
117
+ callback_kwargs : dict [str , Incomplete ] | None
117
118
help : str | None
118
119
metavar : str | None
119
- def __init__ (self , * opts : str | None , ** attrs : Any ) -> None : ...
120
+ def __init__ (self , * opts : str | None , ** attrs ) -> None : ...
120
121
def _check_action (self ) -> None : ...
121
122
def _check_callback (self ) -> None : ...
122
123
def _check_choice (self ) -> None : ...
@@ -125,13 +126,13 @@ class Option:
125
126
def _check_nargs (self ) -> None : ...
126
127
def _check_opt_strings (self , opts : Iterable [str | None ]) -> list [str ]: ...
127
128
def _check_type (self ) -> None : ...
128
- def _set_attrs (self , attrs : dict [str , Any ]) -> None : ...
129
+ def _set_attrs (self , attrs : dict [str , Incomplete ]) -> None : ...
129
130
def _set_opt_strings (self , opts : Iterable [str ]) -> None : ...
130
- def check_value (self , opt : str , value : Any ) -> Any : ...
131
- def convert_value (self , opt : str , value : Any ) -> Any : ...
131
+ def check_value (self , opt : str , value ) : ...
132
+ def convert_value (self , opt : str , value ) : ...
132
133
def get_opt_string (self ) -> str : ...
133
- def process (self , opt : Any , value : Any , values : Any , parser : OptionParser ) -> int : ...
134
- def take_action (self , action : str , dest : str , opt : Any , value : Any , values : Any , parser : OptionParser ) -> int : ...
134
+ def process (self , opt , value , values , parser : OptionParser ) -> int : ...
135
+ def take_action (self , action : str , dest : str , opt , value , values , parser : OptionParser ) -> int : ...
135
136
def takes_value (self ) -> bool : ...
136
137
137
138
make_option = Option
@@ -140,28 +141,30 @@ class OptionContainer:
140
141
_long_opt : dict [str , Option ]
141
142
_short_opt : dict [str , Option ]
142
143
conflict_handler : str
143
- defaults : dict [str , Any ]
144
- description : Any
144
+ defaults : dict [str , Incomplete ]
145
+ description : str | None
145
146
option_class : type [Option ]
146
- def __init__ (self , option_class : type [Option ], conflict_handler : Any , description : Any ) -> None : ...
147
- def _check_conflict (self , option : Any ) -> None : ...
147
+ def __init__ (
148
+ self , option_class : type [Option ], conflict_handler : Literal ["error" , "resolve" ], description : str | None
149
+ ) -> None : ...
150
+ def _check_conflict (self , option : Option ) -> None : ...
148
151
def _create_option_mappings (self ) -> None : ...
149
152
def _share_option_mappings (self , parser : OptionParser ) -> None : ...
150
153
@overload
151
154
def add_option (self , opt : Option ) -> Option : ...
152
155
@overload
153
- def add_option (self , * args : str | None , ** kwargs : Any ) -> Any : ...
156
+ def add_option (self , arg : str , / , * args : str | None , ** kwargs ) -> Option : ...
154
157
def add_options (self , option_list : Iterable [Option ]) -> None : ...
155
158
def destroy (self ) -> None : ...
156
- def format_description (self , formatter : HelpFormatter | None ) -> Any : ...
157
- def format_help (self , formatter : HelpFormatter | None ) -> str : ...
158
- def format_option_help (self , formatter : HelpFormatter | None ) -> str : ...
159
- def get_description (self ) -> Any : ...
159
+ def format_option_help (self , formatter : HelpFormatter ) -> str : ...
160
+ def format_description (self , formatter : HelpFormatter ) -> str : ...
161
+ def format_help (self , formatter : HelpFormatter ) -> str : ...
162
+ def get_description (self ) -> str | None : ...
160
163
def get_option (self , opt_str : str ) -> Option | None : ...
161
164
def has_option (self , opt_str : str ) -> bool : ...
162
165
def remove_option (self , opt_str : str ) -> None : ...
163
- def set_conflict_handler (self , handler : Any ) -> None : ...
164
- def set_description (self , description : Any ) -> None : ...
166
+ def set_conflict_handler (self , handler : Literal [ "error" , "resolve" ] ) -> None : ...
167
+ def set_description (self , description : str | None ) -> None : ...
165
168
166
169
class OptionGroup (OptionContainer ):
167
170
option_list : list [Option ]
@@ -172,15 +175,15 @@ class OptionGroup(OptionContainer):
172
175
def set_title (self , title : str ) -> None : ...
173
176
174
177
class Values :
175
- def __init__ (self , defaults : Mapping [str , Any ] | None = None ) -> None : ...
176
- def _update (self , dict : Mapping [str , Any ], mode : Any ) -> None : ...
177
- def _update_careful (self , dict : Mapping [str , Any ]) -> None : ...
178
- def _update_loose (self , dict : Mapping [str , Any ]) -> None : ...
179
- def ensure_value (self , attr : str , value : Any ) -> Any : ...
178
+ def __init__ (self , defaults : Mapping [str , Incomplete ] | None = None ) -> None : ...
179
+ def _update (self , dict : Mapping [str , Incomplete ], mode ) -> None : ...
180
+ def _update_careful (self , dict : Mapping [str , Incomplete ]) -> None : ...
181
+ def _update_loose (self , dict : Mapping [str , Incomplete ]) -> None : ...
182
+ def ensure_value (self , attr : str , value ) : ...
180
183
def read_file (self , filename : str , mode : str = "careful" ) -> None : ...
181
184
def read_module (self , modname : str , mode : str = "careful" ) -> None : ...
182
- def __getattr__ (self , name : str ) -> Any : ...
183
- def __setattr__ (self , name : str , value : Any , / ) -> None : ...
185
+ def __getattr__ (self , name : str ): ...
186
+ def __setattr__ (self , name : str , value , / ) -> None : ...
184
187
def __eq__ (self , other : object ) -> bool : ...
185
188
186
189
class OptionParser (OptionContainer ):
@@ -190,9 +193,9 @@ class OptionParser(OptionContainer):
190
193
largs : list [str ] | None
191
194
option_groups : list [OptionGroup ]
192
195
option_list : list [Option ]
193
- process_default_values : Any
196
+ process_default_values : bool
194
197
prog : str | None
195
- rargs : list [Any ] | None
198
+ rargs : list [str ] | None
196
199
standard_option_list : list [Option ]
197
200
usage : str | None
198
201
values : Values | None
@@ -214,28 +217,28 @@ class OptionParser(OptionContainer):
214
217
def _add_version_option (self ) -> None : ...
215
218
def _create_option_list (self ) -> None : ...
216
219
def _get_all_options (self ) -> list [Option ]: ...
217
- def _get_args (self , args : Iterable [Any ]) -> list [Any ]: ...
220
+ def _get_args (self , args : Iterable [Incomplete ]) -> list [Incomplete ]: ...
218
221
def _init_parsing_state (self ) -> None : ...
219
222
def _match_long_opt (self , opt : str ) -> str : ...
220
223
def _populate_option_list (self , option_list : Iterable [Option ], add_help : bool = True ) -> None : ...
221
- def _process_args (self , largs : list [Any ], rargs : list [Any ], values : Values ) -> None : ...
222
- def _process_long_opt (self , rargs : list [Any ], values : Any ) -> None : ...
223
- def _process_short_opts (self , rargs : list [Any ], values : Any ) -> None : ...
224
+ def _process_args (self , largs : list [Incomplete ], rargs : list [Incomplete ], values : Values ) -> None : ...
225
+ def _process_long_opt (self , rargs : list [Incomplete ], values ) -> None : ...
226
+ def _process_short_opts (self , rargs : list [Incomplete ], values ) -> None : ...
224
227
@overload
225
228
def add_option_group (self , opt_group : OptionGroup , / ) -> OptionGroup : ...
226
229
@overload
227
- def add_option_group (self , * args : Any , ** kwargs : Any ) -> OptionGroup : ...
230
+ def add_option_group (self , * args , ** kwargs ) -> OptionGroup : ...
228
231
def check_values (self , values : Values , args : list [str ]) -> tuple [Values , list [str ]]: ...
229
232
def disable_interspersed_args (self ) -> None : ...
230
233
def enable_interspersed_args (self ) -> None : ...
231
234
def error (self , msg : str ) -> None : ...
232
235
def exit (self , status : int = 0 , msg : str | None = None ) -> None : ...
233
- def expand_prog_name (self , s : str | None ) -> Any : ...
234
- def format_epilog (self , formatter : HelpFormatter ) -> Any : ...
236
+ def expand_prog_name (self , s : str ) -> str : ...
237
+ def format_epilog (self , formatter : HelpFormatter ) -> str : ...
235
238
def format_help (self , formatter : HelpFormatter | None = None ) -> str : ...
236
239
def format_option_help (self , formatter : HelpFormatter | None = None ) -> str : ...
237
240
def get_default_values (self ) -> Values : ...
238
- def get_option_group (self , opt_str : str ) -> Any : ...
241
+ def get_option_group (self , opt_str : str ) -> OptionGroup | None : ...
239
242
def get_prog_name (self ) -> str : ...
240
243
def get_usage (self ) -> str : ...
241
244
def get_version (self ) -> str : ...
@@ -246,7 +249,7 @@ class OptionParser(OptionContainer):
246
249
def print_usage (self , file : IO [str ] | None = None ) -> None : ...
247
250
def print_help (self , file : IO [str ] | None = None ) -> None : ...
248
251
def print_version (self , file : IO [str ] | None = None ) -> None : ...
249
- def set_default (self , dest : Any , value : Any ) -> None : ...
250
- def set_defaults (self , ** kwargs : Any ) -> None : ...
251
- def set_process_default_values (self , process : Any ) -> None : ...
252
+ def set_default (self , dest , value ) -> None : ...
253
+ def set_defaults (self , ** kwargs ) -> None : ...
254
+ def set_process_default_values (self , process ) -> None : ...
252
255
def set_usage (self , usage : str ) -> None : ...
0 commit comments