Slide 38
Slide 38 text
extension CADisplayLink {
struct Publisher: Combine.Publisher {
typealias Output = CADisplayLink
typealias Failure = Never
var runLoop: RunLoop
var mode: RunLoop.Mode
var preferredFramesPerSecond: Int
func receive(subscriber: S) where Failure == S.Failure, Output == S.Input {
let subscription = Subscription(
subscriber: subscriber,
runLoop: runLoop,
mode: mode,
preferredFramesPerSecond: preferredFramesPerSecond
)
subscriber.receive(subscription: subscription)
}
}
}