run method

int run(
  1. List<String> args
)

Runs a SQLite migration command.

Implementation

int run(List<String> args) {
  if (args.isEmpty || args.contains('--help') || args.contains('-h')) {
    _writeUsage();
    return 0;
  }

  final command = args.first;
  final options = _parseOptions(args.skip(1).toList(growable: false));

  try {
    return switch (command) {
      'connectivity' => _runConnectivity(options),
      'codegen_snippet' => _runCodegenSnippet(options),
      'diff' => _runDiff(options),
      'deploy' => _runDeploy(options),
      'dev' => _runDev(options),
      'native_types' => _runNativeTypes(options),
      'rollback' => _runRollback(options),
      'reset' => _runReset(options),
      'resolve' => _runResolve(options),
      'push' => _runPush(options),
      'status' => _runStatus(options),
      _ => _unknownCommand(command),
    };
  } on FormatException catch (error) {
    err.writeln(cliError(error.message, ansiEnabled: _errAnsiEnabled));
    return 2;
  } on Object catch (error) {
    err.writeln(cliError('$error', ansiEnabled: _errAnsiEnabled));
    return 1;
  }
}