packable/packer/vec.rs
1// Copyright 2023 IOTA Stiftung
2// SPDX-License-Identifier: Apache-2.0
3
4extern crate alloc;
5
6use alloc::vec::Vec;
7use core::convert::Infallible;
8
9use crate::packer::Packer;
10
11impl Packer for Vec<u8> {
12 type Error = Infallible;
13
14 #[inline]
15 fn pack_bytes<B: AsRef<[u8]>>(&mut self, bytes: B) -> Result<(), Self::Error> {
16 self.extend_from_slice(bytes.as_ref());
17 Ok(())
18 }
19
20 #[inline]
21 fn written_bytes(&self) -> Option<usize> {
22 Some(self.len())
23 }
24}