adwaita-swift/Sources/Adwaita/Model/Extensions/UnsafeMutablePointer.swift
david-swift d8de611510 Add support for auto-generated widget bindings
Additionally fix an update problem occurring with custom views
2024-01-22 21:45:31 +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)
}
}