hb-unicode

hb-unicode

Functions

#define HB_UNICODE_MAX_DECOMPOSITION_LEN
hb_unicode_combining_class_t hb_unicode_combining_class ()
hb_unicode_combining_class_t (*hb_unicode_combining_class_func_t) ()
hb_bool_t hb_unicode_compose ()
hb_bool_t (*hb_unicode_compose_func_t) ()
hb_bool_t hb_unicode_decompose ()
unsigned int hb_unicode_decompose_compatibility ()
hb_bool_t (*hb_unicode_decompose_func_t) ()
unsigned int hb_unicode_eastasian_width ()
hb_unicode_funcs_t * hb_unicode_funcs_create ()
void hb_unicode_funcs_destroy ()
hb_unicode_funcs_t * hb_unicode_funcs_get_default ()
hb_unicode_funcs_t * hb_unicode_funcs_get_empty ()
hb_unicode_funcs_t * hb_unicode_funcs_get_parent ()
void * hb_unicode_funcs_get_user_data ()
hb_bool_t hb_unicode_funcs_is_immutable ()
void hb_unicode_funcs_make_immutable ()
hb_unicode_funcs_t * hb_unicode_funcs_reference ()
void hb_unicode_funcs_set_combining_class_func ()
void hb_unicode_funcs_set_compose_func ()
void hb_unicode_funcs_set_decompose_compatibility_func ()
void hb_unicode_funcs_set_decompose_func ()
void hb_unicode_funcs_set_eastasian_width_func ()
void hb_unicode_funcs_set_general_category_func ()
void hb_unicode_funcs_set_mirroring_func ()
void hb_unicode_funcs_set_script_func ()
hb_bool_t hb_unicode_funcs_set_user_data ()
hb_unicode_general_category_t hb_unicode_general_category ()
hb_unicode_general_category_t (*hb_unicode_general_category_func_t) ()
hb_codepoint_t hb_unicode_mirroring ()
hb_codepoint_t (*hb_unicode_mirroring_func_t) ()
hb_script_t hb_unicode_script ()
hb_script_t (*hb_unicode_script_func_t) ()

Types and Values

Object Hierarchy

    GBoxed
    ╰── hb_unicode_funcs_t
    GEnum
    ├── hb_unicode_combining_class_t
    ╰── hb_unicode_general_category_t

Description

Functions

HB_UNICODE_MAX_DECOMPOSITION_LEN

#define HB_UNICODE_MAX_DECOMPOSITION_LEN (18+1) /* codepoints */


hb_unicode_combining_class ()

hb_unicode_combining_class_t
hb_unicode_combining_class (hb_unicode_funcs_t *ufuncs,
                            hb_codepoint_t unicode);

Returns


hb_unicode_combining_class_func_t ()

hb_unicode_combining_class_t
(*hb_unicode_combining_class_func_t) (hb_unicode_funcs_t *ufuncs,
                                      hb_codepoint_t unicode,
                                      void *user_data);

Returns


hb_unicode_compose ()

hb_bool_t
hb_unicode_compose (hb_unicode_funcs_t *ufuncs,
                    hb_codepoint_t a,
                    hb_codepoint_t b,
                    hb_codepoint_t *ab);

Parameters

ufuncs

Unicode functions.

 

ab

.

[out]

Returns

Since 0.9.2


hb_unicode_compose_func_t ()

hb_bool_t
(*hb_unicode_compose_func_t) (hb_unicode_funcs_t *ufuncs,
                              hb_codepoint_t a,
                              hb_codepoint_t b,
                              hb_codepoint_t *ab,
                              void *user_data);

Returns


hb_unicode_decompose ()

hb_bool_t
hb_unicode_decompose (hb_unicode_funcs_t *ufuncs,
                      hb_codepoint_t ab,
                      hb_codepoint_t *a,
                      hb_codepoint_t *b);

Parameters

ufuncs

Unicode functions.

 

a

.

[out]

b

.

[out]

Returns

Since 0.9.2


hb_unicode_decompose_compatibility ()

unsigned int
hb_unicode_decompose_compatibility (hb_unicode_funcs_t *ufuncs,
                                    hb_codepoint_t u,
                                    hb_codepoint_t *decomposed);

Parameters

ufuncs

Unicode functions.

 

decomposed

.

[out]

Returns

Since 0.9.2


hb_unicode_decompose_func_t ()

hb_bool_t
(*hb_unicode_decompose_func_t) (hb_unicode_funcs_t *ufuncs,
                                hb_codepoint_t ab,
                                hb_codepoint_t *a,
                                hb_codepoint_t *b,
                                void *user_data);

