E4109

E4109#

return 必须在函数体内。

return 语句用于函数外部时,就会发生此错误。在 MoonBit 中,return 语句必须在函数体内。

错误示例#

pub let x: Int = { return 42 }
//                 ^^^^^^^^^ Error: Return must be inside a function.
pub let y: Int = {
  if x == 42 {
    x + 1
  } else {
    return 0
//  ^^^^^^^^ Error: Return must be inside a function.
  }
}

建议#

要修复此错误,您可以从 let 绑定中删除 return 语句:

pub let x: Int = 42
pub let y: Int = {
  if x == 42 {
    x + 1
  } else {
    0
  }
}