@bjornpagen/bumbledb 0.5.0 → 0.7.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 +140 -136
- package/README.md +24 -11
- package/dist/closed.d.ts +7 -5
- package/dist/closed.d.ts.map +1 -1
- package/dist/closed.js +4 -1
- package/dist/closed.js.map +1 -1
- package/dist/count.js +1 -1
- package/dist/count.js.map +1 -1
- package/dist/db.d.ts +110 -73
- package/dist/db.d.ts.map +1 -1
- package/dist/db.js +172 -116
- package/dist/db.js.map +1 -1
- package/dist/exhume.d.ts +22 -10
- package/dist/exhume.d.ts.map +1 -1
- package/dist/exhume.js +42 -9
- package/dist/exhume.js.map +1 -1
- package/dist/face.d.ts +10 -6
- package/dist/face.d.ts.map +1 -1
- package/dist/face.js.map +1 -1
- package/dist/fields.d.ts +38 -16
- package/dist/fields.d.ts.map +1 -1
- package/dist/fields.js +33 -8
- package/dist/fields.js.map +1 -1
- package/dist/index.d.ts +9 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -2
- package/dist/index.js.map +1 -1
- package/dist/lower.d.ts +9 -9
- package/dist/lower.d.ts.map +1 -1
- package/dist/lower.js +17 -12
- package/dist/lower.js.map +1 -1
- package/dist/marshal.d.ts +17 -7
- package/dist/marshal.d.ts.map +1 -1
- package/dist/marshal.js +32 -10
- package/dist/marshal.js.map +1 -1
- package/dist/native.d.ts +60 -9
- package/dist/native.d.ts.map +1 -1
- package/dist/native.js.map +1 -1
- package/dist/query/atom.d.ts +199 -203
- package/dist/query/atom.d.ts.map +1 -1
- package/dist/query/atom.js +39 -48
- 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 +131 -158
- package/dist/query/lower.d.ts.map +1 -1
- package/dist/query/lower.js +505 -494
- 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 +35 -42
- package/dist/query/predicate.js.map +1 -1
- package/dist/query/run.d.ts +8 -8
- package/dist/query/run.d.ts.map +1 -1
- package/dist/query/run.js +16 -21
- package/dist/query/run.js.map +1 -1
- package/dist/query/scope.d.ts +139 -74
- package/dist/query/scope.d.ts.map +1 -1
- package/dist/query/scope.js +80 -33
- package/dist/query/scope.js.map +1 -1
- package/dist/relation.d.ts.map +1 -1
- package/dist/relation.js +3 -1
- package/dist/relation.js.map +1 -1
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +12 -2
- package/dist/schema.js.map +1 -1
- package/dist/spec.d.ts +20 -10
- package/dist/spec.d.ts.map +1 -1
- package/dist/spec.js.map +1 -1
- package/dist/statements.d.ts +22 -2
- package/dist/statements.d.ts.map +1 -1
- package/dist/statements.js +26 -5
- package/dist/statements.js.map +1 -1
- package/package.json +3 -3
- package/src/closed.ts +13 -7
- package/src/count.ts +1 -1
- package/src/db.ts +293 -177
- package/src/exhume.ts +48 -11
- package/src/face.ts +13 -6
- package/src/fields.ts +51 -15
- package/src/index.ts +12 -8
- package/src/lower.ts +17 -12
- package/src/marshal.ts +38 -13
- package/src/native.ts +59 -8
- package/src/query/atom.ts +297 -275
- package/src/query/find.ts +212 -0
- package/src/query/lower.ts +692 -724
- package/src/query/predicate.ts +37 -45
- package/src/query/run.ts +17 -22
- package/src/query/scope.ts +184 -90
- package/src/relation.ts +3 -1
- package/src/schema.ts +14 -2
- package/src/spec.ts +21 -9
- package/src/statements.ts +30 -6
- 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,
|
|
39
|
+
import type { AnyCond, BindParamsShape, CheckBindings, CheckCond, CmpKind, CondParamsShape, FindColumn, MatchFields, MatchOwner, MatchShape, RecData, RuleData } from "#query/atom.ts";
|
|
31
40
|
import { allen, and, eq, ge, gt, le, lt, ne, not, or, pointIn } from "#query/atom.ts";
|
|
32
|
-
import type {
|
|
33
|
-
import {
|
|
34
|
-
import type {
|
|
35
|
-
import {
|
|
36
|
-
import type { FieldsShape } from "#relation.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,33 +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;
|
|
118
112
|
} : {
|
|
119
|
-
readonly [
|
|
120
|
-
} :
|
|
121
|
-
readonly [
|
|
113
|
+
readonly [K in keyof B]: never;
|
|
114
|
+
} : {
|
|
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
123
|
/** Names one scalar parameter: typed by its use; the key of the execute params object. */
|
|
133
124
|
readonly param: typeof makeParam;
|
|
134
125
|
/** Names one ∈-set parameter (the IR's `ParamSet`): bound to a readonly array at execution. */
|
|
@@ -157,60 +148,62 @@ interface TermOps {
|
|
|
157
148
|
readonly argMin: typeof argMin;
|
|
158
149
|
readonly pack: typeof pack;
|
|
159
150
|
}
|
|
160
|
-
/** 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). */
|
|
161
152
|
interface QueryRuleScope<Rels extends SchemaRelations, Classes extends SchemaClasses = SchemaClasses> extends TermOps {
|
|
162
|
-
/** The first EDB atom of the rule: fields bind
|
|
163
|
-
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>;
|
|
164
155
|
}
|
|
165
156
|
/** The chain of a plain query rule: more atoms, residual predicates, then the head. */
|
|
166
|
-
interface QueryRuleChain<Rels extends SchemaRelations,
|
|
167
|
-
/** One more positive EDB atom —
|
|
168
|
-
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>;
|
|
169
160
|
/** One residual predicate: a comparison, an `and`/`or` tree, or a negated atom (`r.not`). */
|
|
170
|
-
where<const C extends AnyCond>(cond: CheckCond<
|
|
171
|
-
/** The head projection:
|
|
172
|
-
|
|
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>;
|
|
173
164
|
}
|
|
174
165
|
/** The rule builder an OUTPUT rule of a `program()` receives: a query rule plus finished-stratum `idb` atoms. */
|
|
175
166
|
interface OutputRuleScope<Rels extends SchemaRelations, Classes extends SchemaClasses = SchemaClasses> extends TermOps {
|
|
176
|
-
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>;
|
|
168
|
+
/**
|
|
169
|
+
* A rule may START with the finished stratum: an idb atom is a positive
|
|
170
|
+
* occurrence exactly as the engine represents it, so its variables ground
|
|
171
|
+
* — the identity projection `(c) | reach(c);` is spellable with no
|
|
172
|
+
* re-grounding join over a domain relation.
|
|
173
|
+
*/
|
|
174
|
+
idb<Target extends RecRef<string, ParamsRecord>, const B extends Readonly<Record<string, AnyVar>>>(target: Target, bindings: B & CheckIdbBindings<Classes, HeadOf<Target>, B>): OutputRuleChain<Rels, ParamsOf<Target>, Classes>;
|
|
177
175
|
}
|
|
178
176
|
/** The chain of an output rule: atoms, predicates, `idb` joins over the program's recs, then the head. */
|
|
179
|
-
interface OutputRuleChain<Rels extends SchemaRelations,
|
|
180
|
-
match<R extends QueryRelation<Rels>, const B extends MatchShape<MatchFields<R>>>(relation: R, bindings: B & CheckBindings<
|
|
181
|
-
where<const C extends AnyCond>(cond: CheckCond<
|
|
177
|
+
interface OutputRuleChain<Rels extends SchemaRelations, P extends ParamsRecord, Classes extends SchemaClasses = SchemaClasses> {
|
|
178
|
+
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>;
|
|
179
|
+
where<const C extends AnyCond>(cond: CheckCond<Classes, C> & C): OutputRuleChain<Rels, Flatten<P & CondParamsShape<C>>, Classes>;
|
|
182
180
|
/**
|
|
183
181
|
* One `idb` atom over a FINISHED stratum (any rec of this program): a
|
|
184
|
-
*
|
|
185
|
-
*
|
|
186
|
-
* the rule
|
|
187
|
-
*
|
|
188
|
-
*
|
|
189
|
-
* AND its head signature, so the join is arity- and class-checked
|
|
190
|
-
* against the head at compile time.
|
|
182
|
+
* NAMED join against the rec's head — the bindings record's keys are the
|
|
183
|
+
* head columns, each bound to a variable positively bound by a relation
|
|
184
|
+
* atom of the rule. Threading the rec value the last `.rule(...)` returned
|
|
185
|
+
* carries its params into `Params` AND its head signature, so the join is
|
|
186
|
+
* key-exact and class-checked against the head at compile time.
|
|
191
187
|
*/
|
|
192
|
-
idb<Target extends RecRef<string, ParamsRecord>, const
|
|
193
|
-
|
|
188
|
+
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>;
|
|
189
|
+
find<const F extends FindShape>(entries: F & CheckFind<F>): RuleValue<RowOfFind<F>, P>;
|
|
194
190
|
}
|
|
195
191
|
/** The rule builder a RECURSIVE rule (`rec.rule(...)`) receives. */
|
|
196
192
|
interface RecRuleScope<Rels extends SchemaRelations, Self extends string, Classes extends SchemaClasses = SchemaClasses> extends TermOps {
|
|
197
|
-
match<R extends QueryRelation<Rels>, const B extends MatchShape<MatchFields<R>>>(relation: R, bindings: B & CheckBindings<
|
|
193
|
+
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>;
|
|
198
194
|
}
|
|
199
195
|
/**
|
|
200
|
-
* The chain of a recursive rule. Its `idb` accepts ONLY the rec itself
|
|
201
|
-
*
|
|
202
|
-
*
|
|
203
|
-
* and its `select` takes bound variable NAMES only: aggregates and the
|
|
204
|
-
* measure are unrepresentable in a recursive head (the strata judge's
|
|
205
|
-
* `AggregationThroughCycle`/`MeasureInRecursiveHead`, made unwritable).
|
|
196
|
+
* The chain of a recursive rule. Its `idb` accepts ONLY the rec itself (the
|
|
197
|
+
* self-recursion cut) and its `find` takes bound variables only — aggregates
|
|
198
|
+
* and the measure are unrepresentable in a recursive head.
|
|
206
199
|
*/
|
|
207
|
-
interface RecRuleChain<Rels extends SchemaRelations, Self extends string,
|
|
208
|
-
match<R extends QueryRelation<Rels>, const B extends MatchShape<MatchFields<R>>>(relation: R, bindings: B & CheckBindings<
|
|
209
|
-
where<const C extends AnyCond>(cond: CheckCond<
|
|
210
|
-
/** The self-recursive atom: `idb(self,
|
|
211
|
-
idb<Target extends RecRef<Self, ParamsRecord>, const
|
|
212
|
-
/** The recursive head:
|
|
213
|
-
|
|
200
|
+
interface RecRuleChain<Rels extends SchemaRelations, Self extends string, P extends ParamsRecord, Classes extends SchemaClasses = SchemaClasses> {
|
|
201
|
+
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>;
|
|
202
|
+
where<const C extends AnyCond>(cond: CheckCond<Classes, C> & C): RecRuleChain<Rels, Self, Flatten<P & CondParamsShape<C>>, Classes>;
|
|
203
|
+
/** The self-recursive atom: `idb(self, { headKey: boundVar })` — only this rec's own reference is accepted. */
|
|
204
|
+
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>;
|
|
205
|
+
/** The recursive head: a `find` record of bound variables only; the value carries the head's classed slots for `idb` pairing. */
|
|
206
|
+
find<const F extends FindShape>(entries: F & CheckRecFind<F>): RuleValue<RowOfFind<F>, P, HeadRecordOf<Classes, F>>;
|
|
214
207
|
}
|
|
215
208
|
/** A query's runtime description — everything lowering, the wire marshal, and answer decode read. */
|
|
216
209
|
interface QueryData {
|
|
@@ -219,15 +212,14 @@ interface QueryData {
|
|
|
219
212
|
/** The output rules in written order (multiple rules = set union). */
|
|
220
213
|
readonly rules: readonly RuleData[];
|
|
221
214
|
/** The head columns (every rule derives the same head; written order = answer column order). */
|
|
222
|
-
readonly
|
|
215
|
+
readonly finds: readonly FindColumn[];
|
|
223
216
|
/** The registered params in first-use order across the program walk (= dense `ParamId`s). */
|
|
224
217
|
readonly params: readonly ParamEntry[];
|
|
225
218
|
}
|
|
226
219
|
/**
|
|
227
220
|
* An inert query value. `Row` is the inferred answer-row object type;
|
|
228
|
-
* `Params` the inferred execute-params object type — exactly the params
|
|
229
|
-
*
|
|
230
|
-
* engine.
|
|
221
|
+
* `Params` the inferred execute-params object type — exactly the params the
|
|
222
|
+
* rules use. Prepare with `db.prepare(q)`.
|
|
231
223
|
*/
|
|
232
224
|
interface Query<Rels extends SchemaRelations, Row, Params extends ParamsRecord, Classes extends SchemaClasses = SchemaClasses> {
|
|
233
225
|
readonly schema: Schema<Rels, Classes>;
|
|
@@ -239,11 +231,7 @@ interface Query<Rels extends SchemaRelations, Row, Params extends ParamsRecord,
|
|
|
239
231
|
readonly params: Params;
|
|
240
232
|
};
|
|
241
233
|
}
|
|
242
|
-
/**
|
|
243
|
-
* Any query value as lowering and the runtime consume it: the theory it
|
|
244
|
-
* was built against and its runtime description — every `Query` (typed or
|
|
245
|
-
* program-built) carries exactly this.
|
|
246
|
-
*/
|
|
234
|
+
/** Any query value as lowering and the runtime consume it. */
|
|
247
235
|
interface AnyQuery {
|
|
248
236
|
readonly schema: AnySchema;
|
|
249
237
|
readonly data: QueryData;
|
|
@@ -257,27 +245,24 @@ interface QueryStart<Rels extends SchemaRelations, Classes extends SchemaClasses
|
|
|
257
245
|
rule<RV extends AnyRuleValue>(build: (r: QueryRuleScope<Rels, Classes>) => RV): Query<Rels, RowOf<RV>, ParamsOf<RV>, Classes>;
|
|
258
246
|
}
|
|
259
247
|
/**
|
|
260
|
-
* The one runtime chain every context shares — non-generic on purpose
|
|
261
|
-
* typed chain interfaces
|
|
262
|
-
* apply at the scope factories' boundaries, and the runtime beneath them is
|
|
263
|
-
* one plain value walk. Context gates the two context-bound verbs: `idb`
|
|
264
|
-
* (a program construct — self-only inside a rec, any rec of the program in
|
|
265
|
-
* the output, refused in a plain query) and the recursive `select`
|
|
266
|
-
* (bound variable names only — the creation quarantine).
|
|
248
|
+
* The one runtime chain every context shares — non-generic on purpose. The
|
|
249
|
+
* typed chain interfaces apply at the scope factories' boundaries.
|
|
267
250
|
*/
|
|
268
251
|
interface RawChain {
|
|
269
252
|
match(relation: MatchOwner, bindings: Readonly<Record<string, unknown>>): RawChain;
|
|
270
253
|
where(cond: AnyCond): RawChain;
|
|
271
|
-
idb(target: RecRef<string, ParamsRecord>,
|
|
272
|
-
|
|
254
|
+
idb(target: RecRef<string, ParamsRecord>, bindings: Readonly<Record<string, unknown>>): RawChain;
|
|
255
|
+
find(entries: Readonly<Record<string, unknown>>): RuleValue<never, never>;
|
|
273
256
|
}
|
|
274
257
|
/** The runtime rule-builder shape beneath every typed scope. */
|
|
275
258
|
interface RawScope extends TermOps {
|
|
276
259
|
match(relation: MatchOwner, bindings: Readonly<Record<string, unknown>>): RawChain;
|
|
260
|
+
idb(target: RecRef<string, ParamsRecord>, bindings: Readonly<Record<string, unknown>>): RawChain;
|
|
277
261
|
}
|
|
278
|
-
/** Which rule family a chain builds —
|
|
262
|
+
/** Which rule family a chain builds — plus the schema's runtime class map and theory value (the join judge's authority). */
|
|
279
263
|
type ChainContext = {
|
|
280
264
|
readonly classes: SchemaClasses;
|
|
265
|
+
readonly theory: AnySchema;
|
|
281
266
|
} & ({
|
|
282
267
|
readonly kind: "query";
|
|
283
268
|
} | {
|
|
@@ -291,55 +276,43 @@ type ChainContext = {
|
|
|
291
276
|
declare function makeRawScope(context: ChainContext): RawScope;
|
|
292
277
|
/** Builds one output-rule builder over a program's recs. */
|
|
293
278
|
declare function makeOutputRuleScope<Rels extends SchemaRelations, Classes extends SchemaClasses>(program: ProgramState): OutputRuleScope<Rels, Classes>;
|
|
294
|
-
/** One program's build-time registry: its recs in declaration order
|
|
279
|
+
/** One program's build-time registry: its recs in declaration order, the theory value, and its class map. */
|
|
295
280
|
interface ProgramState {
|
|
296
281
|
readonly recs: RecData[];
|
|
297
282
|
readonly classes: SchemaClasses;
|
|
283
|
+
readonly theory: AnySchema;
|
|
298
284
|
sealed: boolean;
|
|
299
285
|
}
|
|
300
286
|
/** Assembles one typed query value (rules already completed). */
|
|
301
287
|
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>;
|
|
302
288
|
/**
|
|
303
|
-
* Opens a query over a schema: `query(S).rule(r => ...)`. Each `.rule`
|
|
304
|
-
*
|
|
305
|
-
*
|
|
306
|
-
*
|
|
307
|
-
* compare class names off it, at the type level and at construction alike.
|
|
289
|
+
* Opens a query over a schema: `query(S).rule(r => ...)`. Each `.rule` adds
|
|
290
|
+
* one conjunctive rule; multiple rules are the set union. The schema's
|
|
291
|
+
* law-computed class map and theory value ride into every rule builder — the
|
|
292
|
+
* join walls compare against the mint slots off it.
|
|
308
293
|
*/
|
|
309
294
|
declare function query<Rels extends SchemaRelations, Classes extends SchemaClasses>(theory: Schema<Rels, Classes>): QueryStart<Rels, Classes>;
|
|
310
295
|
/**
|
|
311
296
|
* Tags one host literal at a FIELD position (atom bindings): the field's
|
|
312
|
-
* structural kind directs the tag, never a guess.
|
|
313
|
-
* bigint literal tags as the ELEMENT type — the IR's membership typing
|
|
314
|
-
* rule (point membership), an interval-shaped literal as the interval
|
|
315
|
-
* (value equality). A closed-reference literal is its bare handle id,
|
|
316
|
-
* tagged u64 after a roster verification.
|
|
297
|
+
* structural kind directs the tag, never a guess.
|
|
317
298
|
*/
|
|
318
299
|
declare function taggedLiteral(context: string, field: AnyField, value: unknown): TaggedValue;
|
|
319
300
|
/**
|
|
320
|
-
* Tags one host literal at a COMPARISON or PARAM position, where the
|
|
321
|
-
*
|
|
322
|
-
*
|
|
323
|
-
* `pointIn`
|
|
324
|
-
*
|
|
325
|
-
*
|
|
326
|
-
*
|
|
327
|
-
* `pointIn(t, span(...))` and tags as the interval of the sibling's
|
|
328
|
-
* element domain; under every other operator an interval shape against a
|
|
329
|
-
* scalar sibling stays refused (the engine's IllegalComparison — the
|
|
330
|
-
* bug-hunt fix, preserved op-aware).
|
|
301
|
+
* Tags one host literal at a COMPARISON or PARAM position, where the SIBLING
|
|
302
|
+
* anchors the type: a measure sibling is u64, an interval-field sibling
|
|
303
|
+
* contributes its element domain, a scalar sibling its own type. At
|
|
304
|
+
* `pointIn` the operand order is interval-left, point-right, so an
|
|
305
|
+
* interval-shaped literal beside a scalar element-typed sibling is the LEGAL
|
|
306
|
+
* interval operand of `pointIn(t, span(...))`; under every other operator an
|
|
307
|
+
* interval shape against a scalar sibling stays refused.
|
|
331
308
|
*/
|
|
332
309
|
declare function taggedCmpLiteral(context: string, sibling: AnyField | "measure", value: unknown, op: CmpKind | "binding"): TaggedValue;
|
|
333
310
|
/**
|
|
334
311
|
* Lowers a query value to the bridge's `ProgramIr` — pure and stable: the
|
|
335
312
|
* recs in declaration order (`PredId` = index), the output predicate
|
|
336
|
-
*
|
|
337
|
-
* the law the engine's own manifest pins; `db.prepare` re-verifies the
|
|
338
|
-
* alignment against the live manifest before sending. Every registered
|
|
339
|
-
* param must carry a field anchor by now — an unanchorable param (its
|
|
340
|
-
* every use beside a literal) is refused here, naming it.
|
|
313
|
+
* appended last. Every registered param must carry a field anchor by now.
|
|
341
314
|
*/
|
|
342
315
|
declare function lowerQuery(q: AnyQuery): ProgramIr;
|
|
343
|
-
export type { AnyQuery, AnyRuleValue,
|
|
316
|
+
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 };
|
|
344
317
|
export { lowerQuery, makeOutputRuleScope, makeQuery, makeRawScope, query, taggedCmpLiteral, taggedLiteral };
|
|
345
318
|
//# 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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"}
|