Expand description

A proof-of-concept implementation of (one version of) the storages proposal.

Describing the raw storage API, we have:

Providing a safe wrapper around Storage use (up to uninit memory):

  • RawBox: a raw (uninit payload) version of std Box
  • RawVec: a raw (uninit payload) version of std Vec

Useful implementations of Storage:

Structs

A storage that stores objects via an Allocator.

A single storage which stores memory in borrowed space.

A pointer type for heap allocation. A tiny subset of std’s Box.

Dynamic single storage for use with RawBox<dyn Trait, DynStorage<A>>.

A single storage which stores memory inline.

A raw box around some storage. Bundles the storage and its handle.

A raw vec around some slice storage. Bundles the storage and its handle.

A single storage which stores memory inline if it fits, otherwise falling back to using an Allocator.

Traits

A storage that can manage multiple memory handles.

A storage that allocates pinned memory handles.

A storage that serves as a uniqueness barrier.

Types which can be used to manage memory handles.

Type Definitions