emnapi 0.36.3 → 0.37.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/library_napi.js +17 -8
- package/include/emnapi_common.h +2 -4
- package/include/js_native_api.h +402 -383
- package/include/js_native_api_types.h +14 -6
- package/include/node_api.h +145 -104
- package/include/node_api_types.h +8 -12
- package/package.json +1 -1
package/dist/library_napi.js
CHANGED
|
@@ -212,9 +212,13 @@ function _emnapi_create_memory_view(env, typedarray_type, external_data, byte_le
|
|
|
212
212
|
case -1 /* emnapi_memory_view_type.emnapi_data_view */:
|
|
213
213
|
viewDescriptor_1 = { Ctor: DataView, address: external_data, length: byte_length, ownership: 1 /* Ownership.kUserland */, runtimeAllocated: 0 };
|
|
214
214
|
break;
|
|
215
|
-
case -2 /* emnapi_memory_view_type.emnapi_buffer */:
|
|
215
|
+
case -2 /* emnapi_memory_view_type.emnapi_buffer */: {
|
|
216
|
+
if (!emnapiCtx.feature.Buffer) {
|
|
217
|
+
throw emnapiCtx.createNotSupportBufferError("emnapi_create_memory_view", "");
|
|
218
|
+
}
|
|
216
219
|
viewDescriptor_1 = { Ctor: emnapiCtx.feature.Buffer, address: external_data, length: byte_length, ownership: 1 /* Ownership.kUserland */, runtimeAllocated: 0 };
|
|
217
220
|
break;
|
|
221
|
+
}
|
|
218
222
|
default: return envObject_1.setLastError(1 /* napi_status.napi_invalid_arg */);
|
|
219
223
|
}
|
|
220
224
|
var Ctor_1 = viewDescriptor_1.Ctor;
|
|
@@ -1380,7 +1384,7 @@ var emnapiExternalMemory = {
|
|
|
1380
1384
|
if (!shouldCopy) {
|
|
1381
1385
|
return info;
|
|
1382
1386
|
}
|
|
1383
|
-
var pointer = {{{
|
|
1387
|
+
var pointer = _malloc({{{ to64('arrayBuffer.byteLength') }}});
|
|
1384
1388
|
if (!pointer)
|
|
1385
1389
|
throw new Error('Out of memory');
|
|
1386
1390
|
new Uint8Array(wasmMemory.buffer).set(new Uint8Array(arrayBuffer), pointer);
|
|
@@ -2752,7 +2756,7 @@ var emnapiTSFN = {
|
|
|
2752
2756
|
},
|
|
2753
2757
|
initQueue: function (func) {
|
|
2754
2758
|
var size = 2 * {{{ POINTER_SIZE }}};
|
|
2755
|
-
var queue = {{{
|
|
2759
|
+
var queue = _malloc({{{ to64('size') }}});
|
|
2756
2760
|
if (!queue)
|
|
2757
2761
|
return false;
|
|
2758
2762
|
new Uint8Array(wasmMemory.buffer, queue, size).fill(0);
|
|
@@ -2771,7 +2775,7 @@ var emnapiTSFN = {
|
|
|
2771
2775
|
var tail = emnapiTSFN.loadSizeTypeValue(queue + {{{ POINTER_SIZE }}}, false);
|
|
2772
2776
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
2773
2777
|
var size = 2 * {{{ POINTER_SIZE }}};
|
|
2774
|
-
var node = {{{
|
|
2778
|
+
var node = _malloc({{{ to64('size') }}});
|
|
2775
2779
|
if (!node)
|
|
2776
2780
|
throw new Error('OOM');
|
|
2777
2781
|
emnapiTSFN.storeSizeTypeValue(node, data, false);
|
|
@@ -3361,7 +3365,7 @@ function _napi_create_threadsafe_function(env, func, async_resource, async_resou
|
|
|
3361
3365
|
var resource_name = envObject.ensureHandleId(asyncResourceName);
|
|
3362
3366
|
// tsfn create
|
|
3363
3367
|
var sizeofTSFN = emnapiTSFN.offset.end;
|
|
3364
|
-
var tsfn = {{{
|
|
3368
|
+
var tsfn = _malloc({{{ to64('sizeofTSFN') }}});
|
|
3365
3369
|
if (!tsfn)
|
|
3366
3370
|
return envObject.setLastError(9 /* napi_status.napi_generic_failure */);
|
|
3367
3371
|
new Uint8Array(wasmMemory.buffer).subarray(tsfn, tsfn + sizeofTSFN).fill(0);
|
|
@@ -3488,6 +3492,8 @@ function _napi_ref_threadsafe_function(env, func) {
|
|
|
3488
3492
|
emnapiDefineVar('$emnapiTSFN', emnapiTSFN, [
|
|
3489
3493
|
'$emnapiInit',
|
|
3490
3494
|
'$PThread',
|
|
3495
|
+
'malloc',
|
|
3496
|
+
'free',
|
|
3491
3497
|
'_emnapi_node_emit_async_init',
|
|
3492
3498
|
'_emnapi_node_emit_async_destroy',
|
|
3493
3499
|
'_emnapi_runtime_keepalive_pop',
|
|
@@ -5429,8 +5435,11 @@ function napi_create_buffer(env, size, data, result
|
|
|
5429
5435
|
try {
|
|
5430
5436
|
if (result == 0)
|
|
5431
5437
|
return envObject_56.setLastError(1 /* napi_status.napi_invalid_arg */);
|
|
5432
|
-
{{{ from64("result") }}};
|
|
5433
5438
|
var Buffer_1 = emnapiCtx.feature.Buffer;
|
|
5439
|
+
if (!Buffer_1) {
|
|
5440
|
+
throw emnapiCtx.createNotSupportBufferError("napi_create_buffer", "");
|
|
5441
|
+
}
|
|
5442
|
+
{{{ from64("result") }}};
|
|
5434
5443
|
var buffer_2 = void 0;
|
|
5435
5444
|
{{{ from64("size") }}};
|
|
5436
5445
|
size = size >>> 0;
|
|
@@ -5440,7 +5449,7 @@ function napi_create_buffer(env, size, data, result
|
|
|
5440
5449
|
{{{ makeSetValue("result", 0, "value", "*") }}};
|
|
5441
5450
|
}
|
|
5442
5451
|
else {
|
|
5443
|
-
pointer = {{{
|
|
5452
|
+
pointer = _malloc({{{ to64("size") }}});
|
|
5444
5453
|
if (!pointer)
|
|
5445
5454
|
throw new Error("Out of memory");
|
|
5446
5455
|
new Uint8Array(wasmMemory.buffer).subarray(pointer, pointer + size).fill(0);
|
|
@@ -5483,8 +5492,8 @@ function napi_create_buffer_copy(env, length, data, result_data, result
|
|
|
5483
5492
|
try {
|
|
5484
5493
|
if (result == 0)
|
|
5485
5494
|
return envObject_57.setLastError(1 /* napi_status.napi_invalid_arg */);
|
|
5486
|
-
var arrayBuffer_3 = emnapiCreateArrayBuffer(length, result_data);
|
|
5487
5495
|
var Buffer_2 = emnapiCtx.feature.Buffer;
|
|
5496
|
+
var arrayBuffer_3 = emnapiCreateArrayBuffer(length, result_data);
|
|
5488
5497
|
var buffer_4 = Buffer_2.from(arrayBuffer_3);
|
|
5489
5498
|
{{{ from64("data") }}};
|
|
5490
5499
|
{{{ from64("length") }}};
|
package/include/emnapi_common.h
CHANGED
|
@@ -2,11 +2,9 @@
|
|
|
2
2
|
#define EMNAPI_INCLUDE_COMMON_H_
|
|
3
3
|
|
|
4
4
|
#ifdef __EMSCRIPTEN__
|
|
5
|
-
#define NAPI_EXTERN __attribute__((
|
|
6
|
-
__attribute__((__import_module__("env")))
|
|
5
|
+
#define NAPI_EXTERN __attribute__((__import_module__("env")))
|
|
7
6
|
|
|
8
|
-
#define EMNAPI_EXTERN __attribute__((
|
|
9
|
-
__attribute__((__import_module__("env")))
|
|
7
|
+
#define EMNAPI_EXTERN __attribute__((__import_module__("env")))
|
|
10
8
|
#else
|
|
11
9
|
#define NAPI_EXTERN __attribute__((__import_module__("napi")))
|
|
12
10
|
|