toString method

  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() {
  var parameters = <String, String?>{
    'name': name != null ? '$name' : null,
    'interfaces': interfaces.isNotEmpty ? interfaces.toString() : null,
    'children': children.isNotEmpty ? children.toString() : null
  };
  var parameterString = parameters.keys
      .where((key) => parameters[key] != null)
      .map((key) => '$key: ${parameters[key]}')
      .join(', ');
  return '$runtimeType($parameterString)';
}