mirror of
https://github.com/ReactiveX/RxSwift.git
synced 2024-10-04 05:57:23 +03:00
Rename S to SharingStrategy
This commit is contained in:
parent
d4239bd006
commit
7904405433
@ -22,6 +22,7 @@ If you're using Xcode 10.1 and below, please use [RxSwift 4.5](https://github.co
|
||||
|
||||
### Anomalies
|
||||
|
||||
* The `S` generic constraint on `SharedSequence` has been renamed to `SharingStrategy`. #1951
|
||||
* The `E` associated type on `ObservableConvertibleType` and `ObserverType` have been renamed to `Element`. #1945
|
||||
* The `C` and `S` associated types have been renamed to `Collection` and `Sequence` accordingly. #1949
|
||||
* Renamed `ElementType` associatedtype to `Element`. #1945
|
||||
|
@ -562,7 +562,7 @@ extension SharedSequence where Element : RxAbstractInteger {
|
||||
*/
|
||||
@available(*, deprecated, message: "Use DispatchTimeInterval overload instead.", renamed: "interval(_:)")
|
||||
public static func interval(_ period: Foundation.TimeInterval)
|
||||
-> SharedSequence<S, Element> {
|
||||
-> SharedSequence<SharingStrategy, Element> {
|
||||
return interval(.milliseconds(Int(period * 1000.0)))
|
||||
}
|
||||
}
|
||||
@ -581,7 +581,7 @@ extension SharedSequence where Element: RxAbstractInteger {
|
||||
*/
|
||||
@available(*, deprecated, message: "Use DispatchTimeInterval overload instead.", renamed: "timer(_:)")
|
||||
public static func timer(_ dueTime: Foundation.TimeInterval, period: Foundation.TimeInterval)
|
||||
-> SharedSequence<S, Element> {
|
||||
-> SharedSequence<SharingStrategy, Element> {
|
||||
return timer(.milliseconds(Int(dueTime * 1000.0)), period: .milliseconds(Int(period * 1000.0)))
|
||||
}
|
||||
}
|
||||
|
@ -19,13 +19,11 @@ import RxSwift
|
||||
|
||||
To find out more about units and how to use them, please visit `Documentation/Traits.md`.
|
||||
*/
|
||||
public struct SharedSequence<S: SharingStrategyProtocol, Element> : SharedSequenceConvertibleType {
|
||||
public typealias SharingStrategy = S
|
||||
|
||||
public struct SharedSequence<SharingStrategy: SharingStrategyProtocol, Element> : SharedSequenceConvertibleType {
|
||||
let _source: Observable<Element>
|
||||
|
||||
init(_ source: Observable<Element>) {
|
||||
self._source = S.share(source)
|
||||
self._source = SharingStrategy.share(source)
|
||||
}
|
||||
|
||||
init(raw: Observable<Element>) {
|
||||
@ -104,8 +102,8 @@ extension SharedSequence {
|
||||
|
||||
- returns: An observable sequence with no elements.
|
||||
*/
|
||||
public static func empty() -> SharedSequence<S, Element> {
|
||||
return SharedSequence(raw: Observable.empty().subscribeOn(S.scheduler))
|
||||
public static func empty() -> SharedSequence<SharingStrategy, Element> {
|
||||
return SharedSequence(raw: Observable.empty().subscribeOn(SharingStrategy.scheduler))
|
||||
}
|
||||
|
||||
/**
|
||||
@ -113,7 +111,7 @@ extension SharedSequence {
|
||||
|
||||
- returns: An observable sequence whose observers will never get called.
|
||||
*/
|
||||
public static func never() -> SharedSequence<S, Element> {
|
||||
public static func never() -> SharedSequence<SharingStrategy, Element> {
|
||||
return SharedSequence(raw: Observable.never())
|
||||
}
|
||||
|
||||
@ -123,8 +121,8 @@ extension SharedSequence {
|
||||
- parameter element: Single element in the resulting observable sequence.
|
||||
- returns: An observable sequence containing the single specified element.
|
||||
*/
|
||||
public static func just(_ element: Element) -> SharedSequence<S, Element> {
|
||||
return SharedSequence(raw: Observable.just(element).subscribeOn(S.scheduler))
|
||||
public static func just(_ element: Element) -> SharedSequence<SharingStrategy, Element> {
|
||||
return SharedSequence(raw: Observable.just(element).subscribeOn(SharingStrategy.scheduler))
|
||||
}
|
||||
|
||||
/**
|
||||
@ -133,8 +131,8 @@ extension SharedSequence {
|
||||
- parameter observableFactory: Observable factory function to invoke for each observer that subscribes to the resulting sequence.
|
||||
- returns: An observable sequence whose observers trigger an invocation of the given observable factory function.
|
||||
*/
|
||||
public static func deferred(_ observableFactory: @escaping () -> SharedSequence<S, Element>)
|
||||
-> SharedSequence<S, Element> {
|
||||
public static func deferred(_ observableFactory: @escaping () -> SharedSequence<SharingStrategy, Element>)
|
||||
-> SharedSequence<SharingStrategy, Element> {
|
||||
return SharedSequence(Observable.deferred { observableFactory().asObservable() })
|
||||
}
|
||||
|
||||
@ -146,8 +144,8 @@ extension SharedSequence {
|
||||
- parameter elements: Elements to generate.
|
||||
- returns: The observable sequence whose elements are pulled from the given arguments.
|
||||
*/
|
||||
public static func of(_ elements: Element ...) -> SharedSequence<S, Element> {
|
||||
let source = Observable.from(elements, scheduler: S.scheduler)
|
||||
public static func of(_ elements: Element ...) -> SharedSequence<SharingStrategy, Element> {
|
||||
let source = Observable.from(elements, scheduler: SharingStrategy.scheduler)
|
||||
return SharedSequence(raw: source)
|
||||
}
|
||||
}
|
||||
@ -161,8 +159,8 @@ extension SharedSequence {
|
||||
|
||||
- returns: The observable sequence whose elements are pulled from the given enumerable sequence.
|
||||
*/
|
||||
public static func from(_ array: [Element]) -> SharedSequence<S, Element> {
|
||||
let source = Observable.from(array, scheduler: S.scheduler)
|
||||
public static func from(_ array: [Element]) -> SharedSequence<SharingStrategy, Element> {
|
||||
let source = Observable.from(array, scheduler: SharingStrategy.scheduler)
|
||||
return SharedSequence(raw: source)
|
||||
}
|
||||
|
||||
@ -187,8 +185,8 @@ extension SharedSequence {
|
||||
|
||||
- returns: An observable sequence containing the wrapped value or not from given optional.
|
||||
*/
|
||||
public static func from(optional: Element?) -> SharedSequence<S, Element> {
|
||||
let source = Observable.from(optional: optional, scheduler: S.scheduler)
|
||||
public static func from(optional: Element?) -> SharedSequence<SharingStrategy, Element> {
|
||||
let source = Observable.from(optional: optional, scheduler: SharingStrategy.scheduler)
|
||||
return SharedSequence(raw: source)
|
||||
}
|
||||
}
|
||||
@ -203,8 +201,8 @@ extension SharedSequence where Element : RxAbstractInteger {
|
||||
- returns: An observable sequence that produces a value after each period.
|
||||
*/
|
||||
public static func interval(_ period: RxTimeInterval)
|
||||
-> SharedSequence<S, Element> {
|
||||
return SharedSequence(Observable.interval(period, scheduler: S.scheduler))
|
||||
-> SharedSequence<SharingStrategy, Element> {
|
||||
return SharedSequence(Observable.interval(period, scheduler: SharingStrategy.scheduler))
|
||||
}
|
||||
}
|
||||
|
||||
@ -221,8 +219,8 @@ extension SharedSequence where Element: RxAbstractInteger {
|
||||
- returns: An observable sequence that produces a value after due time has elapsed and then each period.
|
||||
*/
|
||||
public static func timer(_ dueTime: RxTimeInterval, period: RxTimeInterval)
|
||||
-> SharedSequence<S, Element> {
|
||||
return SharedSequence(Observable.timer(dueTime, period: period, scheduler: S.scheduler))
|
||||
-> SharedSequence<SharingStrategy, Element> {
|
||||
return SharedSequence(Observable.timer(dueTime, period: period, scheduler: SharingStrategy.scheduler))
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -29,7 +29,7 @@ import RxSwift
|
||||
*/
|
||||
public typealias Signal<Element> = SharedSequence<SignalSharingStrategy, Element>
|
||||
|
||||
public struct SignalSharingStrategy : SharingStrategyProtocol {
|
||||
public struct SignalSharingStrategy: SharingStrategyProtocol {
|
||||
public static var scheduler: SchedulerType { return SharingScheduler.make() }
|
||||
|
||||
public static func share<Element>(_ source: Observable<Element>) -> Observable<Element> {
|
||||
|
Loading…
Reference in New Issue
Block a user