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}