@bjornpagen/bumbledb 1.3.0 → 2.0.0-rc.1

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.
Files changed (290) hide show
  1. package/COOKBOOK.md +224 -95
  2. package/README.md +114 -45
  3. package/dist/alternatives.d.ts +5 -6
  4. package/dist/alternatives.d.ts.map +1 -1
  5. package/dist/alternatives.js +5 -6
  6. package/dist/alternatives.js.map +1 -1
  7. package/dist/bin.d.ts +3 -0
  8. package/dist/bin.d.ts.map +1 -0
  9. package/dist/bin.js +85 -0
  10. package/dist/bin.js.map +1 -0
  11. package/dist/capacity.d.ts +14 -17
  12. package/dist/capacity.d.ts.map +1 -1
  13. package/dist/capacity.js +7 -7
  14. package/dist/capacity.js.map +1 -1
  15. package/dist/changes.d.ts +32 -41
  16. package/dist/changes.d.ts.map +1 -1
  17. package/dist/changes.js +86 -110
  18. package/dist/changes.js.map +1 -1
  19. package/dist/closed.d.ts +2 -2
  20. package/dist/closed.d.ts.map +1 -1
  21. package/dist/closed.js +5 -5
  22. package/dist/closed.js.map +1 -1
  23. package/dist/codec.d.ts +20 -27
  24. package/dist/codec.d.ts.map +1 -1
  25. package/dist/codec.js +48 -22
  26. package/dist/codec.js.map +1 -1
  27. package/dist/compile.d.ts +26 -50
  28. package/dist/compile.d.ts.map +1 -1
  29. package/dist/compile.js +75 -64
  30. package/dist/compile.js.map +1 -1
  31. package/dist/database/database.d.ts +98 -0
  32. package/dist/database/database.d.ts.map +1 -0
  33. package/dist/database/database.js +249 -0
  34. package/dist/database/database.js.map +1 -0
  35. package/dist/database/driver.d.ts +40 -0
  36. package/dist/database/driver.d.ts.map +1 -0
  37. package/dist/database/driver.js +68 -0
  38. package/dist/database/driver.js.map +1 -0
  39. package/dist/database/fs.d.ts +12 -0
  40. package/dist/database/fs.d.ts.map +1 -0
  41. package/dist/database/fs.js +120 -0
  42. package/dist/database/fs.js.map +1 -0
  43. package/dist/database/generate.d.ts +26 -0
  44. package/dist/database/generate.d.ts.map +1 -0
  45. package/dist/database/generate.js +102 -0
  46. package/dist/database/generate.js.map +1 -0
  47. package/dist/database/hosted.d.ts +32 -0
  48. package/dist/database/hosted.d.ts.map +1 -0
  49. package/dist/database/hosted.js +44 -0
  50. package/dist/database/hosted.js.map +1 -0
  51. package/dist/database/io.d.ts +94 -0
  52. package/dist/database/io.d.ts.map +1 -0
  53. package/dist/database/io.js +35 -0
  54. package/dist/database/io.js.map +1 -0
  55. package/dist/database/mem.d.ts +26 -0
  56. package/dist/database/mem.d.ts.map +1 -0
  57. package/dist/database/mem.js +67 -0
  58. package/dist/database/mem.js.map +1 -0
  59. package/dist/database/migration.d.ts +55 -0
  60. package/dist/database/migration.d.ts.map +1 -0
  61. package/dist/database/migration.js +46 -0
  62. package/dist/database/migration.js.map +1 -0
  63. package/dist/database/s3.d.ts +36 -0
  64. package/dist/database/s3.d.ts.map +1 -0
  65. package/dist/database/s3.js +141 -0
  66. package/dist/database/s3.js.map +1 -0
  67. package/dist/db.d.ts +44 -128
  68. package/dist/db.d.ts.map +1 -1
  69. package/dist/db.js +163 -287
  70. package/dist/db.js.map +1 -1
  71. package/dist/engine.d.ts +7 -0
  72. package/dist/engine.d.ts.map +1 -0
  73. package/dist/engine.js +2 -0
  74. package/dist/engine.js.map +1 -0
  75. package/dist/errors.d.ts +152 -46
  76. package/dist/errors.d.ts.map +1 -1
  77. package/dist/errors.js +107 -19
  78. package/dist/errors.js.map +1 -1
  79. package/dist/face.d.ts +5 -5
  80. package/dist/face.d.ts.map +1 -1
  81. package/dist/face.js +6 -6
  82. package/dist/face.js.map +1 -1
  83. package/dist/fields.d.ts +4 -5
  84. package/dist/fields.d.ts.map +1 -1
  85. package/dist/fields.js +3 -3
  86. package/dist/fields.js.map +1 -1
  87. package/dist/index.d.ts +60 -58
  88. package/dist/index.d.ts.map +1 -1
  89. package/dist/index.js +27 -29
  90. package/dist/index.js.map +1 -1
  91. package/dist/judgment.d.ts +1 -1
  92. package/dist/judgment.js +1 -1
  93. package/dist/law.d.ts +16 -68
  94. package/dist/law.d.ts.map +1 -1
  95. package/dist/law.js +3 -3
  96. package/dist/law.js.map +1 -1
  97. package/dist/lower.d.ts +3 -3
  98. package/dist/lower.d.ts.map +1 -1
  99. package/dist/lower.js +35 -39
  100. package/dist/lower.js.map +1 -1
  101. package/dist/native/addon.d.ts +23 -0
  102. package/dist/native/addon.d.ts.map +1 -0
  103. package/dist/native/addon.js +15 -0
  104. package/dist/native/addon.js.map +1 -0
  105. package/dist/native/binding.d.ts +996 -0
  106. package/dist/native/json.d.ts +14 -0
  107. package/dist/native/json.d.ts.map +1 -0
  108. package/dist/native/json.js +73 -0
  109. package/dist/native/json.js.map +1 -0
  110. package/dist/native/load.d.ts +9 -0
  111. package/dist/native/load.d.ts.map +1 -0
  112. package/dist/native/load.js +30 -0
  113. package/dist/native/load.js.map +1 -0
  114. package/dist/native/op.d.ts +29 -0
  115. package/dist/native/op.d.ts.map +1 -0
  116. package/dist/native/op.js +50 -0
  117. package/dist/native/op.js.map +1 -0
  118. package/dist/query/atom.d.ts +13 -14
  119. package/dist/query/atom.d.ts.map +1 -1
  120. package/dist/query/atom.js +2 -2
  121. package/dist/query/atom.js.map +1 -1
  122. package/dist/query/compute.d.ts +7 -7
  123. package/dist/query/compute.d.ts.map +1 -1
  124. package/dist/query/compute.js +7 -16
  125. package/dist/query/compute.js.map +1 -1
  126. package/dist/query/find.d.ts +8 -8
  127. package/dist/query/find.d.ts.map +1 -1
  128. package/dist/query/find.js +1 -1
  129. package/dist/query/lower.d.ts +31 -17
  130. package/dist/query/lower.d.ts.map +1 -1
  131. package/dist/query/lower.js +260 -368
  132. package/dist/query/lower.js.map +1 -1
  133. package/dist/query/run.d.ts +5 -5
  134. package/dist/query/run.d.ts.map +1 -1
  135. package/dist/query/run.js +32 -15
  136. package/dist/query/run.js.map +1 -1
  137. package/dist/query/scope.d.ts +20 -28
  138. package/dist/query/scope.d.ts.map +1 -1
  139. package/dist/query/scope.js +13 -8
  140. package/dist/query/scope.js.map +1 -1
  141. package/dist/query/segments.d.ts +2 -2
  142. package/dist/query/segments.d.ts.map +1 -1
  143. package/dist/query/segments.js +3 -3
  144. package/dist/query/segments.js.map +1 -1
  145. package/dist/relation.d.ts +1 -1
  146. package/dist/relation.d.ts.map +1 -1
  147. package/dist/relation.js +4 -4
  148. package/dist/relation.js.map +1 -1
  149. package/dist/result.d.ts +15 -22
  150. package/dist/result.d.ts.map +1 -1
  151. package/dist/result.js +30 -39
  152. package/dist/result.js.map +1 -1
  153. package/dist/rows.d.ts +9 -33
  154. package/dist/rows.d.ts.map +1 -1
  155. package/dist/rows.js +8 -12
  156. package/dist/rows.js.map +1 -1
  157. package/dist/runtime.d.ts +17 -43
  158. package/dist/runtime.d.ts.map +1 -1
  159. package/dist/runtime.js +41 -241
  160. package/dist/runtime.js.map +1 -1
  161. package/dist/scalar.d.ts +36 -106
  162. package/dist/scalar.d.ts.map +1 -1
  163. package/dist/scalar.js +36 -185
  164. package/dist/scalar.js.map +1 -1
  165. package/dist/schema.d.ts +7 -18
  166. package/dist/schema.d.ts.map +1 -1
  167. package/dist/schema.js +18 -228
  168. package/dist/schema.js.map +1 -1
  169. package/dist/selection.d.ts +4 -4
  170. package/dist/selection.d.ts.map +1 -1
  171. package/dist/selection.js +5 -5
  172. package/dist/selection.js.map +1 -1
  173. package/dist/shape.d.ts +5 -5
  174. package/dist/shape.d.ts.map +1 -1
  175. package/dist/spec.d.ts +7 -79
  176. package/dist/spec.d.ts.map +1 -1
  177. package/dist/spec.js.map +1 -1
  178. package/dist/statements.d.ts +3 -3
  179. package/dist/statements.d.ts.map +1 -1
  180. package/dist/statements.js +10 -10
  181. package/dist/statements.js.map +1 -1
  182. package/dist/uuid.d.ts +1 -1
  183. package/dist/uuid.d.ts.map +1 -1
  184. package/dist/uuid.js +1 -1
  185. package/dist/uuid.js.map +1 -1
  186. package/dist/values.d.ts +2 -2
  187. package/dist/values.d.ts.map +1 -1
  188. package/dist/values.js +2 -2
  189. package/dist/values.js.map +1 -1
  190. package/package.json +18 -18
  191. package/src/alternatives.ts +7 -8
  192. package/src/bin.ts +82 -0
  193. package/src/capacity.ts +20 -23
  194. package/src/changes.ts +134 -197
  195. package/src/closed.ts +5 -5
  196. package/src/codec.ts +77 -51
  197. package/src/compile.ts +91 -113
  198. package/src/database/database.ts +413 -0
  199. package/src/database/driver.ts +134 -0
  200. package/src/database/fs.ts +119 -0
  201. package/src/database/generate.ts +116 -0
  202. package/src/database/hosted.ts +102 -0
  203. package/src/database/io.ts +134 -0
  204. package/src/database/mem.ts +113 -0
  205. package/src/database/migration.ts +107 -0
  206. package/src/database/s3.ts +231 -0
  207. package/src/db.ts +290 -547
  208. package/src/engine.ts +14 -0
  209. package/src/errors.ts +118 -39
  210. package/src/face.ts +9 -9
  211. package/src/fields.ts +6 -7
  212. package/src/index.ts +102 -109
  213. package/src/judgment.ts +1 -1
  214. package/src/law.ts +18 -70
  215. package/src/lower.ts +61 -72
  216. package/src/native/addon.ts +54 -0
  217. package/src/native/binding.d.ts +996 -0
  218. package/src/native/json.ts +100 -0
  219. package/src/native/load.ts +31 -0
  220. package/src/native/op.ts +73 -0
  221. package/src/query/atom.ts +15 -16
  222. package/src/query/compute.ts +13 -22
  223. package/src/query/find.ts +8 -8
  224. package/src/query/lower.ts +323 -414
  225. package/src/query/run.ts +42 -21
  226. package/src/query/scope.ts +37 -38
  227. package/src/query/segments.ts +4 -4
  228. package/src/relation.ts +4 -4
  229. package/src/result.ts +53 -80
  230. package/src/rows.ts +18 -46
  231. package/src/runtime.ts +50 -346
  232. package/src/scalar.ts +76 -336
  233. package/src/schema.ts +23 -284
  234. package/src/selection.ts +6 -6
  235. package/src/shape.ts +5 -5
  236. package/src/spec.ts +7 -85
  237. package/src/statements.ts +11 -11
  238. package/src/uuid.ts +1 -1
  239. package/src/values.ts +4 -4
  240. package/dist/close.d.ts +0 -24
  241. package/dist/close.d.ts.map +0 -1
  242. package/dist/close.js +0 -34
  243. package/dist/close.js.map +0 -1
  244. package/dist/db-native.d.ts +0 -196
  245. package/dist/db-native.d.ts.map +0 -1
  246. package/dist/db-native.js +0 -13
  247. package/dist/db-native.js.map +0 -1
  248. package/dist/internal/log.d.ts +0 -26
  249. package/dist/internal/log.d.ts.map +0 -1
  250. package/dist/internal/log.js +0 -12
  251. package/dist/internal/log.js.map +0 -1
  252. package/dist/migration.d.ts +0 -31
  253. package/dist/migration.d.ts.map +0 -1
  254. package/dist/migration.js +0 -47
  255. package/dist/migration.js.map +0 -1
  256. package/dist/native.d.ts +0 -562
  257. package/dist/native.d.ts.map +0 -1
  258. package/dist/native.js +0 -123
  259. package/dist/native.js.map +0 -1
  260. package/dist/query/description.d.ts +0 -41
  261. package/dist/query/description.d.ts.map +0 -1
  262. package/dist/query/description.js +0 -311
  263. package/dist/query/description.js.map +0 -1
  264. package/dist/query/parse-ir.d.ts +0 -10
  265. package/dist/query/parse-ir.d.ts.map +0 -1
  266. package/dist/query/parse-ir.js +0 -280
  267. package/dist/query/parse-ir.js.map +0 -1
  268. package/dist/runtime-codes.d.ts +0 -2
  269. package/dist/runtime-codes.d.ts.map +0 -1
  270. package/dist/runtime-codes.js +0 -18
  271. package/dist/runtime-codes.js.map +0 -1
  272. package/dist/runtime-errors.d.ts +0 -118
  273. package/dist/runtime-errors.d.ts.map +0 -1
  274. package/dist/runtime-errors.js +0 -98
  275. package/dist/runtime-errors.js.map +0 -1
  276. package/dist/runtime-native.d.ts +0 -141
  277. package/dist/runtime-native.d.ts.map +0 -1
  278. package/dist/runtime-native.js +0 -5
  279. package/dist/runtime-native.js.map +0 -1
  280. package/pack-provenance.json +0 -7
  281. package/src/close.ts +0 -53
  282. package/src/db-native.ts +0 -243
  283. package/src/internal/log.ts +0 -48
  284. package/src/migration.ts +0 -61
  285. package/src/native.ts +0 -736
  286. package/src/query/description.ts +0 -424
  287. package/src/query/parse-ir.ts +0 -291
  288. package/src/runtime-codes.ts +0 -17
  289. package/src/runtime-errors.ts +0 -109
  290. package/src/runtime-native.ts +0 -189
