adwaita-swift/Sources/Adwaita/Model/Extensions/UnsafeMutablePointer.swift
david-swift 04c77831b5
Some checks are pending
Deploy Docs / publish (push) Waiting to run
SwiftLint / SwiftLint (push) Waiting to run
Remove Core library
2025-10-30 21:36:13 +01:00

24 lines
598 B
Swift

//
// UnsafeMutablePointer.swift
// Adwaita
//
// Created by david-swift on 15.01.24.
//
extension UnsafeMutablePointer {
/// Convert into an opaque pointer.
/// - Returns: The opaque pointer.
public func opaque() -> OpaquePointer {
.init(self)
}
/// Convert into an unsafe mutable pointer of another type.
/// - Returns: The unsafe mutable pointer.
public func cast<T>() -> UnsafeMutablePointer<T> {
let pointer = UnsafeMutableRawPointer(self).bindMemory(to: T.self, capacity: 1)
return UnsafeMutablePointer<T>(mutating: pointer)
}
}