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() {
  var template = Environment().fromString(MyLogger.config.outputFormat);
  String output = template.render({
    "time": timestamp!,
    "level": Utils.fromEnumToString(logLevel),
    "message": text!,
    "class": className!,
    "method": methodName!,
    "dataLogType": Utils.fromEnumToString(dataLogType) ?? MyLogger.config.defaultDataLogType,
    "exception": exception ?? '',
    "stacktrace": stacktrace ?? '',
  });

  if (MyLogger.config.isDevelopmentDebuggingEnabled) {
    output += !kReleaseMode ? " ${dataLogType} ${timeInMillis}" : "";
  }

  return "$output\n";
}