A sdk to build moss extensions easily with moonbit
- Create a new project with
moon new
- Add moos as dependency
moon add furesoft/moos-sdk
- Create those functions
pub fn moss_extension_register() -> Int {
let extensionInfo: @moss.ExtensionInfo = {
files: []
}
@host.output_json_value(extensionInfo.to_json())
0
}
pub fn moss_extension_loop() -> Int {
0
}
pub fn moss_extension_unregister() -> Int {
0
}
- import the moos-sdk and export those functions in the moon.pkg.json
{
"import": [
"gmlewis/moonbit-pdk/pdk",
"gmlewis/moonbit-pdk/pdk/host",
{"path": "furesoft/moos-sdk/lib", "alias": "moss"}
],
"link": {
"wasm": {
"exports": [
"moss_extension_register",
"moss_extension_unregister",
"moss_extension_loop"
],
"export-memory-name": "memory"
}
}
}
- Build it with
moon build --target wasm