map<TResult extends Object?> method

TResult map<TResult extends Object?>({
  1. required TResult freeformGradient(
    1. BackgroundFillFreeformGradient value
    ),
  2. required TResult gradient(
    1. BackgroundFillGradient value
    ),
  3. required TResult solid(
    1. BackgroundFillSolid value
    ),
})

Implementation

TResult map<TResult extends Object?>({
  required TResult Function(BackgroundFillFreeformGradient value)
  freeformGradient,
  required TResult Function(BackgroundFillGradient value) gradient,
  required TResult Function(BackgroundFillSolid value) solid,
}) {
  switch (getConstructor()) {
    case BackgroundFillFreeformGradient.constructor:
      return freeformGradient.call(this as BackgroundFillFreeformGradient);
    case BackgroundFillGradient.constructor:
      return gradient.call(this as BackgroundFillGradient);
    case BackgroundFillSolid.constructor:
      return solid.call(this as BackgroundFillSolid);
  }
  throw StateError('not handled type Generator');
}