toString method

  1. @override
String toString()
override

Generates the string representation of this Entry.

Implementation

@override
String toString() {
  List<String> output = [];

  for (var comment in translatorComment) {
    final prefix = "#${indentTranslatorComment ? " " : ""}";
    output.add("$prefix $comment");
  }

  for (var comment in extractedComment) {
    output.add("#. $comment");
  }

  for (var reference in references) {
    output.add("#: $reference");
  }

  if (flags.isNotEmpty) output.add("#, ${flags.join(", ")}");

  if (msgctxt != null) output.add(toMultiLine(settings, "msgctxt", msgctxt!));

  output.add(toMultiLine(settings, "msgid", msgid));

  if (msgidPlural != null) {
    output.add(toMultiLine(settings, "msgid_plural", msgidPlural!));
    if (msgstrList.isNotEmpty) {
      for (int i = 0; i < msgstrList.length; i++) {
        output.add(toMultiLine(settings, "msgstr[$i]", msgstrList[i]));
      }
    } else {
      output.add('msgstr[0] ""');
      output.add('msgstr[1] ""');
    }
  } else {
    output.add(toMultiLine(settings, "msgstr", msgstr));
  }

  return output.join("\n");
}