Ne.app NeANT
The Ne.app NeANT User module of the NeANT distribution.
iso2022.h
Go to the documentation of this file.
1
32#ifndef _RWSTD_LOC_ISO2022_H_INCLUDED
33#define _RWSTD_LOC_ISO2022_H_INCLUDED
34
35
36#include <rw/_mbstate.h> // for _RWSTD_MBSTATE_T
37#include <rw/_defs.h>
38
39
41
42enum encoding_type
43{
44 stateless,
45 iso2022_jp, /* stateful ISO-2022-JP encoding */
46 iso2022_jp2, /* stateful ISO-2022-JP2 encoding */
47 iso2022_kr, /* stateful ISO-2022-KR encoding */
48 iso2022_cn /* stateful ISO-2022-CN encoding */
49};
50typedef enum encoding_type encoding_type_t;
51
52// Type of encoding as indicated in the name string
53int __rw_encoding_from_name (const char*);
54
55
56// Conversions for ISO-2022-JP
57_STD::codecvt_base::result
58__rw_iso2022jp_do_in (_RWSTD_MBSTATE_T&,
59 const char*&, const char*,
60 wchar_t*&, wchar_t*);
61
62_STD::codecvt_base::result
63__rw_iso2022jp_do_out (_RWSTD_MBSTATE_T&,
64 const wchar_t*&, const wchar_t*,
65 char*&, char*);
66
67_STD::codecvt_base::result
68__rw_iso2022jp_do_unshift (_RWSTD_MBSTATE_T&, char*&, char*);
69
70int __rw_iso2022jp_do_encoding ();
71
72_RWSTD_SIZE_T __rw_iso2022jp_do_length (_RWSTD_MBSTATE_T&, const char*,
73 const char*, _RWSTD_SIZE_T);
74
75_RWSTD_SIZE_T __rw_iso2022jp_do_max_length ();
76
77bool __rw_iso2022_do_always_noconv ();
78
79
80// Conversions for ISO-2022-JP-2
81_STD::codecvt_base::result
82__rw_iso2022jp2_do_in (_RWSTD_MBSTATE_T&,
83 const char*&, const char*,
84 wchar_t*&, wchar_t*);
85
86_STD::codecvt_base::result
87__rw_iso2022jp2_do_out (_RWSTD_MBSTATE_T&,
88 const wchar_t*&, const wchar_t*,
89 char*&, char*);
90
91_STD::codecvt_base::result
92__rw_iso2022jp2_do_unshift (_RWSTD_MBSTATE_T&, char*&, char*);
93
94int __rw_iso2022jp2_do_encoding ();
95
96_RWSTD_SIZE_T __rw_iso2022jp2_do_length (_RWSTD_MBSTATE_T&, const char*,
97 const char*, _RWSTD_SIZE_T);
98
99_RWSTD_SIZE_T __rw_iso2022jp2_do_max_length ();
100
101bool __rw_iso2022jp2_do2_always_noconv ();
102
103
104} // namespace __rw
105
106#endif // _RWSTD_LOC_ISO2022_H_INCLUDED
#define _RWSTD_NAMESPACE(name)
Definition _defs.h:567
#define _RWSTD_MBSTATE_T
Definition _mbstate.h:199