Redact

Struct Redact 

Source
pub struct Redact<'a>(/* private fields */);
Expand description

Redacts a string by replacing all but the first and last three characters with asterisks.

  • If the input string has fewer than 12 characters, it should be entirely redacted.
  • If the input string has 12 or more characters, only the first three and the last three.

This design is to allow users to distinguish between different redacted strings but avoid leaking sensitive information.

Trait Implementations§

Source§

impl Debug for Redact<'_>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'a> From<&'a Option<String>> for Redact<'a>

Source§

fn from(value: &'a Option<String>) -> Self

Converts to this type from the input type.
Source§

impl<'a> From<&'a String> for Redact<'a>

Source§

fn from(value: &'a String) -> Self

Converts to this type from the input type.
Source§

impl<'a> From<&'a str> for Redact<'a>

Source§

fn from(value: &'a str) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

§

impl<'a> Freeze for Redact<'a>

§

impl<'a> RefUnwindSafe for Redact<'a>

§

impl<'a> Send for Redact<'a>

§

impl<'a> Sync for Redact<'a>

§

impl<'a> Unpin for Redact<'a>

§

impl<'a> UnwindSafe for Redact<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.