MoonBit 语言导览 MoonBit

元组模式

元组模式可用于同时匹配多个条件。

本示例通过模式匹配模拟逻辑与逻辑或运算。

在此场景中,条件判断中创建元组的开销会被编译器优化消除。

fn logical_and(x : Bool, y : Bool) -> Bool {
  match (x, y) {
    (true, true) => true
    (false, _) => false
    (_, false) => false
  }
}

fn logical_or(x : Bool, y : Bool) -> Bool {
  match (x, y) {
    (true, _) => true
    (_, true) => true
    _ => false
  }
}

fn main {
  println("true and false: \{logical_and(true, false)}")
  println("true or false: \{logical_or(true, false)}")
}