String rewriteMessages()

in lib/src/message_rewriter.dart [16:36]


String rewriteMessages(String source, String sourceName,
    {useStringSubstitution: false}) {
  var messages = findMessages(source, sourceName);
  messages.sort((a, b) => a.sourcePosition.compareTo(b.sourcePosition));

  var start = 0;
  var newSource = new StringBuffer();
  for (var message in messages) {
    if (message.arguments.isNotEmpty) {
      newSource.write(source.substring(start, message.sourcePosition));
      if (useStringSubstitution) {
        rewriteWithStringSubstitution(newSource, source, start, message);
      } else {
        rewriteRegenerating(newSource, source, start, message);
      }
      start = message.endPosition;
    }
  }
  newSource.write(source.substring(start));
  return newSource.toString();
}