我到處尋找並找不到明確的示例。我希望能夠匹配一些枚舉,而不是所有枚舉的變體。如何僅匹配某些枚舉,而不是枚舉的所有變體?
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