Changes for version 0.02 - 2026-03-12

  • Lookup optimizations: cached stash pointer comparison in EXTRACT_MAP
  • Switch to bundled xxHash v0.8.3 (XXH3_64bits) for all key hashing
  • Add get_direct keyword for zero-copy string-value lookups (IS, SS, I32S, I16S)
  • OOM-safe TTL lazy allocation across all put/get_or_set paths
  • LRU uint32_t index overflow guard in rehash
  • HM_LIKELY/HM_UNLIKELY portability guard for non-GCC/Clang compilers
  • Null-value guard in get_or_set for string-value variants
  • each() iterator reset documentation covers remove/compaction triggers
  • iter_reset keyword for manual each() iterator reset

Modules

Fast type-specialized hash maps implemented in C

Provides

in lib/Data/HashMap/I16.pm
in lib/Data/HashMap/I16A.pm
in lib/Data/HashMap/I16S.pm
in lib/Data/HashMap/I32.pm
in lib/Data/HashMap/I32A.pm
in lib/Data/HashMap/I32S.pm
in lib/Data/HashMap/IA.pm
in lib/Data/HashMap/II.pm
in lib/Data/HashMap/IS.pm
in lib/Data/HashMap/SA.pm
in lib/Data/HashMap/SI.pm
in lib/Data/HashMap/SI16.pm
in lib/Data/HashMap/SI32.pm
in lib/Data/HashMap/SS.pm