@scriptc/compiler 0.0.0 → 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 (206) hide show
  1. package/LICENSE +202 -0
  2. package/ambient/package.json +3 -0
  3. package/ambient/scriptc-node-fallback.d.ts +3001 -0
  4. package/ambient/scriptc-overrides.d.ts +95 -0
  5. package/ambient/scriptc.d.ts +74 -0
  6. package/dist/backend/cc.d.ts +169 -0
  7. package/dist/backend/cc.js +897 -0
  8. package/dist/backend/cc.js.map +1 -0
  9. package/dist/backend/emission/emit-async.d.ts +145 -0
  10. package/dist/backend/emission/emit-async.js +996 -0
  11. package/dist/backend/emission/emit-async.js.map +1 -0
  12. package/dist/backend/emission/emit-exprs.d.ts +3 -0
  13. package/dist/backend/emission/emit-exprs.js +5947 -0
  14. package/dist/backend/emission/emit-exprs.js.map +1 -0
  15. package/dist/backend/emission/emit-island.d.ts +45 -0
  16. package/dist/backend/emission/emit-island.js +271 -0
  17. package/dist/backend/emission/emit-island.js.map +1 -0
  18. package/dist/backend/emission/emit-shapes.d.ts +142 -0
  19. package/dist/backend/emission/emit-shapes.js +575 -0
  20. package/dist/backend/emission/emit-shapes.js.map +1 -0
  21. package/dist/backend/emission/emit-stmts.d.ts +78 -0
  22. package/dist/backend/emission/emit-stmts.js +960 -0
  23. package/dist/backend/emission/emit-stmts.js.map +1 -0
  24. package/dist/backend/emission/emit-types.d.ts +65 -0
  25. package/dist/backend/emission/emit-types.js +652 -0
  26. package/dist/backend/emission/emit-types.js.map +1 -0
  27. package/dist/backend/emission/emit-walkers.d.ts +154 -0
  28. package/dist/backend/emission/emit-walkers.js +1587 -0
  29. package/dist/backend/emission/emit-walkers.js.map +1 -0
  30. package/dist/backend/emission/emitter.d.ts +452 -0
  31. package/dist/backend/emission/emitter.js +1249 -0
  32. package/dist/backend/emission/emitter.js.map +1 -0
  33. package/dist/backend/emission/may-throw.d.ts +15 -0
  34. package/dist/backend/emission/may-throw.js +250 -0
  35. package/dist/backend/emission/may-throw.js.map +1 -0
  36. package/dist/backend/llvm/blocks.d.ts +21 -0
  37. package/dist/backend/llvm/blocks.js +68 -0
  38. package/dist/backend/llvm/blocks.js.map +1 -0
  39. package/dist/backend/llvm/classes.d.ts +84 -0
  40. package/dist/backend/llvm/classes.js +438 -0
  41. package/dist/backend/llvm/classes.js.map +1 -0
  42. package/dist/backend/llvm/dyn.d.ts +123 -0
  43. package/dist/backend/llvm/dyn.js +2624 -0
  44. package/dist/backend/llvm/dyn.js.map +1 -0
  45. package/dist/backend/llvm/emitter.d.ts +3 -0
  46. package/dist/backend/llvm/emitter.js +10087 -0
  47. package/dist/backend/llvm/emitter.js.map +1 -0
  48. package/dist/backend/llvm/shapes.d.ts +78 -0
  49. package/dist/backend/llvm/shapes.js +754 -0
  50. package/dist/backend/llvm/shapes.js.map +1 -0
  51. package/dist/backend/llvm/unsupported.d.ts +6 -0
  52. package/dist/backend/llvm/unsupported.js +12 -0
  53. package/dist/backend/llvm/unsupported.js.map +1 -0
  54. package/dist/backend/llvm/walkers.d.ts +58 -0
  55. package/dist/backend/llvm/walkers.js +793 -0
  56. package/dist/backend/llvm/walkers.js.map +1 -0
  57. package/dist/backend/mangle.d.ts +124 -0
  58. package/dist/backend/mangle.js +232 -0
  59. package/dist/backend/mangle.js.map +1 -0
  60. package/dist/coverage/report.d.ts +64 -0
  61. package/dist/coverage/report.js +226 -0
  62. package/dist/coverage/report.js.map +1 -0
  63. package/dist/diagnostics/diagnostic.d.ts +140 -0
  64. package/dist/diagnostics/diagnostic.js +458 -0
  65. package/dist/diagnostics/diagnostic.js.map +1 -0
  66. package/dist/diagnostics/render.d.ts +11 -0
  67. package/dist/diagnostics/render.js +58 -0
  68. package/dist/diagnostics/render.js.map +1 -0
  69. package/dist/frontend/cjs-lexer.d.ts +20 -0
  70. package/dist/frontend/cjs-lexer.js +813 -0
  71. package/dist/frontend/cjs-lexer.js.map +1 -0
  72. package/dist/frontend/lowering/http2-constants.d.ts +1 -0
  73. package/dist/frontend/lowering/http2-constants.js +251 -0
  74. package/dist/frontend/lowering/http2-constants.js.map +1 -0
  75. package/dist/frontend/lowering/lib-boundary.d.ts +6 -0
  76. package/dist/frontend/lowering/lib-boundary.js +143 -0
  77. package/dist/frontend/lowering/lib-boundary.js.map +1 -0
  78. package/dist/frontend/lowering/lower-assert.d.ts +18 -0
  79. package/dist/frontend/lowering/lower-assert.js +1269 -0
  80. package/dist/frontend/lowering/lower-assert.js.map +1 -0
  81. package/dist/frontend/lowering/lower-builtins.d.ts +511 -0
  82. package/dist/frontend/lowering/lower-builtins.js +5249 -0
  83. package/dist/frontend/lowering/lower-builtins.js.map +1 -0
  84. package/dist/frontend/lowering/lower-calls.d.ts +581 -0
  85. package/dist/frontend/lowering/lower-calls.js +6281 -0
  86. package/dist/frontend/lowering/lower-calls.js.map +1 -0
  87. package/dist/frontend/lowering/lower-classes.d.ts +727 -0
  88. package/dist/frontend/lowering/lower-classes.js +4701 -0
  89. package/dist/frontend/lowering/lower-classes.js.map +1 -0
  90. package/dist/frontend/lowering/lower-comptime.d.ts +53 -0
  91. package/dist/frontend/lowering/lower-comptime.js +244 -0
  92. package/dist/frontend/lowering/lower-comptime.js.map +1 -0
  93. package/dist/frontend/lowering/lower-containers.d.ts +483 -0
  94. package/dist/frontend/lowering/lower-containers.js +6281 -0
  95. package/dist/frontend/lowering/lower-containers.js.map +1 -0
  96. package/dist/frontend/lowering/lower-dgram.d.ts +20 -0
  97. package/dist/frontend/lowering/lower-dgram.js +319 -0
  98. package/dist/frontend/lowering/lower-dgram.js.map +1 -0
  99. package/dist/frontend/lowering/lower-emitter.d.ts +10 -0
  100. package/dist/frontend/lowering/lower-emitter.js +688 -0
  101. package/dist/frontend/lowering/lower-emitter.js.map +1 -0
  102. package/dist/frontend/lowering/lower-enums.d.ts +22 -0
  103. package/dist/frontend/lowering/lower-enums.js +235 -0
  104. package/dist/frontend/lowering/lower-enums.js.map +1 -0
  105. package/dist/frontend/lowering/lower-expando.d.ts +35 -0
  106. package/dist/frontend/lowering/lower-expando.js +276 -0
  107. package/dist/frontend/lowering/lower-expando.js.map +1 -0
  108. package/dist/frontend/lowering/lower-exprs.d.ts +524 -0
  109. package/dist/frontend/lowering/lower-exprs.js +8099 -0
  110. package/dist/frontend/lowering/lower-exprs.js.map +1 -0
  111. package/dist/frontend/lowering/lower-generators.d.ts +50 -0
  112. package/dist/frontend/lowering/lower-generators.js +421 -0
  113. package/dist/frontend/lowering/lower-generators.js.map +1 -0
  114. package/dist/frontend/lowering/lower-inspect.d.ts +20 -0
  115. package/dist/frontend/lowering/lower-inspect.js +1069 -0
  116. package/dist/frontend/lowering/lower-inspect.js.map +1 -0
  117. package/dist/frontend/lowering/lower-island.d.ts +108 -0
  118. package/dist/frontend/lowering/lower-island.js +650 -0
  119. package/dist/frontend/lowering/lower-island.js.map +1 -0
  120. package/dist/frontend/lowering/lower-mixins.d.ts +96 -0
  121. package/dist/frontend/lowering/lower-mixins.js +534 -0
  122. package/dist/frontend/lowering/lower-mixins.js.map +1 -0
  123. package/dist/frontend/lowering/lower-modules.d.ts +135 -0
  124. package/dist/frontend/lowering/lower-modules.js +1613 -0
  125. package/dist/frontend/lowering/lower-modules.js.map +1 -0
  126. package/dist/frontend/lowering/lower-namespaces.d.ts +168 -0
  127. package/dist/frontend/lowering/lower-namespaces.js +706 -0
  128. package/dist/frontend/lowering/lower-namespaces.js.map +1 -0
  129. package/dist/frontend/lowering/lower-server.d.ts +90 -0
  130. package/dist/frontend/lowering/lower-server.js +3471 -0
  131. package/dist/frontend/lowering/lower-server.js.map +1 -0
  132. package/dist/frontend/lowering/lower-stmts.d.ts +361 -0
  133. package/dist/frontend/lowering/lower-stmts.js +5341 -0
  134. package/dist/frontend/lowering/lower-stmts.js.map +1 -0
  135. package/dist/frontend/lowering/lower-stream.d.ts +88 -0
  136. package/dist/frontend/lowering/lower-stream.js +1533 -0
  137. package/dist/frontend/lowering/lower-stream.js.map +1 -0
  138. package/dist/frontend/lowering/lower-test.d.ts +27 -0
  139. package/dist/frontend/lowering/lower-test.js +353 -0
  140. package/dist/frontend/lowering/lower-test.js.map +1 -0
  141. package/dist/frontend/lowering/lowerer.d.ts +1748 -0
  142. package/dist/frontend/lowering/lowerer.js +6256 -0
  143. package/dist/frontend/lowering/lowerer.js.map +1 -0
  144. package/dist/frontend/lowering/surfaces.d.ts +272 -0
  145. package/dist/frontend/lowering/surfaces.js +1096 -0
  146. package/dist/frontend/lowering/surfaces.js.map +1 -0
  147. package/dist/frontend/npm-static.d.ts +55 -0
  148. package/dist/frontend/npm-static.js +300 -0
  149. package/dist/frontend/npm-static.js.map +1 -0
  150. package/dist/frontend/npm.d.ts +330 -0
  151. package/dist/frontend/npm.js +1259 -0
  152. package/dist/frontend/npm.js.map +1 -0
  153. package/dist/frontend/program.d.ts +186 -0
  154. package/dist/frontend/program.js +2172 -0
  155. package/dist/frontend/program.js.map +1 -0
  156. package/dist/frontend/provenance-registry.d.ts +48 -0
  157. package/dist/frontend/provenance-registry.js +87 -0
  158. package/dist/frontend/provenance-registry.js.map +1 -0
  159. package/dist/frontend/provenance.d.ts +6 -0
  160. package/dist/frontend/provenance.js +459 -0
  161. package/dist/frontend/provenance.js.map +1 -0
  162. package/dist/frontend/resolve.d.ts +56 -0
  163. package/dist/frontend/resolve.js +682 -0
  164. package/dist/frontend/resolve.js.map +1 -0
  165. package/dist/frontend/shared.d.ts +60 -0
  166. package/dist/frontend/shared.js +232 -0
  167. package/dist/frontend/shared.js.map +1 -0
  168. package/dist/frontend/ts7/adapter.d.ts +7 -0
  169. package/dist/frontend/ts7/adapter.js +54 -0
  170. package/dist/frontend/ts7/adapter.js.map +1 -0
  171. package/dist/frontend/ts7/ast.d.ts +50 -0
  172. package/dist/frontend/ts7/ast.js +211 -0
  173. package/dist/frontend/ts7/ast.js.map +1 -0
  174. package/dist/frontend/ts7/census-check.d.ts +1 -0
  175. package/dist/frontend/ts7/census-check.js +12 -0
  176. package/dist/frontend/ts7/census-check.js.map +1 -0
  177. package/dist/frontend/ts7/checker.d.ts +140 -0
  178. package/dist/frontend/ts7/checker.js +544 -0
  179. package/dist/frontend/ts7/checker.js.map +1 -0
  180. package/dist/frontend/ts7/enums.d.ts +18 -0
  181. package/dist/frontend/ts7/enums.js +43 -0
  182. package/dist/frontend/ts7/enums.js.map +1 -0
  183. package/dist/frontend/ts7/program.d.ts +99 -0
  184. package/dist/frontend/ts7/program.js +278 -0
  185. package/dist/frontend/ts7/program.js.map +1 -0
  186. package/dist/frontend/ts7/world-check.d.ts +3 -0
  187. package/dist/frontend/ts7/world-check.js +34 -0
  188. package/dist/frontend/ts7/world-check.js.map +1 -0
  189. package/dist/frontend/types.d.ts +205 -0
  190. package/dist/frontend/types.js +2485 -0
  191. package/dist/frontend/types.js.map +1 -0
  192. package/dist/index.d.ts +85 -0
  193. package/dist/index.js +424 -0
  194. package/dist/index.js.map +1 -0
  195. package/dist/ir/nodes.d.ts +4334 -0
  196. package/dist/ir/nodes.js +1906 -0
  197. package/dist/ir/nodes.js.map +1 -0
  198. package/dist/ir/serialize.d.ts +4 -0
  199. package/dist/ir/serialize.js +34 -0
  200. package/dist/ir/serialize.js.map +1 -0
  201. package/dist/ir/validate.d.ts +36 -0
  202. package/dist/ir/validate.js +4884 -0
  203. package/dist/ir/validate.js.map +1 -0
  204. package/package.json +30 -6
  205. package/README.md +0 -3
  206. package/index.js +0 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emit-types.js","sourceRoot":"","sources":["../../../src/backend/emission/emit-types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,154 @@
