You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
After attempting #21 and failing, I decided several of my approaches in the v0.1.1 release were misguided, not assuming Copy on K and I made the implementations so so so painful despite the fact all the K's and I's I ever plan on using this data structure with will be Copy.
Secondly and more specifically to #21, is that it still doesn't address the OrdWrapper bodge which also greatly complicates the implementations as you have to encode the orderings into the type at compile time which is a right pain when you require runtime dependent comparisons.
So after taking inspiration from eggyal/copse I forked it and created ripytide/btree_monstrousity. I modified every single function to take a Closure that decides all the Orderings at runtime! And hence the keys you store no longer have to be Ord!!
This has made the code much simpler and more elegant than before. I have also removed many of the "helper-style" functions such as cut_same, append_platonic etc.. since they are all easily achievable on the user side and it's a lot of work to maintain so many extra functions.
The text was updated successfully, but these errors were encountered:
After attempting #21 and failing, I decided several of my approaches in the v0.1.1 release were misguided, not assuming
Copy
onK
andI
made the implementations so so so painful despite the fact all theK
's andI
's I ever plan on using this data structure with will beCopy
.Secondly and more specifically to #21, is that it still doesn't address the
OrdWrapper
bodge which also greatly complicates the implementations as you have to encode the orderings into the type at compile time which is a right pain when you require runtime dependent comparisons.So after taking inspiration from eggyal/copse I forked it and created ripytide/btree_monstrousity. I modified every single function to take a Closure that decides all the Orderings at runtime! And hence the keys you store no longer have to be Ord!!
This has made the code much simpler and more elegant than before. I have also removed many of the "helper-style" functions such as
cut_same
,append_platonic
etc.. since they are all easily achievable on the user side and it's a lot of work to maintain so many extra functions.The text was updated successfully, but these errors were encountered: