diff --git a/crates/safelog/semver.md b/crates/safelog/semver.md new file mode 100644 index 000000000..f06f4cad5 --- /dev/null +++ b/crates/safelog/semver.md @@ -0,0 +1 @@ +ADDED: Redacted.as_inner() and as_ref() diff --git a/crates/safelog/src/lib.rs b/crates/safelog/src/lib.rs index 1390510ee..eb117f110 100644 --- a/crates/safelog/src/lib.rs +++ b/crates/safelog/src/lib.rs @@ -268,6 +268,19 @@ impl Redacted { pub fn unwrap(self) -> T { self.0 } + + /// Converts `&Redacted` to `Redacted<&T>` + pub fn as_ref(&self) -> Redacted<&T> { + Redacted(&self.0) + } + + /// Return a reference to the inner value + // + // This isn't `AsRef` or `as_ref` because we don't want to offer "de-redaction" + // via what is usually a semantically-neutral interface. + pub fn as_inner(&self) -> &T { + &self.0 + } } impl std::fmt::Display for Redacted {