@bjornpagen/bumbledb 0.4.0 → 0.6.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 +191 -92
- package/README.md +9 -7
- package/dist/closed.d.ts +30 -2
- package/dist/closed.d.ts.map +1 -1
- package/dist/closed.js +66 -20
- package/dist/closed.js.map +1 -1
- package/dist/db.d.ts +33 -6
- package/dist/db.d.ts.map +1 -1
- package/dist/db.js +89 -72
- package/dist/db.js.map +1 -1
- package/dist/exhume.d.ts.map +1 -1
- package/dist/exhume.js +1 -14
- package/dist/exhume.js.map +1 -1
- package/dist/face.d.ts +1 -1
- package/dist/face.d.ts.map +1 -1
- package/dist/face.js +2 -1
- package/dist/face.js.map +1 -1
- package/dist/fields.d.ts +18 -1
- package/dist/fields.d.ts.map +1 -1
- package/dist/fields.js +44 -16
- package/dist/fields.js.map +1 -1
- package/dist/index.d.ts +18 -10
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +13 -6
- package/dist/index.js.map +1 -1
- package/dist/law.d.ts +2 -1
- package/dist/law.d.ts.map +1 -1
- package/dist/law.js +15 -14
- package/dist/law.js.map +1 -1
- package/dist/lower.d.ts.map +1 -1
- package/dist/lower.js +1 -7
- package/dist/lower.js.map +1 -1
- package/dist/marshal.d.ts.map +1 -1
- package/dist/marshal.js +15 -27
- package/dist/marshal.js.map +1 -1
- package/dist/native.d.ts +21 -2
- package/dist/native.d.ts.map +1 -1
- package/dist/native.js +20 -3
- package/dist/native.js.map +1 -1
- package/dist/order.d.ts +36 -0
- package/dist/order.d.ts.map +1 -0
- package/dist/order.js +135 -0
- package/dist/order.js.map +1 -0
- package/dist/query/atom.d.ts +140 -206
- package/dist/query/atom.d.ts.map +1 -1
- package/dist/query/atom.js +33 -52
- package/dist/query/atom.js.map +1 -1
- package/dist/query/find.d.ts +116 -0
- package/dist/query/find.d.ts.map +1 -0
- package/dist/query/{select.js → find.js} +22 -22
- package/dist/query/find.js.map +1 -0
- package/dist/query/lower.d.ts +124 -162
- package/dist/query/lower.d.ts.map +1 -1
- package/dist/query/lower.js +462 -507
- package/dist/query/lower.js.map +1 -1
- package/dist/query/predicate.d.ts +22 -14
- package/dist/query/predicate.d.ts.map +1 -1
- package/dist/query/predicate.js +45 -20
- package/dist/query/predicate.js.map +1 -1
- package/dist/query/run.d.ts +3 -3
- package/dist/query/run.d.ts.map +1 -1
- package/dist/query/run.js +10 -11
- package/dist/query/run.js.map +1 -1
- package/dist/query/scope.d.ts +124 -83
- package/dist/query/scope.d.ts.map +1 -1
- package/dist/query/scope.js +77 -70
- package/dist/query/scope.js.map +1 -1
- package/dist/relation.d.ts +9 -22
- package/dist/relation.d.ts.map +1 -1
- package/dist/relation.js +9 -28
- package/dist/relation.js.map +1 -1
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +7 -31
- package/dist/schema.js.map +1 -1
- package/dist/statements.d.ts +5 -2
- package/dist/statements.d.ts.map +1 -1
- package/dist/statements.js +30 -35
- package/dist/statements.js.map +1 -1
- package/package.json +2 -5
- package/src/closed.ts +73 -28
- package/src/db.ts +126 -88
- package/src/exhume.ts +1 -15
- package/src/face.ts +4 -3
- package/src/fields.ts +58 -16
- package/src/index.ts +19 -13
- package/src/law.ts +15 -14
- package/src/lower.ts +2 -9
- package/src/marshal.ts +15 -31
- package/src/native.ts +22 -4
- package/src/order.ts +156 -0
- package/src/query/atom.ts +186 -276
- package/src/query/find.ts +212 -0
- package/src/query/lower.ts +614 -749
- package/src/query/predicate.ts +47 -20
- package/src/query/run.ts +11 -13
- package/src/query/scope.ts +165 -132
- package/src/relation.ts +9 -51
- package/src/schema.ts +7 -33
- package/src/statements.ts +33 -38
- package/dist/query/select.d.ts +0 -128
- package/dist/query/select.d.ts.map +0 -1
- package/dist/query/select.js.map +0 -1
- package/src/query/select.ts +0 -215
package/dist/query/lower.d.ts
CHANGED
|
@@ -1,50 +1,54 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* `query()` and the IR lowering,
|
|
3
|
-
* kysely-shaped —
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
* name-
|
|
22
|
-
* the
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
2
|
+
* `query()` and the IR lowering, REFERENCE-IDENTITY edition. A query is
|
|
3
|
+
* built kysely-shaped — variables minted by {@link v} outside the rule and
|
|
4
|
+
* reused by REFERENCE to join:
|
|
5
|
+
*
|
|
6
|
+
* query(S).rule((r) => {
|
|
7
|
+
* const acct = v(Account)
|
|
8
|
+
* const h = v(Holder)
|
|
9
|
+
* return r
|
|
10
|
+
* .match(Account, { id: acct.id, holder: acct.holder })
|
|
11
|
+
* .match(Holder, { id: acct.holder })
|
|
12
|
+
* .where(r.eq(acct.holder, r.param("root")))
|
|
13
|
+
* .find({ account: acct.id, holder: acct.holder })
|
|
14
|
+
* })
|
|
15
|
+
*
|
|
16
|
+
* — and is an INERT value: `Query<Rels, Row, Params>` with `Row` inferred
|
|
17
|
+
* from each rule's `.find` RECORD (its keys ARE the answer columns) and
|
|
18
|
+
* `Params` inferred to be EXACTLY the params the rules use (params are typed
|
|
19
|
+
* BY USE; a param no rule uses never registers). Variable IDENTITY is the
|
|
20
|
+
* object reference: reusing one value across binding positions IS the join,
|
|
21
|
+
* and a name-collision join is unrepresentable. Each binding position is
|
|
22
|
+
* judged against the variable's MINT slot — and because {@link JoinOk} is an
|
|
23
|
+
* equality, that alone makes every cross-binding join transitively
|
|
24
|
+
* class-equal. Lowering is a pure function of the query value down to the
|
|
25
|
+
* bridge's `ProgramIr` (`bumbledb/crates/bumbledb/src/ir.rs`): relations by
|
|
26
|
+
* declaration ordinal, variables by dense per-rule first-occurrence ids
|
|
27
|
+
* (keyed on the object REFERENCE — the discipline is unchanged, only the map
|
|
28
|
+
* key moved from name to reference), params by first-use order. Lowering is
|
|
29
|
+
* STABLE — the same query value lowers to deeply-equal IR every time, and
|
|
30
|
+
* two identically-written queries (fresh mints each) lower identically.
|
|
31
|
+
* Construction validates negation safety and boundness (typed by the var's
|
|
32
|
+
* label — object identity is invisible to the type tier, so these are
|
|
33
|
+
* construction-time walls); everything else (strata, types, aggregate
|
|
34
|
+
* rosters, rule caps) is the ENGINE's judge, surfacing at prepare.
|
|
26
35
|
*/
|
|
27
36
|
import type { AnyField } from "#fields.ts";
|
|
28
37
|
import type { ClassRecordOf, SchemaClasses } from "#law.ts";
|
|
29
38
|
import type { ProgramIr, TaggedValue } from "#native.ts";
|
|
30
|
-
import type { AnyCond,
|
|
31
|
-
import { allen, and,
|
|
32
|
-
import type {
|
|
33
|
-
import {
|
|
34
|
-
import type {
|
|
35
|
-
import {
|
|
36
|
-
import type { FieldsShape } from "#relation.ts";
|
|
39
|
+
import type { AnyCond, BindParamsShape, CheckBindings, CheckCond, CmpKind, CondParamsShape, FindColumn, MatchFields, MatchOwner, MatchShape, RecData, RuleData } from "#query/atom.ts";
|
|
40
|
+
import { allen, and, eq, ge, gt, le, lt, ne, not, or, pointIn } from "#query/atom.ts";
|
|
41
|
+
import type { CheckFind, CheckRecFind, FindShape, HeadRecordOf, RowOfFind } from "#query/find.ts";
|
|
42
|
+
import { argMax, argMin, count, countDistinct, max, min, pack, sum } from "#query/find.ts";
|
|
43
|
+
import type { AnyVar, ClassedField, Flatten, InferredOf, JoinOk, MintSlotOf, ParamEntry, ParamsRecord } from "#query/scope.ts";
|
|
44
|
+
import { inferred, makeDuration, makeMaskParam, makeParam, makeSetParam } from "#query/scope.ts";
|
|
37
45
|
import type { AnySchema, Schema, SchemaRelations } from "#schema.ts";
|
|
38
46
|
/**
|
|
39
47
|
* The matchable members of a schema's record — ordinary relations AND
|
|
40
|
-
* closed vocabularies (ψ query atoms
|
|
41
|
-
*
|
|
42
|
-
* plan-constant member set or joins the L1-resident virtual image — the
|
|
43
|
-
* SDK lowers pass-through and never knows which).
|
|
48
|
+
* closed vocabularies (ψ query atoms; the ENGINE decides folding vs virtual
|
|
49
|
+
* image, the SDK lowers pass-through).
|
|
44
50
|
*/
|
|
45
51
|
type QueryRelation<Rels extends SchemaRelations> = Extract<Rels[keyof Rels], MatchOwner>;
|
|
46
|
-
/** The environment after one bindings record: the incoming env plus every var the record binds (as classed slots). */
|
|
47
|
-
type EnvOfMatch<Env extends EnvShape, F extends FieldsShape, CR, B> = Flatten<Env & BindEnv<F, CR, B>> extends infer E extends EnvShape ? E : never;
|
|
48
52
|
/** Reads an inferred-params carrier off a rec reference or rule value. */
|
|
49
53
|
type ParamsOf<T> = InferredOf<T> extends {
|
|
50
54
|
readonly params: infer P extends ParamsRecord;
|
|
@@ -54,18 +58,15 @@ type RowOf<T> = InferredOf<T> extends {
|
|
|
54
58
|
readonly row: infer R;
|
|
55
59
|
} ? R : never;
|
|
56
60
|
/**
|
|
57
|
-
* A recursive predicate's HEAD signature as classed slots
|
|
58
|
-
*
|
|
59
|
-
*
|
|
60
|
-
* values that carry no head (a plain query rule, or an unthreaded rec
|
|
61
|
-
* handle before its first rule).
|
|
61
|
+
* A recursive predicate's HEAD signature as classed slots, keyed by column
|
|
62
|
+
* name — carried on the rec reference so an `idb` join can be judged against
|
|
63
|
+
* it; `undefined` on values that carry no head.
|
|
62
64
|
*/
|
|
63
|
-
type HeadShape =
|
|
65
|
+
type HeadShape = Readonly<Record<string, ClassedField>> | undefined;
|
|
64
66
|
/**
|
|
65
67
|
* One finished rule as a plain value: the runtime data plus the inferred
|
|
66
|
-
* row/params carrier (and, for a RECURSIVE rule, the head
|
|
67
|
-
*
|
|
68
|
-
* `.rule(...)` consumes it; hosts never build one by hand.
|
|
68
|
+
* row/params carrier (and, for a RECURSIVE rule, the head record of classed
|
|
69
|
+
* slots `idb` pairs against). `.rule(...)` consumes it.
|
|
69
70
|
*/
|
|
70
71
|
interface RuleValue<Row, P extends ParamsRecord, Head extends HeadShape = undefined> {
|
|
71
72
|
readonly rule: RuleData;
|
|
@@ -77,22 +78,14 @@ interface RuleValue<Row, P extends ParamsRecord, Head extends HeadShape = undefi
|
|
|
77
78
|
}
|
|
78
79
|
/** Any finished rule value. */
|
|
79
80
|
type AnyRuleValue = RuleValue<unknown, ParamsRecord, HeadShape>;
|
|
80
|
-
/** The positional head-field tuple of a recursive rule's names-only select. */
|
|
81
|
-
type HeadFieldsOf<Env extends EnvShape, S extends readonly string[]> = {
|
|
82
|
-
readonly [I in keyof S]: Env[S[I] & keyof Env];
|
|
83
|
-
};
|
|
84
81
|
/** Reads an inferred-head carrier off a rule value or rec reference. */
|
|
85
82
|
type HeadOf<T> = InferredOf<T> extends {
|
|
86
|
-
readonly head: infer H extends
|
|
83
|
+
readonly head: infer H extends Readonly<Record<string, ClassedField>>;
|
|
87
84
|
} ? H : undefined;
|
|
88
85
|
/**
|
|
89
86
|
* A recursive predicate REFERENCE — the shape `idb()` targets carry: the
|
|
90
|
-
* name (type-level identity
|
|
91
|
-
*
|
|
92
|
-
* the params its attached rules have used so far, and the head signature
|
|
93
|
-
* its FIRST rule sealed (thread the value `.rule(...)` returns into an
|
|
94
|
-
* `idb` and the program's `Params` type stays exact AND the idb join is
|
|
95
|
-
* arity- and domain-checked against the head).
|
|
87
|
+
* name (type-level identity), the runtime data (value identity), the params
|
|
88
|
+
* its rules have used, and the head signature its FIRST rule sealed.
|
|
96
89
|
*/
|
|
97
90
|
interface RecRef<Name extends string, P extends ParamsRecord, Head extends HeadShape = HeadShape> {
|
|
98
91
|
readonly name: Name;
|
|
@@ -102,35 +95,31 @@ interface RecRef<Name extends string, P extends ParamsRecord, Head extends HeadS
|
|
|
102
95
|
readonly head: Head;
|
|
103
96
|
};
|
|
104
97
|
}
|
|
105
|
-
/** One `idb` position's judgment:
|
|
106
|
-
type
|
|
98
|
+
/** One `idb` position's judgment: a variable class-equal to the head slot when the head is carried. */
|
|
99
|
+
type IdbBindingOk<Classes extends SchemaClasses, HeadSlot, V> = V extends AnyVar ? HeadSlot extends ClassedField ? JoinOk<HeadSlot, MintSlotOf<Classes, V>> extends true ? true : false : true : false;
|
|
107
100
|
/**
|
|
108
|
-
* The validated `idb`
|
|
109
|
-
*
|
|
110
|
-
*
|
|
111
|
-
*
|
|
112
|
-
*
|
|
113
|
-
*
|
|
114
|
-
* prepare (the engine's law stands behind both tiers).
|
|
101
|
+
* The validated `idb` bindings record: when the target carries its head
|
|
102
|
+
* (a threaded rec handle), the record's key set must EXACTLY equal the
|
|
103
|
+
* head's (a missing or extra key maps every property to `never`) and each
|
|
104
|
+
* variable must be class-equal to its head slot — the same wall `JoinOk`
|
|
105
|
+
* holds for EDB atoms. An unthreaded handle carries no head; every entry
|
|
106
|
+
* must still be a variable, arity/class judged at construction and prepare.
|
|
115
107
|
*/
|
|
116
|
-
type
|
|
117
|
-
readonly [
|
|
108
|
+
type CheckIdbBindings<Classes extends SchemaClasses, Head, B> = Head extends Readonly<Record<string, ClassedField>> ? [keyof B] extends [keyof Head] ? [keyof Head] extends [keyof B] ? {
|
|
109
|
+
readonly [K in keyof B]: K extends keyof Head ? IdbBindingOk<Classes, Head[K], B[K]> extends true ? B[K] : never : never;
|
|
110
|
+
} : {
|
|
111
|
+
readonly [K in keyof B]: never;
|
|
112
|
+
} : {
|
|
113
|
+
readonly [K in keyof B]: never;
|
|
118
114
|
} : {
|
|
119
|
-
readonly [
|
|
120
|
-
} : never : {
|
|
121
|
-
readonly [I in keyof V]: IdbVarOk<Env, V[I], undefined> extends true ? V[I] : never;
|
|
115
|
+
readonly [K in keyof B]: B[K] extends AnyVar ? B[K] : never;
|
|
122
116
|
};
|
|
123
117
|
/**
|
|
124
118
|
* The term/predicate/aggregate constructor vocabulary every rule builder
|
|
125
|
-
* carries — pure value builders
|
|
126
|
-
*
|
|
127
|
-
* environment.
|
|
119
|
+
* carries — pure value builders. Variables are minted by the free {@link v},
|
|
120
|
+
* outside the rule, and reused by reference; `r` no longer mints them.
|
|
128
121
|
*/
|
|
129
122
|
interface TermOps {
|
|
130
|
-
/** Declares/names one variable: typed by the field it first binds; reuse joins. */
|
|
131
|
-
readonly var: typeof makeVar;
|
|
132
|
-
/** Mints several variables at once — `const { service, w } = r.vars("service", "w")`: each name typed exactly; duplicates refuse. */
|
|
133
|
-
readonly vars: typeof makeVars;
|
|
134
123
|
/** Names one scalar parameter: typed by its use; the key of the execute params object. */
|
|
135
124
|
readonly param: typeof makeParam;
|
|
136
125
|
/** Names one ∈-set parameter (the IR's `ParamSet`): bound to a readonly array at execution. */
|
|
@@ -146,7 +135,6 @@ interface TermOps {
|
|
|
146
135
|
readonly gt: typeof gt;
|
|
147
136
|
readonly ge: typeof ge;
|
|
148
137
|
readonly pointIn: typeof pointIn;
|
|
149
|
-
readonly covers: typeof covers;
|
|
150
138
|
readonly allen: typeof allen;
|
|
151
139
|
readonly and: typeof and;
|
|
152
140
|
readonly or: typeof or;
|
|
@@ -160,60 +148,55 @@ interface TermOps {
|
|
|
160
148
|
readonly argMin: typeof argMin;
|
|
161
149
|
readonly pack: typeof pack;
|
|
162
150
|
}
|
|
163
|
-
/** The rule builder a `query(S).rule(...)` callback receives
|
|
151
|
+
/** The rule builder a `query(S).rule(...)` callback receives (`Classes` — the join judge's authority). */
|
|
164
152
|
interface QueryRuleScope<Rels extends SchemaRelations, Classes extends SchemaClasses = SchemaClasses> extends TermOps {
|
|
165
|
-
/** The first EDB atom of the rule: fields bind
|
|
166
|
-
match<R extends QueryRelation<Rels>, const B extends MatchShape<MatchFields<R>>>(relation: R, bindings: B & CheckBindings<
|
|
153
|
+
/** The first EDB atom of the rule: fields bind variables, params, ∈-sets, or bare literals; absence is the wildcard. */
|
|
154
|
+
match<R extends QueryRelation<Rels>, const B extends MatchShape<MatchFields<R>>>(relation: R, bindings: B & CheckBindings<Classes, MatchFields<R>, ClassRecordOf<Classes, R["name"]>, B>): QueryRuleChain<Rels, BindParamsShape<MatchFields<R>, B>, Classes>;
|
|
167
155
|
}
|
|
168
156
|
/** The chain of a plain query rule: more atoms, residual predicates, then the head. */
|
|
169
|
-
interface QueryRuleChain<Rels extends SchemaRelations,
|
|
170
|
-
/** One more positive EDB atom —
|
|
171
|
-
match<R extends QueryRelation<Rels>, const B extends MatchShape<MatchFields<R>>>(relation: R, bindings: B & CheckBindings<
|
|
157
|
+
interface QueryRuleChain<Rels extends SchemaRelations, P extends ParamsRecord, Classes extends SchemaClasses = SchemaClasses> {
|
|
158
|
+
/** One more positive EDB atom — variable reuse joins, class-equal by the mint-slot judgment. */
|
|
159
|
+
match<R extends QueryRelation<Rels>, const B extends MatchShape<MatchFields<R>>>(relation: R, bindings: B & CheckBindings<Classes, MatchFields<R>, ClassRecordOf<Classes, R["name"]>, B>): QueryRuleChain<Rels, Flatten<P & BindParamsShape<MatchFields<R>, B>>, Classes>;
|
|
172
160
|
/** One residual predicate: a comparison, an `and`/`or` tree, or a negated atom (`r.not`). */
|
|
173
|
-
where<const C extends AnyCond>(cond: CheckCond<
|
|
174
|
-
/** The head projection:
|
|
175
|
-
|
|
161
|
+
where<const C extends AnyCond>(cond: CheckCond<Classes, C> & C): QueryRuleChain<Rels, Flatten<P & CondParamsShape<C>>, Classes>;
|
|
162
|
+
/** The head projection: a `find` RECORD whose keys name the answer columns. */
|
|
163
|
+
find<const F extends FindShape>(entries: F & CheckFind<F>): RuleValue<RowOfFind<F>, P>;
|
|
176
164
|
}
|
|
177
165
|
/** The rule builder an OUTPUT rule of a `program()` receives: a query rule plus finished-stratum `idb` atoms. */
|
|
178
166
|
interface OutputRuleScope<Rels extends SchemaRelations, Classes extends SchemaClasses = SchemaClasses> extends TermOps {
|
|
179
|
-
match<R extends QueryRelation<Rels>, const B extends MatchShape<MatchFields<R>>>(relation: R, bindings: B & CheckBindings<
|
|
167
|
+
match<R extends QueryRelation<Rels>, const B extends MatchShape<MatchFields<R>>>(relation: R, bindings: B & CheckBindings<Classes, MatchFields<R>, ClassRecordOf<Classes, R["name"]>, B>): OutputRuleChain<Rels, BindParamsShape<MatchFields<R>, B>, Classes>;
|
|
180
168
|
}
|
|
181
169
|
/** The chain of an output rule: atoms, predicates, `idb` joins over the program's recs, then the head. */
|
|
182
|
-
interface OutputRuleChain<Rels extends SchemaRelations,
|
|
183
|
-
match<R extends QueryRelation<Rels>, const B extends MatchShape<MatchFields<R>>>(relation: R, bindings: B & CheckBindings<
|
|
184
|
-
where<const C extends AnyCond>(cond: CheckCond<
|
|
170
|
+
interface OutputRuleChain<Rels extends SchemaRelations, P extends ParamsRecord, Classes extends SchemaClasses = SchemaClasses> {
|
|
171
|
+
match<R extends QueryRelation<Rels>, const B extends MatchShape<MatchFields<R>>>(relation: R, bindings: B & CheckBindings<Classes, MatchFields<R>, ClassRecordOf<Classes, R["name"]>, B>): OutputRuleChain<Rels, Flatten<P & BindParamsShape<MatchFields<R>, B>>, Classes>;
|
|
172
|
+
where<const C extends AnyCond>(cond: CheckCond<Classes, C> & C): OutputRuleChain<Rels, Flatten<P & CondParamsShape<C>>, Classes>;
|
|
185
173
|
/**
|
|
186
174
|
* One `idb` atom over a FINISHED stratum (any rec of this program): a
|
|
187
|
-
*
|
|
188
|
-
*
|
|
189
|
-
* the rule
|
|
190
|
-
*
|
|
191
|
-
*
|
|
192
|
-
* AND its head signature, so the join is arity- and class-checked
|
|
193
|
-
* against the head at compile time.
|
|
175
|
+
* NAMED join against the rec's head — the bindings record's keys are the
|
|
176
|
+
* head columns, each bound to a variable positively bound by a relation
|
|
177
|
+
* atom of the rule. Threading the rec value the last `.rule(...)` returned
|
|
178
|
+
* carries its params into `Params` AND its head signature, so the join is
|
|
179
|
+
* key-exact and class-checked against the head at compile time.
|
|
194
180
|
*/
|
|
195
|
-
idb<Target extends RecRef<string, ParamsRecord>, const
|
|
196
|
-
|
|
181
|
+
idb<Target extends RecRef<string, ParamsRecord>, const B extends Readonly<Record<string, AnyVar>>>(target: Target, bindings: B & CheckIdbBindings<Classes, HeadOf<Target>, B>): OutputRuleChain<Rels, Flatten<P & ParamsOf<Target>>, Classes>;
|
|
182
|
+
find<const F extends FindShape>(entries: F & CheckFind<F>): RuleValue<RowOfFind<F>, P>;
|
|
197
183
|
}
|
|
198
184
|
/** The rule builder a RECURSIVE rule (`rec.rule(...)`) receives. */
|
|
199
185
|
interface RecRuleScope<Rels extends SchemaRelations, Self extends string, Classes extends SchemaClasses = SchemaClasses> extends TermOps {
|
|
200
|
-
match<R extends QueryRelation<Rels>, const B extends MatchShape<MatchFields<R>>>(relation: R, bindings: B & CheckBindings<
|
|
186
|
+
match<R extends QueryRelation<Rels>, const B extends MatchShape<MatchFields<R>>>(relation: R, bindings: B & CheckBindings<Classes, MatchFields<R>, ClassRecordOf<Classes, R["name"]>, B>): RecRuleChain<Rels, Self, BindParamsShape<MatchFields<R>, B>, Classes>;
|
|
201
187
|
}
|
|
202
188
|
/**
|
|
203
|
-
* The chain of a recursive rule. Its `idb` accepts ONLY the rec itself
|
|
204
|
-
*
|
|
205
|
-
*
|
|
206
|
-
* and its `select` takes bound variable NAMES only: aggregates and the
|
|
207
|
-
* measure are unrepresentable in a recursive head (the strata judge's
|
|
208
|
-
* `AggregationThroughCycle`/`MeasureInRecursiveHead`, made unwritable).
|
|
189
|
+
* The chain of a recursive rule. Its `idb` accepts ONLY the rec itself (the
|
|
190
|
+
* self-recursion cut) and its `find` takes bound variables only — aggregates
|
|
191
|
+
* and the measure are unrepresentable in a recursive head.
|
|
209
192
|
*/
|
|
210
|
-
interface RecRuleChain<Rels extends SchemaRelations, Self extends string,
|
|
211
|
-
match<R extends QueryRelation<Rels>, const B extends MatchShape<MatchFields<R>>>(relation: R, bindings: B & CheckBindings<
|
|
212
|
-
where<const C extends AnyCond>(cond: CheckCond<
|
|
213
|
-
/** The self-recursive atom: `idb(self,
|
|
214
|
-
idb<Target extends RecRef<Self, ParamsRecord>, const
|
|
215
|
-
/** The recursive head:
|
|
216
|
-
|
|
193
|
+
interface RecRuleChain<Rels extends SchemaRelations, Self extends string, P extends ParamsRecord, Classes extends SchemaClasses = SchemaClasses> {
|
|
194
|
+
match<R extends QueryRelation<Rels>, const B extends MatchShape<MatchFields<R>>>(relation: R, bindings: B & CheckBindings<Classes, MatchFields<R>, ClassRecordOf<Classes, R["name"]>, B>): RecRuleChain<Rels, Self, Flatten<P & BindParamsShape<MatchFields<R>, B>>, Classes>;
|
|
195
|
+
where<const C extends AnyCond>(cond: CheckCond<Classes, C> & C): RecRuleChain<Rels, Self, Flatten<P & CondParamsShape<C>>, Classes>;
|
|
196
|
+
/** The self-recursive atom: `idb(self, { headKey: boundVar })` — only this rec's own reference is accepted. */
|
|
197
|
+
idb<Target extends RecRef<Self, ParamsRecord>, const B extends Readonly<Record<string, AnyVar>>>(target: Target, bindings: B & CheckIdbBindings<Classes, HeadOf<Target>, B>): RecRuleChain<Rels, Self, P, Classes>;
|
|
198
|
+
/** The recursive head: a `find` record of bound variables only; the value carries the head's classed slots for `idb` pairing. */
|
|
199
|
+
find<const F extends FindShape>(entries: F & CheckRecFind<F>): RuleValue<RowOfFind<F>, P, HeadRecordOf<Classes, F>>;
|
|
217
200
|
}
|
|
218
201
|
/** A query's runtime description — everything lowering, the wire marshal, and answer decode read. */
|
|
219
202
|
interface QueryData {
|
|
@@ -222,15 +205,14 @@ interface QueryData {
|
|
|
222
205
|
/** The output rules in written order (multiple rules = set union). */
|
|
223
206
|
readonly rules: readonly RuleData[];
|
|
224
207
|
/** The head columns (every rule derives the same head; written order = answer column order). */
|
|
225
|
-
readonly
|
|
208
|
+
readonly finds: readonly FindColumn[];
|
|
226
209
|
/** The registered params in first-use order across the program walk (= dense `ParamId`s). */
|
|
227
210
|
readonly params: readonly ParamEntry[];
|
|
228
211
|
}
|
|
229
212
|
/**
|
|
230
213
|
* An inert query value. `Row` is the inferred answer-row object type;
|
|
231
|
-
* `Params` the inferred execute-params object type — exactly the params
|
|
232
|
-
*
|
|
233
|
-
* engine.
|
|
214
|
+
* `Params` the inferred execute-params object type — exactly the params the
|
|
215
|
+
* rules use. Prepare with `db.prepare(q)`.
|
|
234
216
|
*/
|
|
235
217
|
interface Query<Rels extends SchemaRelations, Row, Params extends ParamsRecord, Classes extends SchemaClasses = SchemaClasses> {
|
|
236
218
|
readonly schema: Schema<Rels, Classes>;
|
|
@@ -242,11 +224,7 @@ interface Query<Rels extends SchemaRelations, Row, Params extends ParamsRecord,
|
|
|
242
224
|
readonly params: Params;
|
|
243
225
|
};
|
|
244
226
|
}
|
|
245
|
-
/**
|
|
246
|
-
* Any query value as lowering and the runtime consume it: the theory it
|
|
247
|
-
* was built against and its runtime description — every `Query` (typed or
|
|
248
|
-
* program-built) carries exactly this.
|
|
249
|
-
*/
|
|
227
|
+
/** Any query value as lowering and the runtime consume it. */
|
|
250
228
|
interface AnyQuery {
|
|
251
229
|
readonly schema: AnySchema;
|
|
252
230
|
readonly data: QueryData;
|
|
@@ -260,27 +238,23 @@ interface QueryStart<Rels extends SchemaRelations, Classes extends SchemaClasses
|
|
|
260
238
|
rule<RV extends AnyRuleValue>(build: (r: QueryRuleScope<Rels, Classes>) => RV): Query<Rels, RowOf<RV>, ParamsOf<RV>, Classes>;
|
|
261
239
|
}
|
|
262
240
|
/**
|
|
263
|
-
* The one runtime chain every context shares — non-generic on purpose
|
|
264
|
-
* typed chain interfaces
|
|
265
|
-
* apply at the scope factories' boundaries, and the runtime beneath them is
|
|
266
|
-
* one plain value walk. Context gates the two context-bound verbs: `idb`
|
|
267
|
-
* (a program construct — self-only inside a rec, any rec of the program in
|
|
268
|
-
* the output, refused in a plain query) and the recursive `select`
|
|
269
|
-
* (bound variable names only — the creation quarantine).
|
|
241
|
+
* The one runtime chain every context shares — non-generic on purpose. The
|
|
242
|
+
* typed chain interfaces apply at the scope factories' boundaries.
|
|
270
243
|
*/
|
|
271
244
|
interface RawChain {
|
|
272
245
|
match(relation: MatchOwner, bindings: Readonly<Record<string, unknown>>): RawChain;
|
|
273
246
|
where(cond: AnyCond): RawChain;
|
|
274
|
-
idb(target: RecRef<string, ParamsRecord>,
|
|
275
|
-
|
|
247
|
+
idb(target: RecRef<string, ParamsRecord>, bindings: Readonly<Record<string, unknown>>): RawChain;
|
|
248
|
+
find(entries: Readonly<Record<string, unknown>>): RuleValue<never, never>;
|
|
276
249
|
}
|
|
277
250
|
/** The runtime rule-builder shape beneath every typed scope. */
|
|
278
251
|
interface RawScope extends TermOps {
|
|
279
252
|
match(relation: MatchOwner, bindings: Readonly<Record<string, unknown>>): RawChain;
|
|
280
253
|
}
|
|
281
|
-
/** Which rule family a chain builds —
|
|
254
|
+
/** Which rule family a chain builds — plus the schema's runtime class map and theory value (the join judge's authority). */
|
|
282
255
|
type ChainContext = {
|
|
283
256
|
readonly classes: SchemaClasses;
|
|
257
|
+
readonly theory: AnySchema;
|
|
284
258
|
} & ({
|
|
285
259
|
readonly kind: "query";
|
|
286
260
|
} | {
|
|
@@ -294,55 +268,43 @@ type ChainContext = {
|
|
|
294
268
|
declare function makeRawScope(context: ChainContext): RawScope;
|
|
295
269
|
/** Builds one output-rule builder over a program's recs. */
|
|
296
270
|
declare function makeOutputRuleScope<Rels extends SchemaRelations, Classes extends SchemaClasses>(program: ProgramState): OutputRuleScope<Rels, Classes>;
|
|
297
|
-
/** One program's build-time registry: its recs in declaration order
|
|
271
|
+
/** One program's build-time registry: its recs in declaration order, the theory value, and its class map. */
|
|
298
272
|
interface ProgramState {
|
|
299
273
|
readonly recs: RecData[];
|
|
300
274
|
readonly classes: SchemaClasses;
|
|
275
|
+
readonly theory: AnySchema;
|
|
301
276
|
sealed: boolean;
|
|
302
277
|
}
|
|
303
278
|
/** Assembles one typed query value (rules already completed). */
|
|
304
279
|
declare function makeQuery<Rels extends SchemaRelations, Row, P extends ParamsRecord, Classes extends SchemaClasses>(theory: Schema<Rels, Classes>, recs: readonly RecData[], rules: readonly RuleData[]): Query<Rels, Row, P, Classes>;
|
|
305
280
|
/**
|
|
306
|
-
* Opens a query over a schema: `query(S).rule(r => ...)`. Each `.rule`
|
|
307
|
-
*
|
|
308
|
-
*
|
|
309
|
-
*
|
|
310
|
-
* compare class names off it, at the type level and at construction alike.
|
|
281
|
+
* Opens a query over a schema: `query(S).rule(r => ...)`. Each `.rule` adds
|
|
282
|
+
* one conjunctive rule; multiple rules are the set union. The schema's
|
|
283
|
+
* law-computed class map and theory value ride into every rule builder — the
|
|
284
|
+
* join walls compare against the mint slots off it.
|
|
311
285
|
*/
|
|
312
286
|
declare function query<Rels extends SchemaRelations, Classes extends SchemaClasses>(theory: Schema<Rels, Classes>): QueryStart<Rels, Classes>;
|
|
313
287
|
/**
|
|
314
288
|
* Tags one host literal at a FIELD position (atom bindings): the field's
|
|
315
|
-
* structural kind directs the tag, never a guess.
|
|
316
|
-
* bigint literal tags as the ELEMENT type — the IR's membership typing
|
|
317
|
-
* rule (point membership), an interval-shaped literal as the interval
|
|
318
|
-
* (value equality). A closed-reference literal is its bare handle id,
|
|
319
|
-
* tagged u64 after a roster verification.
|
|
289
|
+
* structural kind directs the tag, never a guess.
|
|
320
290
|
*/
|
|
321
291
|
declare function taggedLiteral(context: string, field: AnyField, value: unknown): TaggedValue;
|
|
322
292
|
/**
|
|
323
|
-
* Tags one host literal at a COMPARISON or PARAM position, where the
|
|
324
|
-
*
|
|
325
|
-
*
|
|
326
|
-
* `
|
|
327
|
-
*
|
|
328
|
-
*
|
|
329
|
-
*
|
|
330
|
-
* `covers(span(...), t)` and tags as the interval of the sibling's
|
|
331
|
-
* element domain; under every other operator an interval shape against a
|
|
332
|
-
* scalar sibling stays refused (the engine's IllegalComparison — the
|
|
333
|
-
* bug-hunt fix, preserved op-aware).
|
|
293
|
+
* Tags one host literal at a COMPARISON or PARAM position, where the SIBLING
|
|
294
|
+
* anchors the type: a measure sibling is u64, an interval-field sibling
|
|
295
|
+
* contributes its element domain, a scalar sibling its own type. At
|
|
296
|
+
* `pointIn` the operand order is interval-left, point-right, so an
|
|
297
|
+
* interval-shaped literal beside a scalar element-typed sibling is the LEGAL
|
|
298
|
+
* interval operand of `pointIn(t, span(...))`; under every other operator an
|
|
299
|
+
* interval shape against a scalar sibling stays refused.
|
|
334
300
|
*/
|
|
335
301
|
declare function taggedCmpLiteral(context: string, sibling: AnyField | "measure", value: unknown, op: CmpKind | "binding"): TaggedValue;
|
|
336
302
|
/**
|
|
337
303
|
* Lowers a query value to the bridge's `ProgramIr` — pure and stable: the
|
|
338
304
|
* recs in declaration order (`PredId` = index), the output predicate
|
|
339
|
-
*
|
|
340
|
-
* the law the engine's own manifest pins; `db.prepare` re-verifies the
|
|
341
|
-
* alignment against the live manifest before sending. Every registered
|
|
342
|
-
* param must carry a field anchor by now — an unanchorable param (its
|
|
343
|
-
* every use beside a literal) is refused here, naming it.
|
|
305
|
+
* appended last. Every registered param must carry a field anchor by now.
|
|
344
306
|
*/
|
|
345
307
|
declare function lowerQuery(q: AnyQuery): ProgramIr;
|
|
346
|
-
export type { AnyQuery, AnyRuleValue,
|
|
308
|
+
export type { AnyQuery, AnyRuleValue, HeadOf, HeadShape, OutputRuleChain, OutputRuleScope, ParamsOf, ProgramState, Query, QueryData, QueryParams, QueryRelation, QueryRow, QueryRuleChain, QueryRuleScope, QueryStart, RawChain, RawScope, RecRef, RecRuleChain, RecRuleScope, RowOf, RuleValue, TermOps };
|
|
347
309
|
export { lowerQuery, makeOutputRuleScope, makeQuery, makeRawScope, query, taggedCmpLiteral, taggedLiteral };
|
|
348
310
|
//# sourceMappingURL=lower.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lower.d.ts","sourceRoot":"","sources":["../../src/query/lower.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lower.d.ts","sourceRoot":"","sources":["../../src/query/lower.ts"],"names":[],"mappings":"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"}
|