OLD | NEW |
1 /* | 1 /* |
2 * Copyright © 2007,2008,2009 Red Hat, Inc. | 2 * Copyright © 2007,2008,2009 Red Hat, Inc. |
3 * Copyright © 2012,2013 Google, Inc. | 3 * Copyright © 2012,2013 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 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
120 struct hb_ot_layout_lookup_accelerator_t | 120 struct hb_ot_layout_lookup_accelerator_t |
121 { | 121 { |
122 template <typename TLookup> | 122 template <typename TLookup> |
123 inline void init (const TLookup &lookup) | 123 inline void init (const TLookup &lookup) |
124 { | 124 { |
125 digest.init (); | 125 digest.init (); |
126 lookup.add_coverage (&digest); | 126 lookup.add_coverage (&digest); |
127 } | 127 } |
128 | 128 |
129 template <typename TLookup> | 129 template <typename TLookup> |
130 inline void fini (const TLookup &lookup) | 130 inline void fini (const TLookup &lookup HB_UNUSED) |
131 { | 131 { |
132 } | 132 } |
133 | 133 |
134 hb_set_digest_t digest; | 134 hb_set_digest_t digest; |
135 }; | 135 }; |
136 | 136 |
137 struct hb_ot_layout_t | 137 struct hb_ot_layout_t |
138 { | 138 { |
139 hb_blob_t *gdef_blob; | 139 hb_blob_t *gdef_blob; |
140 hb_blob_t *gsub_blob; | 140 hb_blob_t *gsub_blob; |
(...skipping 272 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
413 } | 413 } |
414 | 414 |
415 static inline void | 415 static inline void |
416 _hb_buffer_deallocate_unicode_vars (hb_buffer_t *buffer) | 416 _hb_buffer_deallocate_unicode_vars (hb_buffer_t *buffer) |
417 { | 417 { |
418 HB_BUFFER_DEALLOCATE_VAR (buffer, unicode_props0); | 418 HB_BUFFER_DEALLOCATE_VAR (buffer, unicode_props0); |
419 HB_BUFFER_DEALLOCATE_VAR (buffer, unicode_props1); | 419 HB_BUFFER_DEALLOCATE_VAR (buffer, unicode_props1); |
420 } | 420 } |
421 | 421 |
422 static inline void | 422 static inline void |
| 423 _hb_buffer_assert_unicode_vars (hb_buffer_t *buffer) |
| 424 { |
| 425 HB_BUFFER_ASSERT_VAR (buffer, unicode_props0); |
| 426 HB_BUFFER_ASSERT_VAR (buffer, unicode_props1); |
| 427 } |
| 428 |
| 429 static inline void |
423 _hb_buffer_allocate_gsubgpos_vars (hb_buffer_t *buffer) | 430 _hb_buffer_allocate_gsubgpos_vars (hb_buffer_t *buffer) |
424 { | 431 { |
425 HB_BUFFER_ALLOCATE_VAR (buffer, glyph_props); | 432 HB_BUFFER_ALLOCATE_VAR (buffer, glyph_props); |
426 HB_BUFFER_ALLOCATE_VAR (buffer, lig_props); | 433 HB_BUFFER_ALLOCATE_VAR (buffer, lig_props); |
427 HB_BUFFER_ALLOCATE_VAR (buffer, syllable); | 434 HB_BUFFER_ALLOCATE_VAR (buffer, syllable); |
428 } | 435 } |
429 | 436 |
430 static inline void | 437 static inline void |
431 _hb_buffer_deallocate_gsubgpos_vars (hb_buffer_t *buffer) | 438 _hb_buffer_deallocate_gsubgpos_vars (hb_buffer_t *buffer) |
432 { | 439 { |
433 HB_BUFFER_DEALLOCATE_VAR (buffer, syllable); | 440 HB_BUFFER_DEALLOCATE_VAR (buffer, syllable); |
434 HB_BUFFER_DEALLOCATE_VAR (buffer, lig_props); | 441 HB_BUFFER_DEALLOCATE_VAR (buffer, lig_props); |
435 HB_BUFFER_DEALLOCATE_VAR (buffer, glyph_props); | 442 HB_BUFFER_DEALLOCATE_VAR (buffer, glyph_props); |
436 } | 443 } |
437 | 444 |
| 445 static inline void |
| 446 _hb_buffer_assert_gsubgpos_vars (hb_buffer_t *buffer) |
| 447 { |
| 448 HB_BUFFER_ASSERT_VAR (buffer, glyph_props); |
| 449 HB_BUFFER_ASSERT_VAR (buffer, lig_props); |
| 450 HB_BUFFER_ASSERT_VAR (buffer, syllable); |
| 451 } |
| 452 |
438 /* Make sure no one directly touches our props... */ | 453 /* Make sure no one directly touches our props... */ |
439 #undef unicode_props0 | 454 #undef unicode_props0 |
440 #undef unicode_props1 | 455 #undef unicode_props1 |
441 #undef lig_props | 456 #undef lig_props |
442 #undef glyph_props | 457 #undef glyph_props |
443 | 458 |
444 | 459 |
445 #endif /* HB_OT_LAYOUT_PRIVATE_HH */ | 460 #endif /* HB_OT_LAYOUT_PRIVATE_HH */ |
OLD | NEW |