At the moment the library only has ways of constructing trees from functions like bulk-loading and inserting elements, it would be good to provide functions for removing elements from trees too. I was thinking of providing two functions:
A function that removes elements based on equality (using the Repr equality function probably) that will return the removed element, the new tree or None if no element was found.
A function that removes all elements contained in some envelope that has a similar return to (1).
There's some prior work in libraries like the Rust one see here for example although I didn't dig too deeply.
At the moment the library only has ways of constructing trees from functions like bulk-loading and inserting elements, it would be good to provide functions for removing elements from trees too. I was thinking of providing two functions:
Repr
equality function probably) that will return the removed element, the new tree orNone
if no element was found.There's some prior work in libraries like the Rust one see here for example although I didn't dig too deeply.