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() {
  String text = super.toString();
  if (correctFunctionDefinitions.isNotEmpty) {
    text +=
        '\n - Correct function definitions: ${correctFunctionDefinitions.map((e) => e.name).join(', ')}';
  }
  if (missingFunctionDefinitions.isNotEmpty) {
    text +=
        '\n - Missing function definitions: ${missingFunctionDefinitions.map((e) => e.toString()).join(', ')}';
  }

  for (final wrongFunctionDefinition in wrongFunctionDefinitions) {
    text +=
        '\n - Wrong function definition: ${wrongFunctionDefinition.$2.toString()} (Expected: ${wrongFunctionDefinition.$1.toString()})';
  }
  return text;
}