On 13 May 2016, at 06:24, Zach Waldowski via swift-users
<[email protected]> wrote:
> Problems are just like any context-based C API, you need to squeeze all
… and the best way to do that is to use a closure.
typealias CGPathApplierBlock = @convention(block) (CGPathElement) -> Void
func CGPathApplyBlock(path: CGPath, @noescape block: CGPathApplierBlock) {
CGPathApply(path, unsafeBitCast(block, UnsafeMutablePointer<Void>.self), {
info, element in
let block2 = unsafeBitCast(info, CGPathApplierBlock.self)
block2(element.memory)
})
}
Share and Enjoy
--
Quinn "The Eskimo!" <http://www.apple.com/developer/>
Apple Developer Relations, Developer Technical Support, Core OS/Hardware
_______________________________________________
swift-users mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-users