Invokes the given closure with a buffer pointer covering the raw bytes of the given argument.
func withUnsafeBytes<T, Result>(of value: inout T, _ body: (UnsafeRawBufferPointer) throws -> Result) rethrows -> Result
An instance to temporarily access through a raw buffer pointer. Note that the
inoutexclusivity rules mean that, like any other
valuecannot be directly accessed by other code for the duration of
body. Access must only occur through the pointer argument to
A closure that takes a raw buffer pointer to the bytes of
valueas its sole argument. If the closure has a return value, that value is also used as the return value of the
withUnsafeBytes(of:_:)function. The buffer pointer argument is valid only for the duration of the closure’s execution. It is undefined behavior to attempt to mutate through the pointer by conversion to
UnsafeMutableRawBufferPointeror any other mutable pointer type. If you want to mutate a value by writing through a pointer, use
The return value, if any, of the
The buffer pointer argument to the
body closure provides a collection interface to the raw bytes of
value. The buffer is the size of the instance passed as
value and does not include any remote storage.