1
+ import type { CEmitter } from "./emitter.js";
2
+ import { IrType } from "../../ir/nodes.js";
3
+ /** Short human description of a dynCheck target for error messages
4
+ * ("expected number | string at $.items[2]"). Records read as "object" —
5
+ * the path already says where; the full shape would bloat messages. */
6
+ export declare function dynDesc(E: CEmitter, t: IrType): string;
7
+ /** The per-union ToBoolean helper (interned per unionId): switch on the
8
+ * runtime tag — unit arms false, f64 arms 0/NaN-falsy, string arms
9
+ * empty-falsy, bool arms by payload, ref arms always true (JS objects),
10
+ * jsval arms answered by the engine. Borrows the operand. */
11
+ export declare function unionTruthyHelper(E: CEmitter, unionId: string): string;
12
+ /** The per-union strict-equality helper (interned per unionId):
13
+ * different tags are never equal; equal tags compare the arm values —
14
+ * unit arms equal, f64 with C == (NaN !== NaN, +0 === -0), strings by
15
+ * bytes, bools by value, ref arms by POINTER identity (JS object
16
+ * equality). Borrows both operands. */
17
+ export declare function unionEqHelper(E: CEmitter, unionId: string): string;
18
+ /** The per-union ToString helper (interned per unionId): switch on the
19
+ * runtime tag — unit arms return the interned "undefined"/"null" texts,
20
+ * string arms retain the payload, f64/bool arms go through the JS-exact
21
+ * formatters (String(x) semantics). Ref arms never arrive (the frontend
22
+ * fences unions with object arms from string conversion — JS would print
23
+ * "[object Object]"). Borrows the operand; the result is owned (+1). */
24
+ export declare function unionToStrHelper(E: CEmitter, unionId: string): string;
25
+ /** The per-union array-join helper (interned per unionId): Array.prototype
26
+ * .join over union elements — undefined/null arms print EMPTY (exactly
27
+ * JS's join, which silences only the nullish elements), every other arm
28
+ * goes through the per-union ToString walker (string arms verbatim,
29
+ * f64/bool via the JS-exact formatters). The frontend admits only unions
30
+ * of f64/string/bool/unit arms here. Borrows the array and separator;
31
+ * the result is owned (+1). */
32
+ export declare function unionJoinHelper(E: CEmitter, unionId: string): string;
33
+ /** The dyn ToString helper pair (interned once, type-independent):
34
+ * Node's String() over a DOM value — "undefined"/"null" texts, bools,
35
+ * JS-exact number formatting (NaN/Infinity spelled out — NOT the JSON
36
+ * null), strings verbatim, arrays via Array.prototype.toString (join
37
+ * with ","; null/undefined ELEMENTS print empty, nested arrays flatten
38
+ * through the recursion — JS-exact), plain objects as
39
+ * "[object Object]". The operand is borrowed; the result is owned (+1). */
40
+ export declare function dynToStrHelper(E: CEmitter): string;
41
+ /** The caught→dyn converter (interned once, type-independent): a catch
42
+ * binding flowing into an `unknown` slot — the typed→unknown deep-copy
43
+ * stance over the exception snapshot's runtime kind. Scalar payloads
44
+ * convert exactly; an Error-family OBJ payload becomes the DOM's error
45
+ * encoding — the reserved "%error" marker plus name/message (and code
46
+ * when stamped), so `instanceof Error`, the %Error extraction, and
47
+ * String() answer like Node; every other payload (REF — records, arrays,
48
+ * closures, unions — and non-Error hierarchy objects, type-erased at
49
+ * runtime) becomes an EMPTY DOM object (SEMANTICS.md 67). Borrows the
50
+ * snapshot; the result is a fresh tree (+1). Never throws. */
51
+ export declare function caughtToDynHelper(E: CEmitter): string;
52
+ /** The pretty-print re-indenter (interned once, type-independent):
53
+ * `JSON.stringify(v, null, space)` output as a REWRITE of the compact
54
+ * serializer text — Node's gap algorithm exactly. Structural '{'/'[' open
55
+ * a newline + one-deeper indent (unless immediately closed: `{}` and `[]`
56
+ * stay inline, like Node), '}'/']' close onto their own line at the outer
57
+ * depth, ',' breaks the line at the current depth, and the key ':' gains
58
+ * one space. String state (with escape skipping) keeps literal braces,
59
+ * commas, and colons inside JSON strings untouched. Compact input is
60
+ * BORROWED; the result is a fresh string (+1). An empty indent (space 0,
61
+ * "", null) never reaches here — the frontend drops the property. */
62
+ export declare function jsonIndentHelper(E: CEmitter): string;
63
+ export declare function jsonWriteHelper(E: CEmitter, t: IrType): string;
64
+ /** The emitted match predicate for one dynCheck target type:
65
+ * `static bool sc_dm_<n>(const ScrDyn *d)` — does this DOM fit T?
66
+ * Never throws, builds nothing; union builders use it to try arms in
67
+ * canonical order (first FULL match wins). Records are width-tolerant
68
+ * here too: extra keys are ignored, only declared fields are examined. */
69
+ export declare function dynMatchHelper(E: CEmitter, t: IrType): string;
70
+ /** The emitted keyed read on a dyn DOM value:
71
+ * `static ScrDyn *sc_dyn_key_get(ScrDyn *d, ScrStr *k, bool opt)` —
72
+ * OBJ answers the member (+1) or the undefined singleton (own-property
73
+ * answer); ARR answers `length` and canonical in-range indices, STR
74
+ * answers `length` (UTF-16-exact via scr_str_utf16_len), both
75
+ * undefined otherwise; NUM/BOOL/BYTES answer undefined. undefined/null
76
+ * receivers THROW the catchable Node-shaped TypeError, or answer the
77
+ * undefined singleton when `opt` is set (a `?.` step). Borrows d and k;
78
+ * the result is +1. Interned once (the memo key can never collide with
79
+ * a typeKey — no IR type spells "%"). */
80
+ /** RequireObjectCoercible with V8's destructuring TypeError (the
81
+ * dynDestrCheck node): nullish throws "Cannot destructure 'SPELL' as it
82
+ * is undefined." (or "…null."), the property form "Cannot destructure
83
+ * property 'PROP' of 'SPELL' …" when firstProp is non-NULL — V8's exact
84
+ * strings, source spelling included. Non-nullish values pass silently. */
85
+ export declare function dynDestrCheckHelper(E: CEmitter): string;
86
+ /** GetIterator + first-N steps over a DOM value (the dynIterN node), as
87
+ * array destructuring sees it: arrays step by index, strings by CODE
88
+ * POINT (the string iterator — astral chars arrive unsplit), Buffers by
89
+ * byte; everything else throws V8's exact not-iterable TypeError
90
+ * ("undefined is not iterable …", "object null is not iterable …",
91
+ * "number 1 is not iterable …", "boolean true …", "object …",
92
+ * "function …" — each with the "(cannot read property
93
+ * Symbol(Symbol.iterator))" tail). Returns a fresh +1 DOM array of
94
+ * exactly n elements, undefined-padded past the end. */
95
+ export declare function dynIterNHelper(E: CEmitter): string;
96
+ export declare function dynKeyGetHelper(E: CEmitter): string;
97
+ /** The emitted checked builder for one dynCheck target type:
98
+ * `static T sc_dc_<n>(const ScrDyn *d, const ScrDynPath *path)` —
99
+ * validate the DOM against T and BUILD the typed value (+1), or throw a
100
+ * catchable, path-annotated TypeError-shaped string through the exception
101
+ * cell and return a dummy (0/false/NULL) with the pending flag set.
102
+ * Recursive calls propagate a pending exception by releasing the
103
+ * partially-built value and returning — the same pending-check discipline
104
+ * emitted function bodies follow. */
105
+ export declare function dynCheckHelper(E: CEmitter, t: IrType): string;
106
+ /** The emitted static→DOM converter for one type:
107
+ * `static ScrDyn *sc_td_<n>(<T> v)` — build a fresh dyn DOM value from a
108
+ * static one (+1), DEEP-COPYING composites (a dyn value never aliases
109
+ * static storage — the jsMarshal stance). Domain: the JSON-safe kinds
110
+ * plus undefined-armed unions (the undefined arm becomes the undefined
111
+ * DOM singleton) and index-signature records (whose overflow entries
112
+ * copy over). The operand is borrowed. Never throws. */
113
+ export declare function toDynHelper(E: CEmitter, t: IrType): string;
114
+ /** The DOM-promise settle adapter for one fulfillment payload type:
115
+ * `static void sc_pda_<n>(ScrPromise *dst, ScrPromise *src)` — read
116
+ * src's fulfilled payload by its compile-time kind, convert it to a DOM
117
+ * value, and fulfill dst with it (scr_dyn_new_promise_adapting's
118
+ * callback; rejections never reach an adapter — the runtime copies them
119
+ * raw). Interned per inner typeKey. */
120
+ export declare function promiseDynAdapterHelper(E: CEmitter, inner: IrType): string;
121
+ /** The call thunk for one closure signature (see the block comment). */
122
+ export declare function dynFuncThunkHelper(E: CEmitter, t: IrType & {
123
+ kind: "func";
124
+ }): string;
125
+ /** The box builder dynFrom emits for one closure signature. */
126
+ export declare function dynFuncBoxHelper(E: CEmitter, t: IrType & {
127
+ kind: "func";
128
+ }): string;
129
+ /** The adapter closure body for one TARGET signature: the emitted C
130
+ * function a func-targeted dynCheck wraps a non-identical boxed
131
+ * signature in. caps[0] is an untraced obj-box owning the dyn function
132
+ * value. */
133
+ export declare function dynFuncAdapterHelper(E: CEmitter, t: IrType & {
134
+ kind: "func";
135
+ }): string;
136
+ /** The emitted dynamic-keyed READ helper for one (shape, result type):
137
+ * `static <T> sc_rkg_<n>(<struct> *r, ScrStr *k)` — declared fields
138
+ * answer first (string comparisons in canonical order; the frontend
139
+ * proved each surfaces as T: identity, a to-dyn conversion, or an
140
+ * arm-into-union wrap), then the overflow map on index-signature shapes.
141
+ * A MISSING key yields the undefined DOM value (T dyn), the undefined
142
+ * arm (T undefined-armed union), or TRAPS with the key text (the array
143
+ * OOB policy — the checker claimed T and no undefined is representable).
144
+ * Borrows both; refcounted results are owned (+1). */
145
+ export declare function recordKeyGetHelper(E: CEmitter, shapeId: string, t: IrType, overflowOnly?: boolean): string;
146
+ /** The emitted dynamic-keyed WRITE helper for one index-signature shape:
147
+ * `static void sc_rks_<n>(<struct> *r, ScrStr *k, <V> v)` — a declared
148
+ * key writes THROUGH to the struct slot (dyn values validate against the
149
+ * field's type first via the dynCheck walker: a mismatch throws the
150
+ * catchable TypeError and leaves the field untouched — JS would store
151
+ * anything, the documented divergence; typed values store directly),
152
+ * an undeclared key inserts/replaces in the overflow map. Borrows r and
153
+ * k; OWNS v (+1 moves in — released on the validation-failure path). */
154
+ export declare function recordKeySetHelper(E: CEmitter, shapeId: string): string;