@boundaryml/baml-bridge 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.
package/dist/wire_ty.js CHANGED
@@ -5,28 +5,82 @@
5
5
  * Proto: baml_language/crates/bridge_ctypes/types/baml_bridge/cffi/v1/*.proto
6
6
  * Build: cd baml_language/sdks/typescript/bridge_typescript && pnpm build:debug
7
7
  */
8
- // wire_ty.ts lower a host-supplied type token to a wire `Ty` (baml_type.proto).
9
- //
10
- // The Node analog of `python_type_to_wire_ty` / `_fill_wire_ty` in
11
- // sdks/python/src/baml_bridge/proto.py. Python recovers a generic instance's
12
- // concrete type args from Pydantic's runtime generic metadata and lowers
13
- // Python `type` objects (`int`, `str`, `Box[int]`, …) to a wire `Ty`. TypeScript
14
- // erases generics at runtime, so there is no metadata to recover and no `type`
15
- // object to inspect — the host must spell the binding explicitly. A generic
16
- // class instance carries its bindings in a `$types` field, and a generic
17
- // function/method call carries them in a `$types` call option; both hold
18
- // {@link BamlType} tokens that this module lowers.
19
- //
20
- // `undefined` / `null` (an absent binding) lowers to the unknown/top type —
21
- // the engine treats it as a wildcard, matching Python's `_fill_wire_ty(None)`.
8
+ // Host type tokens and opaque BEP-066 reflected type definitions.
22
9
  import { baml_bridge } from './proto/baml_cffi.js';
23
10
  import { getTypeMap } from './typemap.js';
24
11
  const TyPrimitiveKind = baml_bridge.cffi.v1.BamlTyPrimitiveKind;
12
+ const BamlTyDefMessage = baml_bridge.cffi.v1.BamlTyDef;
13
+ /** The bottom type (BAML `never`). */
14
+ export const Never = Symbol('baml.Never');
15
+ /** Internal row consumed by the generated `reflect.class.new` binding. */
16
+ export class BamlTypeMetadataRow {
17
+ ty;
18
+ alias;
19
+ description;
20
+ docstring;
21
+ other;
22
+ constructor(ty, alias, description, docstring, other = {}) {
23
+ this.ty = ty;
24
+ this.alias = alias;
25
+ this.description = description;
26
+ this.docstring = docstring;
27
+ this.other = other;
28
+ }
29
+ }
30
+ function cloneDefinition(definition) {
31
+ const message = BamlTyDefMessage.fromObject(definition);
32
+ return BamlTyDefMessage.decode(BamlTyDefMessage.encode(message).finish());
33
+ }
25
34
  /**
26
- * The bottom type (BAML `never`). Pass as a `$types` binding to bind a TypeVar
27
- * to `never`, mirroring Python's `_types={"T": Never}`.
35
+ * Opaque, process-local handle for a reflected BAML definition. Only the
36
+ * composing operations required by H-11 are public. Each wire occurrence
37
+ * carries a copied definition graph; JavaScript identity is never type
38
+ * identity.
28
39
  */
