vidím makeSetValue
, makeGetValue
a maybeExport
v mnohých skriptoch, napríklad v preamble.js
Neviem však, ako ich používať alebo ako skutočne fungujú, pretože tieto funkcie nie sú uvedené v dokumentácii.
Príklad kód:
function writeArrayToMemory(array, buffer) {
for (var i = 0; i < array.length; i++) {
{{{ makeSetValue("buffer++", 0, "array[i]", "i8") }}};
}
}
{{{ maybeExport("writeArrayToMemory") }}}
odpovede:
2 pre odpoveď č. 1{{{ ... }}}
je makro, je extrahované v čase kompilácie. použitie --js-library
možnosť ako emcc --js-library lib_foo.js main.c ...
.
https://github.com/kripken/emscripten/blob/master/src/parseTools.js
lib_foo.js:
mergeInto(LibraryManager.library, {
writeArrayToMemory: function(array, buffer) {
for (var i = 0; i < array.length; i++) {
{{{ makeSetValue("buffer++", 0, "array[i]", "i8") }}};
}
}
});