Coverage Report

Created: 2023-09-25 06:56

/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
}