diff --git a/src/blob.rs b/src/blob.rs index c175cb0..a9ce9ef 100644 --- a/src/blob.rs +++ b/src/blob.rs @@ -9,6 +9,8 @@ use std::array::TryFromSliceError; use std::fmt::Debug; use std::hash::Hash; +use std::ops::Deref; +use std::ops::DerefMut; use serde::{Deserialize, Deserializer, Serialize, Serializer}; use zeroize::Zeroize; @@ -34,6 +36,19 @@ impl Blob { } } +impl DerefMut for Blob { + fn deref_mut(&mut self) -> &mut Self::Target { + &mut self.0 + } +} +impl Deref for Blob { + type Target = [u8; L]; + + fn deref(&self) -> &Self::Target { + &self.0 + } +} + impl From> for [u8; L] { #[inline(always)] fn from(value: Blob) -> Self {