map<TResult extends Object?> method

TResult map<TResult extends Object?>({
  1. required TResult full(
    1. GroupCallVideoQualityFull value
    ),
  2. required TResult medium(
    1. GroupCallVideoQualityMedium value
    ),
  3. required TResult thumbnail(
    1. GroupCallVideoQualityThumbnail value
    ),
})

Implementation

TResult map<TResult extends Object?>({
  required TResult Function(GroupCallVideoQualityFull value) full,
  required TResult Function(GroupCallVideoQualityMedium value) medium,
  required TResult Function(GroupCallVideoQualityThumbnail value) thumbnail,
}) {
  switch (getConstructor()) {
    case GroupCallVideoQualityFull.constructor:
      return full.call(this as GroupCallVideoQualityFull);
    case GroupCallVideoQualityMedium.constructor:
      return medium.call(this as GroupCallVideoQualityMedium);
    case GroupCallVideoQualityThumbnail.constructor:
      return thumbnail.call(this as GroupCallVideoQualityThumbnail);
  }
  throw StateError('not handled type Generator');
}