RX實現.jpg
.rx的實現原理
關聯類型。
主要實現ReactiveCompatible協議,實現了這個協議的都會有rx。萬物皆rx
/// Extend NSObject with `rx` proxy.
extension ReactiveCompatible {
/// Reactive extensions.
public static var rx: Reactive<Self>.Type {
get {
return Reactive<Self>.self
}
set {
// this enables using Reactive to "mutate" base type
}
}
/// Reactive extensions.
public var rx: Reactive<Self> {
get {
return Reactive(self)
}
set {
// this enables using Reactive to "mutate" base object
}
}
}
extension NSObject: ReactiveCompatible { }