29
- export const Never = Symbol('baml.Never');
40
+ export class BamlType {
41
+ #definition;
42
+ constructor(definition) {
43
+ this.#definition = cloneDefinition(definition);
44
+ }
45
+ /** @internal Bridge/codegen hook; not a host inspection surface. */
46
+ static _fromWire(definition) {
47
+ return new BamlType(definition);
48
+ }
49
+ /** @internal Bridge hook returning a fresh protobuf graph. */
50
+ _wireCopy() {
51
+ return cloneDefinition(this.#definition);
52
+ }
53
+ static from(token) {
54
+ return token instanceof BamlType
55
+ ? token
56
+ : new BamlType({ root: lowerTypeToWireTy(token) });
57
+ }
58
+ meta(options = {}) {
59
+ return new BamlTypeMetadataRow(this, options.alias ?? null, options.description ?? null, options.docstring ?? null, { ...(options.other ?? {}) });
60
+ }
61
+ array() {
62
+ const definition = this._wireCopy();
63
+ definition.root = { list: { item: definition.root } };
64
+ return new BamlType(definition);
65
+ }
66
+ optional() {
67
+ const definition = this._wireCopy();
68
+ definition.root = { optional: { inner: definition.root } };
69
+ return new BamlType(definition);
70
+ }
71
+ toJSON() {
72
+ throw new TypeError('BamlType values are runtime handles and cannot be serialized');
73
+ }
74
+ toString() {
75
+ return 'BamlType(<opaque>)';
76
+ }
77
+ }
78
+ /** Runtime member installed as generated `reflect.type`. */
79
+ export const reflectType = Object.freeze({
80
+ of(token) {
81
+ return BamlType.from(token);
82
+ },
83
+ });
30
84
  const PRIMITIVE_KIND = {
31
85
  int: TyPrimitiveKind.BAML_TY_PRIMITIVE_INT,
32
86
  float: TyPrimitiveKind.BAML_TY_PRIMITIVE_FLOAT,
@@ -36,53 +90,67 @@ const PRIMITIVE_KIND = {
36
90
  bytes: TyPrimitiveKind.BAML_TY_PRIMITIVE_BYTES,
37
91
  bigint: TyPrimitiveKind.BAML_TY_PRIMITIVE_BIGINT,
38
92
  };
39
- /**
40
- * Lower a {@link BamlType} token to a wire `BamlTy` (an `IBamlTy` plain object the
41
- * protobufjs `fromObject` path accepts). Mirrors `_fill_wire_ty`: an
42
- * unrecognized or absent token leaves the unknown/top type, which binds
43
- * nothing.
44
- */
93
+ function unsupported(token) {
94
+ const rendered = typeof token === 'function'
95
+ ? token.name || '<anonymous constructor>'
96
+ : Object.prototype.toString.call(token);
97
+ throw new TypeError(`unsupported TypeScript type token: ${rendered}`);
98
+ }
99
+ /** Lower a statically-known token to a sparse wire `BamlTy`. */
45
100
  export function lowerTypeToWireTy(token) {
46
- // Absent binding → unknown/top (matches Python's `_fill_wire_ty(None)`).
47
- if (token === null || token === undefined) {
48
- return { unknown: {} };
49
- }
50
- // Bottom type.
51
- if (token === Never) {
101
+ if (token === Never)
52
102
  return { never: {} };
53
- }
54
- // Primitive spelling.
103
+ if (token === String)
104
+ return { primitive: { kind: PRIMITIVE_KIND.string } };
105
+ if (token === Boolean)
106
+ return { primitive: { kind: PRIMITIVE_KIND.bool } };
107
+ if (token === BigInt)
108
+ return { primitive: { kind: PRIMITIVE_KIND.bigint } };
109
+ if (token === Uint8Array)
110
+ return { primitive: { kind: PRIMITIVE_KIND.bytes } };
55
111
  if (typeof token === 'string') {
56
112
  const kind = PRIMITIVE_KIND[token];
57
- if (kind !== undefined) {
113
+ if (kind !== undefined)
58
114
  return { primitive: { kind } };
59
- }
60
- return { unknown: {} };
115
+ return unsupported(token);
61
116
  }
62
- // A bare class constructor → that class, no concrete args.
63
117
  if (typeof token === 'function') {
64
- return classWireTy(token, []);
118
+ return namedWireTy(token, []);
65
119
  }
66
- if (typeof token === 'object') {
67
- if ('class' in token) {
68
- return classWireTy(token.class, token.args ?? []);
120
+ if (token !== null && typeof token === 'object') {
121
+ const shape = token;
122
+ if ('__baml_interface_fqn__' in shape) {
123
+ const name = shape.__baml_interface_fqn__;
124
+ if (typeof name !== 'string' || !name)
125
+ return unsupported(token);
126
+ return { interface: { name } };
69
127
  }
70
- if ('list' in token) {
71
- return { list: { item: lowerTypeToWireTy(token.list) } };
128
+ if ('class' in shape) {
129
+ const args = shape.args === undefined ? [] : shape.args;
130
+ if (!Array.isArray(args))
131
+ return unsupported(token);
132
+ return namedWireTy(shape.class, args);
72
133
  }
73
- if ('map' in token) {
74
- const [k, v] = token.map;
75
- return { map: { key: lowerTypeToWireTy(k), value: lowerTypeToWireTy(v) } };
134
+ if ('list' in shape)
135
+ return { list: { item: lowerTypeToWireTy(shape.list) } };
136
+ if ('map' in shape) {
137
+ if (!Array.isArray(shape.map) || shape.map.length !== 2)
138
+ return unsupported(token);
139
+ const [key, value] = shape.map;
140
+ return { map: { key: lowerTypeToWireTy(key), value: lowerTypeToWireTy(value) } };
76
141
  }
77
- if ('optional' in token) {
78
- return { optional: { inner: lowerTypeToWireTy(token.optional) } };
79
- }
80
- if ('union' in token) {
81
- return { union: { options: token.union.map(lowerTypeToWireTy) } };
142
+ if ('optional' in shape)
143
+ return { optional: { inner: lowerTypeToWireTy(shape.optional) } };
144
+ if ('union' in shape) {
145
+ if (!Array.isArray(shape.union))
146
+ return unsupported(token);
147
+ return { union: { options: shape.union.map(lowerTypeToWireTy) } };
82
148
  }
149
+ const fqn = getTypeMap().jsTypeToBamlType(token);
150
+ if (fqn)
151
+ return { enum: { name: fqn } };
83
152
  }
84
- // Unrecognized: leave as unknown/top (binds nothing).
85
- return { unknown: {} };
153
+ return unsupported(token);
86
154
  }
87
155
  const TY_PRIMITIVE_TOKEN = {
88
156
  [TyPrimitiveKind.BAML_TY_PRIMITIVE_INT]: 'int',
@@ -93,55 +161,55 @@ const TY_PRIMITIVE_TOKEN = {
93
161
  [TyPrimitiveKind.BAML_TY_PRIMITIVE_BYTES]: 'bytes',
94
162
  [TyPrimitiveKind.BAML_TY_PRIMITIVE_BIGINT]: 'bigint',
95
163
  };
96
- /**
97
- * Decode a wire `Ty` (baml_type.proto) back to a {@link BamlType} token — the
98
- * exact inverse of {@link lowerTypeToWireTy}, used to repopulate a generic
99
- * instance's `$types` field on decode. Mirrors the engine's
100
- * `ty_encode::runtime_ty_to_proto_ty` and Python's `_ty_to_python_type`.
101
- * Positions with no concrete JS binding (a structural union, an enum, a type
102
- * variable, an opaque/runtime-only type) decode to `undefined`, i.e. an unbound
103
- * wildcard.
104
- */
105
- export function outboundTyToBamlType(ty) {
164
+ /** Decode the sparse value-level type channel on generated class instances. */
165
+ export function outboundTyToBamlTypeToken(ty) {
106
166
  if (!ty)
107
167
  return undefined;
108
- if (ty.primitive) {
109
- return TY_PRIMITIVE_TOKEN[ty.primitive.kind ?? -1] ?? undefined;
168
+ if (ty.primitive)
169
+ return TY_PRIMITIVE_TOKEN[ty.primitive.kind ?? -1];
170
+ if (ty.list) {
171
+ const item = outboundTyToBamlTypeToken(ty.list.item);
172
+ return item === undefined ? undefined : { list: item };
110
173
  }
111
- if (ty.list)
112
- return { list: outboundTyToBamlType(ty.list.item) };
113
174
  if (ty.map) {
114
- return { map: [outboundTyToBamlType(ty.map.key), outboundTyToBamlType(ty.map.value)] };
175
+ const key = outboundTyToBamlTypeToken(ty.map.key);
176
+ const value = outboundTyToBamlTypeToken(ty.map.value);
177
+ return key === undefined || value === undefined ? undefined : { map: [key, value] };
178
+ }
179
+ if (ty.optional) {
180
+ const inner = outboundTyToBamlTypeToken(ty.optional.inner);
181
+ return inner === undefined ? undefined : { optional: inner };
115
182
  }
116
- if (ty.optional)
117
- return { optional: outboundTyToBamlType(ty.optional.inner) };
118
183
  if (ty.classTy) {
119
- const fqn = ty.classTy.name ?? '';
120
- const args = (ty.classTy.typeArgs ?? []).map((a) => outboundTyToBamlType(a));
121
- let ctor;
184
+ const token = resolveNamedToken(ty.classTy.name ?? '');
185
+ if (typeof token !== 'function')
186
+ return undefined;
187
+ const args = (ty.classTy.typeArgs ?? []).map(outboundTyToBamlTypeToken);
188
+ if (args.some((arg) => arg === undefined))
189
+ return undefined;
190
+ return args.length ? { class: token, args: args } : token;
191
+ }
192
+ if (ty.enum)
193
+ return resolveNamedToken(ty.enum.name ?? '');
194
+ return undefined;
195
+ }
196
+ function resolveNamedToken(fqn) {
197
+ try {
198
+ return getTypeMap().getClass(fqn);
199
+ }
200
+ catch {
122
201
  try {
123
- ctor = getTypeMap().getClass(fqn);
202
+ return getTypeMap().getEnum(fqn);
124
203
  }
125
204
  catch {
126
- ctor = undefined; // unmapped FQN — leave unbound
127
- }
128
- if (!ctor)
129
205
  return undefined;
130
- return args.length ? { class: ctor, args } : ctor;
206
+ }
131
207
  }
132
- // union / enum / literal / media / type_var / unknown / any other →
133
- // unbound wildcard (a structural union is unbound for `class<args>`).
134
- return undefined;
135
208
  }
136
- /** Build a `class_ty` wire `Ty` for a codegen class constructor and its
137
- * concrete generic args. The FQN comes from the typemap reverse map; an
138
- * unmapped constructor lowers to unknown so it can't manufacture a bogus
139
- * class reference. */
140
- function classWireTy(ctor, args) {
141
- const fqn = getTypeMap().jsTypeToBamlType(ctor);
142
- if (!fqn) {
143
- return { unknown: {} };
144
- }
209
+ function namedWireTy(token, args) {
210
+ const fqn = getTypeMap().jsTypeToBamlType(token);
211
+ if (!fqn)
212
+ return unsupported(token);
145
213
  return { classTy: { name: fqn, typeArgs: args.map(lowerTypeToWireTy) } };
146
214
  }
147
215
  //# sourceMappingURL=wire_ty.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"wire_ty.js","sourceRoot":"","sources":["../typescript_src/wire_ty.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wire_ty.js","sourceRoot":"","sources":["../typescript_src/wire_ty.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@boundaryml/baml-bridge",
3
- "version": "0.16.0",
3
+ "version": "0.17.0",
4
4
  "type": "module",
5
5
  "repository": {
6
6
  "type": "git",
@@ -60,13 +60,13 @@
60
60
  "protobufjs": "^7.6.2"
61
61
  },
62
62
  "optionalDependencies": {
63
- "@boundaryml/baml-bridge-darwin-x64": "0.16.0",
64
- "@boundaryml/baml-bridge-darwin-arm64": "0.16.0",
65
- "@boundaryml/baml-bridge-linux-x64-gnu": "0.16.0",
66
- "@boundaryml/baml-bridge-linux-x64-musl": "0.16.0",
67
- "@boundaryml/baml-bridge-linux-arm64-gnu": "0.16.0",
68
- "@boundaryml/baml-bridge-linux-arm64-musl": "0.16.0",
69
- "@boundaryml/baml-bridge-win32-x64-msvc": "0.16.0",
70
- "@boundaryml/baml-bridge-win32-arm64-msvc": "0.16.0"
63
+ "@boundaryml/baml-bridge-darwin-x64": "0.17.0",
64
+ "@boundaryml/baml-bridge-darwin-arm64": "0.17.0",
65
+ "@boundaryml/baml-bridge-linux-x64-gnu": "0.17.0",
66
+ "@boundaryml/baml-bridge-linux-x64-musl": "0.17.0",
67
+ "@boundaryml/baml-bridge-linux-arm64-gnu": "0.17.0",
68
+ "@boundaryml/baml-bridge-linux-arm64-musl": "0.17.0",
69
+ "@boundaryml/baml-bridge-win32-x64-msvc": "0.17.0",
70
+ "@boundaryml/baml-bridge-win32-arm64-msvc": "0.17.0"
71
71
  }
72
72
  }