exitCode method

ExitCode exitCode(
  1. Logger logger
)

Implementation

ExitCode exitCode(Logger logger) {
  final mapped = asMap().map((key, value) => MapEntry(value.exitCode, value))
    ..remove(ExitCode.success.code);

  if (mapped.isEmpty) {
    logger.detail('Many exit codes: $this, returning success');
    return ExitCode.success;
  }

  if (mapped.length == 1) {
    logger.detail('Many exit codes: $this, returning ${mapped.values.first}');
    return mapped.values.first.exitCodeReason;
  }

  logger.detail('Many exit codes: $this, returning unavailable');
  return ExitCode.unavailable;
}