nsrdb.cli.DictOrFile

class DictOrFile[source]

Bases: ParamType

Dict or file click input argument type.

Methods

convert(value, param, ctx)

Convert to dict or return as None.

fail(message[, param, ctx])

Helper method to fail with an invalid value message.

get_metavar(param)

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

get_missing_message(param)

Optionally might return extra information about a missing parameter.

shell_complete(ctx, param, incomplete)

Return a list of CompletionItem objects for the incomplete value.

split_envvar_value(rv)

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.

Attributes

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

name: str = 'dict_or_file'

the descriptive name of this type

static convert(value, param, ctx)[source]

Convert to dict or return as None.

__call__(value: Any, param: Parameter | None = None, ctx: Context | None = None) Any

Call self as a function.

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.

Added in version 2.0.

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.

Added 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.

Added in version 8.0.