Contents

withUnsafeMutableBufferPointer(ofType:_:)

Calls a given closure with a raw pointer to the multiarray’s mutable storage.

Declaration

func withUnsafeMutableBufferPointer<S, R>(ofType type: S.Type, _ body: (UnsafeMutableBufferPointer<S>, [Int]) throws -> R) rethrows -> R where S : MLShapedArrayScalar

Parameters

  • type:

    The element type of the buffer passed in the body. This must be a Swift primitive type equivalent to dataType.

  • body:

    A closure with an Unsafemutablebufferpointer parameter that points to the storage for the multiarray and its strides. This closure takes the following parameters:

    ptr

    The pointer to the buffer.

    strides

    The strides of the buffer in scalars. Note that this may be different from strides’s value prior to this method invocation.

Discussion

The buffer contains a collection of int32, float16, float32, or float64 values, depending on the multiarray’s data type. It may not store these scalar values contiguously; use strides to get the buffer layout.

See Also

Providing buffer access