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() {
  return 'UserException{' +
      [
        joinCauses(_msgOrCode(), reason)
            .replaceAll('  ', ' ')
            .replaceAll('\n', '|')
            .replaceAll('||', '|'),
        (ifOpenDialog ? null : 'ifOpenDialog: false'),
        ((errorText?.isNotEmpty ?? false) ? 'errorText: "$errorText"' : null),
      ].where((x) => x?.isNotEmpty ?? false).join(', ') +
      '}';
}