This repository was archived by the owner on May 28, 2019. It is now read-only.
Releases: icecave/collections
Releases · icecave/collections
Version 1.1.0
- [FIXED]
Collection::getIterator()now correctly resolves nestedIteratorAggregateiterators - [NEW] Added
Set::pop()andMap::pop() - [IMPROVED]
LinkedListis now implemented as a doubly-linked-list, the original implementation is available asSinglyLinkedList - [IMPROVED] Updated autoloader to PSR-4
Version 1.0.0
- Stable release (no API changes since 1.0.0-alpha.1).
Version 1.0.0-alpha.1
- [BC] Removed
HashMapandHashSet
Version 0.8.0
- [BC] Changed
Vector,Map,HashMapandLinkedListto implementIteratorAggregateinstead ofIteratorto prevent issues with nested iteration - [NEW] Added
Collection::trySize()
Version 0.7.1
- [FIXED] Fixed issue with
Vector::compare()whereby equal vectors with differing internal array sizes were not considered equal
Version 0.7.0
This release includes numerous naming changes to improve consistency across the project. Please be aware that some new methods and classes have been added with the same name as existing methods which have been renamed.
- [BC] The
mbstringextension is now required - [BC] Renamed
MutableAssociativeInterface::merge()tomergeInPlace() - [BC] Renamed
AssociativeInterface::combine()tomerge() - [BC] Renamed
MutableIterableInterface::filter()tofilterInPlace() - [BC] Renamed
IterableInterface::filtered()tofilter() - [BC] Renamed
MutableSequenceInterface::sort()tosortInPlace() - [BC] Renamed
MutableSequenceInterface::reverse()toreverseInPlace() - [BC] Renamed
SequenceInterface::sorted()tosort() - [BC] Renamed
SequenceInterface::reverse()toreversed() - [BC] Moved
AssociativeKeyGeneratorintoIcecave\Collections\Detailnamespace (it is not part of the public API) - [BC] Added begin index parameter to
RandomAccessInterface::indexOfLast()andfindLast() - [BC] Swapped the order of parameters to
PriorityQueue::__construct() - [BC] The
Mapclass has been renamed toHashMap - [BC] The
Setclass has been renamed toHashSet - [BC] Renamed
Set::isEqual()toSet::isEqualSet() - [BC] All set-specific operations (union, diff, etc) can now only operate on sets of the same type and hash/comparator function
- [BC] Renamed
Set::isStrictSuperSet()andisStrictSubSet()toisProperSuperSet()andisProperSubSet(), respectively - [FIXED] Fixed issue that prevented pushing elements into a
PriorityQueuewith an explicit priority that is weakly equivalent to null (eg, 0) - [FIXED] Fixed issues with
Vector::filter()andjoin()whereby additional null values were added to the collection - [FIXED] Fixed several issues with
Vectorwherebycount()is called on iterable arguments that are not necessarily countable - [NEW]
Collectionclass provides collection type agnostic operations for generic programming - [NEW] All collections now implement
ExtendedComparableInterfacefrom Icecave\Parity - [NEW] Added
Map, a comparator based associative container - [NEW] Added
Set, a comparator based set container - [NEW] Added
SetInterface, which addsisIntersecting(),addMany(),removeMany(),symmetricDiff()andsymmetricDiffInPlace() - [NEW] Added an iterator traits system (see
Collection::iteratorTraits) - [NEW] Added
create()static method to each collection for constructing from elements as variable arguments - [NEW] Added
MutableRandomAccessInterface::insertRange() - [IMPROVED] Prioritizer parameter to
PriorityQueue::__construct()now defaults to the identity function - [IMPROVED] Added optional end index parameter to
RandomAccessInterface::indexOf()andfind() - [IMPROVED]
Vectornow implementsSeekableIterator
Version 0.6.0
- [NEW] Added
IterableInterface::partition(),each(),any()andall() - [FIXED] Fixed issue setting/returning previous element in
Map::replace()andtryReplace() - [FIXED]
Setiteration now produces an sequential integer key
Version 0.5.1
- [FIXED]
MapandSetcollections now retain custom hash function when serializing
Version 0.5.0
- [NEW] All collection types are now serializable
- [NEW] Added
Set::isEqual(),isSuperset(),isSubset(),isStrictSuperset()andisStrictSubset()
Version 0.4.0
- [NEW] All collection types are now clonable
- [NEW] Added
RandomAccessInterface::indexOfLast(),find()andfindLast() - [IMPROVED]
LinkedList::sort()now uses a merge sort instead of converting to a native array