withUnsafeMutablePointer

func withUnsafeMutablePointer<T, Result>(to: inout T, _: (UnsafeMutablePointer<T>) throws -> Result)

Invokes the given closure with a mutable pointer to the given argument.

The withUnsafeMutablePointer(to:_:) function is useful for calling Objective-C APIs that take in/out parameters (and default-constructible out parameters) by pointer.

The pointer argument to body is valid only for the lifetime of the closure. Do not escape it from the closure for later use.

Parameters: arg: An instance to temporarily use via pointer. body: A closure that takes a mutable pointer to arg as its sole argument. If the closure has a return value, it is used as the return value of the withUnsafeMutablePointer(to:_:) function. The pointer argument is valid only for the duration of the closure's execution. Returns: The return value of the body closure, if any.

See Also: withUnsafePointer(to:_:)

Declaration

func withUnsafeMutablePointer<T, Result>(to arg: inout T, _ body: (UnsafeMutablePointer<T>) throws -> Result) rethrows -> Result