I appreciate that this library is as optimized and fast as it is and I'm currently testing out swapping sucds for it because I want 32 Bit support anyways, but the refactoring has been very painful so far.
Conversion between the different types like &[u64] -> BitVectorMut -> BitVector -> RSNarrow takes multiple steps and the API of each of those types is different even for very similar or the same functionality (see for example #7), sometimes you even lose functionality by going "up the ladder".
After you finally convert everything, it is near impossible to get the original data back out without going through some absurd hoops like iterating over each bit individually.
As I didn't see contribution guidelines, I would like to ask here if help getting this improved is welcome.
If yes, I would be open to create a few pull requests to improve this situation.
I appreciate that this library is as optimized and fast as it is and I'm currently testing out swapping sucds for it because I want 32 Bit support anyways, but the refactoring has been very painful so far.
Conversion between the different types like &[u64] -> BitVectorMut -> BitVector -> RSNarrow takes multiple steps and the API of each of those types is different even for very similar or the same functionality (see for example #7), sometimes you even lose functionality by going "up the ladder".
After you finally convert everything, it is near impossible to get the original data back out without going through some absurd hoops like iterating over each bit individually.
As I didn't see contribution guidelines, I would like to ask here if help getting this improved is welcome.
If yes, I would be open to create a few pull requests to improve this situation.