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 representation.

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 List<String> properties = <String>[
    '$image',
    if (colorFilter != null)
      '$colorFilter',
    if (fit != null &&
        !(fit == BoxFit.fill && centerSlice != null) &&
        !(fit == BoxFit.scaleDown && centerSlice == null))
      '$fit',
    '$alignment',
    if (centerSlice != null)
      'centerSlice: $centerSlice',
    if (repeat != ImageRepeat.noRepeat)
      '$repeat',
    if (matchTextDirection)
      'match text direction',
    'scale $scale',
    'opacity $opacity',
    '$filterQuality',
    if (invertColors)
      'invert colors',
    if (isAntiAlias)
      'use anti-aliasing',
  ];
  return '${objectRuntimeType(this, 'DecorationImage')}(${properties.join(", ")})';
}