@exornea/zeno-runtime 1.7.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.
Files changed (109) hide show
  1. package/dist/abi.d.ts +7 -0
  2. package/dist/abi.d.ts.map +1 -0
  3. package/dist/abi.js +7 -0
  4. package/dist/abi.js.map +1 -0
  5. package/dist/byte-vectors.d.ts +28 -0
  6. package/dist/byte-vectors.d.ts.map +1 -0
  7. package/dist/byte-vectors.js +64 -0
  8. package/dist/byte-vectors.js.map +1 -0
  9. package/dist/descriptor32.d.ts +15 -0
  10. package/dist/descriptor32.d.ts.map +1 -0
  11. package/dist/descriptor32.js +32 -0
  12. package/dist/descriptor32.js.map +1 -0
  13. package/dist/fixed-arrays.d.ts +39 -0
  14. package/dist/fixed-arrays.d.ts.map +1 -0
  15. package/dist/fixed-arrays.js +93 -0
  16. package/dist/fixed-arrays.js.map +1 -0
  17. package/dist/fixed.d.ts +12 -0
  18. package/dist/fixed.d.ts.map +1 -0
  19. package/dist/fixed.js +56 -0
  20. package/dist/fixed.js.map +1 -0
  21. package/dist/frame.d.ts +36 -0
  22. package/dist/frame.d.ts.map +1 -0
  23. package/dist/frame.js +151 -0
  24. package/dist/frame.js.map +1 -0
  25. package/dist/index.d.ts +5 -0
  26. package/dist/index.d.ts.map +1 -0
  27. package/dist/index.js +4 -0
  28. package/dist/index.js.map +1 -0
  29. package/dist/pointer-vector.d.ts +13 -0
  30. package/dist/pointer-vector.d.ts.map +1 -0
  31. package/dist/pointer-vector.js +53 -0
  32. package/dist/pointer-vector.js.map +1 -0
  33. package/dist/pointer32.d.ts +4 -0
  34. package/dist/pointer32.d.ts.map +1 -0
  35. package/dist/pointer32.js +16 -0
  36. package/dist/pointer32.js.map +1 -0
  37. package/dist/range.d.ts +6 -0
  38. package/dist/range.d.ts.map +1 -0
  39. package/dist/range.js +33 -0
  40. package/dist/range.js.map +1 -0
  41. package/dist/scalar-vector.d.ts +8 -0
  42. package/dist/scalar-vector.d.ts.map +1 -0
  43. package/dist/scalar-vector.js +17 -0
  44. package/dist/scalar-vector.js.map +1 -0
  45. package/dist/scalar.d.ts +6 -0
  46. package/dist/scalar.d.ts.map +1 -0
  47. package/dist/scalar.js +99 -0
  48. package/dist/scalar.js.map +1 -0
  49. package/dist/spans.d.ts +15 -0
  50. package/dist/spans.d.ts.map +1 -0
  51. package/dist/spans.js +30 -0
  52. package/dist/spans.js.map +1 -0
  53. package/dist/struct-vectors.d.ts +14 -0
  54. package/dist/struct-vectors.d.ts.map +1 -0
  55. package/dist/struct-vectors.js +33 -0
  56. package/dist/struct-vectors.js.map +1 -0
  57. package/dist/traversal.d.ts +9 -0
  58. package/dist/traversal.d.ts.map +1 -0
  59. package/dist/traversal.js +22 -0
  60. package/dist/traversal.js.map +1 -0
  61. package/dist/vector-base.d.ts +13 -0
  62. package/dist/vector-base.d.ts.map +1 -0
  63. package/dist/vector-base.js +32 -0
  64. package/dist/vector-base.js.map +1 -0
  65. package/dist/vectors.d.ts +6 -0
  66. package/dist/vectors.d.ts.map +1 -0
  67. package/dist/vectors.js +6 -0
  68. package/dist/vectors.js.map +1 -0
  69. package/dist/view-base.d.ts +15 -0
  70. package/dist/view-base.d.ts.map +1 -0
  71. package/dist/view-base.js +47 -0
  72. package/dist/view-base.js.map +1 -0
  73. package/dist/views.d.ts +6 -0
  74. package/dist/views.d.ts.map +1 -0
  75. package/dist/views.js +6 -0
  76. package/dist/views.js.map +1 -0
  77. package/dist/writer-arena.d.ts +16 -0
  78. package/dist/writer-arena.d.ts.map +1 -0
  79. package/dist/writer-arena.js +46 -0
  80. package/dist/writer-arena.js.map +1 -0
  81. package/dist/writer-byte-vectors.d.ts +12 -0
  82. package/dist/writer-byte-vectors.d.ts.map +1 -0
  83. package/dist/writer-byte-vectors.js +61 -0
  84. package/dist/writer-byte-vectors.js.map +1 -0
  85. package/dist/writer-pointer-vectors.d.ts +6 -0
  86. package/dist/writer-pointer-vectors.d.ts.map +1 -0
  87. package/dist/writer-pointer-vectors.js +33 -0
  88. package/dist/writer-pointer-vectors.js.map +1 -0
  89. package/dist/writer-scalar-vectors.d.ts +7 -0
  90. package/dist/writer-scalar-vectors.d.ts.map +1 -0
  91. package/dist/writer-scalar-vectors.js +19 -0
  92. package/dist/writer-scalar-vectors.js.map +1 -0
  93. package/dist/writer-spans.d.ts +9 -0
  94. package/dist/writer-spans.d.ts.map +1 -0
  95. package/dist/writer-spans.js +21 -0
  96. package/dist/writer-spans.js.map +1 -0
  97. package/dist/writer-struct-vectors.d.ts +6 -0
  98. package/dist/writer-struct-vectors.d.ts.map +1 -0
  99. package/dist/writer-struct-vectors.js +17 -0
  100. package/dist/writer-struct-vectors.js.map +1 -0
  101. package/dist/writer-vectors.d.ts +4 -0
  102. package/dist/writer-vectors.d.ts.map +1 -0
  103. package/dist/writer-vectors.js +4 -0
  104. package/dist/writer-vectors.js.map +1 -0
  105. package/dist/writer.d.ts +4 -0
  106. package/dist/writer.d.ts.map +1 -0
  107. package/dist/writer.js +4 -0
  108. package/dist/writer.js.map +1 -0
  109. package/package.json +39 -0
