System.Runtime.CompilerServices.Unsafe
Contains generic, low-level functionality for manipulating pointers.
Reads a value of type from the given location.
The type to read.
The location to read from.
An object of type read from the given location.
Reads a value of type from the given location.
The type to read.
The location to read from.
An object of type read from the given location.
Reads a value of type from the given location.
The type to read.
The location to read from.
An object of type read from the given location.
Writes a value of type to the given location.
The type of value to write.
The location to write to.
The value to write.
Writes a value of type to the given location.
The type of value to write.
The location to write to.
The value to write.
Writes a value of type to the given location.
The type of value to write.
The location to write to.
The value to write.
Copies a value of type to the given location.
The type of value to copy.
The location to copy to.
A reference to the value to copy.
Copies a value of type to the given location.
The type of value to copy.
The location to copy to.
A pointer to the value to copy.
Returns a pointer to the given by-ref parameter.
The type of object.
The object whose pointer is obtained.
A pointer to the given value.
Returns the size of an object of the given type parameter.
The type of object whose size is retrieved.
The size of an object of type .
Casts the given object to the specified type, performs no dynamic type checking.
The type which the object will be cast to.
The object to cast.
The original object, casted to the given type.
Reinterprets the given location as a reference to a value of type .
The type of the interpreted location.
The location of the value to reference.
A reference to a value of type .
Reinterprets the given read-only reference as a reference.
The type of reference.
The read-only reference to reinterpret.
A reference to a value of type .
Reinterprets the given reference as a reference to a value of type .
The type of reference to reinterpret.
The desired type of the reference.
The reference to reinterpret.
A reference to a value of type .
Returns a reference to the value type contained with the specified box object.
The type of the value type contained within the box.
The boxed value type.
A reference to a value of type in the box object.
Adds an element offset to the given reference.
The type of reference.
The reference to add the offset to.
The offset to add.
A new reference that reflects the addition of offset to pointer.
Adds an element offset to the given pointer.
The type of reference.
The pointer to add the offset to.
The offset to add.
A new pointer that reflects the addition of offset to pointer.
Adds an element offset to the given reference.
The type of reference.
The reference to add the offset to.
The offset to add.
A new reference that reflects the addition of offset to pointer.
Adds a byte offset to the given reference.
The type of reference.
The reference to add the offset to.
The offset to add.
A new reference that reflects the addition of byte offset to pointer.
Subtracts an element offset from the given reference.
The type of reference.
The reference to subtract the offset from.
The offset to subtract.
A new reference that reflects the subraction of offset from pointer.
Subtracts an element offset from the given reference.
The type of reference.
The reference to subtract the offset from.
The offset to subtract.
A new reference that reflects the subraction of offset from pointer.
Subtracts a byte offset from the given reference.
The type of reference.
The reference to subtract the offset from.
The offset to subtract.
A new reference that reflects the subraction of byte offset from pointer.
Determines the byte offset from origin to target from the given references.
The type of reference.
The reference to origin.
The reference to target.
Byte offset from origin to target i.e. - .
Determines whether the specified references point to the same location.
The first reference to compare.
The second reference to compare.
true if and point to the same location; otherwise false.
Determines whether the memory address referenced by is greater than the memory address referenced by .
The first reference to compare.
The second reference to compare.
true if the memory address referenced by is greater than the memory address referenced by ; otherwise false.
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.
Determines whether the memory address referenced by is less than the memory address referenced by .
The first reference to compare.
The second reference to compare.
true if the memory address referenced by is less than the memory address referenced by ; otherwise false.
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.
Copies bytes from the source address to the destination address.
The destination address to copy to.
The source address to copy from.
The number of bytes to copy.
Copies bytes from the source address to the destination address.
The destination address to copy to.
The source address to copy from.
The number of bytes to copy.
Copies bytes from the source address to the destination address
without assuming architecture dependent alignment of the addresses.
The destination address to copy to.
The source address to copy from.
The number of bytes to copy.
Copies bytes from the source address to the destination address
without assuming architecture dependent alignment of the addresses.
The destination address to copy to.
The source address to copy from.
The number of bytes to copy.
Initializes a block of memory at the given location with a given initial value.
The address of the start of the memory block to initialize.
The value to initialize the block to.
The number of bytes to initialize.
Initializes a block of memory at the given location with a given initial value.
The address of the start of the memory block to initialize.
The value to initialize the block to.
The number of bytes to initialize.
Initializes a block of memory at the given location with a given initial value
without assuming architecture dependent alignment of the address.
The address of the start of the memory block to initialize.
The value to initialize the block to.
The number of bytes to initialize.
Initializes a block of memory at the given location with a given initial value
without assuming architecture dependent alignment of the address.
The address of the start of the memory block to initialize.
The value to initialize the block to.
The number of bytes to initialize.