Home | History | Annotate | Download | only in src

Lines Matching refs:subtable

79 bool ParseValueRecord(ots::Buffer* subtable, const uint8_t *data,
85 if (!subtable->Skip(2)) {
95 if (!subtable->ReadU16(&offset)) {
114 ots::Buffer subtable(data, length);
118 if (!subtable.ReadU16(&format) ||
119 !subtable.Skip(4)) {
132 if (!subtable.ReadU16(&anchor_point)) {
138 if (!subtable.ReadU16(&offset_x_device) ||
139 !subtable.ReadU16(&offset_y_device)) {
167 ots::Buffer subtable(data, length);
170 if (!subtable.ReadU16(&mark_count)) {
182 if (!subtable.ReadU16(&class_value) ||
183 !subtable.ReadU16(&offset_mark_anchor)) {
202 // Single Adjustment Positioning Subtable
205 ots::Buffer subtable(data, length);
210 if (!subtable.ReadU16(&format) ||
211 !subtable.ReadU16(&offset_coverage) ||
212 !subtable.ReadU16(&value_format)) {
218 if (!ParseValueRecord(&subtable, data, length, value_format)) {
223 if (!subtable.ReadU16(&value_count)) {
227 if (!ParseValueRecord(&subtable, data, length, value_format)) {
235 if (offset_coverage < subtable.offset() || offset_coverage >= length) {
252 ots::Buffer subtable(data, length);
255 if (!subtable.ReadU16(&value_count)) {
261 if (!subtable.ReadU16(&glyph_id)) {
267 if (!ParseValueRecord(&subtable, data, length, value_format1)) {
270 if (!ParseValueRecord(&subtable, data, length, value_format2)) {
281 ots::Buffer subtable(data, length);
284 if (!subtable.Skip(8)) {
289 if (!subtable.ReadU16(&pair_set_count)) {
299 if (!subtable.ReadU16(&pair_set_offset)) {
320 ots::Buffer subtable(data, length);
323 if (!subtable.Skip(8)) {
331 if (!subtable.ReadU16(&offset_class_def1) ||
332 !subtable.ReadU16(&offset_class_def2) ||
333 !subtable.ReadU16(&class1_count) ||
334 !subtable.ReadU16(&class2_count)) {
342 if (value_format1 && !ParseValueRecord(&subtable, data, length,
346 if (value_format2 && !ParseValueRecord(&subtable, data, length,
354 if (offset_class_def1 < subtable.offset() || offset_class_def1 >= length ||
355 offset_class_def2 < subtable.offset() || offset_class_def2 >= length) {
373 // Pair Adjustment Positioning Subtable
376 ots::Buffer subtable(data, length);
382 if (!subtable.ReadU16(&format) ||
383 !subtable.ReadU16(&offset_coverage) ||
384 !subtable.ReadU16(&value_format1) ||
385 !subtable.ReadU16(&value_format2)) {
403 if (offset_coverage < subtable.offset() || offset_coverage >= length) {
416 // Cursive Attachment Positioning Subtable
419 ots::Buffer subtable(data, length);
424 if (!subtable.ReadU16(&format) ||
425 !subtable.ReadU16(&offset_coverage) ||
426 !subtable.ReadU16(&entry_exit_count)) {
443 if (!subtable.ReadU16(&offset_entry_anchor) ||
444 !subtable.ReadU16(&offset_exit_anchor)) {
470 if (offset_coverage < subtable.offset() || offset_coverage >= length) {
484 ots::Buffer subtable(data, length);
487 if (!subtable.ReadU16(&record_count)) {
499 if (!subtable.ReadU16(&offset_record)) {
519 ots::Buffer subtable(data, length);
522 if (!subtable.ReadU16(&ligature_count)) {
527 if (!subtable.ReadU16(&offset_ligature_attach)) {
545 ots::Buffer subtable(data, length);
553 if (!subtable.ReadU16(&format) ||
554 !subtable.ReadU16(&offset_coverage1) ||
555 !subtable.ReadU16(&offset_coverage2) ||
556 !subtable.ReadU16(&class_count) ||
557 !subtable.ReadU16(&offset_mark_array) ||
558 !subtable.ReadU16(&offset_type_specific_array)) {
566 const unsigned header_end = static_cast<unsigned>(subtable.offset());
620 // MarkToBase Attachment Positioning Subtable
628 // MarkToLigature Attachment Positioning Subtable
636 // MarkToMark Attachment Positioning Subtable
652 // Chaining Contexual Positioning Subtable