whenOrNull<R> method
R?
whenOrNull<R>({
- R unauthenticated()?,
- R authenticating()?,
- R authenticated(
- T user
- R error(
- Object error,
- StackTrace stackTrace
Pattern-matches and returns null for unhandled states.
Implementation
R? whenOrNull<R>({
R Function()? unauthenticated,
R Function()? authenticating,
R Function(T user)? authenticated,
R Function(Object error, StackTrace stackTrace)? error,
}) {
return switch (this) {
AuthUnauthenticated<T>() => unauthenticated?.call(),
AuthAuthenticating<T>() => authenticating?.call(),
AuthAuthenticated<T>(:final user) => authenticated?.call(user),
AuthError<T>(error: final err, stackTrace: final st) =>
error?.call(err, st),
};
}