macro_rules! non_empty_vec {
() => { ... };
($value: expr $(,)?) => { ... };
($value: expr; const $count: expr) => { ... };
($value: expr; $count: expr) => { ... };
($value: expr, $($rest: expr),+ $(,)?) => { ... };
}Available on crate features
std or alloc only.Expand description
Constructs NonEmptyVec<T> containing the provided arguments.
§Examples
Providing no arguments results in compile-time errors:
ⓘ
use non_empty_slice::non_empty_vec;
let never = non_empty_vec![];Providing one argument:
use non_empty_slice::non_empty_vec;
let single = non_empty_vec![13];Providing argument implementing Clone and non-zero count of type Size:
use non_empty_slice::non_empty_vec;
use non_zero_size::const_size;
let repeated = non_empty_vec![13; const_size!(42)];Equivalently, one can use:
use non_empty_slice::non_empty_vec;
let repeated = non_empty_vec![13; const 42];Finally, providing multiple arguments:
use non_empty_slice::non_empty_vec;
let nice = non_empty_vec![13, 42, 69];