map<TResult extends Object?> method

TResult map<TResult extends Object?>({
  1. required TResult http(
    1. ProxyTypeHttp value
    ),
  2. required TResult mtproto(
    1. ProxyTypeMtproto value
    ),
  3. required TResult socks5(
    1. ProxyTypeSocks5 value
    ),
})

Implementation

TResult map<TResult extends Object?>({
  required TResult Function(ProxyTypeHttp value) http,
  required TResult Function(ProxyTypeMtproto value) mtproto,
  required TResult Function(ProxyTypeSocks5 value) socks5,
}) {
  switch (getConstructor()) {
    case ProxyTypeHttp.constructor:
      return http.call(this as ProxyTypeHttp);
    case ProxyTypeMtproto.constructor:
      return mtproto.call(this as ProxyTypeMtproto);
    case ProxyTypeSocks5.constructor:
      return socks5.call(this as ProxyTypeSocks5);
  }
  throw StateError('not handled type Generator');
}