extend extract_variant to multiple variants
Signed-off-by: Jason Volk <jason@zemos.net>
This commit is contained in:
parent
bb8320a691
commit
58b8c7516a
1 changed files with 3 additions and 3 deletions
|
@ -49,10 +49,10 @@ pub fn exchange<T>(state: &mut T, source: T) -> T { std::mem::replace(state, sou
|
||||||
|
|
||||||
#[macro_export]
|
#[macro_export]
|
||||||
macro_rules! extract_variant {
|
macro_rules! extract_variant {
|
||||||
($e:expr_2021, $variant:path) => {
|
( $e:expr_2021, $( $variant:path )|* ) => {
|
||||||
match $e {
|
match $e {
|
||||||
| $variant(value) => Some(value),
|
$( $variant(value) => Some(value), )*
|
||||||
| _ => None,
|
_ => None,
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue