Implement signed keys
adevore opened this issue · comments
Aaron DeVore commented
Currently, only unsigned integers have the Key trait implemented. The problem with signed integers comes when trying to negative integers into a trie. Because the top bit is 1 in two's complement integers, negative numbers will come after positive numbers if simply transmuted. Instead, the numbers must be shifted in the Key trait implementation.
The feature/signed-keys branch contains an implementation that is verified to work for insert, get, and remove. However, because iteration is not implemented the order has not been verified. This is blocking on #14.