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> description = <String>[
    if (icon != null) 'icon: $icon',
    if (iconColor != null) 'iconColor: $iconColor',
    if (label != null) 'label: $label',
    if (labelText != null) 'labelText: "$labelText"',
    if (floatingLabelStyle != null) 'floatingLabelStyle: "$floatingLabelStyle"',
    if (helperText != null) 'helperText: "$helperText"',
    if (helperMaxLines != null) 'helperMaxLines: "$helperMaxLines"',
    if (hintText != null) 'hintText: "$hintText"',
    if (hintMaxLines != null) 'hintMaxLines: "$hintMaxLines"',
    if (errorText != null) 'errorText: "$errorText"',
    if (errorStyle != null) 'errorStyle: "$errorStyle"',
    if (errorMaxLines != null) 'errorMaxLines: "$errorMaxLines"',
    if (floatingLabelBehavior != null) 'floatingLabelBehavior: $floatingLabelBehavior',
    if (floatingLabelAlignment != null) 'floatingLabelAlignment: $floatingLabelAlignment',
    if (isDense ?? false) 'isDense: $isDense',
    if (contentPadding != null) 'contentPadding: $contentPadding',
    if (isCollapsed) 'isCollapsed: $isCollapsed',
    if (prefixIcon != null) 'prefixIcon: $prefixIcon',
    if (prefixIconColor != null) 'prefixIconColor: $prefixIconColor',
    if (prefix != null) 'prefix: $prefix',
    if (prefixText != null) 'prefixText: $prefixText',
    if (prefixStyle != null) 'prefixStyle: $prefixStyle',
    if (prefixIconConstraints != null) 'prefixIconConstraints: $prefixIconConstraints',
    if (suffixIcon != null) 'suffixIcon: $suffixIcon',
    if (suffixIconColor != null) 'suffixIconColor: $suffixIconColor',
    if (suffix != null) 'suffix: $suffix',
    if (suffixText != null) 'suffixText: $suffixText',
    if (suffixStyle != null) 'suffixStyle: $suffixStyle',
    if (suffixIconConstraints != null) 'suffixIconConstraints: $suffixIconConstraints',
    if (counter != null) 'counter: $counter',
    if (counterText != null) 'counterText: $counterText',
    if (counterStyle != null) 'counterStyle: $counterStyle',
    if (filled ?? false) 'filled: true',
    if (fillColor != null) 'fillColor: $fillColor',
    if (focusColor != null) 'focusColor: $focusColor',
    if (hoverColor != null) 'hoverColor: $hoverColor',
    if (errorBorder != null) 'errorBorder: $errorBorder',
    if (focusedBorder != null) 'focusedBorder: $focusedBorder',
    if (focusedErrorBorder != null) 'focusedErrorBorder: $focusedErrorBorder',
    if (disabledBorder != null) 'disabledBorder: $disabledBorder',
    if (enabledBorder != null) 'enabledBorder: $enabledBorder',
    if (border != null) 'border: $border',
    if (!enabled) 'enabled: false',
    if (semanticCounterText != null) 'semanticCounterText: $semanticCounterText',
    if (alignLabelWithHint != null) 'alignLabelWithHint: $alignLabelWithHint',
    if (constraints != null) 'constraints: $constraints',
  ];
  return 'InputDecoration(${description.join(', ')})';
}