func toShutDownCPointer()

in Source/AwsCommonRuntimeKit/crt/ShutDownCallbackOptions.swift [21:34]


    func toShutDownCPointer() -> UnsafePointer<aws_shutdown_callback_options>? {
        let shutDownPtr: UnsafeMutablePointer<ShutDownCallbackOptions>? = fromOptionalPointer(ptr: self)
        let options = aws_shutdown_callback_options(shutdown_callback_fn: { (userData) in
            guard let userdata = userData else {
                return
            }
            let pointer = userdata.assumingMemoryBound(to: ShutDownCallbackOptions.self)
            pointer.pointee.shutDownCallback(pointer.pointee.semaphore)
            pointer.deinitializeAndDeallocate()
        }, shutdown_callback_user_data: shutDownPtr)
        let ptr: UnsafePointer<aws_shutdown_callback_options>? = fromOptionalPointer(ptr: options)

        return ptr
    }