1 <?xml version="1.0" encoding="utf-8"?><doc>
3 <name>System.Runtime.CompilerServices.Unsafe</name>
6 <member name="T:System.Runtime.CompilerServices.Unsafe">
7 <summary>Contains generic, low-level functionality for manipulating pointers.</summary>
9 <member name="M:System.Runtime.CompilerServices.Unsafe.Add``1(``0@,System.Int32)">
10 <summary>Adds an element offset to the given reference.</summary>
11 <param name="source">The reference to add the offset to.</param>
12 <param name="elementOffset">The offset to add.</param>
13 <typeparam name="T">The type of reference.</typeparam>
14 <returns>A new reference that reflects the addition of offset to pointer.</returns>
16 <member name="M:System.Runtime.CompilerServices.Unsafe.Add``1(``0@,System.IntPtr)">
17 <summary>Adds an element offset to the given reference.</summary>
18 <param name="source">The reference to add the offset to.</param>
19 <param name="elementOffset">The offset to add.</param>
20 <typeparam name="T">The type of reference.</typeparam>
21 <returns>A new reference that reflects the addition of offset to pointer.</returns>
23 <member name="M:System.Runtime.CompilerServices.Unsafe.AddByteOffset``1(``0@,System.IntPtr)">
24 <summary>Adds a byte offset to the given reference.</summary>
25 <param name="source">The reference to add the offset to.</param>
26 <param name="byteOffset">The offset to add.</param>
27 <typeparam name="T">The type of reference.</typeparam>
28 <returns>A new reference that reflects the addition of byte offset to pointer.</returns>
30 <member name="M:System.Runtime.CompilerServices.Unsafe.AreSame``1(``0@,``0@)">
31 <summary>Determines whether the specified references point to the same location.</summary>
32 <param name="left">The first reference to compare.</param>
33 <param name="right">The second reference to compare.</param>
34 <typeparam name="T">The type of reference.</typeparam>
35 <returns>true if <paramref name="left">left</paramref> and <paramref name="right">right</paramref> point to the same location; otherwise, false.</returns>
37 <member name="M:System.Runtime.CompilerServices.Unsafe.As``1(System.Object)">
38 <summary>Casts the given object to the specified type.</summary>
39 <param name="o">The object to cast.</param>
40 <typeparam name="T">The type which the object will be cast to.</typeparam>
41 <returns>The original object, casted to the given type.</returns>
43 <member name="M:System.Runtime.CompilerServices.Unsafe.As``2(``0@)">
44 <summary>Reinterprets the given reference as a reference to a value of type <typeparamref name="TTo">TTo</typeparamref>.</summary>
45 <param name="source">The reference to reinterpret.</param>
46 <typeparam name="TFrom">The type of reference to reinterpret..</typeparam>
47 <typeparam name="TTo">The desired type of the reference.</typeparam>
48 <returns>A reference to a value of type <typeparamref name="TTo">TTo</typeparamref>.</returns>
50 <member name="M:System.Runtime.CompilerServices.Unsafe.AsPointer``1(``0@)">
51 <summary>Returns a pointer to the given by-ref parameter.</summary>
52 <param name="value">The object whose pointer is obtained.</param>
53 <typeparam name="T">The type of object.</typeparam>
54 <returns>A pointer to the given value.</returns>
56 <member name="M:System.Runtime.CompilerServices.Unsafe.AsRef``1(System.Void*)">
57 <summary>Reinterprets the given location as a reference to a value of type <typeparamref name="T">T</typeparamref>.</summary>
58 <param name="source">The location of the value to reference.</param>
59 <typeparam name="T">The type of the interpreted location.</typeparam>
60 <returns>A reference to a value of type <typeparamref name="T">T</typeparamref>.</returns>
62 <member name="M:System.Runtime.CompilerServices.Unsafe.ByteOffset``1(``0@,``0@)">
63 <summary>Determines the byte offset from origin to target from the given references.</summary>
64 <param name="origin">The reference to origin.</param>
65 <param name="target">The reference to target.</param>
66 <typeparam name="T">The type of reference.</typeparam>
67 <returns>Byte offset from origin to target i.e. <paramref name="target">target</paramref> - <paramref name="origin">origin</paramref>.</returns>
69 <member name="M:System.Runtime.CompilerServices.Unsafe.Copy``1(System.Void*,``0@)">
70 <summary>Copies a value of type <typeparamref name="T">T</typeparamref> to the given location.</summary>
71 <param name="destination">The location to copy to.</param>
72 <param name="source">A reference to the value to copy.</param>
73 <typeparam name="T">The type of value to copy.</typeparam>
75 <member name="M:System.Runtime.CompilerServices.Unsafe.Copy``1(``0@,System.Void*)">
76 <summary>Copies a value of type <typeparamref name="T">T</typeparamref> to the given location.</summary>
77 <param name="destination">The location to copy to.</param>
78 <param name="source">A pointer to the value to copy.</param>
79 <typeparam name="T">The type of value to copy.</typeparam>
81 <member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlock(System.Byte@,System.Byte@,System.UInt32)">
82 <summary>Copies bytes from the source address to the destination address.</summary>
83 <param name="destination">The destination address to copy to.</param>
84 <param name="source">The source address to copy from.</param>
85 <param name="byteCount">The number of bytes to copy.</param>
87 <member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlock(System.Void*,System.Void*,System.UInt32)">
88 <summary>Copies bytes from the source address to the destination address.</summary>
89 <param name="destination">The destination address to copy to.</param>
90 <param name="source">The source address to copy from.</param>
91 <param name="byteCount">The number of bytes to copy.</param>
93 <member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlockUnaligned(System.Void*,System.Void*,System.UInt32)">
94 <summary>Copies bytes from the source address to the destination address
95 without assuming architecture dependent alignment of the addresses.</summary>
96 <param name="destination">The destination address to copy to.</param>
97 <param name="source">The source address to copy from.</param>
98 <param name="byteCount">The number of bytes to copy.</param>
100 <member name="M:System.Runtime.CompilerServices.Unsafe.CopyBlockUnaligned(System.Byte@,System.Byte@,System.UInt32)">
101 <summary>Copies bytes from the source address to the destination address
102 without assuming architecture dependent alignment of the addresses.</summary>
103 <param name="destination">The destination address to copy to.</param>
104 <param name="source">The source address to copy from.</param>
105 <param name="byteCount">The number of bytes to copy.</param>
107 <member name="M:System.Runtime.CompilerServices.Unsafe.InitBlock(System.Byte@,System.Byte,System.UInt32)">
108 <summary>Initializes a block of memory at the given location with a given initial value.</summary>
109 <param name="startAddress">The address of the start of the memory block to initialize.</param>
110 <param name="value">The value to initialize the block to.</param>
111 <param name="byteCount">The number of bytes to initialize.</param>
113 <member name="M:System.Runtime.CompilerServices.Unsafe.InitBlock(System.Void*,System.Byte,System.UInt32)">
114 <summary>Initializes a block of memory at the given location with a given initial value.</summary>
115 <param name="startAddress">The address of the start of the memory block to initialize.</param>
116 <param name="value">The value to initialize the block to.</param>
117 <param name="byteCount">The number of bytes to initialize.</param>
119 <member name="M:System.Runtime.CompilerServices.Unsafe.InitBlockUnaligned(System.Byte@,System.Byte,System.UInt32)">
120 <summary>Initializes a block of memory at the given location with a given initial value
121 without assuming architecture dependent alignment of the address.</summary>
122 <param name="startAddress">The address of the start of the memory block to initialize.</param>
123 <param name="value">The value to initialize the block to.</param>
124 <param name="byteCount">The number of bytes to initialize.</param>
126 <member name="M:System.Runtime.CompilerServices.Unsafe.InitBlockUnaligned(System.Void*,System.Byte,System.UInt32)">
127 <summary>Initializes a block of memory at the given location with a given initial value
128 without assuming architecture dependent alignment of the address.</summary>
129 <param name="startAddress">The address of the start of the memory block to initialize.</param>
130 <param name="value">The value to initialize the block to.</param>
131 <param name="byteCount">The number of bytes to initialize.</param>
133 <member name="M:System.Runtime.CompilerServices.Unsafe.Read``1(System.Void*)">
134 <summary>Reads a value of type <typeparamref name="T">T</typeparamref> from the given location.</summary>
135 <param name="source">The location to read from.</param>
136 <typeparam name="T">The type to read.</typeparam>
137 <returns>An object of type <typeparamref name="T">T</typeparamref> read from the given location.</returns>
139 <member name="M:System.Runtime.CompilerServices.Unsafe.ReadUnaligned``1(System.Byte@)">
140 <summary>Reads a value of type <typeparamref name="T">T</typeparamref> from the given location
141 without assuming architecture dependent alignment of the addresses.</summary>
142 <param name="source">The location to read from.</param>
143 <typeparam name="T">The type to read.</typeparam>
144 <returns>An object of type <typeparamref name="T">T</typeparamref> read from the given location.</returns>
146 <member name="M:System.Runtime.CompilerServices.Unsafe.ReadUnaligned``1(System.Void*)">
147 <summary>Reads a value of type <typeparamref name="T">T</typeparamref> from the given location
148 without assuming architecture dependent alignment of the addresses.</summary>
149 <param name="source">The location to read from.</param>
150 <typeparam name="T">The type to read.</typeparam>
151 <returns>An object of type <typeparamref name="T">T</typeparamref> read from the given location.</returns>
153 <member name="M:System.Runtime.CompilerServices.Unsafe.SizeOf``1">
154 <summary>Returns the size of an object of the given type parameter.</summary>
155 <typeparam name="T">The type of object whose size is retrieved.</typeparam>
156 <returns>The size of an object of type <typeparamref name="T">T</typeparamref>.</returns>
158 <member name="M:System.Runtime.CompilerServices.Unsafe.Subtract``1(``0@,System.Int32)">
159 <summary>Subtracts an element offset from the given reference.</summary>
160 <param name="source">The reference to subtract the offset from.</param>
161 <param name="elementOffset">The offset to subtract.</param>
162 <typeparam name="T">The type of reference.</typeparam>
163 <returns>A new reference that reflects the subraction of offset from pointer.</returns>
165 <member name="M:System.Runtime.CompilerServices.Unsafe.Subtract``1(``0@,System.IntPtr)">
166 <summary>Subtracts an element offset from the given reference.</summary>
167 <param name="source">The reference to subtract the offset from.</param>
168 <param name="elementOffset">The offset to subtract.</param>
169 <typeparam name="T">The type of reference.</typeparam>
170 <returns>A new reference that reflects the subraction of offset from pointer.</returns>
172 <member name="M:System.Runtime.CompilerServices.Unsafe.SubtractByteOffset``1(``0@,System.IntPtr)">
173 <summary>Subtracts a byte offset from the given reference.</summary>
174 <param name="source">The reference to subtract the offset from.</param>
175 <param name="byteOffset"></param>
176 <typeparam name="T">The type of reference.</typeparam>
177 <returns>A new reference that reflects the subraction of byte offset from pointer.</returns>
179 <member name="M:System.Runtime.CompilerServices.Unsafe.Write``1(System.Void*,``0)">
180 <summary>Writes a value of type <typeparamref name="T">T</typeparamref> to the given location.</summary>
181 <param name="destination">The location to write to.</param>
182 <param name="value">The value to write.</param>
183 <typeparam name="T">The type of value to write.</typeparam>
185 <member name="M:System.Runtime.CompilerServices.Unsafe.WriteUnaligned``1(System.Byte@,``0)">
186 <summary>Writes a value of type <typeparamref name="T">T</typeparamref> to the given location
187 without assuming architecture dependent alignment of the addresses.</summary>
188 <param name="destination">The location to write to.</param>
189 <param name="value">The value to write.</param>
190 <typeparam name="T">The type of value to write.</typeparam>
192 <member name="M:System.Runtime.CompilerServices.Unsafe.WriteUnaligned``1(System.Void*,``0)">
193 <summary>Writes a value of type <typeparamref name="T">T</typeparamref> to the given location
194 without assuming architecture dependent alignment of the addresses.</summary>
195 <param name="destination">The location to write to.</param>
196 <param name="value">The value to write.</param>
197 <typeparam name="T">The type of value to write.</typeparam>