toString method
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 status = this.status;
  var parametersStr = _toTrimmedString(parameters());
  var prefix = '$taskType($parametersStr)';
  switch (status) {
    case AsyncTaskStatus.idle:
      return '$prefix[idle]';
    case AsyncTaskStatus.executing:
      return '$prefix[executing]{ submitTime: $submitTime }';
    case AsyncTaskStatus.successful:
      return '$prefix[successful]{ result: ${_toTrimmedString(result)} ; executionTime: ${executionTime!.inMilliseconds} ms }';
    case AsyncTaskStatus.error:
      return '$prefix[error]{ error: $error ; submitTime: $submitTime }';
  }
}