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() {
  // dart:html returns localName.
  var result = localName;

  // In development mode, we print a debugging-friendly string.
  assert(() {
    final outerHtml = this.outerHtml ?? '';
    if (outerHtml.length < 256) {
      result = outerHtml;
    } else {
      final id = this.id;
      final tagName = this.tagName.toLowerCase();
      if (id == '') {
        result = '<$tagName ...>...</$tagName>';
      } else {
        result = '<$tagName id="$id" ...>...</$tagName>';
      }
    }
    return true;
  }());

  return result;
}