E0034#
警告名称:implicit_use_builtin
隐式使用了 moonbitlang/core/builtin 中的定义。
当代码隐式依赖 moonbitlang/core/builtin 中的定义时,会发出此警告。建议显式导入
需要的 API,使依赖关系更清晰。
错误示例#
这里的 Null 在没有显式类型或限定名的情况下,被推断为来自 moonbitlang/core/builtin 的 Json::Null 构造器:
///|
pub fn check(value : Json) -> Int {
fn classify(input) {
match input {
Null => 0
_ => 1
}
}
classify(value)
}
修改建议#
请显式声明 builtin 依赖并限定构造器名称,或者加入足够的类型信息,使代码不再依赖隐式的 builtin 构造器推断。
///|
pub fn check(value : Json) -> Int {
fn classify(input : Json) {
match input {
Json::Null => 0
_ => 1
}
}
classify(value)
}