macro_rules! pattern { ($pattern:pat $( if $guard:expr )? $(,)?) => { ... }; }
Expand description
Construct a new Pattern
value from a match
pattern.
This macro is commonly used with the match_pattern
matcher to test if an expression matches
a pattern.
This macro supports the pattern_1 | pattern_2
syntax supported by match
arms:
use xpct::pattern;
use xpct::matchers::pattern::Pattern;
let pat: Pattern<Option<&str>> = pattern!(Some("foo") | Some("bar"));
Match guards are also supported:
use xpct::pattern;
use xpct::matchers::pattern::Pattern;
let pat: Pattern<Option<&str>> = pattern!(Some(value) if *value == "foo");