#ifndef OT_LAYOUT_GPOS_COMMON_HH #define OT_LAYOUT_GPOS_COMMON_HH namespace OT { namespace Layout { namespace GPOS_impl { enum attach_type_t { ATTACH_TYPE_NONE = 0X00, /* Each attachment should be either a mark or a cursive; can't be both. */ ATTACH_TYPE_MARK = 0X01, ATTACH_TYPE_CURSIVE = 0X02, }; /* buffer **position** var allocations */ #define attach_chain() var.i16[0] /* glyph to which this attaches to, relative to current glyphs; negative for going back, positive for forward. */ #define attach_type() var.u8[2] /* attachment type */ /* Note! if attach_chain() is zero, the value of attach_type() is irrelevant. */ template static void SinglePos_serialize (hb_serialize_context_t *c, const SrcLookup *src, Iterator it, const hb_map_t *layout_variation_idx_map); } } } #endif // OT_LAYOUT_GPOS_COMMON_HH