Invokes the given closure with a pointer to the given argument.
func withUnsafePointer<T, Result>(to value: inout T, _ body: (UnsafePointer<T>) throws -> Result) rethrows -> Result
An instance to temporarily use via 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 pointer to
valueas its sole argument. If the closure has a return value, that value is also used as the return value of the
withUnsafePointer(to:_:)function. The pointer argument is valid only for the duration of the function’s execution. It is undefined behavior to try to mutate through the pointer argument by converting it to
UnsafeMutablePointeror any other mutable pointer type. If you need to mutate the argument through the pointer, use
The return value, if any, of the
withUnsafePointer(to:_:) function is useful for calling Objective-C APIs that take in parameters by const pointer.
The pointer argument to
body is valid only during the execution of
withUnsafePointer(to:_:). Do not store or return the pointer for later use.