getMultiKeyParsed<T> method
T?
getMultiKeyParsed<T>(
- List<
K> keys, - TypeElementParser<
T> ? parser, { - T? defaultValue,
- bool ignoreCase = false,
Same as getParsed but accepts multiple keys
.
Implementation
T? getMultiKeyParsed<T>(List<K> keys, TypeElementParser<T>? parser,
{T? defaultValue, bool ignoreCase = false}) {
V? value;
if (ignoreCase) {
for (var k in keys) {
value = getIgnoreCase(k);
if (value != null) break;
}
} else {
for (var k in keys) {
value = this[k];
if (value != null) break;
}
}
T? v;
if (parser != null) {
v = parser(value);
} else if (value is T?) {
v = value;
} else {
throw ArgumentError(
"Can't parse key('${keys.join("','")}') value as `$T`: $value");
}
return v ?? defaultValue;
}