tryDeserialize static method

ChannelCreateRequest tryDeserialize(
  1. Map<String, dynamic> json, {
  2. String key = 'type',
  3. Map<Type, Object?>? mapping,
})

Implementation

static ChannelCreateRequest tryDeserialize(
  Map<String, dynamic> json, {
  String key = 'type',
  Map<Type, Object?>? mapping,
}) {
  final mappingFallback = const <Type, Object?>{
    ChannelCreateRequest0: '0',
    ChannelCreateRequest2: '2',
    ChannelCreateRequest4: '4',
    ChannelCreateRequest998: '998',
  };
  final value = json[key];
  final effective = mapping ?? mappingFallback;
  return switch (value) {
    _ when value == effective[ChannelCreateRequest0] =>
      ChannelCreateRequest0.fromJson(json),
    _ when value == effective[ChannelCreateRequest2] =>
      ChannelCreateRequest2.fromJson(json),
    _ when value == effective[ChannelCreateRequest4] =>
      ChannelCreateRequest4.fromJson(json),
    _ when value == effective[ChannelCreateRequest998] =>
      ChannelCreateRequest998.fromJson(json),
    _ => throw FormatException(
      'Unknown discriminator value "${json[key]}" for ChannelCreateRequest',
    ),
  };
}