1 /* Misc. local definitions for libc/stdlib */
2 
3 #ifndef _LOCAL_H_
4 #define _LOCAL_H_
5 
6 char *	_gcvt (double , int , char *, char, int);
7 
8 #include "../locale/setlocale.h"
9 
10 #ifndef __machine_mbstate_t_defined
11 #include <wchar.h>
12 #endif
13 
14 typedef int wctomb_f (char *, wchar_t, mbstate_t *);
15 typedef wctomb_f *wctomb_p;
16 
17 wctomb_f __ascii_wctomb;
18 #ifdef _MB_CAPABLE
19 wctomb_f __utf8_wctomb;
20 wctomb_f __sjis_wctomb;
21 wctomb_f __eucjp_wctomb;
22 wctomb_f __jis_wctomb;
23 wctomb_p __iso_wctomb (int val);
24 wctomb_p __cp_wctomb (int val);
25 #ifdef __CYGWIN__
26 wctomb_f __gbk_wctomb;
27 wctomb_f __kr_wctomb;
28 wctomb_f __big5_wctomb;
29 #endif
30 #endif
31 
32 #define __WCTOMB (_locale->wctomb)
33 
34 typedef int mbtowc_f (wchar_t *, const char *, size_t,
35 		      mbstate_t *);
36 typedef mbtowc_f *mbtowc_p;
37 
38 mbtowc_f __ascii_mbtowc;
39 #ifdef _MB_CAPABLE
40 mbtowc_f __utf8_mbtowc;
41 mbtowc_f __sjis_mbtowc;
42 mbtowc_f __eucjp_mbtowc;
43 mbtowc_f __jis_mbtowc;
44 mbtowc_p __iso_mbtowc (int val);
45 mbtowc_p __cp_mbtowc (int val);
46 #ifdef __CYGWIN__
47 mbtowc_f __gbk_mbtowc;
48 mbtowc_f __kr_mbtowc;
49 mbtowc_f __big5_mbtowc;
50 #endif
51 #endif
52 
53 #define __MBTOWC (_locale->mbtowc)
54 
55 extern wchar_t __iso_8859_conv[14][0x60];
56 int __iso_8859_val_index (int);
57 int __iso_8859_index (const char *);
58 
59 extern wchar_t __cp_conv[][0x80];
60 int __cp_val_index (int);
61 int __cp_index (const char *);
62 
63 #endif
64