BetterCommand<O extends OptionDefinition, T> class
abstract
An extension of Command
with additional features.
The BetterCommand class uses the config library to provide a more enhanced command line interface for running commands and handling command line arguments, environment variables, and configuration.
- Inheritance
-
- Object
- Command<
T> - BetterCommand
Constructors
-
BetterCommand.new({MessageOutput? messageOutput = _defaultMessageOutput, int? wrapTextColumn, List<
O> options = const [], Map<String, String> ? env}) - Creates a new instance of BetterCommand.
Properties
-
aliases
→ List<
String> -
Alternate names for this command.
no setterinherited
- argParser → ArgParser
-
The argument parser for this command.
no setteroverride
- argResults → ArgResults?
-
The parsed argument results for this command.
no setterinherited
- category → String
-
The command's category.
no setterinherited
- description → String
-
A description of this command, included in
usage
.no setterinherited -
envVariables
→ Map<
String, String> -
The environment variables used for configuration resolution.
final
- globalResults → ArgResults?
-
The parsed global argument results.
no setterinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
-
Whether or not this command should be hidden from help listings.
no setterinherited
- invocation → String
-
A single-line template for how to invoke this command (e.g.
"pub get
package"
).no setterinherited - messageOutput → MessageOutput?
-
no setter
- name → String
-
The name of this command.
no setterinherited
-
options
→ List<
O> -
The option definitions for this command.
final
-
parent
→ BetterCommand<
OptionDefinition, T> ? -
The command's parent command, if this is a subcommand.
no setteroverride
-
runner
→ BetterCommandRunner<
OptionDefinition, T> ? -
The command runner for this command.
no setteroverride
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
subcommands
→ Map<
String, Command< T> > -
An unmodifiable view of all sublevel commands of this command.
no setterinherited
-
suggestionAliases
→ List<
String> -
Alternate non-functional names for this command.
no setterinherited
- summary → String
-
A short description of this command, included in
parent
'sCommandRunner.usage
.no setterinherited - takesArguments → bool
-
Whether or not this command takes positional arguments in addition to
options.
no setterinherited
- usage → String
-
Generates a string displaying usage information for this command.
no setterinherited
-
An optional footer for
usage
.no setterinherited
Methods
-
addSubcommand(
Command< T> command) → void -
Adds
Command
as a subcommand of this.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
printUsage(
) → void -
Prints the usage information for this command.
override
-
resolveConfiguration(
ArgResults? argResults) → Configuration< O> - Resolves the configuration for this command.
-
run(
) → FutureOr< T> ? -
Runs this command.
Resolves the configuration (args, env, etc) and runs the command
subclass via runWithConfig.
override
-
runWithConfig(
Configuration< O> commandConfig) → FutureOr<T> ? - Runs this command with the resolved configuration (option values). Subclasses should override this method.
-
toString(
) → String -
A string representation of this object.
inherited
-
usageException(
String message) → Never -
Throws a
UsageException
withmessage
.inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited