Imported Upstream version 1.0.5
[platform/upstream/fribidi.git] / lib / arabic-misc.tab.i
1 /* The tables in this file should all be sorted on their first item. */
2
3 /* *INDENT-OFF* */
4
5 const PairMap mandatory_liga_table[] = {
6   {{0xFEDF, 0xFE82}, 0xFEF5},
7   {{0xFEDF, 0xFE84}, 0xFEF7},
8   {{0xFEDF, 0xFE88}, 0xFEF9},
9   {{0xFEDF, 0xFE8E}, 0xFEFB},
10   {{0xFEE0, 0xFE82}, 0xFEF6},
11   {{0xFEE0, 0xFE84}, 0xFEF8},
12   {{0xFEE0, 0xFE88}, 0xFEFA},
13   {{0xFEE0, 0xFE8E}, 0xFEFC},
14 };
15
16
17 const PairMap console_liga_table[] = {
18   {{0x0640, 0xFC60}, 0xFCF2},
19   {{0x0640, 0xFC61}, 0xFCF3},
20   {{0x0640, 0xFC62}, 0xFCF4},
21   {{0x0640, 0xFE70}, 0xFE71},
22   {{0x0640, 0xFE76}, 0xFE77},
23   {{0x0640, 0xFE78}, 0xFE79},
24   {{0x0640, 0xFE7A}, 0xFE7B},
25   {{0x0640, 0xFE7C}, 0xFE7D},
26   {{0x0640, 0xFE7E}, 0xFE7F},
27   {{0xFBE8, 0x0654}, 0xFE8B},
28   {{0xFBE9, 0x0654}, 0xFE8C},
29   {{0xFBFC, 0x0654}, 0xFE89},
30   {{0xFBFC, 0x0670}, 0xFC5D},
31   {{0xFBFD, 0x0654}, 0xFE8A},
32   {{0xFBFD, 0x0670}, 0xFC90},
33   {{0xFE7C, 0x0670}, 0xFC63},
34   {{0xFE7C, 0xFE72}, 0xFC5E},
35   {{0xFE7C, 0xFE74}, 0xFC5F},
36   {{0xFE7C, 0xFE76}, 0xFC60},
37   {{0xFE7C, 0xFE78}, 0xFC61},
38   {{0xFE7C, 0xFE7A}, 0xFC62},
39   {{0xFE7D, 0xFE76}, 0xFCF2},
40   {{0xFE7D, 0xFE77}, 0xFCF2},
41   {{0xFE7D, 0xFE78}, 0xFCF3},
42   {{0xFE7D, 0xFE79}, 0xFCF3},
43   {{0xFE7D, 0xFE7A}, 0xFCF4},
44   {{0xFE7D, 0xFE7B}, 0xFCF4},
45   {{0xFE8D, 0x0653}, 0xFE81},
46   {{0xFE8D, 0x0654}, 0xFE83},
47   {{0xFE8D, 0x0655}, 0xFE87},
48   {{0xFE8D, 0xFE70}, 0xFD3D},
49   {{0xFE8E, 0x0653}, 0xFE82},
50   {{0xFE8E, 0x0654}, 0xFE84},
51   {{0xFE8E, 0x0655}, 0xFE88},
52   {{0xFE8E, 0xFE70}, 0xFD3C},
53   {{0xFEE9, 0x0654}, 0xFBA4},
54   {{0xFEEA, 0x0654}, 0xFBA5},
55   {{0xFEED, 0x0654}, 0xFE85},
56   {{0xFEEE, 0x0654}, 0xFE86},
57   {{0xFEEF, 0x0654}, 0xFE89},
58   {{0xFEEF, 0x0670}, 0xFC5D},
59   {{0xFEF0, 0x0654}, 0xFE8A},
60   {{0xFEF0, 0x0670}, 0xFC90},
61   {{0xFEF1, 0x0654}, 0xFE89},
62   {{0xFEF1, 0x0670}, 0xFC5D},
63   {{0xFEF2, 0x0654}, 0xFE8A},
64   {{0xFEF2, 0x0670}, 0xFC90},
65   {{0xFEF3, 0x0654}, 0xFE8B},
66   {{0xFEF4, 0x0654}, 0xFE8C},
67   {{0xFEFB, 0x0653}, 0xFEF5},
68   {{0xFEFB, 0x0654}, 0xFEF7},
69   {{0xFEFB, 0x0655}, 0xFEF9},
70   {{0xFEFC, 0x0653}, 0xFEF6},
71   {{0xFEFC, 0x0654}, 0xFEF8},
72   {{0xFEFC, 0x0655}, 0xFEFA},
73 };
74
75
76 static const FriBidiChar NSMShap[][4] = {
77   {0xFE70, 0xFE71, 0xFE70, 0xFE71,},
78   {0xFE72, 0xFE72, 0xFE72, 0xFE72,},
79   {0xFE74, 0xFE74, 0xFE74, 0xFE74,},
80   {0xFE76, 0xFE77, 0xFE76, 0xFE77,},
81   {0xFE78, 0xFE79, 0xFE78, 0xFE79,},
82   {0xFE7A, 0xFE7B, 0xFE7A, 0xFE7B,},
83   {0xFE7C, 0xFE7D, 0xFE7C, 0xFE7D,},
84   {0xFE7E, 0xFE7F, 0xFE7E, 0xFE7F,},
85 };
86
87 /* *INDENT-ON* */
88
89 #ifndef FRIBIDI_ACCESS_SHAPE_TABLE
90 # define FRIBIDI_ACCESS_SHAPE_TABLE(table,min,max,x,shape) \
91         (((x)<(min)||(x)>(max))?(x):(table)[(x)-(min)][(shape)])
92 #endif
93
94 #define FRIBIDI_GET_ARABIC_SHAPE_NSM(x,shape) FRIBIDI_ACCESS_SHAPE_TABLE(NSMShap, 0x064B, 0x0652, (x), (shape))