maybeMap<TResult extends Object?> method

TResult maybeMap<TResult extends Object?>({
  1. TResult chin(
    1. MaskPointChin value
    )?,
  2. TResult eyes(
    1. MaskPointEyes value
    )?,
  3. TResult forehead(
    1. MaskPointForehead value
    )?,
  4. TResult mouth(
    1. MaskPointMouth value
    )?,
  5. required TResult orElse(),
})

Implementation

TResult maybeMap<TResult extends Object?>({
  TResult Function(MaskPointChin value)? chin,
  TResult Function(MaskPointEyes value)? eyes,
  TResult Function(MaskPointForehead value)? forehead,
  TResult Function(MaskPointMouth value)? mouth,
  required TResult Function() orElse,
}) {
  switch (getConstructor()) {
    case MaskPointChin.constructor:
      if (chin != null) {
        return chin.call(this as MaskPointChin);
      }
      break;
    case MaskPointEyes.constructor:
      if (eyes != null) {
        return eyes.call(this as MaskPointEyes);
      }
      break;
    case MaskPointForehead.constructor:
      if (forehead != null) {
        return forehead.call(this as MaskPointForehead);
      }
      break;
    case MaskPointMouth.constructor:
      if (mouth != null) {
        return mouth.call(this as MaskPointMouth);
      }
      break;
  }
  return orElse.call();
}