package/dist/index.d.ts CHANGED
@@ -1,61 +1,63 @@
1
1
  /**
2
- * @bjornpagen/bumbledb — the Effect-native TypeScript SDK for the
3
- * bumbledb embedded relational engine. Pure
4
- * schema/query/scalar construction is synchronous metadata; all work is
5
- * lazy, scoped and bounded on the one native runtime. No Promise, sync,
6
- * or disposal twin. The raw native bridge is not exported from this barrel.
2
+ * Typed schemas and queries, validated by the engine as they are defined, and the durable
3
+ * `Database` over an object store. Every database operation is a lazy, scoped Effect on the one
4
+ * native runtime; the embedded `Db` lives in `./engine`.
7
5
  */
8
- export { alternatives } from "./alternatives.js";
9
- export type { BoundsOnTarget, CapacityWeight, CapacityWindow, DurationRef, FieldRef, UnitDimensionBan, WeightOnSource } from "./capacity.js";
10
- export { duration, ref, weigh, within } from "./capacity.js";
11
- export type { ChangeCounts, ChangeDraft, ChangeRecord } from "./changes.js";
12
- export { ChangeSet } from "./changes.js";
13
- export type { AnyClosed, AxiomRow, Axioms, Closed, PayloadField } from "./closed.js";
14
- export { closed, closedId } from "./closed.js";
15
- export type { RowShape } from "./codec.js";
16
- export { decodeBoundaryRows, decodeRows, encodeBoundaryRows, encodeRows, rowSchema, rowShape } from "./codec.js";
17
- export type { CompiledSchema, SchemaId } from "./compile.js";
18
- export { Schema } from "./compile.js";
19
- export type { ApplyOutcome, CoreWitness, DbInspection, JudgeOutcome, PreparedQuery, QueryReader, Snapshot, StorageInspection, WriteExpected, WriteOptions } from "./db.js";
20
- export { Db } from "./db.js";
21
- export { AuthoringDiagnostic, AuthoringError, NativeLoadError, NativeOperationError, NativeReportedError, SdkInvariantError } from "./errors.js";
22
- export type { AnyFace, Arity, Face, FaceArityMismatch, FaceFields, FaceOwner, FaceShapeMismatch, FaceShapes, FaceSource, OwnerOf, ProjectedShape, SameArity, SameShapes } from "./face.js";
23
- export { on } from "./face.js";
24
- export type { AnyClosedIdField, AnyClosedRoster, AnyField, BoolField, BytesField, ClosedHandleTuple, ClosedIdField, ClosedRoster, F64Field, FloatIntervalValue, I64Field, Infer, IntervalElementKind, IntervalField, IntervalValue, SignatureOf, StrField, U64Field, UuidField } from "./fields.js";
25
- export { bool, bytes, f64, i64, interval, str, u64, uuid } from "./fields.js";
26
- export type { Same, SameLen } from "./judgment.js";
27
- export type { ClassesOf, ClassWall, LawfulStatements, RelationClasses, SchemaClasses } from "./law.js";
28
- export type { AtomIr, AtomSourceIr, CmpOpIr, ComparisonIr, ConditionTreeIr, FindTermIr, HeadTermIr, InteriorIr, QueryIr, RecIr, RuleIr, ScalarExprIr, TermIr, Violation, ViolationFact } from "./native.js";
29
- export type { FindColumn } from "./query/atom.js";
30
- export { ALLEN } from "./query/atom.js";
31
- export type { AnyComputeExpr, ComputeExpr, ComputeValue, QueryNode } from "./query/compute.js";
32
- export { Compute } from "./query/compute.js";
33
- export type { DescriptionHead, DescriptionParameter, DescriptionRow, DescriptionTable, QueryDescription } from "./query/description.js";
34
- export { describeQuery, queryFromDescription } from "./query/description.js";
35
- export type { Agg, HeadRecordOf, RowOfFind } from "./query/find.js";
36
- export type { AnyQuery, AnyRuleValue, Query, QueryData, QueryParams, QueryReachStart, QueryRelation, QueryRow, QueryRuleChain, QueryRuleScope, QueryStart, RecRuleChain, RecRuleScope, RuleValue, TermOps } from "./query/lower.js";
37
- export { lowerQuery, query } from "./query/lower.js";
38
- export type { ClassedField, Flatten, ImportedFieldVar, MatchFields, MatchOwner, Param, ParamEntry, ParamsRecord, SetParam, Var, VarsOf } from "./query/scope.js";
39
- export { v } from "./query/scope.js";
40
- export type { IntervalVar, SegmentOp, Segments } from "./query/segments.js";
41
- export type { AnyRelation, Fact, FieldsShape, Relation, RelationField, RelationFields } from "./relation.js";
42
- export { relation } from "./relation.js";
43
- export type { CompleteResult } from "./result.js";
44
- export type { CellValue } from "./rows.js";
45
- export { cellOf, factOfCells, flatRowsOf, keyCellsOf } from "./rows.js";
46
- export type { NativeRuntimeOptions } from "./runtime.js";
47
- export { NativeRuntime } from "./runtime.js";
48
- export type { CloseReport, OutstandingWork } from "./runtime-errors.js";
49
- export { CloseFailure, DbError, dbError, runtimeErrorCodes } from "./runtime-errors.js";
50
- export type { IntervalKind, NumericCast, Rounding, ScalarExpr, ScalarFieldRef, ScalarInputKind, ScalarKind, ScalarLeafScope, ScalarLiteral, ScalarNode, ScalarResultKind, ScalarValue } from "./scalar.js";
51
- export { Scalar } from "./scalar.js";
52
- export type { AnySchema, Schema as SchemaDeclaration, SchemaRelation, SchemaRelations } from "./schema.js";
53
- export { schema } from "./schema.js";
54
- export type { AnySelected, FieldsOf, Selected, SelectionBinding, SelectionInput } from "./selection.js";
55
- export { select } from "./selection.js";
56
- export type { Key, QueryTemplate, Rel } from "./shape.js";
57
- export type { CapacityBoundSpec, CapacityWindowSpec, FieldSpec, LiteralSetSpec, LiteralSpec, RelationSpec, RowSpec, SchemaSpec, SideSpec, StatementSpec, ValueSpec, ValueTypeSpec } from "./spec.js";
58
- export type { CapacityStatement, ContainmentStatement, KeyStatement, MirrorsStatement, Statement } from "./statements.js";
59
- export { capacity, contained, key, mirrors, renderStatement } from "./statements.js";
60
- export { Uuid } from "./uuid.js";
6
+ export { alternatives } from "./alternatives.ts";
7
+ export type { BoundsOnTarget, CapacityWeight, CapacityWindow, DurationRef, FieldRef, UnitDimensionBan, WeightOnSource } from "./capacity.ts";
8
+ export { duration, ref, weigh, within } from "./capacity.ts";
9
+ export type { ChangeCounts, ChangeDraft, ChangeRecord } from "./changes.ts";
10
+ export { ChangeSet } from "./changes.ts";
11
+ export type { AnyClosed, AxiomRow, Axioms, Closed, PayloadField } from "./closed.ts";
12
+ export { closed, closedId } from "./closed.ts";
13
+ export type { RowShape } from "./codec.ts";
14
+ export { decodeBoundaryField, decodeBoundaryRows, decodeRows, encodeBoundaryField, encodeBoundaryRows, encodeRows, fieldSchema, rowSchema, rowShape } from "./codec.ts";
15
+ export type { SchemaId } from "./compile.ts";
16
+ export type { Consistency, DatabaseOptions, DatabasePool, DatabaseReader, PoolOptions, SubmitOptions, SubmitOutcome, Tuning } from "./database/database.ts";
17
+ export { Database, RequestId } from "./database/database.ts";
18
+ export { FsStore } from "./database/fs.ts";
19
+ export type { Body, Bucket, ExecutorOptions, IoRequest, IoResponse, IoResult, Millis, ObjectStore, Reply, Target } from "./database/io.ts";
20
+ export type { Fault, MemStoreOptions } from "./database/mem.ts";
21
+ export { MemStore } from "./database/mem.ts";
22
+ export type { AnyMigration, Migrations, Populate } from "./database/migration.ts";
23
+ export { Migration } from "./database/migration.ts";
24
+ export type { S3Sender, S3StoreOptions } from "./database/s3.ts";
25
+ export { S3Store } from "./database/s3.ts";
26
+ export type { PreparedQuery, QueryReader } from "./db.ts";
27
+ export type { CloseReport, OutstandingWork } from "./errors.ts";
28
+ export { AuthoringDiagnostic, AuthoringError, CloseFailure, DbError, dbError, NativeLoadError } from "./errors.ts";
29
+ export type { AnyFace, Arity, Face, FaceArityMismatch, FaceFields, FaceOwner, FaceShapeMismatch, FaceShapes, FaceSource, OwnerOf, ProjectedShape, SameArity, SameShapes } from "./face.ts";
30
+ export { on } from "./face.ts";
31
+ export type { AnyClosedIdField, AnyClosedRoster, AnyField, BoolField, BytesField, ClosedHandleTuple, ClosedIdField, ClosedRoster, F64Field, FloatIntervalValue, I64Field, Infer, IntervalElementKind, IntervalField, IntervalValue, SignatureOf, StrField, U64Field, UuidField } from "./fields.ts";
32
+ export { bool, bytes, f64, i64, interval, str, u64, uuid } from "./fields.ts";
33
+ export type { Same, SameLen } from "./judgment.ts";
34
+ export type { ClassesOf, ClassWall, LawfulStatements, RelationClasses, SchemaClasses } from "./law.ts";
35
+ export type { EvidenceOut, FactOut, HeadOut, MigrationOut, OutcomeOut, ReceiptOut, RefusalOut, SettledOut, ViolationOut as Violation } from "./native/binding.d.ts";
36
+ export type { FindColumn } from "./query/atom.ts";
37
+ export { ALLEN } from "./query/atom.ts";
38
+ export type { AnyComputeExpr, ComputeExpr, ComputeValue, QueryNode } from "./query/compute.ts";
39
+ export { Compute } from "./query/compute.ts";
40
+ export type { Agg, HeadRecordOf, RowOfFind } from "./query/find.ts";
41
+ export type { AnyQuery, AnyRuleValue, Query, QueryData, QueryParams, QueryReachStart, QueryRelation, QueryRow, QueryRuleChain, QueryRuleScope, QueryStart, RecRuleChain, RecRuleScope, RuleValue, TermOps } from "./query/lower.ts";
42
+ export { lowerQuery, query } from "./query/lower.ts";
43
+ export type { ClassedField, Flatten, ImportedFieldVar, MatchFields, MatchOwner, Param, ParamEntry, ParamsRecord, SetParam, Var, VarsOf } from "./query/scope.ts";
44
+ export { v } from "./query/scope.ts";
45
+ export type { IntervalVar, SegmentOp, Segments } from "./query/segments.ts";
46
+ export type { AnyRelation, Fact, FieldsShape, Relation, RelationField, RelationFields } from "./relation.ts";
47
+ export { relation } from "./relation.ts";
48
+ export type { CompleteResult } from "./result.ts";
49
+ export type { CellValue } from "./rows.ts";
50
+ export { cellOf, factOfCells, flatRowsOf, keyCellsOf } from "./rows.ts";
51
+ export type { BumbleOptions } from "./runtime.ts";
52
+ export { Bumble } from "./runtime.ts";
53
+ export type { IntervalKind, NumericCast, Rounding, ScalarInputKind, ScalarKind, ScalarLiteral, ScalarNode, ScalarResultKind, ScalarValue } from "./scalar.ts";
54
+ export type { AnySchema, Schema, SchemaRelation, SchemaRelations } from "./schema.ts";
55
+ export { schema } from "./schema.ts";
56
+ export type { AnySelected, FieldsOf, Selected, SelectionBinding, SelectionInput } from "./selection.ts";
57
+ export { select } from "./selection.ts";
58
+ export type { Key, QueryTemplate, Rel } from "./shape.ts";
59
+ export type { CapacityBoundSpec, CapacityWindowSpec, LiteralSetSpec, LiteralSpec, ValueSpec } from "./spec.ts";
60
+ export type { CapacityStatement, ContainmentStatement, KeyStatement, MirrorsStatement, Statement } from "./statements.ts";
61
+ export { capacity, contained, key, mirrors, renderStatement } from "./statements.ts";
62
+ export { Uuid } from "./uuid.ts";
61
63
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,32 +1,30 @@
1
1
  /**
2
- * @bjornpagen/bumbledb — the Effect-native TypeScript SDK for the
3
- * bumbledb embedded relational engine. Pure
4
- * schema/query/scalar construction is synchronous metadata; all work is
5
- * lazy, scoped and bounded on the one native runtime. No Promise, sync,
6
- * or disposal twin. The raw native bridge is not exported from this barrel.
2
+ * Typed schemas and queries, validated by the engine as they are defined, and the durable
3
+ * `Database` over an object store. Every database operation is a lazy, scoped Effect on the one
4
+ * native runtime; the embedded `Db` lives in `./engine`.
7
5
  */
