DeserializerExt default impl
This commit is contained in:
parent
16051e15f2
commit
3cd20e9a90
@ -44,12 +44,8 @@ pub trait Deserializer {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Extension trait for [Deserializer]s.
|
/// Extension trait for [Deserializer]s.
|
||||||
pub trait DeserializerExt {
|
pub trait DeserializerExt: Deserializer {
|
||||||
/// Try to read exactly `N` bytes.
|
/// Try to read exactly `N` bytes.
|
||||||
fn read_n_const<const N: usize>(&mut self) -> Result<[u8; N], &[u8]>;
|
|
||||||
}
|
|
||||||
|
|
||||||
impl<D: ?Sized + Deserializer> DeserializerExt for D {
|
|
||||||
fn read_n_const<const N: usize>(&mut self) -> Result<[u8; N], &[u8]> {
|
fn read_n_const<const N: usize>(&mut self) -> Result<[u8; N], &[u8]> {
|
||||||
let slice = self.read_n(N);
|
let slice = self.read_n(N);
|
||||||
match slice.try_into() {
|
match slice.try_into() {
|
||||||
@ -58,3 +54,5 @@ impl<D: ?Sized + Deserializer> DeserializerExt for D {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl<D: ?Sized + Deserializer> DeserializerExt for D {}
|
||||||
|
Loading…
Reference in New Issue
Block a user