QtBase  v6.3.1
Classes | Macros | Enumerations | Functions | Variables
hb-ot-shape-complex-arabic.cc File Reference
#include "hb.hh"
#include "hb-ot-shape-complex-arabic.hh"
#include "hb-ot-shape.hh"
#include "hb-ot-shape-complex-arabic-table.hh"
#include "hb-ot-shape-complex-arabic-fallback.hh"
Include dependency graph for hb-ot-shape-complex-arabic.cc:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  arabic_state_table_entry
 
struct  arabic_shape_plan_t
 

Macros

#define arabic_shaping_action()   complex_var_u8_auxiliary() /* arabic shaping action */
 
#define HB_BUFFER_SCRATCH_FLAG_ARABIC_HAS_STCH   HB_BUFFER_SCRATCH_FLAG_COMPLEX0
 
#define HB_ARABIC_GENERAL_CATEGORY_IS_WORD(gen_cat)
 
#define FEATURE_IS_SYRIAC(tag)   hb_in_range<unsigned char> ((unsigned char) (tag), '2', '3')
 

Enumerations

enum  hb_arabic_joining_type_t {
  JOINING_TYPE_U = 0 , JOINING_TYPE_L = 1 , JOINING_TYPE_R = 2 , JOINING_TYPE_D = 3 ,
  JOINING_TYPE_C = JOINING_TYPE_D , JOINING_GROUP_ALAPH = 4 , JOINING_GROUP_DALATH_RISH = 5 , NUM_STATE_MACHINE_COLS = 6 ,
  JOINING_TYPE_T = 7 , JOINING_TYPE_X = 8
}
 
enum  arabic_action_t {
  ISOL , FINA , FIN2 , FIN3 ,
  MEDI , MED2 , INIT , NONE ,
  ARABIC_NUM_FEATURES = NONE , STCH_FIXED , STCH_REPEATING
}
 

Functions

voiddata_create_arabic (const hb_ot_shape_plan_t *plan)
 
void data_destroy_arabic (void *data)
 
void setup_masks_arabic_plan (const arabic_shape_plan_t *arabic_plan, hb_buffer_t *buffer, hb_script_t script)
 

Variables

const hb_ot_complex_shaper_t _hb_ot_complex_shaper_arabic
 

Macro Definition Documentation

◆ arabic_shaping_action

#define arabic_shaping_action ( )    complex_var_u8_auxiliary() /* arabic shaping action */

Definition at line 36 of file hb-ot-shape-complex-arabic.cc.

◆ FEATURE_IS_SYRIAC

#define FEATURE_IS_SYRIAC (   tag)    hb_in_range<unsigned char> ((unsigned char) (tag), '2', '3')

Definition at line 99 of file hb-ot-shape-complex-arabic.cc.

◆ HB_ARABIC_GENERAL_CATEGORY_IS_WORD

