• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #include <wctype.h>
2 #ifndef __LITEOS__
3 #ifdef FEATURE_ICU_LOCALE
4 #include <string.h>
5 #include "locale_impl.h"
6 #endif
7 #endif
8 
iswcntrl(wint_t wc)9 int iswcntrl(wint_t wc)
10 {
11 	return (unsigned)wc < 32
12 	    || (unsigned)(wc-0x7f) < 33
13 	    || (unsigned)(wc-0x2028) < 2
14 	    || (unsigned)(wc-0xfff9) < 3;
15 }
16 
__iswcntrl_l(wint_t c,locale_t l)17 int __iswcntrl_l(wint_t c, locale_t l)
18 {
19 #ifndef __LITEOS__
20 #ifdef FEATURE_ICU_LOCALE
21 	if (icu_locale_wctype_enable && l && l->cat[LC_CTYPE]
22 		&& l->cat[LC_CTYPE]->flag == ICU_VALID) {
23 		char* type_name = (char*)(l->cat[LC_CTYPE]->name);
24 		if (!strcmp(type_name, "zh_CN") || !strcmp(type_name, "en_US.UTF-8")) {
25 			return g_icu_opt_func.u_iscntrl(c);
26 		}
27 	}
28 #endif
29 #endif
30 	return iswcntrl(c);
31 }
32 
33 weak_alias(__iswcntrl_l, iswcntrl_l);
34