MWOption¶
- class lsst.daf.butler.cli.utils.MWOption(param_decls: Sequence[str] | None = None, show_default: bool | str | None = None, prompt: bool | str = False, confirmation_prompt: bool | str = False, prompt_required: bool = True, hide_input: bool = False, is_flag: bool | None = None, flag_value: Any | None = None, multiple: bool = False, count: bool = False, allow_from_autoenv: bool = True, type: ParamType | Any | None = None, help: str | None = None, hidden: bool = False, show_choices: bool = True, show_envvar: bool = False, **attrs: Any)¶
Bases:
Option
Overrides click.Option with desired behaviors.
Attributes Summary
Returns the human readable name of this parameter.
Methods Summary
add_to_parser
(parser, ctx)consume_value
(ctx, opts)get_default
(ctx[, call])Get the default for the parameter.
get_error_hint
(ctx)Get a stringified version of the param for use in error messages to indicate which param caused the error.
get_help_record
(ctx)get_usage_pieces
(ctx)handle_parse_result
(ctx, opts, args)Overrides
click.Option.make_metavar
.process_value
(ctx, value)prompt_for_value
(ctx)This is an alternative flow that can be activated in the full value processing if a value does not exist.
resolve_envvar_value
(ctx)shell_complete
(ctx, incomplete)Return a list of completions for the incomplete value.
Gather information that could be useful for a tool generating user-facing documentation.
type_cast_value
(ctx, value)Convert and validate a value against the option's
type
,multiple
, andnargs
.value_from_envvar
(ctx)value_is_missing
(value)Attributes Documentation
- human_readable_name¶
Returns the human readable name of this parameter. This is the same as the name for options, but the metavar for arguments.
- param_type_name = 'option'¶
Methods Documentation
- get_default(ctx: Context, call: bool = True) Any | Callable[[], Any] | None ¶
Get the default for the parameter. Tries
Context.lookup_default()
first, then the local default.- Parameters:
ctx – Current context.
call – If the default is a callable, call it. Disable to return the callable instead.
Changed in version 8.0.2: Type casting is no longer performed when getting a default.
Changed in version 8.0.1: Type casting can fail in resilient parsing mode. Invalid defaults will not prevent showing help text.
Changed in version 8.0: Looks at
ctx.default_map
first.Changed in version 8.0: Added the
call
parameter.
- get_error_hint(ctx: Context) str ¶
Get a stringified version of the param for use in error messages to indicate which param caused the error.
- make_metavar() str ¶
Overrides
click.Option.make_metavar
. Makes the metavar for the help menu. Adds a space and an elipsis after the metavar name if the option accepts multiple inputs, otherwise defers to the base implementation.By default click does not add an elipsis when multiple is True and nargs is 1. And when nargs does not equal 1 click adds an elipsis without a space between the metavar and the elipsis, but we prefer a space between.
Does not get called for some option types (e.g. flag) so metavar transformation that must apply to all types should be applied in get_help_record.
- prompt_for_value(ctx: Context) Any ¶
This is an alternative flow that can be activated in the full value processing if a value does not exist. It will prompt the user until a valid value exists and then returns the processed value as result.
- shell_complete(ctx: Context, incomplete: str) List[CompletionItem] ¶
Return a list of completions for the incomplete value. If a
shell_complete
function was given during init, it is used. Otherwise, thetype
shell_complete()
function is used.- Parameters:
ctx – Invocation context for this command.
incomplete – Value being completed. May be empty.
New in version 8.0.
- to_info_dict() Dict[str, Any] ¶
Gather information that could be useful for a tool generating user-facing documentation.
Use
click.Context.to_info_dict()
to traverse the entire CLI structure.New in version 8.0.