unknownIn method

String? unknownIn(
  1. List<String> arguments
)

The first argument in arguments that looks like an option and is none of flags, valued, -h or --help; null when there is none.

The argument after a valued option is its value, whatever it looks like, so --density -1 names no unknown option.

Implementation

String? unknownIn(List<String> arguments) {
  for (var i = 0; i < arguments.length; i++) {
    final argument = arguments[i];
    if (!argument.startsWith('-') || argument == '-') continue;
    final equals = argument.indexOf('=');
    final name = equals < 0 ? argument : argument.substring(0, equals);
    if (name == '-h' || name == '--help' || flags.contains(name)) continue;
    if (valued.contains(name)) {
      if (equals < 0) i++;
      continue;
    }
    return argument;
  }
  return null;
}