getOptionalFlagValue method

OptionalFlagResult getOptionalFlagValue(
  1. List<String> args
)

Implementation

OptionalFlagResult getOptionalFlagValue(List<String> args) {
  final findResult = findAndRemoveFlag(args);
  if (findResult == null) {
    return FlagNotPresent();
  }

  if (findResult.type == FlagFindType.shortCombined) {
    return FlagPresent(null);
  }

  final index = findResult.index;
  if (args.length > index) {
    final nextArg = args[index];
    args.removeAt(index);
    return FlagPresent(nextArg);
  }

  return FlagPresent(null);
}