- Remove methods that are inherently incompatible with preservation of invariance (only special cases for the values of type arguments would not cause the invariance property to be violated).
- Improve README.md.
- Improve
example.dart
, add assertions aboutisInvariant
to the gettersiIterable
,iList
,iSet
,iMap
.
- Improve README.md.
- Reorganize libraries in order to enable
implements
of private types. This is needed in order to makeIList<T>
assignable toIIterable<T>
, and similarly for other collection types. - Add library
invariant_set.dart
, providing the extension typeISet
.
- Add library
invariant_iterable.dart
, providing the extension typeIIterable
. Add members ofIList
where this type is used.
- Add library
invariant_collection.dart
, exportinginvariant_list.dart
. This library will export all the other libraries in this package.
- Update README.md text about the assertion.
- Extended and improved README.md.
- Added
IList
constructor that assertsisInvariant
, to enable a safe way (when assertions are enabled) to obtain anIList
from a givenList
.
- Extended README.md further.
- Extended README.md substantially.
- Add DartDoc comments.
- Initial version.