[][src]Crate coca

Allocation-free data structures with constant capacity.

Designed for use in memory-constrained embedded systems that cannot use growable structures, and in soft-realtime applications that cannot tolerate latency spikes caused by reallocations.

These generally require the user to supply memory to work with.

Features

  • profile: Enables memory profiling in arenas; see the module-level documentation for details.
  • nightly: Adds trait implementations and convenience functions that require the nightly-only feature(min_const_generics), allowing inlining of ContiguousStorage.
  • alloc: Adds trait implementations and convenience functions for working with heap allocated memory.

Re-exports

pub use crate::arena::Arena;
pub use crate::arena::Box;
pub use crate::binary_heap::AllocHeap;
pub use crate::binary_heap::ArenaHeap;
pub use crate::binary_heap::SliceHeap;
pub use crate::binary_heap::ArrayHeap;
pub use crate::binary_heap::TiArrayHeap;
pub use crate::deque::AllocDeque;
pub use crate::deque::ArenaDeque;
pub use crate::deque::SliceDeque;
pub use crate::deque::ArrayDeque;
pub use crate::deque::TiArrayDeque;
pub use crate::vec::AllocVec;
pub use crate::vec::ArenaVec;
pub use crate::vec::SliceVec;
pub use crate::vec::ArrayVec;
pub use crate::vec::TiArrayVec;

Modules

arena

Arena-based memory management.

binary_heap

A fixed-capacity priority queue implemented with a binary heap.

deque

A double-ended queue implemented with a ring buffer.

storage

Traits providing genericity over storage strategies and index types.

vec

Contiguous growable array types with constant capacity.

Macros

fmt

Creates a Option<Box<'_, str>> using interpolation of runtime expressions.

index_type

Generates a newtype wrapping an implementor of Capacity.