compact 0.2.0

Store objects containing dynamic fields either compactly in consecutive memory or using traditional heap pointers
Documentation

This crate makes it possible to store objects containing dynamic fields either compactly in consecutive memory or using traditional heap pointers.

Bread-and-butter datastructures are offered, they feature:

  • transparent access semantics, independent of currently used storage
  • automatic spill from exhausted compact storage to heap storage
  • recursive re-compaction

This is used in Kay for:

  • Storing actor state compactly in one place for cache coherency and easy persistence
  • Sending complex, dynamically-sized messages over boundaries such as actors, threads and the network