Move enum types to hb-common.h
diff --git a/src/hb-common.h b/src/hb-common.h index 4dadc94..21caa71 100644 --- a/src/hb-common.h +++ b/src/hb-common.h
@@ -108,6 +108,176 @@ hb_language_to_string (hb_language_t language); +/* hb_unicode_general_category_t */ + +typedef enum +{ + HB_UNICODE_GENERAL_CATEGORY_CONTROL, /* Cc */ + HB_UNICODE_GENERAL_CATEGORY_FORMAT, /* Cf */ + HB_UNICODE_GENERAL_CATEGORY_UNASSIGNED, /* Cn */ + HB_UNICODE_GENERAL_CATEGORY_PRIVATE_USE, /* Co */ + HB_UNICODE_GENERAL_CATEGORY_SURROGATE, /* Cs */ + HB_UNICODE_GENERAL_CATEGORY_LOWERCASE_LETTER, /* Ll */ + HB_UNICODE_GENERAL_CATEGORY_MODIFIER_LETTER, /* Lm */ + HB_UNICODE_GENERAL_CATEGORY_OTHER_LETTER, /* Lo */ + HB_UNICODE_GENERAL_CATEGORY_TITLECASE_LETTER, /* Lt */ + HB_UNICODE_GENERAL_CATEGORY_UPPERCASE_LETTER, /* Lu */ + HB_UNICODE_GENERAL_CATEGORY_COMBINING_MARK, /* Mc */ + HB_UNICODE_GENERAL_CATEGORY_ENCLOSING_MARK, /* Me */ + HB_UNICODE_GENERAL_CATEGORY_NON_SPACING_MARK, /* Mn */ + HB_UNICODE_GENERAL_CATEGORY_DECIMAL_NUMBER, /* Nd */ + HB_UNICODE_GENERAL_CATEGORY_LETTER_NUMBER, /* Nl */ + HB_UNICODE_GENERAL_CATEGORY_OTHER_NUMBER, /* No */ + HB_UNICODE_GENERAL_CATEGORY_CONNECT_PUNCTUATION, /* Pc */ + HB_UNICODE_GENERAL_CATEGORY_DASH_PUNCTUATION, /* Pd */ + HB_UNICODE_GENERAL_CATEGORY_CLOSE_PUNCTUATION, /* Pe */ + HB_UNICODE_GENERAL_CATEGORY_FINAL_PUNCTUATION, /* Pf */ + HB_UNICODE_GENERAL_CATEGORY_INITIAL_PUNCTUATION, /* Pi */ + HB_UNICODE_GENERAL_CATEGORY_OTHER_PUNCTUATION, /* Po */ + HB_UNICODE_GENERAL_CATEGORY_OPEN_PUNCTUATION, /* Ps */ + HB_UNICODE_GENERAL_CATEGORY_CURRENCY_SYMBOL, /* Sc */ + HB_UNICODE_GENERAL_CATEGORY_MODIFIER_SYMBOL, /* Sk */ + HB_UNICODE_GENERAL_CATEGORY_MATH_SYMBOL, /* Sm */ + HB_UNICODE_GENERAL_CATEGORY_OTHER_SYMBOL, /* So */ + HB_UNICODE_GENERAL_CATEGORY_LINE_SEPARATOR, /* Zl */ + HB_UNICODE_GENERAL_CATEGORY_PARAGRAPH_SEPARATOR, /* Zp */ + HB_UNICODE_GENERAL_CATEGORY_SPACE_SEPARATOR /* Zs */ +} hb_unicode_general_category_t; + + +/* hb_script_t */ + +typedef enum +{ /* ISO 15924 code */ + HB_SCRIPT_INVALID = -1, + + HB_SCRIPT_COMMON = 0, /* Zyyy */ + HB_SCRIPT_INHERITED, /* Qaai */ + HB_SCRIPT_ARABIC, /* Arab */ + HB_SCRIPT_ARMENIAN, /* Armn */ + HB_SCRIPT_BENGALI, /* Beng */ + HB_SCRIPT_BOPOMOFO, /* Bopo */ + HB_SCRIPT_CHEROKEE, /* Cher */ + HB_SCRIPT_COPTIC, /* Qaac */ + HB_SCRIPT_CYRILLIC, /* Cyrl (Cyrs) */ + HB_SCRIPT_DESERET, /* Dsrt */ + HB_SCRIPT_DEVANAGARI, /* Deva */ + HB_SCRIPT_ETHIOPIC, /* Ethi */ + HB_SCRIPT_GEORGIAN, /* Geor (Geon, Geoa) */ + HB_SCRIPT_GOTHIC, /* Goth */ + HB_SCRIPT_GREEK, /* Grek */ + HB_SCRIPT_GUJARATI, /* Gujr */ + HB_SCRIPT_GURMUKHI, /* Guru */ + HB_SCRIPT_HAN, /* Hani */ + HB_SCRIPT_HANGUL, /* Hang */ + HB_SCRIPT_HEBREW, /* Hebr */ + HB_SCRIPT_HIRAGANA, /* Hira */ + HB_SCRIPT_KANNADA, /* Knda */ + HB_SCRIPT_KATAKANA, /* Kana */ + HB_SCRIPT_KHMER, /* Khmr */ + HB_SCRIPT_LAO, /* Laoo */ + HB_SCRIPT_LATIN, /* Latn (Latf, Latg) */ + HB_SCRIPT_MALAYALAM, /* Mlym */ + HB_SCRIPT_MONGOLIAN, /* Mong */ + HB_SCRIPT_MYANMAR, /* Mymr */ + HB_SCRIPT_OGHAM, /* Ogam */ + HB_SCRIPT_OLD_ITALIC, /* Ital */ + HB_SCRIPT_ORIYA, /* Orya */ + HB_SCRIPT_RUNIC, /* Runr */ + HB_SCRIPT_SINHALA, /* Sinh */ + HB_SCRIPT_SYRIAC, /* Syrc (Syrj, Syrn, Syre) */ + HB_SCRIPT_TAMIL, /* Taml */ + HB_SCRIPT_TELUGU, /* Telu */ + HB_SCRIPT_THAANA, /* Thaa */ + HB_SCRIPT_THAI, /* Thai */ + HB_SCRIPT_TIBETAN, /* Tibt */ + HB_SCRIPT_CANADIAN_ABORIGINAL, /* Cans */ + HB_SCRIPT_YI, /* Yiii */ + HB_SCRIPT_TAGALOG, /* Tglg */ + HB_SCRIPT_HANUNOO, /* Hano */ + HB_SCRIPT_BUHID, /* Buhd */ + HB_SCRIPT_TAGBANWA, /* Tagb */ + + /* Unicode-4.0 additions */ + HB_SCRIPT_BRAILLE, /* Brai */ + HB_SCRIPT_CYPRIOT, /* Cprt */ + HB_SCRIPT_LIMBU, /* Limb */ + HB_SCRIPT_OSMANYA, /* Osma */ + HB_SCRIPT_SHAVIAN, /* Shaw */ + HB_SCRIPT_LINEAR_B, /* Linb */ + HB_SCRIPT_TAI_LE, /* Tale */ + HB_SCRIPT_UGARITIC, /* Ugar */ + + /* Unicode-4.1 additions */ + HB_SCRIPT_NEW_TAI_LUE, /* Talu */ + HB_SCRIPT_BUGINESE, /* Bugi */ + HB_SCRIPT_GLAGOLITIC, /* Glag */ + HB_SCRIPT_TIFINAGH, /* Tfng */ + HB_SCRIPT_SYLOTI_NAGRI, /* Sylo */ + HB_SCRIPT_OLD_PERSIAN, /* Xpeo */ + HB_SCRIPT_KHAROSHTHI, /* Khar */ + + /* Unicode-5.0 additions */ + HB_SCRIPT_UNKNOWN, /* Zzzz */ + HB_SCRIPT_BALINESE, /* Bali */ + HB_SCRIPT_CUNEIFORM, /* Xsux */ + HB_SCRIPT_PHOENICIAN, /* Phnx */ + HB_SCRIPT_PHAGS_PA, /* Phag */ + HB_SCRIPT_NKO, /* Nkoo */ + + /* Unicode-5.1 additions */ + HB_SCRIPT_KAYAH_LI, /* Kali */ + HB_SCRIPT_LEPCHA, /* Lepc */ + HB_SCRIPT_REJANG, /* Rjng */ + HB_SCRIPT_SUNDANESE, /* Sund */ + HB_SCRIPT_SAURASHTRA, /* Saur */ + HB_SCRIPT_CHAM, /* Cham */ + HB_SCRIPT_OL_CHIKI, /* Olck */ + HB_SCRIPT_VAI, /* Vaii */ + HB_SCRIPT_CARIAN, /* Cari */ + HB_SCRIPT_LYCIAN, /* Lyci */ + HB_SCRIPT_LYDIAN, /* Lydi */ + + /* Unicode-5.2 additions */ + HB_SCRIPT_AVESTAN, /* Avst */ + HB_SCRIPT_BAMUM, /* Bamu */ + HB_SCRIPT_EGYPTIAN_HIEROGLYPHS, /* Egyp */ + HB_SCRIPT_IMPERIAL_ARAMAIC, /* Armi */ + HB_SCRIPT_INSCRIPTIONAL_PAHLAVI, /* Phli */ + HB_SCRIPT_INSCRIPTIONAL_PARTHIAN, /* Prti */ + HB_SCRIPT_JAVANESE, /* Java */ + HB_SCRIPT_KAITHI, /* Kthi */ + HB_SCRIPT_LISU, /* Lisu */ + HB_SCRIPT_MEETEI_MAYEK, /* Mtei */ + HB_SCRIPT_OLD_SOUTH_ARABIAN, /* Sarb */ + HB_SCRIPT_OLD_TURKIC, /* Orkh */ + HB_SCRIPT_SAMARITAN, /* Samr */ + HB_SCRIPT_TAI_THAM, /* Lana */ + HB_SCRIPT_TAI_VIET, /* Tavt */ + + /* Unicode-6.0 additions */ + HB_SCRIPT_BATAK, /* Batk */ + HB_SCRIPT_BRAHMI, /* Brah */ + HB_SCRIPT_MANDAIC /* Mand */ +} hb_script_t; + + +/* Script functions */ + +hb_script_t +hb_script_from_iso15924_tag (hb_tag_t tag); + +/* suger for tag_from_string() then script_from_iso15924_tag */ +hb_script_t +hb_script_from_string (const char *s); + +hb_tag_t +hb_script_to_iso15924_tag (hb_script_t script); + +hb_direction_t +hb_script_get_horizontal_direction (hb_script_t script); + + HB_END_DECLS #endif /* HB_COMMON_H */