toString method Null safety

  1. @override
String toString()
override

A string representation of this object.

Some classes have a default textual representation, often paired with a static parse function (like int.parse). These classes will provide the textual representation as their string represetion.

Other classes have no meaningful textual representation that a program will care about. Such classes will typically override toString to provide useful information when inspecting the object, mainly for debugging or logging.

Implementation

@override
String toString() {
  final String rect = '${left.toStringAsFixed(1)}, '
                      '${top.toStringAsFixed(1)}, '
                      '${right.toStringAsFixed(1)}, '
                      '${bottom.toStringAsFixed(1)}';
  if (tlRadius == trRadius &&
      trRadius == brRadius &&
      brRadius == blRadius) {
    if (tlRadius.x == tlRadius.y)
      return 'RRect.fromLTRBR($rect, ${tlRadius.x.toStringAsFixed(1)})';
    return 'RRect.fromLTRBXY($rect, ${tlRadius.x.toStringAsFixed(1)}, ${tlRadius.y.toStringAsFixed(1)})';
  }
  return 'RRect.fromLTRBAndCorners('
           '$rect, '
           'topLeft: $tlRadius, '
           'topRight: $trRadius, '
           'bottomRight: $brRadius, '
           'bottomLeft: $blRadius'
         ')';
}