Releases: keep94/sqroot
Releases · keep94/sqroot
Documentation Improvements
Documentation Improvements:
- Clarify that Sequence can have either finite or infinite length, but FiniteSequence must have a finite length.
- Clarify that Number interface is a reference type.
Release v3
New Features
- Introduce FiniteSequence interface and FiniteNumber concrete type so that the compiler can enforce that a Sequence or Number is of finite length whenever that is expected.
- Some code that would run forever in v2 won't compile in v3.
Breaking Changes
- Number is now an interface instead of a concrete type. Diamond inheritance tree: FiniteSequence and Number implement Sequence. Concrete type FiniteNumber implements FiniteSequence and Number.
- FindAll, FindLast, FindLastN, and FindR now take a FiniteSequence instead of a Sequence
Update README
Update README to show how to use v2.
Docs: No copy or assignment of Number instances
Documentation Fixes
- Explain in more detail how Number instances work.
- Explain that Number instances only support reference type semantics
- Explain that PositionsBuilder objects can't be copied
Documentation Improvements
Documentation Improvements
- Make it clear that Number.WithSignificant, WithStart, and WithEnd return views.
Release v2
Breaking Changes
- Old Number.Iterator() method gone
- Number.IteratorAt() gone
- Number.Reverse() gone
- Number.NumDigits() gone
- Sequence.FullIterator() renamed to Sequence.Iterator()
- Sequence.FullReverse() renamed to Sequence.Reverse()
- Number.FullIterator() renamed to Number.Iterator()
- Number.FullReverse() renamed to Number.Reverse()
Number.WithStart() implementation change
Number.WithStart() implementation change. If Number.IsZero() returns true, Number.WithStart() returns a numberWithStart instance. This is done for consistency so that number.WithStart(5).WithEnd(0) and number.WithEnd(0).WithStart(5) return the same type of value.
Add more tests for FindXXX methods
Code Cleanup
- Add more tests for FindXXX methods.
Expose methods in Sequence interface
New Features
- Introduce End and Ranges methods on Positions type
- Expose Digit type
- Add FullIterator, FullReverse, and WithEnd methods on Number type
- Add FullIterator, FullReverse, WithStart, WithEnd methods to Sequence interface
- Introduce NewNumberFromBigRat function
Introduce FindR
New Features
- Introduce FindR.