diff --git a/RxSwift/Disposables/AnonymousDisposable.swift b/RxSwift/Disposables/AnonymousDisposable.swift index 11accd29..dd5b1bb5 100644 --- a/RxSwift/Disposables/AnonymousDisposable.swift +++ b/RxSwift/Disposables/AnonymousDisposable.swift @@ -62,8 +62,13 @@ public final class AnonymousDisposable : DisposeBase, Cancelable { public extension Disposables { - static func create(with action: () -> ()) -> Cancelable { - return AnonymousDisposable(disposeAction: action) + /** + Constructs a new disposable with the given action used for disposal. + + - parameter dispose: Disposal action which will be run upon calling `dispose`. + */ + static func create(with dispose: () -> ()) -> Cancelable { + return AnonymousDisposable(disposeAction: dispose) } } diff --git a/RxSwift/Disposables/BinaryDisposable.swift b/RxSwift/Disposables/BinaryDisposable.swift index d4a84a2d..583b176b 100644 --- a/RxSwift/Disposables/BinaryDisposable.swift +++ b/RxSwift/Disposables/BinaryDisposable.swift @@ -55,6 +55,9 @@ private final class BinaryDisposable : DisposeBase, Cancelable { public extension Disposables { + /** + Creates a disposable with the given disposables. + */ static func create(_ disposable1: Disposable, _ disposable2: Disposable) -> Cancelable { return BinaryDisposable(disposable1, disposable2) } diff --git a/RxSwift/Disposables/Disposables.swift b/RxSwift/Disposables/Disposables.swift index ac6ee125..694b1e5f 100644 --- a/RxSwift/Disposables/Disposables.swift +++ b/RxSwift/Disposables/Disposables.swift @@ -8,6 +8,9 @@ import Foundation +/** + A collection of utility methods for common disposable operations. + */ public struct Disposables { private init() {} @@ -18,14 +21,23 @@ public extension Disposables { private static let noOp: Disposable = NopDisposable() + /** + Creates a disposable that does nothing on disposal. + */ static func create() -> Disposable { return noOp } + /** + Creates a disposable with the given disposables. + */ static func create(_ disposable1: Disposable, _ disposable2: Disposable, _ disposable3: Disposable) -> Cancelable { return CompositeDisposable(disposable1, disposable2, disposable3) } + /** + Creates a disposable with the given disposables. + */ static func create(_ disposable1: Disposable, _ disposable2: Disposable, _ disposable3: Disposable, _ disposables: Disposable ...) -> Cancelable { var disposables = disposables disposables.append(disposable1) @@ -34,6 +46,9 @@ public extension Disposables { return CompositeDisposable(disposables: disposables) } + /** + Creates a disposable with the given disposables. + */ static func create(_ disposables: [Disposable]) -> Cancelable { switch disposables.count { case 2: