带有空格的 AssemblyScript 导出名称
Posted
技术标签:
【中文标题】带有空格的 AssemblyScript 导出名称【英文标题】:AssemblyScript export name with space in its label 【发布时间】:2021-03-05 20:01:49 【问题描述】:我需要导出一个指向类似函数的标签
(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))
我是汇编脚本的新手,我真的无法弄清楚,如果您有任何问题,请告诉我。
【问题讨论】:
【参考方案1】:任何语言的函数名都带有空格是很不寻常的,但这是可能的!
我写了一个简单的转换过程,允许你有任何字符串来命名导出。
这里是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/exportAs
【讨论】:
不知道为什么我没有收到此通知!我不知道访客有多么广泛,但我一直知道我需要使用它。谢谢!以上是关于带有空格的 AssemblyScript 导出名称的主要内容,如果未能解决你的问题,请参考以下文章
带有空格和范围的 MS Access VBA acImport 工作表名称