ValOrRangeOrList

class glotaran.cli.commands.util.ValOrRangeOrList[source]

Bases: ParamType

Attributes Summary

arity

envvar_list_splitter

if a list of this type is expected and the value is pulled from a string environment variable, this is what splits it up.

is_composite

name

the descriptive name of this type

Methods Summary

convert

Convert the value to the correct type.

fail

Helper method to fail with an invalid value message.

get_metavar

Returns the metavar default for this param if it provides one.

get_missing_message

Optionally might return extra information about a missing parameter.

shell_complete

Return a list of CompletionItem objects for the incomplete value.

split_envvar_value

Given a value from an environment variable this splits it up into small chunks depending on the defined envvar list splitter.

to_info_dict

Gather information that could be useful for a tool generating user-facing documentation.

Methods Documentation

arity: t.ClassVar[int] = 1
convert(value, param, ctx)[source]

Convert the value to the correct type. This is not called if the value is None (the missing value).

This must accept string values from the command line, as well as values that are already the correct type. It may also convert other compatible types.

The param and ctx arguments may be None in certain situations, such as when converting prompt input.

If the value cannot be converted, call fail() with a descriptive message.

Parameters:
  • value – The value to convert.

  • param – The parameter that is using this type to convert its value. May be None.

  • ctx – The current context that arrived at this value. May be None.

envvar_list_splitter: t.ClassVar[t.Optional[str]] = None

if a list of this type is expected and the value is pulled from a string environment variable, this is what splits it up. None means any whitespace. For all parameters the general rule is that whitespace splits them up. The exception are paths and files which are split by os.path.pathsep by default (“:” on Unix and “;” on Windows).

fail(message: str, param: Parameter | None = None, ctx: Context | None = None) t.NoReturn

Helper method to fail with an invalid value message.

get_metavar(param: Parameter) str | None

Returns the metavar default for this param if it provides one.

get_missing_message(param: Parameter) str | None

Optionally might return extra information about a missing parameter.

New in version 2.0.

is_composite: t.ClassVar[bool] = False
name: str = 'number or range or list'

the descriptive name of this type

shell_complete(ctx: Context, param: Parameter, incomplete: str) List[CompletionItem]

Return a list of CompletionItem objects for the incomplete value. Most types do not provide completions, but some do, and this allows custom types to provide custom completions as well.

Parameters:
  • ctx – Invocation context for this command.

  • param – The parameter that is requesting completion.

  • incomplete – Value being completed. May be empty.

New in version 8.0.

split_envvar_value(rv: str) Sequence[str]

Given a value from an environment variable this splits it up into small chunks depending on the defined envvar list splitter.

If the splitter is set to None, which means that whitespace splits, then leading and trailing whitespace is ignored. Otherwise, leading and trailing splitters usually lead to empty items being included.

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.