8
- export { alternatives } from "#alternatives.ts";
9
- export { duration, ref, weigh, within } from "#capacity.ts";
10
- export { ChangeSet } from "#changes.ts";
11
- export { closed, closedId } from "#closed.ts";
12
- export { decodeBoundaryRows, decodeRows, encodeBoundaryRows, encodeRows, rowSchema, rowShape } from "#codec.ts";
13
- export { Schema } from "#compile.ts";
14
- export { Db } from "#db.ts";
15
- export { AuthoringDiagnostic, AuthoringError, NativeLoadError, NativeOperationError, NativeReportedError, SdkInvariantError } from "#errors.ts";
16
- export { on } from "#face.ts";
17
- export { bool, bytes, f64, i64, interval, str, u64, uuid } from "#fields.ts";
18
- export { ALLEN } from "#query/atom.ts";
19
- export { Compute } from "#query/compute.ts";
20
- export { describeQuery, queryFromDescription } from "#query/description.ts";
21
- export { lowerQuery, query } from "#query/lower.ts";
22
- export { v } from "#query/scope.ts";
23
- export { relation } from "#relation.ts";
24
- export { cellOf, factOfCells, flatRowsOf, keyCellsOf } from "#rows.ts";
25
- export { NativeRuntime } from "#runtime.ts";
26
- export { CloseFailure, DbError, dbError, runtimeErrorCodes } from "#runtime-errors.ts";
27
- export { Scalar } from "#scalar.ts";
28
- export { schema } from "#schema.ts";
29
- export { select } from "#selection.ts";
30
- export { capacity, contained, key, mirrors, renderStatement } from "#statements.ts";
31
- export { Uuid } from "#uuid.ts";
6
+ export { alternatives } from "./alternatives.js";
7
+ export { duration, ref, weigh, within } from "./capacity.js";
8
+ export { ChangeSet } from "./changes.js";
9
+ export { closed, closedId } from "./closed.js";
10
+ export { decodeBoundaryField, decodeBoundaryRows, decodeRows, encodeBoundaryField, encodeBoundaryRows, encodeRows, fieldSchema, rowSchema, rowShape } from "./codec.js";
11
+ export { Database, RequestId } from "./database/database.js";
12
+ export { FsStore } from "./database/fs.js";
13
+ export { MemStore } from "./database/mem.js";
14
+ export { Migration } from "./database/migration.js";
15
+ export { S3Store } from "./database/s3.js";
16
+ export { AuthoringDiagnostic, AuthoringError, CloseFailure, DbError, dbError, NativeLoadError } from "./errors.js";
17
+ export { on } from "./face.js";
18
+ export { bool, bytes, f64, i64, interval, str, u64, uuid } from "./fields.js";
19
+ export { ALLEN } from "./query/atom.js";
20
+ export { Compute } from "./query/compute.js";
21
+ export { lowerQuery, query } from "./query/lower.js";
22
+ export { v } from "./query/scope.js";
23
+ export { relation } from "./relation.js";
24
+ export { cellOf, factOfCells, flatRowsOf, keyCellsOf } from "./rows.js";
25
+ export { Bumble } from "./runtime.js";
26
+ export { schema } from "./schema.js";
27
+ export { select } from "./selection.js";
28
+ export { capacity, contained, key, mirrors, renderStatement } from "./statements.js";
29
+ export { Uuid } from "./uuid.js";
32
30
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAU/C,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAE3D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAQvC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAE7C,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,kBAAkB,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAE/G,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAapC,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAC3B,OAAO,EACN,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,MAAM,YAAY,CAAA;AAgBnB,OAAO,EAAE,EAAE,EAAE,MAAM,UAAU,CAAA;AAsB7B,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAqB5E,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AAEtC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAQ3C,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAmB3E,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAcnD,OAAO,EAAE,CAAC,EAAE,MAAM,iBAAiB,CAAA;AAUnC,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAGvC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAE3C,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAetF,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAEnC,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAEnC,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAuBtC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACnF,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAUhD,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAE5D,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAQxC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAE9C,OAAO,EACN,mBAAmB,EACnB,kBAAkB,EAClB,UAAU,EACV,mBAAmB,EACnB,kBAAkB,EAClB,UAAU,EACV,WAAW,EACX,SAAS,EACT,QAAQ,EACR,MAAM,YAAY,CAAA;AAYnB,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAc1C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAE5C,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAEnD,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAG1C,OAAO,EACN,mBAAmB,EACnB,cAAc,EACd,YAAY,EACZ,OAAO,EACP,OAAO,EACP,eAAe,EACf,MAAM,aAAa,CAAA;AAgBpB,OAAO,EAAE,EAAE,EAAE,MAAM,WAAW,CAAA;AAsB9B,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAe7E,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAEvC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAmB5C,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAcpD,OAAO,EAAE,CAAC,EAAE,MAAM,kBAAkB,CAAA;AAUpC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAGxC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAEvE,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAarC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAUvC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACpF,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA"}
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * {@link Same} is definitional equality by mutual extension — the ONE
5
5
  * spelling of `A = B` at the type tier. {@link SameLen} is Peano equality
