/src/w3m/libwc/combining.c
Line | Count | Source (jump to first uncovered line) |
1 | | |
2 | | #include "wc.h" |
3 | | #ifdef USE_UNICODE |
4 | | #include "ucs.h" |
5 | | #endif |
6 | | #include "map/iso88596_combining.map" |
7 | | #include "map/iso885911_combining.map" |
8 | | #include "map/cp864_combining.map" |
9 | | #include "map/cp874_combining.map" |
10 | | #include "map/cp1255_combining.map" |
11 | | #include "map/cp1256_combining.map" |
12 | | #include "map/cp1258_combining.map" |
13 | | #include "map/tcvn5712_combining.map" |
14 | | |
15 | | wc_bool |
16 | | wc_is_combining(wc_wchar_t cc) |
17 | 34.4k | { |
18 | 34.4k | switch (WC_CCS_SET(cc.ccs)) { |
19 | 0 | case WC_CCS_ISO_8859_6: |
20 | 0 | return iso88596_combining_map[cc.code & 0x7f]; |
21 | 34.4k | case WC_CCS_ISO_8859_11: |
22 | 34.4k | return iso885911_combining_map[cc.code & 0x7f]; |
23 | 0 | case WC_CCS_CP864: |
24 | 0 | return cp864_combining_map[cc.code & 0x7f]; |
25 | 0 | case WC_CCS_CP874: |
26 | 0 | return cp874_combining_map[cc.code & 0x7f]; |
27 | 0 | case WC_CCS_CP1255: |
28 | 0 | return cp1255_combining_map[cc.code & 0x7f]; |
29 | 0 | case WC_CCS_CP1256: |
30 | 0 | return cp1256_combining_map[cc.code & 0x7f]; |
31 | 0 | case WC_CCS_CP1258_1: |
32 | 0 | return cp1258_combining_map[cc.code & 0x7f]; |
33 | 0 | case WC_CCS_TCVN_5712_1: |
34 | 0 | return tcvn5712_combining_map[cc.code & 0x7f]; |
35 | 0 | #ifdef USE_UNICODE |
36 | 0 | case WC_CCS_UCS2: |
37 | 0 | case WC_CCS_UCS4: |
38 | 0 | case WC_CCS_UCS_TAG: |
39 | 0 | return wc_is_ucs_combining(cc.code); |
40 | 34.4k | #endif |
41 | 34.4k | } |
42 | 0 | return WC_FALSE; |
43 | 34.4k | } |