我需要导出一个指向如下函数的标签
(func $can_sayhello (export "can sayhello") (type $t3)我能得到的最接近的是:
(export "can_sayhello" (func $assembly/index/can_sayhello))使用此AssemblyScript
@external("can sayhello")
export declare function can_sayhello(): void;我真正想做的是更改这个函数的标签
function sayhello() : void {
}
//output in wat
(export "sayhello" (func $assembly/index/sayhello))成为
(export "can sayhello" (func $assembly/index/sayhello))我是汇编语言的新手,我真的搞不懂这一点,如果你有任何问题,请告诉我。
发布于 2021-01-09 03:45:07
对于任何语言来说,函数名中都有空格是很不常见的,但这是可能的!
我编写了一个简单的转换过程,它允许您拥有用于命名导出的任何字符串。
它在这里,https://github.com/willemneal/visitor-as/blob/master/src/examples/exportAs.ts
您需要添加visitor-as作为项目的依赖项,然后在asconfig.json或cli中添加exportAs转换器。
例如:
@exportAs("can sayhello")
export function main(): u32 {
return 42;
}然后像这样编译
asc assembly/index.ts --transform visitor-as/dist/examples/exportAshttps://stackoverflow.com/questions/64962765
复制相似问题