@@ -0,0 +1,47 @@
1
+ import { assertDataViewRange } from "./range.js";
2
+ export class ProjectionView {
3
+ view;
4
+ baseOffset;
5
+ littleEndian;
6
+ constructor(view, baseOffset = 0, littleEndian = true) {
7
+ this.view = view;
8
+ this.baseOffset = baseOffset;
9
+ this.littleEndian = littleEndian;
10
+ }
11
+ rebase(baseOffset) {
12
+ assertDataViewRange(this.view, baseOffset, 0);
13
+ this.baseOffset = baseOffset;
14
+ return this;
15
+ }
16
+ rebaseUnchecked(baseOffset) {
17
+ this.baseOffset = baseOffset;
18
+ return this;
19
+ }
20
+ moveToIndex(index, byteLength) {
21
+ if (!Number.isInteger(index) || index < 0) {
22
+ throw new RangeError(`Invalid record index: ${index}`);
23
+ }
24
+ const baseOffset = index * byteLength;
25
+ return this.moveToOffset(baseOffset, byteLength);
26
+ }
27
+ moveToOffset(baseOffset, byteLength) {
28
+ assertDataViewRange(this.view, baseOffset, 0);
29
+ assertDataViewRange(this.view, baseOffset, byteLength);
30
+ this.baseOffset = baseOffset;
31
+ return this;
32
+ }
33
+ absoluteOffset(localOffset = 0) {
34
+ return this.baseOffset + localOffset;
35
+ }
36
+ backingOffset(localOffset = 0) {
37
+ return this.view.byteOffset + this.absoluteOffset(localOffset);
38
+ }
39
+ backingBuffer() {
40
+ return this.view.buffer;
41
+ }
42
+ assertRange(localOffset, byteLength) {
43
+ const start = this.absoluteOffset(localOffset);
44
+ assertDataViewRange(this.view, start, byteLength);
45
+ }
46
+ }
47
+ //# sourceMappingURL=view-base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"view-base.js","sourceRoot":"","sources":["../src/view-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,OAAgB,cAAc;IAEb;IACT;IACS;IAHrB,YACqB,IAAc,EACvB,aAAa,CAAC,EACL,eAAe,IAAI;QAFnB,SAAI,GAAJ,IAAI,CAAU;QACvB,eAAU,GAAV,UAAU,CAAI;QACL,iBAAY,GAAZ,YAAY,CAAO;IACrC,CAAC;IAEJ,MAAM,CAAC,UAAkB;QACvB,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;QAC9C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,eAAe,CAAC,UAAkB;QAChC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAES,WAAW,CAAC,KAAa,EAAE,UAAkB;QACrD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,UAAU,CAAC,yBAAyB,KAAK,EAAE,CAAC,CAAC;QACzD,CAAC;QAED,MAAM,UAAU,GAAG,KAAK,GAAG,UAAU,CAAC;QACtC,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IACnD,CAAC;IAED,YAAY,CAAC,UAAkB,EAAE,UAAkB;QACjD,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;QAC9C,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;QACvD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAES,cAAc,CAAC,WAAW,GAAG,CAAC;QACtC,OAAO,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC;IACvC,CAAC;IAES,aAAa,CAAC,WAAW,GAAG,CAAC;QACrC,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;IACjE,CAAC;IAES,aAAa;QACrB,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC1B,CAAC;IAES,WAAW,CAAC,WAAmB,EAAE,UAAkB;QAC3D,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAC/C,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;IACpD,CAAC;CACF"}
@@ -0,0 +1,6 @@
1
+ export { ProjectionView } from "./view-base.js";
2
+ export { BytesSpanView, Utf8SpanView } from "./spans.js";
3
+ export { FixedArrayView, FixedBytesArrayView, FixedScalarArrayView, FixedStringArrayView, FixedStructArrayView, } from "./fixed-arrays.js";
4
+ export { BytesVectorView, DynamicStructVectorView, FixedBytesVectorView, FixedStringVectorView, PointerVectorView, ScalarVectorView, StructVectorView, Utf8VectorView, VectorView, } from "./vectors.js";
5
+ export { traversePointerChain } from "./traversal.js";
6
+ //# sourceMappingURL=views.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"views.d.ts","sourceRoot":"","sources":["../src/views.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,UAAU,GACX,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC"}
package/dist/views.js ADDED
@@ -0,0 +1,6 @@
1
+ export { ProjectionView } from "./view-base.js";
2
+ export { BytesSpanView, Utf8SpanView } from "./spans.js";
3
+ export { FixedArrayView, FixedBytesArrayView, FixedScalarArrayView, FixedStringArrayView, FixedStructArrayView, } from "./fixed-arrays.js";
4
+ export { BytesVectorView, DynamicStructVectorView, FixedBytesVectorView, FixedStringVectorView, PointerVectorView, ScalarVectorView, StructVectorView, Utf8VectorView, VectorView, } from "./vectors.js";
5
+ export { traversePointerChain } from "./traversal.js";
6
+ //# sourceMappingURL=views.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"views.js","sourceRoot":"","sources":["../src/views.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,UAAU,GACX,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { type Span32Descriptor } from "./descriptor32.js";
2
+ import { type TextEncoding } from "./fixed.js";
3
+ export declare class DynamicLayoutArena {
4
+ protected readonly view: DataView;
5
+ protected readonly baseOffset: number;
6
+ protected readonly littleEndian: boolean;
7
+ private cursor;
8
+ constructor(view: DataView, tailOffset: number, baseOffset?: number, littleEndian?: boolean);
9
+ get tailOffset(): number;
10
+ align(alignment: number): this;
11
+ reserve(byteLength: number, alignment?: number): number;
12
+ appendBytes(bytes: ArrayLike<number> | Uint8Array, alignment?: number): Span32Descriptor;
13
+ appendUtf8(text: string, encoder?: TextEncoder): Span32Descriptor;
14
+ appendText(text: string, encoding?: TextEncoding): Span32Descriptor;
15
+ }
16
+ //# sourceMappingURL=writer-arena.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writer-arena.d.ts","sourceRoot":"","sources":["../src/writer-arena.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAA4B,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAGzE,qBAAa,kBAAkB;IAI3B,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ;IAEjC,SAAS,CAAC,QAAQ,CAAC,UAAU;IAC7B,SAAS,CAAC,QAAQ,CAAC,YAAY;IANjC,OAAO,CAAC,MAAM,CAAS;gBAGF,IAAI,EAAE,QAAQ,EACjC,UAAU,EAAE,MAAM,EACC,UAAU,SAAI,EACd,YAAY,UAAO;IAOxC,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAO9B,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,SAAI,GAAG,MAAM;IAQlD,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,GAAG,UAAU,EAAE,SAAS,SAAI,GAAG,gBAAgB;IAWnF,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,cAAe,GAAG,gBAAgB;IAIlE,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,YAAqB,GAAG,gBAAgB;CAG5E"}
@@ -0,0 +1,46 @@
1
+ import {} from "./descriptor32.js";
2
+ import { UTF8_ENCODER, encodeText } from "./fixed.js";
3
+ import { alignOffset, assertDataViewRange } from "./range.js";
4
+ export class DynamicLayoutArena {
5
+ view;
6
+ baseOffset;
7
+ littleEndian;
8
+ cursor;
9
+ constructor(view, tailOffset, baseOffset = 0, littleEndian = true) {
10
+ this.view = view;
11
+ this.baseOffset = baseOffset;
12
+ this.littleEndian = littleEndian;
13
+ assertDataViewRange(view, baseOffset, 0);
14
+ assertDataViewRange(view, baseOffset + tailOffset, 0);
15
+ this.cursor = tailOffset;
16
+ }
17
+ get tailOffset() {
18
+ return this.cursor;
19
+ }
20
+ align(alignment) {
21
+ const next = alignOffset(this.cursor, alignment);
22
+ assertDataViewRange(this.view, this.baseOffset + next, 0);
23
+ this.cursor = next;
24
+ return this;
25
+ }
26
+ reserve(byteLength, alignment = 1) {
27
+ this.align(alignment);
28
+ const offset = this.cursor;
29
+ assertDataViewRange(this.view, this.baseOffset + offset, byteLength);
30
+ this.cursor += byteLength;
31
+ return offset;
32
+ }
33
+ appendBytes(bytes, alignment = 1) {
34
+ const byteLength = bytes.length;
35
+ const relOffset = this.reserve(byteLength, alignment);
36
+ new Uint8Array(this.view.buffer, this.view.byteOffset + this.baseOffset + relOffset, byteLength).set(bytes);
37
+ return { relOffset, byteLength };
38
+ }
39
+ appendUtf8(text, encoder = UTF8_ENCODER) {
40
+ return this.appendBytes(encoder.encode(text));
41
+ }
42
+ appendText(text, encoding = "utf8") {
43
+ return this.appendBytes(encodeText(text, encoding));
44
+ }
45
+ }
46
+ //# sourceMappingURL=writer-arena.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writer-arena.js","sourceRoot":"","sources":["../src/writer-arena.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,UAAU,EAAqB,MAAM,YAAY,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAE9D,MAAM,OAAO,kBAAkB;IAIR;IAEA;IACA;IANb,MAAM,CAAS;IAEvB,YACqB,IAAc,EACjC,UAAkB,EACC,aAAa,CAAC,EACd,eAAe,IAAI;QAHnB,SAAI,GAAJ,IAAI,CAAU;QAEd,eAAU,GAAV,UAAU,CAAI;QACd,iBAAY,GAAZ,YAAY,CAAO;QAEtC,mBAAmB,CAAC,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;QACzC,mBAAmB,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,EAAE,CAAC,CAAC,CAAC;QACtD,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC;IAC3B,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,SAAiB;QACrB,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QACjD,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,UAAkB,EAAE,SAAS,GAAG,CAAC;QACvC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,GAAG,MAAM,EAAE,UAAU,CAAC,CAAC;QACrE,IAAI,CAAC,MAAM,IAAI,UAAU,CAAC;QAC1B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,WAAW,CAAC,KAAqC,EAAE,SAAS,GAAG,CAAC;QAC9D,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC;QAChC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QACtD,IAAI,UAAU,CACZ,IAAI,CAAC,IAAI,CAAC,MAAM,EAChB,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,GAAG,SAAS,EAClD,UAAU,CACX,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACb,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;IACnC,CAAC;IAED,UAAU,CAAC,IAAY,EAAE,OAAO,GAAG,YAAY;QAC7C,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,UAAU,CAAC,IAAY,EAAE,WAAyB,MAAM;QACtD,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;IACtD,CAAC;CACF"}
@@ -0,0 +1,12 @@
1
+ import { type Vector32Descriptor } from "./descriptor32.js";
2
+ import { type TextEncoding } from "./fixed.js";
3
+ import { SpanLayoutWriter } from "./writer-spans.js";
4
+ export declare class ByteVectorLayoutWriter extends SpanLayoutWriter {
5
+ writeBytesVector(descriptorOffset: number, values: readonly (ArrayLike<number> | Uint8Array)[]): Vector32Descriptor;
6
+ writeUtf8Vector(descriptorOffset: number, values: readonly string[], encoder?: TextEncoder): Vector32Descriptor;
7
+ writeTextVector(descriptorOffset: number, values: readonly string[], encoding?: TextEncoding): Vector32Descriptor;
8
+ writeFixedBytesVector(descriptorOffset: number, values: readonly (ArrayLike<number> | Uint8Array)[], elementByteLength: number): Vector32Descriptor;
9
+ writeFixedUtf8Vector(descriptorOffset: number, values: readonly string[], elementByteLength: number, encoder?: TextEncoder): Vector32Descriptor;
10
+ writeFixedTextVector(descriptorOffset: number, values: readonly string[], elementByteLength: number, encoding?: TextEncoding): Vector32Descriptor;
11
+ }
12
+ //# sourceMappingURL=writer-byte-vectors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writer-byte-vectors.d.ts","sourceRoot":"","sources":["../src/writer-byte-vectors.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,kBAAkB,EACxB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAA6E,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1H,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,qBAAa,sBAAuB,SAAQ,gBAAgB;IAC1D,gBAAgB,CACd,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC,EAAE,GAClD,kBAAkB;IA0BrB,eAAe,CACb,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,SAAS,MAAM,EAAE,EACzB,OAAO,cAAe,GACrB,kBAAkB;IAOrB,eAAe,CACb,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,SAAS,MAAM,EAAE,EACzB,QAAQ,GAAE,YAAqB,GAC9B,kBAAkB;IAOrB,qBAAqB,CACnB,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC,EAAE,EACnD,iBAAiB,EAAE,MAAM,GACxB,kBAAkB;IAyBrB,oBAAoB,CAClB,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,SAAS,MAAM,EAAE,EACzB,iBAAiB,EAAE,MAAM,EACzB,OAAO,cAAe,GACrB,kBAAkB;IA0BrB,oBAAoB,CAClB,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,SAAS,MAAM,EAAE,EACzB,iBAAiB,EAAE,MAAM,EACzB,QAAQ,GAAE,YAAqB,GAC9B,kBAAkB;CAyBtB"}
@@ -0,0 +1,61 @@
1
+ import { SPAN32_BYTE_LENGTH, writeSpan32Descriptor, writeVector32Descriptor, } from "./descriptor32.js";
2
+ import { UTF8_ENCODER, encodeText, writeFixedBytes, writeFixedText, writeFixedUtf8 } from "./fixed.js";
3
+ import { SpanLayoutWriter } from "./writer-spans.js";
4
+ export class ByteVectorLayoutWriter extends SpanLayoutWriter {
5
+ writeBytesVector(descriptorOffset, values) {
6
+ const tableOffset = this.reserve(values.length * SPAN32_BYTE_LENGTH, 4);
7
+ const descriptor = {
8
+ relOffset: tableOffset,
9
+ count: values.length,
10
+ };
11
+ writeVector32Descriptor(this.view, this.baseOffset + descriptorOffset, descriptor, this.littleEndian);
12
+ values.forEach((value, index) => {
13
+ const span = this.appendBytes(value);
14
+ writeSpan32Descriptor(this.view, this.baseOffset + tableOffset + index * SPAN32_BYTE_LENGTH, span, this.littleEndian);
15
+ });
16
+ return descriptor;
17
+ }
18
+ writeUtf8Vector(descriptorOffset, values, encoder = UTF8_ENCODER) {
19
+ return this.writeBytesVector(descriptorOffset, values.map((value) => encoder.encode(value)));
20
+ }
21
+ writeTextVector(descriptorOffset, values, encoding = "utf8") {
22
+ return this.writeBytesVector(descriptorOffset, values.map((value) => encodeText(value, encoding)));
23
+ }
24
+ writeFixedBytesVector(descriptorOffset, values, elementByteLength) {
25
+ const payloadOffset = this.reserve(values.length * elementByteLength, 1);
26
+ const descriptor = {
27
+ relOffset: payloadOffset,
28
+ count: values.length,
29
+ };
30
+ writeVector32Descriptor(this.view, this.baseOffset + descriptorOffset, descriptor, this.littleEndian);
31
+ values.forEach((value, index) => {
32
+ writeFixedBytes(this.view.buffer, this.view.byteOffset + this.baseOffset + payloadOffset + index * elementByteLength, elementByteLength, value);
33
+ });
34
+ return descriptor;
35
+ }
36
+ writeFixedUtf8Vector(descriptorOffset, values, elementByteLength, encoder = UTF8_ENCODER) {
37
+ const payloadOffset = this.reserve(values.length * elementByteLength, 1);
38
+ const descriptor = {
39
+ relOffset: payloadOffset,
40
+ count: values.length,
41
+ };
42
+ writeVector32Descriptor(this.view, this.baseOffset + descriptorOffset, descriptor, this.littleEndian);
43
+ values.forEach((value, index) => {
44
+ writeFixedUtf8(this.view.buffer, this.view.byteOffset + this.baseOffset + payloadOffset + index * elementByteLength, elementByteLength, value, encoder);
45
+ });
46
+ return descriptor;
47
+ }
48
+ writeFixedTextVector(descriptorOffset, values, elementByteLength, encoding = "utf8") {
49
+ const payloadOffset = this.reserve(values.length * elementByteLength, 1);
50
+ const descriptor = {
51
+ relOffset: payloadOffset,
52
+ count: values.length,
53
+ };
54
+ writeVector32Descriptor(this.view, this.baseOffset + descriptorOffset, descriptor, this.littleEndian);
55
+ values.forEach((value, index) => {
56
+ writeFixedText(this.view.buffer, this.view.byteOffset + this.baseOffset + payloadOffset + index * elementByteLength, elementByteLength, value, encoding);
57
+ });
58
+ return descriptor;
59
+ }
60
+ }
61
+ //# sourceMappingURL=writer-byte-vectors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writer-byte-vectors.js","sourceRoot":"","sources":["../src/writer-byte-vectors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { type Vector32Descriptor } from "./descriptor32.js";
2
+ import { StructVectorLayoutWriter } from "./writer-struct-vectors.js";
3
+ export declare class PointerVectorLayoutWriter extends StructVectorLayoutWriter {
4
+ writePointerVector(descriptorOffset: number, targetOffsets: readonly (number | null)[], targetByteLength: number): Vector32Descriptor;
5
+ }
6
+ //# sourceMappingURL=writer-pointer-vectors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writer-pointer-vectors.d.ts","sourceRoot":"","sources":["../src/writer-pointer-vectors.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAOrF,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,qBAAa,yBAA0B,SAAQ,wBAAwB;IACrE,kBAAkB,CAChB,gBAAgB,EAAE,MAAM,EACxB,aAAa,EAAE,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,EACzC,gBAAgB,EAAE,MAAM,GACvB,kBAAkB;CAkCtB"}
@@ -0,0 +1,33 @@
1
+ import { writeVector32Descriptor } from "./descriptor32.js";
2
+ import { POINTER32_BYTE_LENGTH, POINTER32_NULL, pointer32RelativeOffset, } from "./pointer32.js";
3
+ import { assertDataViewRange, assertNonNegativeInteger } from "./range.js";
4
+ import { StructVectorLayoutWriter } from "./writer-struct-vectors.js";
5
+ export class PointerVectorLayoutWriter extends StructVectorLayoutWriter {
6
+ writePointerVector(descriptorOffset, targetOffsets, targetByteLength) {
7
+ assertNonNegativeInteger(targetByteLength, "targetByteLength");
8
+ const payloadOffset = this.reserve(targetOffsets.length * POINTER32_BYTE_LENGTH, 4);
9
+ const descriptor = {
10
+ relOffset: payloadOffset,
11
+ count: targetOffsets.length,
12
+ };
13
+ writeVector32Descriptor(this.view, this.baseOffset + descriptorOffset, descriptor, this.littleEndian);
14
+ targetOffsets.forEach((targetOffset, index) => {
15
+ const pointerOffset = payloadOffset + index * POINTER32_BYTE_LENGTH;
16
+ const absolutePointerOffset = this.baseOffset + pointerOffset;
17
+ if (targetOffset !== null) {
18
+ assertDataViewRange(this.view, targetOffset, targetByteLength);
19
+ }
20
+ const value = targetOffset === null
21
+ ? POINTER32_NULL
22
+ : pointer32RelativeOffset(absolutePointerOffset, targetOffset);
23
+ if (value === POINTER32_NULL) {
24
+ this.view.setUint32(absolutePointerOffset, value, this.littleEndian);
25
+ }
26
+ else {
27
+ this.view.setInt32(absolutePointerOffset, value, this.littleEndian);
28
+ }
29
+ });
30
+ return descriptor;
31
+ }
32
+ }
33
+ //# sourceMappingURL=writer-pointer-vectors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writer-pointer-vectors.js","sourceRoot":"","sources":["../src/writer-pointer-vectors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAA2B,MAAM,mBAAmB,CAAC;AACrF,OAAO,EACL,qBAAqB,EACrB,cAAc,EACd,uBAAuB,GACxB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,MAAM,OAAO,yBAA0B,SAAQ,wBAAwB;IACrE,kBAAkB,CAChB,gBAAwB,EACxB,aAAyC,EACzC,gBAAwB;QAExB,wBAAwB,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,CAAC;QAE/D,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,GAAG,qBAAqB,EAAE,CAAC,CAAC,CAAC;QACpF,MAAM,UAAU,GAAG;YACjB,SAAS,EAAE,aAAa;YACxB,KAAK,EAAE,aAAa,CAAC,MAAM;SAC5B,CAAC;QACF,uBAAuB,CACrB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,UAAU,GAAG,gBAAgB,EAClC,UAAU,EACV,IAAI,CAAC,YAAY,CAClB,CAAC;QAEF,aAAa,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,EAAE;YAC5C,MAAM,aAAa,GAAG,aAAa,GAAG,KAAK,GAAG,qBAAqB,CAAC;YACpE,MAAM,qBAAqB,GAAG,IAAI,CAAC,UAAU,GAAG,aAAa,CAAC;YAC9D,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;gBAC1B,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC;YACjE,CAAC;YACD,MAAM,KAAK,GACT,YAAY,KAAK,IAAI;gBACnB,CAAC,CAAC,cAAc;gBAChB,CAAC,CAAC,uBAAuB,CAAC,qBAAqB,EAAE,YAAY,CAAC,CAAC;YACnE,IAAI,KAAK,KAAK,cAAc,EAAE,CAAC;gBAC7B,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,qBAAqB,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YACvE,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YACtE,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,UAAU,CAAC;IACpB,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ import { type Vector32Descriptor } from "./descriptor32.js";
2
+ import { type ScalarKind } from "./scalar.js";
3
+ import { ByteVectorLayoutWriter } from "./writer-byte-vectors.js";
4
+ export declare class ScalarVectorLayoutWriter extends ByteVectorLayoutWriter {
5
+ writeScalarVector<T extends number | bigint | boolean>(descriptorOffset: number, scalarKind: ScalarKind, values: readonly T[]): Vector32Descriptor;
6
+ }
7
+ //# sourceMappingURL=writer-scalar-vectors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writer-scalar-vectors.d.ts","sourceRoot":"","sources":["../src/writer-scalar-vectors.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACrF,OAAO,EAAiC,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,qBAAa,wBAAyB,SAAQ,sBAAsB;IAClE,iBAAiB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,OAAO,EACnD,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,SAAS,CAAC,EAAE,GACnB,kBAAkB;CA0BtB"}
@@ -0,0 +1,19 @@
1
+ import { writeVector32Descriptor } from "./descriptor32.js";
2
+ import { scalarByteLength, writeScalar } from "./scalar.js";
3
+ import { ByteVectorLayoutWriter } from "./writer-byte-vectors.js";
4
+ export class ScalarVectorLayoutWriter extends ByteVectorLayoutWriter {
5
+ writeScalarVector(descriptorOffset, scalarKind, values) {
6
+ const stride = scalarByteLength(scalarKind);
7
+ const payloadOffset = this.reserve(values.length * stride, stride);
8
+ const descriptor = {
9
+ relOffset: payloadOffset,
10
+ count: values.length,
11
+ };
12
+ writeVector32Descriptor(this.view, this.baseOffset + descriptorOffset, descriptor, this.littleEndian);
13
+ values.forEach((value, index) => {
14
+ writeScalar(this.view, scalarKind, this.baseOffset + payloadOffset + index * stride, value, this.littleEndian);
15
+ });
16
+ return descriptor;
17
+ }
18
+ }
19
+ //# sourceMappingURL=writer-scalar-vectors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writer-scalar-vectors.js","sourceRoot":"","sources":["../src/writer-scalar-vectors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAA2B,MAAM,mBAAmB,CAAC;AACrF,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAmB,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,MAAM,OAAO,wBAAyB,SAAQ,sBAAsB;IAClE,iBAAiB,CACf,gBAAwB,EACxB,UAAsB,EACtB,MAAoB;QAEpB,MAAM,MAAM,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC5C,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,CAAC;QACnE,MAAM,UAAU,GAAG;YACjB,SAAS,EAAE,aAAa;YACxB,KAAK,EAAE,MAAM,CAAC,MAAM;SACrB,CAAC;QACF,uBAAuB,CACrB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,UAAU,GAAG,gBAAgB,EAClC,UAAU,EACV,IAAI,CAAC,YAAY,CAClB,CAAC;QAEF,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAC9B,WAAW,CACT,IAAI,CAAC,IAAI,EACT,UAAU,EACV,IAAI,CAAC,UAAU,GAAG,aAAa,GAAG,KAAK,GAAG,MAAM,EAChD,KAAK,EACL,IAAI,CAAC,YAAY,CAClB,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,OAAO,UAAU,CAAC;IACpB,CAAC;CACF"}
@@ -0,0 +1,9 @@
1
+ import { type Span32Descriptor } from "./descriptor32.js";
2
+ import { type TextEncoding } from "./fixed.js";
3
+ import { DynamicLayoutArena } from "./writer-arena.js";
4
+ export declare class SpanLayoutWriter extends DynamicLayoutArena {
5
+ writeBytes(descriptorOffset: number, bytes: ArrayLike<number> | Uint8Array): Span32Descriptor;
6
+ writeUtf8(descriptorOffset: number, text: string, encoder?: TextEncoder): Span32Descriptor;
7
+ writeText(descriptorOffset: number, text: string, encoding?: TextEncoding): Span32Descriptor;
8
+ }
9
+ //# sourceMappingURL=writer-spans.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writer-spans.d.ts","sourceRoot":"","sources":["../src/writer-spans.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACjF,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvD,qBAAa,gBAAiB,SAAQ,kBAAkB;IACtD,UAAU,CAAC,gBAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,GAAG,UAAU,GAAG,gBAAgB;IAW7F,SAAS,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,cAAe,GAAG,gBAAgB;IAW3F,SAAS,CACP,gBAAgB,EAAE,MAAM,EACxB,IAAI,EAAE,MAAM,EACZ,QAAQ,GAAE,YAAqB,GAC9B,gBAAgB;CAUpB"}
@@ -0,0 +1,21 @@
1
+ import { writeSpan32Descriptor } from "./descriptor32.js";
2
+ import { UTF8_ENCODER } from "./fixed.js";
3
+ import { DynamicLayoutArena } from "./writer-arena.js";
4
+ export class SpanLayoutWriter extends DynamicLayoutArena {
5
+ writeBytes(descriptorOffset, bytes) {
6
+ const descriptor = this.appendBytes(bytes);
7
+ writeSpan32Descriptor(this.view, this.baseOffset + descriptorOffset, descriptor, this.littleEndian);
8
+ return descriptor;
9
+ }
10
+ writeUtf8(descriptorOffset, text, encoder = UTF8_ENCODER) {
11
+ const descriptor = this.appendUtf8(text, encoder);
12
+ writeSpan32Descriptor(this.view, this.baseOffset + descriptorOffset, descriptor, this.littleEndian);
13
+ return descriptor;
14
+ }
15
+ writeText(descriptorOffset, text, encoding = "utf8") {
16
+ const descriptor = this.appendText(text, encoding);
17
+ writeSpan32Descriptor(this.view, this.baseOffset + descriptorOffset, descriptor, this.littleEndian);
18
+ return descriptor;
19
+ }
20
+ }
21
+ //# sourceMappingURL=writer-spans.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writer-spans.js","sourceRoot":"","sources":["../src/writer-spans.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAyB,MAAM,mBAAmB,CAAC;AACjF,OAAO,EAAE,YAAY,EAAqB,MAAM,YAAY,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvD,MAAM,OAAO,gBAAiB,SAAQ,kBAAkB;IACtD,UAAU,CAAC,gBAAwB,EAAE,KAAqC;QACxE,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC3C,qBAAqB,CACnB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,UAAU,GAAG,gBAAgB,EAClC,UAAU,EACV,IAAI,CAAC,YAAY,CAClB,CAAC;QACF,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,SAAS,CAAC,gBAAwB,EAAE,IAAY,EAAE,OAAO,GAAG,YAAY;QACtE,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAClD,qBAAqB,CACnB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,UAAU,GAAG,gBAAgB,EAClC,UAAU,EACV,IAAI,CAAC,YAAY,CAClB,CAAC;QACF,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,SAAS,CACP,gBAAwB,EACxB,IAAY,EACZ,WAAyB,MAAM;QAE/B,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACnD,qBAAqB,CACnB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,UAAU,GAAG,gBAAgB,EAClC,UAAU,EACV,IAAI,CAAC,YAAY,CAClB,CAAC;QACF,OAAO,UAAU,CAAC;IACpB,CAAC;CACF"}
@@ -0,0 +1,6 @@
1
+ import { type Vector32Descriptor } from "./descriptor32.js";
2
+ import { ScalarVectorLayoutWriter } from "./writer-scalar-vectors.js";
3
+ export declare class StructVectorLayoutWriter extends ScalarVectorLayoutWriter {
4
+ writeStructVector<T>(descriptorOffset: number, values: readonly T[], elementByteLength: number, writeElement: (view: DataView, value: T, baseOffset: number, littleEndian: boolean) => void, alignment?: number): Vector32Descriptor;
5
+ }
6
+ //# sourceMappingURL=writer-struct-vectors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writer-struct-vectors.d.ts","sourceRoot":"","sources":["../src/writer-struct-vectors.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,qBAAa,wBAAyB,SAAQ,wBAAwB;IACpE,iBAAiB,CAAC,CAAC,EACjB,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,SAAS,CAAC,EAAE,EACpB,iBAAiB,EAAE,MAAM,EACzB,YAAY,EAAE,CACZ,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,CAAC,EACR,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,OAAO,KAClB,IAAI,EACT,SAAS,SAAI,GACZ,kBAAkB;CAwBtB"}
@@ -0,0 +1,17 @@
1
+ import { writeVector32Descriptor, } from "./descriptor32.js";
2
+ import { ScalarVectorLayoutWriter } from "./writer-scalar-vectors.js";
3
+ export class StructVectorLayoutWriter extends ScalarVectorLayoutWriter {
4
+ writeStructVector(descriptorOffset, values, elementByteLength, writeElement, alignment = 1) {
5
+ const payloadOffset = this.reserve(values.length * elementByteLength, alignment);
6
+ const descriptor = {
7
+ relOffset: payloadOffset,
8
+ count: values.length,
9
+ };
10
+ writeVector32Descriptor(this.view, this.baseOffset + descriptorOffset, descriptor, this.littleEndian);
11
+ values.forEach((value, index) => {
12
+ writeElement(this.view, value, this.baseOffset + payloadOffset + index * elementByteLength, this.littleEndian);
13
+ });
14
+ return descriptor;
15
+ }
16
+ }
17
+ //# sourceMappingURL=writer-struct-vectors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writer-struct-vectors.js","sourceRoot":"","sources":["../src/writer-struct-vectors.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,GAExB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,MAAM,OAAO,wBAAyB,SAAQ,wBAAwB;IACpE,iBAAiB,CACf,gBAAwB,EACxB,MAAoB,EACpB,iBAAyB,EACzB,YAKS,EACT,SAAS,GAAG,CAAC;QAEb,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,iBAAiB,EAAE,SAAS,CAAC,CAAC;QACjF,MAAM,UAAU,GAAG;YACjB,SAAS,EAAE,aAAa;YACxB,KAAK,EAAE,MAAM,CAAC,MAAM;SACrB,CAAC;QACF,uBAAuB,CACrB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,UAAU,GAAG,gBAAgB,EAClC,UAAU,EACV,IAAI,CAAC,YAAY,CAClB,CAAC;QAEF,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAC9B,YAAY,CACV,IAAI,CAAC,IAAI,EACT,KAAK,EACL,IAAI,CAAC,UAAU,GAAG,aAAa,GAAG,KAAK,GAAG,iBAAiB,EAC3D,IAAI,CAAC,YAAY,CAClB,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,OAAO,UAAU,CAAC;IACpB,CAAC;CACF"}
@@ -0,0 +1,4 @@
1
+ import { PointerVectorLayoutWriter } from "./writer-pointer-vectors.js";
2
+ export declare class VectorLayoutWriter extends PointerVectorLayoutWriter {
3
+ }
4
+ //# sourceMappingURL=writer-vectors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writer-vectors.d.ts","sourceRoot":"","sources":["../src/writer-vectors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAExE,qBAAa,kBAAmB,SAAQ,yBAAyB;CAAG"}
@@ -0,0 +1,4 @@
1
+ import { PointerVectorLayoutWriter } from "./writer-pointer-vectors.js";
2
+ export class VectorLayoutWriter extends PointerVectorLayoutWriter {
3
+ }
4
+ //# sourceMappingURL=writer-vectors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writer-vectors.js","sourceRoot":"","sources":["../src/writer-vectors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAExE,MAAM,OAAO,kBAAmB,SAAQ,yBAAyB;CAAG"}
@@ -0,0 +1,4 @@
1
+ import { VectorLayoutWriter } from "./writer-vectors.js";
2
+ export declare class DynamicLayoutWriter extends VectorLayoutWriter {
3
+ }
4
+ //# sourceMappingURL=writer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../src/writer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEzD,qBAAa,mBAAoB,SAAQ,kBAAkB;CAAG"}
package/dist/writer.js ADDED
@@ -0,0 +1,4 @@
1
+ import { VectorLayoutWriter } from "./writer-vectors.js";
2
+ export class DynamicLayoutWriter extends VectorLayoutWriter {
3
+ }
4
+ //# sourceMappingURL=writer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writer.js","sourceRoot":"","sources":["../src/writer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEzD,MAAM,OAAO,mBAAoB,SAAQ,kBAAkB;CAAG"}
package/package.json ADDED
@@ -0,0 +1,39 @@
1
+ {
2
+ "name": "@exornea/zeno-runtime",
3
+ "version": "1.7.0",
4
+ "description": "Runtime views, descriptors, writers, and frame helpers for Zeno binary projections.",
5
+ "keywords": [
6
+ "typescript",
7
+ "binary",
8
+ "zero-copy",
9
+ "dataview",
10
+ "serialization"
11
+ ],
12
+ "homepage": "https://github.com/srtdog64/zeno#readme",
13
+ "bugs": {
14
+ "url": "https://github.com/srtdog64/zeno/issues"
15
+ },
16
+ "repository": {
17
+ "type": "git",
18
+ "url": "git+https://github.com/srtdog64/zeno.git",
19
+ "directory": "packages/runtime"
20
+ },
21
+ "type": "module",
22
+ "main": "./dist/index.js",
23
+ "types": "./dist/index.d.ts",
24
+ "files": [
25
+ "dist/"
26
+ ],
27
+ "exports": {
28
+ ".": {
29
+ "types": "./dist/index.d.ts",
30
+ "default": "./dist/index.js"
31
+ }
32
+ },
33
+ "publishConfig": {
34
+ "access": "public"
35
+ },
36
+ "dependencies": {
37
+ "@exornea/zeno-types": "1.7.0"
38
+ }
39
+ }