Releases: oscbyspro/AwesomeNumbersKit
Releases · oscbyspro/AwesomeNumbersKit
v4.0.2
v4.0.1
v4.0.0
More changes ported from my other project: Numberick.
- #147 Custom index methods
- #146 Shift methods rework
- #145 30% faster decoding
- #144 Galaxy-brain radix exponentiation
- #143 Back to front encoding is fastest
- #142 Future-proof core integer
dividingFullWidthReportingOverflow(_:)
- #141 Use xctestplan(s)
- #140 Improved string decoding
- #139 Add
uninitialized(_:)
v3.0.0
Lots of improvements inspired by my other project: Numberick.
- #137 No
Self.DoubleWidth
andSelf.Plus1
aliases - #136 No
minLastIndex[...]
methods - #135 Req. generic masking shifts
- #134 Bounds checked pointers
- #132 Consistent division by zero semantics
- #131 Expose unchecked shift methods
- #130 Overload Swift's generic masking shifts
- #129 Replace
ANKSign
and demoteANKSigned
to ANKSignedKit - #128 Remove
ANKError
model - #127 Rework core protocols
- #126 Remove redundant type aliases
- #125 Rename ANKFoundation as ANKCoreKit
- #124 Req.
dividingFullWidthReportingOverflow(_:)
- #123 No
matches(repeating:
andisFull
- #122 Galaxy brain
multipliedReportingOverflow(by:)
- #121 Req.
twosCompelementSubsequence(_:)
- #120
ascending
anddescending
tupleget
andset
- #119
High
andLow
init - #118 Sneaky signed ± anti-overflow
- #117 Decoding strings without digits
- #112 Move
init(x32:|x64:)
to test targets - #111 Add precondition messages
v2.2.0
v2.1.0
Faster multiplication. Better testing. A fix thereof.
- #104 Fixed-width bitwise inverse of
isZero
- #103 Faster signed multiplication
- #102 Low
Signed/multiplyFullWidth(by:)
sign - #101 Denormalized
Signed
tests - #99 Simultaneous non/mutating tests
New ANKFixedWidthInteger
getters
var isFull: Bool { get }
func matches(repeating bit: Bool) -> Bool
v2.0.0 - The Great Simplification™
Fewer protocols. Faster builds. What's not to like?
GitHub
- #98 Fix
mostSignificantBit
comment - #97 Req. integer text de/encoding
- #96 No
Words
- #95 Merge
[...]Large[...]Integer
- #94 No
IntOrUInt
- #93 No
ContiguousBytes
- #92 One Shade of Un/signed™
- #91 Unsigned is Magnitude req.
- #89 The Great Simplification™
Protocols
- ANKBigEndianTextCodable
- ANKBinaryInteger
- ANKBitPatternConvertible
- ❌ ANKContiguousBytes
- ANKCoreInteger
- ANKFixedWidthInteger
- ❌ ANKIntOrUInt
- ❌ ANKLargeBinaryInteger
- ❌ ANKLargeFixedWidthInteger
- ❌ ANKMutableContiguousBytes
- ❌ ANKSignedFixedWidthInteger
- ANKSignedInteger
- ❌ ANKSignedLargeBinaryInteger
- ❌ ANKSignedLargeFixedWidthInteger
- ❌ ANKTrivialContiguousBytes
- ❌ ANKUnsignedFixedWidthInteger
- ANKUnsignedInteger
- ❌ ANKUnsignedLargeBinaryInteger
- ❌ ANKUnsignedLargeFixedWidthInteger
- ❌ ANKWords
v1.2.0
Some new methods. A precondition fix. Cleanup n' stuff.
v1.1.0
v1.0.0
Larger literals. Sendable models. Swift(er) encoding.
- #70 Sendable
- #68 [Im]PerfectRadixUIntRoot
- #67 Magic chunk count
- #66 throwing
decodeBigEndianText(_:radix:)
- #65 Up to 4x faster encoding
- #64 Remove: ExpressibleByStringLiteral
- #20 StaticBigInt
Requirements
Language and platform requirements were updated to match StaticBigInt.
Package | Swift | iOS | iPadOS | Mac Catalyst | macOS | tvOS | watchOS |
---|---|---|---|---|---|---|---|
0.6.2 | 5.7 | 13.0 | 13.0 | 13.0 | 10.15 | 13.0 | 6.0 |
1.0.0 | 5.8 | 16.4 | 16.4 | 16.4 | 13.3 | 16.4 | 9.4 |