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

Side by Side Diff: third_party/harfbuzz-ng/src/hb-ot-shape-private.hh

Issue 12438036: Update harfbuzz-ng to 0.9.14 from 0.9.10 (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 7 years, 8 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 © 2010 Google, Inc. 2 * Copyright © 2010 Google, Inc.
3 * 3 *
4 * This is part of HarfBuzz, a text shaping library. 4 * This is part of HarfBuzz, a text shaping library.
5 * 5 *
6 * Permission is hereby granted, without written agreement and without 6 * Permission is hereby granted, without written agreement and without
7 * license or royalty fees, to use, copy, modify, and distribute this 7 * license or royalty fees, to use, copy, modify, and distribute this
8 * software and its documentation for any purpose, provided that the 8 * software and its documentation for any purpose, provided that the
9 * above copyright notice and the following two paragraphs appear in 9 * above copyright notice and the following two paragraphs appear in
10 * all copies of this software. 10 * all copies of this software.
(...skipping 15 matching lines...) Expand all
26 26
27 #ifndef HB_OT_SHAPE_PRIVATE_HH 27 #ifndef HB_OT_SHAPE_PRIVATE_HH
28 #define HB_OT_SHAPE_PRIVATE_HH 28 #define HB_OT_SHAPE_PRIVATE_HH
29 29
30 #include "hb-private.hh" 30 #include "hb-private.hh"
31 31
32 #include "hb-ot-map-private.hh" 32 #include "hb-ot-map-private.hh"
33 33
34 34
35 35
36 /* buffer var allocations, used during the entire shaping process */
37 #define unicode_props0() var2.u8[0]
38 #define unicode_props1() var2.u8[1]
39
40 36
41 37
42 struct hb_ot_shape_plan_t 38 struct hb_ot_shape_plan_t
43 { 39 {
44 hb_segment_properties_t props; 40 hb_segment_properties_t props;
45 const struct hb_ot_complex_shaper_t *shaper; 41 const struct hb_ot_complex_shaper_t *shaper;
46 hb_ot_map_t map; 42 hb_ot_map_t map;
47 const void *data; 43 const void *data;
48 44
49 inline void collect_lookups (hb_tag_t table_tag, hb_set_t *lookups) const 45 inline void collect_lookups (hb_tag_t table_tag, hb_set_t *lookups) const
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
82 plan.props = props; 78 plan.props = props;
83 plan.shaper = shaper; 79 plan.shaper = shaper;
84 map.compile (plan.map); 80 map.compile (plan.map);
85 } 81 }
86 82
87 private: 83 private:
88 NO_COPY (hb_ot_shape_planner_t); 84 NO_COPY (hb_ot_shape_planner_t);
89 }; 85 };
90 86
91 87
92
93 inline void
94 _hb_glyph_info_set_unicode_props (hb_glyph_info_t *info, hb_unicode_funcs_t *uni code)
95 {
96 info->unicode_props0() = ((unsigned int) unicode->general_category (info->code point)) |
97 (unicode->is_default_ignorable (info->codepoint) ? 0x 80 : 0);
98 info->unicode_props1() = unicode->modified_combining_class (info->codepoint);
99 }
100
101 inline hb_unicode_general_category_t
102 _hb_glyph_info_get_general_category (const hb_glyph_info_t *info)
103 {
104 return (hb_unicode_general_category_t) (info->unicode_props0() & 0x7F);
105 }
106
107 inline void
108 _hb_glyph_info_set_modified_combining_class (hb_glyph_info_t *info, unsigned int modified_class)
109 {
110 info->unicode_props1() = modified_class;
111 }
112
113 inline unsigned int
114 _hb_glyph_info_get_modified_combining_class (const hb_glyph_info_t *info)
115 {
116 return info->unicode_props1();
117 }
118
119 inline hb_bool_t
120 _hb_glyph_info_is_default_ignorable (const hb_glyph_info_t *info)
121 {
122 return !!(info->unicode_props0() & 0x80);
123 }
124
125 #endif /* HB_OT_SHAPE_PRIVATE_HH */ 88 #endif /* HB_OT_SHAPE_PRIVATE_HH */
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698