run method
Parses args
and invokes Command.run
on the chosen command.
This always returns a Future in case the command is asynchronous. The
Future will throw a UsageException
if args
was invalid.
Implementation
@override
Future<dynamic> run(Iterable<String> args) async {
final argResults = parse(args);
if (VersionFlag.enabled(argResults)) {
log.i(packageVersion);
return;
}
return Future.sync(() => runCommand(argResults));
}