我到处寻找并找不到明确的示例。我希望能够匹配一些枚举,而不是所有枚举的变体。如何仅匹配某些枚举,而不是枚举的所有变体?
let x = match token {
&InfixToken::Operand(c) => InfixToken::Operand(c),
&InfixToken::LeftParen => InfixToken::LeftParen,
};
if tokens[count - 1] == x {
return None;
}
如何比较,如果前面的令牌枚举的只有两个变种场比赛没有比较它的每一个变种:
pub enum InfixToken {
Operator(Operator),
Operand(isize),
LeftParen,
RightParen,
}
这样我就可以在为令牌环执行此枚举? x
也必须是前一个标记的相同类型。
此外,也可能更重要的是,我怎么能匹配操作,其中isize
值不要紧,只要就像是一个操作数?
**我到处寻找** - [* Rust编程语言*关于'match'的章节](https://doc.rust-lang.org/stable/book/match.html):“The '_'充当'全能',并且会捕获'match'中没有指定的所有可能的值。这是在使用'_'的简介例子之后。 – Shepmaster