Repository navigation
Combine MapAdapter with MapConstAdapter
Full Changelog: 1.1...1.1.2
mywheel-cpp v1.2.0 π β Big Refactor & New Toys!
β¨ Major Highlights
-
Completely redesigned core data structures with modern C++20 style adapters π¨
-
Introduced powerful new containers:
MapAdapterβ turn any key-value container into a real map-like interface withoperator[],at(),contains(),size()MapConstAdapterβ read-only view of any associative containerCycleβ a circular linked list that lets you iterate forever (perfect for round-robin, game loops, etc.) β»οΈListβ custom doubly-linked list with sentinel nodes (cleaner & faster than std::list in many cases)ShiftArrayβ fixed-size array with O(1) rotate/shift operations
-
Merged
MapAdapterandMapConstAdapterinto a cleaner, more consistent design -
Added extensive Doxygen documentation for every public class and method π
-
Added stress tests & property-based tests (100 000+ iterations) for all new containers
New Features
Cyclenow supports exclusion ranges β skip parts of the cycle temporarily- All adapters work with
std::vector,std::array, raw arrays, and even third-party containers - Full iterator + range-for support on every new container
MapAdapterprovides both mutable and const subscript overloads safely
Build & CI
- Updated CMake minimum to 3.15
- Added
-DMYWHEEL_BUILD_TESTS=ONoption - CI now runs massive stress tests on every PR
Other Improvements
- Cleaner internal includes & forward declarations
- Better error messages in tests
- Removed deprecated code
Huge thanks to GEMINI CLI for documentation, stress-test generation, and many cleanups!
Upgrade now and enjoy faster, safer, more expressive containers!
Grab v1.2.0 today! π