Removed dependencies on the internals of the region object.
[wine] / include / msvcrt / string.h
1 /*
2  * String definitions
3  *
4  * Derived from the mingw header written by Colin Peters.
5  * Modified for Wine use by Jon Griffiths and Francois Gouget.
6  * This file is in the public domain.
7  */
8 #ifndef __WINE_STRING_H
9 #define __WINE_STRING_H
10 #define __WINE_USE_MSVCRT
11
12 #include "winnt.h"
13
14 #ifdef USE_MSVCRT_PREFIX
15 #define MSVCRT(x)    MSVCRT_##x
16 #else
17 #define MSVCRT(x)    x
18 #endif
19
20
21 #ifndef MSVCRT_SIZE_T_DEFINED
22 typedef unsigned int MSVCRT(size_t);
23 #define MSVCRT_SIZE_T_DEFINED
24 #endif
25
26
27 #ifdef __cplusplus
28 extern "C" {
29 #endif
30
31 void*       _memccpy(void*,const void*,int,MSVCRT(size_t));
32 int         _memicmp(const void*,const void*,MSVCRT(size_t));
33 int         _strcmpi(const char*,const char*);
34 char*       _strdup(const char*);
35 char*       _strerror(const char*);
36 int         _stricmp(const char*,const char*);
37 int         _stricoll(const char*,const char*);
38 char*       _strlwr(char*);
39 int         _strnicmp(const char*,const char*,MSVCRT(size_t));
40 char*       _strnset(char*,int,MSVCRT(size_t));
41 char*       _strrev(char*);
42 char*       _strset(char*,int);
43 char*       _strupr(char*);
44
45 void*       MSVCRT(memchr)(const void*,int,MSVCRT(size_t));
46 int         MSVCRT(memcmp)(const void*,const void*,MSVCRT(size_t));
47 void*       MSVCRT(memcpy)(void*,const void*,MSVCRT(size_t));
48 void*       MSVCRT(memmove)(void*,const void*,MSVCRT(size_t));
49 void*       MSVCRT(memset)(void*,int,MSVCRT(size_t));
50 char*       MSVCRT(strcat)(char*,const char*);
51 char*       MSVCRT(strchr)(const char*,int);
52 int         MSVCRT(strcmp)(const char*,const char*);
53 int         MSVCRT(strcoll)(const char*,const char*);
54 char*       MSVCRT(strcpy)(char*,const char*);
55 MSVCRT(size_t) MSVCRT(strcspn)(const char*,const char*);
56 char*       MSVCRT(strerror)(int);
57 MSVCRT(size_t) MSVCRT(strlen)(const char*);
58 char*       MSVCRT(strncat)(char*,const char*,MSVCRT(size_t));
59 int         MSVCRT(strncmp)(const char*,const char*,MSVCRT(size_t));
60 char*       MSVCRT(strncpy)(char*,const char*,MSVCRT(size_t));
61 char*       MSVCRT(strpbrk)(const char*,const char*);
62 char*       MSVCRT(strrchr)(const char*,int);
63 MSVCRT(size_t) MSVCRT(strspn)(const char*,const char*);
64 char*       MSVCRT(strstr)(const char*,const char*);
65 char*       MSVCRT(strtok)(char*,const char*);
66 MSVCRT(size_t) MSVCRT(strxfrm)(char*,const char*,MSVCRT(size_t));
67
68 WCHAR*      _wcsdup(const WCHAR*);
69 int         _wcsicmp(const WCHAR*,const WCHAR*);
70 int         _wcsicoll(const WCHAR*,const WCHAR*);
71 WCHAR*      _wcslwr(WCHAR*);
72 int         _wcsnicmp(const WCHAR*,const WCHAR*,MSVCRT(size_t));
73 WCHAR*      _wcsnset(WCHAR*,WCHAR,MSVCRT(size_t));
74 WCHAR*      _wcsrev(WCHAR*);
75 WCHAR*      _wcsset(WCHAR*,WCHAR);
76 WCHAR*      _wcsupr(WCHAR*);
77
78 WCHAR*      MSVCRT(wcscat)(WCHAR*,const WCHAR*);
79 WCHAR*      MSVCRT(wcschr)(const WCHAR*,WCHAR);
80 int         MSVCRT(wcscmp)(const WCHAR*,const WCHAR*);
81 int         MSVCRT(wcscoll)(const WCHAR*,const WCHAR*);
82 WCHAR*      MSVCRT(wcscpy)(WCHAR*,const WCHAR*);
83 MSVCRT(size_t) MSVCRT(wcscspn)(const WCHAR*,const WCHAR*);
84 MSVCRT(size_t) MSVCRT(wcslen)(const WCHAR*);
85 WCHAR*      MSVCRT(wcsncat)(WCHAR*,const WCHAR*,MSVCRT(size_t));
86 int         MSVCRT(wcsncmp)(const WCHAR*,const WCHAR*,MSVCRT(size_t));
87 WCHAR*      MSVCRT(wcsncpy)(WCHAR*,const WCHAR*,MSVCRT(size_t));
88 WCHAR*      MSVCRT(wcspbrk)(const WCHAR*,const WCHAR*);
89 WCHAR*      MSVCRT(wcsrchr)(const WCHAR*,WCHAR wcFor);
90 MSVCRT(size_t) MSVCRT(wcsspn)(const WCHAR*,const WCHAR*);
91 WCHAR*      MSVCRT(wcsstr)(const WCHAR*,const WCHAR*);
92 WCHAR*      MSVCRT(wcstok)(WCHAR*,const WCHAR*);
93 MSVCRT(size_t) MSVCRT(wcsxfrm)(WCHAR*,const WCHAR*,MSVCRT(size_t));
94
95 #ifdef __cplusplus
96 }
97 #endif
98
99
100 #ifndef USE_MSVCRT_PREFIX
101 #define memccpy _memccpy
102 #define memicmp _memicmp
103 #define strcasecmp _strcasecmp
104 #define strcmpi _strcmpi
105 #define strdup _strdup
106 #define stricmp _stricmp
107 #define stricoll _stricoll
108 #define strlwr _strlwr
109 #define strncasecmp _strncasecmp
110 #define strnicmp _strnicmp
111 #define strnset _strnset
112 #define strrev _strrev
113 #define strset _strset
114 #define strupr _strupr
115
116 #define wcsdup _wcsdup
117 #define wcsicoll _wcsicoll
118 #define wcslwr _wcslwr
119 #define wcsnicmp _wcsnicmp
120 #define wcsnset _wcsnset
121 #define wcsrev _wcsrev
122 #define wcsset _wcsset
123 #define wcsupr _wcsupr
124 #endif /* USE_MSVCRT_PREFIX */
125
126 #endif /* __WINE_STRING_H */