toString method

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

String toString() {
  List<String> parts = [];

  void addPart(String key, dynamic value) {
    if (value != null) {
      String formattedValue = value is String ? "'${value.queryReplace()}'" : value.toString();
      parts.add("$key: $formattedValue");
    }
  }

  addPart('id', id);
  addPart('username', username);
  addPart('email', email);
  addPart('gender', gender);
  addPart('birth', birth);
  addPart('phone', phone?.replaceAll("-", ""));
  addPart('area', area);
  addPart('addr', addr);

  return "{${parts.join(', ')}}";
}