getValues method

List getValues(
  1. String name,
  2. String typeName,
  3. CliOptValueConverter? converter, {
  4. dynamic param,
})

Get abstract values

Implementation

List getValues(String name, String typeName, CliOptValueConverter? converter,
    {dynamic param}) {
  final values = [];
  final opt = findCliOptByName(name);
  final optDef = opt?.optDef;

  if ((opt == null) || (optDef == null)) {
    return values;
  }

  if (converter == null) {
    values.addAll(opt.values);
    return values;
  }

  for (final strValue in opt.values) {
    final value = converter(optDef, strValue, param: param);

    if (value == null) {
      throw CliOptValueTypeException(name, typeName, [strValue]);
    }

    values.add(value);
  }

  return values;
}