ArgumentTransformContext

class ArgumentTransformContext(argument: Argument, context: Context) : Argument

A receiver for argument transformers.

Constructors

Link copied to clipboard
fun ArgumentTransformContext(argument: Argument, context: Context)

Functions

Link copied to clipboard
fun fail(message: String): Nothing

Throw an exception indicating that usage was incorrect.

Link copied to clipboard
open override fun finalize(context: Context, values: List<String>)

Called after this command's argv is parsed to transform and store the argument's value.

Link copied to clipboard
fun message(message: String)

Issue a message that can be shown to the user

Link copied to clipboard
open override fun parameterHelp(context: Context): HelpFormatter.ParameterHelp.Argument?

Information about this argument for the help output.

Link copied to clipboard
open override fun postValidate(context: Context)

Called after all of a command's parameters have been finalized to perform validation of the final value.

Link copied to clipboard
inline fun require(value: Boolean, lazyMessage: () -> String = { "" })

If value is false, call fail with the output of lazyMessage

Properties

Link copied to clipboard
val argument: Argument

The argument that was invoked

Link copied to clipboard
open override val argumentHelp: String

The description of this argument.

Link copied to clipboard
open override val completionCandidates: CompletionCandidates

Optional set of strings to use when the user invokes shell autocomplete on a value for this argument.

Link copied to clipboard
val context: Context
Link copied to clipboard
open override val helpTags: Map<String, String>

Extra information about this argument to pass to the help formatter.

Link copied to clipboard
open override val name: String

The metavar for this argument.

Link copied to clipboard
open override val nvalues: Int

The number of values that this argument takes.

Link copied to clipboard
open override val required: Boolean

If true, an error will be thrown if this argument is not given on the command line.