maybeMap<TResult extends Object?> method
TResult
maybeMap<TResult extends Object?>({
- TResult declined()?,
- TResult disconnected()?,
- TResult empty(
- CallDiscardReasonEmpty value
- TResult hungUp(
- CallDiscardReasonHungUp value
- TResult missed(
- CallDiscardReasonMissed value
- TResult upgradeToGroupCall()?,
- required TResult orElse(),
Implementation
TResult maybeMap<TResult extends Object?>({
TResult Function(CallDiscardReasonDeclined value)? declined,
TResult Function(CallDiscardReasonDisconnected value)? disconnected,
TResult Function(CallDiscardReasonEmpty value)? empty,
TResult Function(CallDiscardReasonHungUp value)? hungUp,
TResult Function(CallDiscardReasonMissed value)? missed,
TResult Function(CallDiscardReasonUpgradeToGroupCall value)?
upgradeToGroupCall,
required TResult Function() orElse,
}) {
switch (getConstructor()) {
case CallDiscardReasonDeclined.constructor:
if (declined != null) {
return declined.call(this as CallDiscardReasonDeclined);
}
break;
case CallDiscardReasonDisconnected.constructor:
if (disconnected != null) {
return disconnected.call(this as CallDiscardReasonDisconnected);
}
break;
case CallDiscardReasonEmpty.constructor:
if (empty != null) {
return empty.call(this as CallDiscardReasonEmpty);
}
break;
case CallDiscardReasonHungUp.constructor:
if (hungUp != null) {
return hungUp.call(this as CallDiscardReasonHungUp);
}
break;
case CallDiscardReasonMissed.constructor:
if (missed != null) {
return missed.call(this as CallDiscardReasonMissed);
}
break;
case CallDiscardReasonUpgradeToGroupCall.constructor:
if (upgradeToGroupCall != null) {
return upgradeToGroupCall.call(
this as CallDiscardReasonUpgradeToGroupCall,
);
}
break;
}
return orElse.call();
}