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