maybeMap<TResult extends Object?> method

TResult maybeMap<TResult extends Object?>({
  1. TResult discarded(
    1. InputCallDiscarded value
    )?,
  2. TResult fromMessage(
    1. InputCallFromMessage value
    )?,
  3. required TResult orElse(),
})

Implementation

TResult maybeMap<TResult extends Object?>({
  TResult Function(InputCallDiscarded value)? discarded,
  TResult Function(InputCallFromMessage value)? fromMessage,
  required TResult Function() orElse,
}) {
  switch (getConstructor()) {
    case InputCallDiscarded.constructor:
      if (discarded != null) {
        return discarded.call(this as InputCallDiscarded);
      }
      break;
    case InputCallFromMessage.constructor:
      if (fromMessage != null) {
        return fromMessage.call(this as InputCallFromMessage);
      }
      break;
  }
  return orElse.call();
}