mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
Introduce typed accesses for the error types of AVFoundation, CloudKit, Contacts, and CoreLocation. While here, fix the API notes for the Contacts framework, which had an embarrassingly-wrong file name ;)
37 lines
1.3 KiB
Swift
37 lines
1.3 KiB
Swift
@_exported import CloudKit
|
|
import Foundation
|
|
|
|
@available(macOS 10.10, iOS 8.0, *)
|
|
extension CKErrorCode {
|
|
/// Retrieve partial error results associated by item ID.
|
|
public var partialErrorsByItemID: [NSObject : Error]? {
|
|
return userInfo[CKPartialErrorsByItemIDKey] as? [NSObject : Error]
|
|
}
|
|
|
|
/// The original CKRecord object that you used as the basis for
|
|
/// making your changes.
|
|
public var ancestorRecord: CKRecord? {
|
|
return userInfo[CKRecordChangedErrorAncestorRecordKey] as? CKRecord
|
|
}
|
|
|
|
/// The CKRecord object that was found on the server. Use this
|
|
/// record as the basis for merging your changes.
|
|
public var serverRecord: CKRecord? {
|
|
return userInfo[CKRecordChangedErrorServerRecordKey] as? CKRecord
|
|
}
|
|
|
|
/// The CKRecord object that you tried to save. This record is based
|
|
/// on the record in the CKRecordChangedErrorAncestorRecordKey key
|
|
/// but contains the additional changes you made.
|
|
public var clientRecord: CKRecord? {
|
|
return userInfo[CKRecordChangedErrorClientRecordKey] as? CKRecord
|
|
}
|
|
|
|
/// The number of seconds after which you may retry a request. This
|
|
/// key may be included in an error of type
|
|
/// `CKErrorServiceUnavailable` or `CKErrorRequestRateLimited`.
|
|
public var retryAfterSeconds: Double? {
|
|
return userInfo[CKErrorRetryAfterKey] as? Double
|
|
}
|
|
}
|