Encode into a stack buffer, returning (buffer, length).
(&self)
| 178 | |
| 179 | /// Encode into a stack buffer, returning (buffer, length). |
| 180 | pub fn encode_to_buf(&self) -> ([u8; BLOCK_HANDLE_MAX_ENCODED_LENGTH], usize) { |
| 181 | let mut buf = [0u8; BLOCK_HANDLE_MAX_ENCODED_LENGTH]; |
| 182 | let mut cursor = io::Cursor::new(&mut buf[..]); |
| 183 | self.write_to(&mut cursor).unwrap(); |
| 184 | let len = cursor.position() as usize; |
| 185 | (buf, len) |
| 186 | } |
| 187 | |
| 188 | pub fn decode(data: &[u8]) -> io::Result<Self> { |
| 189 | Self::read_from(&mut Cursor::new(data)) |