From 84939f5bb6168f3b5973d69d9c3f825ed03d88b6 Mon Sep 17 00:00:00 2001 From: Matthias Beyer Date: Sun, 9 Apr 2023 12:52:47 +0200 Subject: Add documentation for extension traits Signed-off-by: Matthias Beyer --- src/lib.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/lib.rs b/src/lib.rs index b5ccfab..1ea06f7 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,11 +1,13 @@ //! This crate adds the missing Result::inspect function via an extension trait //! +/// Extension trait for adding Result::inspect pub trait ResultInspect where F: FnOnce(&T), T: Sized, { + /// Call `f` on T if the Result is a Ok(T), or do nothing if the Result is an Err fn inspect(self, f: F) -> Self; } @@ -22,6 +24,7 @@ where F: FnOnce(&T), T: Sized, { + /// Call `f` on T if the Result is a Ok(T), or do nothing if the Result is an Err fn inspect(self, f: F) -> Self { if let Ok(o) = self.as_ref() { (f)(o); @@ -43,11 +46,13 @@ where } } +/// Extension trait for adding Result::inspect_err pub trait ResultInspectErr where F: FnOnce(&E), E: Sized, { + /// Call `f` on T if the Result is a Err(E), or do nothing if the Result is an Ok fn inspect_err(self, f: F) -> Self; } @@ -64,6 +69,7 @@ where F: FnOnce(&E), E: Sized, { + /// Call `f` on T if the Result is a Err(E), or do nothing if the Result is an Ok fn inspect_err(self, f: F) -> Self { if let Err(e) = self.as_ref() { (f)(e); -- cgit v1.2.3