cpp_map 0.2.0

A simple C++ std::map emulator
Documentation

Latest version Documentation workflow dependency status license

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.