E4133

E4133#

for .. in 循环有错误的循环变量数量。

MoonBit 仅支持 for .. in 循环中的一个或两个循环变量。

  • 一个循环变量用于可迭代内容。

  • 两个循环变量分别用于索引和可迭代内容。

错误示例#

fn main {
  for a, b, c in [1, 2, 3] { // Error: This `for .. in` loop has 3 loop variables, but at most 2 is expected.
    ...
  }
}

建议#

如果您想同时迭代索引和可迭代内容,您可以使用两个循环变量:

fn main {
  for i, v in [1, 2, 3] {
    ...
  }
}

如果您想迭代元组的可迭代内容,那么您需要在循环体中显式解构元组:

fn main {
  for v in [(1, 2, 3), (4, 5, 6)] {
    let (a, b, c) = v
    ...
  }
}