假设有一个模块目录结构如下图所示,
h01_浦东,模块的moon.mod.json文件内容如下,
{
"name": "pudong",
"version": "0.1.0",
"readme": "README.md",
"repository": "",
"license": "Apache-2.0",
"keywords": [],
"description": ""
}
包/app/moon.pkg.json文件内容如下,
{
"is_main": true,
"import": [
"pudong/app/a01/b01",
"pudong/app/a02"
]
}
包app/app_main.mbt文件内容如下,
fn main {
println("this is app")
println(@b01.txt)
}
包app/a01/b01/b01_main.mbt文件内容如下,
pub let txt="this is b01_txt"
fn main {
println(txt)
}
请问ide什么时候,能做到,当我更改目录b01名称时,相应的文件中涉及到b01的地方都跟随改变。
例如更改b01为b01_xxx时,
包/app/moon.pkg.json文件内容自动改动如下,
{
"is_main": true,
"import": [
"pudong/app/a01/b01_xxx",
"pudong/app/a02"
]
}
包app/app_main.mbt文件内容自动更改如下,
fn main {
println("this is app")
println(@b01_xxx.txt)
}
另外,我还想问一下,是否在每个目录下都必须要有一个moon.pkg.json文件?,是否可以这样理解,在moonbit中,每个moon.pkg.json就是一个最小的程序单元,因为在import导入到底就是目录,在程序中引用也是@pkg_dir_name,所以目录包就是最小的程序单元,在moonbit中的一个包,是不是大概就相当于java中的一个class。