copy_stack_vec/vec/array/
push.rs1use crate::{error::Error, vec::CopyStackVec};
6
7impl<T: Copy, const N: usize> CopyStackVec<T, N> {
8 #[inline]
10 pub fn push(&mut self, v: T) -> Result<(), Error> {
11 if self.len == N {
12 return Err(Error::Full);
13 }
14 self.buf[self.len] = v;
15 self.len += 1;
16 Ok(())
17 }
18
19 #[inline]
21 #[must_use]
22 pub fn push_truncated(&mut self, v: T) -> bool {
23 if self.len == N {
24 return false;
25 }
26 self.buf[self.len] = v;
27 self.len += 1;
28 true
29 }
30}