From: Ian Jackson Date: Fri, 2 Apr 2021 16:56:08 +0000 (+0100) Subject: if_let: Let variants be paths X-Git-Tag: otter-0.5.0~312 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=c6aa39d9ad9c679e3e34fd561899786ba37e4a69;p=otter.git if_let: Let variants be paths Signed-off-by: Ian Jackson --- diff --git a/base/misc.rs b/base/misc.rs index 26a7ca67..7ee1c6f5 100644 --- a/base/misc.rs +++ b/base/misc.rs @@ -67,12 +67,12 @@ pub fn space_rect_attrs(table_size: PosC) -> SvgAttrs { #[macro_export] macro_rules! if_let { - { $variant:ident($binding:pat) = $input:expr; + { $($variant:ident)::+ ($binding:pat) = $input:expr; else $($otherwise:tt)* } => { let $binding = match $input { - $variant(y) => y, + $($variant)::+ (y) => y, _ => { $($otherwise)* }, }; - } + }; }