diff --git a/packages/flutter/lib/src/painting/_network_image_io.dart b/packages/flutter/lib/src/painting/_network_image_io.dart index efb1716afa13..354670d8697e 100644 --- a/packages/flutter/lib/src/painting/_network_image_io.dart +++ b/packages/flutter/lib/src/painting/_network_image_io.dart @@ -19,9 +19,7 @@ class NetworkImage extends image_provider.ImageProvider= -1.0 && y <= 1.0); + }) : assert(y >= -1.0 && y <= 1.0); /// A value ranging from -1.0 to 1.0 that defines the topmost and bottommost /// locations of the top and bottom of the input box. diff --git a/packages/flutter/lib/src/painting/basic_types.dart b/packages/flutter/lib/src/painting/basic_types.dart index 02933428b551..26c67b2f7561 100644 --- a/packages/flutter/lib/src/painting/basic_types.dart +++ b/packages/flutter/lib/src/painting/basic_types.dart @@ -136,7 +136,6 @@ enum Axis { /// /// * [flipAxisDirection], which does the same thing for [AxisDirection] values. Axis flipAxis(Axis direction) { - assert(direction != null); switch (direction) { case Axis.horizontal: return Axis.vertical; @@ -204,7 +203,6 @@ enum AxisDirection { /// [AxisDirection.down] and returns [Axis.horizontal] for [AxisDirection.left] /// and [AxisDirection.right]. Axis axisDirectionToAxis(AxisDirection axisDirection) { - assert(axisDirection != null); switch (axisDirection) { case AxisDirection.up: case AxisDirection.down: @@ -220,7 +218,6 @@ Axis axisDirectionToAxis(AxisDirection axisDirection) { /// Specifically, returns [AxisDirection.left] for [TextDirection.rtl] and /// [AxisDirection.right] for [TextDirection.ltr]. AxisDirection textDirectionToAxisDirection(TextDirection textDirection) { - assert(textDirection != null); switch (textDirection) { case TextDirection.rtl: return AxisDirection.left; @@ -239,7 +236,6 @@ AxisDirection textDirectionToAxisDirection(TextDirection textDirection) { /// /// * [flipAxis], which does the same thing for [Axis] values. AxisDirection flipAxisDirection(AxisDirection axisDirection) { - assert(axisDirection != null); switch (axisDirection) { case AxisDirection.up: return AxisDirection.down; @@ -258,7 +254,6 @@ AxisDirection flipAxisDirection(AxisDirection axisDirection) { /// Specifically, returns true for [AxisDirection.up] and [AxisDirection.left] /// and false for [AxisDirection.down] and [AxisDirection.right]. bool axisDirectionIsReversed(AxisDirection axisDirection) { - assert(axisDirection != null); switch (axisDirection) { case AxisDirection.up: case AxisDirection.left: diff --git a/packages/flutter/lib/src/painting/beveled_rectangle_border.dart b/packages/flutter/lib/src/painting/beveled_rectangle_border.dart index 084daf86b4f6..629f5a509f12 100644 --- a/packages/flutter/lib/src/painting/beveled_rectangle_border.dart +++ b/packages/flutter/lib/src/painting/beveled_rectangle_border.dart @@ -25,8 +25,7 @@ class BeveledRectangleBorder extends OutlinedBorder { const BeveledRectangleBorder({ super.side, this.borderRadius = BorderRadius.zero, - }) : assert(side != null), - assert(borderRadius != null); + }); /// The radii for each corner. /// @@ -49,7 +48,6 @@ class BeveledRectangleBorder extends OutlinedBorder { @override ShapeBorder? lerpFrom(ShapeBorder? a, double t) { - assert(t != null); if (a is BeveledRectangleBorder) { return BeveledRectangleBorder( side: BorderSide.lerp(a.side, side, t), @@ -61,7 +59,6 @@ class BeveledRectangleBorder extends OutlinedBorder { @override ShapeBorder? lerpTo(ShapeBorder? b, double t) { - assert(t != null); if (b is BeveledRectangleBorder) { return BeveledRectangleBorder( side: BorderSide.lerp(side, b.side, t), diff --git a/packages/flutter/lib/src/painting/binding.dart b/packages/flutter/lib/src/painting/binding.dart index 28b2b72eb58c..acb5a2416c8b 100644 --- a/packages/flutter/lib/src/painting/binding.dart +++ b/packages/flutter/lib/src/painting/binding.dart @@ -111,7 +111,6 @@ mixin PaintingBinding on BindingBase, ServicesBinding { }) { assert(cacheWidth == null || cacheWidth > 0); assert(cacheHeight == null || cacheHeight > 0); - assert(allowUpscaling != null); return ui.instantiateImageCodec( bytes, targetWidth: cacheWidth, @@ -149,7 +148,6 @@ mixin PaintingBinding on BindingBase, ServicesBinding { }) { assert(cacheWidth == null || cacheWidth > 0); assert(cacheHeight == null || cacheHeight > 0); - assert(allowUpscaling != null); return ui.instantiateImageCodecFromBuffer( buffer, targetWidth: cacheWidth, diff --git a/packages/flutter/lib/src/painting/border_radius.dart b/packages/flutter/lib/src/painting/border_radius.dart index 8abaf286c95e..5bd76dd055db 100644 --- a/packages/flutter/lib/src/painting/border_radius.dart +++ b/packages/flutter/lib/src/painting/border_radius.dart @@ -129,7 +129,6 @@ abstract class BorderRadiusGeometry { /// /// {@macro dart.ui.shadow.lerp} static BorderRadiusGeometry? lerp(BorderRadiusGeometry? a, BorderRadiusGeometry? b, double t) { - assert(t != null); if (a == null && b == null) { return null; } @@ -507,7 +506,6 @@ class BorderRadius extends BorderRadiusGeometry { /// /// {@macro dart.ui.shadow.lerp} static BorderRadius? lerp(BorderRadius? a, BorderRadius? b, double t) { - assert(t != null); if (a == null && b == null) { return null; } @@ -729,7 +727,6 @@ class BorderRadiusDirectional extends BorderRadiusGeometry { /// /// {@macro dart.ui.shadow.lerp} static BorderRadiusDirectional? lerp(BorderRadiusDirectional? a, BorderRadiusDirectional? b, double t) { - assert(t != null); if (a == null && b == null) { return null; } diff --git a/packages/flutter/lib/src/painting/borders.dart b/packages/flutter/lib/src/painting/borders.dart index 9debca199b33..17f217c453ed 100644 --- a/packages/flutter/lib/src/painting/borders.dart +++ b/packages/flutter/lib/src/painting/borders.dart @@ -66,11 +66,7 @@ class BorderSide with Diagnosticable { this.width = 1.0, this.style = BorderStyle.solid, this.strokeAlign = strokeAlignInside, - }) : assert(color != null), - assert(width != null), - assert(width >= 0.0), - assert(style != null), - assert(strokeAlign != null); + }) : assert(width >= 0.0); /// Creates a [BorderSide] that represents the addition of the two given /// [BorderSide]s. @@ -84,8 +80,6 @@ class BorderSide with Diagnosticable { /// /// The arguments must not be null. static BorderSide merge(BorderSide a, BorderSide b) { - assert(a != null); - assert(b != null); assert(canMerge(a, b)); final bool aIsNone = a.style == BorderStyle.none && a.width == 0.0; final bool bIsNone = b.style == BorderStyle.none && b.width == 0.0; @@ -202,7 +196,6 @@ class BorderSide with Diagnosticable { /// Values for `t` are usually obtained from an [Animation], such as /// an [AnimationController]. BorderSide scale(double t) { - assert(t != null); return BorderSide( color: color, width: math.max(0.0, width * t), @@ -239,8 +232,6 @@ class BorderSide with Diagnosticable { /// /// The arguments must not be null. static bool canMerge(BorderSide a, BorderSide b) { - assert(a != null); - assert(b != null); if ((a.style == BorderStyle.none && a.width == 0.0) || (b.style == BorderStyle.none && b.width == 0.0)) { return true; @@ -255,9 +246,6 @@ class BorderSide with Diagnosticable { /// /// {@macro dart.ui.shadow.lerp} static BorderSide lerp(BorderSide a, BorderSide b, double t) { - assert(a != null); - assert(b != null); - assert(t != null); if (t == 0.0) { return a; } @@ -517,7 +505,6 @@ abstract class ShapeBorder { /// /// {@macro dart.ui.shadow.lerp} static ShapeBorder? lerp(ShapeBorder? a, ShapeBorder? b, double t) { - assert(t != null); ShapeBorder? result; if (b != null) { result = b.lerpFrom(a, t); @@ -664,7 +651,7 @@ abstract class OutlinedBorder extends ShapeBorder { /// const constructors so that they can be used in const expressions. /// /// The value of [side] must not be null. - const OutlinedBorder({ this.side = BorderSide.none }) : assert(side != null); + const OutlinedBorder({ this.side = BorderSide.none }); @override EdgeInsetsGeometry get dimensions => EdgeInsets.all(math.max(side.strokeInset, 0)); @@ -707,7 +694,6 @@ abstract class OutlinedBorder extends ShapeBorder { /// /// {@macro dart.ui.shadow.lerp} static OutlinedBorder? lerp(OutlinedBorder? a, OutlinedBorder? b, double t) { - assert(t != null); ShapeBorder? result; if (b != null) { result = b.lerpFrom(a, t); @@ -724,8 +710,7 @@ abstract class OutlinedBorder extends ShapeBorder { /// The borders are listed from the outside to the inside. class _CompoundBorder extends ShapeBorder { _CompoundBorder(this.borders) - : assert(borders != null), - assert(borders.length >= 2), + : assert(borders.length >= 2), assert(!borders.any((ShapeBorder border) => border is _CompoundBorder)); final List borders; @@ -788,7 +773,6 @@ class _CompoundBorder extends ShapeBorder { } static _CompoundBorder lerp(ShapeBorder? a, ShapeBorder? b, double t) { - assert(t != null); assert(a is _CompoundBorder || b is _CompoundBorder); // Not really necessary, but all call sites currently intend this. final List aList = a is _CompoundBorder ? a.borders : [a]; final List bList = b is _CompoundBorder ? b.borders : [b]; @@ -897,12 +881,6 @@ void paintBorder( BorderSide bottom = BorderSide.none, BorderSide left = BorderSide.none, }) { - assert(canvas != null); - assert(rect != null); - assert(top != null); - assert(right != null); - assert(bottom != null); - assert(left != null); // We draw the borders as filled shapes, unless the borders are hairline // borders, in which case we use PaintingStyle.stroke, with the stroke width diff --git a/packages/flutter/lib/src/painting/box_border.dart b/packages/flutter/lib/src/painting/box_border.dart index 650bd5d5d843..6968b11f4385 100644 --- a/packages/flutter/lib/src/painting/box_border.dart +++ b/packages/flutter/lib/src/painting/box_border.dart @@ -103,7 +103,6 @@ abstract class BoxBorder extends ShapeBorder { /// /// {@macro dart.ui.shadow.lerp} static BoxBorder? lerp(BoxBorder? a, BoxBorder? b, double t) { - assert(t != null); if ((a is Border?) && (b is Border?)) { return Border.lerp(a, b, t); } @@ -322,17 +321,13 @@ class Border extends BoxBorder { this.right = BorderSide.none, this.bottom = BorderSide.none, this.left = BorderSide.none, - }) : assert(top != null), - assert(right != null), - assert(bottom != null), - assert(left != null); + }); /// Creates a border whose sides are all the same. /// /// The `side` argument must not be null. const Border.fromBorderSide(BorderSide side) - : assert(side != null), - top = side, + : top = side, right = side, bottom = side, left = side; @@ -346,9 +341,7 @@ class Border extends BoxBorder { const Border.symmetric({ BorderSide vertical = BorderSide.none, BorderSide horizontal = BorderSide.none, - }) : assert(vertical != null), - assert(horizontal != null), - left = vertical, + }) : left = vertical, top = horizontal, right = vertical, bottom = horizontal; @@ -374,8 +367,6 @@ class Border extends BoxBorder { /// /// The arguments must not be null. static Border merge(Border a, Border b) { - assert(a != null); - assert(b != null); assert(BorderSide.canMerge(a.top, b.top)); assert(BorderSide.canMerge(a.right, b.right)); assert(BorderSide.canMerge(a.bottom, b.bottom)); @@ -478,7 +469,6 @@ class Border extends BoxBorder { /// /// {@macro dart.ui.shadow.lerp} static Border? lerp(Border? a, Border? b, double t) { - assert(t != null); if (a == null && b == null) { return null; } @@ -650,10 +640,7 @@ class BorderDirectional extends BoxBorder { this.start = BorderSide.none, this.end = BorderSide.none, this.bottom = BorderSide.none, - }) : assert(top != null), - assert(start != null), - assert(end != null), - assert(bottom != null); + }); /// Creates a [BorderDirectional] that represents the addition of the two /// given [BorderDirectional]s. @@ -663,8 +650,6 @@ class BorderDirectional extends BoxBorder { /// /// The arguments must not be null. static BorderDirectional merge(BorderDirectional a, BorderDirectional b) { - assert(a != null); - assert(b != null); assert(BorderSide.canMerge(a.top, b.top)); assert(BorderSide.canMerge(a.start, b.start)); assert(BorderSide.canMerge(a.end, b.end)); @@ -826,7 +811,6 @@ class BorderDirectional extends BoxBorder { /// /// {@macro dart.ui.shadow.lerp} static BorderDirectional? lerp(BorderDirectional? a, BorderDirectional? b, double t) { - assert(t != null); if (a == null && b == null) { return null; } diff --git a/packages/flutter/lib/src/painting/box_decoration.dart b/packages/flutter/lib/src/painting/box_decoration.dart index 960d05627385..15e103b0ea45 100644 --- a/packages/flutter/lib/src/painting/box_decoration.dart +++ b/packages/flutter/lib/src/painting/box_decoration.dart @@ -93,8 +93,7 @@ class BoxDecoration extends Decoration { this.gradient, this.backgroundBlendMode, this.shape = BoxShape.rectangle, - }) : assert(shape != null), - assert( + }) : assert( backgroundBlendMode == null || color != null || gradient != null, "backgroundBlendMode applies to BoxDecoration's background color or " 'gradient, but no color or gradient was provided.', @@ -289,7 +288,6 @@ class BoxDecoration extends Decoration { /// and which use [BoxDecoration.lerp] when interpolating two /// [BoxDecoration]s or a [BoxDecoration] to or from null. static BoxDecoration? lerp(BoxDecoration? a, BoxDecoration? b, double t) { - assert(t != null); if (a == null && b == null) { return null; } @@ -365,7 +363,6 @@ class BoxDecoration extends Decoration { @override bool hitTest(Size size, Offset position, { TextDirection? textDirection }) { - assert(shape != null); assert((Offset.zero & size).contains(position)); switch (shape) { case BoxShape.rectangle: @@ -391,15 +388,13 @@ class BoxDecoration extends Decoration { /// An object that paints a [BoxDecoration] into a canvas. class _BoxDecorationPainter extends BoxPainter { - _BoxDecorationPainter(this._decoration, super.onChanged) - : assert(_decoration != null); + _BoxDecorationPainter(this._decoration, super.onChanged); final BoxDecoration _decoration; Paint? _cachedBackgroundPaint; Rect? _rectForCachedBackgroundPaint; Paint _getBackgroundPaint(Rect rect, TextDirection? textDirection) { - assert(rect != null); assert(_decoration.gradient != null || _rectForCachedBackgroundPaint == null); if (_cachedBackgroundPaint == null || @@ -489,7 +484,6 @@ class _BoxDecorationPainter extends BoxPainter { /// Paint the box decoration into the given location on the given canvas. @override void paint(Canvas canvas, Offset offset, ImageConfiguration configuration) { - assert(configuration != null); assert(configuration.size != null); final Rect rect = offset & configuration.size!; final TextDirection? textDirection = configuration.textDirection; diff --git a/packages/flutter/lib/src/painting/box_shadow.dart b/packages/flutter/lib/src/painting/box_shadow.dart index cf11b99ba120..362826c3d392 100644 --- a/packages/flutter/lib/src/painting/box_shadow.dart +++ b/packages/flutter/lib/src/painting/box_shadow.dart @@ -86,7 +86,6 @@ class BoxShadow extends ui.Shadow { /// /// {@macro dart.ui.shadow.lerp} static BoxShadow? lerp(BoxShadow? a, BoxShadow? b, double t) { - assert(t != null); if (a == null && b == null) { return null; } @@ -111,7 +110,6 @@ class BoxShadow extends ui.Shadow { /// /// {@macro dart.ui.shadow.lerp} static List? lerpList(List? a, List? b, double t) { - assert(t != null); if (a == null && b == null) { return null; } diff --git a/packages/flutter/lib/src/painting/circle_border.dart b/packages/flutter/lib/src/painting/circle_border.dart index f43774d7db32..69b5aeb63c37 100644 --- a/packages/flutter/lib/src/painting/circle_border.dart +++ b/packages/flutter/lib/src/painting/circle_border.dart @@ -33,9 +33,7 @@ class CircleBorder extends OutlinedBorder { /// /// The [side] argument must not be null. const CircleBorder({ super.side, this.eccentricity = 0.0 }) - : assert(side != null), - assert(eccentricity != null), - assert(eccentricity >= 0.0, 'The eccentricity argument $eccentricity is not greater than or equal to zero.'), + : assert(eccentricity >= 0.0, 'The eccentricity argument $eccentricity is not greater than or equal to zero.'), assert(eccentricity <= 1.0, 'The eccentricity argument $eccentricity is not less than or equal to one.'); /// Defines the ratio (0.0-1.0) from which the border will deform diff --git a/packages/flutter/lib/src/painting/clip.dart b/packages/flutter/lib/src/painting/clip.dart index 45d36bf5c605..caae91f879b2 100644 --- a/packages/flutter/lib/src/painting/clip.dart +++ b/packages/flutter/lib/src/painting/clip.dart @@ -10,7 +10,6 @@ abstract class ClipContext { Canvas get canvas; void _clipAndPaint(void Function(bool doAntiAlias) canvasClipCall, Clip clipBehavior, Rect bounds, VoidCallback painter) { - assert(canvasClipCall != null); canvas.save(); switch (clipBehavior) { case Clip.none: diff --git a/packages/flutter/lib/src/painting/colors.dart b/packages/flutter/lib/src/painting/colors.dart index 264c37852a9e..6247a6e36813 100644 --- a/packages/flutter/lib/src/painting/colors.dart +++ b/packages/flutter/lib/src/painting/colors.dart @@ -89,11 +89,7 @@ class HSVColor { /// All the arguments must not be null and be in their respective ranges. See /// the fields for each parameter for a description of their ranges. const HSVColor.fromAHSV(this.alpha, this.hue, this.saturation, this.value) - : assert(alpha != null), - assert(hue != null), - assert(saturation != null), - assert(value != null), - assert(alpha >= 0.0), + : assert(alpha >= 0.0), assert(alpha <= 1.0), assert(hue >= 0.0), assert(hue <= 360.0), @@ -198,7 +194,6 @@ class HSVColor { /// /// Values outside of the valid range for each channel will be clamped. static HSVColor? lerp(HSVColor? a, HSVColor? b, double t) { - assert(t != null); if (a == null && b == null) { return null; } @@ -262,11 +257,7 @@ class HSLColor { /// All the arguments must not be null and be in their respective ranges. See /// the fields for each parameter for a description of their ranges. const HSLColor.fromAHSL(this.alpha, this.hue, this.saturation, this.lightness) - : assert(alpha != null), - assert(hue != null), - assert(saturation != null), - assert(lightness != null), - assert(alpha >= 0.0), + : assert(alpha >= 0.0), assert(alpha <= 1.0), assert(hue >= 0.0), assert(hue <= 360.0), @@ -386,7 +377,6 @@ class HSLColor { /// Values for `t` are usually obtained from an [Animation], such as /// an [AnimationController]. static HSLColor? lerp(HSLColor? a, HSLColor? b, double t) { - assert(t != null); if (a == null && b == null) { return null; } @@ -519,9 +509,7 @@ class ColorProperty extends DiagnosticsProperty { super.defaultValue, super.style, super.level, - }) : assert(showName != null), - assert(style != null), - assert(level != null); + }); @override Map toJsonMap(DiagnosticsSerializationDelegate delegate) { diff --git a/packages/flutter/lib/src/painting/continuous_rectangle_border.dart b/packages/flutter/lib/src/painting/continuous_rectangle_border.dart index f82641c7e4cf..5f956f5d41b2 100644 --- a/packages/flutter/lib/src/painting/continuous_rectangle_border.dart +++ b/packages/flutter/lib/src/painting/continuous_rectangle_border.dart @@ -37,8 +37,7 @@ class ContinuousRectangleBorder extends OutlinedBorder { const ContinuousRectangleBorder({ super.side, this.borderRadius = BorderRadius.zero, - }) : assert(side != null), - assert(borderRadius != null); + }); /// The radius for each corner. /// @@ -59,7 +58,6 @@ class ContinuousRectangleBorder extends OutlinedBorder { @override ShapeBorder? lerpFrom(ShapeBorder? a, double t) { - assert(t != null); if (a is ContinuousRectangleBorder) { return ContinuousRectangleBorder( side: BorderSide.lerp(a.side, side, t), @@ -71,7 +69,6 @@ class ContinuousRectangleBorder extends OutlinedBorder { @override ShapeBorder? lerpTo(ShapeBorder? b, double t) { - assert(t != null); if (b is ContinuousRectangleBorder) { return ContinuousRectangleBorder( side: BorderSide.lerp(side, b.side, t), diff --git a/packages/flutter/lib/src/painting/decoration.dart b/packages/flutter/lib/src/painting/decoration.dart index d561269bccfe..7a68bdf6bb96 100644 --- a/packages/flutter/lib/src/painting/decoration.dart +++ b/packages/flutter/lib/src/painting/decoration.dart @@ -129,7 +129,6 @@ abstract class Decoration with Diagnosticable { /// /// {@macro dart.ui.shadow.lerp} static Decoration? lerp(Decoration? a, Decoration? b, double t) { - assert(t != null); if (a == null && b == null) { return null; } diff --git a/packages/flutter/lib/src/painting/decoration_image.dart b/packages/flutter/lib/src/painting/decoration_image.dart index 636d3f4315cf..d94741e33bf1 100644 --- a/packages/flutter/lib/src/painting/decoration_image.dart +++ b/packages/flutter/lib/src/painting/decoration_image.dart @@ -57,11 +57,7 @@ class DecorationImage { this.filterQuality = FilterQuality.low, this.invertColors = false, this.isAntiAlias = false, - }) : assert(image != null), - assert(alignment != null), - assert(repeat != null), - assert(matchTextDirection != null), - assert(scale != null); + }); /// The image to be painted into the decoration. /// @@ -181,7 +177,6 @@ class DecorationImage { /// image needs to be repainted, e.g. because it is loading incrementally or /// because it is animated. DecorationImagePainter createPainter(VoidCallback onChanged) { - assert(onChanged != null); return DecorationImagePainter._(this, onChanged); } @@ -265,7 +260,7 @@ class DecorationImage { /// This object should be disposed using the [dispose] method when it is no /// longer needed. class DecorationImagePainter { - DecorationImagePainter._(this._details, this._onChanged) : assert(_details != null); + DecorationImagePainter._(this._details, this._onChanged); final DecorationImage _details; final VoidCallback _onChanged; @@ -288,9 +283,6 @@ class DecorationImagePainter { /// then the `onChanged` callback passed to [DecorationImage.createPainter] /// will be called. void paint(Canvas canvas, Rect rect, Path? clipPath, ImageConfiguration configuration) { - assert(canvas != null); - assert(rect != null); - assert(configuration != null); bool flipHorizontally = false; if (_details.matchTextDirection) { @@ -367,7 +359,6 @@ class DecorationImagePainter { } _image?.dispose(); _image = value; - assert(_onChanged != null); if (!synchronousCall) { _onChanged(); } @@ -500,12 +491,6 @@ void paintImage({ FilterQuality filterQuality = FilterQuality.low, bool isAntiAlias = false, }) { - assert(canvas != null); - assert(image != null); - assert(alignment != null); - assert(repeat != null); - assert(flipHorizontally != null); - assert(isAntiAlias != null); assert( image.debugGetOpenHandleStackTraces()?.isNotEmpty ?? true, 'Cannot paint an image that is disposed.\n' diff --git a/packages/flutter/lib/src/painting/edge_insets.dart b/packages/flutter/lib/src/painting/edge_insets.dart index 756d79656d1a..622029fec762 100644 --- a/packages/flutter/lib/src/painting/edge_insets.dart +++ b/packages/flutter/lib/src/painting/edge_insets.dart @@ -64,7 +64,6 @@ abstract class EdgeInsetsGeometry { /// The total offset in the given direction. double along(Axis axis) { - assert(axis != null); switch (axis) { case Axis.horizontal: return horizontal; @@ -216,7 +215,6 @@ abstract class EdgeInsetsGeometry { /// /// {@macro dart.ui.shadow.lerp} static EdgeInsetsGeometry? lerp(EdgeInsetsGeometry? a, EdgeInsetsGeometry? b, double t) { - assert(t != null); if (a == null && b == null) { return null; } @@ -604,7 +602,6 @@ class EdgeInsets extends EdgeInsetsGeometry { /// /// {@macro dart.ui.shadow.lerp} static EdgeInsets? lerp(EdgeInsets? a, EdgeInsets? b, double t) { - assert(t != null); if (a == null && b == null) { return null; } @@ -871,7 +868,6 @@ class EdgeInsetsDirectional extends EdgeInsetsGeometry { /// /// {@macro dart.ui.shadow.lerp} static EdgeInsetsDirectional? lerp(EdgeInsetsDirectional? a, EdgeInsetsDirectional? b, double t) { - assert(t != null); if (a == null && b == null) { return null; } diff --git a/packages/flutter/lib/src/painting/flutter_logo.dart b/packages/flutter/lib/src/painting/flutter_logo.dart index c394c108d67f..ecc7697bad16 100644 --- a/packages/flutter/lib/src/painting/flutter_logo.dart +++ b/packages/flutter/lib/src/painting/flutter_logo.dart @@ -44,10 +44,7 @@ class FlutterLogoDecoration extends Decoration { this.textColor = const Color(0xFF757575), this.style = FlutterLogoStyle.markOnly, this.margin = EdgeInsets.zero, - }) : assert(textColor != null), - assert(style != null), - assert(margin != null), - _position = identical(style, FlutterLogoStyle.markOnly) ? 0.0 : identical(style, FlutterLogoStyle.horizontal) ? 1.0 : -1.0, + }) : _position = identical(style, FlutterLogoStyle.markOnly) ? 0.0 : identical(style, FlutterLogoStyle.horizontal) ? 1.0 : -1.0, _opacity = 1.0; const FlutterLogoDecoration._(this.textColor, this.style, this.margin, this._position, this._opacity); @@ -78,12 +75,7 @@ class FlutterLogoDecoration extends Decoration { @override bool debugAssertIsValid() { assert( - textColor != null - && style != null - && margin != null - && _position != null - && _position.isFinite - && _opacity != null + _position.isFinite && _opacity >= 0.0 && _opacity <= 1.0, ); @@ -107,7 +99,6 @@ class FlutterLogoDecoration extends Decoration { /// /// * [Decoration.lerp], which interpolates between arbitrary decorations. static FlutterLogoDecoration? lerp(FlutterLogoDecoration? a, FlutterLogoDecoration? b, double t) { - assert(t != null); assert(a == null || a.debugAssertIsValid()); assert(b == null || b.debugAssertIsValid()); if (a == null && b == null) { @@ -218,8 +209,7 @@ class FlutterLogoDecoration extends Decoration { /// An object that paints a [BoxDecoration] into a canvas. class _FlutterLogoPainter extends BoxPainter { _FlutterLogoPainter(this._config) - : assert(_config != null), - assert(_config.debugAssertIsValid()), + : assert(_config.debugAssertIsValid()), super(null) { _prepareText(); } diff --git a/packages/flutter/lib/src/painting/fractional_offset.dart b/packages/flutter/lib/src/painting/fractional_offset.dart index bcf68721b0ea..720c5ce9b254 100644 --- a/packages/flutter/lib/src/painting/fractional_offset.dart +++ b/packages/flutter/lib/src/painting/fractional_offset.dart @@ -56,17 +56,13 @@ class FractionalOffset extends Alignment { /// /// The [dx] and [dy] arguments must not be null. const FractionalOffset(double dx, double dy) - : assert(dx != null), - assert(dy != null), - super(dx * 2.0 - 1.0, dy * 2.0 - 1.0); + : super(dx * 2.0 - 1.0, dy * 2.0 - 1.0); /// Creates a fractional offset from a specific offset and size. /// /// The returned [FractionalOffset] describes the position of the /// [Offset] in the [Size], as a fraction of the [Size]. factory FractionalOffset.fromOffsetAndSize(Offset offset, Size size) { - assert(size != null); - assert(offset != null); return FractionalOffset( offset.dx / size.width, offset.dy / size.height, @@ -180,7 +176,6 @@ class FractionalOffset extends Alignment { /// /// {@macro dart.ui.shadow.lerp} static FractionalOffset? lerp(FractionalOffset? a, FractionalOffset? b, double t) { - assert(t != null); if (a == null && b == null) { return null; } diff --git a/packages/flutter/lib/src/painting/geometry.dart b/packages/flutter/lib/src/painting/geometry.dart index fb2084ce6408..ed7564cb9a80 100644 --- a/packages/flutter/lib/src/painting/geometry.dart +++ b/packages/flutter/lib/src/painting/geometry.dart @@ -45,12 +45,6 @@ Offset positionDependentBox({ double verticalOffset = 0.0, double margin = 10.0, }) { - assert(size != null); - assert(childSize != null); - assert(target != null); - assert(verticalOffset != null); - assert(preferBelow != null); - assert(margin != null); // VERTICAL DIRECTION final bool fitsBelow = target.dy + verticalOffset + childSize.height <= size.height - margin; final bool fitsAbove = target.dy - verticalOffset - childSize.height >= margin; diff --git a/packages/flutter/lib/src/painting/gradient.dart b/packages/flutter/lib/src/painting/gradient.dart index 572478c771bb..fd90223db58f 100644 --- a/packages/flutter/lib/src/painting/gradient.dart +++ b/packages/flutter/lib/src/painting/gradient.dart @@ -20,11 +20,8 @@ class _ColorsAndStops { /// Calculate the color at position [t] of the gradient defined by [colors] and [stops]. Color _sample(List colors, List stops, double t) { - assert(colors != null); assert(colors.isNotEmpty); - assert(stops != null); assert(stops.isNotEmpty); - assert(t != null); if (t <= stops.first) { return colors.first; } @@ -107,7 +104,6 @@ class GradientRotation extends GradientTransform { @override Matrix4 transform(Rect bounds, {TextDirection? textDirection}) { - assert(bounds != null); final double sinRadians = math.sin(radians); final double oneMinusCosRadians = 1 - math.cos(radians); final Offset center = bounds.center; @@ -170,7 +166,7 @@ abstract class Gradient { required this.colors, this.stops, this.transform, - }) : assert(colors != null); + }); /// The colors the gradient should obtain at each of the stops. /// @@ -311,7 +307,6 @@ abstract class Gradient { /// /// {@macro dart.ui.shadow.lerp} static Gradient? lerp(Gradient? a, Gradient? b, double t) { - assert(t != null); Gradient? result; if (b != null) { result = b.lerpFrom(a, t); // if a is null, this must return non-null @@ -388,9 +383,7 @@ class LinearGradient extends Gradient { super.stops, this.tileMode = TileMode.clamp, super.transform, - }) : assert(begin != null), - assert(end != null), - assert(tileMode != null); + }); /// The offset at which stop 0.0 of the gradient is placed. /// @@ -493,7 +486,6 @@ class LinearGradient extends Gradient { /// Values for `t` are usually obtained from an [Animation], such as /// an [AnimationController]. static LinearGradient? lerp(LinearGradient? a, LinearGradient? b, double t) { - assert(t != null); if (a == null && b == null) { return null; } @@ -644,10 +636,7 @@ class RadialGradient extends Gradient { this.focal, this.focalRadius = 0.0, super.transform, - }) : assert(center != null), - assert(radius != null), - assert(tileMode != null), - assert(focalRadius != null); + }); /// The center of the gradient, as an offset into the (-1.0, -1.0) x (1.0, 1.0) /// square describing the gradient which will be mapped onto the paint box. @@ -776,7 +765,6 @@ class RadialGradient extends Gradient { /// Values for `t` are usually obtained from an [Animation], such as /// an [AnimationController]. static RadialGradient? lerp(RadialGradient? a, RadialGradient? b, double t) { - assert(t != null); if (a == null && b == null) { return null; } @@ -943,10 +931,7 @@ class SweepGradient extends Gradient { super.stops, this.tileMode = TileMode.clamp, super.transform, - }) : assert(center != null), - assert(startAngle != null), - assert(endAngle != null), - assert(tileMode != null); + }); /// The center of the gradient, as an offset into the (-1.0, -1.0) x (1.0, 1.0) /// square describing the gradient which will be mapped onto the paint box. @@ -1047,7 +1032,6 @@ class SweepGradient extends Gradient { /// Values for `t` are usually obtained from an [Animation], such as /// an [AnimationController]. static SweepGradient? lerp(SweepGradient? a, SweepGradient? b, double t) { - assert(t != null); if (a == null && b == null) { return null; } diff --git a/packages/flutter/lib/src/painting/image_cache.dart b/packages/flutter/lib/src/painting/image_cache.dart index 37b3bc6601af..016f39691201 100644 --- a/packages/flutter/lib/src/painting/image_cache.dart +++ b/packages/flutter/lib/src/painting/image_cache.dart @@ -99,7 +99,6 @@ class ImageCache { /// returning it to its original value will therefore immediately clear the /// cache. set maximumSize(int value) { - assert(value != null); assert(value >= 0); if (value == maximumSize) { return; @@ -139,7 +138,6 @@ class ImageCache { /// returning it to its original value will therefore immediately clear the /// cache. set maximumSizeBytes(int value) { - assert(value != null); assert(value >= 0); if (value == _maximumSizeBytes) { return; @@ -240,7 +238,6 @@ class ImageCache { /// /// * [ImageProvider], for providing images to the [Image] widget. bool evict(Object key, { bool includeLive = true }) { - assert(includeLive != null); if (includeLive) { // Remove from live images - the cache will not be able to mark // it as complete, and it might be getting evicted because it @@ -324,8 +321,6 @@ class ImageCache { /// no completers are cached and `null` is returned instead of a new /// completer. ImageStreamCompleter? putIfAbsent(Object key, ImageStreamCompleter Function() loader, { ImageErrorListener? onError }) { - assert(key != null); - assert(loader != null); TimelineTask? timelineTask; TimelineTask? listenerTask; if (!kReleaseMode) { @@ -613,8 +608,7 @@ abstract class _CachedImageBase { _CachedImageBase( this.completer, { this.sizeBytes, - }) : assert(completer != null), - handle = completer.keepAlive(); + }) : handle = completer.keepAlive(); final ImageStreamCompleter completer; int? sizeBytes; diff --git a/packages/flutter/lib/src/painting/image_provider.dart b/packages/flutter/lib/src/painting/image_provider.dart index f346eae94fee..ec165388d515 100644 --- a/packages/flutter/lib/src/painting/image_provider.dart +++ b/packages/flutter/lib/src/painting/image_provider.dart @@ -348,7 +348,6 @@ abstract class ImageProvider { /// See the Lifecycle documentation on [ImageProvider] for more information. @nonVirtual ImageStream resolve(ImageConfiguration configuration) { - assert(configuration != null); final ImageStream stream = createStream(configuration); // Load the key (potentially asynchronously), set up an error handling zone, // and call resolveStreamForKey. @@ -407,7 +406,6 @@ abstract class ImageProvider { required ImageConfiguration configuration, ImageErrorListener? handleError, }) { - assert(configuration != null); final Completer completer = Completer(); _createErrorHandlerAndKey( configuration, @@ -635,9 +633,7 @@ class AssetBundleImageKey { required this.bundle, required this.name, required this.scale, - }) : assert(bundle != null), - assert(name != null), - assert(scale != null); + }); /// The bundle from which the image will be obtained. /// @@ -733,10 +729,6 @@ abstract class AssetBundleImageProvider extends ImageProvider { this.width, this.height, this.allowUpscaling = false, - }) : assert(width != null || height != null), - assert(allowUpscaling != null); + }) : assert(width != null || height != null); /// The [ImageProvider] that this class wraps. final ImageProvider imageProvider; @@ -950,9 +937,7 @@ class FileImage extends ImageProvider { /// Creates an object that decodes a [File] as an image. /// /// The arguments must not be null. - const FileImage(this.file, { this.scale = 1.0 }) - : assert(file != null), - assert(scale != null); + const FileImage(this.file, { this.scale = 1.0 }); /// The file to decode into an image. final File file; @@ -1045,9 +1030,7 @@ class MemoryImage extends ImageProvider { /// Creates an object that decodes a [Uint8List] buffer as an image. /// /// The arguments must not be null. - const MemoryImage(this.bytes, { this.scale = 1.0 }) - : assert(bytes != null), - assert(scale != null); + const MemoryImage(this.bytes, { this.scale = 1.0 }); /// The bytes to decode into an image. /// @@ -1204,8 +1187,7 @@ class ExactAssetImage extends AssetBundleImageProvider { this.scale = 1.0, this.bundle, this.package, - }) : assert(assetName != null), - assert(scale != null); + }); /// The name of the asset. final String assetName; @@ -1266,9 +1248,7 @@ class NetworkImageLoadException implements Exception { /// Creates a [NetworkImageLoadException] with the specified http [statusCode] /// and [uri]. NetworkImageLoadException({required this.statusCode, required this.uri}) - : assert(uri != null), - assert(statusCode != null), - _message = 'HTTP request failed, statusCode: $statusCode, $uri'; + : _message = 'HTTP request failed, statusCode: $statusCode, $uri'; /// The HTTP status code from the server. final int statusCode; diff --git a/packages/flutter/lib/src/painting/image_resolution.dart b/packages/flutter/lib/src/painting/image_resolution.dart index 1e427742bf9a..3c202777e53b 100644 --- a/packages/flutter/lib/src/painting/image_resolution.dart +++ b/packages/flutter/lib/src/painting/image_resolution.dart @@ -244,7 +244,7 @@ class AssetImage extends AssetBundleImageProvider { this.assetName, { this.bundle, this.package, - }) : assert(assetName != null); + }); /// The name of the main asset from the set of images to choose from. See the /// documentation for the [AssetImage] class itself for details. diff --git a/packages/flutter/lib/src/painting/image_stream.dart b/packages/flutter/lib/src/painting/image_stream.dart index b7331581014a..65baf777ebf1 100644 --- a/packages/flutter/lib/src/painting/image_stream.dart +++ b/packages/flutter/lib/src/painting/image_stream.dart @@ -23,9 +23,7 @@ class ImageInfo { /// Both the [image] and the [scale] must not be null. /// /// The [debugLabel] may be used to identify the source of this image. - const ImageInfo({ required this.image, this.scale = 1.0, this.debugLabel }) - : assert(image != null), - assert(scale != null); + const ImageInfo({ required this.image, this.scale = 1.0, this.debugLabel }); /// Creates an [ImageInfo] with a cloned [image]. /// @@ -167,7 +165,7 @@ class ImageStreamListener { this.onImage, { this.onChunk, this.onError, - }) : assert(onImage != null); + }); /// Callback for getting notified that an image is available. /// @@ -623,7 +621,6 @@ abstract class ImageStreamCompleter with Diagnosticable { /// /// This callback will never fire if [removeListener] is never called. void addOnLastListenerRemovedCallback(VoidCallback callback) { - assert(callback != null); _checkDisposed(); _onLastListenerRemovedCallbacks.add(callback); } @@ -631,7 +628,6 @@ abstract class ImageStreamCompleter with Diagnosticable { /// Removes a callback previously supplied to /// [addOnLastListenerRemovedCallback]. void removeOnLastListenerRemovedCallback(VoidCallback callback) { - assert(callback != null); _checkDisposed(); _onLastListenerRemovedCallbacks.remove(callback); } @@ -789,8 +785,7 @@ class OneFrameImageStreamCompleter extends ImageStreamCompleter { /// argument on [FlutterErrorDetails] set to true, meaning that by default the /// message is only dumped to the console in debug mode (see [ /// FlutterErrorDetails]). - OneFrameImageStreamCompleter(Future image, { InformationCollector? informationCollector }) - : assert(image != null) { + OneFrameImageStreamCompleter(Future image, { InformationCollector? informationCollector }) { image.then(setImage, onError: (Object error, StackTrace stack) { reportError( context: ErrorDescription('resolving a single-frame image stream'), @@ -859,8 +854,7 @@ class MultiFrameImageStreamCompleter extends ImageStreamCompleter { String? debugLabel, Stream? chunkEvents, InformationCollector? informationCollector, - }) : assert(codec != null), - _informationCollector = informationCollector, + }) : _informationCollector = informationCollector, _scale = scale { this.debugLabel = debugLabel; codec.then(_handleCodecReady, onError: (Object error, StackTrace stack) { diff --git a/packages/flutter/lib/src/painting/inline_span.dart b/packages/flutter/lib/src/painting/inline_span.dart index 242e0d7438c0..72f004b9f591 100644 --- a/packages/flutter/lib/src/painting/inline_span.dart +++ b/packages/flutter/lib/src/painting/inline_span.dart @@ -60,9 +60,7 @@ class InlineSpanSemanticsInformation { this.semanticsLabel, this.stringAttributes = const [], this.recognizer, - }) : assert(text != null), - assert(isPlaceholder != null), - assert(isPlaceholder == false || (text == '\uFFFC' && semanticsLabel == null && recognizer == null)), + }) : assert(isPlaceholder == false || (text == '\uFFFC' && semanticsLabel == null && recognizer == null)), requiresOwnNode = isPlaceholder || recognizer != null; /// The text info for a [PlaceholderSpan]. diff --git a/packages/flutter/lib/src/painting/matrix_utils.dart b/packages/flutter/lib/src/painting/matrix_utils.dart index ce259b6683ee..3c19e5d65020 100644 --- a/packages/flutter/lib/src/painting/matrix_utils.dart +++ b/packages/flutter/lib/src/painting/matrix_utils.dart @@ -18,7 +18,6 @@ class MatrixUtils { /// /// Otherwise, returns null. static Offset? getAsTranslation(Matrix4 transform) { - assert(transform != null); final Float64List values = transform.storage; // Values are stored in column-major order. if (values[0] == 1.0 && // col 1 @@ -45,7 +44,6 @@ class MatrixUtils { /// /// Otherwise, returns null. static double? getAsScale(Matrix4 transform) { - assert(transform != null); final Float64List values = transform.storage; // Values are stored in column-major order. if (values[1] == 0.0 && // col 1 (value 0 is the scale) @@ -81,7 +79,6 @@ class MatrixUtils { if (b == null) { return isIdentity(a); } - assert(a != null && b != null); return a.storage[0] == b.storage[0] && a.storage[1] == b.storage[1] && a.storage[2] == b.storage[2] @@ -102,7 +99,6 @@ class MatrixUtils { /// Whether the given matrix is the identity matrix. static bool isIdentity(Matrix4 a) { - assert(a != null); return a.storage[0] == 1.0 // col 1 && a.storage[1] == 0.0 && a.storage[2] == 0.0 @@ -437,7 +433,6 @@ class MatrixUtils { /// The transformed rect is then projected back into the plane with z equals /// 0.0 before computing its bounding rect. static Rect inverseTransformRect(Matrix4 transform, Rect rect) { - assert(rect != null); // As exposed by `unrelated_type_equality_checks`, this assert was a no-op. // Fixing it introduces a bunch of runtime failures; for more context see: // https://github.com/flutter/flutter/pull/31568 @@ -487,10 +482,7 @@ class MatrixUtils { double perspective = 0.001, Axis orientation = Axis.vertical, }) { - assert(radius != null); - assert(angle != null); assert(perspective >= 0 && perspective <= 1.0); - assert(orientation != null); // Pre-multiplied matrix of a projection matrix and a view matrix. // @@ -561,8 +553,7 @@ class TransformProperty extends DiagnosticsProperty { super.showName, super.defaultValue, super.level, - }) : assert(showName != null), - assert(level != null); + }); @override String valueToString({ TextTreeConfiguration? parentConfiguration }) { diff --git a/packages/flutter/lib/src/painting/rounded_rectangle_border.dart b/packages/flutter/lib/src/painting/rounded_rectangle_border.dart index e1fb475e0d5c..eb7f4f329cc0 100644 --- a/packages/flutter/lib/src/painting/rounded_rectangle_border.dart +++ b/packages/flutter/lib/src/painting/rounded_rectangle_border.dart @@ -30,8 +30,7 @@ class RoundedRectangleBorder extends OutlinedBorder { const RoundedRectangleBorder({ super.side, this.borderRadius = BorderRadius.zero, - }) : assert(side != null), - assert(borderRadius != null); + }); /// The radii for each corner. final BorderRadiusGeometry borderRadius; @@ -46,7 +45,6 @@ class RoundedRectangleBorder extends OutlinedBorder { @override ShapeBorder? lerpFrom(ShapeBorder? a, double t) { - assert(t != null); if (a is RoundedRectangleBorder) { return RoundedRectangleBorder( side: BorderSide.lerp(a.side, side, t), @@ -66,7 +64,6 @@ class RoundedRectangleBorder extends OutlinedBorder { @override ShapeBorder? lerpTo(ShapeBorder? b, double t) { - assert(t != null); if (b is RoundedRectangleBorder) { return RoundedRectangleBorder( side: BorderSide.lerp(side, b.side, t), @@ -165,9 +162,7 @@ class _RoundedRectangleToCircleBorder extends OutlinedBorder { this.borderRadius = BorderRadius.zero, required this.circularity, required this.eccentricity, - }) : assert(side != null), - assert(borderRadius != null), - assert(circularity != null); + }); final BorderRadiusGeometry borderRadius; final double circularity; @@ -185,7 +180,6 @@ class _RoundedRectangleToCircleBorder extends OutlinedBorder { @override ShapeBorder? lerpFrom(ShapeBorder? a, double t) { - assert(t != null); if (a is RoundedRectangleBorder) { return _RoundedRectangleToCircleBorder( side: BorderSide.lerp(a.side, side, t), diff --git a/packages/flutter/lib/src/painting/shape_decoration.dart b/packages/flutter/lib/src/painting/shape_decoration.dart index 3144428289bd..428374e0808b 100644 --- a/packages/flutter/lib/src/painting/shape_decoration.dart +++ b/packages/flutter/lib/src/painting/shape_decoration.dart @@ -76,8 +76,7 @@ class ShapeDecoration extends Decoration { this.gradient, this.shadows, required this.shape, - }) : assert(!(color != null && gradient != null)), - assert(shape != null); + }) : assert(!(color != null && gradient != null)); /// Creates a shape decoration configured to match a [BoxDecoration]. /// @@ -91,7 +90,6 @@ class ShapeDecoration extends Decoration { /// transition from a [BoxShape.circle] to [BoxShape.rectangle]). factory ShapeDecoration.fromBoxDecoration(BoxDecoration source) { final ShapeBorder shape; - assert(source.shape != null); switch (source.shape) { case BoxShape.circle: if (source.border != null) { @@ -227,7 +225,6 @@ class ShapeDecoration extends Decoration { /// and which use [ShapeDecoration.lerp] when interpolating two /// [ShapeDecoration]s or a [ShapeDecoration] to or from null. static ShapeDecoration? lerp(ShapeDecoration? a, ShapeDecoration? b, double t) { - assert(t != null); if (a == null && b == null) { return null; } @@ -299,8 +296,7 @@ class ShapeDecoration extends Decoration { /// An object that paints a [ShapeDecoration] into a canvas. class _ShapeDecorationPainter extends BoxPainter { _ShapeDecorationPainter(this._decoration, VoidCallback onChanged) - : assert(_decoration != null), - super(onChanged); + : super(onChanged); final ShapeDecoration _decoration; @@ -318,7 +314,6 @@ class _ShapeDecorationPainter extends BoxPainter { VoidCallback get onChanged => super.onChanged!; void _precache(Rect rect, TextDirection? textDirection) { - assert(rect != null); if (rect == _lastRect && textDirection == _lastTextDirection) { return; } @@ -409,7 +404,6 @@ class _ShapeDecorationPainter extends BoxPainter { @override void paint(Canvas canvas, Offset offset, ImageConfiguration configuration) { - assert(configuration != null); assert(configuration.size != null); final Rect rect = offset & configuration.size!; final TextDirection? textDirection = configuration.textDirection; diff --git a/packages/flutter/lib/src/painting/stadium_border.dart b/packages/flutter/lib/src/painting/stadium_border.dart index 7aa7573ac557..1576e93acaed 100644 --- a/packages/flutter/lib/src/painting/stadium_border.dart +++ b/packages/flutter/lib/src/painting/stadium_border.dart @@ -27,14 +27,13 @@ class StadiumBorder extends OutlinedBorder { /// Create a stadium border. /// /// The [side] argument must not be null. - const StadiumBorder({ super.side }) : assert(side != null); + const StadiumBorder({ super.side }); @override ShapeBorder scale(double t) => StadiumBorder(side: side.scale(t)); @override ShapeBorder? lerpFrom(ShapeBorder? a, double t) { - assert(t != null); if (a is StadiumBorder) { return StadiumBorder(side: BorderSide.lerp(a.side, side, t)); } @@ -57,7 +56,6 @@ class StadiumBorder extends OutlinedBorder { @override ShapeBorder? lerpTo(ShapeBorder? b, double t) { - assert(t != null); if (b is StadiumBorder) { return StadiumBorder(side: BorderSide.lerp(side, b.side, t)); } @@ -144,8 +142,7 @@ class _StadiumToCircleBorder extends OutlinedBorder { super.side, this.circularity = 0.0, required this.eccentricity, - }) : assert(side != null), - assert(circularity != null); + }); final double circularity; final double eccentricity; @@ -161,7 +158,6 @@ class _StadiumToCircleBorder extends OutlinedBorder { @override ShapeBorder? lerpFrom(ShapeBorder? a, double t) { - assert(t != null); if (a is StadiumBorder) { return _StadiumToCircleBorder( side: BorderSide.lerp(a.side, side, t), @@ -188,7 +184,6 @@ class _StadiumToCircleBorder extends OutlinedBorder { @override ShapeBorder? lerpTo(ShapeBorder? b, double t) { - assert(t != null); if (b is StadiumBorder) { return _StadiumToCircleBorder( side: BorderSide.lerp(side, b.side, t), @@ -326,9 +321,7 @@ class _StadiumToRoundedRectangleBorder extends OutlinedBorder { super.side, this.borderRadius = BorderRadius.zero, this.rectilinearity = 0.0, - }) : assert(side != null), - assert(borderRadius != null), - assert(rectilinearity != null); + }); final BorderRadiusGeometry borderRadius; @@ -345,7 +338,6 @@ class _StadiumToRoundedRectangleBorder extends OutlinedBorder { @override ShapeBorder? lerpFrom(ShapeBorder? a, double t) { - assert(t != null); if (a is StadiumBorder) { return _StadiumToRoundedRectangleBorder( side: BorderSide.lerp(a.side, side, t), @@ -372,7 +364,6 @@ class _StadiumToRoundedRectangleBorder extends OutlinedBorder { @override ShapeBorder? lerpTo(ShapeBorder? b, double t) { - assert(t != null); if (b is StadiumBorder) { return _StadiumToRoundedRectangleBorder( side: BorderSide.lerp(side, b.side, t), diff --git a/packages/flutter/lib/src/painting/star_border.dart b/packages/flutter/lib/src/painting/star_border.dart index 7a4081e6d398..eaa9122bc471 100644 --- a/packages/flutter/lib/src/painting/star_border.dart +++ b/packages/flutter/lib/src/painting/star_border.dart @@ -468,8 +468,8 @@ class _StarGenerator { required this.rotation, required this.squash, }) : assert(points > 1), - assert(innerRadiusRatio == null || innerRadiusRatio <= 1), - assert(innerRadiusRatio == null || innerRadiusRatio >= 0), + assert(innerRadiusRatio <= 1), + assert(innerRadiusRatio >= 0), assert(squash >= 0), assert(squash <= 1), assert(pointRounding >= 0), @@ -484,7 +484,6 @@ class _StarGenerator { final double valleyRounding; final double rotation; final double squash; - bool get isStar => innerRadiusRatio != null; Path generate(Rect rect) { final double radius = rect.shortestSide / 2; diff --git a/packages/flutter/lib/src/painting/strut_style.dart b/packages/flutter/lib/src/painting/strut_style.dart index cce4e2c50144..4899affb03f0 100644 --- a/packages/flutter/lib/src/painting/strut_style.dart +++ b/packages/flutter/lib/src/painting/strut_style.dart @@ -347,8 +347,7 @@ class StrutStyle with Diagnosticable { this.forceStrutHeight, String? debugLabel, String? package, - }) : assert(textStyle != null), - assert(fontSize == null || fontSize > 0), + }) : assert(fontSize == null || fontSize > 0), assert(leading == null || leading >= 0), assert(package == null || fontFamily != null || fontFamilyFallback != null), fontFamily = fontFamily != null ? (package == null ? fontFamily : 'packages/$package/$fontFamily') : textStyle.fontFamily, diff --git a/packages/flutter/lib/src/painting/text_painter.dart b/packages/flutter/lib/src/painting/text_painter.dart index 59aeeabbec75..29e5fdf05661 100644 --- a/packages/flutter/lib/src/painting/text_painter.dart +++ b/packages/flutter/lib/src/painting/text_painter.dart @@ -74,8 +74,7 @@ class PlaceholderDimensions { required this.alignment, this.baseline, this.baselineOffset, - }) : assert(size != null), - assert(alignment != null); + }); /// A constant representing an empty placeholder. static const PlaceholderDimensions empty = PlaceholderDimensions(size: Size.zero, alignment: ui.PlaceholderAlignment.bottom); @@ -329,10 +328,7 @@ class TextPainter { TextWidthBasis textWidthBasis = TextWidthBasis.parent, ui.TextHeightBehavior? textHeightBehavior, }) : assert(text == null || text.debugAssertIsValid()), - assert(textAlign != null), - assert(textScaleFactor != null), assert(maxLines == null || maxLines > 0), - assert(textWidthBasis != null), _text = text, _textAlign = textAlign, _textDirection = textDirection, @@ -527,7 +523,6 @@ class TextPainter { TextAlign get textAlign => _textAlign; TextAlign _textAlign; set textAlign(TextAlign value) { - assert(value != null); if (_textAlign == value) { return; } @@ -571,7 +566,6 @@ class TextPainter { double get textScaleFactor => _textScaleFactor; double _textScaleFactor; set textScaleFactor(double value) { - assert(value != null); if (_textScaleFactor == value) { return; } @@ -666,7 +660,6 @@ class TextPainter { TextWidthBasis get textWidthBasis => _textWidthBasis; TextWidthBasis _textWidthBasis; set textWidthBasis(TextWidthBasis value) { - assert(value != null); if (_textWidthBasis == value) { return; } @@ -734,7 +727,6 @@ class TextPainter { ui.ParagraphStyle _createParagraphStyle([ TextDirection? defaultTextDirection ]) { // The defaultTextDirection argument is used for preferredLineHeight in case // textDirection hasn't yet been set. - assert(textAlign != null); assert(textDirection != null || defaultTextDirection != null, 'TextPainter.textDirection must be set to a non-null value before using the TextPainter.'); return _text!.style?.getParagraphStyle( textAlign: textAlign, @@ -847,7 +839,6 @@ class TextPainter { /// Valid only after [layout] has been called. double computeDistanceToActualBaseline(TextBaseline baseline) { assert(_debugAssertTextLayoutIsValid); - assert(baseline != null); switch (baseline) { case TextBaseline.alphabetic: return _paragraph!.alphabeticBaseline; @@ -1134,7 +1125,6 @@ class TextPainter { Offset get _emptyOffset { assert(_debugAssertTextLayoutIsValid); // implies textDirection is non-null - assert(textAlign != null); switch (textAlign) { case TextAlign.left: return Offset.zero; @@ -1199,7 +1189,6 @@ class TextPainter { return; } final int offset = position.offset; - assert(position.affinity != null); Rect? rect; switch (position.affinity) { case TextAffinity.upstream: { @@ -1244,8 +1233,6 @@ class TextPainter { ui.BoxWidthStyle boxWidthStyle = ui.BoxWidthStyle.tight, }) { assert(_debugAssertTextLayoutIsValid); - assert(boxHeightStyle != null); - assert(boxWidthStyle != null); return _paragraph!.getBoxesForRange( selection.start, selection.end, diff --git a/packages/flutter/lib/src/painting/text_span.dart b/packages/flutter/lib/src/painting/text_span.dart index b9b386d1ae8a..e647071d38ef 100644 --- a/packages/flutter/lib/src/painting/text_span.dart +++ b/packages/flutter/lib/src/painting/text_span.dart @@ -291,7 +291,6 @@ class TextSpan extends InlineSpan implements HitTestTarget, MouseTrackerAnnotati } if (children != null) { for (final InlineSpan child in children!) { - assert(child != null); child.build( builder, textScaleFactor: textScaleFactor, @@ -452,18 +451,6 @@ class TextSpan extends InlineSpan implements HitTestTarget, MouseTrackerAnnotati assert(() { if (children != null) { for (final InlineSpan child in children!) { - if (child == null) { - throw FlutterError.fromParts([ - ErrorSummary('TextSpan contains a null child.'), - ErrorDescription( - 'A TextSpan object with a non-null child list should not have any nulls in its child list.', - ), - toDiagnosticsNode( - name: 'The full text in question was', - style: DiagnosticsTreeStyle.errorProperty, - ), - ]); - } assert(child.debugAssertIsValid()); } } @@ -590,14 +577,7 @@ class TextSpan extends InlineSpan implements HitTestTarget, MouseTrackerAnnotati return const []; } return children!.map((InlineSpan child) { - // `child` has a non-nullable return type, but might be null when running - // with weak checking, so we need to null check it anyway (and ignore the - // warning that the null-handling logic is dead code). - if (child != null) { - return child.toDiagnosticsNode(); - } else { - return DiagnosticsNode.message(''); - } + return child.toDiagnosticsNode(); }).toList(); } } diff --git a/packages/flutter/lib/src/painting/text_style.dart b/packages/flutter/lib/src/painting/text_style.dart index 1f7f88929bf4..9e90fe13a4f4 100644 --- a/packages/flutter/lib/src/painting/text_style.dart +++ b/packages/flutter/lib/src/painting/text_style.dart @@ -504,7 +504,6 @@ class TextStyle with Diagnosticable { }) : fontFamily = package == null ? fontFamily : 'packages/$package/$fontFamily', _fontFamilyFallback = fontFamilyFallback, _package = package, - assert(inherit != null), assert(color == null || foreground == null, _kColorForegroundWarning), assert(backgroundColor == null || background == null, _kColorBackgroundWarning); @@ -961,21 +960,10 @@ class TextStyle with Diagnosticable { String? package, TextOverflow? overflow, }) { - assert(fontSizeFactor != null); - assert(fontSizeDelta != null); assert(fontSize != null || (fontSizeFactor == 1.0 && fontSizeDelta == 0.0)); - assert(fontWeightDelta != null); assert(fontWeight != null || fontWeightDelta == 0.0); - assert(letterSpacingFactor != null); - assert(letterSpacingDelta != null); assert(letterSpacing != null || (letterSpacingFactor == 1.0 && letterSpacingDelta == 0.0)); - assert(wordSpacingFactor != null); - assert(wordSpacingDelta != null); assert(wordSpacing != null || (wordSpacingFactor == 1.0 && wordSpacingDelta == 0.0)); - assert(heightFactor != null); - assert(heightDelta != null); - assert(decorationThicknessFactor != null); - assert(decorationThicknessDelta != null); assert(decorationThickness != null || (decorationThicknessFactor == 1.0 && decorationThicknessDelta == 0.0)); String? modifiedDebugLabel; @@ -1106,7 +1094,6 @@ class TextStyle with Diagnosticable { /// as if they have a [background] paint (creating a new [Paint] if necessary /// based on the [backgroundColor] property). static TextStyle? lerp(TextStyle? a, TextStyle? b, double t) { - assert(t != null); if (a == null && b == null) { return null; } @@ -1332,7 +1319,6 @@ class TextStyle with Diagnosticable { double? height, StrutStyle? strutStyle, }) { - assert(textScaleFactor != null); assert(maxLines == null || maxLines > 0); final ui.TextLeadingDistribution? leadingDistribution = this.leadingDistribution; final ui.TextHeightBehavior? effectiveTextHeightBehavior = textHeightBehavior