messagepack_async/value/
ext.rs

1use super::Value;
2
3#[derive(Clone, Debug, PartialEq)]
4pub struct Ext {
5    pub r#type: u8,
6    pub data: Vec<u8>,
7}
8
9impl From<(u8, Vec<u8>)> for Ext {
10    fn from((r#type, data): (u8, Vec<u8>)) -> Self {
11        Ext { r#type, data }
12    }
13}
14
15impl From<(u8, &[u8])> for Ext {
16    fn from((r#type, data): (u8, &[u8])) -> Self {
17        Ext {
18            r#type,
19            data: data.into(),
20        }
21    }
22}
23
24impl From<(u8, Vec<u8>)> for Value {
25    fn from(value: (u8, Vec<u8>)) -> Self {
26        Value::Ext(value.into())
27    }
28}
29
30impl From<(u8, &[u8])> for Value {
31    fn from(value: (u8, &[u8])) -> Self {
32        Value::Ext(value.into())
33    }
34}