map<TResult extends Object?> method

TResult map<TResult extends Object?>({
  1. required TResult immediately(
    1. MessageSelfDestructTypeImmediately value
    ),
  2. required TResult timer(
    1. MessageSelfDestructTypeTimer value
    ),
})

Implementation

TResult map<TResult extends Object?>({
  required TResult Function(MessageSelfDestructTypeImmediately value)
  immediately,
  required TResult Function(MessageSelfDestructTypeTimer value) timer,
}) {
  switch (getConstructor()) {
    case MessageSelfDestructTypeImmediately.constructor:
      return immediately.call(this as MessageSelfDestructTypeImmediately);
    case MessageSelfDestructTypeTimer.constructor:
      return timer.call(this as MessageSelfDestructTypeTimer);
  }
  throw StateError('not handled type Generator');
}