@boundaryml/baml-bridge-web 0.16.0 → 0.17.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 (48) hide show
  1. package/dist/index.d.ts +2 -1
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +1 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/shared/define_function.d.ts.map +1 -1
  6. package/dist/shared/define_function.js +17 -19
  7. package/dist/shared/define_function.js.map +1 -1
  8. package/dist/shared/proto/baml_cffi.d.ts +1165 -251
  9. package/dist/shared/proto/baml_cffi.js +1733 -124
  10. package/dist/shared/proto.d.ts +2 -1
  11. package/dist/shared/proto.d.ts.map +1 -1
  12. package/dist/shared/proto.js +26 -8
  13. package/dist/shared/proto.js.map +1 -1
  14. package/dist/shared/typemap.d.ts.map +1 -1
  15. package/dist/shared/typemap.js +9 -1
  16. package/dist/shared/typemap.js.map +1 -1
  17. package/dist/shared/wire_ty.d.ts +57 -37
  18. package/dist/shared/wire_ty.d.ts.map +1 -1
  19. package/dist/shared/wire_ty.js +156 -88
  20. package/dist/shared/wire_ty.js.map +1 -1
  21. package/dist/wasm/bridge_web_core.d.ts +2 -2
  22. package/dist/wasm/bridge_web_core.js +7 -7
  23. package/dist/wasm/bridge_web_core_bg.wasm +0 -0
  24. package/dist/wasm/bridge_web_core_bg.wasm.d.ts +2 -2
  25. package/dist/workerd/index.d.ts +2 -1
  26. package/dist/workerd/index.d.ts.map +1 -1
  27. package/dist/workerd/index.js +1 -0
  28. package/dist/workerd/index.js.map +1 -1
  29. package/dist/workerd/shared/define_function.d.ts.map +1 -1
  30. package/dist/workerd/shared/define_function.js +17 -19
  31. package/dist/workerd/shared/define_function.js.map +1 -1
  32. package/dist/workerd/shared/proto/baml_cffi.d.ts +1165 -251
  33. package/dist/workerd/shared/proto/baml_cffi.js +1733 -124
  34. package/dist/workerd/shared/proto.d.ts +2 -1
  35. package/dist/workerd/shared/proto.d.ts.map +1 -1
  36. package/dist/workerd/shared/proto.js +26 -8
  37. package/dist/workerd/shared/proto.js.map +1 -1
  38. package/dist/workerd/shared/typemap.d.ts.map +1 -1
  39. package/dist/workerd/shared/typemap.js +9 -1
  40. package/dist/workerd/shared/typemap.js.map +1 -1
  41. package/dist/workerd/shared/wire_ty.d.ts +57 -37
  42. package/dist/workerd/shared/wire_ty.d.ts.map +1 -1
  43. package/dist/workerd/shared/wire_ty.js +156 -88
  44. package/dist/workerd/shared/wire_ty.js.map +1 -1
  45. package/dist/workerd-wasm/bridge_web_core_bg.js +7 -7
  46. package/dist/workerd-wasm/bridge_web_core_bg.wasm +0 -0
  47. package/dist/workerd-wasm/bridge_web_core_bg.wasm.d.ts +2 -2
  48. package/package.json +1 -1
@@ -1,25 +1,79 @@
1
- // wire_ty.ts lower a host-supplied type token to a wire `Ty` (baml_type.proto).
2
- //
3
- // The Node analog of `python_type_to_wire_ty` / `_fill_wire_ty` in
4
- // sdks/python/src/baml_bridge/proto.py. Python recovers a generic instance's
5
- // concrete type args from Pydantic's runtime generic metadata and lowers
6
- // Python `type` objects (`int`, `str`, `Box[int]`, …) to a wire `Ty`. TypeScript
7
- // erases generics at runtime, so there is no metadata to recover and no `type`
8
- // object to inspect — the host must spell the binding explicitly. A generic
9
- // class instance carries its bindings in a `$types` field, and a generic
10
- // function/method call carries them in a `$types` call option; both hold
11
- // {@link BamlType} tokens that this module lowers.
12
- //
13
- // `undefined` / `null` (an absent binding) lowers to the unknown/top type —
14
- // the engine treats it as a wildcard, matching Python's `_fill_wire_ty(None)`.
1
+ // Host type tokens and opaque BEP-066 reflected type definitions.
15
2
  import { baml_bridge } from './proto/baml_cffi.js';
16
3
  import { getTypeMap } from './typemap.js';
17
4
  const TyPrimitiveKind = baml_bridge.cffi.v1.BamlTyPrimitiveKind;
