Index: third_party/harfbuzz-ng/src/hb-shape-plan-private.hh |
diff --git a/third_party/harfbuzz-ng/src/hb-ot-shape-normalize-private.hh b/third_party/harfbuzz-ng/src/hb-shape-plan-private.hh |
similarity index 61% |
copy from third_party/harfbuzz-ng/src/hb-ot-shape-normalize-private.hh |
copy to third_party/harfbuzz-ng/src/hb-shape-plan-private.hh |
index bb81f00ef81eea78ece5ce42f9a70b9f66128629..d6a57d6ca5ac8a4ede68b68d35ce45974490cd07 100644 |
--- a/third_party/harfbuzz-ng/src/hb-ot-shape-normalize-private.hh |
+++ b/third_party/harfbuzz-ng/src/hb-shape-plan-private.hh |
@@ -24,23 +24,37 @@ |
* Google Author(s): Behdad Esfahbod |
*/ |
-#ifndef HB_OT_SHAPE_NORMALIZE_PRIVATE_HH |
-#define HB_OT_SHAPE_NORMALIZE_PRIVATE_HH |
+#ifndef HB_SHAPE_PLAN_PRIVATE_HH |
+#define HB_SHAPE_PLAN_PRIVATE_HH |
#include "hb-private.hh" |
-#include "hb-font.h" |
-#include "hb-buffer.h" |
+#include "hb-shape-plan.h" |
+#include "hb-shaper-private.hh" |
-enum hb_ot_shape_normalization_mode_t { |
- HB_OT_SHAPE_NORMALIZATION_MODE_DECOMPOSED, |
- HB_OT_SHAPE_NORMALIZATION_MODE_COMPOSED_DIACRITICS, /* never composes base-to-base */ |
- HB_OT_SHAPE_NORMALIZATION_MODE_COMPOSED_FULL /* including base-to-base composition */ |
+ |
+struct hb_shape_plan_t |
+{ |
+ hb_object_header_t header; |
+ ASSERT_POD (); |
+ |
+ hb_bool_t default_shaper_list; |
+ hb_face_t *face; |
+ hb_segment_properties_t props; |
+ |
+ hb_shape_func_t *shaper_func; |
+ |
+ struct hb_shaper_data_t shaper_data; |
}; |
-HB_INTERNAL void _hb_ot_shape_normalize (hb_font_t *font, |
- hb_buffer_t *buffer, |
- hb_ot_shape_normalization_mode_t mode); |
+#define HB_SHAPER_DATA_CREATE_FUNC_EXTRA_ARGS \ |
+ , const hb_feature_t *user_features \ |
+ , unsigned int num_user_features |
+#define HB_SHAPER_IMPLEMENT(shaper) HB_SHAPER_DATA_PROTOTYPE(shaper, shape_plan); |
+#include "hb-shaper-list.hh" |
+#undef HB_SHAPER_IMPLEMENT |
+#undef HB_SHAPER_DATA_CREATE_FUNC_EXTRA_ARGS |
+ |
-#endif /* HB_OT_SHAPE_NORMALIZE_PRIVATE_HH */ |
+#endif /* HB_SHAPE_PLAN_PRIVATE_HH */ |