Widzę makeSetValue
, makeGetValue
i maybeExport
w wielu skryptach, na przykład w preamble.js
Ale nie wiem, jak ich używać ani jak one naprawdę działają, ponieważ funkcje te nie są wymienione w dokumentacji.
Przykładowy kod:
function writeArrayToMemory(array, buffer) {
for (var i = 0; i < array.length; i++) {
{{{ makeSetValue("buffer++", 0, "array[i]", "i8") }}};
}
}
{{{ maybeExport("writeArrayToMemory") }}}
Odpowiedzi:
2 dla odpowiedzi № 1{{{ ... }}}
jest makrem, jest wyodrębniany w czasie kompilacji. Posługiwać się --js-library
opcja taka jak 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") }}};
}
}
});