Этот код был прекрасным (в том смысле, что компилятор не жаловался):
extension OutputStream {
func write(_ data: Data) -> Int {
return data.withUnsafeBytes { pointer in
return self.write(pointer, maxLength: data.count)
}
}
}
Начиная с Swift 5.0, появляется предупреждение:
Предупреждение: withUnsafeBytes устарел: вместо этого используйте
withUnsafeBytes<R>(_: (UnsafeRawBufferPointer) throws -> R) rethrows -> R
Я пробовал использовать предложенный метод, но, похоже, не могу превратить UnsafeRawBufferPointer в UnsafePointer<UInt8>, который в конечном итоге требует OutputStream.write.
Как я могу написать эту функцию без поддержки устаревших методов?