diff --git a/.travis.yml b/.travis.yml index 89d83eb..494f1fd 100644 --- a/.travis.yml +++ b/.travis.yml @@ -19,3 +19,5 @@ matrix: script: - cargo build - cargo test + - cargo build --feature="extern_crate_alloc" + - cargo test --feature="extern_crate_alloc" diff --git a/appveyor.yml b/appveyor.yml index 9323d2d..35b0f1b 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -28,3 +28,5 @@ build: false test_script: - cargo build - cargo test + - cargo build --feature="extern_crate_alloc" + - cargo test --feature="extern_crate_alloc" diff --git a/src/lib.rs b/src/lib.rs index 8a05ea4..540a034 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -66,3 +66,8 @@ pub use arrayish::*; mod arrayish_vec; pub use arrayish_vec::*; + +#[cfg(feature = "extern_crate_alloc")] +mod tiny_vec; +#[cfg(feature = "extern_crate_alloc")] +pub use tiny_vec::*; diff --git a/src/tiny_vec.rs b/src/tiny_vec.rs new file mode 100644 index 0000000..4c97286 --- /dev/null +++ b/src/tiny_vec.rs @@ -0,0 +1,10 @@ +#![cfg(feature = "extern_crate_alloc")] + +use super::*; + +use alloc::vec::Vec; + +pub enum TinyVec { + Inline(ArrayishVec), + Heap(Vec) +}