cpp_map.rs
C++ std::map Emulator for Rust
A simple C++ std::map emulator for Rust.
This library provides a data structure that emulates C++'s std::map, particularly its pointer-based cursors/iterators.
Key Features
- Replicates C++ behavior where
insert(key, value)is a no-op if the key exists (the new value isn't used) - Maintains pointer stability like C++'s std::map
- Provides familiar C++-style iterator interface
Implementations
Skip List
- O(log n) search and insert
- O(1) sequential access
Linked List
- O(n) search and insert
- O(1) sequential access
Performance Note
For primarily position/hint-based operations, the linked list implementation will typically be faster.
Minimum Supported Rust Version (MSRV)
The minimum supported version of Rust for cpp_map is 1.87.0.
License
Licensed under either of
at your option.