6
- * on tuple lengths — zero equals zero, successor recurses on successor,
6
+ * on tuple lengths — zero equals zero, n + 1 recurses on n,
7
7
  * everything else is refused. An open array carries no Nat (its length is
8
8
  * `number`), so it proves nothing.
9
9
  */
package/dist/judgment.js CHANGED
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * {@link Same} is definitional equality by mutual extension — the ONE
5
5
  * spelling of `A = B` at the type tier. {@link SameLen} is Peano equality
6
- * on tuple lengths — zero equals zero, successor recurses on successor,
6
+ * on tuple lengths — zero equals zero, n + 1 recurses on n,
7
7
  * everything else is refused. An open array carries no Nat (its length is
8
8
  * `number`), so it proves nothing.
9
9
  */
package/dist/law.d.ts CHANGED
@@ -1,65 +1,16 @@
1
1
  /**
2
- * The law-typing engine (owner ruling 2026-07-18, "option 2, zero debate"):
3
- * THE LAWS TYPE THE COLUMNS. Domains are declared nowhere — `schema`
4
- * computes every field's domain FROM the statement list, at BOTH the type
5
- * level (this module's type machinery, reading the statements tuple type)
6
- * and at runtime (a plain union-find over the same pairs), and the two
7
- * tiers are the same computation by construction.
8
- *
9
- * The three class laws (ratified; implemented exactly):
10
- *
11
- * 1. GENERATORS — a closed relation's synthetic id is a generator named
12
- * `"Kind.id"` (the vocabulary mints its own row ids). Ordinary relations
13
- * have no generator: the database issues no identity (`fresh` is deleted),
14
- * and identity fields are ordinary application-owned values.
15
- * 2. GENERATOR-LESS classes are named by their least member coordinate
16
- * in relation-declaration × field-declaration order (readable off the
17
- * relation record and each member's frozen field list at the VALUE
18
- * tier — deterministic, pinned forever; the wire reads only this
19
- * tier). At the TYPE tier the same class is carried as its
20
- * member-coordinate SET (see {@link ClassOfCoord}): TypeScript's
21
- * union member order is not observably deterministic, so a type-level
22
- * least-member pick would drift between compilations — the set is the
23
- * canonical deterministic spelling, the runtime name is always a
24
- * member of it, and the join judgment is identical at both tiers.
25
- * 3. BARE — a field in no law has NO class and pairs only with bare in
26
- * queries (the deliberate sum-domain pointer stays legal).
27
- *
28
- * THE WALL: a class containing more than one generator is a contradiction
29
- * (two mints cannot share a carrier) — a schema-level COMPILE error (the
30
- * named, self-locating {@link ClassWall}: which generator coordinates
31
- * collided, through which paired slots) with a construction-time runtime
32
- * twin (`computeClasses` throws with the same content, naming the exact
33
- * statement). The TARGET-KEY WALL ({@link TargetKeyWall},
34
- * 60-containment-parity) rides the same constraint seam: a containment/
35
- * mirrors/capacity target projection that resolves no key of its relation
36
- * is the same kind of schema-level compile error, with `schema`'s
37
- * `verifyTargetKeys` as its authoritative runtime twin.
38
- *
39
- * Every paired face of the statement tuple unions its positionwise field
40
- * slots: containment (ψ-selected targets included — a selection changes
41
- * pairing not at all), the `==` bijection, and capacity source/target pairs.
42
- * `key` statements pair nothing (an FD constrains one relation's own
43
- * rows; it identifies no carriers).
44
- *
45
- * The type tier reads pairs off the statement types' exact face data, so
46
- * spell the statement list INLINE in `schema` (the `const` type
47
- * parameter keeps the tuple precise). A widened `Statement[]` list
48
- * degrades the TYPE tier to generators-only (no pair is readable off a
49
- * widened type) — the runtime map stays complete and authoritative, and
50
- * the wire lowering reads only the runtime map. Every loop below is
51
- * tail-recursive with an accumulator, so the machinery rides TypeScript's
52
- * tail-recursion elimination for large schemas (~40 relations, ~200 slots,
53
- * ~123 statements); should a schema ever exceed the compiler's limits, tsc
54
- * fails LOUDLY with its own instantiation-depth error — the map is never
55
- * silently widened.
2
+ * The laws type the columns: `schema` computes each field's class from its statements at the type
3
+ * level and at runtime (a union-find over the same pairs). A closed id is a generator naming its
4
+ * class, a generator-less class is named by its least member coordinate, and a field in no law is
5
+ * bare. Two generators in one class, or a target projection that resolves no key, is a compile
6
+ * error with a runtime twin. Spell statements inline: a widened list degrades the type tier.
56
7
  */
