joinWithPrefix method
Implementation
List<String> joinWithPrefix(
String prefix, {
required int maxLength,
Encoding encoding = const Utf8Codec(),
}) {
final plen = encoding.encode(prefix).length;
final ulen = maxLength - plen;
final a = <String>[];
var sb = StringBuffer(prefix);
var next = false;
var len = 0;
for (final item in this) {
len += item.length + (next ? 1 : 0);
if (ulen < len) {
a.add(sb.toString());
sb = StringBuffer(prefix);
len = item.length;
next = false;
}
if (next) {
sb.write(' ');
} else {
next = true;
}
sb.write(item);
}
if (0 < len) {
a.add(sb.toString());
}
return a;
}