diff --git a/CHANGELOG.md b/CHANGELOG.md index 4997ff8..37894e1 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +# Release 1.1 + +- [x] Set kommand error closure specifying Error type. + # Release 1.0.2 - [x] Ready for Swift 4.2. diff --git a/Kommander.podspec b/Kommander.podspec index bc036d5..0b53927 100755 --- a/Kommander.podspec +++ b/Kommander.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'Kommander' - s.version = '1.0.2' + s.version = '1.1' s.summary = 'A command pattern implementation written in Swift' s.homepage = 'https://github.com/intelygenz/Kommander-iOS' diff --git a/Kommander.xcodeproj/project.pbxproj b/Kommander.xcodeproj/project.pbxproj index 8a3d947..f59206b 100755 --- a/Kommander.xcodeproj/project.pbxproj +++ b/Kommander.xcodeproj/project.pbxproj @@ -590,56 +590,56 @@ TargetAttributes = { 815B58021E6573C700818819 = { CreatedOnToolsVersion = 8.2.1; - DevelopmentTeam = 3VW789WSMP; + DevelopmentTeam = Q6BEQCNWYM; LastSwiftMigration = ""; ProvisioningStyle = Automatic; }; 815B58151E6573C800818819 = { CreatedOnToolsVersion = 8.2.1; - DevelopmentTeam = 3VW789WSMP; + DevelopmentTeam = Q6BEQCNWYM; LastSwiftMigration = ""; ProvisioningStyle = Automatic; TestTargetID = 815B58021E6573C700818819; }; 81925CC41E3A0FFC001701F3 = { CreatedOnToolsVersion = 8.2.1; - DevelopmentTeam = 3VW789WSMP; + DevelopmentTeam = Q6BEQCNWYM; LastSwiftMigration = 1000; ProvisioningStyle = Automatic; }; 81925CCD1E3A0FFC001701F3 = { CreatedOnToolsVersion = 8.2.1; - DevelopmentTeam = 3VW789WSMP; + DevelopmentTeam = Q6BEQCNWYM; LastSwiftMigration = 1000; ProvisioningStyle = Automatic; }; 819D155C1E76AEFB00BB1F07 = { CreatedOnToolsVersion = 8.2.1; - DevelopmentTeam = 3VW789WSMP; + DevelopmentTeam = Q6BEQCNWYM; LastSwiftMigration = 0900; ProvisioningStyle = Automatic; }; 81DBBAD61E768DB300EF01D8 = { CreatedOnToolsVersion = 8.2.1; - DevelopmentTeam = 3VW789WSMP; + DevelopmentTeam = Q6BEQCNWYM; LastSwiftMigration = ""; ProvisioningStyle = Automatic; }; 81DBBAE31E768DE100EF01D8 = { CreatedOnToolsVersion = 8.2.1; - DevelopmentTeam = 3VW789WSMP; + DevelopmentTeam = Q6BEQCNWYM; LastSwiftMigration = 0900; ProvisioningStyle = Automatic; }; 81DBBB171E7691F300EF01D8 = { CreatedOnToolsVersion = 8.2.1; - DevelopmentTeam = 3VW789WSMP; + DevelopmentTeam = Q6BEQCNWYM; LastSwiftMigration = ""; ProvisioningStyle = Automatic; }; 81DBBB231E7691F400EF01D8 = { CreatedOnToolsVersion = 8.2.1; - DevelopmentTeam = 3VW789WSMP; + DevelopmentTeam = Q6BEQCNWYM; LastSwiftMigration = ""; ProvisioningStyle = Automatic; }; @@ -990,9 +990,9 @@ COPY_PHASE_STRIP = NO; CURRENT_PROJECT_VERSION = "$(DYLIB_CURRENT_VERSION)"; DEBUG_INFORMATION_FORMAT = dwarf; - DEVELOPMENT_TEAM = 3VW789WSMP; - DYLIB_COMPATIBILITY_VERSION = 1.0.1; - DYLIB_CURRENT_VERSION = 1.0.2; + DEVELOPMENT_TEAM = Q6BEQCNWYM; + DYLIB_COMPATIBILITY_VERSION = 1.1; + DYLIB_CURRENT_VERSION = 1.1; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; @@ -1064,9 +1064,9 @@ COPY_PHASE_STRIP = NO; CURRENT_PROJECT_VERSION = "$(DYLIB_CURRENT_VERSION)"; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEVELOPMENT_TEAM = 3VW789WSMP; - DYLIB_COMPATIBILITY_VERSION = 1.0.1; - DYLIB_CURRENT_VERSION = 1.0.2; + DEVELOPMENT_TEAM = Q6BEQCNWYM; + DYLIB_COMPATIBILITY_VERSION = 1.1; + DYLIB_CURRENT_VERSION = 1.1; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_C_LANGUAGE_STANDARD = gnu99; diff --git a/Kommander.xcodeproj/xcshareddata/xcdebugger/Breakpoints_v2.xcbkptlist b/Kommander.xcodeproj/xcshareddata/xcdebugger/Breakpoints_v2.xcbkptlist index a3f78c0..ab8eb6e 100755 --- a/Kommander.xcodeproj/xcshareddata/xcdebugger/Breakpoints_v2.xcbkptlist +++ b/Kommander.xcodeproj/xcshareddata/xcdebugger/Breakpoints_v2.xcbkptlist @@ -2,16 +2,4 @@ - - - - - - diff --git a/Kommander.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/Kommander.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..3ddf867 --- /dev/null +++ b/Kommander.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + BuildSystemType + Latest + + diff --git a/Major/ViewController.swift b/Major/ViewController.swift index 630b34f..c9c8fb0 100755 --- a/Major/ViewController.swift +++ b/Major/ViewController.swift @@ -59,8 +59,8 @@ class ViewController: UIViewController { kommander.make { sleep(self.sleepTime) throw CocoaError(.featureUnsupported) - }.error { error in - print("Error: " + String(describing: error!)) + }.error(CocoaError.self) { + print("Error: " + $0.localizedDescription) }.execute() } diff --git a/Package.swift b/Package.swift index 6ea5a5e..0111aa6 100755 --- a/Package.swift +++ b/Package.swift @@ -2,6 +2,19 @@ import PackageDescription let package = Package( name: "Kommander", + products: [ + .library( + name: "Kommander", + targets: ["Kommander"]) + ], dependencies : [], - exclude: ["Major", "Major watchOS", "Major watchOS Extension", "MajorUITests", "KommanderTests"] -) \ No newline at end of file + exclude: ["Major", "Major watchOS", "Major watchOS Extension", "MajorUITests", "KommanderTests"], + targets: [ + .target( + name: "Kommander", + dependencies: []), + .testTarget( + name: "KommanderTests", + dependencies: []), + ] +) diff --git a/README.md b/README.md index 51f9565..5b82d4c 100755 --- a/README.md +++ b/README.md @@ -27,6 +27,7 @@ Inspired on the Java library [**Kommander**](https://github.com/Wokdsem/Kommande - [x] Retry kommand or multiple kommands - [x] Set kommand success closure - [x] Set kommand error closure +- [x] Set kommand error closure specifying Error type - [x] Main thread dispatcher - [x] Current thread dispatcher - [x] Custom OperationQueue dispatcher @@ -116,6 +117,16 @@ Kommander().make { }.execute() ``` +##### Specify Error type: + +```swift +Kommander().make { + throw MyError.error +}.error(MyError.self) { error in + // error is MyError type. +}.execute() +``` + ##### Retry after cancellation: ```swift diff --git a/Source/Dispatcher.swift b/Source/Dispatcher.swift index edf53a2..c4479db 100755 --- a/Source/Dispatcher.swift +++ b/Source/Dispatcher.swift @@ -96,15 +96,17 @@ open class Dispatcher { } public extension Array where Element: Operation { + /// Execute [Operation] instance collection in OperationQueue - public func execute(by operationQueue: OperationQueue, waitUntilFinished: Bool = false) { + public func execute(in operationQueue: OperationQueue, waitUntilFinished: Bool = false) { operationQueue.addOperations(self, waitUntilFinished: waitUntilFinished) } /// Execute [Operation] instance collection in Dispatcher - public func execute(by dispatcher: Dispatcher, waitUntilFinished: Bool = false) { + public func execute(in dispatcher: Dispatcher, waitUntilFinished: Bool = false) { dispatcher.execute(self, waitUntilFinished: waitUntilFinished) } + } private extension Dispatcher { diff --git a/Source/Kommand.swift b/Source/Kommand.swift index 5553485..c579efb 100644 --- a/Source/Kommand.swift +++ b/Source/Kommand.swift @@ -107,12 +107,35 @@ open class Kommand { return self } + /// Specify Kommand error closure + @discardableResult open func error(_ type: Reason.Type, _ error: @escaping (_ error: Reason) -> Void) -> Self { + self.errorClosure = { + guard let reason = $0 as? Reason else { + assertionFailure("Unexpected error thrown. \(Reason.self) expected, \($0.debugDescription) thrown.") + return + } + error(reason) + } + return self + } + /// Specify Kommand retry closure @discardableResult open func retry(_ retry: @escaping RetryClosure) -> Self { self.retryClosure = retry return self } + /// Specify Kommand error closure + @discardableResult open func retry(_ type: Reason.Type, _ retry: @escaping (_ error: Reason?, _ executionCount: UInt) -> Bool) -> Self { + self.retryClosure = { + guard let reason = $0 as? Reason else { + return retry(nil, $1) + } + return retry(reason, $1) + } + return self + } + open var result: Result? { guard case .succeeded(let result) = state else { return nil @@ -129,7 +152,7 @@ open class Kommand { /// Execute Kommand after delay @discardableResult open func execute(after delay: DispatchTimeInterval) -> Self { - executor?.execute(after: delay, closure: { + executor?.execute(after: delay, closure: { self.execute() }) return self diff --git a/Source/Kommander.swift b/Source/Kommander.swift index 864d90d..4322114 100644 --- a/Source/Kommander.swift +++ b/Source/Kommander.swift @@ -59,7 +59,7 @@ open class Kommander { /// Execute [Kommand] instances collection concurrently or sequentially after delay open func execute(_ kommands: [Kommand], concurrent: Bool = true, waitUntilFinished: Bool = false, after delay: DispatchTimeInterval) { - executor.execute(after: delay) { + executor.execute(after: delay) { self.execute(kommands, concurrent: concurrent, waitUntilFinished: waitUntilFinished) } } diff --git a/docs/Classes.html b/docs/Classes.html index c96c6b1..a420380 100644 --- a/docs/Classes.html +++ b/docs/Classes.html @@ -10,6 +10,7 @@ +
@@ -100,7 +101,7 @@

Classes

Declaration

Swift

-
open class CurrentDispatcher: MainDispatcher
+
open class CurrentDispatcher : MainDispatcher
@@ -117,9 +118,9 @@