Returns


hb_unicode_eastasian_width ()

unsigned int
hb_unicode_eastasian_width (hb_unicode_funcs_t *ufuncs,
                            hb_codepoint_t unicode);

Returns


hb_unicode_funcs_create ()

hb_unicode_funcs_t *
hb_unicode_funcs_create (hb_unicode_funcs_t *parent);

Returns


hb_unicode_funcs_destroy ()

void
hb_unicode_funcs_destroy (hb_unicode_funcs_t *ufuncs);

Parameters

ufuncs

Unicode functions.

 

Since 1.0


hb_unicode_funcs_get_default ()

hb_unicode_funcs_t *
hb_unicode_funcs_get_default (void);

Returns


hb_unicode_funcs_get_empty ()

hb_unicode_funcs_t *
hb_unicode_funcs_get_empty (void);

Returns

.

[transfer full]

Since 1.0


hb_unicode_funcs_get_parent ()

hb_unicode_funcs_t *
hb_unicode_funcs_get_parent (hb_unicode_funcs_t *ufuncs);

Parameters

ufuncs

Unicode functions.

 

Returns

Since 1.0


hb_unicode_funcs_get_user_data ()

void *
hb_unicode_funcs_get_user_data (hb_unicode_funcs_t *ufuncs,
                                hb_user_data_key_t *key);

Parameters

ufuncs

Unicode functions.

 

Returns

.

[transfer none]

Since 1.0


hb_unicode_funcs_is_immutable ()

hb_bool_t
hb_unicode_funcs_is_immutable (hb_unicode_funcs_t *ufuncs);

Parameters

ufuncs

Unicode functions.

 

Returns

Since 1.0


hb_unicode_funcs_make_immutable ()

void
hb_unicode_funcs_make_immutable (hb_unicode_funcs_t *ufuncs);

Parameters

ufuncs

Unicode functions.

 

Since 1.0


hb_unicode_funcs_reference ()

hb_unicode_funcs_t *
hb_unicode_funcs_reference (hb_unicode_funcs_t *ufuncs);

Parameters

ufuncs

Unicode functions.

 

Returns

.

[transfer full]

Since 1.0


hb_unicode_funcs_set_combining_class_func ()

void
hb_unicode_funcs_set_combining_class_func
                               (hb_unicode_funcs_t *ufuncs,
                                hb_unicode_combining_class_func_t func,
                                void *user_data,
                                hb_destroy_func_t destroy);

Parameters

ufuncs

a Unicode function structure

 

Since 1.0


hb_unicode_funcs_set_compose_func ()

void
hb_unicode_funcs_set_compose_func (hb_unicode_funcs_t *ufuncs,
                                   hb_unicode_compose_func_t func,
                                   void *user_data,
                                   hb_destroy_func_t destroy);

Parameters

ufuncs

a Unicode function structure

 

Since 0.9.2


hb_unicode_funcs_set_decompose_compatibility_func ()

void
hb_unicode_funcs_set_decompose_compatibility_func
                               (hb_unicode_funcs_t *ufuncs,
                                hb_unicode_decompose_compatibility_func_t func,
                                void *user_data,
                                hb_destroy_func_t destroy);

Parameters

ufuncs

a Unicode function structure

 

Since 0.9.2


hb_unicode_funcs_set_decompose_func ()

void
hb_unicode_funcs_set_decompose_func (hb_unicode_funcs_t *ufuncs,
                                     hb_unicode_decompose_func_t func,
                                     void *user_data,
                                     hb_destroy_func_t destroy);

Parameters

ufuncs

a Unicode function structure

 

Since 0.9.2


hb_unicode_funcs_set_eastasian_width_func ()

void
hb_unicode_funcs_set_eastasian_width_func
                               (hb_unicode_funcs_t *ufuncs,
                                hb_unicode_eastasian_width_func_t func,
                                void *user_data,
                                hb_destroy_func_t destroy);

Parameters

ufuncs

a Unicode function structure

 

Since 1.0


hb_unicode_funcs_set_general_category_func ()

void
hb_unicode_funcs_set_general_category_func
                               (hb_unicode_funcs_t *ufuncs,
                                hb_unicode_general_category_func_t func,
                                void *user_data,
                                hb_destroy_func_t destroy);

Parameters

ufuncs

a Unicode function structure

 

Since 1.0


hb_unicode_funcs_set_mirroring_func ()

void
hb_unicode_funcs_set_mirroring_func (hb_unicode_funcs_t *ufuncs,
                                     hb_unicode_mirroring_func_t func,
                                     void *user_data,
                                     hb_destroy_func_t destroy);

Parameters

ufuncs

a Unicode function structure

 

Since 1.0


hb_unicode_funcs_set_script_func ()

void
hb_unicode_funcs_set_script_func (hb_unicode_funcs_t *ufuncs,
                                  hb_unicode_script_func_t func,
                                  void *user_data,
                                  hb_destroy_func_t destroy);

Parameters

ufuncs

a Unicode function structure

 

Since 1.0


hb_unicode_funcs_set_user_data ()

hb_bool_t
hb_unicode_funcs_set_user_data (hb_unicode_funcs_t *ufuncs,
                                hb_user_data_key_t *key,
                                void *data,
                                hb_destroy_func_t destroy,
                                hb_bool_t replace);

Parameters

ufuncs

Unicode functions.

 

Returns

Since 1.0


hb_unicode_general_category ()

hb_unicode_general_category_t
hb_unicode_general_category (hb_unicode_funcs_t *ufuncs,
                             hb_codepoint_t unicode);

Returns


hb_unicode_general_category_func_t ()

hb_unicode_general_category_t
(*hb_unicode_general_category_func_t) (hb_unicode_funcs_t *ufuncs,
                                       hb_codepoint_t unicode,
                                       void *user_data);

Returns


hb_unicode_mirroring ()

hb_codepoint_t
hb_unicode_mirroring (hb_unicode_funcs_t *ufuncs,
                      hb_codepoint_t unicode);

Returns


hb_unicode_mirroring_func_t ()

hb_codepoint_t
(*hb_unicode_mirroring_func_t) (hb_unicode_funcs_t *ufuncs,
                                hb_codepoint_t unicode,
                                void *user_data);

Returns


hb_unicode_script ()

hb_script_t
hb_unicode_script (hb_unicode_funcs_t *ufuncs,
                   hb_codepoint_t unicode);

Returns


hb_unicode_script_func_t ()

hb_script_t
(*hb_unicode_script_func_t) (hb_unicode_funcs_t *ufuncs,
                             hb_codepoint_t unicode,
                             void *user_data);

Returns

Types and Values

enum hb_unicode_combining_class_t

Members

HB_UNICODE_COMBINING_CLASS_NOT_REORDERED

   

HB_UNICODE_COMBINING_CLASS_OVERLAY

   

HB_UNICODE_COMBINING_CLASS_NUKTA

   

HB_UNICODE_COMBINING_CLASS_KANA_VOICING

   

HB_UNICODE_COMBINING_CLASS_VIRAMA

   

HB_UNICODE_COMBINING_CLASS_CCC10

   

HB_UNICODE_COMBINING_CLASS_CCC11

   

HB_UNICODE_COMBINING_CLASS_CCC12

   

HB_UNICODE_COMBINING_CLASS_CCC13

   

HB_UNICODE_COMBINING_CLASS_CCC14

   

HB_UNICODE_COMBINING_CLASS_CCC15

   

HB_UNICODE_COMBINING_CLASS_CCC16

   

HB_UNICODE_COMBINING_CLASS_CCC17

   

HB_UNICODE_COMBINING_CLASS_CCC18

   

HB_UNICODE_COMBINING_CLASS_CCC19

   

HB_UNICODE_COMBINING_CLASS_CCC20

   

HB_UNICODE_COMBINING_CLASS_CCC21

   

HB_UNICODE_COMBINING_CLASS_CCC22

   

HB_UNICODE_COMBINING_CLASS_CCC23

   

HB_UNICODE_COMBINING_CLASS_CCC24

   

HB_UNICODE_COMBINING_CLASS_CCC25

   

HB_UNICODE_COMBINING_CLASS_CCC26

   

HB_UNICODE_COMBINING_CLASS_CCC27

   

HB_UNICODE_COMBINING_CLASS_CCC28

   

HB_UNICODE_COMBINING_CLASS_CCC29

   

HB_UNICODE_COMBINING_CLASS_CCC30

   

HB_UNICODE_COMBINING_CLASS_CCC31

   

HB_UNICODE_COMBINING_CLASS_CCC32

   

HB_UNICODE_COMBINING_CLASS_CCC33

   

HB_UNICODE_COMBINING_CLASS_CCC34

   

HB_UNICODE_COMBINING_CLASS_CCC35

   

HB_UNICODE_COMBINING_CLASS_CCC36

   

HB_UNICODE_COMBINING_CLASS_CCC84

   

HB_UNICODE_COMBINING_CLASS_CCC91

   

HB_UNICODE_COMBINING_CLASS_CCC103

   

