如何忽略模式匹配中类似结构的枚举变体的成员?

时间:2016-06-25 17:46:30

标签: enums rust

如何从以下代码中删除unused_variables警告?

pub enum Foo {
    Bar {
        a: i32,
        b: i32,
        c: i32,
    },
    Baz,
}

fn main() {
    let myfoo = Foo::Bar { a: 1, b: 2, c: 3 };
    let x: i32 = match myfoo {
        Foo::Bar { a, b, c } => b * b,
        Foo::Baz => -1,
    };
    assert_eq!(x, 4);
}

我知道我可以在某一点之后忽略struct成员:

Foo::Bar { a, .. } => // do stuff with 'a'

但我无法在任何地方找到解释如何忽略单个结构成员的文档。

Code on Rust Playground

1 个答案:

答案 0 :(得分:9)

  

我知道我可以在某一点之后忽略struct成员:

[0.1, 0.3, 0.5, 0.7, 0.9, 1.1] 不是位置的。它只意味着"所有其他领域":

..