@@ -106,6 +106,9 @@ def _py_version_validator(_, name, value):
106106 "csv" : _csv_validator ,
107107 "yn" : _yn_validator ,
108108 "choice" : lambda opt , name , value : _choice_validator (opt ["choices" ], name , value ),
109+ "confidence" : lambda opt , name , value : _multiple_choice_validator (
110+ opt ["choices" ], name , value
111+ ),
109112 "multiple_choice" : lambda opt , name , value : _multiple_choice_validator (
110113 opt ["choices" ], name , value
111114 ),
@@ -148,6 +151,7 @@ class Option(optparse.Option):
148151 "regexp_paths_csv" ,
149152 "csv" ,
150153 "yn" ,
154+ "confidence" ,
151155 "multiple_choice" ,
152156 "non_empty_string" ,
153157 "py_version" ,
@@ -159,6 +163,7 @@ class Option(optparse.Option):
159163 TYPE_CHECKER ["regexp_paths_csv" ] = _regexp_paths_csv_validator
160164 TYPE_CHECKER ["csv" ] = _csv_validator
161165 TYPE_CHECKER ["yn" ] = _yn_validator
166+ TYPE_CHECKER ["confidence" ] = _multiple_choices_validating_option
162167 TYPE_CHECKER ["multiple_choice" ] = _multiple_choices_validating_option
163168 TYPE_CHECKER ["non_empty_string" ] = _non_empty_string_validator
164169 TYPE_CHECKER ["py_version" ] = _py_version_validator
@@ -169,7 +174,7 @@ def __init__(self, *opts, **attrs):
169174 self .help = optparse .SUPPRESS_HELP
170175
171176 def _check_choice (self ):
172- if self .type in {"choice" , "multiple_choice" }:
177+ if self .type in {"choice" , "multiple_choice" , "confidence" }:
173178 if self .choices is None :
174179 raise optparse .OptionError (
175180 "must supply a list of choices for type 'choice'" , self
0 commit comments