This repository has been archived by the owner on Jan 23, 2023. It is now read-only.
/
System.Runtime.CompilerServices.Unsafe.xml
305 lines (305 loc) · 18.2 KB
/
System.Runtime.CompilerServices.Unsafe.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
<?xml version="1.0"?>
<doc>
<assembly>
<name>System.Runtime.CompilerServices.Unsafe</name>
</assembly>
<members>
<member name="T:System.Runtime.CompilerServices.Unsafe">
<summary>
Contains generic, low-level functionality for manipulating pointers.
</summary>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Read``1(System.Void*)">
<summary>
Reads a value of type <typeparamref name="T"/> from the given location.
</summary>
<typeparam name="T">The type to read.</typeparam>
<param name="source">The location to read from.</param>
<returns>An object of type <typeparamref name="T"/> read from the given location.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.ReadUnaligned``1(System.Void*)">
<summary>
Reads a value of type <typeparamref name="T"/> from the given location.
</summary>
<typeparam name="T">The type to read.</typeparam>
<param name="source">The location to read from.</param>
<returns>An object of type <typeparamref name="T"/> read from the given location.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.ReadUnaligned``1(System.Byte@)">
<summary>
Reads a value of type <typeparamref name="T"/> from the given location.
</summary>
<typeparam name="T">The type to read.</typeparam>
<param name="source">The location to read from.</param>
<returns>An object of type <typeparamref name="T"/> read from the given location.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Write``1(System.Void*,``0)">
<summary>
Writes a value of type <typeparamref name="T"/> to the given location.
</summary>
<typeparam name="T">The type of value to write.</typeparam>
<param name="destination">The location to write to.</param>
<param name="value">The value to write.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.WriteUnaligned``1(System.Void*,``0)">
<summary>
Writes a value of type <typeparamref name="T"/> to the given location.
</summary>
<typeparam name="T">The type of value to write.</typeparam>
<param name="destination">The location to write to.</param>
<param name="value">The value to write.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.WriteUnaligned``1(System.Byte@,``0)">
<summary>
Writes a value of type <typeparamref name="T"/> to the given location.
</summary>
<typeparam name="T">The type of value to write.</typeparam>
<param name="destination">The location to write to.</param>
<param name="value">The value to write.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Copy``1(System.Void*,``0@)">
<summary>
Copies a value of type <typeparamref name="T"/> to the given location.
</summary>
<typeparam name="T">The type of value to copy.</typeparam>
<param name="destination">The location to copy to.</param>
<param name="source">A reference to the value to copy.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Copy``1(``0@,System.Void*)">
<summary>
Copies a value of type <typeparamref name="T"/> to the given location.
</summary>
<typeparam name="T">The type of value to copy.</typeparam>
<param name="destination">The location to copy to.</param>
<param name="source">A pointer to the value to copy.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.AsPointer``1(``0@)">
<summary>
Returns a pointer to the given by-ref parameter.
</summary>
<typeparam name="T">The type of object.</typeparam>
<param name="value">The object whose pointer is obtained.</param>
<returns>A pointer to the given value.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.SizeOf``1">
<summary>
Returns the size of an object of the given type parameter.
</summary>
<typeparam name="T">The type of object whose size is retrieved.</typeparam>
<returns>The size of an object of type <typeparamref name="T"/>.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.As``1(System.Object)">
<summary>
Casts the given object to the specified type, performs no dynamic type checking.
</summary>
<typeparam name="T">The type which the object will be cast to.</typeparam>
<param name="o">The object to cast.</param>
<returns>The original object, casted to the given type.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.AsRef``1(System.Void*)">
<summary>
Reinterprets the given location as a reference to a value of type <typeparamref name="T"/>.
</summary>
<typeparam name="T">The type of the interpreted location.</typeparam>
<param name="source">The location of the value to reference.</param>
<returns>A reference to a value of type <typeparamref name="T"/>.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.AsRef``1(``0@)">
<summary>
Reinterprets the given read-only reference as a reference.
</summary>
<typeparam name="T">The type of reference.</typeparam>
<param name="source">The read-only reference to reinterpret.</param>
<returns>A reference to a value of type <typeparamref name="T"/>.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.As``2(``0@)">
<summary>
Reinterprets the given reference as a reference to a value of type <typeparamref name="TTo"/>.
</summary>
<typeparam name="TFrom">The type of reference to reinterpret.</typeparam>
<typeparam name="TTo">The desired type of the reference.</typeparam>
<param name="source">The reference to reinterpret.</param>
<returns>A reference to a value of type <typeparamref name="TTo"/>.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Unbox``1(System.Object)">
<summary>
Returns a reference to the value type contained with the specified box object.
</summary>
<typeparam name="T">The type of the value type contained within the box.</typeparam>
<param name="box">The boxed value type.</param>
<returns>A reference to a value of type <typeparamref name="T"/> in the box object.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Add``1(``0@,System.Int32)">
<summary>
Adds an element offset to the given reference.
</summary>
<typeparam name="T">The type of reference.</typeparam>
<param name="source">The reference to add the offset to.</param>
<param name="elementOffset">The offset to add.</param>
<returns>A new reference that reflects the addition of offset to pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Add``1(System.Void*,System.Int32)">
<summary>
Adds an element offset to the given pointer.
</summary>
<typeparam name="T">The type of reference.</typeparam>
<param name="source">The pointer to add the offset to.</param>
<param name="elementOffset">The offset to add.</param>
<returns>A new pointer that reflects the addition of offset to pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Add``1(``0@,System.IntPtr)">
<summary>
Adds an element offset to the given reference.
</summary>
<typeparam name="T">The type of reference.</typeparam>
<param name="source">The reference to add the offset to.</param>
<param name="elementOffset">The offset to add.</param>
<returns>A new reference that reflects the addition of offset to pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.AddByteOffset``1(``0@,System.IntPtr)">
<summary>
Adds a byte offset to the given reference.
</summary>
<typeparam name="T">The type of reference.</typeparam>
<param name="source">The reference to add the offset to.</param>
<param name="byteOffset">The offset to add.</param>
<returns>A new reference that reflects the addition of byte offset to pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Subtract``1(``0@,System.Int32)">
<summary>
Subtracts an element offset from the given reference.
</summary>
<typeparam name="T">The type of reference.</typeparam>
<param name="source">The reference to subtract the offset from.</param>
<param name="elementOffset">The offset to subtract.</param>
<returns>A new reference that reflects the subraction of offset from pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.Subtract``1(``0@,System.IntPtr)">
<summary>
Subtracts an element offset from the given reference.
</summary>
<typeparam name="T">The type of reference.</typeparam>
<param name="source">The reference to subtract the offset from.</param>
<param name="elementOffset">The offset to subtract.</param>
<returns>A new reference that reflects the subraction of offset from pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.SubtractByteOffset``1(``0@,System.IntPtr)">
<summary>
Subtracts a byte offset from the given reference.
</summary>
<typeparam name="T">The type of reference.</typeparam>
<param name="source">The reference to subtract the offset from.</param>
<param name="byteOffset">The offset to subtract.</param>
<returns>A new reference that reflects the subraction of byte offset from pointer.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.ByteOffset``1(``0@,``0@)">
<summary>
Determines the byte offset from origin to target from the given references.
</summary>
<typeparam name="T">The type of reference.</typeparam>
<param name="origin">The reference to origin.</param>
<param name="target">The reference to target.</param>
<returns>Byte offset from origin to target i.e. <paramref name="target"/> - <paramref name="origin"/>.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.AreSame``1(``0@,``0@)">
<summary>
Determines whether the specified references point to the same location.
</summary>
<param name="left">The first reference to compare.</param>
<param name="right">The second reference to compare.</param>
<returns><c>true</c> if <paramref name="left"/> and <paramref name="right"/> point to the same location; otherwise <c>false</c>.</returns>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.IsAddressGreaterThan``1(``0@,``0@)">
<summary>
Determines whether the memory address referenced by <paramref name="left"/> is greater than the memory address referenced by <paramref name="right"/>.
</summary>
<param name="left">The first reference to compare.</param>
<param name="right">The second reference to compare.</param>
<returns><c>true</c> if the memory address referenced by <paramref name="left"/> is greater than the memory address referenced by <paramref name="right"/>; otherwise <c>false</c>.</returns>
<remarks>
This check is conceptually similar to "(void*)(&left) > (void*)(&right)". Both parameters must reference the same object, array, or span;
or the objects being referenced must both be pinned; or both references must represent unmanaged pointers; otherwise the result is undefined.
</remarks>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.IsAddressLessThan``1(``0@,``0@)">
<summary>
Determines whether the memory address referenced by <paramref name="left"/> is less than the memory address referenced by <paramref name="right"/>.
</summary>
<param name="left">The first reference to compare.</param>
<param name="right">The second reference to compare.</param>
<returns><c>true</c> if the memory address referenced by <paramref name="left"/> is less than the memory address referenced by <paramref name="right"/>; otherwise <c>false</c>.</returns>
<remarks>
This check is conceptually similar to "(void*)(&left) < (void*)(&right)". Both parameters must reference the same object, array, or span;
or the objects being referenced must both be pinned; or both references must represent unmanaged pointers; otherwise the result is undefined.
</remarks>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlock(System.Void*,System.Void*,System.UInt32)">
<summary>
Copies bytes from the source address to the destination address.
</summary>
<param name="destination">The destination address to copy to.</param>
<param name="source">The source address to copy from.</param>
<param name="byteCount">The number of bytes to copy.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlock(System.Byte@,System.Byte@,System.UInt32)">
<summary>
Copies bytes from the source address to the destination address.
</summary>
<param name="destination">The destination address to copy to.</param>
<param name="source">The source address to copy from.</param>
<param name="byteCount">The number of bytes to copy.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlockUnaligned(System.Void*,System.Void*,System.UInt32)">
<summary>
Copies bytes from the source address to the destination address
without assuming architecture dependent alignment of the addresses.
</summary>
<param name="destination">The destination address to copy to.</param>
<param name="source">The source address to copy from.</param>
<param name="byteCount">The number of bytes to copy.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlockUnaligned(System.Byte@,System.Byte@,System.UInt32)">
<summary>
Copies bytes from the source address to the destination address
without assuming architecture dependent alignment of the addresses.
</summary>
<param name="destination">The destination address to copy to.</param>
<param name="source">The source address to copy from.</param>
<param name="byteCount">The number of bytes to copy.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlock(System.Void*,System.Byte,System.UInt32)">
<summary>
Initializes a block of memory at the given location with a given initial value.
</summary>
<param name="startAddress">The address of the start of the memory block to initialize.</param>
<param name="value">The value to initialize the block to.</param>
<param name="byteCount">The number of bytes to initialize.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlock(System.Byte@,System.Byte,System.UInt32)">
<summary>
Initializes a block of memory at the given location with a given initial value.
</summary>
<param name="startAddress">The address of the start of the memory block to initialize.</param>
<param name="value">The value to initialize the block to.</param>
<param name="byteCount">The number of bytes to initialize.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlockUnaligned(System.Void*,System.Byte,System.UInt32)">
<summary>
Initializes a block of memory at the given location with a given initial value
without assuming architecture dependent alignment of the address.
</summary>
<param name="startAddress">The address of the start of the memory block to initialize.</param>
<param name="value">The value to initialize the block to.</param>
<param name="byteCount">The number of bytes to initialize.</param>
</member>
<member name="M:System.Runtime.CompilerServices.Unsafe.InitBlockUnaligned(System.Byte@,System.Byte,System.UInt32)">
<summary>
Initializes a block of memory at the given location with a given initial value
without assuming architecture dependent alignment of the address.
</summary>
<param name="startAddress">The address of the start of the memory block to initialize.</param>
<param name="value">The value to initialize the block to.</param>
<param name="byteCount">The number of bytes to initialize.</param>
</member>
</members>
</doc>