5
+ const BamlTyDefMessage = baml_bridge.cffi.v1.BamlTyDef;
6
+ /** The bottom type (BAML `never`). */
7
+ export const Never = Symbol('baml.Never');
8
+ /** Internal row consumed by the generated `reflect.class.new` binding. */
9
+ export class BamlTypeMetadataRow {
10
+ ty;
11
+ alias;
12
+ description;
13
+ docstring;
14
+ other;
15
+ constructor(ty, alias, description, docstring, other = {}) {
16
+ this.ty = ty;
17
+ this.alias = alias;
18
+ this.description = description;
19
+ this.docstring = docstring;
20
+ this.other = other;
21
+ }
22
+ }
23
+ function cloneDefinition(definition) {
24
+ const message = BamlTyDefMessage.fromObject(definition);
25
+ return BamlTyDefMessage.decode(BamlTyDefMessage.encode(message).finish());
26
+ }
18
27
  /**
19
- * The bottom type (BAML `never`). Pass as a `$types` binding to bind a TypeVar
20
- * to `never`, mirroring Python's `_types={"T": Never}`.
28
+ * Opaque, runtime-local handle for a reflected BAML definition. Only the
29
+ * composing operations required by H-11 are public. Each wire occurrence
30
+ * carries a copied definition graph; JavaScript identity is never type
31
+ * identity.
21
32
  */
