letNumOrNone function
Converts input
to num, returning None on failure.
Supported types:
Implementation
Option<num> letNumOrNone(dynamic input) {
if (input is Outcome) {
return switch (input.rawSync().value) {
Ok(value: final okValue) => letNumOrNone(NoStackOverflowWrapper(okValue)),
Err() => const None(),
};
}
return switch (input is NoStackOverflowWrapper ? input.value : input) {
final num value => Some(value),
final String string => Option.from(num.tryParse(string.trim())),
_ => const None(),
};
}