// // Promise+Helpers.swift // then // // Created by Sacha Durand Saint Omer on 20/02/2017. // Copyright © 2017 s4cha. All rights reserved. // import Foundation public extension Promise { public class func reject(_ error: Error = PromiseError.default) -> Promise { return Promise { _, reject in reject(error) } } } public extension Promise { public class func resolve(_ value: T) -> Promise { return Promise { resolve, _ in resolve(value) } } } extension Promise where T == Void { public class func resolve() -> Promise { return Promise { resolve, _ in resolve() } } } public extension Promise { public var value: T? { return synchronize { state, _ in return state.value } } public var error: Error? { return synchronize { state, _ in return state.error } } }