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

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

Issue 396393005: Roll HarfBuzz to 0.9.32 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix for include order presubmit issue Created 6 years, 5 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
OLDNEW
1 /* 1 /*
2 * Copyright © 2007,2008,2009 Red Hat, Inc. 2 * Copyright © 2007,2008,2009 Red Hat, Inc.
3 * Copyright © 2010,2011,2012 Google, Inc. 3 * Copyright © 2010,2011,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 264 matching lines...) Expand 10 before | Expand all | Expand 10 after
275 inline bool covers (unsigned int set_index, hb_codepoint_t glyph_id) const 275 inline bool covers (unsigned int set_index, hb_codepoint_t glyph_id) const
276 { return (this+coverage[set_index]).get_coverage (glyph_id) != NOT_COVERED; } 276 { return (this+coverage[set_index]).get_coverage (glyph_id) != NOT_COVERED; }
277 277
278 inline bool sanitize (hb_sanitize_context_t *c) { 278 inline bool sanitize (hb_sanitize_context_t *c) {
279 TRACE_SANITIZE (this); 279 TRACE_SANITIZE (this);
280 return TRACE_RETURN (coverage.sanitize (c, this)); 280 return TRACE_RETURN (coverage.sanitize (c, this));
281 } 281 }
282 282
283 protected: 283 protected:
284 USHORT format; /* Format identifier--format = 1 */ 284 USHORT format; /* Format identifier--format = 1 */
285 LongOffsetArrayOf<Coverage> 285 ArrayOf<OffsetTo<Coverage, ULONG> >
286 coverage; /* Array of long offsets to mark set 286 coverage; /* Array of long offsets to mark set
287 * coverage tables */ 287 * coverage tables */
288 public: 288 public:
289 DEFINE_SIZE_ARRAY (4, coverage); 289 DEFINE_SIZE_ARRAY (4, coverage);
290 }; 290 };
291 291
292 struct MarkGlyphSets 292 struct MarkGlyphSets
293 { 293 {
294 inline bool covers (unsigned int set_index, hb_codepoint_t glyph_id) const 294 inline bool covers (unsigned int set_index, hb_codepoint_t glyph_id) const
295 { 295 {
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
353 353
354 inline bool has_lig_carets (void) const { return ligCaretList != 0; } 354 inline bool has_lig_carets (void) const { return ligCaretList != 0; }
355 inline unsigned int get_lig_carets (hb_font_t *font, 355 inline unsigned int get_lig_carets (hb_font_t *font,
356 hb_direction_t direction, 356 hb_direction_t direction,
357 hb_codepoint_t glyph_id, 357 hb_codepoint_t glyph_id,
358 unsigned int start_offset, 358 unsigned int start_offset,
359 unsigned int *caret_count /* IN/OUT */, 359 unsigned int *caret_count /* IN/OUT */,
360 hb_position_t *caret_array /* OUT */) cons t 360 hb_position_t *caret_array /* OUT */) cons t
361 { return (this+ligCaretList).get_lig_carets (font, direction, glyph_id, start_ offset, caret_count, caret_array); } 361 { return (this+ligCaretList).get_lig_carets (font, direction, glyph_id, start_ offset, caret_count, caret_array); }
362 362
363 inline bool has_mark_sets (void) const { return version.to_int () >= 0x0001000 2 && markGlyphSetsDef[0] != 0; } 363 inline bool has_mark_sets (void) const { return version.to_int () >= 0x0001000 2u && markGlyphSetsDef[0] != 0; }
364 inline bool mark_set_covers (unsigned int set_index, hb_codepoint_t glyph_id) const 364 inline bool mark_set_covers (unsigned int set_index, hb_codepoint_t glyph_id) const
365 { return version.to_int () >= 0x00010002 && (this+markGlyphSetsDef[0]).covers (set_index, glyph_id); } 365 { return version.to_int () >= 0x00010002u && (this+markGlyphSetsDef[0]).covers (set_index, glyph_id); }
366 366
367 inline bool sanitize (hb_sanitize_context_t *c) { 367 inline bool sanitize (hb_sanitize_context_t *c) {
368 TRACE_SANITIZE (this); 368 TRACE_SANITIZE (this);
369 return TRACE_RETURN (version.sanitize (c) && 369 return TRACE_RETURN (version.sanitize (c) &&
370 likely (version.major == 1) && 370 likely (version.major == 1) &&
371 glyphClassDef.sanitize (c, this) && 371 glyphClassDef.sanitize (c, this) &&
372 attachList.sanitize (c, this) && 372 attachList.sanitize (c, this) &&
373 ligCaretList.sanitize (c, this) && 373 ligCaretList.sanitize (c, this) &&
374 markAttachClassDef.sanitize (c, this) && 374 markAttachClassDef.sanitize (c, this) &&
375 » » » (version.to_int () < 0x00010002 || markGlyphSetsDef[0]. sanitize (c, this))); 375 » » » (version.to_int () < 0x00010002u || markGlyphSetsDef[0] .sanitize (c, this)));
376 } 376 }
377 377
378 378
379 /* glyph_props is a 16-bit integer where the lower 8-bit have bits representin g 379 /* glyph_props is a 16-bit integer where the lower 8-bit have bits representin g
380 * glyph class and other bits, and high 8-bit gthe mark attachment type (if an y). 380 * glyph class and other bits, and high 8-bit gthe mark attachment type (if an y).
381 * Not to be confused with lookup_props which is very similar. */ 381 * Not to be confused with lookup_props which is very similar. */
382 inline unsigned int get_glyph_props (hb_codepoint_t glyph) const 382 inline unsigned int get_glyph_props (hb_codepoint_t glyph) const
383 { 383 {
384 unsigned int klass = get_glyph_class (glyph); 384 unsigned int klass = get_glyph_class (glyph);
385 385
386 ASSERT_STATIC ((unsigned int) HB_OT_LAYOUT_GLYPH_PROPS_BASE_GLYPH == (unsign ed int) LookupFlag::IgnoreBaseGlyphs); 386 ASSERT_STATIC ((unsigned int) HB_OT_LAYOUT_GLYPH_PROPS_BASE_GLYPH == (unsign ed int) LookupFlag::IgnoreBaseGlyphs);
387 ASSERT_STATIC ((unsigned int) HB_OT_LAYOUT_GLYPH_PROPS_LIGATURE == (unsigned int) LookupFlag::IgnoreLigatures); 387 ASSERT_STATIC ((unsigned int) HB_OT_LAYOUT_GLYPH_PROPS_LIGATURE == (unsigned int) LookupFlag::IgnoreLigatures);
388 ASSERT_STATIC ((unsigned int) HB_OT_LAYOUT_GLYPH_PROPS_MARK == (unsigned int ) LookupFlag::IgnoreMarks); 388 ASSERT_STATIC ((unsigned int) HB_OT_LAYOUT_GLYPH_PROPS_MARK == (unsigned int ) LookupFlag::IgnoreMarks);
389 389
390 switch (klass) { 390 switch (klass) {
391 default: return 0; 391 default: return 0;
392 case BaseGlyph: return HB_OT_LAYOUT_GLYPH_PROPS_BASE_GLYPH; 392 case BaseGlyph: return HB_OT_LAYOUT_GLYPH_PROPS_BASE_GLYPH;
393 case LigatureGlyph: return HB_OT_LAYOUT_GLYPH_PROPS_LIGATURE; 393 case LigatureGlyph: return HB_OT_LAYOUT_GLYPH_PROPS_LIGATURE;
394 case MarkGlyph: 394 case MarkGlyph:
395 klass = get_mark_attachment_type (glyph); 395 klass = get_mark_attachment_type (glyph);
396 return HB_OT_LAYOUT_GLYPH_PROPS_MARK | (klass << 8); 396 return HB_OT_LAYOUT_GLYPH_PROPS_MARK | (klass << 8);
397 } 397 }
398 } 398 }
399 399
400 400
401 protected: 401 protected:
402 FixedVersion version; /* Version of the GDEF table--currently 402 FixedVersion version; /* Version of the GDEF table--currently
403 » » » » » * 0x00010002 */ 403 » » » » » * 0x00010002u */
404 OffsetTo<ClassDef> 404 OffsetTo<ClassDef>
405 glyphClassDef; /* Offset to class definition table 405 glyphClassDef; /* Offset to class definition table
406 * for glyph type--from beginning of 406 * for glyph type--from beginning of
407 * GDEF header (may be Null) */ 407 * GDEF header (may be Null) */
408 OffsetTo<AttachList> 408 OffsetTo<AttachList>
409 attachList; /* Offset to list of glyphs with 409 attachList; /* Offset to list of glyphs with
410 * attachment points--from beginning 410 * attachment points--from beginning
411 * of GDEF header (may be Null) */ 411 * of GDEF header (may be Null) */
412 OffsetTo<LigCaretList> 412 OffsetTo<LigCaretList>
413 ligCaretList; /* Offset to list of positioning points 413 ligCaretList; /* Offset to list of positioning points
(...skipping 10 matching lines...) Expand all
424 * in version 00010002. */ 424 * in version 00010002. */
425 public: 425 public:
426 DEFINE_SIZE_ARRAY (12, markGlyphSetsDef); 426 DEFINE_SIZE_ARRAY (12, markGlyphSetsDef);
427 }; 427 };
428 428
429 429
430 } /* namespace OT */ 430 } /* namespace OT */
431 431
432 432
433 #endif /* HB_OT_LAYOUT_GDEF_TABLE_HH */ 433 #endif /* HB_OT_LAYOUT_GDEF_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-gpos-table.hh » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698