Include crtdefs.h instead of _mingw.h in the crt headers (like ms does), so only...
[reactos.git] / reactos / include / crt / mbstring.h
1 /**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the w64 mingw-runtime package.
4 * No warranty is given; refer to the file DISCLAIMER within this package.
5 */
6 #ifndef _INC_MBSTRING
7 #define _INC_MBSTRING
8
9 #include <crtdefs.h>
10
11 #pragma pack(push,_CRT_PACKING)
12
13 #ifdef __cplusplus
14 extern "C" {
15 #endif
16
17 #ifndef _FILE_DEFINED
18 struct _iobuf {
19 char *_ptr;
20 int _cnt;
21 char *_base;
22 int _flag;
23 int _file;
24 int _charbuf;
25 int _bufsiz;
26 char *_tmpfname;
27 };
28 typedef struct _iobuf FILE;
29 #define _FILE_DEFINED
30 #endif
31
32 #ifndef _MBSTRING_DEFINED
33 #define _MBSTRING_DEFINED
34 _CRTIMP unsigned char *__cdecl _mbsdup(const unsigned char *_Str);
35 _CRTIMP unsigned int __cdecl _mbbtombc(unsigned int _Ch);
36 _CRTIMP unsigned int __cdecl _mbbtombc_l(unsigned int _Ch,_locale_t _Locale);
37 _CRTIMP int __cdecl _mbbtype(unsigned char _Ch,int _CType);
38 _CRTIMP int __cdecl _mbbtype_l(unsigned char _Ch,int _CType,_locale_t _Locale);
39 _CRTIMP unsigned int __cdecl _mbctombb(unsigned int _Ch);
40 _CRTIMP unsigned int __cdecl _mbctombb_l(unsigned int _Ch,_locale_t _Locale);
41 _CRTIMP int __cdecl _mbsbtype(const unsigned char *_Str,size_t _Pos);
42 _CRTIMP int __cdecl _mbsbtype_l(const unsigned char *_Str,size_t _Pos,_locale_t _Locale);
43 _CRTIMP unsigned char *__cdecl _mbscat(unsigned char *_Dest,const unsigned char *_Source);
44 _CRTIMP unsigned char *_mbscat_l(unsigned char *_Dest,const unsigned char *_Source,_locale_t _Locale);
45 _CRTIMP _CONST_RETURN unsigned char *__cdecl _mbschr(const unsigned char *_Str,unsigned int _Ch);
46 _CRTIMP _CONST_RETURN unsigned char *__cdecl _mbschr_l(const unsigned char *_Str,unsigned int _Ch,_locale_t _Locale);
47 _CRTIMP int __cdecl _mbscmp(const unsigned char *_Str1,const unsigned char *_Str2);
48 _CRTIMP int __cdecl _mbscmp_l(const unsigned char *_Str1,const unsigned char *_Str2,_locale_t _Locale);
49 _CRTIMP int __cdecl _mbscoll(const unsigned char *_Str1,const unsigned char *_Str2);
50 _CRTIMP int __cdecl _mbscoll_l(const unsigned char *_Str1,const unsigned char *_Str2,_locale_t _Locale);
51 _CRTIMP unsigned char *__cdecl _mbscpy(unsigned char *_Dest,const unsigned char *_Source);
52 _CRTIMP unsigned char *_mbscpy_l(unsigned char *_Dest,const unsigned char *_Source,_locale_t _Locale);
53 _CRTIMP size_t __cdecl _mbscspn(const unsigned char *_Str,const unsigned char *_Control);
54 _CRTIMP size_t __cdecl _mbscspn_l(const unsigned char *_Str,const unsigned char *_Control,_locale_t _Locale);
55 _CRTIMP unsigned char *__cdecl _mbsdec(const unsigned char *_Start,const unsigned char *_Pos);
56 _CRTIMP unsigned char *__cdecl _mbsdec_l(const unsigned char *_Start,const unsigned char *_Pos,_locale_t _Locale);
57 _CRTIMP int __cdecl _mbsicmp(const unsigned char *_Str1,const unsigned char *_Str2);
58 _CRTIMP int __cdecl _mbsicmp_l(const unsigned char *_Str1,const unsigned char *_Str2,_locale_t _Locale);
59 _CRTIMP int __cdecl _mbsicoll(const unsigned char *_Str1,const unsigned char *_Str2);
60 _CRTIMP int __cdecl _mbsicoll_l(const unsigned char *_Str1,const unsigned char *_Str2,_locale_t _Locale);
61 _CRTIMP unsigned char *__cdecl _mbsinc(const unsigned char *_Ptr);
62 _CRTIMP unsigned char *__cdecl _mbsinc_l(const unsigned char *_Ptr,_locale_t _Locale);
63 _CRTIMP size_t __cdecl _mbslen(const unsigned char *_Str);
64 _CRTIMP size_t __cdecl _mbslen_l(const unsigned char *_Str,_locale_t _Locale);
65 _CRTIMP size_t __cdecl _mbsnlen(const unsigned char *_Str,size_t _MaxCount);
66 _CRTIMP size_t __cdecl _mbsnlen_l(const unsigned char *_Str,size_t _MaxCount,_locale_t _Locale);
67 _CRTIMP unsigned char *__cdecl _mbslwr(unsigned char *_String);
68 _CRTIMP unsigned char *_mbslwr_l(unsigned char *_String,_locale_t _Locale);
69 _CRTIMP unsigned char *__cdecl _mbsnbcat(unsigned char *_Dest,const unsigned char *_Source,size_t _Count);
70 _CRTIMP unsigned char *__cdecl _mbsnbcat_l(unsigned char *_Dest,const unsigned char *_Source,size_t _Count,_locale_t _Locale);
71 _CRTIMP int __cdecl _mbsnbcmp(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
72 _CRTIMP int __cdecl _mbsnbcmp_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
73 _CRTIMP int __cdecl _mbsnbcoll(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
74 _CRTIMP int __cdecl _mbsnbcoll_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
75 _CRTIMP size_t __cdecl _mbsnbcnt(const unsigned char *_Str,size_t _MaxCount);
76 _CRTIMP size_t __cdecl _mbsnbcnt_l(const unsigned char *_Str,size_t _MaxCount,_locale_t _Locale);
77 _CRTIMP unsigned char *__cdecl _mbsnbcpy(unsigned char *_Dest,const unsigned char *_Source,size_t _Count);
78 _CRTIMP unsigned char *__cdecl _mbsnbcpy_l(unsigned char *_Dest,const unsigned char *_Source,size_t _Count,_locale_t _Locale);
79 _CRTIMP int __cdecl _mbsnbicmp(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
80 _CRTIMP int __cdecl _mbsnbicmp_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
81 _CRTIMP int __cdecl _mbsnbicoll(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
82 _CRTIMP int __cdecl _mbsnbicoll_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
83 _CRTIMP unsigned char *__cdecl _mbsnbset(unsigned char *_Str,unsigned int _Ch,size_t _MaxCount);
84 _CRTIMP unsigned char *__cdecl _mbsnbset_l(unsigned char *_Str,unsigned int _Ch,size_t _MaxCount,_locale_t _Locale);
85 _CRTIMP unsigned char *__cdecl _mbsncat(unsigned char *_Dest,const unsigned char *_Source,size_t _Count);
86 _CRTIMP unsigned char *__cdecl _mbsncat_l(unsigned char *_Dest,const unsigned char *_Source,size_t _Count,_locale_t _Locale);
87 _CRTIMP size_t __cdecl _mbsnccnt(const unsigned char *_Str,size_t _MaxCount);
88 _CRTIMP size_t __cdecl _mbsnccnt_l(const unsigned char *_Str,size_t _MaxCount,_locale_t _Locale);
89 _CRTIMP int __cdecl _mbsncmp(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
90 _CRTIMP int __cdecl _mbsncmp_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
91 _CRTIMP int __cdecl _mbsncoll(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
92 _CRTIMP int __cdecl _mbsncoll_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
93 _CRTIMP unsigned char *__cdecl _mbsncpy(unsigned char *_Dest,const unsigned char *_Source,size_t _Count);
94 _CRTIMP unsigned char *__cdecl _mbsncpy_l(unsigned char *_Dest,const unsigned char *_Source,size_t _Count,_locale_t _Locale);
95 _CRTIMP unsigned int __cdecl _mbsnextc (const unsigned char *_Str);
96 _CRTIMP unsigned int __cdecl _mbsnextc_l(const unsigned char *_Str,_locale_t _Locale);
97 _CRTIMP int __cdecl _mbsnicmp(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
98 _CRTIMP int __cdecl _mbsnicmp_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
99 _CRTIMP int __cdecl _mbsnicoll(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
100 _CRTIMP int __cdecl _mbsnicoll_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
101 _CRTIMP unsigned char *__cdecl _mbsninc(const unsigned char *_Str,size_t _Count);
102 _CRTIMP unsigned char *__cdecl _mbsninc_l(const unsigned char *_Str,size_t _Count,_locale_t _Locale);
103 _CRTIMP unsigned char *__cdecl _mbsnset(unsigned char *_Dst,unsigned int _Val,size_t _MaxCount);
104 _CRTIMP unsigned char *__cdecl _mbsnset_l(unsigned char *_Dst,unsigned int _Val,size_t _MaxCount,_locale_t _Locale);
105 _CRTIMP _CONST_RETURN unsigned char *__cdecl _mbspbrk(const unsigned char *_Str,const unsigned char *_Control);
106 _CRTIMP _CONST_RETURN unsigned char *__cdecl _mbspbrk_l(const unsigned char *_Str,const unsigned char *_Control,_locale_t _Locale);
107 _CRTIMP _CONST_RETURN unsigned char *__cdecl _mbsrchr(const unsigned char *_Str,unsigned int _Ch);
108 _CRTIMP _CONST_RETURN unsigned char *__cdecl _mbsrchr_l(const unsigned char *_Str,unsigned int _Ch,_locale_t _Locale);
109 _CRTIMP unsigned char *__cdecl _mbsrev(unsigned char *_Str);
110 _CRTIMP unsigned char *__cdecl _mbsrev_l(unsigned char *_Str,_locale_t _Locale);
111 _CRTIMP unsigned char *__cdecl _mbsset(unsigned char *_Str,unsigned int _Val);
112 _CRTIMP unsigned char *__cdecl _mbsset_l(unsigned char *_Str,unsigned int _Val,_locale_t _Locale);
113 _CRTIMP size_t __cdecl _mbsspn(const unsigned char *_Str,const unsigned char *_Control);
114 _CRTIMP size_t __cdecl _mbsspn_l(const unsigned char *_Str,const unsigned char *_Control,_locale_t _Locale);
115 _CRTIMP unsigned char *__cdecl _mbsspnp(const unsigned char *_Str1,const unsigned char *_Str2);
116 _CRTIMP unsigned char *__cdecl _mbsspnp_l(const unsigned char *_Str1,const unsigned char *_Str2,_locale_t _Locale);
117 _CRTIMP _CONST_RETURN unsigned char *__cdecl _mbsstr(const unsigned char *_Str,const unsigned char *_Substr);
118 _CRTIMP _CONST_RETURN unsigned char *__cdecl _mbsstr_l(const unsigned char *_Str,const unsigned char *_Substr,_locale_t _Locale);
119 _CRTIMP unsigned char *__cdecl _mbstok(unsigned char *_Str,const unsigned char *_Delim);
120 _CRTIMP unsigned char *__cdecl _mbstok_l(unsigned char *_Str,const unsigned char *_Delim,_locale_t _Locale);
121 _CRTIMP unsigned char *__cdecl _mbsupr(unsigned char *_String);
122 _CRTIMP unsigned char *_mbsupr_l(unsigned char *_String,_locale_t _Locale);
123 _CRTIMP size_t __cdecl _mbclen(const unsigned char *_Str);
124 _CRTIMP size_t __cdecl _mbclen_l(const unsigned char *_Str,_locale_t _Locale);
125 _CRTIMP void __cdecl _mbccpy(unsigned char *_Dst,const unsigned char *_Src);
126 _CRTIMP void __cdecl _mbccpy_l(unsigned char *_Dst,const unsigned char *_Src,_locale_t _Locale);
127 #define _mbccmp(_cpc1,_cpc2) _mbsncmp((_cpc1),(_cpc2),1)
128
129 #ifdef __cplusplus
130 #ifndef _CPP_MBCS_INLINES_DEFINED
131 #define _CPP_MBCS_INLINES_DEFINED
132 extern "C++" {
133 static inline unsigned char *__cdecl _mbschr(unsigned char *_String,unsigned int _Char) { return ((unsigned char *)_mbschr((const unsigned char *)_String,_Char)); }
134 static inline unsigned char *__cdecl _mbschr_l(unsigned char *_String,unsigned int _Char,_locale_t _Locale) { return ((unsigned char *)_mbschr_l((const unsigned char *)_String,_Char,_Locale)); }
135 static inline unsigned char *__cdecl _mbspbrk(unsigned char *_String,const unsigned char *_CharSet) { return ((unsigned char *)_mbspbrk((const unsigned char *)_String,_CharSet)); }
136 static inline unsigned char *__cdecl _mbspbrk_l(unsigned char *_String,const unsigned char *_CharSet,_locale_t _Locale) { return ((unsigned char *)_mbspbrk_l((const unsigned char *)_String,_CharSet,_Locale)); }
137 static inline unsigned char *__cdecl _mbsrchr(unsigned char *_String,unsigned int _Char) { return ((unsigned char *)_mbsrchr((const unsigned char *)_String,_Char)); }
138 static inline unsigned char *__cdecl _mbsrchr_l(unsigned char *_String,unsigned int _Char,_locale_t _Locale) { return ((unsigned char *)_mbsrchr_l((const unsigned char *)_String,_Char,_Locale)); }
139 static inline unsigned char *__cdecl _mbsstr(unsigned char *_String,const unsigned char *_Match) { return ((unsigned char *)_mbsstr((const unsigned char *)_String,_Match)); }
140 static inline unsigned char *__cdecl _mbsstr_l(unsigned char *_String,const unsigned char *_Match,_locale_t _Locale) { return ((unsigned char *)_mbsstr_l((const unsigned char *)_String,_Match,_Locale)); }
141 }
142 #endif
143 #endif
144
145 _CRTIMP int __cdecl _ismbcalnum(unsigned int _Ch);
146 _CRTIMP int __cdecl _ismbcalnum_l(unsigned int _Ch,_locale_t _Locale);
147 _CRTIMP int __cdecl _ismbcalpha(unsigned int _Ch);
148 _CRTIMP int __cdecl _ismbcalpha_l(unsigned int _Ch,_locale_t _Locale);
149 _CRTIMP int __cdecl _ismbcdigit(unsigned int _Ch);
150 _CRTIMP int __cdecl _ismbcdigit_l(unsigned int _Ch,_locale_t _Locale);
151 _CRTIMP int __cdecl _ismbcgraph(unsigned int _Ch);
152 _CRTIMP int __cdecl _ismbcgraph_l(unsigned int _Ch,_locale_t _Locale);
153 _CRTIMP int __cdecl _ismbclegal(unsigned int _Ch);
154 _CRTIMP int __cdecl _ismbclegal_l(unsigned int _Ch,_locale_t _Locale);
155 _CRTIMP int __cdecl _ismbclower(unsigned int _Ch);
156 _CRTIMP int __cdecl _ismbclower_l(unsigned int _Ch,_locale_t _Locale);
157 _CRTIMP int __cdecl _ismbcprint(unsigned int _Ch);
158 _CRTIMP int __cdecl _ismbcprint_l(unsigned int _Ch,_locale_t _Locale);
159 _CRTIMP int __cdecl _ismbcpunct(unsigned int _Ch);
160 _CRTIMP int __cdecl _ismbcpunct_l(unsigned int _Ch,_locale_t _Locale);
161 _CRTIMP int __cdecl _ismbcspace(unsigned int _Ch);
162 _CRTIMP int __cdecl _ismbcspace_l(unsigned int _Ch,_locale_t _Locale);
163 _CRTIMP int __cdecl _ismbcupper(unsigned int _Ch);
164 _CRTIMP int __cdecl _ismbcupper_l(unsigned int _Ch,_locale_t _Locale);
165 _CRTIMP unsigned int __cdecl _mbctolower(unsigned int _Ch);
166 _CRTIMP unsigned int __cdecl _mbctolower_l(unsigned int _Ch,_locale_t _Locale);
167 _CRTIMP unsigned int __cdecl _mbctoupper(unsigned int _Ch);
168 _CRTIMP unsigned int __cdecl _mbctoupper_l(unsigned int _Ch,_locale_t _Locale);
169 #endif
170
171 #ifndef _MBLEADTRAIL_DEFINED
172 #define _MBLEADTRAIL_DEFINED
173 _CRTIMP int __cdecl _ismbblead(unsigned int _Ch);
174 _CRTIMP int __cdecl _ismbblead_l(unsigned int _Ch,_locale_t _Locale);
175 _CRTIMP int __cdecl _ismbbtrail(unsigned int _Ch);
176 _CRTIMP int __cdecl _ismbbtrail_l(unsigned int _Ch,_locale_t _Locale);
177 _CRTIMP int __cdecl _ismbslead(const unsigned char *_Str,const unsigned char *_Pos);
178 _CRTIMP int __cdecl _ismbslead_l(const unsigned char *_Str,const unsigned char *_Pos,_locale_t _Locale);
179 _CRTIMP int __cdecl _ismbstrail(const unsigned char *_Str,const unsigned char *_Pos);
180 _CRTIMP int __cdecl _ismbstrail_l(const unsigned char *_Str,const unsigned char *_Pos,_locale_t _Locale);
181 #endif
182
183 _CRTIMP int __cdecl _ismbchira(unsigned int _Ch);
184 _CRTIMP int __cdecl _ismbchira_l(unsigned int _Ch,_locale_t _Locale);
185 _CRTIMP int __cdecl _ismbckata(unsigned int _Ch);
186 _CRTIMP int __cdecl _ismbckata_l(unsigned int _Ch,_locale_t _Locale);
187 _CRTIMP int __cdecl _ismbcsymbol(unsigned int _Ch);
188 _CRTIMP int __cdecl _ismbcsymbol_l(unsigned int _Ch,_locale_t _Locale);
189 _CRTIMP int __cdecl _ismbcl0(unsigned int _Ch);
190 _CRTIMP int __cdecl _ismbcl0_l(unsigned int _Ch,_locale_t _Locale);
191 _CRTIMP int __cdecl _ismbcl1(unsigned int _Ch);
192 _CRTIMP int __cdecl _ismbcl1_l(unsigned int _Ch,_locale_t _Locale);
193 _CRTIMP int __cdecl _ismbcl2(unsigned int _Ch);
194 _CRTIMP int __cdecl _ismbcl2_l(unsigned int _Ch,_locale_t _Locale);
195 _CRTIMP unsigned int __cdecl _mbcjistojms(unsigned int _Ch);
196 _CRTIMP unsigned int __cdecl _mbcjistojms_l(unsigned int _Ch,_locale_t _Locale);
197 _CRTIMP unsigned int __cdecl _mbcjmstojis(unsigned int _Ch);
198 _CRTIMP unsigned int __cdecl _mbcjmstojis_l(unsigned int _Ch,_locale_t _Locale);
199 _CRTIMP unsigned int __cdecl _mbctohira(unsigned int _Ch);
200 _CRTIMP unsigned int __cdecl _mbctohira_l(unsigned int _Ch,_locale_t _Locale);
201 _CRTIMP unsigned int __cdecl _mbctokata(unsigned int _Ch);
202 _CRTIMP unsigned int __cdecl _mbctokata_l(unsigned int _Ch,_locale_t _Locale);
203
204 #ifdef __cplusplus
205 }
206 #endif
207
208 #pragma pack(pop)
209
210 #include <sec_api/mbstring_s.h>
211
212 #endif