fn group_clusters(glyphs: &[ShapedGlyph], text_len: usize) -> Vec<ClusterGroup>Expand description
Walk a rustybuzz-ordered LTR glyph stream and group consecutive
glyphs sharing the same cluster value. Each group’s byte range is
[c..c_next) where c_next is the next cluster’s start (or
text_len for the last cluster). The shaper currently forces LTR;
RTL support must revisit this monotonic-cluster assumption.