maybeMap<T> method
T
maybeMap<T>({})
Implementation
T maybeMap<T>({
T Function()? notStarted,
T Function()? starting,
T Function(bool serviceAvailable)? disabled,
T Function(Position position)? available,
T Function()? denied,
required T Function() orElse,
}) {
final value = this;
if (denied != null && value is PermissionDeniedStatus) {
if (disabled != null &&
value.permission == LocationPermission.deniedForever) {
return disabled(true);
} else {
return denied();
}
} else if (available != null && value is AvailableStatus) {
return available(value.position);
} else if (starting != null && value is StartingStatus) {
return starting();
} else if (disabled != null && value is DisabledStatus) {
return disabled(false);
} else if (notStarted != null && value is NotStartedStatus) {
return notStarted();
}
return orElse();
}