diff --git a/crates/common_utils/src/pii.rs b/crates/common_utils/src/pii.rs index d4b94c1a19..30c51b29e7 100644 --- a/crates/common_utils/src/pii.rs +++ b/crates/common_utils/src/pii.rs @@ -1,6 +1,6 @@ //! Personal Identifiable Information protection. -use std::{convert::AsRef, fmt, str::FromStr}; +use std::{convert::AsRef, fmt, ops, str::FromStr}; use diesel::{ backend, @@ -122,6 +122,20 @@ where #[diesel(sql_type = diesel::sql_types::Text)] pub struct Email(Secret); +impl ops::Deref for Email { + type Target = Secret; + + fn deref(&self) -> &Self::Target { + &self.0 + } +} + +impl ops::DerefMut for Email { + fn deref_mut(&mut self) -> &mut Self::Target { + &mut self.0 + } +} + impl Queryable for Email where DB: Backend,