[iter] A couple more hb_apply() + lambda uses
diff --git a/src/hb-ot-layout-gsub-table.hh b/src/hb-ot-layout-gsub-table.hh index 223c0f2..9b672ba 100644 --- a/src/hb-ot-layout-gsub-table.hh +++ b/src/hb-ot-layout-gsub-table.hh
@@ -842,18 +842,20 @@ void closure (hb_closure_context_t *c) const { - for (auto it = hb_zip (this+coverage, ligatureSet) - | hb_filter (*c->glyphs, hb_first) - | hb_map (hb_second); it; ++it) - (this+*it).closure (c); + + hb_zip (this+coverage, ligatureSet) + | hb_filter (*c->glyphs, hb_first) + | hb_map (hb_second) + | hb_apply ([&](const OffsetTo<LigatureSet> &_) { (this+_).closure (c); }) + ; } void collect_glyphs (hb_collect_glyphs_context_t *c) const { if (unlikely (!(this+coverage).add_coverage (c->input))) return; - for (auto it = hb_zip (this+coverage, ligatureSet) - | hb_map (hb_second); it; ++it) - (this+*it).collect_glyphs (c); + + hb_zip (this+coverage, ligatureSet) + | hb_map (hb_second) + | hb_apply ([&](const OffsetTo<LigatureSet> &_) { (this+_).collect_glyphs (c); }) + ; } const Coverage &get_coverage () const { return this+coverage; }