whenOrNull<TResult extends Object?> method Null safety

  1. @optionalTypeArgs
TResult? whenOrNull<TResult extends Object?>(
  1. {TResult? linear(
      )?,
    1. TResult? cubic(
      1. double x1,
      2. double y1,
      3. double x2,
      4. double y2
      )?,
    2. TResult? decelerate(
        )?,
      1. TResult? bounceIn(
          )?,
        1. TResult? bounceOut(
            )?,
          1. TResult? bounceInOut(
              )?,
            1. TResult? elasticIn(
                )?,
              1. TResult? elasticOut(
                  )?,
                1. TResult? elasticInOut(
                    )?}
                  )
                  @optionalTypeArgs, inherited

                  Implementation

                  @optionalTypeArgs
                  TResult? whenOrNull<TResult extends Object?>({
                    TResult? Function()? linear,
                    TResult? Function(double x1, double y1, double x2, double y2)? cubic,
                    TResult? Function()? decelerate,
                    TResult? Function()? bounceIn,
                    TResult? Function()? bounceOut,
                    TResult? Function()? bounceInOut,
                    TResult? Function()? elasticIn,
                    TResult? Function()? elasticOut,
                    TResult? Function()? elasticInOut,
                  }) =>
                      throw _privateConstructorUsedError;