Declaration

  • - - - Kommander + + + Dispatcher
    @@ -127,20 +128,20 @@

    Declaration

    -

    Kommander manager

    +

    Dispatcher

    - See more + See more

    Declaration

    Swift

    -
    open class Kommander
    +
    open class Dispatcher
    @@ -152,9 +153,9 @@

    Declaration

  • - - - MainDispatcher + + + Kommand
    @@ -162,20 +163,20 @@

    Declaration

    -

    Main queue dispatcher

    +

    Generic Kommand

    - See more + See more

    Declaration

    Swift

    -
    open class MainDispatcher: Dispatcher
    +
    open class Kommand<Result>
    @@ -187,9 +188,9 @@

    Declaration

  • - - - Dispatcher + + + Kommander
    @@ -197,20 +198,20 @@

    Declaration

    -

    Dispatcher

    +

    Kommander manager

    - See more + See more

    Declaration

    Swift

    -
    open class Dispatcher
    +
    open class Kommander
    @@ -222,9 +223,9 @@

    Declaration

  • - - - Kommand + + + MainDispatcher
    @@ -232,20 +233,20 @@

    Declaration

    -

    Generic Kommand

    +

    Main queue dispatcher

    - See more + See more

    Declaration

    Swift

    -
    open class Kommand<Result>
    +
    open class MainDispatcher : Dispatcher
    @@ -255,8 +256,8 @@

    Declaration

    diff --git a/docs/Classes/CurrentDispatcher.html b/docs/Classes/CurrentDispatcher.html index cbbcd9e..8119948 100644 --- a/docs/Classes/CurrentDispatcher.html +++ b/docs/Classes/CurrentDispatcher.html @@ -76,7 +76,7 @@

    CurrentDispatcher

    -
    open class CurrentDispatcher: MainDispatcher
    +
    open class CurrentDispatcher : MainDispatcher
    @@ -106,7 +106,7 @@

    CurrentDispatcher

    Declaration

    Swift

    -
    public override init()
    +
    public override init()
    @@ -121,8 +121,8 @@

    Declaration

    diff --git a/docs/Classes/Dispatcher.html b/docs/Classes/Dispatcher.html index 379c4c9..b44a40b 100644 --- a/docs/Classes/Dispatcher.html +++ b/docs/Classes/Dispatcher.html @@ -76,7 +76,7 @@

    Dispatcher

    -
    open class Dispatcher
    +
    open class Dispatcher
    @@ -106,7 +106,7 @@

    Dispatcher

    Declaration

    Swift

    -
    public static var main: Dispatcher
    +
    public static var main: Dispatcher { get }
    @@ -136,7 +136,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var current: Dispatcher
    +
    public static var current: Dispatcher { get }
    @@ -166,7 +166,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var `default`: Dispatcher
    +
    public static var `default`: Dispatcher { get }
    @@ -196,7 +196,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var userInteractive: Dispatcher
    +
    public static var userInteractive: Dispatcher { get }
    @@ -226,7 +226,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var userInitiated: Dispatcher
    +
    public static var userInitiated: Dispatcher { get }
    @@ -256,7 +256,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var utility: Dispatcher
    +
    public static var utility: Dispatcher { get }
    @@ -286,7 +286,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var background: Dispatcher
    +
    public static var background: Dispatcher { get }
    @@ -299,9 +299,9 @@

    Declaration

  • @@ -316,7 +316,7 @@

    Declaration

    Declaration

    Swift

    -
    public init(name: String = UUID().uuidString, qos: QualityOfService = .default, maxConcurrentOperations: Int = OperationQueue.defaultMaxConcurrentOperationCount)
    +
    public init(name: String = UUID().uuidString, qos: QualityOfService = .default, maxConcurrentOperations: Int = OperationQueue.defaultMaxConcurrentOperationCount)
    @@ -329,9 +329,9 @@

    Declaration

  • @@ -346,7 +346,7 @@

    Declaration

    Declaration

    Swift

    -
    open func execute(_ operation: Operation)
    +
    open func execute(_ operation: Operation)
    @@ -359,9 +359,9 @@

    Declaration

  • @@ -376,7 +376,7 @@

    Declaration

    Declaration

    Swift

    -
    open func execute(_ operations: [Operation], waitUntilFinished: Bool = false)
    +
    open func execute(_ operations: [Operation], waitUntilFinished: Bool = false)
    @@ -389,9 +389,9 @@

    Declaration

  • @@ -406,7 +406,8 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func execute(_ closure: @escaping () -> Void) -> Operation
    +
    @discardableResult
    +open func execute(_ closure: @escaping () -> Void) -> Operation
    @@ -419,9 +420,9 @@

    Declaration

  • @@ -436,7 +437,8 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func execute(_ closures: [() -> Void], concurrent: Bool = true, waitUntilFinished: Bool = false) -> [Operation]
    +
    @discardableResult
    +open func execute(_ closures: [() -> Void], concurrent: Bool = true, waitUntilFinished: Bool = false) -> [Operation]
    @@ -449,9 +451,9 @@

    Declaration

  • @@ -466,7 +468,7 @@

    Declaration

    Declaration

    Swift

    -
    open func execute(after delay: DispatchTimeInterval, closure: @escaping () -> Void)
    +
    open func execute(after delay: DispatchTimeInterval, closure: @escaping () -> Void)
    @@ -479,9 +481,9 @@

    Declaration

  • @@ -496,7 +498,7 @@

    Declaration

    Declaration

    Swift

    -
    open func execute(after delay: DispatchTimeInterval, work: DispatchWorkItem)
    +
    open func execute(after delay: DispatchTimeInterval, work: DispatchWorkItem)
    @@ -509,9 +511,9 @@

    Declaration

  • @@ -526,7 +528,7 @@

    Declaration

    Declaration

    Swift

    -
    open func execute(_ work: DispatchWorkItem)
    +
    open func execute(_ work: DispatchWorkItem)
    @@ -541,8 +543,8 @@

    Declaration

    diff --git a/docs/Classes/Kommand.html b/docs/Classes/Kommand.html index 71340ad..fc432f8 100644 --- a/docs/Classes/Kommand.html +++ b/docs/Classes/Kommand.html @@ -76,7 +76,7 @@

    Kommand

    -
    open class Kommand<Result>
    +
    open class Kommand<Result>
    @@ -107,7 +107,7 @@

    Kommand

    Declaration

    Swift

    -
    public indirect enum State: Equatable
    +
    public indirect enum State : Equatable
    @@ -137,7 +137,7 @@

    Declaration

    Declaration

    Swift

    -
    public typealias ActionClosure = () throws -> Result
    +
    public typealias ActionClosure = () throws -> Result
    @@ -167,7 +167,7 @@

    Declaration

    Declaration

    Swift

    -
    public typealias SuccessClosure = (_ result: Result) -> Void
    +
    public typealias SuccessClosure = (_ result: Result) -> Void
    @@ -197,7 +197,7 @@

    Declaration

    Declaration

    Swift

    -
    public typealias ErrorClosure = (_ error: Swift.Error?) -> Void
    +
    public typealias ErrorClosure = (_ error: Swift.Error?) -> Void
    @@ -227,7 +227,7 @@

    Declaration

    Declaration

    Swift

    -
    public typealias RetryClosure = (_ error: Swift.Error?, _ executionCount: UInt) -> Bool
    +
    public typealias RetryClosure = (_ error: Swift.Error?, _ executionCount: UInt) -> Bool
    @@ -257,7 +257,7 @@

    Declaration

    Declaration

    Swift

    -
    internal(set) public final var state = State.uninitialized
    +
    internal(set) public final var state: Kommand<Result>.State
    @@ -270,9 +270,9 @@

    Declaration

  • @@ -287,7 +287,7 @@

    Declaration

    Declaration

    Swift

    -
    public required init(deliverer: Dispatcher = .current, executor: Dispatcher = .default, actionClosure: @escaping ActionClosure)
    +
    public required init(deliverer: Dispatcher = .current, executor: Dispatcher = .default, actionClosure: @escaping ActionClosure)
    @@ -300,9 +300,9 @@

    Declaration

  • @@ -317,7 +317,8 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func success(_ success: @escaping SuccessClosure) -> Self
    +
    @discardableResult
    +open func success(_ success: @escaping SuccessClosure) -> Self
    @@ -330,9 +331,9 @@

    Declaration

  • @@ -347,7 +348,8 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func error(_ error: @escaping ErrorClosure) -> Self
    +
    @discardableResult
    +open func error(_ error: @escaping ErrorClosure) -> Self
    @@ -360,9 +362,40 @@

    Declaration

  • - + + + error(_:_:) + +
    +
    +
    +
    +
    +
    +

    Specify Kommand error closure

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @discardableResult
    +open func error<Reason: Swift.Error>(_ type: Reason.Type, _ error: @escaping (_ error: Reason) -> Void) -> Self
    + +
    +
    + +
    +
    +
  • +
  • +
    @@ -377,12 +410,44 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func retry(_ retry: @escaping RetryClosure) -> Self
    +
    @discardableResult
    +open func retry(_ retry: @escaping RetryClosure) -> Self
    + +
    +
    + + + +
  • +
  • +
    + + + + retry(_:_:) + +
    +
    +
    +
    +
    +
    +

    Specify Kommand error closure

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @discardableResult
    +open func retry<Reason: Swift.Error>(_ type: Reason.Type, _ retry: @escaping (_ error: Reason?, _ executionCount: UInt) -> Bool) -> Self
    @@ -407,12 +472,12 @@

    Declaration

    Declaration

    Swift

    -
    open var result: Result?
    +
    open var result: Result? { get }
    @@ -437,12 +502,12 @@

    Declaration

    Declaration

    Swift

    -
    open var error: Error?
    +
    open var error: Error? { get }
    @@ -450,9 +515,9 @@

    Declaration

  • @@ -467,12 +532,13 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func execute(after delay: DispatchTimeInterval) -> Self
    +
    @discardableResult
    +open func execute(after delay: DispatchTimeInterval) -> Self
    @@ -497,12 +563,13 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func execute() -> Self
    +
    @discardableResult
    +open func execute() -> Self
    @@ -510,9 +577,9 @@

    Declaration

  • @@ -527,12 +594,13 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func cancel(_ throwingError: Bool = false, after delay: DispatchTimeInterval) -> Self
    +
    @discardableResult
    +open func cancel(_ throwingError: Bool = false, after delay: DispatchTimeInterval) -> Self
    @@ -540,9 +608,9 @@

    Declaration

  • @@ -557,12 +625,13 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func cancel(_ throwingError: Bool = false) -> Self
    +
    @discardableResult
    +open func cancel(_ throwingError: Bool = false) -> Self
    @@ -570,9 +639,9 @@

    Declaration

  • @@ -587,12 +656,13 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func retry(after delay: DispatchTimeInterval) -> Self
    +
    @discardableResult
    +open func retry(after delay: DispatchTimeInterval) -> Self
    @@ -617,12 +687,13 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func retry() -> Self
    +
    @discardableResult
    +open func retry() -> Self
    @@ -632,8 +703,8 @@

    Declaration

    diff --git a/docs/Classes/Kommand/State.html b/docs/Classes/Kommand/State.html index 34831ee..0cee08d 100644 --- a/docs/Classes/Kommand/State.html +++ b/docs/Classes/Kommand/State.html @@ -76,7 +76,7 @@

    State

    -
    public indirect enum State: Equatable
    +
    public indirect enum State : Equatable
    @@ -89,9 +89,9 @@

    State

  • @@ -106,7 +106,7 @@

    State

    Declaration

    Swift

    -
    case uninitialized
    +
    case uninitialized
    @@ -116,16 +116,12 @@

    Declaration

  • - - -
    -
    • - + - ready + ready
      @@ -140,7 +136,7 @@

      Declaration

      Declaration

      Swift

      -
      case ready
      +
      case ready
      @@ -150,16 +146,12 @@

      Declaration

    - - -
    -
    • - + - running + running
      @@ -174,7 +166,7 @@

      Declaration

      Declaration

      Swift

      -
      case running
      +
      case running
      @@ -184,16 +176,12 @@

      Declaration

    - - -
    -
    • - - - succeeded + + + succeeded(_:)
      @@ -208,7 +196,7 @@

      Declaration

      Declaration

      Swift

      -
      case succeeded(Result)
      +
      case succeeded(Result)
      @@ -218,16 +206,12 @@

      Declaration

    - - -
    -
    • - - - failed + + + failed(_:)
      @@ -242,7 +226,7 @@

      Declaration

      Declaration

      Swift

      -
      case failed(Swift.Error)
      +
      case failed(Swift.Error)
      @@ -252,16 +236,12 @@

      Declaration

    - - -
    -
    • @@ -276,7 +256,7 @@

      Declaration

      Declaration

      Swift

      -
      case cancelled
      +
      case cancelled
      @@ -286,16 +266,12 @@

      Declaration

    - - -
    -
    • - + - ==(_:_:) + ==(_:_:)
      @@ -309,7 +285,7 @@

      Declaration

      Declaration

      Swift

      -
      public static func ==(lhs: State, rhs: State) -> Bool
      +
      public static func == (lhs: State, rhs: State) -> Bool
      @@ -324,8 +300,8 @@

      Declaration

    diff --git a/docs/Classes/Kommander.html b/docs/Classes/Kommander.html index ca150ff..1c7d110 100644 --- a/docs/Classes/Kommander.html +++ b/docs/Classes/Kommander.html @@ -76,7 +76,7 @@

    Kommander

    -
    open class Kommander
    +
    open class Kommander
    @@ -106,7 +106,7 @@

    Kommander

    Declaration

    Swift

    -
    public static var main: Kommander
    +
    public static var main: Kommander { get }
    @@ -136,7 +136,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var current: Kommander
    +
    public static var current: Kommander { get }
    @@ -166,7 +166,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var `default`: Kommander
    +
    public static var `default`: Kommander { get }
    @@ -196,7 +196,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var userInteractive: Kommander
    +
    public static var userInteractive: Kommander { get }
    @@ -226,7 +226,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var userInitiated: Kommander
    +
    public static var userInitiated: Kommander { get }
    @@ -256,7 +256,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var utility: Kommander
    +
    public static var utility: Kommander { get }
    @@ -286,7 +286,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var background: Kommander
    +
    public static var background: Kommander { get }
    @@ -299,9 +299,9 @@

    Declaration

  • @@ -316,7 +316,7 @@

    Declaration

    Declaration

    Swift

    -
    public init(deliverer: Dispatcher = .current, executor: Dispatcher = .default)
    +
    public init(deliverer: Dispatcher = .current, executor: Dispatcher = .default)
    @@ -329,9 +329,9 @@

    Declaration

  • @@ -346,7 +346,7 @@

    Declaration

    Declaration

    Swift

    -
    public init(deliverer: Dispatcher = .current, name: String = UUID().uuidString, qos: QualityOfService = .default, maxConcurrentOperations: Int = OperationQueue.defaultMaxConcurrentOperationCount)
    +
    public init(deliverer: Dispatcher = .current, name: String = UUID().uuidString, qos: QualityOfService = .default, maxConcurrentOperations: Int = OperationQueue.defaultMaxConcurrentOperationCount)
    @@ -359,9 +359,9 @@

    Declaration

  • - + - make(_:) + make(_:)
    @@ -376,7 +376,7 @@

    Declaration

    Declaration

    Swift

    -
    open func make<Result>(_ actionClosure: @escaping () throws -> Result) -> Kommand<Result>
    +
    open func make<Result>(_ actionClosure: @escaping () throws -> Result) -> Kommand<Result>
    @@ -389,9 +389,9 @@

    Declaration

  • - + - make(_:) + make(_:)
    @@ -406,7 +406,7 @@

    Declaration

    Declaration

    Swift

    -
    open func make<Result>(_ actionClosures: [() throws -> Result]) -> [Kommand<Result>]
    +
    open func make<Result>(_ actionClosures: [() throws -> Result]) -> [Kommand<Result>]
    @@ -419,9 +419,9 @@

    Declaration

  • @@ -436,7 +436,7 @@

    Declaration

    Declaration

    Swift

    -
    open func execute<Result>(_ kommands: [Kommand<Result>], concurrent: Bool = true, waitUntilFinished: Bool = false, after delay: DispatchTimeInterval)
    +
    open func execute<Result>(_ kommands: [Kommand<Result>], concurrent: Bool = true, waitUntilFinished: Bool = false, after delay: DispatchTimeInterval)
    @@ -449,9 +449,9 @@

    Declaration

  • @@ -466,7 +466,7 @@

    Declaration

    Declaration

    Swift

    -
    open func execute<Result>(_ kommands: [Kommand<Result>], concurrent: Bool = true, waitUntilFinished: Bool = false)
    +
    open func execute<Result>(_ kommands: [Kommand<Result>], concurrent: Bool = true, waitUntilFinished: Bool = false)
    @@ -479,9 +479,9 @@

    Declaration

  • @@ -496,7 +496,7 @@

    Declaration

    Declaration

    Swift

    -
    open func cancel<Result>(_ kommands: [Kommand<Result>], throwingError: Bool = false, after delay: DispatchTimeInterval)
    +
    open func cancel<Result>(_ kommands: [Kommand<Result>], throwingError: Bool = false, after delay: DispatchTimeInterval)
    @@ -509,9 +509,9 @@

    Declaration

  • @@ -526,7 +526,7 @@

    Declaration

    Declaration

    Swift

    -
    open func cancel<Result>(_ kommands: [Kommand<Result>], throwingError: Bool = false)
    +
    open func cancel<Result>(_ kommands: [Kommand<Result>], throwingError: Bool = false)
    @@ -539,9 +539,9 @@

    Declaration

  • @@ -556,7 +556,7 @@

    Declaration

    Declaration

    Swift

    -
    open func retry<Result>(_ kommands: [Kommand<Result>], after delay: DispatchTimeInterval)
    +
    open func retry<Result>(_ kommands: [Kommand<Result>], after delay: DispatchTimeInterval)
    @@ -569,9 +569,9 @@

    Declaration

  • @@ -586,7 +586,7 @@

    Declaration

    Declaration

    Swift

    -
    open func retry<Result>(_ kommands: [Kommand<Result>])
    +
    open func retry<Result>(_ kommands: [Kommand<Result>])
    @@ -601,8 +601,8 @@

    Declaration

    diff --git a/docs/Classes/MainDispatcher.html b/docs/Classes/MainDispatcher.html index 2b97c41..0ff7f81 100644 --- a/docs/Classes/MainDispatcher.html +++ b/docs/Classes/MainDispatcher.html @@ -76,7 +76,7 @@

    MainDispatcher

    -
    open class MainDispatcher: Dispatcher
    +
    open class MainDispatcher : Dispatcher
    @@ -106,7 +106,7 @@

    MainDispatcher

    Declaration

    Swift

    -
    public init()
    +
    public init()
    @@ -121,8 +121,8 @@

    Declaration

    diff --git a/docs/Extensions.html b/docs/Extensions.html index 74ff53d..8dd3023 100644 --- a/docs/Extensions.html +++ b/docs/Extensions.html @@ -10,6 +10,7 @@ +
    @@ -99,7 +100,7 @@

    Extensions

    Declaration

    Swift

    -
    struct Array<Element>
    +
    struct Array<Element> : _DestructorSafeContainer
    @@ -111,8 +112,8 @@

    Declaration

    diff --git a/docs/Extensions/Array.html b/docs/Extensions/Array.html index 8f1ad64..6532073 100644 --- a/docs/Extensions/Array.html +++ b/docs/Extensions/Array.html @@ -76,7 +76,7 @@

    Array

    -
    struct Array<Element>
    +
    struct Array<Element> : _DestructorSafeContainer
    @@ -88,9 +88,9 @@

    Array

  • @@ -105,12 +105,12 @@

    Array

    Declaration

    Swift

    -
    public func execute(by operationQueue: OperationQueue, waitUntilFinished: Bool = false)
    +
    public func execute(in operationQueue: OperationQueue, waitUntilFinished: Bool = false)
    @@ -118,9 +118,9 @@

    Declaration

  • @@ -135,12 +135,12 @@

    Declaration

    Declaration

    Swift

    -
    public func execute(by dispatcher: Dispatcher, waitUntilFinished: Bool = false)
    +
    public func execute(in dispatcher: Dispatcher, waitUntilFinished: Bool = false)
    @@ -150,8 +150,8 @@

    Declaration

    diff --git a/docs/Structs.html b/docs/Structs.html index c9ccbc5..276a902 100644 --- a/docs/Structs.html +++ b/docs/Structs.html @@ -10,6 +10,7 @@ +
    @@ -100,7 +101,7 @@

    Structures

    Declaration

    Swift

    -
    public struct KommandCancelledError<Result>: RecoverableError
    +
    public struct KommandCancelledError<Result> : RecoverableError
    @@ -115,8 +116,8 @@

    Declaration

    diff --git a/docs/Structs/KommandCancelledError.html b/docs/Structs/KommandCancelledError.html index 2b60726..60c493f 100644 --- a/docs/Structs/KommandCancelledError.html +++ b/docs/Structs/KommandCancelledError.html @@ -76,7 +76,7 @@

    KommandCancelledError

    -
    public struct KommandCancelledError<Result>: RecoverableError
    +
    public struct KommandCancelledError<Result> : RecoverableError
    @@ -106,7 +106,7 @@

    KommandCancelledError

    Declaration

    Swift

    -
    public var recoveryOptions: [String]
    +
    public var recoveryOptions: [String] { get }
    @@ -119,9 +119,9 @@

    Declaration

  • @@ -143,7 +143,7 @@

    Declaration

    Declaration

    Swift

    -
    public func attemptRecovery(optionIndex recoveryOptionIndex: Int) -> Bool
    +
    public func attemptRecovery(optionIndex recoveryOptionIndex: Int) -> Bool
    @@ -158,8 +158,8 @@

    Declaration

    diff --git a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes.html b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes.html index c96c6b1..a420380 100644 --- a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes.html +++ b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes.html @@ -10,6 +10,7 @@ +
    @@ -100,7 +101,7 @@

    Classes

    Declaration

    Swift

    -
    open class CurrentDispatcher: MainDispatcher
    +
    open class CurrentDispatcher : MainDispatcher
    @@ -117,9 +118,9 @@

    Declaration

  • - - - Kommander + + + Dispatcher
    @@ -127,20 +128,20 @@

    Declaration

    -

    Kommander manager

    +

    Dispatcher

    - See more + See more

    Declaration

    Swift

    -
    open class Kommander
    +
    open class Dispatcher
    @@ -152,9 +153,9 @@

    Declaration

  • - - - MainDispatcher + + + Kommand
    @@ -162,20 +163,20 @@

    Declaration

    -

    Main queue dispatcher

    +

    Generic Kommand

    - See more + See more

    Declaration

    Swift

    -
    open class MainDispatcher: Dispatcher
    +
    open class Kommand<Result>
    @@ -187,9 +188,9 @@

    Declaration

  • - - - Dispatcher + + + Kommander
    @@ -197,20 +198,20 @@

    Declaration

    -

    Dispatcher

    +

    Kommander manager

    - See more + See more

    Declaration

    Swift

    -
    open class Dispatcher
    +
    open class Kommander
    @@ -222,9 +223,9 @@

    Declaration

  • - - - Kommand + + + MainDispatcher
    @@ -232,20 +233,20 @@

    Declaration

    -

    Generic Kommand

    +

    Main queue dispatcher

    - See more + See more

    Declaration

    Swift

    -
    open class Kommand<Result>
    +
    open class MainDispatcher : Dispatcher
    @@ -255,8 +256,8 @@

    Declaration

    diff --git a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/CurrentDispatcher.html b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/CurrentDispatcher.html index cbbcd9e..8119948 100644 --- a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/CurrentDispatcher.html +++ b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/CurrentDispatcher.html @@ -76,7 +76,7 @@

    CurrentDispatcher

    -
    open class CurrentDispatcher: MainDispatcher
    +
    open class CurrentDispatcher : MainDispatcher
    @@ -106,7 +106,7 @@

    CurrentDispatcher

    Declaration

    Swift

    -
    public override init()
    +
    public override init()
    @@ -121,8 +121,8 @@

    Declaration

    diff --git a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/Dispatcher.html b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/Dispatcher.html index 379c4c9..b44a40b 100644 --- a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/Dispatcher.html +++ b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/Dispatcher.html @@ -76,7 +76,7 @@

    Dispatcher

    -
    open class Dispatcher
    +
    open class Dispatcher
    @@ -106,7 +106,7 @@

    Dispatcher

    Declaration

    Swift

    -
    public static var main: Dispatcher
    +
    public static var main: Dispatcher { get }
    @@ -136,7 +136,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var current: Dispatcher
    +
    public static var current: Dispatcher { get }
    @@ -166,7 +166,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var `default`: Dispatcher
    +
    public static var `default`: Dispatcher { get }
    @@ -196,7 +196,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var userInteractive: Dispatcher
    +
    public static var userInteractive: Dispatcher { get }
    @@ -226,7 +226,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var userInitiated: Dispatcher
    +
    public static var userInitiated: Dispatcher { get }
    @@ -256,7 +256,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var utility: Dispatcher
    +
    public static var utility: Dispatcher { get }
    @@ -286,7 +286,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var background: Dispatcher
    +
    public static var background: Dispatcher { get }
    @@ -299,9 +299,9 @@

    Declaration

  • @@ -316,7 +316,7 @@

    Declaration

    Declaration

    Swift

    -
    public init(name: String = UUID().uuidString, qos: QualityOfService = .default, maxConcurrentOperations: Int = OperationQueue.defaultMaxConcurrentOperationCount)
    +
    public init(name: String = UUID().uuidString, qos: QualityOfService = .default, maxConcurrentOperations: Int = OperationQueue.defaultMaxConcurrentOperationCount)
    @@ -329,9 +329,9 @@

    Declaration

  • @@ -346,7 +346,7 @@

    Declaration

    Declaration

    Swift

    -
    open func execute(_ operation: Operation)
    +
    open func execute(_ operation: Operation)
    @@ -359,9 +359,9 @@

    Declaration

  • @@ -376,7 +376,7 @@

    Declaration

    Declaration

    Swift

    -
    open func execute(_ operations: [Operation], waitUntilFinished: Bool = false)
    +
    open func execute(_ operations: [Operation], waitUntilFinished: Bool = false)
    @@ -389,9 +389,9 @@

    Declaration

  • @@ -406,7 +406,8 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func execute(_ closure: @escaping () -> Void) -> Operation
    +
    @discardableResult
    +open func execute(_ closure: @escaping () -> Void) -> Operation
    @@ -419,9 +420,9 @@

    Declaration

  • @@ -436,7 +437,8 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func execute(_ closures: [() -> Void], concurrent: Bool = true, waitUntilFinished: Bool = false) -> [Operation]
    +
    @discardableResult
    +open func execute(_ closures: [() -> Void], concurrent: Bool = true, waitUntilFinished: Bool = false) -> [Operation]
    @@ -449,9 +451,9 @@

    Declaration

  • @@ -466,7 +468,7 @@

    Declaration

    Declaration

    Swift

    -
    open func execute(after delay: DispatchTimeInterval, closure: @escaping () -> Void)
    +
    open func execute(after delay: DispatchTimeInterval, closure: @escaping () -> Void)
    @@ -479,9 +481,9 @@

    Declaration

  • @@ -496,7 +498,7 @@

    Declaration

    Declaration

    Swift

    -
    open func execute(after delay: DispatchTimeInterval, work: DispatchWorkItem)
    +
    open func execute(after delay: DispatchTimeInterval, work: DispatchWorkItem)
    @@ -509,9 +511,9 @@

    Declaration

  • @@ -526,7 +528,7 @@

    Declaration

    Declaration

    Swift

    -
    open func execute(_ work: DispatchWorkItem)
    +
    open func execute(_ work: DispatchWorkItem)
    @@ -541,8 +543,8 @@

    Declaration

    diff --git a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/Kommand.html b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/Kommand.html index 71340ad..fc432f8 100644 --- a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/Kommand.html +++ b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/Kommand.html @@ -76,7 +76,7 @@

    Kommand

    -
    open class Kommand<Result>
    +
    open class Kommand<Result>
    @@ -107,7 +107,7 @@

    Kommand

    Declaration

    Swift

    -
    public indirect enum State: Equatable
    +
    public indirect enum State : Equatable
    @@ -137,7 +137,7 @@

    Declaration

    Declaration

    Swift

    -
    public typealias ActionClosure = () throws -> Result
    +
    public typealias ActionClosure = () throws -> Result
    @@ -167,7 +167,7 @@

    Declaration

    Declaration

    Swift

    -
    public typealias SuccessClosure = (_ result: Result) -> Void
    +
    public typealias SuccessClosure = (_ result: Result) -> Void
    @@ -197,7 +197,7 @@

    Declaration

    Declaration

    Swift

    -
    public typealias ErrorClosure = (_ error: Swift.Error?) -> Void
    +
    public typealias ErrorClosure = (_ error: Swift.Error?) -> Void
    @@ -227,7 +227,7 @@

    Declaration

    Declaration

    Swift

    -
    public typealias RetryClosure = (_ error: Swift.Error?, _ executionCount: UInt) -> Bool
    +
    public typealias RetryClosure = (_ error: Swift.Error?, _ executionCount: UInt) -> Bool
    @@ -257,7 +257,7 @@

    Declaration

    Declaration

    Swift

    -
    internal(set) public final var state = State.uninitialized
    +
    internal(set) public final var state: Kommand<Result>.State
    @@ -270,9 +270,9 @@

    Declaration

  • @@ -287,7 +287,7 @@

    Declaration

    Declaration

    Swift

    -
    public required init(deliverer: Dispatcher = .current, executor: Dispatcher = .default, actionClosure: @escaping ActionClosure)
    +
    public required init(deliverer: Dispatcher = .current, executor: Dispatcher = .default, actionClosure: @escaping ActionClosure)
    @@ -300,9 +300,9 @@

    Declaration

  • @@ -317,7 +317,8 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func success(_ success: @escaping SuccessClosure) -> Self
    +
    @discardableResult
    +open func success(_ success: @escaping SuccessClosure) -> Self
    @@ -330,9 +331,9 @@

    Declaration

  • @@ -347,7 +348,8 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func error(_ error: @escaping ErrorClosure) -> Self
    +
    @discardableResult
    +open func error(_ error: @escaping ErrorClosure) -> Self
    @@ -360,9 +362,40 @@

    Declaration

  • - + + + error(_:_:) + +
    +
    +
    +
    +
    +
    +

    Specify Kommand error closure

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @discardableResult
    +open func error<Reason: Swift.Error>(_ type: Reason.Type, _ error: @escaping (_ error: Reason) -> Void) -> Self
    + +
    +
    + +
    +
    +
  • +
  • +
    @@ -377,12 +410,44 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func retry(_ retry: @escaping RetryClosure) -> Self
    +
    @discardableResult
    +open func retry(_ retry: @escaping RetryClosure) -> Self
    + +
    +
    + + + +
  • +
  • +
    + + + + retry(_:_:) + +
    +
    +
    +
    +
    +
    +

    Specify Kommand error closure

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @discardableResult
    +open func retry<Reason: Swift.Error>(_ type: Reason.Type, _ retry: @escaping (_ error: Reason?, _ executionCount: UInt) -> Bool) -> Self
    @@ -407,12 +472,12 @@

    Declaration

    Declaration

    Swift

    -
    open var result: Result?
    +
    open var result: Result? { get }
    @@ -437,12 +502,12 @@

    Declaration

    Declaration

    Swift

    -
    open var error: Error?
    +
    open var error: Error? { get }
    @@ -450,9 +515,9 @@

    Declaration

  • @@ -467,12 +532,13 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func execute(after delay: DispatchTimeInterval) -> Self
    +
    @discardableResult
    +open func execute(after delay: DispatchTimeInterval) -> Self
    @@ -497,12 +563,13 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func execute() -> Self
    +
    @discardableResult
    +open func execute() -> Self
    @@ -510,9 +577,9 @@

    Declaration

  • @@ -527,12 +594,13 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func cancel(_ throwingError: Bool = false, after delay: DispatchTimeInterval) -> Self
    +
    @discardableResult
    +open func cancel(_ throwingError: Bool = false, after delay: DispatchTimeInterval) -> Self
    @@ -540,9 +608,9 @@

    Declaration

  • @@ -557,12 +625,13 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func cancel(_ throwingError: Bool = false) -> Self
    +
    @discardableResult
    +open func cancel(_ throwingError: Bool = false) -> Self
    @@ -570,9 +639,9 @@

    Declaration

  • @@ -587,12 +656,13 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func retry(after delay: DispatchTimeInterval) -> Self
    +
    @discardableResult
    +open func retry(after delay: DispatchTimeInterval) -> Self
    @@ -617,12 +687,13 @@

    Declaration

    Declaration

    Swift

    -
    @discardableResult open func retry() -> Self
    +
    @discardableResult
    +open func retry() -> Self
    @@ -632,8 +703,8 @@

    Declaration

    diff --git a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/Kommand/State.html b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/Kommand/State.html index 34831ee..0cee08d 100644 --- a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/Kommand/State.html +++ b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/Kommand/State.html @@ -76,7 +76,7 @@

    State

    -
    public indirect enum State: Equatable
    +
    public indirect enum State : Equatable
    @@ -89,9 +89,9 @@

    State

  • @@ -106,7 +106,7 @@

    State

    Declaration

    Swift

    -
    case uninitialized
    +
    case uninitialized
    @@ -116,16 +116,12 @@

    Declaration

  • - - -
    -
    • - + - ready + ready
      @@ -140,7 +136,7 @@

      Declaration

      Declaration

      Swift

      -
      case ready
      +
      case ready
      @@ -150,16 +146,12 @@

      Declaration

  • - - -
    -
    • - + - running + running
      @@ -174,7 +166,7 @@

      Declaration

      Declaration

      Swift

      -
      case running
      +
      case running
      @@ -184,16 +176,12 @@

      Declaration

  • - - -
    -
    • - - - succeeded + + + succeeded(_:)
      @@ -208,7 +196,7 @@

      Declaration

      Declaration

      Swift

      -
      case succeeded(Result)
      +
      case succeeded(Result)
      @@ -218,16 +206,12 @@

      Declaration

  • - - -
    -
    • - - - failed + + + failed(_:)
      @@ -242,7 +226,7 @@

      Declaration

      Declaration

      Swift

      -
      case failed(Swift.Error)
      +
      case failed(Swift.Error)
      @@ -252,16 +236,12 @@

      Declaration

    - - -
    -
    • @@ -276,7 +256,7 @@

      Declaration

      Declaration

      Swift

      -
      case cancelled
      +
      case cancelled
      @@ -286,16 +266,12 @@

      Declaration

    - - -
    -
    • - + - ==(_:_:) + ==(_:_:)
      @@ -309,7 +285,7 @@

      Declaration

      Declaration

      Swift

      -
      public static func ==(lhs: State, rhs: State) -> Bool
      +
      public static func == (lhs: State, rhs: State) -> Bool
      @@ -324,8 +300,8 @@

      Declaration

    diff --git a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/Kommander.html b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/Kommander.html index ca150ff..1c7d110 100644 --- a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/Kommander.html +++ b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/Kommander.html @@ -76,7 +76,7 @@

    Kommander

    -
    open class Kommander
    +
    open class Kommander
    @@ -106,7 +106,7 @@

    Kommander

    Declaration

    Swift

    -
    public static var main: Kommander
    +
    public static var main: Kommander { get }
    @@ -136,7 +136,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var current: Kommander
    +
    public static var current: Kommander { get }
    @@ -166,7 +166,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var `default`: Kommander
    +
    public static var `default`: Kommander { get }
    @@ -196,7 +196,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var userInteractive: Kommander
    +
    public static var userInteractive: Kommander { get }
    @@ -226,7 +226,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var userInitiated: Kommander
    +
    public static var userInitiated: Kommander { get }
    @@ -256,7 +256,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var utility: Kommander
    +
    public static var utility: Kommander { get }
    @@ -286,7 +286,7 @@

    Declaration

    Declaration

    Swift

    -
    public static var background: Kommander
    +
    public static var background: Kommander { get }
    @@ -299,9 +299,9 @@

    Declaration

  • @@ -316,7 +316,7 @@

    Declaration

    Declaration

    Swift

    -
    public init(deliverer: Dispatcher = .current, executor: Dispatcher = .default)
    +
    public init(deliverer: Dispatcher = .current, executor: Dispatcher = .default)
    @@ -329,9 +329,9 @@

    Declaration

  • @@ -346,7 +346,7 @@

    Declaration

    Declaration

    Swift

    -
    public init(deliverer: Dispatcher = .current, name: String = UUID().uuidString, qos: QualityOfService = .default, maxConcurrentOperations: Int = OperationQueue.defaultMaxConcurrentOperationCount)
    +
    public init(deliverer: Dispatcher = .current, name: String = UUID().uuidString, qos: QualityOfService = .default, maxConcurrentOperations: Int = OperationQueue.defaultMaxConcurrentOperationCount)
    @@ -359,9 +359,9 @@

    Declaration

  • - + - make(_:) + make(_:)
    @@ -376,7 +376,7 @@

    Declaration

    Declaration

    Swift

    -
    open func make<Result>(_ actionClosure: @escaping () throws -> Result) -> Kommand<Result>
    +
    open func make<Result>(_ actionClosure: @escaping () throws -> Result) -> Kommand<Result>
    @@ -389,9 +389,9 @@

    Declaration

  • - + - make(_:) + make(_:)
    @@ -406,7 +406,7 @@

    Declaration

    Declaration

    Swift

    -
    open func make<Result>(_ actionClosures: [() throws -> Result]) -> [Kommand<Result>]
    +
    open func make<Result>(_ actionClosures: [() throws -> Result]) -> [Kommand<Result>]
    @@ -419,9 +419,9 @@

    Declaration

  • @@ -436,7 +436,7 @@

    Declaration

    Declaration

    Swift

    -
    open func execute<Result>(_ kommands: [Kommand<Result>], concurrent: Bool = true, waitUntilFinished: Bool = false, after delay: DispatchTimeInterval)
    +
    open func execute<Result>(_ kommands: [Kommand<Result>], concurrent: Bool = true, waitUntilFinished: Bool = false, after delay: DispatchTimeInterval)
    @@ -449,9 +449,9 @@

    Declaration

  • @@ -466,7 +466,7 @@

    Declaration

    Declaration

    Swift

    -
    open func execute<Result>(_ kommands: [Kommand<Result>], concurrent: Bool = true, waitUntilFinished: Bool = false)
    +
    open func execute<Result>(_ kommands: [Kommand<Result>], concurrent: Bool = true, waitUntilFinished: Bool = false)
    @@ -479,9 +479,9 @@

    Declaration

  • @@ -496,7 +496,7 @@

    Declaration

    Declaration

    Swift

    -
    open func cancel<Result>(_ kommands: [Kommand<Result>], throwingError: Bool = false, after delay: DispatchTimeInterval)
    +
    open func cancel<Result>(_ kommands: [Kommand<Result>], throwingError: Bool = false, after delay: DispatchTimeInterval)
    @@ -509,9 +509,9 @@

    Declaration

  • @@ -526,7 +526,7 @@

    Declaration

    Declaration

    Swift

    -
    open func cancel<Result>(_ kommands: [Kommand<Result>], throwingError: Bool = false)
    +
    open func cancel<Result>(_ kommands: [Kommand<Result>], throwingError: Bool = false)
    @@ -539,9 +539,9 @@

    Declaration

  • @@ -556,7 +556,7 @@

    Declaration

    Declaration

    Swift

    -
    open func retry<Result>(_ kommands: [Kommand<Result>], after delay: DispatchTimeInterval)
    +
    open func retry<Result>(_ kommands: [Kommand<Result>], after delay: DispatchTimeInterval)
    @@ -569,9 +569,9 @@

    Declaration

  • @@ -586,7 +586,7 @@

    Declaration

    Declaration

    Swift

    -
    open func retry<Result>(_ kommands: [Kommand<Result>])
    +
    open func retry<Result>(_ kommands: [Kommand<Result>])
    @@ -601,8 +601,8 @@

    Declaration

    diff --git a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/MainDispatcher.html b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/MainDispatcher.html index 2b97c41..0ff7f81 100644 --- a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/MainDispatcher.html +++ b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Classes/MainDispatcher.html @@ -76,7 +76,7 @@

    MainDispatcher

    -
    open class MainDispatcher: Dispatcher
    +
    open class MainDispatcher : Dispatcher
    @@ -106,7 +106,7 @@

    MainDispatcher

    Declaration

    Swift

    -
    public init()
    +
    public init()
    @@ -121,8 +121,8 @@

    Declaration

    diff --git a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Extensions.html b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Extensions.html index 74ff53d..8dd3023 100644 --- a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Extensions.html +++ b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Extensions.html @@ -10,6 +10,7 @@ +
    @@ -99,7 +100,7 @@

    Extensions

    Declaration

    Swift

    -
    struct Array<Element>
    +
    struct Array<Element> : _DestructorSafeContainer
    @@ -111,8 +112,8 @@

    Declaration

    diff --git a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Extensions/Array.html b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Extensions/Array.html index 8f1ad64..6532073 100644 --- a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Extensions/Array.html +++ b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Extensions/Array.html @@ -76,7 +76,7 @@

    Array

    -
    struct Array<Element>
    +
    struct Array<Element> : _DestructorSafeContainer
    @@ -88,9 +88,9 @@

    Array

  • @@ -105,12 +105,12 @@

    Array

    Declaration

    Swift

    -
    public func execute(by operationQueue: OperationQueue, waitUntilFinished: Bool = false)
    +
    public func execute(in operationQueue: OperationQueue, waitUntilFinished: Bool = false)
    @@ -118,9 +118,9 @@

    Declaration

  • @@ -135,12 +135,12 @@

    Declaration

    Declaration

    Swift

    -
    public func execute(by dispatcher: Dispatcher, waitUntilFinished: Bool = false)
    +
    public func execute(in dispatcher: Dispatcher, waitUntilFinished: Bool = false)
    @@ -150,8 +150,8 @@

    Declaration

    diff --git a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Structs.html b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Structs.html index c9ccbc5..276a902 100644 --- a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Structs.html +++ b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Structs.html @@ -10,6 +10,7 @@ +
    @@ -100,7 +101,7 @@

    Structures

    Declaration

    Swift

    -
    public struct KommandCancelledError<Result>: RecoverableError
    +
    public struct KommandCancelledError<Result> : RecoverableError
    @@ -115,8 +116,8 @@

    Declaration

    diff --git a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Structs/KommandCancelledError.html b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Structs/KommandCancelledError.html index 2b60726..60c493f 100644 --- a/docs/docsets/Kommander.docset/Contents/Resources/Documents/Structs/KommandCancelledError.html +++ b/docs/docsets/Kommander.docset/Contents/Resources/Documents/Structs/KommandCancelledError.html @@ -76,7 +76,7 @@

    KommandCancelledError

    -
    public struct KommandCancelledError<Result>: RecoverableError
    +
    public struct KommandCancelledError<Result> : RecoverableError
    @@ -106,7 +106,7 @@

    KommandCancelledError

    Declaration

    Swift

    -
    public var recoveryOptions: [String]
    +
    public var recoveryOptions: [String] { get }
    @@ -119,9 +119,9 @@

    Declaration

  • @@ -143,7 +143,7 @@

    Declaration

    Declaration

    Swift

    -
    public func attemptRecovery(optionIndex recoveryOptionIndex: Int) -> Bool
    +
    public func attemptRecovery(optionIndex recoveryOptionIndex: Int) -> Bool
    @@ -158,8 +158,8 @@

    Declaration

    diff --git a/docs/docsets/Kommander.docset/Contents/Resources/Documents/index.html b/docs/docsets/Kommander.docset/Contents/Resources/Documents/index.html index f4d9d37..1f9b3f0 100644 --- a/docs/docsets/Kommander.docset/Contents/Resources/Documents/index.html +++ b/docs/docsets/Kommander.docset/Contents/Resources/Documents/index.html @@ -101,6 +101,7 @@

    🌟 Features

  • [x] Retry kommand or multiple kommands
  • [x] Set kommand success closure
  • [x] Set kommand error closure
  • +
  • [x] Set kommand error closure specifying Error type
  • [x] Main thread dispatcher
  • [x] Current thread dispatcher
  • [x] Custom OperationQueue dispatcher
  • @@ -165,6 +166,13 @@

    Makin print(String(describing: error!)) }.execute() +

    Specify Error type:
    +
    Kommander().make {
    +    throw MyError.error
    +}.error(MyError.self) { error in
    +    // error is MyError type.
    +}.execute()
    +
    Retry after cancellation:
    let kommand = Kommander().make { () -> Any? in
         // Your code here
    @@ -249,8 +257,8 @@ 

    👮‍♂️ License

    diff --git a/docs/docsets/Kommander.docset/Contents/Resources/Documents/search.json b/docs/docsets/Kommander.docset/Contents/Resources/Documents/search.json index f168c2e..c21ae0d 100644 --- a/docs/docsets/Kommander.docset/Contents/Resources/Documents/search.json +++ b/docs/docsets/Kommander.docset/Contents/Resources/Documents/search.json @@ -1 +1 @@ -{"Structs/KommandCancelledError.html#/s:9Kommander21KommandCancelledErrorV15recoveryOptionsSaySSGvp":{"name":"recoveryOptions","abstract":"

    Provides a set of possible recovery options to present to the user.

    ","parent_name":"KommandCancelledError"},"Structs/KommandCancelledError.html#/s:9Kommander21KommandCancelledErrorV15attemptRecoverySbSi11optionIndex_tF":{"name":"attemptRecovery(optionIndex:)","abstract":"

    Attempt to recover from this error when the user selected the","parent_name":"KommandCancelledError"},"Structs/KommandCancelledError.html":{"name":"KommandCancelledError","abstract":"

    Kommander cancelled error

    "},"Extensions/Array.html#/s:Sa9KommanderSo9OperationCRbzlE7executeySo0B5QueueC2by_Sb17waitUntilFinishedtF":{"name":"execute(by:waitUntilFinished:)","abstract":"

    Execute [Operation] instance collection in OperationQueue

    ","parent_name":"Array"},"Extensions/Array.html#/s:Sa9KommanderSo9OperationCRbzlE7executeyAA10DispatcherC2by_Sb17waitUntilFinishedtF":{"name":"execute(by:waitUntilFinished:)","abstract":"

    Execute [Operation] instance collection in Dispatcher

    ","parent_name":"Array"},"Extensions/Array.html":{"name":"Array"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO13uninitializedAEyx_GAGmlF":{"name":"uninitialized","abstract":"

    Uninitialized state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO5readyAEyx_GAGmlF":{"name":"ready","abstract":"

    Ready state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO7runningAEyx_GAGmlF":{"name":"running","abstract":"

    Executing state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO9succeededAEyx_GxcAGmlF":{"name":"succeeded","abstract":"

    Succeeded state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO6failedAEyx_Gs5Error_pcAGmlF":{"name":"failed","abstract":"

    Failed state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO9cancelledAEyx_GAGmlF":{"name":"cancelled","abstract":"

    Cancelled state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:s9EquatableP2eeoiSbx_xtFZ":{"name":"==(_:_:)","parent_name":"State"},"Classes/Kommand/State.html":{"name":"State","abstract":"

    Kommand state

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC13ActionClosurea":{"name":"ActionClosure","abstract":"

    Action closure type

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC14SuccessClosurea":{"name":"SuccessClosure","abstract":"

    Success closure type

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC12ErrorClosurea":{"name":"ErrorClosure","abstract":"

    Error closure type

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC12RetryClosurea":{"name":"RetryClosure","abstract":"

    Retry closure type

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5stateAC5StateOyx_Gvp":{"name":"state","abstract":"

    Kommand state

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandCACyxGAA10DispatcherC9deliverer_AF8executorxyKc13actionClosuretcfc":{"name":"init(deliverer:executor:actionClosure:)","abstract":"

    Kommand instance with deliverer, executor and actionClosure returning generic and throwing errors

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC7successACyxGXDyxcF":{"name":"success(_:)","abstract":"

    Specify Kommand success closure

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5errorACyxGXDys5Error_pSgcF":{"name":"error(_:)","abstract":"

    Specify Kommand error closure

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5retryACyxGXDSbs5Error_pSg_SutcF":{"name":"retry(_:)","abstract":"

    Specify Kommand retry closure

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC6resultxSgvp":{"name":"result","abstract":"

    Undocumented

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5errors5Error_pSgvp":{"name":"error","abstract":"

    Undocumented

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC7executeACyxGXD8Dispatch0D12TimeIntervalO5after_tF":{"name":"execute(after:)","abstract":"

    Execute Kommand after delay

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC7executeACyxGXDyF":{"name":"execute()","abstract":"

    Execute Kommand

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC6cancelACyxGXDSb_8Dispatch0D12TimeIntervalO5aftertF":{"name":"cancel(_:after:)","abstract":"

    Cancel Kommand after delay

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC6cancelACyxGXDSbF":{"name":"cancel(_:)","abstract":"

    Cancel Kommand

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5retryACyxGXD8Dispatch0D12TimeIntervalO5after_tF":{"name":"retry(after:)","abstract":"

    Retry Kommand after delay

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5retryACyxGXDyF":{"name":"retry()","abstract":"

    Retry Kommand

    ","parent_name":"Kommand"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC4mainACvpZ":{"name":"main","abstract":"

    Main queue dispatcher

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7currentACvpZ":{"name":"current","abstract":"

    Current queue dispatcher

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7defaultACvpZ":{"name":"default","abstract":"

    Dispatcher with default quality of service

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC15userInteractiveACvpZ":{"name":"userInteractive","abstract":"

    Dispatcher with user interactive quality of service

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC13userInitiatedACvpZ":{"name":"userInitiated","abstract":"

    Dispatcher with user initiated quality of service

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7utilityACvpZ":{"name":"utility","abstract":"

    Dispatcher with utility quality of service

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC10backgroundACvpZ":{"name":"background","abstract":"

    Dispatcher with background quality of service

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherCACSS4name_SC16QualityOfServiceO3qosSi23maxConcurrentOperationstcfc":{"name":"init(name:qos:maxConcurrentOperations:)","abstract":"

    Dispatcher instance with custom OperationQueue

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7executeySo9OperationCF":{"name":"execute(_:)","abstract":"

    Execute Operation instance in OperationQueue

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7executeySaySo9OperationCG_Sb17waitUntilFinishedtF":{"name":"execute(_:waitUntilFinished:)","abstract":"

    Execute [Operation] instance collection in OperationQueue

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7executeSo9OperationCyycF":{"name":"execute(_:)","abstract":"

    Execute closure in OperationQueue

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7executeSaySo9OperationCGSayyycG_Sb10concurrentSb17waitUntilFinishedtF":{"name":"execute(_:concurrent:waitUntilFinished:)","abstract":"

    Execute [closure] collection in OperationQueue concurrently or sequentially

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7executey8Dispatch0D12TimeIntervalO5after_yyc7closuretF":{"name":"execute(after:closure:)","abstract":"

    Execute closure in DispatchQueue after delay

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7executey8Dispatch0D12TimeIntervalO5after_AE0D8WorkItemC4worktF":{"name":"execute(after:work:)","abstract":"

    Execute DispatchWorkItem instance in DispatchQueue after delay

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7executey8Dispatch0D8WorkItemCF":{"name":"execute(_:)","abstract":"

    Execute DispatchWorkItem instance in DispatchQueue

    ","parent_name":"Dispatcher"},"Classes/MainDispatcher.html#/s:9Kommander14MainDispatcherCACycfc":{"name":"init()","abstract":"

    Dispatcher instance with main OperationQueue

    ","parent_name":"MainDispatcher"},"Classes/Kommander.html#/s:9KommanderAAC4mainABvpZ":{"name":"main","abstract":"

    Kommander instance with CurrentDispatcher deliverer and MainDispatcher executor

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC7currentABvpZ":{"name":"current","abstract":"

    Kommander instance with CurrentDispatcher deliverer and CurrentDispatcher executor

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC7defaultABvpZ":{"name":"default","abstract":"

    Kommander instance with CurrentDispatcher deliverer and Dispatcher executor with default quality of service

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC15userInteractiveABvpZ":{"name":"userInteractive","abstract":"

    Kommander instance with CurrentDispatcher deliverer and Dispatcher executor with user interactive quality of service

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC13userInitiatedABvpZ":{"name":"userInitiated","abstract":"

    Kommander instance with CurrentDispatcher deliverer and Dispatcher executor with user initiated quality of service

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC7utilityABvpZ":{"name":"utility","abstract":"

    Kommander instance with CurrentDispatcher deliverer and Dispatcher executor with utility quality of service

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC10backgroundABvpZ":{"name":"background","abstract":"

    Kommander instance with CurrentDispatcher deliverer and Dispatcher executor with background quality of service

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAACAbA10DispatcherC9deliverer_AD8executortcfc":{"name":"init(deliverer:executor:)","abstract":"

    Kommander instance with deliverer and executor

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAACAbA10DispatcherC9deliverer_SS4nameSC16QualityOfServiceO3qosSi23maxConcurrentOperationstcfc":{"name":"init(deliverer:name:qos:maxConcurrentOperations:)","abstract":"

    Kommander instance with deliverer and custom OperationQueue executor

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC4makeAA7KommandCyxGxyKclF":{"name":"make(_:)","abstract":"

    Build Kommand instance with an actionClosure returning generic and throwing errors

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC4makeSayAA7KommandCyxGGSayxyKcGlF":{"name":"make(_:)","abstract":"

    Build [Kommand] instances collection with actionClosures returning generic and throwing errors

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC7executeySayAA7KommandCyxGG_Sb10concurrentSb17waitUntilFinished8Dispatch0H12TimeIntervalO5aftertlF":{"name":"execute(_:concurrent:waitUntilFinished:after:)","abstract":"

    Execute [Kommand] instances collection concurrently or sequentially after delay

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC7executeySayAA7KommandCyxGG_Sb10concurrentSb17waitUntilFinishedtlF":{"name":"execute(_:concurrent:waitUntilFinished:)","abstract":"

    Execute [Kommand] instances collection concurrently or sequentially

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC6cancelySayAA7KommandCyxGG_Sb13throwingError8Dispatch0F12TimeIntervalO5aftertlF":{"name":"cancel(_:throwingError:after:)","abstract":"

    Cancel [Kommand] instances collection after delay

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC6cancelySayAA7KommandCyxGG_Sb13throwingErrortlF":{"name":"cancel(_:throwingError:)","abstract":"

    Cancel [Kommand] instances collection

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC5retryySayAA7KommandCyxGG_8Dispatch0D12TimeIntervalO5aftertlF":{"name":"retry(_:after:)","abstract":"

    Retry [Kommand] instances collection after delay

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC5retryySayAA7KommandCyxGGlF":{"name":"retry(_:)","abstract":"

    Retry [Kommand] instances collection

    ","parent_name":"Kommander"},"Classes/CurrentDispatcher.html#/s:9Kommander17CurrentDispatcherCACycfc":{"name":"init()","abstract":"

    Dispatcher instance with current OperationQueue

    ","parent_name":"CurrentDispatcher"},"Classes/CurrentDispatcher.html":{"name":"CurrentDispatcher","abstract":"

    Current queue dispatcher

    "},"Classes/Kommander.html":{"name":"Kommander","abstract":"

    Kommander manager

    "},"Classes/MainDispatcher.html":{"name":"MainDispatcher","abstract":"

    Main queue dispatcher

    "},"Classes/Dispatcher.html":{"name":"Dispatcher","abstract":"

    Dispatcher

    "},"Classes/Kommand.html":{"name":"Kommand","abstract":"

    Generic Kommand

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Extensions.html":{"name":"Extensions","abstract":"

    The following extensions are available globally.

    "},"Structs.html":{"name":"Structures","abstract":"

    The following structures are available globally.

    "}} \ No newline at end of file +{"Structs/KommandCancelledError.html#/s:9Kommander21KommandCancelledErrorV15recoveryOptionsSaySSGvp":{"name":"recoveryOptions","abstract":"

    Provides a set of possible recovery options to present to the user.

    ","parent_name":"KommandCancelledError"},"Structs/KommandCancelledError.html#/s:9Kommander21KommandCancelledErrorV15attemptRecovery11optionIndexSbSi_tF":{"name":"attemptRecovery(optionIndex:)","abstract":"

    Attempt to recover from this error when the user selected the","parent_name":"KommandCancelledError"},"Structs/KommandCancelledError.html":{"name":"KommandCancelledError","abstract":"

    Kommander cancelled error

    "},"Extensions/Array.html#/s:Sa9KommanderSo11NSOperationCRbzlE7execute2in17waitUntilFinishedySo0B5QueueC_SbtF":{"name":"execute(in:waitUntilFinished:)","abstract":"

    Execute [Operation] instance collection in OperationQueue

    ","parent_name":"Array"},"Extensions/Array.html#/s:Sa9KommanderSo11NSOperationCRbzlE7execute2in17waitUntilFinishedyAA10DispatcherC_SbtF":{"name":"execute(in:waitUntilFinished:)","abstract":"

    Execute [Operation] instance collection in Dispatcher

    ","parent_name":"Array"},"Extensions/Array.html":{"name":"Array"},"Classes/MainDispatcher.html#/s:9Kommander14MainDispatcherCACycfc":{"name":"init()","abstract":"

    Dispatcher instance with main OperationQueue

    ","parent_name":"MainDispatcher"},"Classes/Kommander.html#/s:9KommanderAAC4mainABvpZ":{"name":"main","abstract":"

    Kommander instance with CurrentDispatcher deliverer and MainDispatcher executor

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC7currentABvpZ":{"name":"current","abstract":"

    Kommander instance with CurrentDispatcher deliverer and CurrentDispatcher executor

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC7defaultABvpZ":{"name":"default","abstract":"

    Kommander instance with CurrentDispatcher deliverer and Dispatcher executor with default quality of service

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC15userInteractiveABvpZ":{"name":"userInteractive","abstract":"

    Kommander instance with CurrentDispatcher deliverer and Dispatcher executor with user interactive quality of service

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC13userInitiatedABvpZ":{"name":"userInitiated","abstract":"

    Kommander instance with CurrentDispatcher deliverer and Dispatcher executor with user initiated quality of service

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC7utilityABvpZ":{"name":"utility","abstract":"

    Kommander instance with CurrentDispatcher deliverer and Dispatcher executor with utility quality of service

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC10backgroundABvpZ":{"name":"background","abstract":"

    Kommander instance with CurrentDispatcher deliverer and Dispatcher executor with background quality of service

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC9deliverer8executorAbA10DispatcherC_AFtcfc":{"name":"init(deliverer:executor:)","abstract":"

    Kommander instance with deliverer and executor

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC9deliverer4name3qos23maxConcurrentOperationsAbA10DispatcherC_SSSo18NSQualityOfServiceVSitcfc":{"name":"init(deliverer:name:qos:maxConcurrentOperations:)","abstract":"

    Kommander instance with deliverer and custom OperationQueue executor

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC4makeyAA7KommandCyxGxyKclF":{"name":"make(_:)","abstract":"

    Build Kommand instance with an actionClosure returning generic and throwing errors

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC4makeySayAA7KommandCyxGGSayxyKcGlF":{"name":"make(_:)","abstract":"

    Build [Kommand] instances collection with actionClosures returning generic and throwing errors

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC7execute_10concurrent17waitUntilFinished5afterySayAA7KommandCyxGG_S2b8Dispatch0I12TimeIntervalOtlF":{"name":"execute(_:concurrent:waitUntilFinished:after:)","abstract":"

    Execute [Kommand] instances collection concurrently or sequentially after delay

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC7execute_10concurrent17waitUntilFinishedySayAA7KommandCyxGG_S2btlF":{"name":"execute(_:concurrent:waitUntilFinished:)","abstract":"

    Execute [Kommand] instances collection concurrently or sequentially

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC6cancel_13throwingError5afterySayAA7KommandCyxGG_Sb8Dispatch0G12TimeIntervalOtlF":{"name":"cancel(_:throwingError:after:)","abstract":"

    Cancel [Kommand] instances collection after delay

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC6cancel_13throwingErrorySayAA7KommandCyxGG_SbtlF":{"name":"cancel(_:throwingError:)","abstract":"

    Cancel [Kommand] instances collection

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC5retry_5afterySayAA7KommandCyxGG_8Dispatch0E12TimeIntervalOtlF":{"name":"retry(_:after:)","abstract":"

    Retry [Kommand] instances collection after delay

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC5retryyySayAA7KommandCyxGGlF":{"name":"retry(_:)","abstract":"

    Retry [Kommand] instances collection

    ","parent_name":"Kommander"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO13uninitializedyAEyx_GAGmlF":{"name":"uninitialized","abstract":"

    Uninitialized state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO5readyyAEyx_GAGmlF":{"name":"ready","abstract":"

    Ready state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO7runningyAEyx_GAGmlF":{"name":"running","abstract":"

    Executing state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO9succeededyAEyx_GxcAGmlF":{"name":"succeeded(_:)","abstract":"

    Succeeded state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO6failedyAEyx_Gs5Error_pcAGmlF":{"name":"failed(_:)","abstract":"

    Failed state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO9cancelledyAEyx_GAGmlF":{"name":"cancelled","abstract":"

    Cancelled state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"State"},"Classes/Kommand/State.html":{"name":"State","abstract":"

    Kommand state

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC13ActionClosurea":{"name":"ActionClosure","abstract":"

    Action closure type

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC14SuccessClosurea":{"name":"SuccessClosure","abstract":"

    Success closure type

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC12ErrorClosurea":{"name":"ErrorClosure","abstract":"

    Error closure type

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC12RetryClosurea":{"name":"RetryClosure","abstract":"

    Retry closure type

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5stateAC5StateOyx_Gvp":{"name":"state","abstract":"

    Kommand state

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC9deliverer8executor13actionClosureACyxGAA10DispatcherC_AIxyKctcfc":{"name":"init(deliverer:executor:actionClosure:)","abstract":"

    Kommand instance with deliverer, executor and actionClosure returning generic and throwing errors

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC7successyACyxGXDyxcF":{"name":"success(_:)","abstract":"

    Specify Kommand success closure

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5erroryACyxGXDys5Error_pSgcF":{"name":"error(_:)","abstract":"

    Specify Kommand error closure

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5erroryACyxGXDqd__m_yqd__cts5ErrorRd__lF":{"name":"error(_:_:)","abstract":"

    Specify Kommand error closure

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5retryyACyxGXDSbs5Error_pSg_SutcF":{"name":"retry(_:)","abstract":"

    Specify Kommand retry closure

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5retryyACyxGXDqd__m_Sbqd__Sg_Sutcts5ErrorRd__lF":{"name":"retry(_:_:)","abstract":"

    Specify Kommand error closure

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC6resultxSgvp":{"name":"result","abstract":"

    Undocumented

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5errors5Error_pSgvp":{"name":"error","abstract":"

    Undocumented

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC7execute5afterACyxGXD8Dispatch0E12TimeIntervalO_tF":{"name":"execute(after:)","abstract":"

    Execute Kommand after delay

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC7executeACyxGXDyF":{"name":"execute()","abstract":"

    Execute Kommand

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC6cancel_5afterACyxGXDSb_8Dispatch0E12TimeIntervalOtF":{"name":"cancel(_:after:)","abstract":"

    Cancel Kommand after delay

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC6cancelyACyxGXDSbF":{"name":"cancel(_:)","abstract":"

    Cancel Kommand

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5retry5afterACyxGXD8Dispatch0E12TimeIntervalO_tF":{"name":"retry(after:)","abstract":"

    Retry Kommand after delay

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5retryACyxGXDyF":{"name":"retry()","abstract":"

    Retry Kommand

    ","parent_name":"Kommand"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC4mainACvpZ":{"name":"main","abstract":"

    Main queue dispatcher

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7currentACvpZ":{"name":"current","abstract":"

    Current queue dispatcher

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7defaultACvpZ":{"name":"default","abstract":"

    Dispatcher with default quality of service

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC15userInteractiveACvpZ":{"name":"userInteractive","abstract":"

    Dispatcher with user interactive quality of service

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC13userInitiatedACvpZ":{"name":"userInitiated","abstract":"

    Dispatcher with user initiated quality of service

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7utilityACvpZ":{"name":"utility","abstract":"

    Dispatcher with utility quality of service

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC10backgroundACvpZ":{"name":"background","abstract":"

    Dispatcher with background quality of service

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC4name3qos23maxConcurrentOperationsACSS_So18NSQualityOfServiceVSitcfc":{"name":"init(name:qos:maxConcurrentOperations:)","abstract":"

    Dispatcher instance with custom OperationQueue

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7executeyySo11NSOperationCF":{"name":"execute(_:)","abstract":"

    Execute Operation instance in OperationQueue

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7execute_17waitUntilFinishedySaySo11NSOperationCG_SbtF":{"name":"execute(_:waitUntilFinished:)","abstract":"

    Execute [Operation] instance collection in OperationQueue

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7executeySo11NSOperationCyycF":{"name":"execute(_:)","abstract":"

    Execute closure in OperationQueue

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7execute_10concurrent17waitUntilFinishedSaySo11NSOperationCGSayyycG_S2btF":{"name":"execute(_:concurrent:waitUntilFinished:)","abstract":"

    Execute [closure] collection in OperationQueue concurrently or sequentially

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7execute5after7closurey8Dispatch0F12TimeIntervalO_yyctF":{"name":"execute(after:closure:)","abstract":"

    Execute closure in DispatchQueue after delay

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7execute5after4worky8Dispatch0F12TimeIntervalO_AG0F8WorkItemCtF":{"name":"execute(after:work:)","abstract":"

    Execute DispatchWorkItem instance in DispatchQueue after delay

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7executeyy8Dispatch0D8WorkItemCF":{"name":"execute(_:)","abstract":"

    Execute DispatchWorkItem instance in DispatchQueue

    ","parent_name":"Dispatcher"},"Classes/CurrentDispatcher.html#/s:9Kommander17CurrentDispatcherCACycfc":{"name":"init()","abstract":"

    Dispatcher instance with current OperationQueue

    ","parent_name":"CurrentDispatcher"},"Classes/CurrentDispatcher.html":{"name":"CurrentDispatcher","abstract":"

    Current queue dispatcher

    "},"Classes/Dispatcher.html":{"name":"Dispatcher","abstract":"

    Dispatcher

    "},"Classes/Kommand.html":{"name":"Kommand","abstract":"

    Generic Kommand

    "},"Classes/Kommander.html":{"name":"Kommander","abstract":"

    Kommander manager

    "},"Classes/MainDispatcher.html":{"name":"MainDispatcher","abstract":"

    Main queue dispatcher

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Extensions.html":{"name":"Extensions","abstract":"

    The following extensions are available globally.

    "},"Structs.html":{"name":"Structures","abstract":"

    The following structures are available globally.

    "}} \ No newline at end of file diff --git a/docs/docsets/Kommander.docset/Contents/Resources/docSet.dsidx b/docs/docsets/Kommander.docset/Contents/Resources/docSet.dsidx index 128fc6f..d2cc061 100644 Binary files a/docs/docsets/Kommander.docset/Contents/Resources/docSet.dsidx and b/docs/docsets/Kommander.docset/Contents/Resources/docSet.dsidx differ diff --git a/docs/docsets/Kommander.tgz b/docs/docsets/Kommander.tgz index 78d2275..cc04497 100644 Binary files a/docs/docsets/Kommander.tgz and b/docs/docsets/Kommander.tgz differ diff --git a/docs/index.html b/docs/index.html index f4d9d37..1f9b3f0 100644 --- a/docs/index.html +++ b/docs/index.html @@ -101,6 +101,7 @@

    🌟 Features

  • [x] Retry kommand or multiple kommands
  • [x] Set kommand success closure
  • [x] Set kommand error closure
  • +
  • [x] Set kommand error closure specifying Error type
  • [x] Main thread dispatcher
  • [x] Current thread dispatcher
  • [x] Custom OperationQueue dispatcher
  • @@ -165,6 +166,13 @@

    Makin print(String(describing: error!)) }.execute()

    +
    Specify Error type:
    +
    Kommander().make {
    +    throw MyError.error
    +}.error(MyError.self) { error in
    +    // error is MyError type.
    +}.execute()
    +
    Retry after cancellation:
    let kommand = Kommander().make { () -> Any? in
         // Your code here
    @@ -249,8 +257,8 @@ 

    👮‍♂️ License

    diff --git a/docs/search.json b/docs/search.json index f168c2e..c21ae0d 100644 --- a/docs/search.json +++ b/docs/search.json @@ -1 +1 @@ -{"Structs/KommandCancelledError.html#/s:9Kommander21KommandCancelledErrorV15recoveryOptionsSaySSGvp":{"name":"recoveryOptions","abstract":"

    Provides a set of possible recovery options to present to the user.

    ","parent_name":"KommandCancelledError"},"Structs/KommandCancelledError.html#/s:9Kommander21KommandCancelledErrorV15attemptRecoverySbSi11optionIndex_tF":{"name":"attemptRecovery(optionIndex:)","abstract":"

    Attempt to recover from this error when the user selected the","parent_name":"KommandCancelledError"},"Structs/KommandCancelledError.html":{"name":"KommandCancelledError","abstract":"

    Kommander cancelled error

    "},"Extensions/Array.html#/s:Sa9KommanderSo9OperationCRbzlE7executeySo0B5QueueC2by_Sb17waitUntilFinishedtF":{"name":"execute(by:waitUntilFinished:)","abstract":"

    Execute [Operation] instance collection in OperationQueue

    ","parent_name":"Array"},"Extensions/Array.html#/s:Sa9KommanderSo9OperationCRbzlE7executeyAA10DispatcherC2by_Sb17waitUntilFinishedtF":{"name":"execute(by:waitUntilFinished:)","abstract":"

    Execute [Operation] instance collection in Dispatcher

    ","parent_name":"Array"},"Extensions/Array.html":{"name":"Array"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO13uninitializedAEyx_GAGmlF":{"name":"uninitialized","abstract":"

    Uninitialized state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO5readyAEyx_GAGmlF":{"name":"ready","abstract":"

    Ready state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO7runningAEyx_GAGmlF":{"name":"running","abstract":"

    Executing state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO9succeededAEyx_GxcAGmlF":{"name":"succeeded","abstract":"

    Succeeded state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO6failedAEyx_Gs5Error_pcAGmlF":{"name":"failed","abstract":"

    Failed state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO9cancelledAEyx_GAGmlF":{"name":"cancelled","abstract":"

    Cancelled state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:s9EquatableP2eeoiSbx_xtFZ":{"name":"==(_:_:)","parent_name":"State"},"Classes/Kommand/State.html":{"name":"State","abstract":"

    Kommand state

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC13ActionClosurea":{"name":"ActionClosure","abstract":"

    Action closure type

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC14SuccessClosurea":{"name":"SuccessClosure","abstract":"

    Success closure type

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC12ErrorClosurea":{"name":"ErrorClosure","abstract":"

    Error closure type

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC12RetryClosurea":{"name":"RetryClosure","abstract":"

    Retry closure type

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5stateAC5StateOyx_Gvp":{"name":"state","abstract":"

    Kommand state

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandCACyxGAA10DispatcherC9deliverer_AF8executorxyKc13actionClosuretcfc":{"name":"init(deliverer:executor:actionClosure:)","abstract":"

    Kommand instance with deliverer, executor and actionClosure returning generic and throwing errors

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC7successACyxGXDyxcF":{"name":"success(_:)","abstract":"

    Specify Kommand success closure

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5errorACyxGXDys5Error_pSgcF":{"name":"error(_:)","abstract":"

    Specify Kommand error closure

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5retryACyxGXDSbs5Error_pSg_SutcF":{"name":"retry(_:)","abstract":"

    Specify Kommand retry closure

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC6resultxSgvp":{"name":"result","abstract":"

    Undocumented

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5errors5Error_pSgvp":{"name":"error","abstract":"

    Undocumented

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC7executeACyxGXD8Dispatch0D12TimeIntervalO5after_tF":{"name":"execute(after:)","abstract":"

    Execute Kommand after delay

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC7executeACyxGXDyF":{"name":"execute()","abstract":"

    Execute Kommand

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC6cancelACyxGXDSb_8Dispatch0D12TimeIntervalO5aftertF":{"name":"cancel(_:after:)","abstract":"

    Cancel Kommand after delay

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC6cancelACyxGXDSbF":{"name":"cancel(_:)","abstract":"

    Cancel Kommand

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5retryACyxGXD8Dispatch0D12TimeIntervalO5after_tF":{"name":"retry(after:)","abstract":"

    Retry Kommand after delay

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5retryACyxGXDyF":{"name":"retry()","abstract":"

    Retry Kommand

    ","parent_name":"Kommand"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC4mainACvpZ":{"name":"main","abstract":"

    Main queue dispatcher

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7currentACvpZ":{"name":"current","abstract":"

    Current queue dispatcher

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7defaultACvpZ":{"name":"default","abstract":"

    Dispatcher with default quality of service

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC15userInteractiveACvpZ":{"name":"userInteractive","abstract":"

    Dispatcher with user interactive quality of service

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC13userInitiatedACvpZ":{"name":"userInitiated","abstract":"

    Dispatcher with user initiated quality of service

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7utilityACvpZ":{"name":"utility","abstract":"

    Dispatcher with utility quality of service

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC10backgroundACvpZ":{"name":"background","abstract":"

    Dispatcher with background quality of service

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherCACSS4name_SC16QualityOfServiceO3qosSi23maxConcurrentOperationstcfc":{"name":"init(name:qos:maxConcurrentOperations:)","abstract":"

    Dispatcher instance with custom OperationQueue

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7executeySo9OperationCF":{"name":"execute(_:)","abstract":"

    Execute Operation instance in OperationQueue

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7executeySaySo9OperationCG_Sb17waitUntilFinishedtF":{"name":"execute(_:waitUntilFinished:)","abstract":"

    Execute [Operation] instance collection in OperationQueue

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7executeSo9OperationCyycF":{"name":"execute(_:)","abstract":"

    Execute closure in OperationQueue

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7executeSaySo9OperationCGSayyycG_Sb10concurrentSb17waitUntilFinishedtF":{"name":"execute(_:concurrent:waitUntilFinished:)","abstract":"

    Execute [closure] collection in OperationQueue concurrently or sequentially

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7executey8Dispatch0D12TimeIntervalO5after_yyc7closuretF":{"name":"execute(after:closure:)","abstract":"

    Execute closure in DispatchQueue after delay

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7executey8Dispatch0D12TimeIntervalO5after_AE0D8WorkItemC4worktF":{"name":"execute(after:work:)","abstract":"

    Execute DispatchWorkItem instance in DispatchQueue after delay

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7executey8Dispatch0D8WorkItemCF":{"name":"execute(_:)","abstract":"

    Execute DispatchWorkItem instance in DispatchQueue

    ","parent_name":"Dispatcher"},"Classes/MainDispatcher.html#/s:9Kommander14MainDispatcherCACycfc":{"name":"init()","abstract":"

    Dispatcher instance with main OperationQueue

    ","parent_name":"MainDispatcher"},"Classes/Kommander.html#/s:9KommanderAAC4mainABvpZ":{"name":"main","abstract":"

    Kommander instance with CurrentDispatcher deliverer and MainDispatcher executor

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC7currentABvpZ":{"name":"current","abstract":"

    Kommander instance with CurrentDispatcher deliverer and CurrentDispatcher executor

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC7defaultABvpZ":{"name":"default","abstract":"

    Kommander instance with CurrentDispatcher deliverer and Dispatcher executor with default quality of service

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC15userInteractiveABvpZ":{"name":"userInteractive","abstract":"

    Kommander instance with CurrentDispatcher deliverer and Dispatcher executor with user interactive quality of service

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC13userInitiatedABvpZ":{"name":"userInitiated","abstract":"

    Kommander instance with CurrentDispatcher deliverer and Dispatcher executor with user initiated quality of service

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC7utilityABvpZ":{"name":"utility","abstract":"

    Kommander instance with CurrentDispatcher deliverer and Dispatcher executor with utility quality of service

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC10backgroundABvpZ":{"name":"background","abstract":"

    Kommander instance with CurrentDispatcher deliverer and Dispatcher executor with background quality of service

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAACAbA10DispatcherC9deliverer_AD8executortcfc":{"name":"init(deliverer:executor:)","abstract":"

    Kommander instance with deliverer and executor

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAACAbA10DispatcherC9deliverer_SS4nameSC16QualityOfServiceO3qosSi23maxConcurrentOperationstcfc":{"name":"init(deliverer:name:qos:maxConcurrentOperations:)","abstract":"

    Kommander instance with deliverer and custom OperationQueue executor

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC4makeAA7KommandCyxGxyKclF":{"name":"make(_:)","abstract":"

    Build Kommand instance with an actionClosure returning generic and throwing errors

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC4makeSayAA7KommandCyxGGSayxyKcGlF":{"name":"make(_:)","abstract":"

    Build [Kommand] instances collection with actionClosures returning generic and throwing errors

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC7executeySayAA7KommandCyxGG_Sb10concurrentSb17waitUntilFinished8Dispatch0H12TimeIntervalO5aftertlF":{"name":"execute(_:concurrent:waitUntilFinished:after:)","abstract":"

    Execute [Kommand] instances collection concurrently or sequentially after delay

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC7executeySayAA7KommandCyxGG_Sb10concurrentSb17waitUntilFinishedtlF":{"name":"execute(_:concurrent:waitUntilFinished:)","abstract":"

    Execute [Kommand] instances collection concurrently or sequentially

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC6cancelySayAA7KommandCyxGG_Sb13throwingError8Dispatch0F12TimeIntervalO5aftertlF":{"name":"cancel(_:throwingError:after:)","abstract":"

    Cancel [Kommand] instances collection after delay

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC6cancelySayAA7KommandCyxGG_Sb13throwingErrortlF":{"name":"cancel(_:throwingError:)","abstract":"

    Cancel [Kommand] instances collection

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC5retryySayAA7KommandCyxGG_8Dispatch0D12TimeIntervalO5aftertlF":{"name":"retry(_:after:)","abstract":"

    Retry [Kommand] instances collection after delay

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC5retryySayAA7KommandCyxGGlF":{"name":"retry(_:)","abstract":"

    Retry [Kommand] instances collection

    ","parent_name":"Kommander"},"Classes/CurrentDispatcher.html#/s:9Kommander17CurrentDispatcherCACycfc":{"name":"init()","abstract":"

    Dispatcher instance with current OperationQueue

    ","parent_name":"CurrentDispatcher"},"Classes/CurrentDispatcher.html":{"name":"CurrentDispatcher","abstract":"

    Current queue dispatcher

    "},"Classes/Kommander.html":{"name":"Kommander","abstract":"

    Kommander manager

    "},"Classes/MainDispatcher.html":{"name":"MainDispatcher","abstract":"

    Main queue dispatcher

    "},"Classes/Dispatcher.html":{"name":"Dispatcher","abstract":"

    Dispatcher

    "},"Classes/Kommand.html":{"name":"Kommand","abstract":"

    Generic Kommand

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Extensions.html":{"name":"Extensions","abstract":"

    The following extensions are available globally.

    "},"Structs.html":{"name":"Structures","abstract":"

    The following structures are available globally.

    "}} \ No newline at end of file +{"Structs/KommandCancelledError.html#/s:9Kommander21KommandCancelledErrorV15recoveryOptionsSaySSGvp":{"name":"recoveryOptions","abstract":"

    Provides a set of possible recovery options to present to the user.

    ","parent_name":"KommandCancelledError"},"Structs/KommandCancelledError.html#/s:9Kommander21KommandCancelledErrorV15attemptRecovery11optionIndexSbSi_tF":{"name":"attemptRecovery(optionIndex:)","abstract":"

    Attempt to recover from this error when the user selected the","parent_name":"KommandCancelledError"},"Structs/KommandCancelledError.html":{"name":"KommandCancelledError","abstract":"

    Kommander cancelled error

    "},"Extensions/Array.html#/s:Sa9KommanderSo11NSOperationCRbzlE7execute2in17waitUntilFinishedySo0B5QueueC_SbtF":{"name":"execute(in:waitUntilFinished:)","abstract":"

    Execute [Operation] instance collection in OperationQueue

    ","parent_name":"Array"},"Extensions/Array.html#/s:Sa9KommanderSo11NSOperationCRbzlE7execute2in17waitUntilFinishedyAA10DispatcherC_SbtF":{"name":"execute(in:waitUntilFinished:)","abstract":"

    Execute [Operation] instance collection in Dispatcher

    ","parent_name":"Array"},"Extensions/Array.html":{"name":"Array"},"Classes/MainDispatcher.html#/s:9Kommander14MainDispatcherCACycfc":{"name":"init()","abstract":"

    Dispatcher instance with main OperationQueue

    ","parent_name":"MainDispatcher"},"Classes/Kommander.html#/s:9KommanderAAC4mainABvpZ":{"name":"main","abstract":"

    Kommander instance with CurrentDispatcher deliverer and MainDispatcher executor

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC7currentABvpZ":{"name":"current","abstract":"

    Kommander instance with CurrentDispatcher deliverer and CurrentDispatcher executor

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC7defaultABvpZ":{"name":"default","abstract":"

    Kommander instance with CurrentDispatcher deliverer and Dispatcher executor with default quality of service

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC15userInteractiveABvpZ":{"name":"userInteractive","abstract":"

    Kommander instance with CurrentDispatcher deliverer and Dispatcher executor with user interactive quality of service

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC13userInitiatedABvpZ":{"name":"userInitiated","abstract":"

    Kommander instance with CurrentDispatcher deliverer and Dispatcher executor with user initiated quality of service

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC7utilityABvpZ":{"name":"utility","abstract":"

    Kommander instance with CurrentDispatcher deliverer and Dispatcher executor with utility quality of service

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC10backgroundABvpZ":{"name":"background","abstract":"

    Kommander instance with CurrentDispatcher deliverer and Dispatcher executor with background quality of service

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC9deliverer8executorAbA10DispatcherC_AFtcfc":{"name":"init(deliverer:executor:)","abstract":"

    Kommander instance with deliverer and executor

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC9deliverer4name3qos23maxConcurrentOperationsAbA10DispatcherC_SSSo18NSQualityOfServiceVSitcfc":{"name":"init(deliverer:name:qos:maxConcurrentOperations:)","abstract":"

    Kommander instance with deliverer and custom OperationQueue executor

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC4makeyAA7KommandCyxGxyKclF":{"name":"make(_:)","abstract":"

    Build Kommand instance with an actionClosure returning generic and throwing errors

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC4makeySayAA7KommandCyxGGSayxyKcGlF":{"name":"make(_:)","abstract":"

    Build [Kommand] instances collection with actionClosures returning generic and throwing errors

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC7execute_10concurrent17waitUntilFinished5afterySayAA7KommandCyxGG_S2b8Dispatch0I12TimeIntervalOtlF":{"name":"execute(_:concurrent:waitUntilFinished:after:)","abstract":"

    Execute [Kommand] instances collection concurrently or sequentially after delay

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC7execute_10concurrent17waitUntilFinishedySayAA7KommandCyxGG_S2btlF":{"name":"execute(_:concurrent:waitUntilFinished:)","abstract":"

    Execute [Kommand] instances collection concurrently or sequentially

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC6cancel_13throwingError5afterySayAA7KommandCyxGG_Sb8Dispatch0G12TimeIntervalOtlF":{"name":"cancel(_:throwingError:after:)","abstract":"

    Cancel [Kommand] instances collection after delay

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC6cancel_13throwingErrorySayAA7KommandCyxGG_SbtlF":{"name":"cancel(_:throwingError:)","abstract":"

    Cancel [Kommand] instances collection

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC5retry_5afterySayAA7KommandCyxGG_8Dispatch0E12TimeIntervalOtlF":{"name":"retry(_:after:)","abstract":"

    Retry [Kommand] instances collection after delay

    ","parent_name":"Kommander"},"Classes/Kommander.html#/s:9KommanderAAC5retryyySayAA7KommandCyxGGlF":{"name":"retry(_:)","abstract":"

    Retry [Kommand] instances collection

    ","parent_name":"Kommander"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO13uninitializedyAEyx_GAGmlF":{"name":"uninitialized","abstract":"

    Uninitialized state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO5readyyAEyx_GAGmlF":{"name":"ready","abstract":"

    Ready state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO7runningyAEyx_GAGmlF":{"name":"running","abstract":"

    Executing state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO9succeededyAEyx_GxcAGmlF":{"name":"succeeded(_:)","abstract":"

    Succeeded state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO6failedyAEyx_Gs5Error_pcAGmlF":{"name":"failed(_:)","abstract":"

    Failed state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:9Kommander7KommandC5StateO9cancelledyAEyx_GAGmlF":{"name":"cancelled","abstract":"

    Cancelled state

    ","parent_name":"State"},"Classes/Kommand/State.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"State"},"Classes/Kommand/State.html":{"name":"State","abstract":"

    Kommand state

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC13ActionClosurea":{"name":"ActionClosure","abstract":"

    Action closure type

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC14SuccessClosurea":{"name":"SuccessClosure","abstract":"

    Success closure type

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC12ErrorClosurea":{"name":"ErrorClosure","abstract":"

    Error closure type

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC12RetryClosurea":{"name":"RetryClosure","abstract":"

    Retry closure type

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5stateAC5StateOyx_Gvp":{"name":"state","abstract":"

    Kommand state

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC9deliverer8executor13actionClosureACyxGAA10DispatcherC_AIxyKctcfc":{"name":"init(deliverer:executor:actionClosure:)","abstract":"

    Kommand instance with deliverer, executor and actionClosure returning generic and throwing errors

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC7successyACyxGXDyxcF":{"name":"success(_:)","abstract":"

    Specify Kommand success closure

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5erroryACyxGXDys5Error_pSgcF":{"name":"error(_:)","abstract":"

    Specify Kommand error closure

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5erroryACyxGXDqd__m_yqd__cts5ErrorRd__lF":{"name":"error(_:_:)","abstract":"

    Specify Kommand error closure

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5retryyACyxGXDSbs5Error_pSg_SutcF":{"name":"retry(_:)","abstract":"

    Specify Kommand retry closure

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5retryyACyxGXDqd__m_Sbqd__Sg_Sutcts5ErrorRd__lF":{"name":"retry(_:_:)","abstract":"

    Specify Kommand error closure

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC6resultxSgvp":{"name":"result","abstract":"

    Undocumented

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5errors5Error_pSgvp":{"name":"error","abstract":"

    Undocumented

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC7execute5afterACyxGXD8Dispatch0E12TimeIntervalO_tF":{"name":"execute(after:)","abstract":"

    Execute Kommand after delay

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC7executeACyxGXDyF":{"name":"execute()","abstract":"

    Execute Kommand

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC6cancel_5afterACyxGXDSb_8Dispatch0E12TimeIntervalOtF":{"name":"cancel(_:after:)","abstract":"

    Cancel Kommand after delay

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC6cancelyACyxGXDSbF":{"name":"cancel(_:)","abstract":"

    Cancel Kommand

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5retry5afterACyxGXD8Dispatch0E12TimeIntervalO_tF":{"name":"retry(after:)","abstract":"

    Retry Kommand after delay

    ","parent_name":"Kommand"},"Classes/Kommand.html#/s:9Kommander7KommandC5retryACyxGXDyF":{"name":"retry()","abstract":"

    Retry Kommand

    ","parent_name":"Kommand"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC4mainACvpZ":{"name":"main","abstract":"

    Main queue dispatcher

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7currentACvpZ":{"name":"current","abstract":"

    Current queue dispatcher

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7defaultACvpZ":{"name":"default","abstract":"

    Dispatcher with default quality of service

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC15userInteractiveACvpZ":{"name":"userInteractive","abstract":"

    Dispatcher with user interactive quality of service

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC13userInitiatedACvpZ":{"name":"userInitiated","abstract":"

    Dispatcher with user initiated quality of service

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7utilityACvpZ":{"name":"utility","abstract":"

    Dispatcher with utility quality of service

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC10backgroundACvpZ":{"name":"background","abstract":"

    Dispatcher with background quality of service

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC4name3qos23maxConcurrentOperationsACSS_So18NSQualityOfServiceVSitcfc":{"name":"init(name:qos:maxConcurrentOperations:)","abstract":"

    Dispatcher instance with custom OperationQueue

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7executeyySo11NSOperationCF":{"name":"execute(_:)","abstract":"

    Execute Operation instance in OperationQueue

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7execute_17waitUntilFinishedySaySo11NSOperationCG_SbtF":{"name":"execute(_:waitUntilFinished:)","abstract":"

    Execute [Operation] instance collection in OperationQueue

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7executeySo11NSOperationCyycF":{"name":"execute(_:)","abstract":"

    Execute closure in OperationQueue

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7execute_10concurrent17waitUntilFinishedSaySo11NSOperationCGSayyycG_S2btF":{"name":"execute(_:concurrent:waitUntilFinished:)","abstract":"

    Execute [closure] collection in OperationQueue concurrently or sequentially

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7execute5after7closurey8Dispatch0F12TimeIntervalO_yyctF":{"name":"execute(after:closure:)","abstract":"

    Execute closure in DispatchQueue after delay

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7execute5after4worky8Dispatch0F12TimeIntervalO_AG0F8WorkItemCtF":{"name":"execute(after:work:)","abstract":"

    Execute DispatchWorkItem instance in DispatchQueue after delay

    ","parent_name":"Dispatcher"},"Classes/Dispatcher.html#/s:9Kommander10DispatcherC7executeyy8Dispatch0D8WorkItemCF":{"name":"execute(_:)","abstract":"

    Execute DispatchWorkItem instance in DispatchQueue

    ","parent_name":"Dispatcher"},"Classes/CurrentDispatcher.html#/s:9Kommander17CurrentDispatcherCACycfc":{"name":"init()","abstract":"

    Dispatcher instance with current OperationQueue

    ","parent_name":"CurrentDispatcher"},"Classes/CurrentDispatcher.html":{"name":"CurrentDispatcher","abstract":"

    Current queue dispatcher

    "},"Classes/Dispatcher.html":{"name":"Dispatcher","abstract":"

    Dispatcher

    "},"Classes/Kommand.html":{"name":"Kommand","abstract":"

    Generic Kommand

    "},"Classes/Kommander.html":{"name":"Kommander","abstract":"

    Kommander manager

    "},"Classes/MainDispatcher.html":{"name":"MainDispatcher","abstract":"

    Main queue dispatcher

    "},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Extensions.html":{"name":"Extensions","abstract":"

    The following extensions are available globally.

    "},"Structs.html":{"name":"Structures","abstract":"

    The following structures are available globally.

    "}} \ No newline at end of file