in lib/src/grapheme_clusters/breaks.dart [208:230]
int lookAheadPictorgraphicExtend(String base, int start, int cursor) {
// Has just seen ZWJ+Pictographic. Check if preceeding is Pic Ext*.
// (If so, just move cursor back to the Pic).
var index = cursor;
while (index > start) {
var char = base.codeUnitAt(--index);
var prevChar = 0;
var category = categoryControl;
if (char & 0xFC00 != 0xDC00) {
category = low(char);
} else if (index > start &&
(prevChar = base.codeUnitAt(--index)) & 0xFC00 == 0xD800) {
category = high(prevChar, char);
} else {
break;
}
if (category == categoryPictographic) {
return index;
}
if (category != categoryExtend) break;
}
return -1;
}