empty : { name : Str, description : Str, value : common_state } -> SubcommandParserConfig(common_state)
Create an empty subcommand.
:= []
empty : { name : Str, description : Str, value : common_state } -> SubcommandParserConfig(common_state)
Create an empty subcommand.
finish : CliBuilder(state, from_action, to_action), { name : Str, description : Str, mapper : state -> common_state } -> SubcommandParserConfig(common_state)
Bundle a CLI builder into a subcommand.
get_first_arg_to_check_for_subcommand_call : ArgParserState(_), List(SubcommandParserConfig(sub_state)), (Try(SubcommandParserConfig(sub_state), [AfterDelimiter, NoArgument, UnknownCommand(Path)]) -> ArgParserResult(ArgParserState(state))) -> ArgParserResult(ArgParserState(state))
optional : List(SubcommandParserConfig(sub_state)) -> CliBuilder(Try(sub_state, [NoSubcommand]), GetOptionsAction, GetParamsAction)
Use previously defined subcommands as optional data in a parent CLI.
required : List(SubcommandParserConfig(sub_data)) -> CliBuilder(sub_data, GetOptionsAction, GetParamsAction)
Use previously defined subcommands as required data in a parent CLI.
SubcommandParserConfig : {
name : Str,
parser : ArgParser(sub_state),
config : SubcommandConfig,
}