在 Rust 的 match arm 中调用多个函数

Foo*_*hEx 1 match rust

我目前有一个匹配语句的形式

match ball.side {
    Side::Left => x(), 
    Side::Right => y(), 
}
Run Code Online (Sandbox Code Playgroud)

但我需要的是类似的东西

match ball.side {
    Side::Left => x(),a(), 
    Side::Right => y(), b(), 
}
Run Code Online (Sandbox Code Playgroud)

当然这不会编译,但是我怎么能让这种序列起作用呢?我知道我也可以只使用if语句,但我很好奇如何通过匹配来解决这个问题。

mca*_*ton 7

块中的语句序列:

match ball.side {
    Side::Left => {
        x();
        a();
    }
    Side::Right => {
        y();
        b();
    }
}
Run Code Online (Sandbox Code Playgroud)

请注意,matcharm的右侧必须是表达式,并且块是Rust中的表达式(可以产生值)。