  * If you just want to get a value back after running something on another thread, use `Future<ResultType>.async()`
  * If you already have a value and need a Future<> object to plug into some other API, create an already-resolved object with `Future<ResultType>(result:)`
  */
-public final class Promise<T> {
+public struct Promise<T> {
     public let futureResult: Future<T>
     
     /**

        self.value = .failure(error)
        self.eventLoop = eventLoop
        self.checkForPossibleDeadlock = checkForPossibleDeadlock
    }
}


    /** Internal only! */
    fileprivate func _setValue(value: FutureValue<T>) -> CallbackList {
        return futureResult._setValue(value: value)
    }
}

