1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-05 12:10:55 +00:00

[HTML5] Rename heapCopy to heapSlice.

New heapCopy function copies a TypedArray to the heap.
This commit is contained in:
Fabio Alessandrelli
2021-03-03 15:58:28 +01:00
parent 41c64533b0
commit 751a6f9a63
3 changed files with 18 additions and 4 deletions

View File

@@ -72,11 +72,16 @@ const GodotRuntime = {
return p_heap.subarray(p_ptr / bytes, p_ptr / bytes + p_len);
},
heapCopy: function (p_heap, p_ptr, p_len) {
heapSlice: function (p_heap, p_ptr, p_len) {
const bytes = p_heap.BYTES_PER_ELEMENT;
return p_heap.slice(p_ptr / bytes, p_ptr / bytes + p_len);
},
heapCopy: function (p_dst, p_src, p_ptr) {
const bytes = p_src.BYTES_PER_ELEMENT;
return p_dst.set(p_src, p_ptr / bytes);
},
/*
* Strings
*/
@@ -84,6 +89,15 @@ const GodotRuntime = {
return UTF8ToString(p_ptr); // eslint-disable-line no-undef
},
parseStringArray: function (p_ptr, p_size) {
const strings = [];
const ptrs = GodotRuntime.heapSub(HEAP32, p_ptr, p_size); // TODO wasm64
ptrs.forEach(function (ptr) {
strings.push(GodotRuntime.parseString(ptr));
});
return strings;
},
strlen: function (p_str) {
return lengthBytesUTF8(p_str); // eslint-disable-line no-undef
},