22
- export const Never = Symbol('baml.Never');
33
+ export class BamlType {
34
+ #definition;
35
+ constructor(definition) {
36
+ this.#definition = cloneDefinition(definition);
37
+ }
38
+ /** @internal Bridge/codegen hook; not a host inspection surface. */
39
+ static _fromWire(definition) {
40
+ return new BamlType(definition);
41
+ }
42
+ /** @internal Bridge hook returning a fresh protobuf graph. */
43
+ _wireCopy() {
44
+ return cloneDefinition(this.#definition);
45
+ }
46
+ static from(token) {
47
+ return token instanceof BamlType
48
+ ? token
49
+ : new BamlType({ root: lowerTypeToWireTy(token) });
50
+ }
51
+ meta(options = {}) {
52
+ return new BamlTypeMetadataRow(this, options.alias ?? null, options.description ?? null, options.docstring ?? null, { ...(options.other ?? {}) });
53
+ }
54
+ array() {
55
+ const definition = this._wireCopy();
56
+ definition.root = { list: { item: definition.root } };
57
+ return new BamlType(definition);
58
+ }
59
+ optional() {
60
+ const definition = this._wireCopy();
61
+ definition.root = { optional: { inner: definition.root } };
62
+ return new BamlType(definition);
63
+ }
64
+ toJSON() {
65
+ throw new TypeError('BamlType values are runtime handles and cannot be serialized');
66
+ }
67
+ toString() {
68
+ return 'BamlType(<opaque>)';
69
+ }
70
+ }
71
+ /** Runtime member installed as generated `reflect.type`. */
72
+ export const reflectType = Object.freeze({
73
+ of(token) {
74
+ return BamlType.from(token);
75
+ },
76
+ });
23
77
  const PRIMITIVE_KIND = {
24
78
  int: TyPrimitiveKind.BAML_TY_PRIMITIVE_INT,
25
79
  float: TyPrimitiveKind.BAML_TY_PRIMITIVE_FLOAT,
@@ -29,53 +83,67 @@ const PRIMITIVE_KIND = {
29
83
  bytes: TyPrimitiveKind.BAML_TY_PRIMITIVE_BYTES,
30
84
  bigint: TyPrimitiveKind.BAML_TY_PRIMITIVE_BIGINT,
31
85
  };
32
- /**
33
- * Lower a {@link BamlType} token to a wire `BamlTy` (an `IBamlTy` plain object the
34
- * protobufjs `fromObject` path accepts). Mirrors `_fill_wire_ty`: an
35
- * unrecognized or absent token leaves the unknown/top type, which binds
36
- * nothing.
37
- */
86
+ function unsupported(token) {
87
+ const rendered = typeof token === 'function'
88
+ ? token.name || '<anonymous constructor>'
89
+ : Object.prototype.toString.call(token);
90
+ throw new TypeError(`unsupported TypeScript type token: ${rendered}`);
91
+ }
92
+ /** Lower a statically-known token to a sparse wire `BamlTy`. */
38
93
  export function lowerTypeToWireTy(token) {
39
- // Absent binding → unknown/top (matches Python's `_fill_wire_ty(None)`).
40
- if (token === null || token === undefined) {
41
- return { unknown: {} };
42
- }
43
- // Bottom type.
44
- if (token === Never) {
94
+ if (token === Never)
45
95
  return { never: {} };
46
- }
47
- // Primitive spelling.
96
+ if (token === String)
97
+ return { primitive: { kind: PRIMITIVE_KIND.string } };
98
+ if (token === Boolean)
99
+ return { primitive: { kind: PRIMITIVE_KIND.bool } };
100
+ if (token === BigInt)
101
+ return { primitive: { kind: PRIMITIVE_KIND.bigint } };
102
+ if (token === Uint8Array)
103
+ return { primitive: { kind: PRIMITIVE_KIND.bytes } };
48
104
  if (typeof token === 'string') {
49
105
  const kind = PRIMITIVE_KIND[token];
50
- if (kind !== undefined) {
106
+ if (kind !== undefined)
51
107
  return { primitive: { kind } };
52
- }
53
- return { unknown: {} };
108
+ return unsupported(token);
54
109
  }
55
- // A bare class constructor → that class, no concrete args.
56
110
  if (typeof token === 'function') {
57
- return classWireTy(token, []);
111
+ return namedWireTy(token, []);
58
112
  }
59
- if (typeof token === 'object') {
60
- if ('class' in token) {
61
- return classWireTy(token.class, token.args ?? []);
113
+ if (token !== null && typeof token === 'object') {
114
+ const shape = token;
115
+ if ('__baml_interface_fqn__' in shape) {
116
+ const name = shape.__baml_interface_fqn__;
117
+ if (typeof name !== 'string' || !name)
118
+ return unsupported(token);
119
+ return { interface: { name } };
62
120
  }
63
- if ('list' in token) {
64
- return { list: { item: lowerTypeToWireTy(token.list) } };
121
+ if ('class' in shape) {
122
+ const args = shape.args === undefined ? [] : shape.args;
123
+ if (!Array.isArray(args))
124
+ return unsupported(token);
125
+ return namedWireTy(shape.class, args);
65
126
  }
66
- if ('map' in token) {
67
- const [k, v] = token.map;
68
- return { map: { key: lowerTypeToWireTy(k), value: lowerTypeToWireTy(v) } };
127
+ if ('list' in shape)
128
+ return { list: { item: lowerTypeToWireTy(shape.list) } };
129
+ if ('map' in shape) {
130
+ if (!Array.isArray(shape.map) || shape.map.length !== 2)
131
+ return unsupported(token);
132
+ const [key, value] = shape.map;
133
+ return { map: { key: lowerTypeToWireTy(key), value: lowerTypeToWireTy(value) } };
69
134
  }
70
- if ('optional' in token) {
71
- return { optional: { inner: lowerTypeToWireTy(token.optional) } };
72
- }
73
- if ('union' in token) {
74
- return { union: { options: token.union.map(lowerTypeToWireTy) } };
135
+ if ('optional' in shape)
136
+ return { optional: { inner: lowerTypeToWireTy(shape.optional) } };
137
+ if ('union' in shape) {
138
+ if (!Array.isArray(shape.union))
139
+ return unsupported(token);
140
+ return { union: { options: shape.union.map(lowerTypeToWireTy) } };
75
141
  }
142
+ const fqn = getTypeMap().jsTypeToBamlType(token);
143
+ if (fqn)
144
+ return { enum: { name: fqn } };
76
145
  }
77
- // Unrecognized: leave as unknown/top (binds nothing).
78
- return { unknown: {} };
146
+ return unsupported(token);
79
147
  }
80
148
  const TY_PRIMITIVE_TOKEN = {
81
149
  [TyPrimitiveKind.BAML_TY_PRIMITIVE_INT]: 'int',
@@ -86,55 +154,55 @@ const TY_PRIMITIVE_TOKEN = {
86
154
  [TyPrimitiveKind.BAML_TY_PRIMITIVE_BYTES]: 'bytes',
87
155
  [TyPrimitiveKind.BAML_TY_PRIMITIVE_BIGINT]: 'bigint',
88
156
  };
89
- /**
90
- * Decode a wire `Ty` (baml_type.proto) back to a {@link BamlType} token — the
91
- * exact inverse of {@link lowerTypeToWireTy}, used to repopulate a generic
92
- * instance's `$types` field on decode. Mirrors the engine's
93
- * `ty_encode::runtime_ty_to_proto_ty` and Python's `_ty_to_python_type`.
94
- * Positions with no concrete JS binding (a structural union, an enum, a type
95
- * variable, an opaque/runtime-only type) decode to `undefined`, i.e. an unbound
96
- * wildcard.
97
- */
98
- export function outboundTyToBamlType(ty) {
157
+ /** Decode the sparse value-level type channel on generated class instances. */
158
+ export function outboundTyToBamlTypeToken(ty) {
99
159
  if (!ty)
100
160
  return undefined;
101
- if (ty.primitive) {
102
- return TY_PRIMITIVE_TOKEN[ty.primitive.kind ?? -1] ?? undefined;
161
+ if (ty.primitive)
162
+ return TY_PRIMITIVE_TOKEN[ty.primitive.kind ?? -1];
163
+ if (ty.list) {
164
+ const item = outboundTyToBamlTypeToken(ty.list.item);
165
+ return item === undefined ? undefined : { list: item };
103
166
  }
104
- if (ty.list)
105
- return { list: outboundTyToBamlType(ty.list.item) };
106
167
  if (ty.map) {
107
- return { map: [outboundTyToBamlType(ty.map.key), outboundTyToBamlType(ty.map.value)] };
168
+ const key = outboundTyToBamlTypeToken(ty.map.key);
169
+ const value = outboundTyToBamlTypeToken(ty.map.value);
170
+ return key === undefined || value === undefined ? undefined : { map: [key, value] };
171
+ }
172
+ if (ty.optional) {
173
+ const inner = outboundTyToBamlTypeToken(ty.optional.inner);
174
+ return inner === undefined ? undefined : { optional: inner };
108
175
  }
109
- if (ty.optional)
110
- return { optional: outboundTyToBamlType(ty.optional.inner) };
111
176
  if (ty.classTy) {
112
- const fqn = ty.classTy.name ?? '';
113
- const args = (ty.classTy.typeArgs ?? []).map((a) => outboundTyToBamlType(a));
114
- let ctor;
177
+ const token = resolveNamedToken(ty.classTy.name ?? '');
178
+ if (typeof token !== 'function')
179
+ return undefined;
180
+ const args = (ty.classTy.typeArgs ?? []).map(outboundTyToBamlTypeToken);
181
+ if (args.some((arg) => arg === undefined))
182
+ return undefined;
183
+ return args.length ? { class: token, args: args } : token;
184
+ }
185
+ if (ty.enum)
186
+ return resolveNamedToken(ty.enum.name ?? '');
187
+ return undefined;
188
+ }
189
+ function resolveNamedToken(fqn) {
190
+ try {
191
+ return getTypeMap().getClass(fqn);
192
+ }
193
+ catch {
115
194
  try {
116
- ctor = getTypeMap().getClass(fqn);
195
+ return getTypeMap().getEnum(fqn);
117
196
  }
118
197
  catch {
119
- ctor = undefined; // unmapped FQN — leave unbound
120
- }
121
- if (!ctor)
122
198
  return undefined;
123
- return args.length ? { class: ctor, args } : ctor;
199
+ }
124
200
  }
125
- // union / enum / literal / media / type_var / unknown / any other →
126
- // unbound wildcard (a structural union is unbound for `class<args>`).
127
- return undefined;
128
201
  }
129
- /** Build a `class_ty` wire `Ty` for a codegen class constructor and its
130
- * concrete generic args. The FQN comes from the typemap reverse map; an
131
- * unmapped constructor lowers to unknown so it can't manufacture a bogus
132
- * class reference. */
133
- function classWireTy(ctor, args) {
134
- const fqn = getTypeMap().jsTypeToBamlType(ctor);
135
- if (!fqn) {
136
- return { unknown: {} };
137
- }
202
+ function namedWireTy(token, args) {
203
+ const fqn = getTypeMap().jsTypeToBamlType(token);
204
+ if (!fqn)
205
+ return unsupported(token);
138
206
  return { classTy: { name: fqn, typeArgs: args.map(lowerTypeToWireTy) } };
139
207
  }
140
208
  //# sourceMappingURL=wire_ty.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"wire_ty.js","sourceRoot":"","sources":["../../typescript_src/shared/wire_ty.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,EAAE;AACF,mEAAmE;AACnE,6EAA6E;AAC7E,yEAAyE;AACzE,iFAAiF;AACjF,+EAA+E;AAC/E,4EAA4E;AAC5E,yEAAyE;AACzE,yEAAyE;AACzE,mDAAmD;AACnD,EAAE;AACF,4EAA4E;AAC5E,+EAA+E;AAE/E,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,eAAe,GAAG,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC;AAEhE;;;GAGG;AACH,MAAM,CAAC,MAAM,KAAK,GAAkB,MAAM,CAAC,YAAY,CAAC,CAAC;AAsCzD,MAAM,cAAc,GAAuC;IACvD,GAAG,EAAE,eAAe,CAAC,qBAAqB;IAC1C,KAAK,EAAE,eAAe,CAAC,uBAAuB;IAC9C,MAAM,EAAE,eAAe,CAAC,wBAAwB;IAChD,IAAI,EAAE,eAAe,CAAC,sBAAsB;IAC5C,IAAI,EAAE,eAAe,CAAC,sBAAsB;IAC5C,KAAK,EAAE,eAAe,CAAC,uBAAuB;IAC9C,MAAM,EAAE,eAAe,CAAC,wBAAwB;CACnD,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAe;IAC7C,yEAAyE;IACzE,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxC,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IAC3B,CAAC;IACD,eAAe;IACf,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;QAClB,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IACzB,CAAC;IACD,sBAAsB;IACtB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,cAAc,CAAC,KAA2B,CAAC,CAAC;QACzD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACrB,OAAO,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC;QACnC,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IAC3B,CAAC;IACD,2DAA2D;IAC3D,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;QAC9B,OAAO,WAAW,CAAC,KAAsB,EAAE,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC5B,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;YACnB,OAAO,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC;QACD,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;YAClB,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QAC7D,CAAC;QACD,IAAI,KAAK,IAAI,KAAK,EAAE,CAAC;YACjB,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC;YACzB,OAAO,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAC/E,CAAC;QACD,IAAI,UAAU,IAAI,KAAK,EAAE,CAAC;YACtB,OAAO,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACtE,CAAC;QACD,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;YACnB,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC;QACtE,CAAC;IACL,CAAC;IACD,sDAAsD;IACtD,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;AAC3B,CAAC;AAED,MAAM,kBAAkB,GAAuC;IAC3D,CAAC,eAAe,CAAC,qBAAqB,CAAC,EAAE,KAAK;IAC9C,CAAC,eAAe,CAAC,uBAAuB,CAAC,EAAE,OAAO;IAClD,CAAC,eAAe,CAAC,wBAAwB,CAAC,EAAE,QAAQ;IACpD,CAAC,eAAe,CAAC,sBAAsB,CAAC,EAAE,MAAM;IAChD,CAAC,eAAe,CAAC,sBAAsB,CAAC,EAAE,MAAM;IAChD,CAAC,eAAe,CAAC,uBAAuB,CAAC,EAAE,OAAO;IAClD,CAAC,eAAe,CAAC,wBAAwB,CAAC,EAAE,QAAQ;CACvD,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAChC,EAAkD;IAElD,IAAI,CAAC,EAAE;QAAE,OAAO,SAAS,CAAC;IAC1B,IAAI,EAAE,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,kBAAkB,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;IACpE,CAAC;IACD,IAAI,EAAE,CAAC,IAAI;QAAE,OAAO,EAAE,IAAI,EAAE,oBAAoB,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IACjE,IAAI,EAAE,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,EAAE,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,oBAAoB,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;IAC3F,CAAC;IACD,IAAI,EAAE,CAAC,QAAQ;QAAE,OAAO,EAAE,QAAQ,EAAE,oBAAoB,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;IAC9E,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7E,IAAI,IAA+B,CAAC;QACpC,IAAI,CAAC;YACD,IAAI,GAAG,UAAU,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAkB,CAAC;QACvD,CAAC;QAAC,MAAM,CAAC;YACL,IAAI,GAAG,SAAS,CAAC,CAAC,+BAA+B;QACrD,CAAC;QACD,IAAI,CAAC,IAAI;YAAE,OAAO,SAAS,CAAC;QAC5B,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACtD,CAAC;IACD,oEAAoE;IACpE,sEAAsE;IACtE,OAAO,SAAS,CAAC;AACrB,CAAC;AAED;;;sBAGsB;AACtB,SAAS,WAAW,CAAC,IAAmB,EAAE,IAAgB;IACtD,MAAM,GAAG,GAAG,UAAU,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAChD,IAAI,CAAC,GAAG,EAAE,CAAC;QACP,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IAC3B,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC;AAC7E,CAAC"}
1
+ {"version":3,"file":"wire_ty.js","sourceRoot":"","sources":["../../typescript_src/shared/wire_ty.ts"],"names":[],"mappings":"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"}
@@ -171,8 +171,8 @@ export interface InitOutput {
171
171
  readonly cancel_function_call: (a: bigint) => number;
172
172
  readonly free_buffer: (a: number) => void;
173
173
  readonly new_function_call: () => bigint;
174
- readonly __wasm_bindgen_func_elem_41706: (a: number, b: number, c: number, d: number) => void;
175
- readonly __wasm_bindgen_func_elem_41719: (a: number, b: number, c: number, d: number) => void;
174
+ readonly __wasm_bindgen_func_elem_39162: (a: number, b: number, c: number, d: number) => void;
175
+ readonly __wasm_bindgen_func_elem_39175: (a: number, b: number, c: number, d: number) => void;
176
176
  readonly __wbindgen_export: (a: number, b: number) => number;
177
177
  readonly __wbindgen_export2: (a: number, b: number, c: number, d: number) => number;
178
178
  readonly __wbindgen_export3: (a: number) => void;
@@ -804,7 +804,7 @@ function __wbg_get_imports() {
804
804
  const a = state0.a;
805
805
  state0.a = 0;
806
806
  try {
807
- return __wasm_bindgen_func_elem_41719(a, state0.b, arg0, arg1);
807
+ return __wasm_bindgen_func_elem_39175(a, state0.b, arg0, arg1);
808
808
  } finally {
809
809
  state0.a = a;
810
810
  }
@@ -911,8 +911,8 @@ function __wbg_get_imports() {
911
911
  return addHeapObject(ret);
912
912
  },
913
913
  __wbindgen_cast_0000000000000001: function(arg0, arg1) {
914
- // Cast intrinsic for `Closure(Closure { owned: true, function: Function { arguments: [Externref], shim_idx: 7252, ret: Result(Unit), inner_ret: Some(Result(Unit)) }, mutable: true }) -> Externref`.
915
- const ret = makeMutClosure(arg0, arg1, __wasm_bindgen_func_elem_41706);
914
+ // Cast intrinsic for `Closure(Closure { owned: true, function: Function { arguments: [Externref], shim_idx: 7327, ret: Result(Unit), inner_ret: Some(Result(Unit)) }, mutable: true }) -> Externref`.
915
+ const ret = makeMutClosure(arg0, arg1, __wasm_bindgen_func_elem_39162);
916
916
  return addHeapObject(ret);
917
917
  },
918
918
  __wbindgen_cast_0000000000000002: function(arg0) {
@@ -956,10 +956,10 @@ function __wbg_get_imports() {
956
956
  };
957
957
  }
958
958
 
959
- function __wasm_bindgen_func_elem_41706(arg0, arg1, arg2) {
959
+ function __wasm_bindgen_func_elem_39162(arg0, arg1, arg2) {
960
960
  try {
961
961
  const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
962
- wasm.__wasm_bindgen_func_elem_41706(retptr, arg0, arg1, addHeapObject(arg2));
962
+ wasm.__wasm_bindgen_func_elem_39162(retptr, arg0, arg1, addHeapObject(arg2));
963
963
  var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
964
964
  var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
965
965
  if (r1) {
@@ -970,8 +970,8 @@ function __wasm_bindgen_func_elem_41706(arg0, arg1, arg2) {
970
970
  }
971
971
  }
972
972
 
973
- function __wasm_bindgen_func_elem_41719(arg0, arg1, arg2, arg3) {
974
- wasm.__wasm_bindgen_func_elem_41719(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3));
973
+ function __wasm_bindgen_func_elem_39175(arg0, arg1, arg2, arg3) {
974
+ wasm.__wasm_bindgen_func_elem_39175(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3));
975
975
  }
976
976
 
977
977
  function addHeapObject(obj) {
Binary file
@@ -44,8 +44,8 @@ export const mintHostValueKey: () => bigint;
44
44
  export const cancel_function_call: (a: bigint) => number;
45
45
  export const free_buffer: (a: number) => void;
46
46
  export const new_function_call: () => bigint;
47
- export const __wasm_bindgen_func_elem_41706: (a: number, b: number, c: number, d: number) => void;
48
- export const __wasm_bindgen_func_elem_41719: (a: number, b: number, c: number, d: number) => void;
47
+ export const __wasm_bindgen_func_elem_39162: (a: number, b: number, c: number, d: number) => void;
48
+ export const __wasm_bindgen_func_elem_39175: (a: number, b: number, c: number, d: number) => void;
49
49
  export const __wbindgen_export: (a: number, b: number) => number;
50
50
  export const __wbindgen_export2: (a: number, b: number, c: number, d: number) => number;
51
51
  export const __wbindgen_export3: (a: number) => void;
@@ -5,7 +5,8 @@ export { BamlTypeMap, getTypeMap, setTypeMap } from "./shared/typemap.js";
5
5
  export { defineFunction, defineInstanceFunction, UNSET } from "./shared/define_function.js";
6
6
  export type { GenericParams } from "./shared/define_function.js";
7
7
  export { Never, lowerTypeToWireTy } from "./shared/wire_ty.js";
8
- export type { BamlClassCtor, BamlPrimitiveToken, BamlType } from "./shared/wire_ty.js";
8
+ export { BamlType, reflectType } from "./shared/wire_ty.js";
9
+ export type { BamlClassCtor, BamlInterfaceToken, BamlPrimitiveToken, BamlTypeMetadata, BamlTypeToken } from "./shared/wire_ty.js";
9
10
  export { BamlAbortError, BamlCancelledError, BamlClientError, BamlError, BamlInvalidArgumentError, BamlPanic, wrapNativeError } from "./shared/errors.js";
10
11
  export { decodeCallResult, encodeCallArgs } from "./shared/proto.js";
11
12
  export declare function initializeRuntimeFromBytecode(bytecode: Uint8Array, embeddedBamlToml?: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../typescript_src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,SAAS,EAAE,eAAe,EAA4I,MAAM,aAAa,CAAC;AAMjO,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,EAAE,KAAK,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,WAAW,EAAE,uBAAuB,EAAE,UAAU,EAAE,mBAAmB,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9T,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAC5F,YAAY,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,eAAe,EAAE,SAAS,EAAE,wBAAwB,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1J,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAErE,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,UAAU,EAAE,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAEnG;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAErF;AAED,qBAAa,cAAc;IACb,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,OAAO;IAC3C,MAAM,IAAI,OAAO;IACjB,QAAQ,IAAI,MAAM;CACnB;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC,EAAE,eAAe,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,cAAc,CASnM;AAED,wBAAsB,YAAY,CAAC,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC,EAAE,eAAe,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAS9M;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyB;IACjD,GAAG,IAAI,eAAe;IACtB,UAAU,IAAI,OAAO;IACrB,KAAK,IAAI,IAAI;IACb,YAAY,IAAI,eAAe;IAC/B,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;CAC/C;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAE1D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../typescript_src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,SAAS,EAAE,eAAe,EAA4I,MAAM,aAAa,CAAC;AAMjO,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,EAAE,KAAK,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,WAAW,EAAE,uBAAuB,EAAE,UAAU,EAAE,mBAAmB,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9T,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAC5F,YAAY,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC5D,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAClI,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,eAAe,EAAE,SAAS,EAAE,wBAAwB,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1J,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAErE,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,UAAU,EAAE,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAEnG;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAErF;AAED,qBAAa,cAAc;IACb,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,OAAO;IAC3C,MAAM,IAAI,OAAO;IACjB,QAAQ,IAAI,MAAM;CACnB;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC,EAAE,eAAe,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,cAAc,CASnM;AAED,wBAAsB,YAAY,CAAC,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC,EAAE,eAAe,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAS9M;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyB;IACjD,GAAG,IAAI,eAAe;IACtB,UAAU,IAAI,OAAO;IACrB,KAAK,IAAI,IAAI;IACb,YAAY,IAAI,eAAe;IAC/B,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;CAC/C;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAE1D"}
@@ -12,6 +12,7 @@ export { BamlStream } from "./shared/stream.js";
12
12
  export { BamlTypeMap, getTypeMap, setTypeMap } from "./shared/typemap.js";
13
13
  export { defineFunction, defineInstanceFunction, UNSET } from "./shared/define_function.js";
14
14
  export { Never, lowerTypeToWireTy } from "./shared/wire_ty.js";
15
+ export { BamlType, reflectType } from "./shared/wire_ty.js";
15
16
  export { BamlAbortError, BamlCancelledError, BamlClientError, BamlError, BamlInvalidArgumentError, BamlPanic, wrapNativeError } from "./shared/errors.js";
16
17
  export { decodeCallResult, encodeCallArgs } from "./shared/proto.js";
17
18
  export function initializeRuntimeFromBytecode(bytecode, embeddedBamlToml) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../typescript_src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../typescript_src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"define_function.d.ts","sourceRoot":"","sources":["../../typescript_src/shared/define_function.ts"],"names":[],"mappings":"AAuBA,MAAM,MAAM,IAAI,GAAG,MAAM,GAAG,OAAO,CAAC;AAEpC,8EAA8E;AAC9E,eAAO,MAAM,KAAK,EAAE,OAAO,MAA6B,CAAC;AAEzD;;;;;;GAMG;AACH,MAAM,WAAW,aAAa;IAC1B,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACvC;AAuKD;;;;GAIG;AACH,wBAAgB,cAAc,CAC1B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,IAAI,EACV,kBAAkB,EAAE,SAAS,MAAM,EAAE,EACrC,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,EAClD,QAAQ,CAAC,EAAE,aAAa,GAAG,SAAS,GACrC,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CA4CjC;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAClC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,IAAI,EACV,kBAAkB,EAAE,SAAS,MAAM,EAAE,EACrC,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,EAClD,QAAQ,CAAC,EAAE,aAAa,GAAG,SAAS,GACrC;IAAE,IAAI,CAAC,IAAI,EAAE,OAAO,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAA;CAAE,CAyD1D"}
1
+ {"version":3,"file":"define_function.d.ts","sourceRoot":"","sources":["../../typescript_src/shared/define_function.ts"],"names":[],"mappings":"AAuBA,MAAM,MAAM,IAAI,GAAG,MAAM,GAAG,OAAO,CAAC;AAEpC,8EAA8E;AAC9E,eAAO,MAAM,KAAK,EAAE,OAAO,MAA6B,CAAC;AAEzD;;;;;;GAMG;AACH,MAAM,WAAW,aAAa;IAC1B,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACvC;AAkKD;;;;GAIG;AACH,wBAAgB,cAAc,CAC1B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,IAAI,EACV,kBAAkB,EAAE,SAAS,MAAM,EAAE,EACrC,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,EAClD,QAAQ,CAAC,EAAE,aAAa,GAAG,SAAS,GACrC,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CA4CjC;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAClC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,IAAI,EACV,kBAAkB,EAAE,SAAS,MAAM,EAAE,EACrC,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,EAClD,QAAQ,CAAC,EAAE,aAAa,GAAG,SAAS,GACrC;IAAE,IAAI,CAAC,IAAI,EAAE,OAAO,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAA;CAAE,CAyD1D"}
@@ -13,14 +13,13 @@
13
13
  import { getRuntime, newFunctionCall as nativeNewFunctionCall, } from '../native.js';
14
14
  import { encodeCallArgs, decodeCallResult } from './proto.js';
15
15
  import { attachCallContext } from './call_context.js';
16
- import { lowerTypeToWireTy } from './wire_ty.js';
16
+ import { BamlType, lowerTypeToWireTy } from './wire_ty.js';
17
17
  /** Sentinel for "argument not supplied" so optional kwargs can be skipped. */
18
18
  export const UNSET = Symbol('baml.UNSET');
19
19
  /**
20
20
  * Resolve the caller's `$types` option onto the callee's own generic params, in
21
- * declaration order. Mirrors Python's `_resolve_types_kwarg`: `$types` is an
22
- * object keyed by param name and is required iff the callee declares its own
23
- * generic params; it must bind exactly those params (no missing, no extras).
21
+ * declaration order. Omitted bindings are inferred by the engine; supplied
22
+ * names must belong to the callee.
24
23
  */
25
24
  function resolveTypesOption(typesOpt, typeParams) {
26
25
  if (typeParams.length === 0) {
@@ -30,27 +29,23 @@ function resolveTypesOption(typesOpt, typeParams) {
30
29
  }
31
30
  return [];
32
31
  }
33
- const example = `{ ${JSON.stringify(typeParams[0])}: 'int' }`;
34
32
  if (typesOpt === undefined || typesOpt === null) {
35
- throw new TypeError(`$types is required for this generic call: bind every type parameter in ` +
36
- `${JSON.stringify(typeParams)} with an object, e.g. $types: ${example}`);
33
+ return [];
37
34
  }
35
+ const example = `{ ${JSON.stringify(typeParams[0])}: 'int' }`;
38
36
  if (typeof typesOpt !== 'object' || Array.isArray(typesOpt)) {
39
37
  throw new TypeError(`$types must be an object mapping type-parameter names to types (e.g. ` +
40
38
  `$types: ${example}); got ${typeof typesOpt}`);
41
39
  }
42
40
  const obj = typesOpt;
43
- const missing = typeParams.filter((n) => !(n in obj));
44
- if (missing.length) {
45
- throw new TypeError(`$types is missing binding(s) for ${JSON.stringify(missing)}: every type parameter ` +
46
- `in ${JSON.stringify(typeParams)} must be bound.`);
47
- }
48
41
  const extra = Object.keys(obj).filter((k) => !typeParams.includes(k));
49
42
  if (extra.length) {
50
- throw new TypeError(`$types has unknown type parameter(s) ${JSON.stringify(extra)}; expected exactly ` +
43
+ throw new TypeError(`$types has unknown type parameter(s) ${JSON.stringify(extra)}; expected ` +
51
44
  `${JSON.stringify(typeParams)}.`);
52
45
  }
53
- return typeParams.map((n) => obj[n]);
46
+ return typeParams
47
+ .filter((name) => obj[name] !== undefined)
48
+ .map((name) => [name, obj[name]]);
54
49
  }
55
50
  /** The `$types` field of a generic receiver instance (its class TypeVar
56
51
  * bindings), or `undefined` when the receiver carries none. The TS analog of
@@ -77,20 +72,23 @@ function buildTypeArgs(self, typesOpt, typeParams, classTypeParams) {
77
72
  const classTypes = classTypeParams.length ? receiverTypes(self) : undefined;
78
73
  if (classTypes) {
79
74
  for (const name of classTypeParams) {
80
- wire.push([name, lowerTypeToWireTy(classTypes[name])]);
75
+ const token = classTypes[name];
76
+ if (token !== undefined) {
77
+ wire.push([name, token instanceof BamlType ? token : lowerTypeToWireTy(token)]);
78
+ }
81
79
  }
82
80
  }
83
81
  const resolved = resolveTypesOption(typesOpt, typeParams);
84
- if (typeParams.length > 0) {
82
+ if (resolved.length > 0) {
85
83
  if (classTypeParams.length && !classTypes) {
86
84
  // The method's own params sit after the class prefix in De Bruijn
87
85
  // order; without recovered class args we can't position them.
88
86
  throw new TypeError('$types on a generic method requires a generic receiver carrying its class type ' +
89
87
  'args (a `$types` field on the instance)');
90
88
  }
91
- typeParams.forEach((name, i) => {
92
- wire.push([name, lowerTypeToWireTy(resolved[i])]);
93
- });
89
+ for (const [name, token] of resolved) {
90
+ wire.push([name, token instanceof BamlType ? token : lowerTypeToWireTy(token)]);
91
+ }
94
92
  }
95
93
  return wire;
96
94
  }
@@ -1 +1 @@
1
- {"version":3,"file":"define_function.js","sourceRoot":"","sources":["../../typescript_src/shared/define_function.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"define_function.js","sourceRoot":"","sources":["../../typescript_src/shared/define_function.ts"],"names":[],"mappings":"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"}