Releases: CrimsonNynja/PHP-Trees
PHP 8.1
PHP 8
PHP 8 Upgrade
Added in new mixed type for generics
All functions should now have the ability to use named args
Everything is now making use of the nullsafe operator where appropriate
Constructor promoting us now used
Misc
[breaking] changed RopeNode changeValue renamed to updateValue to keep inline with other functions
[breaking] normalized the argument order and names of all functions, this should make everything feel more consistent
Updated all dependencies
Improved code coverage
Removed a few unreachable code paths
code coverage
This minor release improves upon some test coverage
closure syntax
This release updates the callable syntax to that of the form (callable)(args)
Heap and BST improvements
This update adds:
- the getSize function to the Binary SearchTree
- the ability to set a comparator to a Binary Heap
- replaces all callables in the tests to the new arrow functions
Binary Heap
Added the Binary Heap data structure
Generic Tree Bug Fix, extra Tests
Fixed a bug in Generic Tree for FindByValue
Added unit tests to the Generic Tree
PHP 7.4 and Generic Tree
Added the Generic tree, a tree
- Generic Tree has no real rules, but allows for unlimited children, but has to be managed
Updated all code to utilize PHP 7.4 features
- all properties are now typed (with the exception of comparitors in BST and any mixed properties)
- changed BST tests to use the new arrow function
- shortened some code by making use of the new
??=
operator
Comparitors
Binary Search Trees can now have custom comparators
Fixed a bug in getMinNode and getMax node in the Binary Search Tree where if the functions were called when the tree was empty, the program would fail
various extra tests added/improved for better code coverage
Minor update for BST
BST should be able to be cloned now
Added missing return types on some functions
Added some missing doxygen
update to CI