start an ArrayVec extension trait

Signed-off-by: Jason Volk <jason@zemos.net>
This commit is contained in:
Jason Volk 2024-10-25 19:53:08 +00:00
parent 0426f92ac0
commit 1e7207c230
2 changed files with 17 additions and 0 deletions

View file

@ -0,0 +1,15 @@
use ::arrayvec::ArrayVec;
pub trait ArrayVecExt<T> {
fn extend_from_slice(&mut self, other: &[T]) -> &mut Self;
}
impl<T: Copy, const CAP: usize> ArrayVecExt<T> for ArrayVec<T, CAP> {
#[inline]
fn extend_from_slice(&mut self, other: &[T]) -> &mut Self {
self.try_extend_from_slice(other)
.expect("Insufficient buffer capacity to extend from slice");
self
}
}

View file

@ -1,3 +1,4 @@
pub mod arrayvec;
pub mod bool;
pub mod bytes;
pub mod content_disposition;
@ -22,6 +23,7 @@ pub use ::conduit_macros::implement;
pub use ::ctor::{ctor, dtor};
pub use self::{
arrayvec::ArrayVecExt,
bool::BoolExt,
bytes::{increment, u64_from_bytes, u64_from_u8, u64_from_u8x8},
debug::slice_truncated as debug_slice_truncated,