Home | History | Annotate | Download | only in src

Lines Matching refs:glyphs

169   bool intersects (const hb_set_t *glyphs) const
170 { return glyphs->intersects (start, end); }
173 bool add_coverage (set_t *glyphs) const
174 { return glyphs->add_range (start, end); }
830 hb_array_t<const GlyphID> glyphs)
833 return_trace (glyphArray.serialize (c, glyphs));
842 bool intersects (const hb_set_t *glyphs) const
847 if (glyphs->has (glyphArray[i]))
851 bool intersects_coverage (const hb_set_t *glyphs, unsigned int index) const
852 { return glyphs->has (glyphArray[index]); }
855 bool add_coverage (set_t *glyphs) const
857 return glyphs->add_sorted_array (glyphArray.arrayZ, glyphArray.len);
898 hb_array_t<const GlyphID> glyphs)
903 if (unlikely (!glyphs.len))
910 for (unsigned int i = 1; i < glyphs.len; i++)
911 if (glyphs[i - 1] + 1 != glyphs[i])
917 rangeRecord[range].start = glyphs[0];
919 for (unsigned int i = 1; i < glyphs.len; i++)
921 if (glyphs[i - 1] + 1 != glyphs[i])
924 rangeRecord[range].start = glyphs[i];
927 rangeRecord[range].end = glyphs[i];
938 bool intersects (const hb_set_t *glyphs) const
943 if (rangeRecord[i].intersects (glyphs))
947 bool intersects_coverage (const hb_set_t *glyphs, unsigned int index) const
955 range.intersects (glyphs))
964 bool add_coverage (set_t *glyphs) const
968 if (unlikely (!rangeRecord[i].add_coverage (glyphs)))
1045 hb_array_t<const GlyphID> glyphs)
1051 for (unsigned int i = 1; i < glyphs.len; i++)
1052 if (glyphs[i - 1] + 1 != glyphs
1054 u.format.set (glyphs.len * 2 < num_ranges * 3 ? 1 : 2);
1058 case 1: return_trace (u.format1.serialize (c, glyphs));
1059 case 2: return_trace (u.format2.serialize (c, glyphs));
1076 bool intersects (const hb_set_t *glyphs) const
1080 case 1: return u.format1.intersects (glyphs);
1081 case 2: return u.format2.intersects (glyphs);
1085 bool intersects_coverage (const hb_set_t *glyphs, unsigned int index) const
1089 case 1: return u.format1.intersects_coverage (glyphs, index);
1090 case 2: return u.format2.intersects_coverage (glyphs, index);
1098 bool add_coverage (set_t *glyphs) const
1102 case 1: return u.format1.add_coverage (glyphs);
1103 case 2: return u.format2.add_coverage (glyphs);
1182 hb_array_t<const GlyphID> glyphs,
1196 hb_array_t<const HBUINT16> glyphs,
1202 if (unlikely (!glyphs.len))
1209 hb_codepoint_t glyph_min = glyphs[0];
1210 hb_codepoint_t glyph_max = glyphs[glyphs.len - 1];
1216 for (unsigned int i = 0; i < glyphs.len; i++)
1217 classValue[glyphs[i] - glyph_min] = klasses[i];
1227 hb_vector_t<GlyphID> glyphs;
1237 glyphs.push()->set (glyph_map[g]);
1240 c->serializer->propagate_error (glyphs, klasses);
1241 ClassDef_serialize (c->serializer, glyphs, klasses);
1242 return_trace (glyphs.len);
1252 bool add_coverage (set_t *glyphs) const
1262 if (unlikely (!glyphs->add_range (startGlyph + start, startGlyph + i)))
1268 if (unlikely (!glyphs->add_range (startGlyph + start, startGlyph + count)))
1275 bool add_class (set_t *glyphs, unsigned int klass) const
1279 if (classValue[i] == klass) glyphs->add (startGlyph + i);
1283 bool intersects (const hb_set_t *glyphs) const
1289 hb_set_next (glyphs, &iter) && iter < end;)
1293 bool intersects_class (const hb_set_t *glyphs, unsigned int klass) const
1300 if (!hb_set_next (glyphs, &g)) return false;
1303 if (hb_set_next (glyphs, &g)) return true;
1307 if (classValue[i] == klass && glyphs->has (startGlyph + i))
1332 hb_array_t<const HBUINT16> glyphs,
1338 if (unlikely (!glyphs.len))
1345 for (unsigned int i = 1; i < glyphs.len; i++)
1346 if (glyphs[i - 1] + 1 != glyphs[i] ||
1353 rangeRecord[range].start = glyphs[0];
1355 for (unsigned int i = 1; i < glyphs.len; i++)
1357 if (glyphs[i - 1] + 1 != glyphs[i] ||
1361 rangeRecord[range].start = glyphs[i];
1364 rangeRecord[range].end = glyphs[i];
1374 hb_vector_t<GlyphID> glyphs;
1387 glyphs.push ()->set (glyph_map[g]);
1391 c->serializer->propagate_error (glyphs, klasses);
1392 ClassDef_serialize (c->serializer, glyphs, klasses);
1393 return_trace (glyphs.len);
1403 bool add_coverage (set_t *glyphs) const
1408 if (unlikely (!rangeRecord[i].add_coverage (glyphs)))
1414 bool add_class (set_t *glyphs, unsigned int klass) const
1420 if (unlikely (!rangeRecord[i].add_coverage (glyphs)))
1426 bool intersects (const hb_set_t *glyphs) const
1431 if (rangeRecord[i].intersects (glyphs))
1435 bool intersects_class (const hb_set_t *glyphs, unsigned int klass) const
1444 if (!hb_set_next (glyphs, &g))
1450 if (g != HB_SET_VALUE_INVALID && hb_set_next (glyphs, &g))
1455 if (rangeRecord[i].value == klass && rangeRecord[i].intersects (glyphs))
1481 hb_array_t<const GlyphID> glyphs,
1488 if (glyphs.len)
1490 hb_codepoint_t glyph_min = glyphs[0];
1491 hb_codepoint_t glyph_max = glyphs[glyphs.len - 1];
1494 for (unsigned int i = 1; i < glyphs.len; i++)
1495 if (glyphs[i - 1] + 1 != glyphs[i] ||
1506 case 1: return_trace (u.format1.serialize (c, glyphs, klasses));
1507 case 2: return_trace (u.format2.serialize (c, glyphs, klasses));
1536 bool add_coverage (set_t *glyphs) const
1539 case 1: return u.format1.add_coverage (glyphs);
1540 case 2: return u.format2.add_coverage (glyphs);
1548 bool add_class (set_t *glyphs, unsigned int klass) const
1551 case 1: return u.format1.add_class (glyphs, klass);
1552 case 2: return u.format2.add_class (glyphs, klass);
1557 bool intersects (const hb_set_t *glyphs) const
1560 case 1: return u.format1.intersects (glyphs);
1561 case 2: return u.format2.intersects (glyphs);
1565 bool intersects_class (const hb_set_t *glyphs, unsigned int klass) const
1568 case 1: return u.format1.intersects_class (glyphs, klass);
1569 case 2: return u.format2.intersects_class (glyphs, klass);
1585 hb_array_t<const GlyphID> glyphs,
1587 { c->start_embed<ClassDef> ()->serialize (c, glyphs, klasses); }