[SDK][NDK] Move SYSTEM_POWER_INFORMATION to ntpoapi.h (#869)
[reactos.git] / sdk / include / crt / memory.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_MEMORY
7 #define _INC_MEMORY
8
9 #include <crtdefs.h>
10
11 #ifdef __cplusplus
12 extern "C" {
13 #endif
14
15 #ifndef _CONST_RETURN
16 #define _CONST_RETURN
17 #endif
18
19 #define _WConst_return _CONST_RETURN
20
21 #ifndef _CRT_MEMORY_DEFINED
22 #define _CRT_MEMORY_DEFINED
23
24 _CRTIMP
25 void*
26 __cdecl
27 _memccpy(
28 _Out_writes_bytes_opt_(_MaxCount) void *_Dst,
29 _In_ const void *_Src,
30 _In_ int _Val,
31 _In_ size_t _MaxCount);
32
33 _Check_return_
34 _CONST_RETURN
35 void*
36 __cdecl
37 memchr(
38 _In_reads_bytes_opt_(_MaxCount) const void *_Buf,
39 _In_ int _Val,
40 _In_ size_t _MaxCount);
41
42 _Check_return_
43 _CRTIMP
44 int
45 __cdecl
46 _memicmp(
47 _In_reads_bytes_opt_(_Size) const void *_Buf1,
48 _In_reads_bytes_opt_(_Size) const void *_Buf2,
49 _In_ size_t _Size);
50
51 _Check_return_
52 _CRTIMP
53 int
54 __cdecl
55 _memicmp_l(
56 _In_reads_bytes_opt_(_Size) const void *_Buf1,
57 _In_reads_bytes_opt_(_Size) const void *_Buf2,
58 _In_ size_t _Size,
59 _In_opt_ _locale_t _Locale);
60
61 _Check_return_
62 int
63 __cdecl
64 memcmp(
65 _In_reads_bytes_opt_(_Size) const void *_Buf1,
66 _In_reads_bytes_opt_(_Size) const void *_Buf2,
67 _In_ size_t _Size);
68
69 _Post_equal_to_(_Dst)
70 _At_buffer_((unsigned char*)_Dst,
71 _Iter_,
72 _MaxCount,
73 _Post_satisfies_(((unsigned char*)_Dst)[_Iter_] == ((unsigned char*)_Src)[_Iter_]))
74 _CRT_INSECURE_DEPRECATE_MEMORY(memcpy_s)
75 void*
76 __cdecl
77 memcpy(
78 _Out_writes_bytes_all_(_MaxCount) void *_Dst,
79 _In_reads_bytes_(_MaxCount) const void *_Src,
80 _In_ size_t _MaxCount);
81
82 _Post_equal_to_(_Dst)
83 _At_buffer_((unsigned char*)_Dst,
84 _Iter_,
85 _Size,
86 _Post_satisfies_(((unsigned char*)_Dst)[_Iter_] == _Val))
87 void*
88 __cdecl
89 memset(
90 _Out_writes_bytes_all_(_Size) void *_Dst,
91 _In_ int _Val,
92 _In_ size_t _Size);
93
94 #ifndef NO_OLDNAMES
95
96 _CRTIMP
97 void*
98 __cdecl
99 memccpy(
100 _Out_writes_bytes_opt_(_Size) void *_Dst,
101 _In_reads_bytes_opt_(_Size) const void *_Src,
102 _In_ int _Val,
103 _In_ size_t _Size);
104
105 _Check_return_
106 _CRTIMP
107 int
108 __cdecl
109 memicmp(
110 _In_reads_bytes_opt_(_Size) const void *_Buf1,
111 _In_reads_bytes_opt_(_Size) const void *_Buf2,
112 _In_ size_t _Size);
113
114 #endif /* NO_OLDNAMES */
115
116 #endif /* _CRT_MEMORY_DEFINED */
117
118 #ifdef __cplusplus
119 }
120 #endif
121
122 #endif /* _INC_MEMORY */