Contents

withUnsafeBytes(_:)

Calls the given closure with a pointer to the underlying bytes of the viewed contiguous storage.

Declaration

func withUnsafeBytes<E, Result>(_ body: (UnsafeRawBufferPointer) throws(E) -> Result) throws(E) -> Result where E : Error, Result : ~Copyable

Parameters

  • body:

    A closure with an UnsafeRawBufferPointer parameter that points to the viewed contiguous storage. If body has a return value, that value is also used as the return value for the withUnsafeBytes(_:) method. The closure’s parameter is valid only for the duration of its execution.

Return Value

The return value of the body closure parameter.

Discussion

The buffer pointer passed as an argument to body is valid only during the execution of withUnsafeBytes(_:). Do not store or return the pointer for later use.

Note: For an empty Span, the closure always receives a nil pointer.