@@ -54,12 +54,19 @@ internal final class _SwiftNSCharacterSet : NSCharacterSet, _SwiftNativeFoundati
54
54
releaseWrappedObject ( )
55
55
}
56
56
57
- // These for some reason cause a crash in the compiler
58
- // Stubs
59
- // -----
60
-
61
- // Immutable
62
57
58
+ override func copy( with zone: NSZone ? = nil ) -> AnyObject {
59
+ return _mapUnmanaged { $0. copy ( with: zone) }
60
+ }
61
+
62
+ override func mutableCopy( with zone: NSZone ? = nil ) -> AnyObject {
63
+ return _mapUnmanaged { $0. mutableCopy ( with: zone) }
64
+ }
65
+
66
+ public override var classForCoder : AnyClass {
67
+ return NSCharacterSet . self
68
+ }
69
+
63
70
override var bitmapRepresentation : Data {
64
71
return _mapUnmanaged { $0. bitmapRepresentation }
65
72
}
@@ -68,15 +75,15 @@ internal final class _SwiftNSCharacterSet : NSCharacterSet, _SwiftNativeFoundati
68
75
return _mapUnmanaged { $0. inverted }
69
76
}
70
77
71
- override func hasMember ( inPlane plane : UInt8 ) -> Bool {
72
- return _mapUnmanaged { $0. hasMember ( inPlane : plane ) }
78
+ override func hasMemberInPlane ( _ thePlane : UInt8 ) -> Bool {
79
+ return _mapUnmanaged { $0. hasMemberInPlane ( thePlane ) }
73
80
}
74
81
75
82
override func characterIsMember( _ member: unichar ) -> Bool {
76
83
return _mapUnmanaged { $0. characterIsMember ( member) }
77
84
}
78
85
79
- override func longCharacterIsMember( _ member: UInt32 ) -> Bool {
86
+ override func longCharacterIsMember( _ member: UTF32Char ) -> Bool {
80
87
return _mapUnmanaged { $0. longCharacterIsMember ( member) }
81
88
}
82
89
@@ -173,109 +180,109 @@ public struct CharacterSet : ReferenceConvertible, Equatable, Hashable, SetAlgeb
173
180
174
181
/// Returns a character set containing the characters in Unicode General Category Cc and Cf.
175
182
public static var controlCharacters : CharacterSet {
176
- return NSCharacterSet . controlCharacters ( )
183
+ return CharacterSet ( reference : NSCharacterSet . controlCharacters. _bridgeToObjectiveC ( ) )
177
184
}
178
185
179
186
/// Returns a character set containing the characters in Unicode General Category Zs and `CHARACTER TABULATION (U+0009)`.
180
187
public static var whitespaces : CharacterSet {
181
- return NSCharacterSet . whitespaces ( )
188
+ return CharacterSet ( reference : NSCharacterSet . whitespaces. _bridgeToObjectiveC ( ) )
182
189
}
183
190
184
191
/// Returns a character set containing characters in Unicode General Category Z*, `U+000A ~ U+000D`, and `U+0085`.
185
192
public static var whitespacesAndNewlines : CharacterSet {
186
- return NSCharacterSet . whitespacesAndNewlines ( )
193
+ return CharacterSet ( reference : NSCharacterSet . whitespacesAndNewlines. _bridgeToObjectiveC ( ) )
187
194
}
188
195
189
196
/// Returns a character set containing the characters in the category of Decimal Numbers.
190
197
public static var decimalDigits : CharacterSet {
191
- return NSCharacterSet . decimalDigits ( )
198
+ return CharacterSet ( reference : NSCharacterSet . decimalDigits. _bridgeToObjectiveC ( ) )
192
199
}
193
200
194
201
/// Returns a character set containing the characters in Unicode General Category L* & M*.
195
202
public static var letters : CharacterSet {
196
- return NSCharacterSet . letters ( )
203
+ return CharacterSet ( reference : NSCharacterSet . letters. _bridgeToObjectiveC ( ) )
197
204
}
198
205
199
206
/// Returns a character set containing the characters in Unicode General Category Ll.
200
207
public static var lowercaseLetters : CharacterSet {
201
- return NSCharacterSet . lowercaseLetters ( )
208
+ return CharacterSet ( reference : NSCharacterSet . lowercaseLetters. _bridgeToObjectiveC ( ) )
202
209
}
203
210
204
211
/// Returns a character set containing the characters in Unicode General Category Lu and Lt.
205
212
public static var uppercaseLetters : CharacterSet {
206
- return NSCharacterSet . uppercaseLetters ( )
213
+ return CharacterSet ( reference : NSCharacterSet . uppercaseLetters. _bridgeToObjectiveC ( ) )
207
214
}
208
215
209
216
/// Returns a character set containing the characters in Unicode General Category M*.
210
217
public static var nonBaseCharacters : CharacterSet {
211
- return NSCharacterSet . nonBaseCharacters ( )
218
+ return CharacterSet ( reference : NSCharacterSet . nonBaseCharacters. _bridgeToObjectiveC ( ) )
212
219
}
213
220
214
221
/// Returns a character set containing the characters in Unicode General Categories L*, M*, and N*.
215
222
public static var alphanumerics : CharacterSet {
216
- return NSCharacterSet . alphanumerics ( )
223
+ return CharacterSet ( reference : NSCharacterSet . alphanumerics. _bridgeToObjectiveC ( ) )
217
224
}
218
225
219
- /// Returns a character set containing individual Unicode characters that can also be represented as composed character sequences (such as for letters with accents), by the definition of “ standard decomposition” in version 3.2 of the Unicode character encoding standard.
226
+ /// Returns a character set containing individual Unicode characters that can also be represented as composed character sequences (such as for letters with accents), by the definition of " standard decomposition" in version 3.2 of the Unicode character encoding standard.
220
227
public static var decomposables : CharacterSet {
221
- return NSCharacterSet . decomposables ( )
228
+ return CharacterSet ( reference : NSCharacterSet . decomposables. _bridgeToObjectiveC ( ) )
222
229
}
223
230
224
231
/// Returns a character set containing values in the category of Non-Characters or that have not yet been defined in version 3.2 of the Unicode standard.
225
232
public static var illegalCharacters : CharacterSet {
226
- return NSCharacterSet . illegalCharacters ( )
233
+ return CharacterSet ( reference : NSCharacterSet . illegalCharacters. _bridgeToObjectiveC ( ) )
227
234
}
228
235
229
236
/// Returns a character set containing the characters in Unicode General Category P*.
230
237
public static var punctuation : CharacterSet {
231
- return NSCharacterSet . punctuation ( )
238
+ return CharacterSet ( reference : NSCharacterSet . punctuation. _bridgeToObjectiveC ( ) )
232
239
}
233
240
234
241
/// Returns a character set containing the characters in Unicode General Category Lt.
235
242
public static var capitalizedLetters : CharacterSet {
236
- return NSCharacterSet . capitalizedLetters ( )
243
+ return CharacterSet ( reference : NSCharacterSet . capitalizedLetters. _bridgeToObjectiveC ( ) )
237
244
}
238
245
239
246
/// Returns a character set containing the characters in Unicode General Category S*.
240
247
public static var symbols : CharacterSet {
241
- return NSCharacterSet . symbols ( )
248
+ return CharacterSet ( reference : NSCharacterSet . symbols. _bridgeToObjectiveC ( ) )
242
249
}
243
250
244
251
/// Returns a character set containing the newline characters (`U+000A ~ U+000D`, `U+0085`, `U+2028`, and `U+2029`).
245
252
public static var newlines : CharacterSet {
246
- return NSCharacterSet . newlines ( )
253
+ return CharacterSet ( reference : NSCharacterSet . newlines. _bridgeToObjectiveC ( ) )
247
254
}
248
255
249
256
// MARK: Static functions, from NSURL
250
257
251
258
/// Returns the character set for characters allowed in a user URL subcomponent.
252
259
public static var urlUserAllowed : CharacterSet {
253
- return NSCharacterSet . urlUserAllowed
260
+ return CharacterSet ( reference : NSCharacterSet . urlUserAllowed. _bridgeToObjectiveC ( ) )
254
261
}
255
262
256
263
/// Returns the character set for characters allowed in a password URL subcomponent.
257
264
public static var urlPasswordAllowed : CharacterSet {
258
- return NSCharacterSet . urlPasswordAllowed
265
+ return CharacterSet ( reference : NSCharacterSet . urlPasswordAllowed. _bridgeToObjectiveC ( ) )
259
266
}
260
267
261
268
/// Returns the character set for characters allowed in a host URL subcomponent.
262
269
public static var urlHostAllowed : CharacterSet {
263
- return NSCharacterSet . urlHostAllowed
270
+ return CharacterSet ( reference : NSCharacterSet . urlHostAllowed. _bridgeToObjectiveC ( ) )
264
271
}
265
272
266
273
/// Returns the character set for characters allowed in a path URL component.
267
274
public static var urlPathAllowed : CharacterSet {
268
- return NSCharacterSet . urlPathAllowed
275
+ return CharacterSet ( reference : NSCharacterSet . urlPathAllowed. _bridgeToObjectiveC ( ) )
269
276
}
270
277
271
278
/// Returns the character set for characters allowed in a query URL component.
272
279
public static var urlQueryAllowed : CharacterSet {
273
- return NSCharacterSet . urlQueryAllowed
280
+ return CharacterSet ( reference : NSCharacterSet . urlQueryAllowed. _bridgeToObjectiveC ( ) )
274
281
}
275
282
276
283
/// Returns the character set for characters allowed in a fragment URL component.
277
284
public static var urlFragmentAllowed : CharacterSet {
278
- return NSCharacterSet . urlFragmentAllowed
285
+ return CharacterSet ( reference : NSCharacterSet . urlFragmentAllowed. _bridgeToObjectiveC ( ) )
279
286
}
280
287
281
288
// MARK: Immutable functions
@@ -294,7 +301,7 @@ public struct CharacterSet : ReferenceConvertible, Equatable, Hashable, SetAlgeb
294
301
///
295
302
/// This method makes it easier to find the plane containing the members of the current character set. The Basic Multilingual Plane (BMP) is plane 0.
296
303
public func hasMember( inPlane plane: UInt8 ) -> Bool {
297
- return _mapUnmanaged { $0. hasMember ( inPlane : plane) }
304
+ return _mapUnmanaged { $0. hasMemberInPlane ( plane) }
298
305
}
299
306
300
307
// MARK: Mutable functions
@@ -359,7 +366,7 @@ public struct CharacterSet : ReferenceConvertible, Equatable, Hashable, SetAlgeb
359
366
// -----
360
367
// MARK: -
361
368
// MARK: SetAlgebraType
362
-
369
+
363
370
/// Insert a `UnicodeScalar` representation of a character into the `CharacterSet`.
364
371
///
365
372
/// `UnicodeScalar` values are available on `Swift.String.UnicodeScalarView`.
@@ -448,11 +455,11 @@ public struct CharacterSet : ReferenceConvertible, Equatable, Hashable, SetAlgeb
448
455
public func isSuperset( of other: CharacterSet ) -> Bool {
449
456
return _mapUnmanaged { $0. isSuperset ( of: other) }
450
457
}
451
- }
452
458
453
- /// Returns true if the two `CharacterSet`s are equal.
454
- public func == ( lhs : CharacterSet , rhs: CharacterSet ) -> Bool {
455
- return lhs. _wrapped. isEqual ( rhs. _bridgeToObjectiveC ( ) )
459
+ /// Returns true if the two `CharacterSet`s are equal.
460
+ public static func == ( lhs : CharacterSet , rhs: CharacterSet ) -> Bool {
461
+ return lhs. _wrapped. isEqual ( rhs. _bridgeToObjectiveC ( ) ) // TODO: mlehew - as NSCharacterSet
462
+ }
456
463
}
457
464
458
465
@@ -485,9 +492,3 @@ extension CharacterSet {
485
492
}
486
493
487
494
}
488
-
489
- extension CharacterSet {
490
- public func contains( _ member: unichar ) -> Bool {
491
- return contains ( UnicodeScalar ( member) !)
492
- }
493
- }
0 commit comments