use crate::{
multicodec::{self, Multicodec},
Result,
};
#[derive(Clone, Eq, PartialEq, Debug)]
pub struct Quic;
impl Quic {
pub(crate) fn from_text<'a, 'b>(parts: &'a [&'b str]) -> Result<(Self, &'a [&'b str])> {
let val = (Quic, parts);
Ok(val)
}
pub(crate) fn to_text(&self) -> Result<String> {
Ok("/quic".to_string())
}
pub(crate) fn decode(data: &[u8]) -> Result<(Self, &[u8])> {
let val = (Quic, data);
Ok(val)
}
pub(crate) fn encode(&self) -> Result<Vec<u8>> {
let data = Multicodec::from_code(multicodec::QUIC)?.encode()?;
Ok(data)
}
}