@fuman/io 0.0.1

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.
Files changed (81) hide show
  1. package/LICENSE +8 -0
  2. package/_utils.cjs +23 -0
  3. package/_utils.d.ts +2 -0
  4. package/_utils.js +23 -0
  5. package/bits/index.d.ts +2 -0
  6. package/bits/reader.cjs +122 -0
  7. package/bits/reader.d.ts +15 -0
  8. package/bits/reader.js +122 -0
  9. package/bits/utils.cjs +49 -0
  10. package/bits/utils.d.ts +12 -0
  11. package/bits/utils.js +49 -0
  12. package/buf-reader.cjs +60 -0
  13. package/buf-reader.d.ts +9 -0
  14. package/buf-reader.js +60 -0
  15. package/bytes.cjs +114 -0
  16. package/bytes.d.ts +24 -0
  17. package/bytes.js +114 -0
  18. package/codec/delimiter.cjs +38 -0
  19. package/codec/delimiter.d.ts +22 -0
  20. package/codec/delimiter.js +38 -0
  21. package/codec/index.d.ts +6 -0
  22. package/codec/length-delimited.cjs +42 -0
  23. package/codec/length-delimited.d.ts +14 -0
  24. package/codec/length-delimited.js +42 -0
  25. package/codec/reader.cjs +51 -0
  26. package/codec/reader.d.ts +12 -0
  27. package/codec/reader.js +51 -0
  28. package/codec/text-delimiter.cjs +24 -0
  29. package/codec/text-delimiter.d.ts +11 -0
  30. package/codec/text-delimiter.js +24 -0
  31. package/codec/types.d.ts +16 -0
  32. package/codec/writer.cjs +24 -0
  33. package/codec/writer.d.ts +10 -0
  34. package/codec/writer.js +24 -0
  35. package/errors.cjs +9 -0
  36. package/errors.d.ts +9 -0
  37. package/errors.js +9 -0
  38. package/index.cjs +39 -0
  39. package/index.d.ts +12 -0
  40. package/index.js +39 -0
  41. package/package.json +29 -0
  42. package/read/adapters.cjs +90 -0
  43. package/read/adapters.d.ts +4 -0
  44. package/read/adapters.js +90 -0
  45. package/read/async/index.cjs +5 -0
  46. package/read/async/index.d.ts +1 -0
  47. package/read/async/index.js +5 -0
  48. package/read/async/strings.cjs +40 -0
  49. package/read/async/strings.d.ts +3 -0
  50. package/read/async/strings.js +40 -0
  51. package/read/index.cjs +40 -0
  52. package/read/index.d.ts +4 -0
  53. package/read/index.js +40 -0
  54. package/read/numbers.cjs +181 -0
  55. package/read/numbers.d.ts +27 -0
  56. package/read/numbers.js +181 -0
  57. package/read/strings.cjs +67 -0
  58. package/read/strings.d.ts +9 -0
  59. package/read/strings.js +67 -0
  60. package/reader-with-final.cjs +69 -0
  61. package/reader-with-final.d.ts +13 -0
  62. package/reader-with-final.js +69 -0
  63. package/streams.cjs +15 -0
  64. package/streams.d.ts +1 -0
  65. package/streams.js +15 -0
  66. package/types.d.ts +66 -0
  67. package/write/adapters.cjs +38 -0
  68. package/write/adapters.d.ts +4 -0
  69. package/write/adapters.js +38 -0
  70. package/write/index.cjs +37 -0
  71. package/write/index.d.ts +3 -0
  72. package/write/index.js +37 -0
  73. package/write/numbers.cjs +311 -0
  74. package/write/numbers.d.ts +27 -0
  75. package/write/numbers.js +311 -0
  76. package/write/pipe.cjs +11 -0
  77. package/write/pipe.d.ts +2 -0
  78. package/write/pipe.js +11 -0
  79. package/write/strings.cjs +38 -0
  80. package/write/strings.d.ts +6 -0
  81. package/write/strings.js +38 -0
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const numbers = require("./numbers.cjs");
4
+ const pipe = require("./pipe.cjs");
5
+ const strings = require("./strings.cjs");
6
+ exports.float32be = numbers.float32be;
7
+ exports.float32le = numbers.float32le;
8
+ exports.float64be = numbers.float64be;
9
+ exports.float64le = numbers.float64le;
10
+ exports.int16be = numbers.int16be;
11
+ exports.int16le = numbers.int16le;
12
+ exports.int24be = numbers.int24be;
13
+ exports.int24le = numbers.int24le;
14
+ exports.int32be = numbers.int32be;
15
+ exports.int32le = numbers.int32le;
16
+ exports.int64be = numbers.int64be;
17
+ exports.int64le = numbers.int64le;
18
+ exports.int8 = numbers.int8;
19
+ exports.intbe = numbers.intbe;
20
+ exports.intle = numbers.intle;
21
+ exports.uint16be = numbers.uint16be;
22
+ exports.uint16le = numbers.uint16le;
23
+ exports.uint24be = numbers.uint24be;
24
+ exports.uint24le = numbers.uint24le;
25
+ exports.uint32be = numbers.uint32be;
26
+ exports.uint32le = numbers.uint32le;
27
+ exports.uint64be = numbers.uint64be;
28
+ exports.uint64le = numbers.uint64le;
29
+ exports.uint8 = numbers.uint8;
30
+ exports.uintbe = numbers.uintbe;
31
+ exports.uintle = numbers.uintle;
32
+ exports.pipe = pipe.pipe;
33
+ exports.bytes = strings.bytes;
34
+ exports.bytesReversed = strings.bytesReversed;
35
+ exports.cUtf8String = strings.cUtf8String;
36
+ exports.rawString = strings.rawString;
37
+ exports.utf8String = strings.utf8String;
@@ -0,0 +1,3 @@
1
+ export * from './numbers.js';
2
+ export * from './pipe.js';
3
+ export * from './strings.js';
package/write/index.js ADDED
@@ -0,0 +1,37 @@
1
+ import { float32be, float32le, float64be, float64le, int16be, int16le, int24be, int24le, int32be, int32le, int64be, int64le, int8, intbe, intle, uint16be, uint16le, uint24be, uint24le, uint32be, uint32le, uint64be, uint64le, uint8, uintbe, uintle } from "./numbers.js";
2
+ import { pipe } from "./pipe.js";
3
+ import { bytes, bytesReversed, cUtf8String, rawString, utf8String } from "./strings.js";
4
+ export {
5
+ bytes,
6
+ bytesReversed,
7
+ cUtf8String,
8
+ float32be,
9
+ float32le,
10
+ float64be,
11
+ float64le,
12
+ int16be,
13
+ int16le,
14
+ int24be,
15
+ int24le,
16
+ int32be,
17
+ int32le,
18
+ int64be,
19
+ int64le,
20
+ int8,
21
+ intbe,
22
+ intle,
23
+ pipe,
24
+ rawString,
25
+ uint16be,
26
+ uint16le,
27
+ uint24be,
28
+ uint24le,
29
+ uint32be,
30
+ uint32le,
31
+ uint64be,
32
+ uint64le,
33
+ uint8,
34
+ uintbe,
35
+ uintle,
36
+ utf8String
37
+ };
@@ -0,0 +1,311 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const _utils = require("../_utils.cjs");
4
+ function _maybeWrite(writable, size) {
5
+ if (ArrayBuffer.isView(writable)) {
6
+ return writable.subarray(0, size);
7
+ } else {
8
+ return writable.writeSync(size);
9
+ }
10
+ }
11
+ function _checkInt(value, min, max) {
12
+ if (value < min || value > max) {
13
+ throw new RangeError(`value out of bounds: ${value} (${min} ≤ value ≤ ${max})`);
14
+ }
15
+ }
16
+ function uint8(writable, value, noAssert = false) {
17
+ if (!noAssert) _checkInt(value, 0, 255);
18
+ const buf = _maybeWrite(writable, 1);
19
+ if (value < 0) value = 256 + value;
20
+ buf[0] = value & 255;
21
+ }
22
+ function int8(writable, value, noAssert = false) {
23
+ if (!noAssert) _checkInt(value, -128, 127);
24
+ const buf = _maybeWrite(writable, 1);
25
+ if (value < 0) value = 255 + value + 1;
26
+ buf[0] = value & 255;
27
+ }
28
+ function uint16le(writable, value, noAssert = false) {
29
+ if (!noAssert) _checkInt(value, 0, 65535);
30
+ const buf = _maybeWrite(writable, 2);
31
+ buf[0] = value & 255;
32
+ buf[1] = value >>> 8;
33
+ }
34
+ function uint16be(writable, value, noAssert = false) {
35
+ if (!noAssert) _checkInt(value, 0, 65535);
36
+ const buf = _maybeWrite(writable, 2);
37
+ buf[0] = value >>> 8;
38
+ buf[1] = value & 255;
39
+ }
40
+ function int16le(writable, value, noAssert = false) {
41
+ const buf = _maybeWrite(writable, 2);
42
+ if (!noAssert) _checkInt(value, -32768, 32767);
43
+ buf[0] = value & 255;
44
+ buf[1] = value >>> 8;
45
+ }
46
+ function int16be(writable, value, noAssert = false) {
47
+ const buf = _maybeWrite(writable, 2);
48
+ if (!noAssert) _checkInt(value, -32768, 32767);
49
+ buf[0] = value >>> 8;
50
+ buf[1] = value & 255;
51
+ }
52
+ function uint24le(writable, value, noAssert = false) {
53
+ if (!noAssert) _checkInt(value, 0, 16777215);
54
+ const buf = _maybeWrite(writable, 3);
55
+ buf[0] = value;
56
+ value = value >>> 8;
57
+ buf[1] = value;
58
+ value = value >>> 8;
59
+ buf[2] = value;
60
+ }
61
+ function uint24be(writable, value, noAssert = false) {
62
+ if (!noAssert) _checkInt(value, 0, 16777215);
63
+ const buf = _maybeWrite(writable, 3);
64
+ buf[2] = value;
65
+ value = value >>> 8;
66
+ buf[1] = value;
67
+ value = value >>> 8;
68
+ buf[0] = value;
69
+ }
70
+ function int24le(writable, value, noAssert = false) {
71
+ if (!noAssert) _checkInt(value, -8388608, 8388607);
72
+ const buf = _maybeWrite(writable, 3);
73
+ buf[0] = value;
74
+ value = value >>> 8;
75
+ buf[1] = value;
76
+ value = value >>> 8;
77
+ buf[2] = value;
78
+ }
79
+ function int24be(writable, value, noAssert = false) {
80
+ if (!noAssert) _checkInt(value, -8388608, 8388607);
81
+ const buf = _maybeWrite(writable, 3);
82
+ buf[2] = value;
83
+ value = value >>> 8;
84
+ buf[1] = value;
85
+ value = value >>> 8;
86
+ buf[0] = value;
87
+ }
88
+ function uint32le(writable, value, noAssert = false) {
89
+ const buf = _maybeWrite(writable, 4);
90
+ if (!noAssert) _checkInt(value, 0, 4294967295);
91
+ buf[0] = value;
92
+ value = value >>> 8;
93
+ buf[1] = value;
94
+ value = value >>> 8;
95
+ buf[2] = value;
96
+ value = value >>> 8;
97
+ buf[3] = value;
98
+ }
99
+ function uint32be(writable, value, noAssert = false) {
100
+ const buf = _maybeWrite(writable, 4);
101
+ if (!noAssert) _checkInt(value, 0, 4294967295);
102
+ buf[3] = value;
103
+ value = value >>> 8;
104
+ buf[2] = value;
105
+ value = value >>> 8;
106
+ buf[1] = value;
107
+ value = value >>> 8;
108
+ buf[0] = value;
109
+ }
110
+ function int32le(writable, value, noAssert = false) {
111
+ const buf = _maybeWrite(writable, 4);
112
+ if (!noAssert) _checkInt(value, -2147483648, 2147483647);
113
+ buf[0] = value;
114
+ value = value >>> 8;
115
+ buf[1] = value;
116
+ value = value >>> 8;
117
+ buf[2] = value;
118
+ value = value >>> 8;
119
+ buf[3] = value;
120
+ }
121
+ function int32be(writable, value, noAssert = false) {
122
+ const buf = _maybeWrite(writable, 4);
123
+ if (!noAssert) _checkInt(value, -2147483648, 2147483647);
124
+ buf[3] = value;
125
+ value = value >>> 8;
126
+ buf[2] = value;
127
+ value = value >>> 8;
128
+ buf[1] = value;
129
+ value = value >>> 8;
130
+ buf[0] = value;
131
+ }
132
+ function uint64le(writable, value, noAssert = false) {
133
+ const buf = _maybeWrite(writable, 8);
134
+ if (!noAssert) _checkInt(value, 0n, 0xFFFFFFFFFFFFFFFFn);
135
+ let lo = Number(value & 0xFFFFFFFFn);
136
+ buf[0] = lo;
137
+ lo = lo >> 8;
138
+ buf[1] = lo;
139
+ lo = lo >> 8;
140
+ buf[2] = lo;
141
+ lo = lo >> 8;
142
+ buf[3] = lo;
143
+ let hi = Number(value >> 32n & 0xFFFFFFFFn);
144
+ buf[4] = hi;
145
+ hi = hi >> 8;
146
+ buf[5] = hi;
147
+ hi = hi >> 8;
148
+ buf[6] = hi;
149
+ hi = hi >> 8;
150
+ buf[7] = hi;
151
+ }
152
+ function uint64be(writable, value, noAssert = false) {
153
+ const buf = _maybeWrite(writable, 8);
154
+ if (!noAssert) _checkInt(value, 0n, 0xFFFFFFFFFFFFFFFFn);
155
+ let lo = Number(value & 0xFFFFFFFFn);
156
+ buf[7] = lo;
157
+ lo = lo >> 8;
158
+ buf[6] = lo;
159
+ lo = lo >> 8;
160
+ buf[5] = lo;
161
+ lo = lo >> 8;
162
+ buf[4] = lo;
163
+ let hi = Number(value >> 32n & 0xFFFFFFFFn);
164
+ buf[3] = hi;
165
+ hi = hi >> 8;
166
+ buf[2] = hi;
167
+ hi = hi >> 8;
168
+ buf[1] = hi;
169
+ hi = hi >> 8;
170
+ buf[0] = hi;
171
+ }
172
+ function int64le(writable, value, noAssert = false) {
173
+ const buf = _maybeWrite(writable, 8);
174
+ if (!noAssert) _checkInt(value, -0x8000000000000000n, 0x7FFFFFFFFFFFFFFFn);
175
+ let lo = Number(value & 0xFFFFFFFFn);
176
+ buf[0] = lo;
177
+ lo = lo >> 8;
178
+ buf[1] = lo;
179
+ lo = lo >> 8;
180
+ buf[2] = lo;
181
+ lo = lo >> 8;
182
+ buf[3] = lo;
183
+ let hi = Number(value >> 32n & 0xFFFFFFFFn);
184
+ buf[4] = hi;
185
+ hi = hi >> 8;
186
+ buf[5] = hi;
187
+ hi = hi >> 8;
188
+ buf[6] = hi;
189
+ hi = hi >> 8;
190
+ buf[7] = hi;
191
+ }
192
+ function int64be(writable, value, noAssert = false) {
193
+ const buf = _maybeWrite(writable, 8);
194
+ if (!noAssert) _checkInt(value, -0x8000000000000000n, 0x7FFFFFFFFFFFFFFFn);
195
+ let lo = Number(value & 0xFFFFFFFFn);
196
+ buf[7] = lo;
197
+ lo = lo >> 8;
198
+ buf[6] = lo;
199
+ lo = lo >> 8;
200
+ buf[5] = lo;
201
+ lo = lo >> 8;
202
+ buf[4] = lo;
203
+ let hi = Number(value >> 32n & 0xFFFFFFFFn);
204
+ buf[3] = hi;
205
+ hi = hi >> 8;
206
+ buf[2] = hi;
207
+ hi = hi >> 8;
208
+ buf[1] = hi;
209
+ hi = hi >> 8;
210
+ buf[0] = hi;
211
+ }
212
+ function uintle(writable, size, value, noAssert = false) {
213
+ if (!noAssert) {
214
+ _checkInt(value, 0n, 2n ** BigInt(8 * size) - 1n);
215
+ }
216
+ const buf = _maybeWrite(writable, size);
217
+ let mul = 1n;
218
+ let i = 0;
219
+ buf[0] = Number(value & 0xFFn);
220
+ while (++i < size && (mul *= 0x100n)) {
221
+ buf[i] = Number(value / mul & 0xFFn);
222
+ }
223
+ }
224
+ function uintbe(writable, size, value, noAssert = false) {
225
+ if (!noAssert) {
226
+ _checkInt(value, 0n, 2n ** BigInt(8 * size) - 1n);
227
+ }
228
+ const buf = _maybeWrite(writable, size);
229
+ let i = size - 1;
230
+ let mul = 1n;
231
+ buf[i] = Number(value & 0xFFn);
232
+ while (--i >= 0 && (mul *= 0x100n)) {
233
+ buf[i] = Number(value / mul & 0xFFn);
234
+ }
235
+ }
236
+ function intle(writable, size, value, noAssert = false) {
237
+ if (!noAssert) {
238
+ const limit = 2n ** BigInt(8 * size - 1);
239
+ _checkInt(value, -limit, limit - 1n);
240
+ }
241
+ const buf = _maybeWrite(writable, size);
242
+ let i = 0;
243
+ let mul = 1n;
244
+ let sub = 0n;
245
+ buf[0] = Number(value & 0xFFn);
246
+ while (++i < size && (mul *= 0x100n)) {
247
+ if (value < 0 && sub === 0n && buf[i - 1] !== 0) {
248
+ sub = 1n;
249
+ }
250
+ buf[i] = Number(value / mul - sub & 0xFFn);
251
+ }
252
+ }
253
+ function intbe(writable, size, value, noAssert = false) {
254
+ if (!noAssert) {
255
+ const limit = 2n ** BigInt(8 * size - 1);
256
+ _checkInt(value, -limit, limit - 1n);
257
+ }
258
+ const buf = _maybeWrite(writable, size);
259
+ let i = size - 1;
260
+ let mul = 1n;
261
+ let sub = 0n;
262
+ buf[i] = Number(value & 0xFFn);
263
+ while (--i >= 0 && (mul *= 0x100n)) {
264
+ if (value < 0 && sub === 0n && buf[i + 1] !== 0) {
265
+ sub = 1n;
266
+ }
267
+ buf[i] = Number(value / mul - sub & 0xFFn);
268
+ }
269
+ }
270
+ function float32le(writable, value) {
271
+ const buf = _maybeWrite(writable, 4);
272
+ _utils.getDv(buf).setFloat32(buf.byteOffset, value, true);
273
+ }
274
+ function float32be(writable, value) {
275
+ const buf = _maybeWrite(writable, 4);
276
+ _utils.getDv(buf).setFloat32(buf.byteOffset, value, false);
277
+ }
278
+ function float64le(writable, value) {
279
+ const buf = _maybeWrite(writable, 8);
280
+ _utils.getDv(buf).setFloat64(buf.byteOffset, value, true);
281
+ }
282
+ function float64be(writable, value) {
283
+ const buf = _maybeWrite(writable, 8);
284
+ _utils.getDv(buf).setFloat64(buf.byteOffset, value, false);
285
+ }
286
+ exports.float32be = float32be;
287
+ exports.float32le = float32le;
288
+ exports.float64be = float64be;
289
+ exports.float64le = float64le;
290
+ exports.int16be = int16be;
291
+ exports.int16le = int16le;
292
+ exports.int24be = int24be;
293
+ exports.int24le = int24le;
294
+ exports.int32be = int32be;
295
+ exports.int32le = int32le;
296
+ exports.int64be = int64be;
297
+ exports.int64le = int64le;
298
+ exports.int8 = int8;
299
+ exports.intbe = intbe;
300
+ exports.intle = intle;
301
+ exports.uint16be = uint16be;
302
+ exports.uint16le = uint16le;
303
+ exports.uint24be = uint24be;
304
+ exports.uint24le = uint24le;
305
+ exports.uint32be = uint32be;
306
+ exports.uint32le = uint32le;
307
+ exports.uint64be = uint64be;
308
+ exports.uint64le = uint64le;
309
+ exports.uint8 = uint8;
310
+ exports.uintbe = uintbe;
311
+ exports.uintle = uintle;
@@ -0,0 +1,27 @@
1
+ import { ISyncWritable } from '../types.js';
2
+ export declare function uint8(writable: ISyncWritable | Uint8Array, value: number, noAssert?: boolean): void;
3
+ export declare function int8(writable: ISyncWritable | Uint8Array, value: number, noAssert?: boolean): void;
4
+ export declare function uint16le(writable: ISyncWritable | Uint8Array, value: number, noAssert?: boolean): void;
5
+ export declare function uint16be(writable: ISyncWritable | Uint8Array, value: number, noAssert?: boolean): void;
6
+ export declare function int16le(writable: ISyncWritable | Uint8Array, value: number, noAssert?: boolean): void;
7
+ export declare function int16be(writable: ISyncWritable | Uint8Array, value: number, noAssert?: boolean): void;
8
+ export declare function uint24le(writable: ISyncWritable | Uint8Array, value: number, noAssert?: boolean): void;
9
+ export declare function uint24be(writable: ISyncWritable | Uint8Array, value: number, noAssert?: boolean): void;
10
+ export declare function int24le(writable: ISyncWritable | Uint8Array, value: number, noAssert?: boolean): void;
11
+ export declare function int24be(writable: ISyncWritable | Uint8Array, value: number, noAssert?: boolean): void;
12
+ export declare function uint32le(writable: ISyncWritable | Uint8Array, value: number, noAssert?: boolean): void;
13
+ export declare function uint32be(writable: ISyncWritable | Uint8Array, value: number, noAssert?: boolean): void;
14
+ export declare function int32le(writable: ISyncWritable | Uint8Array, value: number, noAssert?: boolean): void;
15
+ export declare function int32be(writable: ISyncWritable | Uint8Array, value: number, noAssert?: boolean): void;
16
+ export declare function uint64le(writable: ISyncWritable | Uint8Array, value: bigint, noAssert?: boolean): void;
17
+ export declare function uint64be(writable: ISyncWritable | Uint8Array, value: bigint, noAssert?: boolean): void;
18
+ export declare function int64le(writable: ISyncWritable | Uint8Array, value: bigint, noAssert?: boolean): void;
19
+ export declare function int64be(writable: ISyncWritable | Uint8Array, value: bigint, noAssert?: boolean): void;
20
+ export declare function uintle(writable: ISyncWritable | Uint8Array, size: number, value: bigint, noAssert?: boolean): void;
21
+ export declare function uintbe(writable: ISyncWritable | Uint8Array, size: number, value: bigint, noAssert?: boolean): void;
22
+ export declare function intle(writable: ISyncWritable | Uint8Array, size: number, value: bigint, noAssert?: boolean): void;
23
+ export declare function intbe(writable: ISyncWritable | Uint8Array, size: number, value: bigint, noAssert?: boolean): void;
24
+ export declare function float32le(writable: ISyncWritable | Uint8Array, value: number): void;
25
+ export declare function float32be(writable: ISyncWritable | Uint8Array, value: number): void;
26
+ export declare function float64le(writable: ISyncWritable | Uint8Array, value: number): void;
27
+ export declare function float64be(writable: ISyncWritable | Uint8Array, value: number): void;