[][src]Crate minivec

A space-optimized version of std::vec::Vec that's only the size of a single pointer! Ideal for low-level APIs where ABI calling conventions will typically require most structs be spilled onto the stack and copied instead of being passed solely in registers

For example, x64 msvc ABI:

There's a strict one-to-one correspondence between a function call's arguments and the registers used for those arguments. Any argument that doesn't fit in 8 bytes, or isn't 1, 2, 4, or 8 bytes, must be passed by reference. A single argument is never spread across multiple registers.

The interface largely matches that of Vec but unfortunately, the stdlib always has access to newer features, more unstable APIs so MiniVec will naturally be a bit more boring.

Macros

mini_vec

mini_vec! is a macro similar in spirit to the stdlib's vec!.

Structs

Drain
IntoIter
MiniVec
Splice