Skip to content

"Small vector" optimization for Rust: store up to a small number of items on the stack

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

servo/rust-smallvec

Folders and files

NameName
Last commit message
Last commit date

Latest commit

395763c · Mar 21, 2025
Mar 11, 2025
Oct 27, 2023
Jul 30, 2024
Aug 2, 2023
Mar 21, 2025
Aug 1, 2022
Jan 15, 2024
Mar 20, 2025
Jun 6, 2018
Jun 6, 2018
Mar 20, 2024

Repository files navigation

rust-smallvec

⚠️ Note: This is the code for smallvec 2.0, which is not yet ready for release. For details about the changes in version 2.0, please see #183, #240, and #284.

The source code for the latest smallvec 1.x.y release can be found on the v1 branch. Bug fixes for smallvec 1 should be based on that branch, while new feature development should go on the v2 branch.

About smallvec

Documentation

Release notes

"Small vector" optimization for Rust: store up to a small number of items on the stack

Example

use smallvec::{SmallVec, smallvec};
    
// This SmallVec can hold up to 4 items on the stack:
let mut v: SmallVec<i32, 4> = smallvec![1, 2, 3, 4];

// It will automatically move its contents to the heap if
// contains more than four items:
v.push(5);

// SmallVec points to a slice, so you can use normal slice
// indexing and other methods to access its contents:
v[0] = v[1] + v[2];
v.sort();

About

"Small vector" optimization for Rust: store up to a small number of items on the stack

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Packages

No packages published