I'm playing with wasm, I wrote a small module where I'd like to
make the function available but wasm can't find this function.
math.d
module math;
extern(C):
int mul(int a, int b) { return a * b;}
wasm.d
public import math;
extern(C): // disable D mangling
void doSomething() { ... } // seems to be the required entry
point
void _start() {}
start.html:
(async() => {
const response = await fetch('wasm.wasm');
const bytes = await response.arrayBuffer();
const { instance } = await WebAssembly.instantiate(bytes);
const res = instance.exports.mul(2, 4);
console.log('The answer is: ' + res);
document.getElementById("result").innerHTML = "The result
is: " + res;
})();
Test page
the exported function fails to find 'mul' function, as I can see
from the browser's console:
start.html:8 Uncaught (in promise) TypeError:
instance.exports.mul is not a >function at start.html:8
can I make it public using D or do I have to import the wanted
module with javascript?