2018-03-09 13:30:33 +01:00
|
|
|
/* Modified (m) 2017 Thomas Wolff: fixed locale/wchar handling */
|
|
|
|
|
2002-09-20 22:13:11 +02:00
|
|
|
/* wctrans constants */
|
|
|
|
|
|
|
|
#include <_ansi.h>
|
2016-07-20 22:05:59 +02:00
|
|
|
#include "../locale/setlocale.h"
|
2002-09-20 22:13:11 +02:00
|
|
|
|
|
|
|
/* valid values for wctrans_t */
|
|
|
|
#define WCT_TOLOWER 1
|
|
|
|
#define WCT_TOUPPER 2
|
|
|
|
|
|
|
|
/* valid values for wctype_t */
|
|
|
|
#define WC_ALNUM 1
|
|
|
|
#define WC_ALPHA 2
|
|
|
|
#define WC_BLANK 3
|
|
|
|
#define WC_CNTRL 4
|
|
|
|
#define WC_DIGIT 5
|
|
|
|
#define WC_GRAPH 6
|
|
|
|
#define WC_LOWER 7
|
|
|
|
#define WC_PRINT 8
|
|
|
|
#define WC_PUNCT 9
|
|
|
|
#define WC_SPACE 10
|
|
|
|
#define WC_UPPER 11
|
|
|
|
#define WC_XDIGIT 12
|
|
|
|
|
2018-03-09 13:30:33 +01:00
|
|
|
/* internal functions to translate between JP and Unicode */
|
|
|
|
/* note this is not applicable to Cygwin, where wchar_t is always Unicode,
|
|
|
|
and should not be applicable to most other platforms either;
|
|
|
|
* platforms for which wchar_t is not Unicode should be explicitly listed
|
|
|
|
* the transformation should be applied to all non-Unicode locales
|
|
|
|
(also Chinese, Korean, and even 8-bit locales such as *.CP1252)
|
|
|
|
* for towupper and towlower, the result must be back-transformed
|
|
|
|
into the respective locale encoding; currently NOT IMPLEMENTED
|
|
|
|
*/
|
2009-06-02 11:41:06 +02:00
|
|
|
#ifdef __CYGWIN__
|
2018-03-09 13:30:33 +01:00
|
|
|
/* Under Cygwin, wchar_t (or its extension wint_t) is Unicode */
|
2009-06-02 11:41:06 +02:00
|
|
|
#define _jp2uc(c) (c)
|
2018-03-09 13:30:33 +01:00
|
|
|
#define _jp2uc_l(c, l) (c)
|
|
|
|
#define _uc2jp_l(c, l) (c)
|
2009-06-02 11:41:06 +02:00
|
|
|
#else
|
2017-12-04 06:54:48 +01:00
|
|
|
wint_t _jp2uc (wint_t);
|
2018-03-09 13:30:33 +01:00
|
|
|
wint_t _jp2uc_l (wint_t, struct __locale_t *);
|
|
|
|
wint_t _uc2jp_l (wint_t, struct __locale_t *);
|
2009-06-02 11:41:06 +02:00
|
|
|
#endif
|