[−][src]Macro flowutils::unwrap_pattern
unwrap_pattern!() { /* proc-macro */ }
A short version of if let
when you already know the pattern.
Returns the inner value or panics. For a complex enum variant,
Example:
enum T{ A(i32), B(String, u64), C{p: usize, q: f32, r: i8} } let some_enum = T::A(3); let inner = flowutils::unwrap_pattern!(some_enum, T::A(x)); let some_enum = T::B(String::new("str"), 3); let tuple: (u64, String) = flowutils::unwrap_pattern!(some_enum, T::B(var1, var2) => (var2, var1)); let some_enum = T::B(String::new("str"), 3); let complex: usize = flowutils::unwrap_pattern!(some_enum, T::C{var3, _, var4}, var3);