Skip to content

Commit 19e0522

Browse files
tomquistparkera
authored andcommitted
Align NSNumber/NSDecimalNumber API to Darwin version (#345)
* align NSNumber API to Darwin version * Use ``x as Int`` instead of ``Int(x)`` and broke NSArray construction into two sub expressions
1 parent 807678a commit 19e0522

20 files changed

+497
-517
lines changed

Foundation/NSDecimalNumber.swift

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -55,37 +55,37 @@ public class NSDecimalNumber : NSNumber {
5555
NSRequiresConcreteImplementation()
5656
}
5757

58-
public override func descriptionWithLocale(_ locale: AnyObject?) -> String { NSUnimplemented() }
58+
public override func description(withLocale locale: AnyObject?) -> String { NSUnimplemented() }
5959

6060
// TODO: "declarations from extensions cannot be overridden yet"
6161
// Although it's not clear we actually need to redeclare this here when the extension adds it to the superclass of this class
6262
// public var decimalValue: NSDecimal { NSUnimplemented() }
6363

6464
public class func zero() -> NSDecimalNumber { NSUnimplemented() }
6565
public class func one() -> NSDecimalNumber { NSUnimplemented() }
66-
public class func minimumDecimalNumber() -> NSDecimalNumber { NSUnimplemented() }
67-
public class func maximumDecimalNumber() -> NSDecimalNumber { NSUnimplemented() }
66+
public class func minimum() -> NSDecimalNumber { NSUnimplemented() }
67+
public class func maximum() -> NSDecimalNumber { NSUnimplemented() }
6868
public class func notANumber() -> NSDecimalNumber { NSUnimplemented() }
6969

70-
public func decimalNumberByAdding(_ decimalNumber: NSDecimalNumber) -> NSDecimalNumber { NSUnimplemented() }
71-
public func decimalNumberByAdding(_ decimalNumber: NSDecimalNumber, withBehavior behavior: NSDecimalNumberBehaviors?) -> NSDecimalNumber { NSUnimplemented() }
70+
public func adding(_ decimalNumber: NSDecimalNumber) -> NSDecimalNumber { NSUnimplemented() }
71+
public func adding(_ decimalNumber: NSDecimalNumber, withBehavior behavior: NSDecimalNumberBehaviors?) -> NSDecimalNumber { NSUnimplemented() }
7272

73-
public func decimalNumberBySubtracting(_ decimalNumber: NSDecimalNumber) -> NSDecimalNumber { NSUnimplemented() }
74-
public func decimalNumberBySubtracting(_ decimalNumber: NSDecimalNumber, withBehavior behavior: NSDecimalNumberBehaviors?) -> NSDecimalNumber { NSUnimplemented() }
73+
public func subtracting(_ decimalNumber: NSDecimalNumber) -> NSDecimalNumber { NSUnimplemented() }
74+
public func subtracting(_ decimalNumber: NSDecimalNumber, withBehavior behavior: NSDecimalNumberBehaviors?) -> NSDecimalNumber { NSUnimplemented() }
7575

76-
public func decimalNumberByMultiplyingBy(_ decimalNumber: NSDecimalNumber) -> NSDecimalNumber { NSUnimplemented() }
77-
public func decimalNumberByMultiplyingBy(_ decimalNumber: NSDecimalNumber, withBehavior behavior: NSDecimalNumberBehaviors?) -> NSDecimalNumber { NSUnimplemented() }
76+
public func multiplying(by decimalNumber: NSDecimalNumber) -> NSDecimalNumber { NSUnimplemented() }
77+
public func multiplying(by decimalNumber: NSDecimalNumber, withBehavior behavior: NSDecimalNumberBehaviors?) -> NSDecimalNumber { NSUnimplemented() }
7878

79-
public func decimalNumberByDividingBy(_ decimalNumber: NSDecimalNumber) -> NSDecimalNumber { NSUnimplemented() }
80-
public func decimalNumberByDividingBy(_ decimalNumber: NSDecimalNumber, withBehavior behavior: NSDecimalNumberBehaviors?) -> NSDecimalNumber { NSUnimplemented() }
79+
public func dividing(by decimalNumber: NSDecimalNumber) -> NSDecimalNumber { NSUnimplemented() }
80+
public func dividing(by decimalNumber: NSDecimalNumber, withBehavior behavior: NSDecimalNumberBehaviors?) -> NSDecimalNumber { NSUnimplemented() }
8181

82-
public func decimalNumberByRaisingToPower(_ power: Int) -> NSDecimalNumber { NSUnimplemented() }
83-
public func decimalNumberByRaisingToPower(_ power: Int, withBehavior behavior: NSDecimalNumberBehaviors?) -> NSDecimalNumber { NSUnimplemented() }
82+
public func raising(toPower power: Int) -> NSDecimalNumber { NSUnimplemented() }
83+
public func raising(toPower power: Int, withBehavior behavior: NSDecimalNumberBehaviors?) -> NSDecimalNumber { NSUnimplemented() }
8484

85-
public func decimalNumberByMultiplyingByPowerOf10(_ power: Int16) -> NSDecimalNumber { NSUnimplemented() }
86-
public func decimalNumberByMultiplyingByPowerOf10(_ power: Int16, withBehavior behavior: NSDecimalNumberBehaviors?) -> NSDecimalNumber { NSUnimplemented() }
85+
public func multiplying(byPowerOf10 power: Int16) -> NSDecimalNumber { NSUnimplemented() }
86+
public func multiplying(byPowerOf10 power: Int16, withBehavior behavior: NSDecimalNumberBehaviors?) -> NSDecimalNumber { NSUnimplemented() }
8787

88-
public func decimalNumberByRoundingAccordingToBehavior(_ behavior: NSDecimalNumberBehaviors?) -> NSDecimalNumber { NSUnimplemented() }
88+
public func rounding(accordingToBehavior behavior: NSDecimalNumberBehaviors?) -> NSDecimalNumber { NSUnimplemented() }
8989
// Round to the scale of the behavior.
9090

9191
public override func compare(_ decimalNumber: NSNumber) -> NSComparisonResult { NSUnimplemented() }

Foundation/NSDictionary.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -368,7 +368,7 @@ public class NSDictionary : NSObject, NSCopying, NSMutableCopying, NSSecureCodin
368368
} else if key is NSDate {
369369
line += (key as! NSDate).descriptionWithLocale(locale)
370370
} else if key is NSDecimalNumber {
371-
line += (key as! NSDecimalNumber).descriptionWithLocale(locale)
371+
line += (key as! NSDecimalNumber).description(withLocale: locale)
372372
} else if key is NSDictionary {
373373
line += (key as! NSDictionary).descriptionWithLocale(locale, indent: level + 1)
374374
} else if key is NSOrderedSet {
@@ -387,7 +387,7 @@ public class NSDictionary : NSObject, NSCopying, NSMutableCopying, NSSecureCodin
387387
} else if object is NSDate {
388388
line += (object as! NSDate).descriptionWithLocale(locale)
389389
} else if object is NSDecimalNumber {
390-
line += (object as! NSDecimalNumber).descriptionWithLocale(locale)
390+
line += (object as! NSDecimalNumber).description(withLocale: locale)
391391
} else if object is NSDictionary {
392392
line += (object as! NSDictionary).descriptionWithLocale(locale, indent: level + 1)
393393
} else if object is NSOrderedSet {

Foundation/NSFileManager.swift

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -179,9 +179,9 @@ public class NSFileManager : NSObject {
179179
fatalError("Can't set file permissions to \(attributes[attribute])")
180180
}
181181
#if os(OSX) || os(iOS)
182-
let modeT = number.unsignedShortValue
182+
let modeT = number.uint16Value
183183
#elseif os(Linux)
184-
let modeT = number.unsignedIntValue
184+
let modeT = number.uint32Value
185185
#endif
186186
if chmod(path, modeT) != 0 {
187187
fatalError("errno \(errno)")
@@ -337,7 +337,7 @@ public class NSFileManager : NSObject {
337337
throw _NSErrorWithErrno(errno, reading: true, path: path)
338338
}
339339
var result = [String : Any]()
340-
result[NSFileSize] = NSNumber(unsignedLongLong: UInt64(s.st_size))
340+
result[NSFileSize] = NSNumber(value: UInt64(s.st_size))
341341

342342
#if os(OSX) || os(iOS)
343343
let ti = (NSTimeInterval(s.st_mtimespec.tv_sec) - kCFAbsoluteTimeIntervalSince1970) + (1.0e-9 * NSTimeInterval(s.st_mtimespec.tv_nsec))
@@ -346,10 +346,10 @@ public class NSFileManager : NSObject {
346346
#endif
347347
result[NSFileModificationDate] = NSDate(timeIntervalSinceReferenceDate: ti)
348348

349-
result[NSFilePosixPermissions] = NSNumber(unsignedLongLong: UInt64(s.st_mode & 0o7777))
350-
result[NSFileReferenceCount] = NSNumber(unsignedLongLong: UInt64(s.st_nlink))
351-
result[NSFileSystemNumber] = NSNumber(unsignedLongLong: UInt64(s.st_dev))
352-
result[NSFileSystemFileNumber] = NSNumber(unsignedLongLong: UInt64(s.st_ino))
349+
result[NSFilePosixPermissions] = NSNumber(value: UInt64(s.st_mode & 0o7777))
350+
result[NSFileReferenceCount] = NSNumber(value: UInt64(s.st_nlink))
351+
result[NSFileSystemNumber] = NSNumber(value: UInt64(s.st_dev))
352+
result[NSFileSystemFileNumber] = NSNumber(value: UInt64(s.st_ino))
353353

354354
let pwd = getpwuid(s.st_uid)
355355
if pwd != nil && pwd.pointee.pw_name != nil {
@@ -376,19 +376,19 @@ public class NSFileManager : NSObject {
376376
result[NSFileType] = type
377377

378378
if type == NSFileTypeBlockSpecial || type == NSFileTypeCharacterSpecial {
379-
result[NSFileDeviceIdentifier] = NSNumber(unsignedLongLong: UInt64(s.st_rdev))
379+
result[NSFileDeviceIdentifier] = NSNumber(value: UInt64(s.st_rdev))
380380
}
381381

382382
#if os(OSX) || os(iOS)
383383
if (s.st_flags & UInt32(UF_IMMUTABLE | SF_IMMUTABLE)) != 0 {
384-
result[NSFileImmutable] = NSNumber(bool: true)
384+
result[NSFileImmutable] = NSNumber(value: true)
385385
}
386386
if (s.st_flags & UInt32(UF_APPEND | SF_APPEND)) != 0 {
387-
result[NSFileAppendOnly] = NSNumber(bool: true)
387+
result[NSFileAppendOnly] = NSNumber(value: true)
388388
}
389389
#endif
390-
result[NSFileOwnerAccountID] = NSNumber(unsignedLongLong: UInt64(s.st_uid))
391-
result[NSFileGroupOwnerAccountID] = NSNumber(unsignedLongLong: UInt64(s.st_gid))
390+
result[NSFileOwnerAccountID] = NSNumber(value: UInt64(s.st_uid))
391+
result[NSFileGroupOwnerAccountID] = NSNumber(value: UInt64(s.st_gid))
392392

393393
return result
394394
}

Foundation/NSGeometry.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -957,7 +957,7 @@ extension NSCoder {
957957
private extension NSCoder {
958958
func _encodeCGFloat(_ value: CGFloat) {
959959
if let keyedArchiver = self as? NSKeyedArchiver {
960-
keyedArchiver._encodeValue(NSNumber(double: value.native))
960+
keyedArchiver._encodeValue(NSNumber(value: value.native))
961961
} else {
962962
NSUnimplemented()
963963
}

Foundation/NSHTTPCookie.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -245,7 +245,7 @@ public class NSHTTPCookie : NSObject {
245245
_portList = portString.characters
246246
.split(separator: ",")
247247
.flatMap { Int(String($0)) }
248-
.map { NSNumber(integer: $0) }
248+
.map { NSNumber(value: $0) }
249249
} else {
250250
_portList = nil
251251
}

Foundation/NSKeyedArchiver.swift

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -665,39 +665,39 @@ public class NSKeyedArchiver : NSCoder {
665665
break
666666
case .Char:
667667
let charp = unsafeBitCast(addr, to: UnsafePointer<CChar>.self)
668-
_encodeValue(NSNumber(char: charp.pointee))
668+
_encodeValue(NSNumber(value: charp.pointee))
669669
break
670670
case .UChar:
671671
let ucharp = unsafeBitCast(addr, to: UnsafePointer<UInt8>.self)
672-
_encodeValue(NSNumber(unsignedChar: ucharp.pointee))
672+
_encodeValue(NSNumber(value: ucharp.pointee))
673673
break
674674
case .Int, .Long:
675675
let intp = unsafeBitCast(addr, to: UnsafePointer<Int32>.self)
676-
_encodeValue(NSNumber(int: intp.pointee))
676+
_encodeValue(NSNumber(value: intp.pointee))
677677
break
678678
case .UInt, .ULong:
679679
let uintp = unsafeBitCast(addr, to: UnsafePointer<UInt32>.self)
680-
_encodeValue(NSNumber(unsignedInt: uintp.pointee))
680+
_encodeValue(NSNumber(value: uintp.pointee))
681681
break
682682
case .LongLong:
683683
let longlongp = unsafeBitCast(addr, to: UnsafePointer<Int64>.self)
684-
_encodeValue(NSNumber(longLong: longlongp.pointee))
684+
_encodeValue(NSNumber(value: longlongp.pointee))
685685
break
686686
case .ULongLong:
687687
let ulonglongp = unsafeBitCast(addr, to: UnsafePointer<UInt64>.self)
688-
_encodeValue(NSNumber(unsignedLongLong: ulonglongp.pointee))
688+
_encodeValue(NSNumber(value: ulonglongp.pointee))
689689
break
690690
case .Float:
691691
let floatp = unsafeBitCast(addr, to: UnsafePointer<Float>.self)
692-
_encodeValue(NSNumber(float: floatp.pointee))
692+
_encodeValue(NSNumber(value: floatp.pointee))
693693
break
694694
case .Double:
695695
let doublep = unsafeBitCast(addr, to: UnsafePointer<Double>.self)
696-
_encodeValue(NSNumber(double: doublep.pointee))
696+
_encodeValue(NSNumber(value: doublep.pointee))
697697
break
698698
case .Bool:
699699
let boolp = unsafeBitCast(addr, to: UnsafePointer<Bool>.self)
700-
_encodeValue(NSNumber(bool: boolp.pointee))
700+
_encodeValue(NSNumber(value: boolp.pointee))
701701
break
702702
case .CharPtr:
703703
let charpp = unsafeBitCast(addr, to: UnsafePointer<UnsafePointer<Int8>>.self)
@@ -738,31 +738,31 @@ public class NSKeyedArchiver : NSCoder {
738738
}
739739

740740
public override func encodeBool(_ boolv: Bool, forKey key: String) {
741-
_encodeValue(NSNumber(bool: boolv), forKey: key)
741+
_encodeValue(NSNumber(value: boolv), forKey: key)
742742
}
743743

744744
public override func encodeInt(_ intv: Int32, forKey key: String) {
745-
_encodeValue(NSNumber(int: intv), forKey: key)
745+
_encodeValue(NSNumber(value: intv), forKey: key)
746746
}
747747

748748
public override func encodeInt32(_ intv: Int32, forKey key: String) {
749-
_encodeValue(NSNumber(int: intv), forKey: key)
749+
_encodeValue(NSNumber(value: intv), forKey: key)
750750
}
751751

752752
public override func encodeInt64(_ intv: Int64, forKey key: String) {
753-
_encodeValue(NSNumber(longLong: intv), forKey: key)
753+
_encodeValue(NSNumber(value: intv), forKey: key)
754754
}
755755

756756
public override func encodeFloat(_ realv: Float, forKey key: String) {
757-
_encodeValue(NSNumber(float: realv), forKey: key)
757+
_encodeValue(NSNumber(value: realv), forKey: key)
758758
}
759759

760760
public override func encodeDouble(_ realv: Double, forKey key: String) {
761-
_encodeValue(NSNumber(double: realv), forKey: key)
761+
_encodeValue(NSNumber(value: realv), forKey: key)
762762
}
763763

764764
public override func encodeInteger(_ intv: Int, forKey key: String) {
765-
_encodeValue(NSNumber(long: intv), forKey: key)
765+
_encodeValue(NSNumber(value: intv), forKey: key)
766766
}
767767

768768
public override func encodeDataObject(_ data: NSData) {

Foundation/NSKeyedUnarchiver.swift

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ public class NSKeyedUnarchiver : NSCoder {
126126
}
127127

128128
let version = unwrappedPlist["$version"] as? NSNumber
129-
if version?.intValue != Int32(NSKeyedArchivePlistVersion) {
129+
if version?.int32Value != Int32(NSKeyedArchivePlistVersion) {
130130
throw _decodingError(NSCocoaError.PropertyListReadCorruptError,
131131
withDescription: "Unknown archive version. The data may be corrupt.")
132132
}
@@ -713,21 +713,21 @@ public class NSKeyedUnarchiver : NSCoder {
713713
guard let result : NSNumber = _decodeValue(forKey: key) else {
714714
return 0
715715
}
716-
return result.intValue
716+
return result.int32Value
717717
}
718718

719719
public override func decodeInt32ForKey(_ key: String) -> Int32 {
720720
guard let result : NSNumber = _decodeValue(forKey: key) else {
721721
return 0
722722
}
723-
return result.intValue
723+
return result.int32Value
724724
}
725725

726726
public override func decodeInt64ForKey(_ key: String) -> Int64 {
727727
guard let result : NSNumber = _decodeValue(forKey: key) else {
728728
return 0
729729
}
730-
return result.longLongValue
730+
return result.int64Value
731731
}
732732

733733
public override func decodeFloatForKey(_ key: String) -> Float {
@@ -748,7 +748,7 @@ public class NSKeyedUnarchiver : NSCoder {
748748
guard let result : NSNumber = _decodeValue(forKey: key) else {
749749
return 0
750750
}
751-
return result.longValue
751+
return result.intValue
752752
}
753753

754754
// returned bytes immutable, and they go away with the unarchiver, not the containing autorelease pool
@@ -783,32 +783,32 @@ public class NSKeyedUnarchiver : NSCoder {
783783
break
784784
case .Char:
785785
if let ns : NSNumber = _decodeValue() {
786-
unsafeBitCast(addr, to: UnsafeMutablePointer<CChar>.self).pointee = ns.charValue
786+
unsafeBitCast(addr, to: UnsafeMutablePointer<CChar>.self).pointee = ns.int8Value
787787
}
788788
break
789789
case .UChar:
790790
if let ns : NSNumber = _decodeValue() {
791-
unsafeBitCast(addr, to: UnsafeMutablePointer<UInt8>.self).pointee = ns.unsignedCharValue
791+
unsafeBitCast(addr, to: UnsafeMutablePointer<UInt8>.self).pointee = ns.uint8Value
792792
}
793793
break
794794
case .Int, .Long:
795795
if let ns : NSNumber = _decodeValue() {
796-
unsafeBitCast(addr, to: UnsafeMutablePointer<Int32>.self).pointee = ns.intValue
796+
unsafeBitCast(addr, to: UnsafeMutablePointer<Int32>.self).pointee = ns.int32Value
797797
}
798798
break
799799
case .UInt, .ULong:
800800
if let ns : NSNumber = _decodeValue() {
801-
unsafeBitCast(addr, to: UnsafeMutablePointer<UInt32>.self).pointee = ns.unsignedIntValue
801+
unsafeBitCast(addr, to: UnsafeMutablePointer<UInt32>.self).pointee = ns.uint32Value
802802
}
803803
break
804804
case .LongLong:
805805
if let ns : NSNumber = _decodeValue() {
806-
unsafeBitCast(addr, to: UnsafeMutablePointer<Int64>.self).pointee = ns.longLongValue
806+
unsafeBitCast(addr, to: UnsafeMutablePointer<Int64>.self).pointee = ns.int64Value
807807
}
808808
break
809809
case .ULongLong:
810810
if let ns : NSNumber = _decodeValue() {
811-
unsafeBitCast(addr, to: UnsafeMutablePointer<UInt64>.self).pointee = ns.unsignedLongLongValue
811+
unsafeBitCast(addr, to: UnsafeMutablePointer<UInt64>.self).pointee = ns.uint64Value
812812
}
813813
break
814814
case .Float:

0 commit comments

Comments
 (0)