ฉันมีโปรโตคอล RequestType และมี AssociatedType Model ดังต่อไปนี้
public protocol RequestType: class {
associatedtype Model
var path: String { get set }
}
public extension RequestType {
public func executeRequest(completionHandler: Result<Model, NSError> -> Void) {
request.response(rootKeyPath: rootKeyPath) { [weak self] (response: Response<Model, NSError>) -> Void in
completionHandler(response.result)
guard let weakSelf = self else { return }
if weakSelf.logging { debugPrint(response) }
}
}
}
ตอนนี้ฉันกำลังพยายามจัดคิวคำขอที่ล้มเหลวทั้งหมด
public class RequestEventuallyQueue {
static let requestEventuallyQueue = RequestEventuallyQueue()
let queue = [RequestType]()
}
แต่ฉันได้รับข้อผิดพลาดในบรรทัดlet queue = [RequestType]()
ว่า Protocol RequestType สามารถใช้เป็นข้อ จำกัด ทั่วไปเท่านั้นเนื่องจากมีข้อกำหนดในตัวเองหรือประเภทที่เกี่ยวข้อง