Functions
HB_DIRECTION_REVERSE()
#define HB_DIRECTION_REVERSE(dir) ((hb_direction_t) (((unsigned int) (dir)) ^ 1))
HB_LANGUAGE_INVALID
#define HB_LANGUAGE_INVALID ((hb_language_t) NULL)
HB_TAG()
#define HB_TAG(c1,c2,c3,c4) ((hb_tag_t)((((uint8_t)(c1))<<24)|(((uint8_t)(c2))<<16)|(((uint8_t)(c3))<<8)|((uint8_t)(c4))))
HB_UNTAG()
#define HB_UNTAG(tag) ((uint8_t)((tag)>>24)), ((uint8_t)((tag)>>16)), ((uint8_t)((tag)>>8)), ((uint8_t)(tag))
hb_destroy_func_t ()
void
(*hb_destroy_func_t) (void *user_data
);
HB_DIRECTION_IS_BACKWARD()
#define HB_DIRECTION_IS_BACKWARD(dir) ((((unsigned int) (dir)) & ~2U) == 5)
HB_DIRECTION_IS_FORWARD()
#define HB_DIRECTION_IS_FORWARD(dir) ((((unsigned int) (dir)) & ~2U) == 4)
HB_DIRECTION_IS_HORIZONTAL()
#define HB_DIRECTION_IS_HORIZONTAL(dir) ((((unsigned int) (dir)) & ~1U) == 4)
HB_DIRECTION_IS_VALID()
#define HB_DIRECTION_IS_VALID(dir) ((((unsigned int) (dir)) & ~3U) == 4)
HB_DIRECTION_IS_VERTICAL()
#define HB_DIRECTION_IS_VERTICAL(dir) ((((unsigned int) (dir)) & ~1U) == 6)
Types and Values
HB_TAG_NONE
#define HB_TAG_NONE HB_TAG(0,0,0,0)
HB_TAG_MAX
#define HB_TAG_MAX HB_TAG(0xff,0xff,0xff,0xff)
hb_bool_t
typedef int hb_bool_t;
hb_codepoint_t
typedef uint32_t hb_codepoint_t;
hb_language_t
typedef const struct hb_language_impl_t *hb_language_t;
hb_mask_t
typedef uint32_t hb_mask_t;
hb_position_t
typedef int32_t hb_position_t;
hb_tag_t
typedef uint32_t hb_tag_t;
hb_user_data_key_t
typedef struct {
} hb_user_data_key_t;