@@ -201,19 +201,253 @@ export const SUPPORTED_REF_TYPES = {
201
201
responseRef
202
202
) ;
203
203
}
204
+ } ,
205
+ BIGINT64ARRAY : {
206
+ isTypeFromArgument : arg => {
207
+ return arg instanceof BigInt64Array ;
208
+ } ,
209
+ isTypeFromReference : ( wasmExports , ref ) => {
210
+ return wasmExports . __instanceof ( ref , wasmExports . __asbind_Int64Array_ID ) ;
211
+ } ,
212
+ getRef : ( wasmExports , arg ) => {
213
+ return wasmExports . __pin (
214
+ wasmExports . __newArray ( wasmExports . __asbind_Int64Array_ID , arg )
215
+ ) ;
216
+ } ,
217
+ getValueFromRef : ( wasmExports , responseRef ) => {
218
+ return wasmExports . __getInt64Array ( responseRef ) ;
219
+ } ,
220
+ getUnsafeValueFromRef : ( wasmExports , responseRef ) => {
221
+ return getUnsafeResponse (
222
+ wasmExports . __getInt64ArrayView ( responseRef ) ,
223
+ responseRef
224
+ ) ;
225
+ }
226
+ } ,
227
+ BIGUINT64ARRAY : {
228
+ isTypeFromArgument : arg => {
229
+ return arg instanceof BigUint64Array ;
230
+ } ,
231
+ isTypeFromReference : ( wasmExports , ref ) => {
232
+ return wasmExports . __instanceof ( ref , wasmExports . __asbind_Uint64Array_ID ) ;
233
+ } ,
234
+ getRef : ( wasmExports , arg ) => {
235
+ return wasmExports . __pin (
236
+ wasmExports . __newArray ( wasmExports . __asbind_Uint64Array_ID , arg )
237
+ ) ;
238
+ } ,
239
+ getValueFromRef : ( wasmExports , responseRef ) => {
240
+ return wasmExports . __getInt64Array ( responseRef ) ;
241
+ } ,
242
+ getUnsafeValueFromRef : ( wasmExports , responseRef ) => {
243
+ return getUnsafeResponse (
244
+ wasmExports . __getInt64ArrayView ( responseRef ) ,
245
+ responseRef
246
+ ) ;
247
+ }
248
+ } ,
249
+ I32ARRAY : {
250
+ isTypeFromArgument : arg => {
251
+ return Array . isArray ( arg ) && Number . isInteger ( arg [ 0 ] ) ;
252
+ } ,
253
+ isTypeFromReference : ( wasmExports , ref ) => {
254
+ return wasmExports . __instanceof ( ref , wasmExports . __asbind_I32Array_ID ) ;
255
+ } ,
256
+ getRef : ( wasmExports , arg ) => {
257
+ return wasmExports . __pin (
258
+ wasmExports . __newArray ( wasmExports . __asbind_I32Array_ID , arg )
259
+ ) ;
260
+ } ,
261
+ getValueFromRef : ( wasmExports , responseRef ) => {
262
+ return wasmExports . __getArray ( responseRef ) ;
263
+ }
264
+ } ,
265
+ I64ARRAY : {
266
+ isTypeFromArgument : arg => {
267
+ return Array . isArray ( arg ) && typeof arg [ 0 ] === "bigint" ;
268
+ } ,
269
+ isTypeFromReference : ( wasmExports , ref ) => {
270
+ return wasmExports . __instanceof ( ref , wasmExports . __asbind_I64Array_ID ) ;
271
+ } ,
272
+ getRef : ( wasmExports , arg ) => {
273
+ return wasmExports . __pin (
274
+ wasmExports . __newArray ( wasmExports . __asbind_I64Array_ID , arg )
275
+ ) ;
276
+ } ,
277
+ getValueFromRef : ( wasmExports , responseRef ) => {
278
+ return wasmExports . __getArray ( responseRef ) ;
279
+ }
280
+ } ,
281
+ STRINGARRAY : {
282
+ isTypeFromArgument : arg => {
283
+ return Array . isArray ( arg ) && typeof arg [ 0 ] === "string" ;
284
+ } ,
285
+ isTypeFromReference : ( wasmExports , ref ) => {
286
+ return wasmExports . __instanceof ( ref , wasmExports . __asbind_StringArray_ID ) ;
287
+ } ,
288
+ getRef : ( wasmExports , arg ) => {
289
+ const refs = arg . map ( value =>
290
+ wasmExports . __pin ( wasmExports . __newString ( value ) )
291
+ ) ;
292
+ return wasmExports . __pin (
293
+ wasmExports . __newArray ( wasmExports . __asbind_StringArray_ID , refs )
294
+ ) ;
295
+ } ,
296
+ getValueFromRef : ( wasmExports , responseRef ) => {
297
+ return wasmExports
298
+ . __getArray ( responseRef )
299
+ . map ( value => wasmExports . __getString ( value ) ) ;
300
+ }
301
+ } ,
302
+ BOOLARRAY : {
303
+ isTypeFromArgument : arg => {
304
+ return Array . isArray ( arg ) && typeof arg [ 0 ] === "boolean" ;
305
+ } ,
306
+ isTypeFromReference : ( wasmExports , ref ) => {
307
+ return wasmExports . __instanceof ( ref , wasmExports . __asbind_BoolArray_ID ) ;
308
+ } ,
309
+ getRef : ( wasmExports , arg ) => {
310
+ return wasmExports . __pin (
311
+ wasmExports . __newArray ( wasmExports . __asbind_BoolArray_ID , arg )
312
+ ) ;
313
+ } ,
314
+ getValueFromRef : ( wasmExports , responseRef ) => {
315
+ return wasmExports . __getArray ( responseRef ) . map ( value => ! ! value ) ;
316
+ }
317
+ } ,
318
+ I32ARRAYARRAY : {
319
+ isTypeFromArgument : arg => {
320
+ return (
321
+ Array . isArray ( arg ) &&
322
+ Array . isArray ( arg [ 0 ] ) &&
323
+ Number . isInteger ( arg [ 0 ] [ 0 ] )
324
+ ) ;
325
+ } ,
326
+ isTypeFromReference : ( wasmExports , ref ) => {
327
+ return wasmExports . __instanceof (
328
+ ref ,
329
+ wasmExports . __asbind_I32ArrayArray_ID
330
+ ) ;
331
+ } ,
332
+ getRef : ( wasmExports , arg ) => {
333
+ const refs = arg . map ( value =>
334
+ wasmExports . __pin (
335
+ wasmExports . __newArray ( wasmExports . __asbind_I32Array_ID , value )
336
+ )
337
+ ) ;
338
+ return wasmExports . __pin (
339
+ wasmExports . __newArray ( wasmExports . __asbind_I32ArrayArray_ID , refs )
340
+ ) ;
341
+ } ,
342
+ getValueFromRef : ( wasmExports , responseRef ) => {
343
+ return wasmExports
344
+ . __getArray ( responseRef )
345
+ . map ( value => wasmExports . __getArray ( value ) ) ;
346
+ }
347
+ } ,
348
+ I64ARRAYARRAY : {
349
+ isTypeFromArgument : arg => {
350
+ return (
351
+ Array . isArray ( arg ) &&
352
+ Array . isArray ( arg [ 0 ] ) &&
353
+ typeof arg [ 0 ] [ 0 ] === "bigint"
354
+ ) ;
355
+ } ,
356
+ isTypeFromReference : ( wasmExports , ref ) => {
357
+ return wasmExports . __instanceof (
358
+ ref ,
359
+ wasmExports . __asbind_I64ArrayArray_ID
360
+ ) ;
361
+ } ,
362
+ getRef : ( wasmExports , arg ) => {
363
+ const refs = arg . map ( value =>
364
+ wasmExports . __pin (
365
+ wasmExports . __newArray ( wasmExports . __asbind_I64Array_ID , value )
366
+ )
367
+ ) ;
368
+ return wasmExports . __pin (
369
+ wasmExports . __newArray ( wasmExports . __asbind_I64ArrayArray_ID , refs )
370
+ ) ;
371
+ } ,
372
+ getValueFromRef : ( wasmExports , responseRef ) => {
373
+ return wasmExports
374
+ . __getArray ( responseRef )
375
+ . map ( value => wasmExports . __getArray ( value ) ) ;
376
+ }
377
+ } ,
378
+ STRINGARRAYARRAY : {
379
+ isTypeFromArgument : arg => {
380
+ return (
381
+ Array . isArray ( arg ) &&
382
+ Array . isArray ( arg [ 0 ] ) &&
383
+ typeof arg [ 0 ] [ 0 ] === "string"
384
+ ) ;
385
+ } ,
386
+ isTypeFromReference : ( wasmExports , ref ) => {
387
+ return wasmExports . __instanceof (
388
+ ref ,
389
+ wasmExports . __asbind_StringArrayArray_ID
390
+ ) ;
391
+ } ,
392
+ getRef : ( wasmExports , arg ) => {
393
+ const refs = arg . map ( value => {
394
+ const stringRefs = value . map ( v =>
395
+ wasmExports . __pin ( wasmExports . __newString ( v ) )
396
+ ) ;
397
+ return wasmExports . __pin (
398
+ wasmExports . __newArray (
399
+ wasmExports . __asbind_StringArray_ID ,
400
+ stringRefs
401
+ )
402
+ ) ;
403
+ } ) ;
404
+ return wasmExports . __pin (
405
+ wasmExports . __newArray ( wasmExports . __asbind_StringArrayArray_ID , refs )
406
+ ) ;
407
+ } ,
408
+ getValueFromRef : ( wasmExports , responseRef ) => {
409
+ return wasmExports
410
+ . __getArray ( responseRef )
411
+ . map ( value =>
412
+ wasmExports . __getArray ( value ) . map ( v => wasmExports . __getString ( v ) )
413
+ ) ;
414
+ }
415
+ } ,
416
+ BOOLARRAYARRAY : {
417
+ isTypeFromArgument : arg => {
418
+ return (
419
+ Array . isArray ( arg ) &&
420
+ Array . isArray ( arg [ 0 ] ) &&
421
+ typeof arg [ 0 ] [ 0 ] === "boolean"
422
+ ) ;
423
+ } ,
424
+ isTypeFromReference : ( wasmExports , ref ) => {
425
+ return wasmExports . __instanceof (
426
+ ref ,
427
+ wasmExports . __asbind_BoolArrayArray_ID
428
+ ) ;
429
+ } ,
430
+ getRef : ( wasmExports , arg ) => {
431
+ const refs = arg . map ( value =>
432
+ wasmExports . __pin (
433
+ wasmExports . __newArray ( wasmExports . __asbind_BoolArray_ID , value )
434
+ )
435
+ ) ;
436
+ return wasmExports . __pin (
437
+ wasmExports . __newArray ( wasmExports . __asbind_BoolArrayArray_ID , refs )
438
+ ) ;
439
+ } ,
440
+ getValueFromRef : ( wasmExports , responseRef ) => {
441
+ return wasmExports
442
+ . __getArray ( responseRef )
443
+ . map ( value => wasmExports . __getArray ( value ) . map ( v => ! ! v ) ) ;
444
+ }
204
445
}
205
446
} ;
206
447
207
448
// Our return type constant
208
- export const RETURN_TYPES = {
209
- NUMBER : "NUMBER" ,
210
- STRING : "STRING" ,
211
- INT8ARRAY : "INT8ARRAY" ,
212
- UINT8ARRAY : "UINT8ARRAY" ,
213
- INT16ARRAY : "INT16ARRAY" ,
214
- UINT16ARRAY : "UINT16ARRAY" ,
215
- INT32ARRAY : "INT32ARRAY" ,
216
- UINT32ARRAY : "UINT32ARRAY" ,
217
- FLOAT32ARRAY : "FLOAT32ARRAY" ,
218
- FLOAT64ARRAY : "FLOAT64ARRAY"
219
- } ;
449
+ export const RETURN_TYPES = { NUMBER : "NUMBER" } ;
450
+
451
+ for ( const refType of Object . keys ( SUPPORTED_REF_TYPES ) ) {
452
+ RETURN_TYPES [ refType ] = refType ;
453
+ }
0 commit comments