HB_UNICODE_COMBINING_CLASS_CCC107

   

HB_UNICODE_COMBINING_CLASS_CCC118

   

HB_UNICODE_COMBINING_CLASS_CCC122

   

HB_UNICODE_COMBINING_CLASS_CCC129

   

HB_UNICODE_COMBINING_CLASS_CCC130

   

HB_UNICODE_COMBINING_CLASS_CCC133

   

HB_UNICODE_COMBINING_CLASS_ATTACHED_BELOW_LEFT

   

HB_UNICODE_COMBINING_CLASS_ATTACHED_BELOW

   

HB_UNICODE_COMBINING_CLASS_ATTACHED_ABOVE

   

HB_UNICODE_COMBINING_CLASS_ATTACHED_ABOVE_RIGHT

   

HB_UNICODE_COMBINING_CLASS_BELOW_LEFT

   

HB_UNICODE_COMBINING_CLASS_BELOW

   

HB_UNICODE_COMBINING_CLASS_BELOW_RIGHT

   

HB_UNICODE_COMBINING_CLASS_LEFT

   

HB_UNICODE_COMBINING_CLASS_RIGHT

   

HB_UNICODE_COMBINING_CLASS_ABOVE_LEFT

   

HB_UNICODE_COMBINING_CLASS_ABOVE

   

HB_UNICODE_COMBINING_CLASS_ABOVE_RIGHT

   

HB_UNICODE_COMBINING_CLASS_DOUBLE_BELOW

   

HB_UNICODE_COMBINING_CLASS_DOUBLE_ABOVE

   

HB_UNICODE_COMBINING_CLASS_IOTA_SUBSCRIPT

   

HB_UNICODE_COMBINING_CLASS_INVALID

   

hb_unicode_funcs_t

typedef struct hb_unicode_funcs_t hb_unicode_funcs_t;


enum hb_unicode_general_category_t

Members

HB_UNICODE_GENERAL_CATEGORY_CONTROL

   

HB_UNICODE_GENERAL_CATEGORY_FORMAT

   

HB_UNICODE_GENERAL_CATEGORY_UNASSIGNED

   

HB_UNICODE_GENERAL_CATEGORY_PRIVATE_USE

   

HB_UNICODE_GENERAL_CATEGORY_SURROGATE

   

HB_UNICODE_GENERAL_CATEGORY_LOWERCASE_LETTER

   

HB_UNICODE_GENERAL_CATEGORY_MODIFIER_LETTER

   

HB_UNICODE_GENERAL_CATEGORY_OTHER_LETTER

   

HB_UNICODE_GENERAL_CATEGORY_TITLECASE_LETTER

   

HB_UNICODE_GENERAL_CATEGORY_UPPERCASE_LETTER

   

HB_UNICODE_GENERAL_CATEGORY_SPACING_MARK

   

HB_UNICODE_GENERAL_CATEGORY_ENCLOSING_MARK

   

HB_UNICODE_GENERAL_CATEGORY_NON_SPACING_MARK

   

HB_UNICODE_GENERAL_CATEGORY_DECIMAL_NUMBER

   

HB_UNICODE_GENERAL_CATEGORY_LETTER_NUMBER

   

HB_UNICODE_GENERAL_CATEGORY_OTHER_NUMBER

   

HB_UNICODE_GENERAL_CATEGORY_CONNECT_PUNCTUATION

   

HB_UNICODE_GENERAL_CATEGORY_DASH_PUNCTUATION

   

HB_UNICODE_GENERAL_CATEGORY_CLOSE_PUNCTUATION

   

HB_UNICODE_GENERAL_CATEGORY_FINAL_PUNCTUATION

   

HB_UNICODE_GENERAL_CATEGORY_INITIAL_PUNCTUATION

   

HB_UNICODE_GENERAL_CATEGORY_OTHER_PUNCTUATION

   

HB_UNICODE_GENERAL_CATEGORY_OPEN_PUNCTUATION

   

HB_UNICODE_GENERAL_CATEGORY_CURRENCY_SYMBOL

   

HB_UNICODE_GENERAL_CATEGORY_MODIFIER_SYMBOL

   

HB_UNICODE_GENERAL_CATEGORY_MATH_SYMBOL

   

HB_UNICODE_GENERAL_CATEGORY_OTHER_SYMBOL

   

HB_UNICODE_GENERAL_CATEGORY_LINE_SEPARATOR

   

HB_UNICODE_GENERAL_CATEGORY_PARAGRAPH_SEPARATOR

   

HB_UNICODE_GENERAL_CATEGORY_SPACE_SEPARATOR