Skip to content

Commit ca19c28

Browse files
committed
Restore previous value of Decimal.leastFiniteMagnitude for compatibility and deprecate.
1 parent 87850da commit ca19c28

File tree

5 files changed

+5
-10
lines changed

5 files changed

+5
-10
lines changed

Darwin/Foundation-swiftoverlay-Tests/TestDecimal.swift

-2
Original file line numberDiff line numberDiff line change
@@ -123,8 +123,6 @@ class TestDecimal : XCTestCase {
123123
XCTAssertEqual(leastNormal, Decimal.leastNormalMagnitude)
124124
let leastNonzero = Decimal(_exponent: -128, _length: 1, _isNegative: 0, _isCompact: 1, _reserved: 0, _mantissa: (1, 0, 0, 0, 0, 0, 0, 0))
125125
XCTAssertEqual(leastNonzero, Decimal.leastNonzeroMagnitude)
126-
let leastFinite = 0 as Decimal
127-
XCTAssertEqual(leastFinite, Decimal.leastFiniteMagnitude)
128126
let pi = Decimal(_exponent: -38, _length: 8, _isNegative: 0, _isCompact: 1, _reserved: 0, _mantissa: (0x6623, 0x7d57, 0x16e7, 0xad0d, 0xaf52, 0x4641, 0xdfa7, 0xec58))
129127
XCTAssertEqual(pi, Decimal.pi)
130128
XCTAssertEqual(10, Decimal.radix)

Darwin/Foundation-swiftoverlay/Decimal.swift

+2-1
Original file line numberDiff line numberDiff line change
@@ -307,7 +307,8 @@ extension Decimal {
307307

308308
public static let leastNonzeroMagnitude = leastNormalMagnitude
309309

310-
public static let leastFiniteMagnitude = zero
310+
@available(*, deprecated, message: "Use '-Decimal.greatestFiniteMagnitude' for least finite value or '0' for least finite magnitude")
311+
public static let leastFiniteMagnitude = -greatestFiniteMagnitude
311312

312313
public static let pi = Decimal(
313314
_exponent: -38,

Sources/Foundation/Decimal.swift

+2-1
Original file line numberDiff line numberDiff line change
@@ -515,7 +515,8 @@ extension Decimal {
515515

516516
public static let leastNonzeroMagnitude = leastNormalMagnitude
517517

518-
public static let leastFiniteMagnitude = zero
518+
@available(*, deprecated, message: "Use '-Decimal.greatestFiniteMagnitude' for least finite value or '0' for least finite magnitude")
519+
public static let leastFiniteMagnitude = -greatestFiniteMagnitude
519520

520521
public static let pi = Decimal(
521522
_exponent: -38,

Tests/Foundation/Tests/TestDecimal.swift

+1-4
Original file line numberDiff line numberDiff line change
@@ -144,8 +144,6 @@ class TestDecimal: XCTestCase {
144144
XCTAssertEqual(leastNormal, Decimal.leastNormalMagnitude)
145145
let leastNonzero = Decimal(_exponent: -128, _length: 1, _isNegative: 0, _isCompact: 1, _reserved: 0, _mantissa: (1, 0, 0, 0, 0, 0, 0, 0))
146146
XCTAssertEqual(leastNonzero, Decimal.leastNonzeroMagnitude)
147-
let leastFinite = 0 as Decimal
148-
XCTAssertEqual(leastFinite, Decimal.leastFiniteMagnitude)
149147
let pi = Decimal(_exponent: -38, _length: 8, _isNegative: 0, _isCompact: 1, _reserved: 0, _mantissa: (0x6623, 0x7d57, 0x16e7, 0xad0d, 0xaf52, 0x4641, 0xdfa7, 0xec58))
150148
XCTAssertEqual(pi, Decimal.pi)
151149
XCTAssertEqual(10, Decimal.radix)
@@ -182,7 +180,6 @@ class TestDecimal: XCTestCase {
182180
XCTAssertEqual("3402823669209384634633746074317682114550000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", Decimal.greatestFiniteMagnitude.description)
183181
XCTAssertEqual("0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001", Decimal.leastNormalMagnitude.description)
184182
XCTAssertEqual("0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001", Decimal.leastNonzeroMagnitude.description)
185-
XCTAssertEqual("0", Decimal.leastFiniteMagnitude.description)
186183

187184
let fr = Locale(identifier: "fr_FR")
188185
let greatestFiniteMagnitude = "3402823669209384634633746074317682114550000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
@@ -386,7 +383,7 @@ class TestDecimal: XCTestCase {
386383
XCTAssertEqual((1 as Decimal).magnitude, abs(-1 as Decimal))
387384
XCTAssertEqual((-1 as Decimal).magnitude, abs(-1 as Decimal))
388385
XCTAssertEqual((-1 as Decimal).magnitude, abs(1 as Decimal))
389-
XCTAssertEqual(Decimal.leastFiniteMagnitude.magnitude, -Decimal.leastFiniteMagnitude)
386+
XCTAssertEqual(Decimal.leastFiniteMagnitude.magnitude, -Decimal.leastFiniteMagnitude) // A bit of a misnomer.
390387
XCTAssertEqual(Decimal.greatestFiniteMagnitude.magnitude, Decimal.greatestFiniteMagnitude)
391388
XCTAssertTrue(Decimal.nan.magnitude.isNaN)
392389

Tests/Foundation/Tests/TestJSONSerialization.swift

-2
Original file line numberDiff line numberDiff line change
@@ -1428,8 +1428,6 @@ extension TestJSONSerialization {
14281428
}
14291429

14301430
func test_serialize_Decimal() {
1431-
XCTAssertEqual(try trySerialize([-Decimal.leastFiniteMagnitude]), "[0]")
1432-
XCTAssertEqual(try trySerialize([Decimal.leastFiniteMagnitude]), "[0]")
14331431
XCTAssertEqual(try trySerialize([-Decimal.leastNonzeroMagnitude]), "[-0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001]")
14341432
XCTAssertEqual(try trySerialize([Decimal.leastNonzeroMagnitude]), "[0.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001]")
14351433
XCTAssertEqual(try trySerialize([-Decimal.greatestFiniteMagnitude]), "[-3402823669209384634633746074317682114550000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000]")

0 commit comments

Comments
 (0)