bare-buffer 3.0.2 → 3.1.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/binding.c +118 -23
- package/index.d.ts +2 -0
- package/index.js +2 -0
- package/lib/latin1.js +9 -0
- package/package.json +1 -1
- package/prebuilds/android-arm/bare-buffer.bare +0 -0
- package/prebuilds/android-arm64/bare-buffer.bare +0 -0
- package/prebuilds/android-ia32/bare-buffer.bare +0 -0
- package/prebuilds/android-x64/bare-buffer.bare +0 -0
- package/prebuilds/darwin-arm64/bare-buffer.bare +0 -0
- package/prebuilds/darwin-x64/bare-buffer.bare +0 -0
- package/prebuilds/ios-arm64/bare-buffer.bare +0 -0
- package/prebuilds/ios-arm64-simulator/bare-buffer.bare +0 -0
- package/prebuilds/ios-x64-simulator/bare-buffer.bare +0 -0
- package/prebuilds/linux-arm64/bare-buffer.bare +0 -0
- package/prebuilds/linux-x64/bare-buffer.bare +0 -0
- package/prebuilds/win32-arm64/bare-buffer.bare +0 -0
- package/prebuilds/win32-x64/bare-buffer.bare +0 -0
package/binding.c
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
static js_type_tag_t bare_buffer__tag = {0xfea3e944b70b0812, 0xe53bb5c343c040b6};
|
|
11
11
|
|
|
12
12
|
static inline int
|
|
13
|
-
bare_buffer__memcmp
|
|
13
|
+
bare_buffer__memcmp(void *a, size_t a_len, void *b, size_t b_len) {
|
|
14
14
|
int r = memcmp(a, b, a_len < b_len ? a_len : b_len);
|
|
15
15
|
|
|
16
16
|
if (r == 0) {
|
|
@@ -23,12 +23,12 @@ bare_buffer__memcmp (void *a, size_t a_len, void *b, size_t b_len) {
|
|
|
23
23
|
}
|
|
24
24
|
|
|
25
25
|
static void
|
|
26
|
-
bare_buffer__on_free_string
|
|
26
|
+
bare_buffer__on_free_string(js_env_t *env, void *data, void *finalize_hint) {
|
|
27
27
|
free(data);
|
|
28
28
|
}
|
|
29
29
|
|
|
30
30
|
static js_value_t *
|
|
31
|
-
bare_buffer_alloc
|
|
31
|
+
bare_buffer_alloc(js_env_t *env, js_callback_info_t *info) {
|
|
32
32
|
int err;
|
|
33
33
|
|
|
34
34
|
size_t argc = 1;
|
|
@@ -51,7 +51,7 @@ bare_buffer_alloc (js_env_t *env, js_callback_info_t *info) {
|
|
|
51
51
|
}
|
|
52
52
|
|
|
53
53
|
static js_value_t *
|
|
54
|
-
bare_buffer_alloc_unsafe
|
|
54
|
+
bare_buffer_alloc_unsafe(js_env_t *env, js_callback_info_t *info) {
|
|
55
55
|
int err;
|
|
56
56
|
|
|
57
57
|
size_t argc = 1;
|
|
@@ -74,7 +74,7 @@ bare_buffer_alloc_unsafe (js_env_t *env, js_callback_info_t *info) {
|
|
|
74
74
|
}
|
|
75
75
|
|
|
76
76
|
static uint32_t
|
|
77
|
-
bare_buffer_typed_byte_length_utf8
|
|
77
|
+
bare_buffer_typed_byte_length_utf8(js_value_t *receiver, js_value_t *str, js_typed_callback_info_t *info) {
|
|
78
78
|
int err;
|
|
79
79
|
|
|
80
80
|
js_env_t *env;
|
|
@@ -89,7 +89,7 @@ bare_buffer_typed_byte_length_utf8 (js_value_t *receiver, js_value_t *str, js_ty
|
|
|
89
89
|
}
|
|
90
90
|
|
|
91
91
|
static js_value_t *
|
|
92
|
-
bare_buffer_byte_length_utf8
|
|
92
|
+
bare_buffer_byte_length_utf8(js_env_t *env, js_callback_info_t *info) {
|
|
93
93
|
int err;
|
|
94
94
|
|
|
95
95
|
size_t argc = 1;
|
|
@@ -112,7 +112,7 @@ bare_buffer_byte_length_utf8 (js_env_t *env, js_callback_info_t *info) {
|
|
|
112
112
|
}
|
|
113
113
|
|
|
114
114
|
static js_value_t *
|
|
115
|
-
bare_buffer_to_string_utf8
|
|
115
|
+
bare_buffer_to_string_utf8(js_env_t *env, js_callback_info_t *info) {
|
|
116
116
|
int err;
|
|
117
117
|
|
|
118
118
|
size_t argc = 1;
|
|
@@ -136,7 +136,7 @@ bare_buffer_to_string_utf8 (js_env_t *env, js_callback_info_t *info) {
|
|
|
136
136
|
}
|
|
137
137
|
|
|
138
138
|
static uint32_t
|
|
139
|
-
bare_buffer_typed_write_utf8
|
|
139
|
+
bare_buffer_typed_write_utf8(js_value_t *receiver, js_value_t *typedarray, js_value_t *string, js_typed_callback_info_t *info) {
|
|
140
140
|
int err;
|
|
141
141
|
|
|
142
142
|
js_env_t *env;
|
|
@@ -161,7 +161,7 @@ bare_buffer_typed_write_utf8 (js_value_t *receiver, js_value_t *typedarray, js_v
|
|
|
161
161
|
}
|
|
162
162
|
|
|
163
163
|
static js_value_t *
|
|
164
|
-
bare_buffer_write_utf8
|
|
164
|
+
bare_buffer_write_utf8(js_env_t *env, js_callback_info_t *info) {
|
|
165
165
|
int err;
|
|
166
166
|
|
|
167
167
|
size_t argc = 2;
|
|
@@ -189,7 +189,7 @@ bare_buffer_write_utf8 (js_env_t *env, js_callback_info_t *info) {
|
|
|
189
189
|
}
|
|
190
190
|
|
|
191
191
|
static js_value_t *
|
|
192
|
-
bare_buffer_to_string_utf16le
|
|
192
|
+
bare_buffer_to_string_utf16le(js_env_t *env, js_callback_info_t *info) {
|
|
193
193
|
int err;
|
|
194
194
|
|
|
195
195
|
size_t argc = 1;
|
|
@@ -215,7 +215,7 @@ bare_buffer_to_string_utf16le (js_env_t *env, js_callback_info_t *info) {
|
|
|
215
215
|
}
|
|
216
216
|
|
|
217
217
|
static uint32_t
|
|
218
|
-
bare_buffer_typed_write_utf16le
|
|
218
|
+
bare_buffer_typed_write_utf16le(js_value_t *receiver, js_value_t *typedarray, js_value_t *string, js_typed_callback_info_t *info) {
|
|
219
219
|
int err;
|
|
220
220
|
|
|
221
221
|
js_env_t *env;
|
|
@@ -244,7 +244,7 @@ bare_buffer_typed_write_utf16le (js_value_t *receiver, js_value_t *typedarray, j
|
|
|
244
244
|
}
|
|
245
245
|
|
|
246
246
|
static js_value_t *
|
|
247
|
-
bare_buffer_write_utf16le
|
|
247
|
+
bare_buffer_write_utf16le(js_env_t *env, js_callback_info_t *info) {
|
|
248
248
|
int err;
|
|
249
249
|
|
|
250
250
|
size_t argc = 2;
|
|
@@ -276,7 +276,84 @@ bare_buffer_write_utf16le (js_env_t *env, js_callback_info_t *info) {
|
|
|
276
276
|
}
|
|
277
277
|
|
|
278
278
|
static js_value_t *
|
|
279
|
-
|
|
279
|
+
bare_buffer_to_string_latin1(js_env_t *env, js_callback_info_t *info) {
|
|
280
|
+
int err;
|
|
281
|
+
|
|
282
|
+
size_t argc = 1;
|
|
283
|
+
js_value_t *argv[1];
|
|
284
|
+
|
|
285
|
+
err = js_get_callback_info(env, info, &argc, argv, NULL, NULL);
|
|
286
|
+
assert(err == 0);
|
|
287
|
+
|
|
288
|
+
assert(argc == 1);
|
|
289
|
+
|
|
290
|
+
latin1_t *buf;
|
|
291
|
+
size_t buf_len;
|
|
292
|
+
err = js_get_typedarray_info(env, argv[0], NULL, (void **) &buf, &buf_len, NULL, NULL);
|
|
293
|
+
assert(err == 0);
|
|
294
|
+
|
|
295
|
+
js_value_t *result;
|
|
296
|
+
err = js_create_string_latin1(env, buf, buf_len, &result);
|
|
297
|
+
assert(err == 0);
|
|
298
|
+
|
|
299
|
+
return result;
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
static uint32_t
|
|
303
|
+
bare_buffer_typed_write_latin1(js_value_t *receiver, js_value_t *typedarray, js_value_t *string, js_typed_callback_info_t *info) {
|
|
304
|
+
int err;
|
|
305
|
+
|
|
306
|
+
js_env_t *env;
|
|
307
|
+
err = js_get_typed_callback_info(info, &env, NULL);
|
|
308
|
+
assert(err == 0);
|
|
309
|
+
|
|
310
|
+
void *buf;
|
|
311
|
+
size_t buf_len;
|
|
312
|
+
|
|
313
|
+
js_typedarray_view_t *buf_view;
|
|
314
|
+
err = js_get_typedarray_view(env, typedarray, NULL, &buf, &buf_len, &buf_view);
|
|
315
|
+
assert(err == 0);
|
|
316
|
+
|
|
317
|
+
size_t str_len;
|
|
318
|
+
err = js_get_value_string_latin1(env, string, buf, buf_len, &str_len);
|
|
319
|
+
assert(err == 0);
|
|
320
|
+
|
|
321
|
+
err = js_release_typedarray_view(env, buf_view);
|
|
322
|
+
assert(err == 0);
|
|
323
|
+
|
|
324
|
+
return (uint32_t) str_len;
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
static js_value_t *
|
|
328
|
+
bare_buffer_write_latin1(js_env_t *env, js_callback_info_t *info) {
|
|
329
|
+
int err;
|
|
330
|
+
|
|
331
|
+
size_t argc = 2;
|
|
332
|
+
js_value_t *argv[2];
|
|
333
|
+
|
|
334
|
+
err = js_get_callback_info(env, info, &argc, argv, NULL, NULL);
|
|
335
|
+
assert(err == 0);
|
|
336
|
+
|
|
337
|
+
assert(argc == 2);
|
|
338
|
+
|
|
339
|
+
void *buf;
|
|
340
|
+
size_t buf_len;
|
|
341
|
+
err = js_get_typedarray_info(env, argv[0], NULL, &buf, &buf_len, NULL, NULL);
|
|
342
|
+
assert(err == 0);
|
|
343
|
+
|
|
344
|
+
size_t str_len;
|
|
345
|
+
err = js_get_value_string_latin1(env, argv[1], buf, buf_len, &str_len);
|
|
346
|
+
assert(err == 0);
|
|
347
|
+
|
|
348
|
+
js_value_t *result;
|
|
349
|
+
err = js_create_uint32(env, (uint32_t) str_len, &result);
|
|
350
|
+
assert(err == 0);
|
|
351
|
+
|
|
352
|
+
return result;
|
|
353
|
+
}
|
|
354
|
+
|
|
355
|
+
static js_value_t *
|
|
356
|
+
bare_buffer_to_string_base64(js_env_t *env, js_callback_info_t *info) {
|
|
280
357
|
int err;
|
|
281
358
|
|
|
282
359
|
size_t argc = 1;
|
|
@@ -308,7 +385,7 @@ bare_buffer_to_string_base64 (js_env_t *env, js_callback_info_t *info) {
|
|
|
308
385
|
}
|
|
309
386
|
|
|
310
387
|
static uint32_t
|
|
311
|
-
bare_buffer_typed_write_base64
|
|
388
|
+
bare_buffer_typed_write_base64(js_value_t *receiver, js_value_t *typedarray, js_value_t *string, js_typed_callback_info_t *info) {
|
|
312
389
|
int err;
|
|
313
390
|
|
|
314
391
|
js_env_t *env;
|
|
@@ -348,7 +425,7 @@ bare_buffer_typed_write_base64 (js_value_t *receiver, js_value_t *typedarray, js
|
|
|
348
425
|
}
|
|
349
426
|
|
|
350
427
|
static js_value_t *
|
|
351
|
-
bare_buffer_write_base64
|
|
428
|
+
bare_buffer_write_base64(js_env_t *env, js_callback_info_t *info) {
|
|
352
429
|
int err;
|
|
353
430
|
|
|
354
431
|
size_t argc = 2;
|
|
@@ -391,7 +468,7 @@ bare_buffer_write_base64 (js_env_t *env, js_callback_info_t *info) {
|
|
|
391
468
|
}
|
|
392
469
|
|
|
393
470
|
static js_value_t *
|
|
394
|
-
bare_buffer_to_string_hex
|
|
471
|
+
bare_buffer_to_string_hex(js_env_t *env, js_callback_info_t *info) {
|
|
395
472
|
int err;
|
|
396
473
|
|
|
397
474
|
size_t argc = 1;
|
|
@@ -423,7 +500,7 @@ bare_buffer_to_string_hex (js_env_t *env, js_callback_info_t *info) {
|
|
|
423
500
|
}
|
|
424
501
|
|
|
425
502
|
static uint32_t
|
|
426
|
-
bare_buffer_typed_write_hex
|
|
503
|
+
bare_buffer_typed_write_hex(js_value_t *receiver, js_value_t *typedarray, js_value_t *string, js_typed_callback_info_t *info) {
|
|
427
504
|
int err;
|
|
428
505
|
|
|
429
506
|
js_env_t *env;
|
|
@@ -463,7 +540,7 @@ bare_buffer_typed_write_hex (js_value_t *receiver, js_value_t *typedarray, js_va
|
|
|
463
540
|
}
|
|
464
541
|
|
|
465
542
|
static js_value_t *
|
|
466
|
-
bare_buffer_write_hex
|
|
543
|
+
bare_buffer_write_hex(js_env_t *env, js_callback_info_t *info) {
|
|
467
544
|
int err;
|
|
468
545
|
|
|
469
546
|
size_t argc = 2;
|
|
@@ -506,7 +583,7 @@ bare_buffer_write_hex (js_env_t *env, js_callback_info_t *info) {
|
|
|
506
583
|
}
|
|
507
584
|
|
|
508
585
|
static int32_t
|
|
509
|
-
bare_buffer_typed_compare
|
|
586
|
+
bare_buffer_typed_compare(js_value_t *receiver, js_value_t *source, js_value_t *target, js_typed_callback_info_t *info) {
|
|
510
587
|
int err;
|
|
511
588
|
|
|
512
589
|
js_env_t *env;
|
|
@@ -527,7 +604,7 @@ bare_buffer_typed_compare (js_value_t *receiver, js_value_t *source, js_value_t
|
|
|
527
604
|
}
|
|
528
605
|
|
|
529
606
|
static js_value_t *
|
|
530
|
-
bare_buffer_compare
|
|
607
|
+
bare_buffer_compare(js_env_t *env, js_callback_info_t *info) {
|
|
531
608
|
int err;
|
|
532
609
|
|
|
533
610
|
size_t argc = 2;
|
|
@@ -556,7 +633,7 @@ bare_buffer_compare (js_env_t *env, js_callback_info_t *info) {
|
|
|
556
633
|
}
|
|
557
634
|
|
|
558
635
|
static js_value_t *
|
|
559
|
-
bare_buffer_tag
|
|
636
|
+
bare_buffer_tag(js_env_t *env, js_callback_info_t *info) {
|
|
560
637
|
int err;
|
|
561
638
|
|
|
562
639
|
size_t argc = 1;
|
|
@@ -574,7 +651,7 @@ bare_buffer_tag (js_env_t *env, js_callback_info_t *info) {
|
|
|
574
651
|
}
|
|
575
652
|
|
|
576
653
|
static js_value_t *
|
|
577
|
-
bare_buffer_is_tagged
|
|
654
|
+
bare_buffer_is_tagged(js_env_t *env, js_callback_info_t *info) {
|
|
578
655
|
int err;
|
|
579
656
|
|
|
580
657
|
size_t argc = 1;
|
|
@@ -597,7 +674,7 @@ bare_buffer_is_tagged (js_env_t *env, js_callback_info_t *info) {
|
|
|
597
674
|
}
|
|
598
675
|
|
|
599
676
|
static js_value_t *
|
|
600
|
-
bare_buffer_exports
|
|
677
|
+
bare_buffer_exports(js_env_t *env, js_value_t *exports) {
|
|
601
678
|
int err;
|
|
602
679
|
|
|
603
680
|
#define V(name, untyped, signature, typed) \
|
|
@@ -669,6 +746,24 @@ bare_buffer_exports (js_env_t *env, js_value_t *exports) {
|
|
|
669
746
|
bare_buffer_typed_write_utf16le
|
|
670
747
|
);
|
|
671
748
|
|
|
749
|
+
V("toStringLatin1", bare_buffer_to_string_latin1, NULL, NULL);
|
|
750
|
+
|
|
751
|
+
V(
|
|
752
|
+
"writeLatin1",
|
|
753
|
+
bare_buffer_write_latin1,
|
|
754
|
+
&((js_callback_signature_t) {
|
|
755
|
+
.version = 0,
|
|
756
|
+
.result = js_uint32,
|
|
757
|
+
.args_len = 3,
|
|
758
|
+
.args = (int[]) {
|
|
759
|
+
js_object,
|
|
760
|
+
js_object,
|
|
761
|
+
js_string,
|
|
762
|
+
}
|
|
763
|
+
}),
|
|
764
|
+
bare_buffer_typed_write_latin1
|
|
765
|
+
);
|
|
766
|
+
|
|
672
767
|
V("toStringBase64", bare_buffer_to_string_base64, NULL, NULL);
|
|
673
768
|
|
|
674
769
|
V(
|
package/index.d.ts
CHANGED
package/index.js
CHANGED
|
@@ -4,6 +4,7 @@ const base64 = require('./lib/base64')
|
|
|
4
4
|
const hex = require('./lib/hex')
|
|
5
5
|
const utf8 = require('./lib/utf8')
|
|
6
6
|
const utf16le = require('./lib/utf16le')
|
|
7
|
+
const latin1 = require('./lib/latin1')
|
|
7
8
|
const binding = require('./binding')
|
|
8
9
|
|
|
9
10
|
let poolSize = 0
|
|
@@ -520,6 +521,7 @@ codecs.base64 = base64
|
|
|
520
521
|
codecs.hex = hex
|
|
521
522
|
codecs.utf8 = codecs['utf-8'] = utf8
|
|
522
523
|
codecs.utf16le = codecs.ucs2 = codecs['utf-16le'] = codecs['ucs-2'] = utf16le
|
|
524
|
+
codecs.latin1 = codecs.binary = latin1
|
|
523
525
|
|
|
524
526
|
function codecFor(encoding = 'utf8') {
|
|
525
527
|
if (encoding in codecs) return codecs[encoding]
|
package/lib/latin1.js
ADDED
package/package.json
CHANGED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|