From 3cec4e18da959136c63357ee242502cb0e663fcb Mon Sep 17 00:00:00 2001 From: Will Greenberg Date: Tue, 21 Jan 2025 15:02:41 -0800 Subject: [PATCH] fix docstring code --- lib/src/analysis/util.rs | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/lib/src/analysis/util.rs b/lib/src/analysis/util.rs index c021ca8..84d5aeb 100644 --- a/lib/src/analysis/util.rs +++ b/lib/src/analysis/util.rs @@ -2,28 +2,28 @@ /// Unpacks a pattern, or returns None. /// /// # Examples -/// Suppose you've got some highly nested enum: +/// You can use `unpack!` to unroll highly nested enums like this: /// ``` +/// use super::util::unpack; +/// /// enum Foo { /// A(Bar), /// B, /// } /// -/// enum Baz { -/// C(Bang) +/// enum Bar { +/// C(Baz) /// } /// -/// struct Bang; -/// ``` +/// struct Baz; /// -/// You can use `unpack!` to unroll it like this: -/// ``` -/// fn get_bang(foo: Foo) -> Option { +/// fn get_bang(foo: Foo) -> Option { /// unpack!(Foo::A(bar) = foo); -/// unpack!(Baz::C(bang) = bar); -/// bang +/// unpack!(Bar::C(baz) = bar); +/// baz /// } /// ``` +/// macro_rules! unpack { ($pat:pat = $val:expr) => { let $pat = $val else { return None; };