@bjornpagen/bumbledb 0.3.0 → 0.4.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/COOKBOOK.md +66 -46
- package/README.md +28 -15
- package/dist/closed.d.ts +50 -73
- package/dist/closed.d.ts.map +1 -1
- package/dist/closed.js +38 -109
- package/dist/closed.js.map +1 -1
- package/dist/db.d.ts +4 -1
- package/dist/db.d.ts.map +1 -1
- package/dist/db.js +26 -3
- package/dist/db.js.map +1 -1
- package/dist/face.d.ts +39 -39
- package/dist/face.d.ts.map +1 -1
- package/dist/face.js +7 -16
- package/dist/face.js.map +1 -1
- package/dist/fields.d.ts +28 -14
- package/dist/fields.d.ts.map +1 -1
- package/dist/fields.js +15 -14
- package/dist/fields.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/marshal.d.ts +33 -6
- package/dist/marshal.d.ts.map +1 -1
- package/dist/marshal.js +67 -6
- package/dist/marshal.js.map +1 -1
- package/dist/query/atom.d.ts +59 -14
- package/dist/query/atom.d.ts.map +1 -1
- package/dist/query/atom.js +3 -0
- package/dist/query/atom.js.map +1 -1
- package/dist/query/lower.d.ts.map +1 -1
- package/dist/query/lower.js +251 -26
- package/dist/query/lower.js.map +1 -1
- package/dist/query/run.d.ts +15 -5
- package/dist/query/run.d.ts.map +1 -1
- package/dist/query/run.js +26 -6
- package/dist/query/run.js.map +1 -1
- package/dist/query/scope.d.ts +35 -13
- package/dist/query/scope.d.ts.map +1 -1
- package/dist/query/scope.js +16 -4
- package/dist/query/scope.js.map +1 -1
- package/dist/relation.d.ts +8 -7
- package/dist/relation.d.ts.map +1 -1
- package/dist/relation.js +32 -10
- package/dist/relation.js.map +1 -1
- package/dist/spec.d.ts +3 -2
- package/dist/spec.d.ts.map +1 -1
- package/dist/spec.js.map +1 -1
- package/dist/statements.d.ts +10 -4
- package/dist/statements.d.ts.map +1 -1
- package/dist/statements.js +79 -7
- package/dist/statements.js.map +1 -1
- package/package.json +2 -2
- package/src/closed.ts +72 -179
- package/src/db.ts +42 -5
- package/src/face.ts +34 -45
- package/src/fields.ts +46 -34
- package/src/index.ts +1 -2
- package/src/marshal.ts +74 -7
- package/src/query/atom.ts +58 -15
- package/src/query/lower.ts +301 -28
- package/src/query/run.ts +26 -6
- package/src/query/scope.ts +49 -15
- package/src/relation.ts +45 -17
- package/src/spec.ts +3 -2
- package/src/statements.ts +86 -7
package/dist/closed.js
CHANGED
|
@@ -1,55 +1,37 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Closed relations (`docs/architecture/10-data-model.md` § closed
|
|
3
3
|
* relations): a vocabulary whose extension is declared in the schema — two
|
|
4
|
-
* tiers, one function.
|
|
5
|
-
* macro's (host-enum analog): handle CONSTANTS on the value
|
|
6
|
-
* (`Kind.Checking`, ids = declaration order, each a BARE `bigint` — no
|
|
7
|
-
* brand), the `fromId` weld, an `id` field descriptor carrying the CLOSED
|
|
8
|
-
* LINKAGE (the roster — pure structure, no declared domain: the laws type
|
|
9
|
-
* the columns, and `schema()` names the id's generator class `"Kind.id"`)
|
|
10
|
-
* for other relations' field blocks (`kind: Kind.id`), payload readback
|
|
11
|
-
* (`Kind.axioms`), and the declared payload column descriptors
|
|
12
|
-
* (`Kind.columns` — the runtime twin of the `Cols` type parameter, which
|
|
13
|
-
* the face layer's structural wall reads). Bare tier: `closed("Kind", ["Checking",
|
|
4
|
+
* tiers, one function. Bare tier: `closed("Kind", ["Checking",
|
|
14
5
|
* "Savings"])`. Payload tier: `closed("Sev", { pages: bool }, { Critical:
|
|
15
6
|
* { pages: true }, ... })` — one call, three arguments (the curried tier-2
|
|
16
7
|
* spelling is DELETED — canonical utterance): the axioms record IS the
|
|
17
8
|
* handle declaration, every handle carrying every column exactly once
|
|
18
|
-
* (type-enforced).
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
*
|
|
9
|
+
* (type-enforced). At the host surface a handle is its NAME — a string
|
|
10
|
+
* literal of the roster's union (the drizzle law: translation, not
|
|
11
|
+
* abstraction; dispatch over a vocabulary is native `switch` narrowing, so
|
|
12
|
+
* no match operator is minted and no handle constants exist — the literal
|
|
13
|
+
* `"Checking"` is the ONE spelling). Handles are pure DATA, not properties
|
|
14
|
+
* of the value, so NO handle name is reserved: a vocabulary may legally
|
|
15
|
+
* contain handles named `match`, `where`, or `id` — the axioms record and
|
|
16
|
+
* the roster are their own namespaces. The value's whole surface: `name`;
|
|
17
|
+
* `id` — the field descriptor carrying the CLOSED LINKAGE (the roster —
|
|
18
|
+
* pure structure, no declared domain: the laws type the columns, and
|
|
19
|
+
* `schema()` names the id's generator class `"Kind.id"`) for other
|
|
20
|
+
* relations' field blocks (`kind: Kind.id`); `data` (the lowering
|
|
21
|
+
* carrier); `axioms` (payload readback, `Kind.axioms`); `columns` (the
|
|
22
|
+
* runtime twin of the `Cols` type parameter, which the face layer's
|
|
23
|
+
* structural wall reads); and — exactly when payload columns exist —
|
|
24
|
+
* `where()`, the ψ-selection surface (`Kind.where({ mastered: true })` as a
|
|
25
|
+
* face source), resolved through the ONE selection machine
|
|
26
|
+
* (`relation.ts::resolveSelection`); the bare tier has no payload columns
|
|
27
|
+
* to select on, so `.where` is absent there, at the type AND on the value.
|
|
28
|
+
* No fact type and no insert surface exist — closed relations are
|
|
29
|
+
* unwritable by construction: the value simply lacks the writable relation
|
|
30
|
+
* shape.
|
|
28
31
|
*/
|
|
29
32
|
import * as errors from "@superbuilders/errors";
|
|
30
33
|
import { assertDeclarationOrderKey, literalOf } from "#fields.ts";
|
|
31
34
|
import { resolveSelection } from "#relation.ts";
|
|
32
|
-
/**
|
|
33
|
-
* The value-surface property names a handle may not shadow — the macro's
|
|
34
|
-
* name-collision diagnostic, here over the closed value's own properties
|
|
35
|
-
* (`relation`/`selection` are reserved so a closed value can never be
|
|
36
|
-
* mistaken for a selected relation by `on()`'s discriminant; `where` is
|
|
37
|
-
* reserved because the payload tier mints the ψ-selection method under
|
|
38
|
-
* exactly that name; `match` because BOTH tiers mint the exhaustive
|
|
39
|
-
* dispatch under exactly that name).
|
|
40
|
-
*/
|
|
41
|
-
const reservedHandleNames = Object.freeze([
|
|
42
|
-
"name",
|
|
43
|
-
"id",
|
|
44
|
-
"data",
|
|
45
|
-
"axioms",
|
|
46
|
-
"columns",
|
|
47
|
-
"fromId",
|
|
48
|
-
"where",
|
|
49
|
-
"match",
|
|
50
|
-
"relation",
|
|
51
|
-
"selection"
|
|
52
|
-
]);
|
|
53
35
|
/** Narrows the two-tier second argument: a handle tuple (bare tier) or a column block (payload tier). */
|
|
54
36
|
function isHandleTuple(shape) {
|
|
55
37
|
return Array.isArray(shape);
|
|
@@ -80,17 +62,6 @@ function axiomsMinted(record, handles, cols) {
|
|
|
80
62
|
}));
|
|
81
63
|
});
|
|
82
64
|
}
|
|
83
|
-
/**
|
|
84
|
-
* The trusted seam of the handle-constant mint: every handle reads back as
|
|
85
|
-
* an own bigint — verified before the record is admitted at the constants
|
|
86
|
-
* type (a "__proto__"-named handle riding the object-protocol accessor
|
|
87
|
-
* would fail exactly this check).
|
|
88
|
-
*/
|
|
89
|
-
function constantsMinted(record, handles) {
|
|
90
|
-
return handles.every(function constantMinted(handle) {
|
|
91
|
-
return typeof record[handle] === "bigint";
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
65
|
/**
|
|
95
66
|
* Reads one handle's ground axiom row for lowering. The typed payload
|
|
96
67
|
* surface makes absence unrepresentable ({@link Axioms} carries every
|
|
@@ -121,18 +92,6 @@ function mintAxioms(name, handles, cols, axioms) {
|
|
|
121
92
|
}
|
|
122
93
|
return out;
|
|
123
94
|
}
|
|
124
|
-
/** Mints the handle constants: one own bigint per handle, ids = declaration order. */
|
|
125
|
-
function mintHandleConstants(name, handles) {
|
|
126
|
-
const out = {};
|
|
127
|
-
handles.forEach(function mintHandleConstant(handle, index) {
|
|
128
|
-
Object.defineProperty(out, handle, { value: BigInt(index), enumerable: true });
|
|
129
|
-
});
|
|
130
|
-
Object.freeze(out);
|
|
131
|
-
if (!constantsMinted(out, handles)) {
|
|
132
|
-
throw errors.new(`closed relation ${name}: handle-constant minting incomplete`);
|
|
133
|
-
}
|
|
134
|
-
return out;
|
|
135
|
-
}
|
|
136
95
|
function closed(name, shape, axioms) {
|
|
137
96
|
if (isHandleTuple(shape)) {
|
|
138
97
|
if (axioms !== undefined) {
|
|
@@ -168,24 +127,22 @@ function closedPayload(name, columns, axioms) {
|
|
|
168
127
|
return mintClosed(name, handles, columns, axioms);
|
|
169
128
|
}
|
|
170
129
|
/**
|
|
171
|
-
* The trusted seam of the ergonomic-surface mint: `
|
|
172
|
-
* own function
|
|
173
|
-
*
|
|
174
|
-
* (`
|
|
175
|
-
*
|
|
130
|
+
* The trusted seam of the ergonomic-surface mint: `where` reads back as an
|
|
131
|
+
* own function exactly when payload columns exist, and is ABSENT otherwise
|
|
132
|
+
* — the runtime twin of the {@link Closed} type's conditional arm
|
|
133
|
+
* (`ClosedCore` alone vs `ClosedCore & ClosedSelectable`), verified before
|
|
134
|
+
* the minted value is admitted at the conditional type.
|
|
176
135
|
*/
|
|
177
136
|
function surfaceMinted(value, cols) {
|
|
178
|
-
const matchable = "match" in value && typeof value.match === "function";
|
|
179
137
|
const selectable = "where" in value && typeof value.where === "function";
|
|
180
|
-
return
|
|
138
|
+
return cols.length > 0 ? selectable : !selectable;
|
|
181
139
|
}
|
|
182
140
|
/**
|
|
183
141
|
* Mints one closed relation value — the shared seam of both tiers, HONESTLY
|
|
184
142
|
* typed end to end (a wrong-shaped mint is a compile error here, not a
|
|
185
143
|
* laundered `unknown`): roster checks, eager axiom lowering, the
|
|
186
144
|
* roster-carrying `id` descriptor, the frozen `columns` carrier (the runtime
|
|
187
|
-
* twin of the `Cols` type parameter), the
|
|
188
|
-
* `match()` on both tiers, and — on the payload tier only — the
|
|
145
|
+
* twin of the `Cols` type parameter), and — on the payload tier only — the
|
|
189
146
|
* ψ-selection `where()`.
|
|
190
147
|
*/
|
|
191
148
|
function mintClosed(name, handles, columns, axioms) {
|
|
@@ -198,9 +155,6 @@ function mintClosed(name, handles, columns, axioms) {
|
|
|
198
155
|
throw errors.new(`closed relation ${name}: duplicate handle ${handle}`);
|
|
199
156
|
}
|
|
200
157
|
seen.add(handle);
|
|
201
|
-
if (reservedHandleNames.includes(handle)) {
|
|
202
|
-
throw errors.new(`closed relation ${name}: handle ${handle} collides with the closed value's own surface (${reservedHandleNames.join(", ")})`);
|
|
203
|
-
}
|
|
204
158
|
}
|
|
205
159
|
const handleList = Object.freeze([...handles]);
|
|
206
160
|
const roster = Object.freeze({ name, handles: handleList });
|
|
@@ -228,23 +182,16 @@ function mintClosed(name, handles, columns, axioms) {
|
|
|
228
182
|
});
|
|
229
183
|
const id = Object.freeze({ kind: "u64", closed: roster });
|
|
230
184
|
/**
|
|
231
|
-
* Handle names are arbitrary identifiers, so rows
|
|
232
|
-
*
|
|
233
|
-
*
|
|
234
|
-
*
|
|
235
|
-
*
|
|
236
|
-
*
|
|
237
|
-
* value whose type claims a bigint constant but reads back an object.
|
|
238
|
-
* (Object SPREAD is CreateDataProperty by spec, so the copies below are
|
|
239
|
-
* own-property safe for column names too.)
|
|
185
|
+
* Handle names are arbitrary identifiers, so axiom rows are minted with
|
|
186
|
+
* OWN-property definition (inside {@link mintAxioms}), never assignment:
|
|
187
|
+
* a handle named "__proto__" would otherwise ride the Object.prototype
|
|
188
|
+
* accessor — silently swapping the record's prototype instead of
|
|
189
|
+
* creating the row. (Object SPREAD is CreateDataProperty by spec, so the
|
|
190
|
+
* copies below are own-property safe for column names too.)
|
|
240
191
|
*/
|
|
241
192
|
const axiomsOut = mintAxioms(name, handleList, cols, axioms);
|
|
242
|
-
const constants = mintHandleConstants(name, handleList);
|
|
243
193
|
const columnsOut = { ...columns };
|
|
244
194
|
Object.freeze(columnsOut);
|
|
245
|
-
function fromId(idValue) {
|
|
246
|
-
return handleList[Number(idValue)];
|
|
247
|
-
}
|
|
248
195
|
const holder = { value: undefined };
|
|
249
196
|
/**
|
|
250
197
|
* The ψ selection: resolved against the declared payload columns through
|
|
@@ -262,26 +209,8 @@ function mintClosed(name, handles, columns, axioms) {
|
|
|
262
209
|
selection: resolveSelection(name, cols, Object.entries(selection))
|
|
263
210
|
});
|
|
264
211
|
}
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
* admits any bigint — a dishonest id is a THROW, never a misdispatch),
|
|
268
|
-
* and the chosen arm receives the handle's frozen axiom row (the bare
|
|
269
|
-
* tier's arms are typed to take nothing; the empty row rides along
|
|
270
|
-
* unread). One implementation serves both tiers — the conditional
|
|
271
|
-
* {@link Closed} arm claims the tier-exact arm signature and
|
|
272
|
-
* {@link surfaceMinted} is the trusted seam that admits it.
|
|
273
|
-
*/
|
|
274
|
-
function match(idValue, arms) {
|
|
275
|
-
const handle = fromId(idValue);
|
|
276
|
-
if (handle === undefined) {
|
|
277
|
-
throw errors.new(`closed relation ${name}: match on id ${idValue} misses the roster (${handleList.join(", ")})`);
|
|
278
|
-
}
|
|
279
|
-
return arms[handle](axiomsOut[handle]);
|
|
280
|
-
}
|
|
281
|
-
const core = { name, id, data, axioms: axiomsOut, columns: columnsOut, fromId };
|
|
282
|
-
const value = cols.length > 0
|
|
283
|
-
? Object.freeze({ ...constants, ...core, where, match })
|
|
284
|
-
: Object.freeze({ ...constants, ...core, match });
|
|
212
|
+
const core = { name, id, data, axioms: axiomsOut, columns: columnsOut };
|
|
213
|
+
const value = cols.length > 0 ? Object.freeze({ ...core, where }) : Object.freeze(core);
|
|
285
214
|
if (!surfaceMinted(value, cols)) {
|
|
286
215
|
throw errors.new(`closed relation ${name}: ergonomic-surface minting incomplete`);
|
|
287
216
|
}
|
package/dist/closed.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"closed.js","sourceRoot":"","sources":["../src/closed.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"closed.js","sourceRoot":"","sources":["../src/closed.ts"],"names":[],"mappings":"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"}
|
package/dist/db.d.ts
CHANGED
|
@@ -55,7 +55,10 @@ type DeclaredKeyFact<R extends AnyRelation, Projection extends readonly string[]
|
|
|
55
55
|
/**
|
|
56
56
|
* One offending fact of a violation: the cited relation's name (a member
|
|
57
57
|
* of the schema's record) and the fact decoded to a named natural-value
|
|
58
|
-
* object — partial exactly as the engine cites it.
|
|
58
|
+
* object — partial exactly as the engine cites it. Closed-referencing
|
|
59
|
+
* cells arrive as handle NAMES (the marshal bijection's read half), so the
|
|
60
|
+
* record and the violation's `canonical` string — which the engine already
|
|
61
|
+
* renders with handle names — agree on the one spelling.
|
|
59
62
|
*/
|
|
60
63
|
interface OffendingFact<Rels extends SchemaRelations> {
|
|
61
64
|
readonly relation: keyof Rels & string;
|
package/dist/db.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAIH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAGzC,OAAO,
|
|
1
|
+
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|
package/dist/db.js
CHANGED
|
@@ -33,7 +33,7 @@ import * as path from "node:path";
|
|
|
33
33
|
import * as errors from "@superbuilders/errors";
|
|
34
34
|
import { exhumeStore } from "#exhume.ts";
|
|
35
35
|
import { lower } from "#lower.ts";
|
|
36
|
-
import { factOf, isFreshField, isMintedFresh, keyRowOf, recordOf, rowOf } from "#marshal.ts";
|
|
36
|
+
import { factOf, handleOf, isFreshField, isMintedFresh, keyRowOf, recordOf, rowOf } from "#marshal.ts";
|
|
37
37
|
import { native } from "#native.ts";
|
|
38
38
|
import { lowerQuery } from "#query/lower.ts";
|
|
39
39
|
import { decodeAnswers, wireParams } from "#query/run.ts";
|
|
@@ -198,6 +198,21 @@ function orientationOf(reversed) {
|
|
|
198
198
|
}
|
|
199
199
|
return "written";
|
|
200
200
|
}
|
|
201
|
+
/**
|
|
202
|
+
* The declared field descriptors a violation's offending cells decode
|
|
203
|
+
* through: an ordinary relation's declared fields; a closed relation's
|
|
204
|
+
* SEALED shape — the roster-carrying synthetic `id` (the member's own
|
|
205
|
+
* reference descriptor) plus its payload columns (a `ClosedColumn` is
|
|
206
|
+
* structurally a `RelationField`). This is how {@link openDb}'s
|
|
207
|
+
* `offendingFactOf` reaches the open-time descriptors: the cited relation
|
|
208
|
+
* name resolves to the schema member, and the member carries them.
|
|
209
|
+
*/
|
|
210
|
+
function declaredFieldsOf(member) {
|
|
211
|
+
if ("axioms" in member) {
|
|
212
|
+
return [{ name: "id", field: member.id }, ...member.data.columns];
|
|
213
|
+
}
|
|
214
|
+
return member.data.fields;
|
|
215
|
+
}
|
|
201
216
|
/**
|
|
202
217
|
* Builds the id-resolution tables from the manifest, verifying the SDK's
|
|
203
218
|
* positional mirror against the engine's reported order — any drift
|
|
@@ -319,12 +334,20 @@ function openDb(handle, theory, manifest) {
|
|
|
319
334
|
return entry;
|
|
320
335
|
}
|
|
321
336
|
function offendingFactOf(fact) {
|
|
322
|
-
|
|
337
|
+
const entry = tables.relations.get(fact.relation);
|
|
338
|
+
if (entry === undefined || !isMemberName(fact.relation)) {
|
|
323
339
|
throw errors.new(`bumbledb violation cites unknown relation ${fact.relation}`);
|
|
324
340
|
}
|
|
341
|
+
const declared = declaredFieldsOf(entry.member);
|
|
325
342
|
const decoded = {};
|
|
326
343
|
for (const cell of fact.fields) {
|
|
327
|
-
|
|
344
|
+
const cited = declared.find(function byName(candidate) {
|
|
345
|
+
return candidate.name === cell.name;
|
|
346
|
+
});
|
|
347
|
+
decoded[cell.name] =
|
|
348
|
+
cited !== undefined && "closed" in cited.field
|
|
349
|
+
? handleOf(`violation fact ${fact.relation} field ${cell.name}`, cited.field.closed, cell.value)
|
|
350
|
+
: cell.value;
|
|
328
351
|
}
|
|
329
352
|
return Object.freeze({ relation: fact.relation, fact: Object.freeze(decoded) });
|
|
330
353
|
}
|
package/dist/db.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|
package/dist/face.d.ts
CHANGED
|
@@ -11,11 +11,12 @@
|
|
|
11
11
|
* positional: tuple order is preserved in the type, and the statement
|
|
12
12
|
* constructors pair the two sides' tuples by arity ({@link SameArity}) AND
|
|
13
13
|
* by structural shape ({@link SameShapes}) — every projected field's
|
|
14
|
-
* kind/width/element
|
|
15
|
-
* kernel: descriptors are pure structure
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
14
|
+
* kind/width/element/roster quadruple is read off the schema type (the
|
|
15
|
+
* minimal kernel: descriptors are pure structure, and a closed reference's
|
|
16
|
+
* roster IS part of that structure) and compared positionwise. There is no
|
|
17
|
+
* domain to compare at construction — domains are LAW-BORN: the statements
|
|
18
|
+
* themselves define the equivalence classes, and `schema()` is where they
|
|
19
|
+
* aggregate and get judged (the one-generator-per-class wall).
|
|
19
20
|
*/
|
|
20
21
|
import type { AnyClosed, AnySelectedClosed, PayloadField } from "#closed.ts";
|
|
21
22
|
import type { AnyField } from "#fields.ts";
|
|
@@ -29,21 +30,6 @@ import type { AnyRelation, AnySelected, FieldsShape, RelationFields, SelectionBi
|
|
|
29
30
|
* (and the projection tuple) straight off the statement type.
|
|
30
31
|
*/
|
|
31
32
|
type OwnerOf<S extends FaceSource> = S extends AnySelected | AnySelectedClosed ? S["relation"] : S;
|
|
32
|
-
/**
|
|
33
|
-
* A disjunctive literal set for a selection binding — `field == {A, B}`.
|
|
34
|
-
* The signature of {@link oneOf} demands two leading literals, so the
|
|
35
|
-
* one-element set (banned: it is the bare literal) and the empty set
|
|
36
|
-
* (banned: it selects nothing) are unwritable.
|
|
37
|
-
*/
|
|
38
|
-
interface OneOf<V> {
|
|
39
|
-
readonly literals: readonly [V, V, ...V[]];
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Constructs a literal set (read disjunctively) for a `where()` binding.
|
|
43
|
-
* Two leading arguments by signature: the degenerate sets have no spelling
|
|
44
|
-
* (the canonical-utterance law, `docs/architecture/70-api.md`).
|
|
45
|
-
*/
|
|
46
|
-
declare function oneOf<V>(first: V, second: V, ...rest: V[]): OneOf<V>;
|
|
47
33
|
/** The relation a face projects from — ordinary or closed. */
|
|
48
34
|
type FaceOwner = AnyRelation | AnyClosed;
|
|
49
35
|
/**
|
|
@@ -88,15 +74,22 @@ type FaceFields<S extends FaceSource> = S extends AnySelected ? keyof S["relatio
|
|
|
88
74
|
readonly axioms: Readonly<Record<string, infer Row>>;
|
|
89
75
|
} ? "id" | (keyof Row & string) : never;
|
|
90
76
|
/**
|
|
91
|
-
* One descriptor's structural comparand: the kind/width/element
|
|
92
|
-
* exactly the structure the minimal kernel carries
|
|
93
|
-
* engine's Q1 law pairs positions
|
|
94
|
-
* bound (bytes<16> vs bytes<32>
|
|
95
|
-
*
|
|
96
|
-
* domain and not a width, so
|
|
97
|
-
* (
|
|
98
|
-
*
|
|
99
|
-
* u64-vs-i64 interval
|
|
77
|
+
* One descriptor's structural comparand: the kind/width/element/roster
|
|
78
|
+
* quadruple — exactly the structure the minimal kernel carries. The first
|
|
79
|
+
* three slots compare exactly as the engine's Q1 law pairs positions
|
|
80
|
+
* (`schema/validate.rs`): a `bytes` width is bound (bytes<16> vs bytes<32>
|
|
81
|
+
* mismatch), while an INTERVAL width is FREE — the pointwise judgments
|
|
82
|
+
* quantify over points, which carry an element domain and not a width, so
|
|
83
|
+
* `interval(u64)` pairs with `interval(u64, 1n)` (recipe 9's extent/slot
|
|
84
|
+
* mirrors, recipe 29's mixed-width zones) and the width slot reads
|
|
85
|
+
* `undefined` for every interval. Elements stay bound: u64-vs-i64 interval
|
|
86
|
+
* pairs still mismatch. The ROSTER slot is SDK-only structure (the engine's
|
|
87
|
+
* wire carries plain u64s): a closed reference contributes its handle
|
|
88
|
+
* union, every other kind `undefined`, so a plain u64 face cannot pair with
|
|
89
|
+
* a closed `[id]` face — the vocabulary's own descriptor (`Kind.id`) is the
|
|
90
|
+
* ONE spelling of a closed reference at this surface, and a bare column
|
|
91
|
+
* cannot alias a vocabulary through a declared law. The runtime twin is the
|
|
92
|
+
* statement constructors' roster-identity walk (`statements.ts`).
|
|
100
93
|
*/
|
|
101
94
|
type ShapeOf<F extends AnyField> = readonly [
|
|
102
95
|
F["kind"],
|
|
@@ -107,7 +100,12 @@ type ShapeOf<F extends AnyField> = readonly [
|
|
|
107
100
|
} ? W : undefined,
|
|
108
101
|
F extends {
|
|
109
102
|
readonly element: infer E;
|
|
110
|
-
} ? E : undefined
|
|
103
|
+
} ? E : undefined,
|
|
104
|
+
F extends {
|
|
105
|
+
readonly closed: {
|
|
106
|
+
readonly handles: readonly (infer H extends string)[];
|
|
107
|
+
};
|
|
108
|
+
} ? H : undefined
|
|
111
109
|
];
|
|
112
110
|
/** One field's structural shape within a declared field block (`undefined` when the name is foreign). */
|
|
113
111
|
type ShapeIn<Fields extends FieldsShape, K extends string> = K extends keyof Fields ? ShapeOf<Fields[K]> : undefined;
|
|
@@ -154,10 +152,11 @@ type SameArity<A extends AnyFace, B extends AnyFace> = Arity<A> extends Arity<B>
|
|
|
154
152
|
* bijection, or window project structurally incompatible fields at any
|
|
155
153
|
* position, this type is intersected into the second face's parameter and
|
|
156
154
|
* names both shape tuples — a u64 face against a str face, a bytes width
|
|
157
|
-
* mismatch,
|
|
155
|
+
* mismatch, an interval element mismatch, or a bare column against a
|
|
156
|
+
* closed reference (the roster slot) is a COMPILE error.
|
|
158
157
|
*/
|
|
159
158
|
interface FaceShapeMismatch<Left, Right> {
|
|
160
|
-
readonly "face shape mismatch — positionwise kind, width, and
|
|
159
|
+
readonly "face shape mismatch — positionwise kind, width, element, and closed roster must be equal on both sides": readonly [
|
|
161
160
|
Left,
|
|
162
161
|
Right
|
|
163
162
|
];
|
|
@@ -166,11 +165,12 @@ interface FaceShapeMismatch<Left, Right> {
|
|
|
166
165
|
* Resolves to `unknown` (a no-op intersection) when the two faces project
|
|
167
166
|
* positionwise-equal structural shapes, and to {@link FaceShapeMismatch}
|
|
168
167
|
* otherwise. Equality is mutual tuple assignability over the
|
|
169
|
-
* kind/width/element
|
|
170
|
-
* deliberately: there is no domain to compare
|
|
171
|
-
*
|
|
172
|
-
*
|
|
173
|
-
*
|
|
168
|
+
* kind/width/element/roster quadruples. This is the whole
|
|
169
|
+
* construction-time wall — deliberately: there is no domain to compare
|
|
170
|
+
* here (the roster is descriptor STRUCTURE, not a domain). The domain wall
|
|
171
|
+
* lives where domains are BORN: `schema()` computes every field's class
|
|
172
|
+
* from the statement list and holds the one-generator-per-class law, and
|
|
173
|
+
* query joins compare class names off the schema type.
|
|
174
174
|
*/
|
|
175
175
|
type SameShapes<A extends AnyFace, B extends AnyFace> = FaceShapes<A> extends FaceShapes<B> ? FaceShapes<B> extends FaceShapes<A> ? unknown : FaceShapeMismatch<FaceShapes<A>, FaceShapes<B>> : FaceShapeMismatch<FaceShapes<A>, FaceShapes<B>>;
|
|
176
176
|
/**
|
|
@@ -191,6 +191,6 @@ declare function on<S extends FaceSource, const P extends readonly [FaceFields<S
|
|
|
191
191
|
* renderer's own shape, `schema/render.rs`).
|
|
192
192
|
*/
|
|
193
193
|
declare function renderFace(face: FaceData): string;
|
|
194
|
-
export type { AnyFace, Arity, Face, FaceArityMismatch, FaceData, FaceFields, FaceOwner, FaceShapeMismatch, FaceShapes, FaceSource,
|
|
195
|
-
export { on,
|
|
194
|
+
export type { AnyFace, Arity, Face, FaceArityMismatch, FaceData, FaceFields, FaceOwner, FaceShapeMismatch, FaceShapes, FaceSource, OwnerOf, SameArity, SameShapes };
|
|
195
|
+
export { on, renderFace };
|
|
196
196
|
//# sourceMappingURL=face.d.ts.map
|