An idiomatic and fast QP-trie implementation in pure Rust.
Why should the Trie itself be parameterized over key type? Currently both having `K` as type parameter and needing it passed as owned to `insert` and (especially) to `entry` pretty much forces us to make copy of key for each invocation. I think we only need key when first inserting into the trie, which could be better achieved with `ToOwned` (btw this comment makes sense for me: https://github.com/sdleffler/qp-trie-rs/blob/91507d5cfee53bafdeeb69deb36140f496a3bbaa/src/node.rs#L245). This way, `insert` and `entry` would require `Borrow` + `ToOwned` and would clone only when really necessary. Then if we stored `[u8]` in some form in node and parameterize functions like `insert` and `entry` themselves which would allow passing them `&'a [u8]` with different `'a` which is currently impossible.
This issue appears to be discussing a feature request or bug report related to the repository. Based on the content, it seems to be still under discussion. The issue was opened by CthulhuDen and has received 10 comments.