run method

  1. @override
Future run(
  1. Iterable<String> args
)
override

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));
}