pub struct Redacted<T, R = Simple>where
R: Redactor,{ /* private fields */ }Expand description
Struct used to wrap sensitive content that should not be printed/logged. The redaction behaviour is defined by Redactor.
let secret: Redacted<String> = "my_secret_string".to_string().into();
assert_eq!(secret.to_string(), "<redacted>");let secret: Redacted<String, Custom> = "my_secret_string".to_string().into();
assert_eq!(secret.to_string(), "●●●●●●●●");Implementations§
Source§impl<T, R> Redacted<T, R>where
R: Redactor,
impl<T, R> Redacted<T, R>where
R: Redactor,
Sourcepub fn into_inner(self) -> T
pub fn into_inner(self) -> T
Consumes the Redacted, returning the wrapped value.
let x: Redacted<_> = "something".into();
assert_eq!(x.into_inner(), "something");Trait Implementations§
Source§impl<'de, T, R> Deserialize<'de> for Redacted<T, R>where
T: Deserialize<'de>,
R: Redactor,
Requires feature serde.
impl<'de, T, R> Deserialize<'de> for Redacted<T, R>where
T: Deserialize<'de>,
R: Redactor,
Requires feature serde.
Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl<T, R> Ord for Redacted<T, R>
impl<T, R> Ord for Redacted<T, R>
Source§impl<T, R> PartialOrd<T> for Redacted<T, R>where
T: PartialOrd,
R: Redactor,
impl<T, R> PartialOrd<T> for Redacted<T, R>where
T: PartialOrd,
R: Redactor,
Source§impl<T, R> PartialOrd for Redacted<T, R>where
T: PartialOrd,
R: Redactor,
impl<T, R> PartialOrd for Redacted<T, R>where
T: PartialOrd,
R: Redactor,
Source§impl<T, R> TryZeroize for Redacted<T, R>where
T: TryZeroize,
R: Redactor,
impl<T, R> TryZeroize for Redacted<T, R>where
T: TryZeroize,
R: Redactor,
Source§fn try_zeroize(&mut self) -> bool
fn try_zeroize(&mut self) -> bool
Try to zero out this object from memory using Rust intrinsics which
ensure the zeroization operation is not “optimized away” by the
compiler.
impl<T, R> Copy for Redacted<T, R>
impl<T, R> Eq for Redacted<T, R>
impl<T, R> ZeroizeOnDrop for Redacted<T, R>where
T: ZeroizeOnDrop,
R: Redactor,
Auto Trait Implementations§
impl<T, R> Freeze for Redacted<T, R>where
T: Freeze,
impl<T, R> RefUnwindSafe for Redacted<T, R>where
T: RefUnwindSafe,
R: RefUnwindSafe,
impl<T, R> Send for Redacted<T, R>
impl<T, R> Sync for Redacted<T, R>
impl<T, R> Unpin for Redacted<T, R>
impl<T, R> UnwindSafe for Redacted<T, R>where
T: UnwindSafe,
R: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more