3.0.0 Pre 1
Pre-release
Pre-release
Warning: This is a Pre-Release. It is not intended to be used in production system because of (maybe) decreased/isolated functionality. Pre-Releases are published to be tested and reviewed by the audience.
Intention
This pre-release aims to prove the functionality of immutable SingleLinkedLists (aka. List). Actions involving rvalues (primitives and classes) and lvalues (classes) are important.
Non functional
- Mutable SingleLinkedLists
- (Im)Mutable DoubleLInkedLists
- toArray, fromArray, sort - methods in all lists
Documentation
Please note, that the documentation might not be on-point, and changed on the way to the 3.0.0 Release.
Breaking Changes
- Get Function
- get -> returning immutable value (replacement for getValue)
- getMutable -> returning mutable pointer (replacement for getPointer)
New API
- void addAll(int index , T *arr, size_t arrSize) - add all entries from the array to the list at the index.
Internal changed
- T objects are now saved in the Entries instead of "pointer to T objects"
- This is because of the scoped memory allocation of an object during the add-process. Otherwise the object would be free'd after running out of the add-method scope.
- remove macro for the creation of final values due to the fact, that 'memcpy' does not work on objects of classes
- add pre-processor checks for rvalue-functions (only available in C++11 or later; and earlier by defining a macro)
- change some int to size_t where it makes logical sense
- more correct equals check for mutable lists (not only value equal, but object/reference equal)
Further changes
- Comment out toArray function in example file
- clearer documentation
- add Tests for immutable SingleLinkedList with PlatformIO Unity-Engine
Full Changelog: v2.1.4...v3.0.0pre1