map<TResult extends Object?> method

TResult map<TResult extends Object?>({
  1. required TResult bot(
    1. UserTypeBot value
    ),
  2. required TResult deleted(
    1. UserTypeDeleted value
    ),
  3. required TResult regular(
    1. UserTypeRegular value
    ),
  4. required TResult unknown(
    1. UserTypeUnknown value
    ),
})

Implementation

TResult map<TResult extends Object?>({
  required TResult Function(UserTypeBot value) bot,
  required TResult Function(UserTypeDeleted value) deleted,
  required TResult Function(UserTypeRegular value) regular,
  required TResult Function(UserTypeUnknown value) unknown,
}) {
  switch (getConstructor()) {
    case UserTypeBot.constructor:
      return bot.call(this as UserTypeBot);
    case UserTypeDeleted.constructor:
      return deleted.call(this as UserTypeDeleted);
    case UserTypeRegular.constructor:
      return regular.call(this as UserTypeRegular);
    case UserTypeUnknown.constructor:
      return unknown.call(this as UserTypeUnknown);
  }
  throw StateError('not handled type Generator');
}