@bjornpagen/bumbledb 0.2.0 → 0.3.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 +462 -406
- package/README.md +66 -31
- package/dist/closed.d.ts +121 -25
- package/dist/closed.d.ts.map +1 -1
- package/dist/closed.js +108 -42
- package/dist/closed.js.map +1 -1
- package/dist/db.d.ts +12 -1
- package/dist/db.d.ts.map +1 -1
- package/dist/db.js +20 -5
- package/dist/db.js.map +1 -1
- package/dist/face.d.ts +100 -55
- package/dist/face.d.ts.map +1 -1
- package/dist/face.js +36 -10
- package/dist/face.js.map +1 -1
- package/dist/fields.d.ts +50 -79
- package/dist/fields.d.ts.map +1 -1
- package/dist/fields.js +20 -53
- package/dist/fields.js.map +1 -1
- package/dist/index.d.ts +17 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -6
- package/dist/index.js.map +1 -1
- package/dist/law.d.ts +224 -0
- package/dist/law.d.ts.map +1 -0
- package/dist/law.js +224 -0
- package/dist/law.js.map +1 -0
- package/dist/lower.d.ts +17 -10
- package/dist/lower.d.ts.map +1 -1
- package/dist/lower.js +34 -23
- package/dist/lower.js.map +1 -1
- package/dist/native.d.ts +6 -2
- package/dist/native.d.ts.map +1 -1
- package/dist/native.js.map +1 -1
- package/dist/query/atom.d.ts +88 -50
- package/dist/query/atom.d.ts.map +1 -1
- package/dist/query/atom.js +4 -1
- package/dist/query/atom.js.map +1 -1
- package/dist/query/lower.d.ts +71 -56
- package/dist/query/lower.d.ts.map +1 -1
- package/dist/query/lower.js +90 -43
- package/dist/query/lower.js.map +1 -1
- package/dist/query/predicate.d.ts +10 -9
- package/dist/query/predicate.d.ts.map +1 -1
- package/dist/query/predicate.js +2 -2
- package/dist/query/predicate.js.map +1 -1
- package/dist/query/scope.d.ts +76 -41
- package/dist/query/scope.d.ts.map +1 -1
- package/dist/query/scope.js +77 -30
- package/dist/query/scope.js.map +1 -1
- package/dist/query/select.d.ts +5 -5
- package/dist/query/select.d.ts.map +1 -1
- package/dist/relation.d.ts +21 -8
- package/dist/relation.d.ts.map +1 -1
- package/dist/relation.js +13 -7
- package/dist/relation.js.map +1 -1
- package/dist/schema.d.ts +41 -3
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +16 -2
- package/dist/schema.js.map +1 -1
- package/dist/spec.d.ts +7 -6
- package/dist/spec.d.ts.map +1 -1
- package/dist/spec.js.map +1 -1
- package/dist/statements.d.ts +61 -31
- package/dist/statements.d.ts.map +1 -1
- package/dist/statements.js +22 -17
- package/dist/statements.js.map +1 -1
- package/package.json +2 -2
- package/src/closed.ts +243 -68
- package/src/db.ts +23 -5
- package/src/face.ts +162 -84
- package/src/fields.ts +57 -136
- package/src/index.ts +42 -16
- package/src/law.ts +519 -0
- package/src/lower.ts +36 -23
- package/src/native.ts +6 -2
- package/src/query/atom.ts +105 -58
- package/src/query/lower.ts +271 -139
- package/src/query/predicate.ts +43 -33
- package/src/query/scope.ts +125 -49
- package/src/query/select.ts +5 -5
- package/src/relation.ts +15 -9
- package/src/schema.ts +48 -7
- package/src/spec.ts +7 -6
- package/src/statements.ts +83 -43
package/dist/db.d.ts
CHANGED
|
@@ -306,6 +306,17 @@ interface Db<Rels extends SchemaRelations> {
|
|
|
306
306
|
*/
|
|
307
307
|
prepare<Row, Params extends ParamsRecord>(q: Query<Rels, Row, Params>): Prepared<Rels, Row, Params>;
|
|
308
308
|
}
|
|
309
|
+
/**
|
|
310
|
+
* The engine twin of the schema-level class wall, as a matchable value
|
|
311
|
+
* (`errors.is`): the shared lowering rejected a spec whose statement pairs
|
|
312
|
+
* faces with disagreeing newtype labels — the faces of a dependency agree
|
|
313
|
+
* on their newtype, or neither carries one. UNREACHABLE through the typed
|
|
314
|
+
* builder (the SDK computes every label from the laws, so its lowered
|
|
315
|
+
* specs cohere by construction); a raw spec handed to the bridge is the
|
|
316
|
+
* one road here, and the runtime referee that proves the engine judges
|
|
317
|
+
* what the types claim.
|
|
318
|
+
*/
|
|
319
|
+
declare const ErrNewtypeMismatch: Error;
|
|
309
320
|
/**
|
|
310
321
|
* The store lifecycle — `Db.create(path, schema)` / `Db.open(path, schema)`.
|
|
311
322
|
* Create refuses an already-initialized directory; open verifies format
|
|
@@ -345,5 +356,5 @@ declare const Db: Readonly<{
|
|
|
345
356
|
exhume(storePath: string): Promise<Exhumed>;
|
|
346
357
|
}>;
|
|
347
358
|
export type { Abandon, DeclaredKeyFact, DeltaBuild, MemberRelation, OffendingFact, Prepared, ReadScope, Tx, Violation, WitnessedWriteResult, WriteResult };
|
|
348
|
-
export { abandon, Db };
|
|
359
|
+
export { abandon, Db, ErrNewtypeMismatch };
|
|
349
360
|
//# sourceMappingURL=db.d.ts.map
|
package/dist/db.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|
package/dist/db.js
CHANGED
|
@@ -936,16 +936,28 @@ process.once("exit", function closeCachedStores() {
|
|
|
936
936
|
}
|
|
937
937
|
}
|
|
938
938
|
});
|
|
939
|
+
/**
|
|
940
|
+
* The engine twin of the schema-level class wall, as a matchable value
|
|
941
|
+
* (`errors.is`): the shared lowering rejected a spec whose statement pairs
|
|
942
|
+
* faces with disagreeing newtype labels — the faces of a dependency agree
|
|
943
|
+
* on their newtype, or neither carries one. UNREACHABLE through the typed
|
|
944
|
+
* builder (the SDK computes every label from the laws, so its lowered
|
|
945
|
+
* specs cohere by construction); a raw spec handed to the bridge is the
|
|
946
|
+
* one road here, and the runtime referee that proves the engine judges
|
|
947
|
+
* what the types claim.
|
|
948
|
+
*/
|
|
949
|
+
const ErrNewtypeMismatch = errors.new("bumbledb newtypeMismatch: a statement pairs faces whose newtypes disagree — the faces of a dependency agree on their newtype, or neither carries one");
|
|
939
950
|
/**
|
|
940
951
|
* The one admission path both verbs share: canonical-path cache lookup
|
|
941
952
|
* first (a hit returns the SAME `Db` value for the identical theory, a
|
|
942
953
|
* typed fingerprint error for a different one, and a typed refusal for
|
|
943
954
|
* `create` — the store a cache entry proves initialized is exactly what
|
|
944
955
|
* create refuses). On a miss: lower the theory, run one bridge call, and
|
|
945
|
-
* wrap the
|
|
946
|
-
* validation, every issue in one message)
|
|
947
|
-
*
|
|
948
|
-
*
|
|
956
|
+
* wrap the domain refusals — `schemaError` (spec resolution + schema
|
|
957
|
+
* validation, every issue in one message), `newtypeMismatch` (the
|
|
958
|
+
* coherence wall, {@link ErrNewtypeMismatch}), and `fingerprintMismatch`
|
|
959
|
+
* (a different theory cannot open the store) — into typed errors carrying
|
|
960
|
+
* the engine's message intact.
|
|
949
961
|
*/
|
|
950
962
|
function admit(verb, storePath, theory) {
|
|
951
963
|
const canonical = path.resolve(storePath);
|
|
@@ -967,6 +979,9 @@ function admit(verb, storePath, theory) {
|
|
|
967
979
|
return native.dbOpen(canonical, spec);
|
|
968
980
|
});
|
|
969
981
|
if (!opened.ok) {
|
|
982
|
+
if (opened.kind === "newtypeMismatch") {
|
|
983
|
+
throw errors.wrap(ErrNewtypeMismatch, `${verb} ${canonical}: ${opened.message}`);
|
|
984
|
+
}
|
|
970
985
|
throw errors.new(`bumbledb ${opened.kind} (${verb} ${canonical}): ${opened.message}`);
|
|
971
986
|
}
|
|
972
987
|
const manifest = bridged("fetch bumbledb manifest", function fetchManifest() {
|
|
@@ -1020,5 +1035,5 @@ const Db = Object.freeze({
|
|
|
1020
1035
|
return exhumeStore(path.resolve(storePath));
|
|
1021
1036
|
}
|
|
1022
1037
|
});
|
|
1023
|
-
export { abandon, Db };
|
|
1038
|
+
export { abandon, Db, ErrNewtypeMismatch };
|
|
1024
1039
|
//# sourceMappingURL=db.js.map
|
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
|
@@ -4,16 +4,31 @@
|
|
|
4
4
|
* position, `on(Booking, ["room", "during"])` the composite/pointwise
|
|
5
5
|
* position (one spelling, arity-generic), `on(Account.where({ kind:
|
|
6
6
|
* Kind.Savings }), "id")` the σ-carrying source, `on(Kind, "id")` a closed
|
|
7
|
-
* relation's sealed shape opened through its synthetic `id
|
|
7
|
+
* relation's sealed shape opened through its synthetic `id`,
|
|
8
|
+
* `on(Kind.where({ mastered: true }), "id")` the ψ-selected closed source
|
|
9
|
+
* (the selection lowered as-is — the ENGINE folds it against the sealed
|
|
10
|
+
* extension at validate, never the SDK). Projection is
|
|
8
11
|
* positional: tuple order is preserved in the type, and the statement
|
|
9
12
|
* constructors pair the two sides' tuples by arity ({@link SameArity}) AND
|
|
10
|
-
* by
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
13
|
+
* by structural shape ({@link SameShapes}) — every projected field's
|
|
14
|
+
* kind/width/element triple is read off the schema type (the minimal
|
|
15
|
+
* kernel: descriptors are pure structure) and compared positionwise. There
|
|
16
|
+
* is no domain to compare at construction — domains are LAW-BORN: the
|
|
17
|
+
* statements themselves define the equivalence classes, and `schema()` is
|
|
18
|
+
* where they aggregate and get judged (the one-generator-per-class wall).
|
|
14
19
|
*/
|
|
15
|
-
import type { AnyClosed, PayloadField } from "#closed.ts";
|
|
20
|
+
import type { AnyClosed, AnySelectedClosed, PayloadField } from "#closed.ts";
|
|
21
|
+
import type { AnyField } from "#fields.ts";
|
|
16
22
|
import type { AnyRelation, AnySelected, FieldsShape, RelationFields, SelectionBinding } from "#relation.ts";
|
|
23
|
+
/**
|
|
24
|
+
* The OWNER a face source resolves to: a selected relation — ordinary σ or
|
|
25
|
+
* closed ψ, one shape — projects from its underlying relation; a bare
|
|
26
|
+
* relation or closed relation is its own owner. The type-level twin of
|
|
27
|
+
* {@link faceParts}'s split, and what a statement's face `data` carries at
|
|
28
|
+
* its EXACT type — `schema()`'s law-typing reads the owner's literal name
|
|
29
|
+
* (and the projection tuple) straight off the statement type.
|
|
30
|
+
*/
|
|
31
|
+
type OwnerOf<S extends FaceSource> = S extends AnySelected | AnySelectedClosed ? S["relation"] : S;
|
|
17
32
|
/**
|
|
18
33
|
* A disjunctive literal set for a selection binding — `field == {A, B}`.
|
|
19
34
|
* The signature of {@link oneOf} demands two leading literals, so the
|
|
@@ -31,10 +46,17 @@ interface OneOf<V> {
|
|
|
31
46
|
declare function oneOf<V>(first: V, second: V, ...rest: V[]): OneOf<V>;
|
|
32
47
|
/** The relation a face projects from — ordinary or closed. */
|
|
33
48
|
type FaceOwner = AnyRelation | AnyClosed;
|
|
34
|
-
/**
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
49
|
+
/**
|
|
50
|
+
* A face's runtime description: owner, π (written order), σ (resolved
|
|
51
|
+
* bindings). Generic over the owner and projection so a STATEMENT value
|
|
52
|
+
* carries its paired coordinates at their exact types — the honest runtime
|
|
53
|
+
* properties (`owner.name`, `projection`) ARE the type-level carrier
|
|
54
|
+
* `schema()`'s law-typing reads; the defaults are the wide shape every
|
|
55
|
+
* renderer and lowering walk consumes.
|
|
56
|
+
*/
|
|
57
|
+
interface FaceData<O extends FaceOwner = FaceOwner, P extends readonly string[] = readonly string[]> {
|
|
58
|
+
readonly owner: O;
|
|
59
|
+
readonly projection: P;
|
|
38
60
|
readonly selection: readonly SelectionBinding[];
|
|
39
61
|
}
|
|
40
62
|
/**
|
|
@@ -42,53 +64,72 @@ interface FaceData {
|
|
|
42
64
|
* selected relation, or closed relation `on()` was handed — the statement
|
|
43
65
|
* constructors resolve each projected field's DOMAIN through it), and `P`
|
|
44
66
|
* is the projection tuple as written (its length is the positional-pairing
|
|
45
|
-
* arity). Both are honest runtime properties, not phantoms
|
|
67
|
+
* arity). Both are honest runtime properties, not phantoms — and `data`
|
|
68
|
+
* carries the resolved owner at its exact type, which is what a statement
|
|
69
|
+
* value hands to `schema()`'s law-typing.
|
|
46
70
|
*/
|
|
47
71
|
interface Face<S extends FaceSource, P extends readonly string[]> {
|
|
48
72
|
readonly source: S;
|
|
49
73
|
readonly projection: P;
|
|
50
|
-
readonly data: FaceData
|
|
74
|
+
readonly data: FaceData<OwnerOf<S>, P>;
|
|
51
75
|
}
|
|
52
76
|
/** Any face value, whatever its source and projection. */
|
|
53
77
|
type AnyFace = Face<FaceSource, readonly string[]>;
|
|
54
|
-
/** What `on()` accepts: a relation, a
|
|
55
|
-
type FaceSource = AnyRelation | AnyClosed | AnySelected;
|
|
78
|
+
/** What `on()` accepts: a relation, a closed relation, or either with a selection applied. */
|
|
79
|
+
type FaceSource = AnyRelation | AnyClosed | AnySelected | AnySelectedClosed;
|
|
56
80
|
/**
|
|
57
81
|
* The field names a face over `S` may project: a relation's declared
|
|
58
82
|
* fields; a selected relation's underlying fields; a closed relation's
|
|
59
|
-
* SEALED shape — the synthetic `id` plus its declared payload columns
|
|
60
|
-
* (`docs/architecture/70-api.md`: statement field
|
|
61
|
-
* shape).
|
|
83
|
+
* SEALED shape — the synthetic `id` plus its declared payload columns,
|
|
84
|
+
* bare or ψ-selected alike (`docs/architecture/70-api.md`: statement field
|
|
85
|
+
* names address the sealed shape).
|
|
62
86
|
*/
|
|
63
|
-
type FaceFields<S extends FaceSource> = S extends AnySelected ? keyof S["relation"]["fields"] & string : S extends AnyRelation ? keyof S["fields"] & string : S extends {
|
|
87
|
+
type FaceFields<S extends FaceSource> = S extends AnySelected ? keyof S["relation"]["fields"] & string : S extends AnySelectedClosed ? "id" | (keyof S["relation"]["columns"] & string) : S extends AnyRelation ? keyof S["fields"] & string : S extends {
|
|
64
88
|
readonly axioms: Readonly<Record<string, infer Row>>;
|
|
65
89
|
} ? "id" | (keyof Row & string) : never;
|
|
66
|
-
/** One field's domain label within a declared field block (`undefined` when the name is foreign). */
|
|
67
|
-
type DomainIn<Fields extends FieldsShape, K extends string> = K extends keyof Fields ? Fields[K]["domain"] : undefined;
|
|
68
90
|
/**
|
|
69
|
-
*
|
|
70
|
-
*
|
|
71
|
-
*
|
|
72
|
-
*
|
|
73
|
-
*
|
|
74
|
-
*
|
|
75
|
-
*
|
|
76
|
-
*
|
|
77
|
-
*
|
|
78
|
-
* which stays the final authority.
|
|
91
|
+
* One descriptor's structural comparand: the kind/width/element triple —
|
|
92
|
+
* exactly the structure the minimal kernel carries, compared exactly as the
|
|
93
|
+
* engine's Q1 law pairs positions (`schema/validate.rs`): a `bytes` width is
|
|
94
|
+
* bound (bytes<16> vs bytes<32> mismatch), while an INTERVAL width is FREE —
|
|
95
|
+
* the pointwise judgments quantify over points, which carry an element
|
|
96
|
+
* domain and not a width, so `interval(u64)` pairs with `interval(u64, 1n)`
|
|
97
|
+
* (recipe 9's extent/slot mirrors, recipe 29's mixed-width zones) and the
|
|
98
|
+
* width slot reads `undefined` for every interval. Elements stay bound:
|
|
99
|
+
* u64-vs-i64 interval pairs still mismatch.
|
|
79
100
|
*/
|
|
80
|
-
type
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
101
|
+
type ShapeOf<F extends AnyField> = readonly [
|
|
102
|
+
F["kind"],
|
|
103
|
+
F extends {
|
|
104
|
+
readonly element: unknown;
|
|
105
|
+
} ? undefined : F extends {
|
|
106
|
+
readonly width: infer W;
|
|
107
|
+
} ? W : undefined,
|
|
108
|
+
F extends {
|
|
109
|
+
readonly element: infer E;
|
|
110
|
+
} ? E : undefined
|
|
111
|
+
];
|
|
112
|
+
/** One field's structural shape within a declared field block (`undefined` when the name is foreign). */
|
|
113
|
+
type ShapeIn<Fields extends FieldsShape, K extends string> = K extends keyof Fields ? ShapeOf<Fields[K]> : undefined;
|
|
114
|
+
/**
|
|
115
|
+
* The structural SHAPE of one projected field, read off the source's
|
|
116
|
+
* schema type — an ordinary or selected relation's field contributes its
|
|
117
|
+
* descriptor's triple; a closed relation (bare or ψ-selected) contributes
|
|
118
|
+
* its synthetic `id` as a u64 and its payload columns' declared
|
|
119
|
+
* descriptors' triples through the closed value's typed `columns` carrier
|
|
120
|
+
* (whose runtime twin is the frozen `columns` record the mint carries).
|
|
121
|
+
* The engine stays the final authority at `Db.create`/`Db.open`.
|
|
122
|
+
*/
|
|
123
|
+
type ProjectedShape<S extends FaceSource, K extends string> = S extends AnySelected ? ShapeIn<RelationFields<S["relation"]>, K> : S extends AnySelectedClosed ? K extends "id" ? ShapeOf<S["relation"]["id"]> : ShapeIn<S["relation"]["columns"], K> : S extends AnyRelation ? ShapeIn<RelationFields<S>, K> : S extends {
|
|
124
|
+
readonly id: infer Id extends AnyField;
|
|
84
125
|
readonly columns: infer Cols extends Record<string, PayloadField>;
|
|
85
|
-
} ? K extends "id" ?
|
|
86
|
-
/** The positionwise
|
|
87
|
-
type
|
|
88
|
-
readonly [I in keyof P]:
|
|
126
|
+
} ? K extends "id" ? ShapeOf<Id> : ShapeIn<Cols, K> : undefined;
|
|
127
|
+
/** The positionwise structural-shape tuple of a projection over `S`. */
|
|
128
|
+
type ShapesOf<S extends FaceSource, P extends readonly string[]> = {
|
|
129
|
+
readonly [I in keyof P]: ProjectedShape<S, P[I] & string>;
|
|
89
130
|
};
|
|
90
|
-
/** The
|
|
91
|
-
type
|
|
131
|
+
/** The shape tuple a face projects, positionwise — the comparand of {@link SameShapes}. */
|
|
132
|
+
type FaceShapes<F extends AnyFace> = F extends Face<infer S, infer P> ? ShapesOf<S, P> : never;
|
|
92
133
|
/** The projection arity of a face. */
|
|
93
134
|
type Arity<F extends AnyFace> = F["projection"]["length"];
|
|
94
135
|
/**
|
|
@@ -109,25 +150,29 @@ interface FaceArityMismatch<Left, Right> {
|
|
|
109
150
|
*/
|
|
110
151
|
type SameArity<A extends AnyFace, B extends AnyFace> = Arity<A> extends Arity<B> ? Arity<B> extends Arity<A> ? unknown : FaceArityMismatch<Arity<A>, Arity<B>> : FaceArityMismatch<Arity<A>, Arity<B>>;
|
|
111
152
|
/**
|
|
112
|
-
* The legible
|
|
113
|
-
* bijection, or window project
|
|
114
|
-
* this type is intersected into the second face's parameter and
|
|
115
|
-
*
|
|
116
|
-
*
|
|
117
|
-
* ratified check), never by a value brand.
|
|
153
|
+
* The legible shape-mismatch verdict: when the two faces of a containment,
|
|
154
|
+
* bijection, or window project structurally incompatible fields at any
|
|
155
|
+
* position, this type is intersected into the second face's parameter and
|
|
156
|
+
* names both shape tuples — a u64 face against a str face, a bytes width
|
|
157
|
+
* mismatch, or an interval element mismatch is a COMPILE error.
|
|
118
158
|
*/
|
|
119
|
-
interface
|
|
120
|
-
readonly "face
|
|
159
|
+
interface FaceShapeMismatch<Left, Right> {
|
|
160
|
+
readonly "face shape mismatch — positionwise kind, width, and element must be equal on both sides": readonly [
|
|
161
|
+
Left,
|
|
162
|
+
Right
|
|
163
|
+
];
|
|
121
164
|
}
|
|
122
165
|
/**
|
|
123
166
|
* Resolves to `unknown` (a no-op intersection) when the two faces project
|
|
124
|
-
* positionwise-equal
|
|
125
|
-
* otherwise. Equality is mutual tuple assignability over
|
|
126
|
-
*
|
|
127
|
-
*
|
|
128
|
-
*
|
|
167
|
+
* positionwise-equal structural shapes, and to {@link FaceShapeMismatch}
|
|
168
|
+
* otherwise. Equality is mutual tuple assignability over the
|
|
169
|
+
* kind/width/element triples. This is the whole construction-time wall —
|
|
170
|
+
* deliberately: there is no domain to compare here. The domain wall lives
|
|
171
|
+
* where domains are BORN: `schema()` computes every field's class from the
|
|
172
|
+
* statement list and holds the one-generator-per-class law, and query
|
|
173
|
+
* joins compare class names off the schema type.
|
|
129
174
|
*/
|
|
130
|
-
type
|
|
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>>;
|
|
131
176
|
/**
|
|
132
177
|
* Projects a face — one spelling, arity-generic: `on(Account, "holder")`
|
|
133
178
|
* for the common single-field position, `on(Booking, ["room", "during"])`
|
|
@@ -146,6 +191,6 @@ declare function on<S extends FaceSource, const P extends readonly [FaceFields<S
|
|
|
146
191
|
* renderer's own shape, `schema/render.rs`).
|
|
147
192
|
*/
|
|
148
193
|
declare function renderFace(face: FaceData): string;
|
|
149
|
-
export type { AnyFace, Arity, Face, FaceArityMismatch, FaceData,
|
|
194
|
+
export type { AnyFace, Arity, Face, FaceArityMismatch, FaceData, FaceFields, FaceOwner, FaceShapeMismatch, FaceShapes, FaceSource, OneOf, OwnerOf, SameArity, SameShapes };
|
|
150
195
|
export { on, oneOf, renderFace };
|
|
151
196
|
//# sourceMappingURL=face.d.ts.map
|
package/dist/face.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"face.d.ts","sourceRoot":"","sources":["../src/face.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"face.d.ts","sourceRoot":"","sources":["../src/face.ts"],"names":[],"mappings":"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"}
|
package/dist/face.js
CHANGED
|
@@ -4,22 +4,29 @@
|
|
|
4
4
|
* position, `on(Booking, ["room", "during"])` the composite/pointwise
|
|
5
5
|
* position (one spelling, arity-generic), `on(Account.where({ kind:
|
|
6
6
|
* Kind.Savings }), "id")` the σ-carrying source, `on(Kind, "id")` a closed
|
|
7
|
-
* relation's sealed shape opened through its synthetic `id
|
|
7
|
+
* relation's sealed shape opened through its synthetic `id`,
|
|
8
|
+
* `on(Kind.where({ mastered: true }), "id")` the ψ-selected closed source
|
|
9
|
+
* (the selection lowered as-is — the ENGINE folds it against the sealed
|
|
10
|
+
* extension at validate, never the SDK). Projection is
|
|
8
11
|
* positional: tuple order is preserved in the type, and the statement
|
|
9
12
|
* constructors pair the two sides' tuples by arity ({@link SameArity}) AND
|
|
10
|
-
* by
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
13
|
+
* by structural shape ({@link SameShapes}) — every projected field's
|
|
14
|
+
* kind/width/element triple is read off the schema type (the minimal
|
|
15
|
+
* kernel: descriptors are pure structure) and compared positionwise. There
|
|
16
|
+
* is no domain to compare at construction — domains are LAW-BORN: the
|
|
17
|
+
* statements themselves define the equivalence classes, and `schema()` is
|
|
18
|
+
* where they aggregate and get judged (the one-generator-per-class wall).
|
|
14
19
|
*/
|
|
20
|
+
import * as errors from "@superbuilders/errors";
|
|
15
21
|
import { renderLiteralSet } from "#spec.ts";
|
|
16
22
|
/** The empty σ of a selection-free face, shared by every bare projection. */
|
|
17
23
|
const emptySelection = Object.freeze([]);
|
|
18
24
|
/**
|
|
19
|
-
* Splits a face source into its owner and σ: a selected relation
|
|
20
|
-
* its own bindings (`relation` is the
|
|
21
|
-
* no relation or closed value, and
|
|
22
|
-
* handle collisions); a bare relation
|
|
25
|
+
* Splits a face source into its owner and σ: a selected relation — ordinary
|
|
26
|
+
* σ or closed ψ, one shape — carries its own bindings (`relation` is the
|
|
27
|
+
* discriminant — the property exists on no relation or closed value, and
|
|
28
|
+
* `closed()` reserves the name against handle collisions); a bare relation
|
|
29
|
+
* or closed relation carries none.
|
|
23
30
|
*/
|
|
24
31
|
function faceParts(source) {
|
|
25
32
|
if ("relation" in source) {
|
|
@@ -45,7 +52,26 @@ function on(source, fields) {
|
|
|
45
52
|
projection,
|
|
46
53
|
selection: parts.selection
|
|
47
54
|
});
|
|
48
|
-
|
|
55
|
+
const value = Object.freeze({ source, projection, data });
|
|
56
|
+
if (!faceMinted(value, source, projection)) {
|
|
57
|
+
throw errors.new(`face over ${parts.owner.name}: face construction incomplete`);
|
|
58
|
+
}
|
|
59
|
+
return value;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* The trusted seam of the face mint (the `refsComplete` pattern): the
|
|
63
|
+
* checkable facts — the value carries exactly the source and projection it
|
|
64
|
+
* was built from, and `data.owner` is exactly the owner {@link faceParts}
|
|
65
|
+
* resolves for that source — are verified before the wide construction is
|
|
66
|
+
* admitted at the exact {@link Face} type (whose `data` claims the owner at
|
|
67
|
+
* its precise type, the carrier the schema-level law-typing reads).
|
|
68
|
+
*/
|
|
69
|
+
function faceMinted(value, source, projection) {
|
|
70
|
+
const owner = "relation" in source ? source.relation : source;
|
|
71
|
+
return (value.source === source &&
|
|
72
|
+
value.projection === projection &&
|
|
73
|
+
value.data.owner === owner &&
|
|
74
|
+
value.data.projection === projection);
|
|
49
75
|
}
|
|
50
76
|
/**
|
|
51
77
|
* Renders one face in the exact macro notation — `Name(p1, p2 | f == lit,
|
package/dist/face.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"face.js","sourceRoot":"","sources":["../src/face.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"face.js","sourceRoot":"","sources":["../src/face.ts"],"names":[],"mappings":"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"}
|