7
7
// See http://swift.org/CONTRIBUTORS.txt for the list of Swift project authors
8
8
//
9
9
10
- public struct NSCocoaError : RawRepresentable , Swift . Error , __BridgedNSError {
11
- public let rawValue : Int
12
- public init ( rawValue: Int ) {
13
- self . rawValue = rawValue
14
- }
15
- public static var __NSErrorDomain : String { return NSCocoaErrorDomain }
16
- }
17
-
18
- /// Enumeration that describes the error codes within the Cocoa error
19
- /// domain.
20
- public extension NSCocoaError {
21
-
22
- public static var FileNoSuchFileError : NSCocoaError {
23
- return NSCocoaError ( rawValue: 4 )
24
- }
25
-
26
- public static var FileLockingError : NSCocoaError {
27
- return NSCocoaError ( rawValue: 255 )
28
- }
29
-
30
- public static var FileReadUnknownError : NSCocoaError {
31
- return NSCocoaError ( rawValue: 256 )
32
- }
33
-
34
- public static var FileReadNoPermissionError : NSCocoaError {
35
- return NSCocoaError ( rawValue: 257 )
36
- }
37
-
38
- public static var FileReadInvalidFileNameError : NSCocoaError {
39
- return NSCocoaError ( rawValue: 258 )
40
- }
41
-
42
- public static var FileReadCorruptFileError : NSCocoaError {
43
- return NSCocoaError ( rawValue: 259 )
44
- }
45
-
46
- public static var FileReadNoSuchFileError : NSCocoaError {
47
- return NSCocoaError ( rawValue: 260 )
48
- }
49
-
50
- public static var FileReadInapplicableStringEncodingError : NSCocoaError {
51
- return NSCocoaError ( rawValue: 261 )
52
- }
53
- public static var FileReadUnsupportedSchemeError : NSCocoaError {
54
- return NSCocoaError ( rawValue: 262 )
55
- }
56
-
57
- public static var FileReadTooLargeError : NSCocoaError {
58
- return NSCocoaError ( rawValue: 263 )
59
- }
60
-
61
- public static var FileReadUnknownStringEncodingError : NSCocoaError {
62
- return NSCocoaError ( rawValue: 264 )
63
- }
64
-
65
- public static var FileWriteUnknownError : NSCocoaError {
66
- return NSCocoaError ( rawValue: 512 )
67
- }
68
-
69
- public static var FileWriteNoPermissionError : NSCocoaError {
70
- return NSCocoaError ( rawValue: 513 )
71
- }
72
-
73
- public static var FileWriteInvalidFileNameError : NSCocoaError {
74
- return NSCocoaError ( rawValue: 514 )
75
- }
76
-
77
- public static var FileWriteFileExistsError : NSCocoaError {
78
- return NSCocoaError ( rawValue: 516 )
79
- }
80
-
81
- public static var FileWriteInapplicableStringEncodingError : NSCocoaError {
82
- return NSCocoaError ( rawValue: 517 )
83
- }
84
-
85
- public static var FileWriteUnsupportedSchemeError : NSCocoaError {
86
- return NSCocoaError ( rawValue: 518 )
87
- }
88
-
89
- public static var FileWriteOutOfSpaceError : NSCocoaError {
90
- return NSCocoaError ( rawValue: 640 )
91
- }
92
-
93
- public static var FileWriteVolumeReadOnlyError : NSCocoaError {
94
- return NSCocoaError ( rawValue: 642 )
95
- }
96
-
97
- public static var FileManagerUnmountUnknownError : NSCocoaError {
98
- return NSCocoaError ( rawValue: 768 )
99
- }
100
-
101
- public static var FileManagerUnmountBusyError : NSCocoaError {
102
- return NSCocoaError ( rawValue: 769 )
103
- }
104
-
105
- public static var KeyValueValidationError : NSCocoaError {
106
- return NSCocoaError ( rawValue: 1024 )
107
- }
108
-
109
- public static var FormattingError : NSCocoaError {
110
- return NSCocoaError ( rawValue: 2048 )
111
- }
112
-
113
- public static var UserCancelledError : NSCocoaError {
114
- return NSCocoaError ( rawValue: 3072 )
115
- }
116
-
117
- public static var FeatureUnsupportedError : NSCocoaError {
118
- return NSCocoaError ( rawValue: 3328 )
119
- }
120
-
121
- public static var ExecutableNotLoadableError : NSCocoaError {
122
- return NSCocoaError ( rawValue: 3584 )
123
- }
124
-
125
- public static var ExecutableArchitectureMismatchError : NSCocoaError {
126
- return NSCocoaError ( rawValue: 3585 )
127
- }
128
-
129
- public static var ExecutableRuntimeMismatchError : NSCocoaError {
130
- return NSCocoaError ( rawValue: 3586 )
131
- }
132
-
133
- public static var ExecutableLoadError : NSCocoaError {
134
- return NSCocoaError ( rawValue: 3587 )
135
- }
136
-
137
- public static var ExecutableLinkError : NSCocoaError {
138
- return NSCocoaError ( rawValue: 3588 )
139
- }
140
-
141
- public static var PropertyListReadCorruptError : NSCocoaError {
142
- return NSCocoaError ( rawValue: 3840 )
143
- }
144
-
145
- public static var PropertyListReadUnknownVersionError : NSCocoaError {
146
- return NSCocoaError ( rawValue: 3841 )
147
- }
148
-
149
- public static var PropertyListReadStreamError : NSCocoaError {
150
- return NSCocoaError ( rawValue: 3842 )
151
- }
152
-
153
- public static var PropertyListWriteStreamError : NSCocoaError {
154
- return NSCocoaError ( rawValue: 3851 )
155
- }
156
-
157
- public static var PropertyListWriteInvalidError : NSCocoaError {
158
- return NSCocoaError ( rawValue: 3852 )
159
- }
160
-
161
- public static var XPCConnectionInterrupted : NSCocoaError {
162
- return NSCocoaError ( rawValue: 4097 )
163
- }
164
-
165
- public static var XPCConnectionInvalid : NSCocoaError {
166
- return NSCocoaError ( rawValue: 4099 )
167
- }
168
-
169
- public static var XPCConnectionReplyInvalid : NSCocoaError {
170
- return NSCocoaError ( rawValue: 4101 )
171
- }
172
-
173
- public static var UbiquitousFileUnavailableError : NSCocoaError {
174
- return NSCocoaError ( rawValue: 4353 )
175
- }
176
-
177
- public static var UbiquitousFileNotUploadedDueToQuotaError : NSCocoaError {
178
- return NSCocoaError ( rawValue: 4354 )
179
- }
180
-
181
- public static var UbiquitousFileUbiquityServerNotAvailable : NSCocoaError {
182
- return NSCocoaError ( rawValue: 4355 )
183
- }
184
-
185
- public static var UserActivityHandoffFailedError : NSCocoaError {
186
- return NSCocoaError ( rawValue: 4608 )
187
- }
188
-
189
- public static var UserActivityConnectionUnavailableError : NSCocoaError {
190
- return NSCocoaError ( rawValue: 4609 )
191
- }
192
-
193
- public static var UserActivityRemoteApplicationTimedOutError : NSCocoaError {
194
- return NSCocoaError ( rawValue: 4610 )
195
- }
196
-
197
- public static var UserActivityHandoffUserInfoTooLargeError : NSCocoaError {
198
- return NSCocoaError ( rawValue: 4611 )
199
- }
200
-
201
- public static var CoderReadCorruptError : NSCocoaError {
202
- return NSCocoaError ( rawValue: 4864 )
203
- }
204
-
205
- public static var CoderValueNotFoundError : NSCocoaError {
206
- return NSCocoaError ( rawValue: 4865 )
207
- }
208
-
209
- public var isCoderError : Bool {
210
- return rawValue >= 4864 && rawValue <= 4991
211
- }
212
-
213
- public var isExecutableError : Bool {
214
- return rawValue >= 3584 && rawValue <= 3839
215
- }
216
-
217
- public var isFileError : Bool {
218
- return rawValue >= 0 && rawValue <= 1023
219
- }
220
-
221
- public var isFormattingError : Bool {
222
- return rawValue >= 2048 && rawValue <= 2559
223
- }
224
-
225
- public var isPropertyListError : Bool {
226
- return rawValue >= 3840 && rawValue <= 4095
227
- }
228
-
229
- public var isUbiquitousFileError : Bool {
230
- return rawValue >= 4352 && rawValue <= 4607
231
- }
232
-
233
- public var isUserActivityError : Bool {
234
- return rawValue >= 4608 && rawValue <= 4863
235
- }
236
-
237
- public var isValidationError : Bool {
238
- return rawValue >= 1024 && rawValue <= 2047
239
- }
240
-
241
- public var isXPCConnectionError : Bool {
242
- return rawValue >= 4096 && rawValue <= 4224
243
- }
244
- }
10
+ public var NSFileNoSuchFileError : Int { return CocoaError . Code. fileNoSuchFile. rawValue }
11
+ public var NSFileLockingError : Int { return CocoaError . Code. fileLocking. rawValue }
12
+ public var NSFileReadUnknownError : Int { return CocoaError . Code. fileReadUnknown. rawValue }
13
+ public var NSFileReadNoPermissionError : Int { return CocoaError . Code. fileReadNoPermission. rawValue }
14
+ public var NSFileReadInvalidFileNameError : Int { return CocoaError . Code. fileReadInvalidFileName. rawValue }
15
+ public var NSFileReadCorruptFileError : Int { return CocoaError . Code. fileReadCorruptFile. rawValue }
16
+ public var NSFileReadNoSuchFileError : Int { return CocoaError . Code. fileReadNoSuchFile. rawValue }
17
+ public var NSFileReadInapplicableStringEncodingError : Int { return CocoaError . Code. fileReadInapplicableStringEncoding. rawValue }
18
+ public var NSFileReadUnsupportedSchemeError : Int { return CocoaError . Code. fileReadUnsupportedScheme. rawValue }
19
+ public var NSFileReadTooLargeError : Int { return CocoaError . Code. fileReadTooLarge. rawValue }
20
+ public var NSFileReadUnknownStringEncodingError : Int { return CocoaError . Code. fileReadUnknownStringEncoding. rawValue }
21
+ public var NSFileWriteUnknownError : Int { return CocoaError . Code. fileWriteUnknown. rawValue }
22
+ public var NSFileWriteNoPermissionError : Int { return CocoaError . Code. fileWriteNoPermission. rawValue }
23
+ public var NSFileWriteInvalidFileNameError : Int { return CocoaError . Code. fileWriteInvalidFileName. rawValue }
24
+ public var NSFileWriteFileExistsError : Int { return CocoaError . Code. fileWriteFileExists. rawValue }
25
+ public var NSFileWriteInapplicableStringEncodingError : Int { return CocoaError . Code. fileWriteInapplicableStringEncoding. rawValue }
26
+ public var NSFileWriteUnsupportedSchemeError : Int { return CocoaError . Code. fileWriteUnsupportedScheme. rawValue }
27
+ public var NSFileWriteOutOfSpaceError : Int { return CocoaError . Code. fileWriteOutOfSpace. rawValue }
28
+ public var NSFileWriteVolumeReadOnlyError : Int { return CocoaError . Code. fileWriteVolumeReadOnly. rawValue }
29
+ public var NSFileManagerUnmountUnknownError : Int { return CocoaError . Code. fileManagerUnmountUnknown. rawValue }
30
+ public var NSFileManagerUnmountBusyError : Int { return CocoaError . Code. fileManagerUnmountBusy. rawValue }
31
+ public var NSKeyValueValidationError : Int { return CocoaError . Code. keyValueValidation. rawValue }
32
+ public var NSFormattingError : Int { return CocoaError . Code. formatting. rawValue }
33
+ public var NSUserCancelledError : Int { return CocoaError . Code. userCancelled. rawValue }
34
+ public var NSFeatureUnsupportedError : Int { return CocoaError . Code. featureUnsupported. rawValue }
35
+ public var NSExecutableNotLoadableError : Int { return CocoaError . Code. executableNotLoadable. rawValue }
36
+ public var NSExecutableArchitectureMismatchError : Int { return CocoaError . Code. executableArchitectureMismatch. rawValue }
37
+ public var NSExecutableRuntimeMismatchError : Int { return CocoaError . Code. executableRuntimeMismatch. rawValue }
38
+ public var NSExecutableLoadError : Int { return CocoaError . Code. executableLoad. rawValue }
39
+ public var NSExecutableLinkError : Int { return CocoaError . Code. executableLink. rawValue }
40
+ public var NSPropertyListReadCorruptError : Int { return CocoaError . Code. propertyListReadCorrupt. rawValue }
41
+ public var NSPropertyListReadUnknownVersionError : Int { return CocoaError . Code. propertyListReadUnknownVersion. rawValue }
42
+ public var NSPropertyListReadStreamError : Int { return CocoaError . Code. propertyListReadStream. rawValue }
43
+ public var NSPropertyListWriteStreamError : Int { return CocoaError . Code. propertyListWriteStream. rawValue }
44
+ public var NSPropertyListWriteInvalidError : Int { return CocoaError . Code. propertyListWriteInvalid. rawValue }
45
+ public var NSXPCConnectionInterrupted : Int { return CocoaError . Code. xpcConnectionInterrupted. rawValue }
46
+ public var NSXPCConnectionInvalid : Int { return CocoaError . Code. xpcConnectionInvalid. rawValue }
47
+ public var NSXPCConnectionReplyInvalid : Int { return CocoaError . Code. xpcConnectionReplyInvalid. rawValue }
48
+ public var NSUbiquitousFileUnavailableError : Int { return CocoaError . Code. ubiquitousFileUnavailable. rawValue }
49
+ public var NSUbiquitousFileNotUploadedDueToQuotaError : Int { return CocoaError . Code. ubiquitousFileNotUploadedDueToQuota. rawValue }
50
+ public var NSUbiquitousFileUbiquityServerNotAvailable : Int { return CocoaError . Code. ubiquitousFileUbiquityServerNotAvailable. rawValue }
51
+ public var NSUserActivityHandoffFailedError : Int { return CocoaError . Code. userActivityHandoffFailed. rawValue }
52
+ public var NSUserActivityConnectionUnavailableError : Int { return CocoaError . Code. userActivityConnectionUnavailable. rawValue }
53
+ public var NSUserActivityRemoteApplicationTimedOutError : Int { return CocoaError . Code. userActivityRemoteApplicationTimedOut. rawValue }
54
+ public var NSUserActivityHandoffUserInfoTooLargeError : Int { return CocoaError . Code. userActivityHandoffUserInfoTooLarge. rawValue }
55
+ public var NSCoderReadCorruptError : Int { return CocoaError . Code. coderReadCorrupt. rawValue }
56
+ public var NSCoderValueNotFoundError : Int { return CocoaError . Code. coderValueNotFound. rawValue }
245
57
246
58
#if os(OSX) || os(iOS)
247
59
import Darwin
@@ -250,24 +62,24 @@ public extension NSCocoaError {
250
62
#endif
251
63
252
64
internal func _NSErrorWithErrno( _ posixErrno : Int32 , reading : Bool , path : String ? = nil , url : URL ? = nil , extraUserInfo : [ String : Any ] ? = nil ) -> NSError {
253
- var cocoaError : NSCocoaError
65
+ var cocoaError : CocoaError . Code
254
66
if reading {
255
67
switch posixErrno {
256
- case EFBIG: cocoaError = NSCocoaError . FileReadTooLargeError
257
- case ENOENT: cocoaError = NSCocoaError . FileReadNoSuchFileError
258
- case EPERM, EACCES: cocoaError = NSCocoaError . FileReadNoPermissionError
259
- case ENAMETOOLONG: cocoaError = NSCocoaError . FileReadUnknownError
260
- default : cocoaError = NSCocoaError . FileReadUnknownError
68
+ case EFBIG: cocoaError = CocoaError . fileReadTooLarge
69
+ case ENOENT: cocoaError = CocoaError . fileReadNoSuchFile
70
+ case EPERM, EACCES: cocoaError = CocoaError . fileReadNoPermission
71
+ case ENAMETOOLONG: cocoaError = CocoaError . fileReadUnknown
72
+ default : cocoaError = CocoaError . fileReadUnknown
261
73
}
262
74
} else {
263
75
switch posixErrno {
264
- case ENOENT: cocoaError = NSCocoaError . FileNoSuchFileError
265
- case EPERM, EACCES: cocoaError = NSCocoaError . FileWriteNoPermissionError
266
- case ENAMETOOLONG: cocoaError = NSCocoaError . FileWriteInvalidFileNameError
267
- case EDQUOT, ENOSPC: cocoaError = NSCocoaError . FileWriteOutOfSpaceError
268
- case EROFS: cocoaError = NSCocoaError . FileWriteVolumeReadOnlyError
269
- case EEXIST: cocoaError = NSCocoaError . FileWriteFileExistsError
270
- default : cocoaError = NSCocoaError . FileWriteUnknownError
76
+ case ENOENT: cocoaError = CocoaError . fileNoSuchFile
77
+ case EPERM, EACCES: cocoaError = CocoaError . fileWriteNoPermission
78
+ case ENAMETOOLONG: cocoaError = CocoaError . fileWriteInvalidFileName
79
+ case EDQUOT, ENOSPC: cocoaError = CocoaError . fileWriteOutOfSpace
80
+ case EROFS: cocoaError = CocoaError . fileWriteVolumeReadOnly
81
+ case EEXIST: cocoaError = CocoaError . fileWriteFileExists
82
+ default : cocoaError = CocoaError . fileWriteUnknown
271
83
}
272
84
}
273
85
@@ -277,6 +89,6 @@ internal func _NSErrorWithErrno(_ posixErrno : Int32, reading : Bool, path : Str
277
89
} else if let url = url {
278
90
userInfo [ NSURLErrorKey] = url
279
91
}
280
- return NSError ( domain: NSCocoaErrorDomain, code: cocoaError. rawValue, userInfo: userInfo)
281
92
93
+ return NSError ( domain: NSCocoaErrorDomain, code: cocoaError. rawValue, userInfo: userInfo)
282
94
}
0 commit comments