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