Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(921)

Side by Side Diff: third_party/harfbuzz-ng/src/hb-ot-layout-gpos-table.hh

Issue 16053004: Update harfbuzz-ng to 0.9.17 (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright © 2007,2008,2009,2010 Red Hat, Inc. 2 * Copyright © 2007,2008,2009,2010 Red Hat, Inc.
3 * Copyright © 2010,2012 Google, Inc. 3 * Copyright © 2010,2012 Google, Inc.
4 * 4 *
5 * This is part of HarfBuzz, a text shaping library. 5 * This is part of HarfBuzz, a text shaping library.
6 * 6 *
7 * Permission is hereby granted, without written agreement and without 7 * Permission is hereby granted, without written agreement and without
8 * license or royalty fees, to use, copy, modify, and distribute this 8 * license or royalty fees, to use, copy, modify, and distribute this
9 * software and its documentation for any purpose, provided that the 9 * software and its documentation for any purpose, provided that the
10 * above copyright notice and the following two paragraphs appear in 10 * above copyright notice and the following two paragraphs appear in
(...skipping 692 matching lines...) Expand 10 before | Expand all | Expand 10 after
703 DEFINE_SIZE_ARRAY (10, pairSet); 703 DEFINE_SIZE_ARRAY (10, pairSet);
704 }; 704 };
705 705
706 struct PairPosFormat2 706 struct PairPosFormat2
707 { 707 {
708 inline void collect_glyphs (hb_collect_glyphs_context_t *c) const 708 inline void collect_glyphs (hb_collect_glyphs_context_t *c) const
709 { 709 {
710 TRACE_COLLECT_GLYPHS (this); 710 TRACE_COLLECT_GLYPHS (this);
711 /* (this+coverage).add_coverage (c->input); // Don't need this. */ 711 /* (this+coverage).add_coverage (c->input); // Don't need this. */
712 712
713 /* TODO only add values for pairs that have nonzero adjustments. */
714
715 unsigned int count1 = class1Count; 713 unsigned int count1 = class1Count;
716 const ClassDef &klass1 = this+classDef1; 714 const ClassDef &klass1 = this+classDef1;
717 for (unsigned int i = 0; i < count1; i++) 715 for (unsigned int i = 0; i < count1; i++)
718 klass1.add_class (c->input, i); 716 klass1.add_class (c->input, i);
719 717
720 unsigned int count2 = class2Count; 718 unsigned int count2 = class2Count;
721 const ClassDef &klass2 = this+classDef2; 719 const ClassDef &klass2 = this+classDef2;
722 for (unsigned int i = 0; i < count2; i++) 720 for (unsigned int i = 0; i < count2; i++)
723 klass2.add_class (c->input, i); 721 klass2.add_class (c->input, i);
724 } 722 }
(...skipping 282 matching lines...) Expand 10 before | Expand all | Expand 10 after
1007 * mark-minor-- 1005 * mark-minor--
1008 * ordered by class--zero-based. */ 1006 * ordered by class--zero-based. */
1009 1007
1010 struct MarkBasePosFormat1 1008 struct MarkBasePosFormat1
1011 { 1009 {
1012 inline void collect_glyphs (hb_collect_glyphs_context_t *c) const 1010 inline void collect_glyphs (hb_collect_glyphs_context_t *c) const
1013 { 1011 {
1014 TRACE_COLLECT_GLYPHS (this); 1012 TRACE_COLLECT_GLYPHS (this);
1015 (this+markCoverage).add_coverage (c->input); 1013 (this+markCoverage).add_coverage (c->input);
1016 (this+baseCoverage).add_coverage (c->input); 1014 (this+baseCoverage).add_coverage (c->input);
1017 /* TODO only add combinations that have nonzero adjustment. */
1018 } 1015 }
1019 1016
1020 inline const Coverage &get_coverage (void) const 1017 inline const Coverage &get_coverage (void) const
1021 { 1018 {
1022 return this+markCoverage; 1019 return this+markCoverage;
1023 } 1020 }
1024 1021
1025 inline bool apply (hb_apply_context_t *c) const 1022 inline bool apply (hb_apply_context_t *c) const
1026 { 1023 {
1027 TRACE_APPLY (this); 1024 TRACE_APPLY (this);
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
1111 * tables ordered by 1108 * tables ordered by
1112 * LigatureCoverage Index */ 1109 * LigatureCoverage Index */
1113 1110
1114 struct MarkLigPosFormat1 1111 struct MarkLigPosFormat1
1115 { 1112 {
1116 inline void collect_glyphs (hb_collect_glyphs_context_t *c) const 1113 inline void collect_glyphs (hb_collect_glyphs_context_t *c) const
1117 { 1114 {
1118 TRACE_COLLECT_GLYPHS (this); 1115 TRACE_COLLECT_GLYPHS (this);
1119 (this+markCoverage).add_coverage (c->input); 1116 (this+markCoverage).add_coverage (c->input);
1120 (this+ligatureCoverage).add_coverage (c->input); 1117 (this+ligatureCoverage).add_coverage (c->input);
1121 /* TODO only add combinations that have nonzero adjustment. */
1122 } 1118 }
1123 1119
1124 inline const Coverage &get_coverage (void) const 1120 inline const Coverage &get_coverage (void) const
1125 { 1121 {
1126 return this+markCoverage; 1122 return this+markCoverage;
1127 } 1123 }
1128 1124
1129 inline bool apply (hb_apply_context_t *c) const 1125 inline bool apply (hb_apply_context_t *c) const
1130 { 1126 {
1131 TRACE_APPLY (this); 1127 TRACE_APPLY (this);
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
1227 * mark1-minor-- 1223 * mark1-minor--
1228 * ordered by class--zero-based. */ 1224 * ordered by class--zero-based. */
1229 1225
1230 struct MarkMarkPosFormat1 1226 struct MarkMarkPosFormat1
1231 { 1227 {
1232 inline void collect_glyphs (hb_collect_glyphs_context_t *c) const 1228 inline void collect_glyphs (hb_collect_glyphs_context_t *c) const
1233 { 1229 {
1234 TRACE_COLLECT_GLYPHS (this); 1230 TRACE_COLLECT_GLYPHS (this);
1235 (this+mark1Coverage).add_coverage (c->input); 1231 (this+mark1Coverage).add_coverage (c->input);
1236 (this+mark2Coverage).add_coverage (c->input); 1232 (this+mark2Coverage).add_coverage (c->input);
1237 /* TODO only add combinations that have nonzero adjustment. */
1238 } 1233 }
1239 1234
1240 inline const Coverage &get_coverage (void) const 1235 inline const Coverage &get_coverage (void) const
1241 { 1236 {
1242 return this+mark1Coverage; 1237 return this+mark1Coverage;
1243 } 1238 }
1244 1239
1245 inline bool apply (hb_apply_context_t *c) const 1240 inline bool apply (hb_apply_context_t *c) const
1246 { 1241 {
1247 TRACE_APPLY (this); 1242 TRACE_APPLY (this);
(...skipping 225 matching lines...) Expand 10 before | Expand all | Expand 10 after
1473 if (unlikely (!c->buffer->len || !c->lookup_mask)) 1468 if (unlikely (!c->buffer->len || !c->lookup_mask))
1474 return false; 1469 return false;
1475 1470
1476 c->set_recurse_func (apply_recurse_func); 1471 c->set_recurse_func (apply_recurse_func);
1477 c->set_lookup (*this); 1472 c->set_lookup (*this);
1478 1473
1479 c->buffer->idx = 0; 1474 c->buffer->idx = 0;
1480 1475
1481 while (c->buffer->idx < c->buffer->len) 1476 while (c->buffer->idx < c->buffer->len)
1482 { 1477 {
1483 if ((c->buffer->cur().mask & c->lookup_mask) && 1478 if (digest->may_have (c->buffer->cur().codepoint) &&
1484 » digest->may_have (c->buffer->cur().codepoint) && 1479 » (c->buffer->cur().mask & c->lookup_mask) &&
1485 apply_once (c)) 1480 apply_once (c))
1486 ret = true; 1481 ret = true;
1487 else 1482 else
1488 c->buffer->idx++; 1483 c->buffer->idx++;
1489 } 1484 }
1490 1485
1491 return ret; 1486 return ret;
1492 } 1487 }
1493 1488
1494 template <typename context_t> 1489 template <typename context_t>
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after
1639 1634
1640 1635
1641 #undef attach_lookback 1636 #undef attach_lookback
1642 #undef cursive_chain 1637 #undef cursive_chain
1643 1638
1644 1639
1645 } /* namespace OT */ 1640 } /* namespace OT */
1646 1641
1647 1642
1648 #endif /* HB_OT_LAYOUT_GPOS_TABLE_HH */ 1643 #endif /* HB_OT_LAYOUT_GPOS_TABLE_HH */
OLDNEW
« no previous file with comments | « third_party/harfbuzz-ng/src/hb-ot-layout-common-private.hh ('k') | third_party/harfbuzz-ng/src/hb-ot-layout-gsub-table.hh » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698