Index: third_party/harfbuzz-ng/src/hb-buffer-private.hh |
diff --git a/third_party/harfbuzz-ng/src/hb-buffer-private.hh b/third_party/harfbuzz-ng/src/hb-buffer-private.hh |
index 42922223d953cd67b47349a9f4362d8a9c42dbd8..e9e0f822b65fc5ba6fdbd33938878c36d72c6d81 100644 |
--- a/third_party/harfbuzz-ng/src/hb-buffer-private.hh |
+++ b/third_party/harfbuzz-ng/src/hb-buffer-private.hh |
@@ -70,6 +70,15 @@ struct _hb_buffer_t { |
hb_glyph_info_t *out_info; |
hb_glyph_position_t *pos; |
+ inline hb_glyph_info_t &cur (unsigned int i = 0) { return info[idx + i]; } |
+ inline hb_glyph_info_t cur (unsigned int i = 0) const { return info[idx + i]; } |
+ |
+ inline hb_glyph_position_t &cur_pos (unsigned int i = 0) { return pos[idx + i]; } |
+ inline hb_glyph_position_t cur_pos (unsigned int i = 0) const { return pos[idx + i]; } |
+ |
+ inline hb_glyph_info_t &prev (void) { return out_info[out_len - 1]; } |
+ inline hb_glyph_info_t prev (void) const { return info[out_len - 1]; } |
+ |
unsigned int serial; |
uint8_t allocated_var_bytes[8]; |
const char *allocated_var_owner[8]; |
@@ -104,7 +113,7 @@ struct _hb_buffer_t { |
const uint16_t *glyph_data_be); |
HB_INTERNAL void replace_glyphs (unsigned int num_in, |
unsigned int num_out, |
- const uint16_t *glyph_data); |
+ const hb_codepoint_t *glyph_data); |
HB_INTERNAL void replace_glyph (hb_codepoint_t glyph_index); |
/* Makes a copy of the glyph at idx to output and replace glyph_index */ |
HB_INTERNAL void output_glyph (hb_codepoint_t glyph_index); |
@@ -131,6 +140,11 @@ struct _hb_buffer_t { |
unsigned int cluster_start, |
unsigned int cluster_end); |
+ HB_INTERNAL void merge_clusters (unsigned int start, |
+ unsigned int end); |
+ HB_INTERNAL void merge_out_clusters (unsigned int start, |
+ unsigned int end); |
+ |
/* Internal methods */ |
HB_INTERNAL bool enlarge (unsigned int size); |