initialize(from:)
Initializes the buffer slice’s memory with the given elements.
Declaration
func initialize<S>(from source: S) -> (unwritten: S.Iterator, index: Slice<Base>.Index) where Base == UnsafeMutableBufferPointer<S.Element>, S : SequenceParameters
- source:
A sequence of elements with which to initialize the buffer.
Return Value
An iterator to any elements of source that didn’t fit in the buffer, and an index to the next uninitialized element in the buffer.
Discussion
Prior to calling the initialize(from:) method on a buffer slice, the memory it references must be uninitialized, or the Element type must be a trivial type. After the call, the memory referenced by the buffer slice up to, but not including, the returned index is initialized. The buffer slice must contain sufficient memory to accommodate source.underestimatedCount.
The returned index is the position of the next uninitialized element in the buffer slice, which is one past the last element written. If source contains no elements, the returned index is equal to the buffer’s startIndex. If source contains an equal or greater number of elements than the buffer slice can hold, the returned index is equal to the buffer’s endIndex.