57
- import type { AnyClosed } from "./closed.js";
58
- import type { AnyFace } from "./face.js";
59
- import type { Same } from "./judgment.js";
60
- import type { AnyRelation, RelationFields } from "./relation.js";
61
- import type { SchemaRelation, SchemaRelations } from "./schema.js";
62
- import { type Statement } from "./statements.js";
8
+ import type { AnyClosed } from "./closed.ts";
9
+ import type { AnyFace } from "./face.ts";
10
+ import type { Same } from "./judgment.ts";
11
+ import type { AnyRelation, RelationFields } from "./relation.ts";
12
+ import type { SchemaRelation, SchemaRelations } from "./schema.ts";
13
+ import { type Statement } from "./statements.ts";
63
14
  type RelationClasses = {
64
15
  readonly [field: string]: string | undefined;
65
16
  };
@@ -171,16 +122,13 @@ type DecidableKeyData<D> = [D] extends [
171
122
  * widened owner, a widened or union projection each make the roster
172
123
  * UNKNOWABLE.
173
124
  *
174
- * Any failure is the tier's one forbidden verdict in waiting — a false
175
- * wall — so anything outside the whitelist degrades the WHOLE
176
- * {@link TargetKeyWall} to silent (the degradation law: best effort
125
+ * A wrong answer here would be a false wall, so anything outside the
126
+ * whitelist degrades the WHOLE {@link TargetKeyWall} to silent (best effort
177
127
  * degrades to silent, never to a wrong judgment), exactly as a widened
178
128
  * FACE already silences its own judgment; the value tier stays
179
- * authoritative. ONE recorded limit, pre-existing and outside this
180
- * detector's reach: a generic type parameter CONSTRAINED to a union of
181
- * tuples hangs tsc in the deferred-scan machinery before any verdict is
182
- * reached — a degenerate spelling no shipped surface writes, recorded
183
- * here as the tier's known boundary, not fixed.
129
+ * authoritative. Known limit: a generic type parameter CONSTRAINED to a
130
+ * union of tuples hangs tsc in the deferred-scan machinery; no shipped
131
+ * surface writes that spelling.
184
132
  */
185
133
  type DecidableRoster<Stmts extends readonly Statement[]> = [true] extends [IsMulti<Stmts>] ? false : [number] extends [Stmts["length"]] ? false : [Stmts] extends [readonly [infer H extends Statement, ...infer T extends readonly Statement[]]] ? [true] extends [IsMulti<H>] ? false : "key" extends H["kind"] ? [DecidableKeyData<H>] extends [true] ? DecidableRoster<T> : false : DecidableRoster<T> : true;
186
134
  interface TargetKeyWall<Target extends string, Projection extends string> {
package/dist/law.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"law.d.ts","sourceRoot":"","sources":["../src/law.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"law.d.ts","sourceRoot":"","sources":["../src/law.ts"],"names":[],"mappings":"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"}
package/dist/law.js CHANGED
@@ -1,6 +1,6 @@
1
- import { AuthoringError } from "#errors.ts";
2
- import { isClosedMember, sealedFieldsOf } from "#closed.ts";
3
- import { renderStatement } from "#statements.ts";
1
+ import { AuthoringError } from "./errors.js";
2
+ import { isClosedMember, sealedFieldsOf } from "./closed.js";
3
+ import { renderStatement } from "./statements.js";
4
4
  function memberCoords(relations) {
5
5
  const out = [];
6
6
  for (const [relationName, member] of Object.entries(relations)) {
package/dist/law.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"law.js","sourceRoot":"","sources":["../src/law.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"law.js","sourceRoot":"","sources":["../src/law.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAU5C,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAK5D,OAAO,EAAE,eAAe,EAAkB,MAAM,iBAAiB,CAAA;AAsUjE,SAAS,YAAY,CAAC,SAA0B;IAC/C,MAAM,GAAG,GAAmB,EAAE,CAAA;IAC9B,KAAK,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAChE,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,CAAA;QACrC,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,UAAU,CAAC,QAAQ;YACrE,OAAO;gBACN,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,SAAS,EAAE,MAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI;aAC3C,CAAA;QACF,CAAC,CAAC,CAAA;QACF,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAA;IAC7C,CAAC;IACD,OAAO,GAAG,CAAA;AACX,CAAC;AASD,SAAS,aAAa;IACrB,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAA;IACxC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAoB,CAAA;IAC9C,SAAS,IAAI,CAAC,KAAa;QAC1B,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QAC5B,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACtB,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;YACxB,OAAO,KAAK,CAAA;QACb,CAAC;QACD,IAAI,EAAE,KAAK,KAAK,EAAE,CAAC;YAClB,OAAO,KAAK,CAAA;QACb,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,CAAA;QACrB,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QACvB,OAAO,IAAI,CAAA;IACZ,CAAC;IACD,OAAO;QACN,IAAI;QACJ,KAAK,CAAC,CAAC,EAAE,CAAC;YACT,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;YACrB,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;YACrB,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;gBACrB,OAAO,KAAK,CAAA;YACb,CAAC;YACD,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;YACxB,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;YACnF,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACxB,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;YAC9B,CAAC;YACD,OAAO,KAAK,CAAA;QACb,CAAC;QACD,YAAY,CAAC,IAAI;YAChB,OAAO,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;QAClC,CAAC;QACD,aAAa,CAAC,KAAK;YAClB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAA;YACxB,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;QAC/D,CAAC;KACD,CAAA;AACF,CAAC;AAED,SAAS,cAAc,CAAC,SAAoB;IAC3C,MAAM,IAAI,GAAG,SAAS,CAAA;IACtB,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QACzB,OAAO,SAAS,CAAA;IACjB,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;AAClC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,cAAc,CAAC,IAAY,EAAE,SAA0B,EAAE,UAAgC;IACjG,MAAM,OAAO,GAAG,YAAY,CAAC,SAAS,CAAC,CAAA;IACvC,MAAM,EAAE,GAAG,aAAa,EAAE,CAAA;IAC1B,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAA;IAChC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAA;IACtC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC9B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YACnC,MAAM,KAAK,GAAG,GAAG,MAAM,CAAC,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAA;YAChD,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACd,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;gBACrB,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;gBACvB,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;YACxB,CAAC;QACF,CAAC;IACF,CAAC;IACD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACpC,MAAM,KAAK,GAAG,cAAc,CAAC,SAAS,CAAC,CAAA;QACvC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACzB,SAAQ;QACT,CAAC;QACD,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,KAAK,CAAA;QAC9B,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,SAAS,CAAC,SAAS,EAAE,QAAQ;YAC/D,MAAM,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;YAC/C,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC/B,OAAM;YACP,CAAC;YACD,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,SAAS,EAAE,CAAA;YAClD,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,WAAW,EAAE,CAAA;YACpD,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;YAClB,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;YAClB,MAAM,IAAI,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;YACrC,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;YAClC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrB,MAAM,IAAI,cAAc,CAAC;oBACxB,OAAO,EAAE,UAAU,IAAI,0DAA0D,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,yCAAyC,eAAe,CAAC,SAAS,CAAC,EAAE;iBACxK,CAAC,CAAA;YACH,CAAC;QACF,CAAC,CAAC,CAAA;IACH,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAA;IACvC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC9B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YACnC,MAAM,KAAK,GAAG,GAAG,MAAM,CAAC,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAA;YAChD,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC3B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtB,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;gBAClC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAA;YAClC,CAAC;QACF,CAAC;IACF,CAAC;IACD,MAAM,OAAO,GAAoC,EAAE,CAAA;IACnD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAuC,EAAE,CAAA;QACrD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YACnC,MAAM,KAAK,GAAG,GAAG,MAAM,CAAC,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAA;YAChD,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YAC5D,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE;gBACzC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;gBACtD,UAAU,EAAE,IAAI;aAChB,CAAC,CAAA;QACH,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACrB,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;IACrF,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;AAC9B,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,eAAe,CACvB,OAAsB,EACtB,SAA0B;IAE1B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/B,OAAO,KAAK,CAAA;IACb,CAAC;IACD,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,SAAS,cAAc,CAAC,MAAM;QAClE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QACvC,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACtD,OAAO,KAAK,CAAA;QACb,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,WAAW,CAAC,KAAK;YACpD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;QACzC,CAAC,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;AACH,CAAC;AAYD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,CAAA"}
package/dist/lower.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import type { AnySchema } from "./schema.js";
2
- import type { SchemaSpec } from "./spec.js";
3
- declare function lower(theory: AnySchema): SchemaSpec;
1
+ import type { SchemaSpecIn } from "./native/binding.d.ts";
2
+ import type { AnySchema } from "./schema.ts";
3
+ declare function lower(theory: AnySchema): SchemaSpecIn;
4
4
  export { lower };
5
5
  //# sourceMappingURL=lower.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lower.d.ts","sourceRoot":"","sources":["../src/lower.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAC3C,OAAO,KAAK,EAIX,UAAU,EAIV,MAAM,UAAU,CAAA;AAoGjB,iBAAS,KAAK,CAAC,MAAM,EAAE,SAAS,GAAG,UAAU,CAS5C;AAED,OAAO,EAAE,KAAK,EAAE,CAAA"}
1
+ {"version":3,"file":"lower.d.ts","sourceRoot":"","sources":["../src/lower.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAGX,YAAY,EAIZ,MAAM,uBAAuB,CAAA;AAG9B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAmG5C,iBAAS,KAAK,CAAC,MAAM,EAAE,SAAS,GAAG,YAAY,CAS9C;AAED,OAAO,EAAE,KAAK,EAAE,CAAA"}
package/dist/lower.js CHANGED
@@ -1,88 +1,84 @@
1
- import { AuthoringError } from "#errors.ts";
2
- import { isClosedMember } from "#closed.ts";
3
- import { literalOf } from "#fields.ts";
4
- import { relationFields } from "#relation.ts";
1
+ import { isClosedMember } from "./closed.js";
2
+ import { AuthoringError } from "./errors.js";
3
+ import { literalOf } from "./fields.js";
4
+ import { literalIn, literalSetIn, weightIn, windowIn } from "./native/json.js";
5
+ import { relationFields } from "./relation.js";
6
+ const ELEMENT = { u64: "U64", i64: "I64", f64: "F64" };
5
7
  function valueTypeOf(field) {
6
8
  switch (field.kind) {
7
9
  case "bool":
8
- return { kind: "bool" };
10
+ return { kind: "Bool" };
9
11
  case "u64":
10
- return { kind: "u64" };
12
+ return { kind: "U64" };
11
13
  case "i64":
12
- return { kind: "i64" };
14
+ return { kind: "I64" };
13
15
  case "f64":
14
- return { kind: "f64" };
16
+ return { kind: "F64" };
15
17
  case "uuid":
16
- return { kind: "uuid" };
18
+ return { kind: "Uuid" };
17
19
  case "str":
18
- return { kind: "string" };
20
+ return { kind: "String" };
19
21
  case "bytes":
20
- return { kind: "fixedBytes", len: field.width };
22
+ return { kind: "FixedBytes", len: field.width };
21
23
  case "interval":
22
- return { kind: "interval", element: field.element, width: field.width };
24
+ if (field.width === undefined)
25
+ return { kind: "Interval", element: ELEMENT[field.element] };
26
+ if (field.element === "f64")
27
+ throw new AuthoringError({ message: "a fixed-width interval needs an integer element" });
28
+ return { kind: "FixedInterval", element: ELEMENT[field.element], width: field.width.toString() };
23
29
  }
24
30
  }
25
31
  function lowerField(name, field, newtype) {
26
- return {
27
- name,
28
- valueType: valueTypeOf(field),
29
- newtype
30
- };
32
+ return newtype === undefined
33
+ ? { name, valueType: valueTypeOf(field) }
34
+ : { name, valueType: valueTypeOf(field), newtype };
31
35
  }
32
36
  function lowerFace(face) {
33
37
  return {
34
38
  relation: face.owner.name,
35
39
  projection: [...face.projection],
36
- selection: face.selection.map(function lowerBinding(binding) {
37
- return [binding.field, binding.set];
38
- })
40
+ selection: face.selection.map((binding) => ({ field: binding.field, set: literalSetIn(binding.set) }))
39
41
  };
40
42
  }
41
43
  function lowerStatement(statement) {
42
44
  const data = statement;
43
45
  switch (data.kind) {
44
46
  case "key":
45
- return { kind: "fd", relation: data.owner.name, projection: [...data.projection] };
47
+ return { kind: "Fd", relation: data.owner.name, projection: [...data.projection] };
46
48
  case "containment":
47
49
  return {
48
- kind: "containment",
50
+ kind: "Containment",
49
51
  source: lowerFace(data.source),
50
52
  target: lowerFace(data.target),
51
53
  bidirectional: false
52
54
  };
53
55
  case "mirrors":
54
56
  return {
55
- kind: "containment",
57
+ kind: "Containment",
56
58
  source: lowerFace(data.source),
57
59
  target: lowerFace(data.target),
58
60
  bidirectional: true
59
61
  };
60
62
  case "capacity":
61
63
  return {
62
- kind: "capacity",
64
+ kind: "Capacity",
63
65
  target: lowerFace(data.target),
64
- weight: data.weight,
65
- window: data.window,
66
+ weight: weightIn(data.weight),
67
+ window: windowIn(data.window),
66
68
  source: lowerFace(data.source)
67
69
  };
68
70
  }
69
71
  }
70
72
  function lowerRelation(relation, classes) {
71
- const fields = relationFields(relation).map(function lowerDeclared(declared) {
72
- return lowerField(declared.name, declared.field, classes[declared.name]);
73
- });
74
- return { name: relation.name, fields, closed: undefined };
73
+ const fields = relationFields(relation).map((declared) => lowerField(declared.name, declared.field, classes[declared.name]));
74
+ return { name: relation.name, fields };
75
75
  }
76
76
  function lowerClosed(member, classes) {
77
- const fields = Object.entries(member.columns).map(function lowerColumn([name, field]) {
78
- return lowerField(name, field, classes[name]);
79
- });
80
- const rows = member.handles.map(function lowerRow(handle) {
81
- return {
82
- handle,
83
- values: Object.entries(member.columns).map(([name, field]) => literalOf(field, member.axioms[handle]?.[name]))
84
- };
85
- });
77
+ const fields = Object.entries(member.columns).map(([name, field]) => lowerField(name, field, classes[name]));
78
+ const rows = member.handles.map((handle) => ({
79
+ handle,
80
+ values: Object.entries(member.columns).map(([name, field]) => literalIn(literalOf(field, member.axioms[handle]?.[name])))
81
+ }));
86
82
  const newtype = classes.id;
87
83
  if (newtype === undefined) {
88
84
  throw new AuthoringError({