#define HB_ARABIC_GENERAL_CATEGORY_IS_WORD (   gen_cat)
Value:
(FLAG_UNSAFE (gen_cat) & \
/*FLAG (HB_UNICODE_GENERAL_CATEGORY_LOWERCASE_LETTER) |*/ \
/*FLAG (HB_UNICODE_GENERAL_CATEGORY_TITLECASE_LETTER) |*/ \
/*FLAG (HB_UNICODE_GENERAL_CATEGORY_UPPERCASE_LETTER) |*/ \
@ FLAG
Definition: inflate.c:14
#define FLAG_UNSAFE(x)
Definition: hb-algs.hh:74
@ HB_UNICODE_GENERAL_CATEGORY_OTHER_SYMBOL
Definition: hb-unicode.h:119
@ HB_UNICODE_GENERAL_CATEGORY_DECIMAL_NUMBER
Definition: hb-unicode.h:106
@ HB_UNICODE_GENERAL_CATEGORY_UNASSIGNED
Definition: hb-unicode.h:95
@ HB_UNICODE_GENERAL_CATEGORY_MODIFIER_LETTER
Definition: hb-unicode.h:99
@ HB_UNICODE_GENERAL_CATEGORY_OTHER_NUMBER
Definition: hb-unicode.h:108
@ HB_UNICODE_GENERAL_CATEGORY_OTHER_LETTER
Definition: hb-unicode.h:100
@ HB_UNICODE_GENERAL_CATEGORY_PRIVATE_USE
Definition: hb-unicode.h:96
@ HB_UNICODE_GENERAL_CATEGORY_CURRENCY_SYMBOL
Definition: hb-unicode.h:116
@ HB_UNICODE_GENERAL_CATEGORY_NON_SPACING_MARK
Definition: hb-unicode.h:105
@ HB_UNICODE_GENERAL_CATEGORY_ENCLOSING_MARK
Definition: hb-unicode.h:104
@ HB_UNICODE_GENERAL_CATEGORY_MATH_SYMBOL
Definition: hb-unicode.h:118
@ HB_UNICODE_GENERAL_CATEGORY_LETTER_NUMBER
Definition: hb-unicode.h:107
@ HB_UNICODE_GENERAL_CATEGORY_SPACING_MARK
Definition: hb-unicode.h:103
@ HB_UNICODE_GENERAL_CATEGORY_MODIFIER_SYMBOL
Definition: hb-unicode.h:117

Definition at line 42 of file hb-ot-shape-complex-arabic.cc.

◆ HB_BUFFER_SCRATCH_FLAG_ARABIC_HAS_STCH

#define HB_BUFFER_SCRATCH_FLAG_ARABIC_HAS_STCH   HB_BUFFER_SCRATCH_FLAG_COMPLEX0

Definition at line 38 of file hb-ot-shape-complex-arabic.cc.

Enumeration Type Documentation

◆ arabic_action_t

Enumerator
ISOL 
FINA 
FIN2 
FIN3 
MEDI 
MED2 
INIT 
NONE 
ARABIC_NUM_FEATURES 
STCH_FIXED 
STCH_REPEATING 

Definition at line 115 of file hb-ot-shape-complex-arabic.cc.

◆ hb_arabic_joining_type_t

Enumerator
JOINING_TYPE_U 
JOINING_TYPE_L 
JOINING_TYPE_R 
JOINING_TYPE_D 
JOINING_TYPE_C 
JOINING_GROUP_ALAPH 
JOINING_GROUP_DALATH_RISH 
NUM_STATE_MACHINE_COLS 
JOINING_TYPE_T 
JOINING_TYPE_X 

Definition at line 70 of file hb-ot-shape-complex-arabic.cc.

Function Documentation

◆ data_create_arabic()

void* data_create_arabic ( const hb_ot_shape_plan_t plan)

Definition at line 260 of file hb-ot-shape-complex-arabic.cc.

Here is the call graph for this function:

◆ data_destroy_arabic()

void data_destroy_arabic ( void data)

Definition at line 279 of file hb-ot-shape-complex-arabic.cc.

◆ setup_masks_arabic_plan()

void setup_masks_arabic_plan ( const arabic_shape_plan_t arabic_plan,
hb_buffer_t buffer,
hb_script_t  script 
)

Definition at line 378 of file hb-ot-shape-complex-arabic.cc.

Variable Documentation

◆ _hb_ot_complex_shaper_arabic

const hb_ot_complex_shaper_t _hb_ot_complex_shaper_arabic
Initial value:
=
{
collect_features_arabic,
nullptr,
nullptr,
postprocess_glyphs_arabic,
nullptr,
nullptr,
setup_masks_arabic,
reorder_marks_arabic,
true,
}
void data_destroy_arabic(void *data)
void * data_create_arabic(const hb_ot_shape_plan_t *plan)
@ HB_OT_SHAPE_ZERO_WIDTH_MARKS_BY_GDEF_LATE
@ HB_OT_SHAPE_NORMALIZATION_MODE_DEFAULT
#define HB_TAG_NONE
Definition: hb-common.h:187

Definition at line 723 of file hb-ot-shape-complex-arabic.cc.