-
Notifications
You must be signed in to change notification settings - Fork 10.4k
/
Copy pathDispatchTypes.swift
42 lines (35 loc) · 1.47 KB
/
DispatchTypes.swift
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
// RUN: %target-swift-frontend -typecheck %s
// REQUIRES: libdispatch
// UNSUPPORTED: OS=linux-gnu
// UNSUPPORTED: OS=linux-android
// UNSUPPORTED: OS=openbsd
import Dispatch
func getAnyValue<T>(_ opt: T?) -> T { return opt! }
// dispatch/io.h
let io = DispatchIO(type: .stream, fileDescriptor: 0, queue: DispatchQueue.main, cleanupHandler: { (error: Int32) -> () in fatalError() })
io.close(flags: .stop)
io.setInterval(interval: .seconds(0), flags: .strictInterval)
// dispatch/queue.h
let q = DispatchQueue(label: "", attributes: [])
_ = DispatchQueue(label: "", attributes: .concurrent)
_ = q.label
if #available(OSX 10.10, iOS 8.0, *) {
_ = DispatchQueue.global(qos: .userInteractive)
_ = DispatchQueue.global(qos: .background)
_ = DispatchQueue.global(qos: .default)
}
// dispatch/source.h
_ = DispatchSource.makeUserDataAddSource()
_ = DispatchSource.makeUserDataOrSource()
_ = DispatchSource.makeMachSendSource(port: mach_port_t(0), eventMask: [])
_ = DispatchSource.makeMachReceiveSource(port: mach_port_t(0))
_ = DispatchSource.makeMemoryPressureSource(eventMask: [])
_ = DispatchSource.makeProcessSource(identifier: 0, eventMask: [])
_ = DispatchSource.makeReadSource(fileDescriptor: 0)
_ = DispatchSource.makeSignalSource(signal: SIGINT)
_ = DispatchSource.makeTimerSource()
_ = DispatchSource.makeFileSystemObjectSource(fileDescriptor: 0, eventMask: [])
_ = DispatchSource.makeWriteSource(fileDescriptor: 0)
// dispatch/time.h
_ = DispatchTime.now()
_ = DispatchTime.distantFuture