@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
@@ -1 +1 @@
1
- {"version":3,"file":"scope.js","sourceRoot":"","sources":["../../src/query/scope.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scope.js","sourceRoot":"","sources":["../../src/query/scope.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import type { IntervalElementKind, IntervalField } from "../fields.js";
2
- import { type AnyVar } from "./scope.js";
1
+ import type { IntervalElementKind, IntervalField } from "../fields.ts";
2
+ import { type AnyVar } from "./scope.ts";
3
3
  type IntervalVar<E extends IntervalElementKind = IntervalElementKind> = AnyVar & {
4
4
  readonly field: IntervalField<E>;
5
5
  };
@@ -1 +1 @@
1
- {"version":3,"file":"segments.d.ts","sourceRoot":"","sources":["../../src/query/segments.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AACpE,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,iBAAiB,CAAA;AAG3D,KAAK,WAAW,CAAC,CAAC,SAAS,mBAAmB,GAAG,mBAAmB,IAAI,MAAM,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;CAAE,CAAA;AACrH,KAAK,SAAS,GAAG,cAAc,GAAG,YAAY,CAAA;AAE9C,mFAAmF;AACnF,UAAU,QAAQ,CAAC,CAAC,SAAS,mBAAmB,GAAG,mBAAmB;IACrE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;IACzB,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAA;IACtB,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;IAC7B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;CAC9B;AAoBD,iBAAS,YAAY,CAAC,CAAC,SAAS,mBAAmB,EAClD,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,EACpB,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAC5B,QAAQ,CAAC,CAAC,CAAC,CAEb;AAED,iBAAS,UAAU,CAAC,CAAC,SAAS,mBAAmB,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAEpH;AAED,iBAAS,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,QAAQ,CAQrD;AAED,iBAAS,YAAY,CAAC,KAAK,EAAE,QAAQ,GAAG,aAAa,CAAC,mBAAmB,EAAE,SAAS,CAAC,CAEpF;AAED,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAA;AAChD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,CAAA"}
1
+ {"version":3,"file":"segments.d.ts","sourceRoot":"","sources":["../../src/query/segments.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAEtE,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,YAAY,CAAA;AAEtD,KAAK,WAAW,CAAC,CAAC,SAAS,mBAAmB,GAAG,mBAAmB,IAAI,MAAM,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;CAAE,CAAA;AACrH,KAAK,SAAS,GAAG,cAAc,GAAG,YAAY,CAAA;AAE9C,mFAAmF;AACnF,UAAU,QAAQ,CAAC,CAAC,SAAS,mBAAmB,GAAG,mBAAmB;IACrE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;IACzB,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAA;IACtB,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;IAC7B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;CAC9B;AAoBD,iBAAS,YAAY,CAAC,CAAC,SAAS,mBAAmB,EAClD,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,EACpB,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAC5B,QAAQ,CAAC,CAAC,CAAC,CAEb;AAED,iBAAS,UAAU,CAAC,CAAC,SAAS,mBAAmB,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAEpH;AAED,iBAAS,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,QAAQ,CAQrD;AAED,iBAAS,YAAY,CAAC,KAAK,EAAE,QAAQ,GAAG,aAAa,CAAC,mBAAmB,EAAE,SAAS,CAAC,CAEpF;AAED,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAA;AAChD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,CAAA"}
@@ -1,6 +1,6 @@
1
- import { AuthoringError } from "#errors.ts";
2
- import { isTerm, term } from "#query/scope.ts";
3
- import { recordValue } from "#values.ts";
1
+ import { AuthoringError } from "../errors.js";
2
+ import { recordValue } from "../values.js";
3
+ import { isTerm, term } from "./scope.js";
4
4
  function segments(op, left, right) {
5
5
  if (!isTerm(left) ||
6
6
  left[term] !== "var" ||
@@ -1 +1 @@
1
- {"version":3,"file":"segments.js","sourceRoot":"","sources":["../../src/query/segments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAE3C,OAAO,EAAe,MAAM,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAaxC,SAAS,QAAQ,CAChB,EAAa,EACb,IAAoB,EACpB,KAA8B;IAE9B,IACC,CAAC,MAAM,CAAC,IAAI,CAAC;QACb,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK;QACpB,CAAC,MAAM,CAAC,KAAK,CAAC;QACd,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK;QACrB,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU;QAC9B,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU;QAC/B,IAAI,CAAC,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,KAAK,CAAC,OAAO;QAE1C,MAAM,IAAI,cAAc,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,wDAAwD,EAAE,CAAC,CAAA;IACrG,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;AAC5D,CAAC;AAED,SAAS,YAAY,CACpB,IAAoB,EACpB,KAA8B;IAE9B,OAAO,QAAQ,CAAC,cAAc,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;AAC7C,CAAC;AAED,SAAS,UAAU,CAAgC,IAAoB,EAAE,KAA8B;IACtG,OAAO,QAAQ,CAAC,YAAY,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;AAC3C,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IACjC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO,KAAK,CAAA;IAChH,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IAC/D,MAAM,KAAK,GAAG,KAAiB,CAAA;IAC/B,IAAI,KAAK,CAAC,EAAE,KAAK,cAAc,IAAI,KAAK,CAAC,EAAE,KAAK,YAAY;QAC3D,MAAM,IAAI,cAAc,CAAC,EAAE,OAAO,EAAE,0BAA0B,EAAE,CAAC,CAAA;IAClE,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;IAC3C,OAAO,IAAI,CAAA;AACZ,CAAC;AAED,SAAS,YAAY,CAAC,KAAe;IACpC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;AAChG,CAAC;AAGD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,CAAA"}
1
+ {"version":3,"file":"segments.js","sourceRoot":"","sources":["../../src/query/segments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAE7C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,EAAe,MAAM,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAatD,SAAS,QAAQ,CAChB,EAAa,EACb,IAAoB,EACpB,KAA8B;IAE9B,IACC,CAAC,MAAM,CAAC,IAAI,CAAC;QACb,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK;QACpB,CAAC,MAAM,CAAC,KAAK,CAAC;QACd,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK;QACrB,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU;QAC9B,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU;QAC/B,IAAI,CAAC,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,KAAK,CAAC,OAAO;QAE1C,MAAM,IAAI,cAAc,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,wDAAwD,EAAE,CAAC,CAAA;IACrG,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;AAC5D,CAAC;AAED,SAAS,YAAY,CACpB,IAAoB,EACpB,KAA8B;IAE9B,OAAO,QAAQ,CAAC,cAAc,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;AAC7C,CAAC;AAED,SAAS,UAAU,CAAgC,IAAoB,EAAE,KAA8B;IACtG,OAAO,QAAQ,CAAC,YAAY,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;AAC3C,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IACjC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO,KAAK,CAAA;IAChH,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IAC/D,MAAM,KAAK,GAAG,KAAiB,CAAA;IAC/B,IAAI,KAAK,CAAC,EAAE,KAAK,cAAc,IAAI,KAAK,CAAC,EAAE,KAAK,YAAY;QAC3D,MAAM,IAAI,cAAc,CAAC,EAAE,OAAO,EAAE,0BAA0B,EAAE,CAAC,CAAA;IAClE,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;IAC3C,OAAO,IAAI,CAAA;AACZ,CAAC;AAED,SAAS,YAAY,CAAC,KAAe;IACpC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;AAChG,CAAC;AAGD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,CAAA"}
@@ -1,4 +1,4 @@
1
- import { type AnyField, type Infer } from "./fields.js";
1
+ import { type AnyField, type Infer } from "./fields.ts";
2
2
  /** Ordinary relations are structural declarations. Field order defines native ordinals. */
3
3
  interface Relation<Name extends string = string, Fields extends FieldsShape = FieldsShape> {
4
4
  readonly kind: "relation";
@@ -1 +1 @@
1
- {"version":3,"file":"relation.d.ts","sourceRoot":"","sources":["../src/relation.ts"],"names":[],"mappings":"AACA,OAAO,EACN,KAAK,QAAQ,EAIb,KAAK,KAAK,EACV,MAAM,YAAY,CAAA;AAInB,2FAA2F;AAC3F,UAAU,QAAQ,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,EAAE,MAAM,SAAS,WAAW,GAAG,WAAW;IACxF,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;IACnB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CACvB;AACD,KAAK,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;AACrD,KAAK,WAAW,GAAG,QAAQ,CAAA;AAC3B,KAAK,cAAc,CAAC,CAAC,SAAS,WAAW,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAA;AACxD,KAAK,IAAI,CAAC,CAAC,SAAS,WAAW,IAAI;IAAE,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,CAAA;AAEhG,UAAU,aAAa;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAA;CACxB;AAED,kFAAkF;AAClF,iBAAS,SAAS,CAAC,CAAC,SAAS,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAAA;AACvE,iBAAS,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,WAAW,CAAA;AAehE,iBAAS,kBAAkB,CAAC,CAAC,SAAS,WAAW,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAAA;AAC/D,iBAAS,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAA;AAiBxD,iBAAS,QAAQ,CAAC,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,KAAK,CAAC,MAAM,SAAS,WAAW,EAC5E,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,GACZ,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAExB;AAED,kEAAkE;AAClE,iBAAS,cAAc,CAAC,QAAQ,EAAE,WAAW,GAAG,SAAS,aAAa,EAAE,CAEvE;AAED,YAAY,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,EAAE,CAAA;AACvF,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,kBAAkB,EAAE,cAAc,EAAE,CAAA"}
1
+ {"version":3,"file":"relation.d.ts","sourceRoot":"","sources":["../src/relation.ts"],"names":[],"mappings":"AACA,OAAO,EACN,KAAK,QAAQ,EAIb,KAAK,KAAK,EACV,MAAM,aAAa,CAAA;AAIpB,2FAA2F;AAC3F,UAAU,QAAQ,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM,EAAE,MAAM,SAAS,WAAW,GAAG,WAAW;IACxF,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;IACnB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CACvB;AACD,KAAK,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;AACrD,KAAK,WAAW,GAAG,QAAQ,CAAA;AAC3B,KAAK,cAAc,CAAC,CAAC,SAAS,WAAW,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAA;AACxD,KAAK,IAAI,CAAC,CAAC,SAAS,WAAW,IAAI;IAAE,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,CAAA;AAEhG,UAAU,aAAa;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAA;CACxB;AAED,kFAAkF;AAClF,iBAAS,SAAS,CAAC,CAAC,SAAS,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAAA;AACvE,iBAAS,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,WAAW,CAAA;AAehE,iBAAS,kBAAkB,CAAC,CAAC,SAAS,WAAW,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAAA;AAC/D,iBAAS,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAA;AAiBxD,iBAAS,QAAQ,CAAC,KAAK,CAAC,IAAI,SAAS,MAAM,EAAE,KAAK,CAAC,MAAM,SAAS,WAAW,EAC5E,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,GACZ,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAExB;AAED,kEAAkE;AAClE,iBAAS,cAAc,CAAC,QAAQ,EAAE,WAAW,GAAG,SAAS,aAAa,EAAE,CAEvE;AAED,YAAY,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,EAAE,CAAA;AACvF,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,kBAAkB,EAAE,cAAc,EAAE,CAAA"}
package/dist/relation.js CHANGED
@@ -1,7 +1,7 @@
1
- import { AuthoringError } from "#errors.ts";
2
- import { assertDeclarationOrderKey, assertDeclarationRecord, fieldDescriptor } from "#fields.ts";
3
- import { descriptorCache } from "#immutable.ts";
4
- import { recordValue } from "#values.ts";
1
+ import { AuthoringError } from "./errors.js";
2
+ import { assertDeclarationOrderKey, assertDeclarationRecord, fieldDescriptor } from "./fields.js";
3
+ import { descriptorCache } from "./immutable.js";
4
+ import { recordValue } from "./values.js";
5
5
  function ownFields(context, input) {
6
6
  if (typeof input !== "object" || input === null)
7
7
  throw new AuthoringError({ message: `${context}: expected a field record` });
@@ -1 +1 @@
1
- {"version":3,"file":"relation.js","sourceRoot":"","sources":["../src/relation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC3C,OAAO,EAEN,yBAAyB,EACzB,uBAAuB,EACvB,eAAe,EAEf,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAqBxC,SAAS,SAAS,CAAC,OAAe,EAAE,KAAc;IACjD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAC9C,MAAM,IAAI,cAAc,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,2BAA2B,EAAE,CAAC,CAAA;IAC7E,uBAAuB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IACvC,OAAO,MAAM,CAAC,MAAM,CACnB,MAAM,CAAC,WAAW,CACjB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE;QAC3C,yBAAyB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;QACxC,OAAO,CAAC,IAAI,EAAE,eAAe,CAAC,GAAG,OAAO,IAAI,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC,CAAA;IAC5D,CAAC,CAAC,CACF,CACD,CAAA;AACF,CAAC;AAID,SAAS,kBAAkB,CAAC,KAAc;IACzC,OAAO,eAAe,CAAC,KAAK,CAAC,CAAA;AAC9B,CAAC;AAED,MAAM,eAAe,GAAG,eAAe,CAAC,CAAC,KAAK,EAAe,EAAE;IAC9D,MAAM,GAAG,GAAG,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;IACtE,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ;QAC1D,MAAM,IAAI,cAAc,CAAC,EAAE,OAAO,EAAE,2CAA2C,EAAE,CAAC,CAAA;IACnF,yBAAyB,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;IAC/C,OAAO,MAAM,CAAC,MAAM,CAAC;QACpB,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,MAAM,EAAE,SAAS,CAAC,YAAY,GAAG,CAAC,IAAI,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC;KAC5D,CAAC,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,SAAS,QAAQ,CAChB,IAAU,EACV,MAAc;IAEd,OAAO,kBAAkB,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;AAC9D,CAAC;AAED,kEAAkE;AAClE,SAAS,cAAc,CAAC,QAAqB;IAC5C,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;AACjF,CAAC;AAGD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,kBAAkB,EAAE,cAAc,EAAE,CAAA"}
1
+ {"version":3,"file":"relation.js","sourceRoot":"","sources":["../src/relation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAEN,yBAAyB,EACzB,uBAAuB,EACvB,eAAe,EAEf,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAqBzC,SAAS,SAAS,CAAC,OAAe,EAAE,KAAc;IACjD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAC9C,MAAM,IAAI,cAAc,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,2BAA2B,EAAE,CAAC,CAAA;IAC7E,uBAAuB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IACvC,OAAO,MAAM,CAAC,MAAM,CACnB,MAAM,CAAC,WAAW,CACjB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE;QAC3C,yBAAyB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;QACxC,OAAO,CAAC,IAAI,EAAE,eAAe,CAAC,GAAG,OAAO,IAAI,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC,CAAA;IAC5D,CAAC,CAAC,CACF,CACD,CAAA;AACF,CAAC;AAID,SAAS,kBAAkB,CAAC,KAAc;IACzC,OAAO,eAAe,CAAC,KAAK,CAAC,CAAA;AAC9B,CAAC;AAED,MAAM,eAAe,GAAG,eAAe,CAAC,CAAC,KAAK,EAAe,EAAE;IAC9D,MAAM,GAAG,GAAG,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;IACtE,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ;QAC1D,MAAM,IAAI,cAAc,CAAC,EAAE,OAAO,EAAE,2CAA2C,EAAE,CAAC,CAAA;IACnF,yBAAyB,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;IAC/C,OAAO,MAAM,CAAC,MAAM,CAAC;QACpB,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,MAAM,EAAE,SAAS,CAAC,YAAY,GAAG,CAAC,IAAI,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC;KAC5D,CAAC,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,SAAS,QAAQ,CAChB,IAAU,EACV,MAAc;IAEd,OAAO,kBAAkB,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;AAC9D,CAAC;AAED,kEAAkE;AAClE,SAAS,cAAc,CAAC,QAAqB;IAC5C,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;AACjF,CAAC;AAGD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,kBAAkB,EAAE,cAAc,EAAE,CAAA"}
package/dist/result.d.ts CHANGED
@@ -1,32 +1,25 @@
1
1
  import { Effect, Stream } from "effect";
2
- import type { ResultHandle } from "./db-native.js";
3
- import type { FindColumn } from "./query/atom.js";
4
- import type { CloseReport, DbError } from "./runtime-errors.js";
2
+ import type { DbError } from "./errors.ts";
3
+ import type { ResultRef } from "./native/addon.ts";
4
+ import type { FindColumn } from "./query/atom.ts";
5
5
  /**
6
- * One complete answer set, sealed after evaluation and independent of its
7
- * source snapshot. collect() explicitly materializes all rows into JS and
8
- * leaves the result available. pages() consumes it once through bounded
9
- * delivery batches; it does not stream query execution.
10
- *
11
- * The stream owns its cursor through Effect scope. Early termination,
12
- * failure, interruption and EOF close/drain it. Creating the stream does
13
- * not spend the result; running it twice fails with SpentHandle.
6
+ * One complete answer set, sealed after evaluation and independent of its snapshot. `collect`
7
+ * reads every row and leaves the result readable. `pages` spends the result once through
8
+ * bounded batches; the stream owns its cursor, so ending it early releases the cursor, and
9
+ * running it a second time fails with `SpentHandle`.
14
10
  */
15
11
  interface CompleteResult<A> {
16
12
  collect(): Effect.Effect<ReadonlyArray<A>, DbError>;
17
13
  pages(): Stream.Stream<ReadonlyArray<A>, DbError>;
18
- close(): Effect.Effect<CloseReport>;
19
14
  }
20
- interface ResultInternal {
21
- readonly handle: ResultHandle;
15
+ declare class CompleteResultLive<A> implements CompleteResult<A> {
16
+ #private;
17
+ constructor(handle: ResultRef, finds: readonly FindColumn[]);
18
+ collect(): Effect.Effect<ReadonlyArray<A>, DbError>;
19
+ pages(): Stream.Stream<ReadonlyArray<A>, DbError>;
20
+ /** The native result behind `value`, when `value` is a result this SDK made. */
21
+ static handle(value: object): ResultRef | undefined;
22
22
  }
23
- /** Private cross-module accessor (scope finalizers in db.ts reach the handle). */
24
- declare function internalResult(value: object): ResultInternal | undefined;
25
- /**
26
- * Internal constructor: `db.ts` publishes results through this after
27
- * execution completes. Each delivery has independent cooperative cancellation.
28
- */
29
- declare function makeCompleteResult<A>(handle: ResultHandle, finds: readonly FindColumn[]): CompleteResult<A>;
30
23
  export type { CompleteResult };
31
- export { internalResult, makeCompleteResult };
24
+ export { CompleteResultLive };
32
25
  //# sourceMappingURL=result.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../src/result.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAU,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/C,OAAO,KAAK,EAAgB,YAAY,EAAE,MAAM,eAAe,CAAA;AAE/D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAIhD,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAE9D;;;;;;;;;GASG;AACH,UAAU,cAAc,CAAC,CAAC;IACzB,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;IACnD,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;IACjD,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;CACnC;AAED,UAAU,cAAc;IACvB,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAA;CAC7B;AAID,kFAAkF;AAClF,iBAAS,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAEjE;AAQD;;;GAGG;AACH,iBAAS,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,UAAU,EAAE,GAAG,cAAc,CAAC,CAAC,CAAC,CAkDpG;AAED,YAAY,EAAE,cAAc,EAAE,CAAA;AAC9B,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAA"}
1
+ {"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../src/result.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAU,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,KAAK,EAAa,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAG7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAIjD;;;;;GAKG;AACH,UAAU,cAAc,CAAC,CAAC;IACzB,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;IACnD,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;CACjD;AAMD,cAAM,kBAAkB,CAAC,CAAC,CAAE,YAAW,cAAc,CAAC,CAAC,CAAC;;IAIvD,YAAY,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,UAAU,EAAE,EAG1D;IAED,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAQlD;IAED,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAqBhD;IAED,gFAAgF;IAChF,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAElD;CACD;AAED,YAAY,EAAE,cAAc,EAAE,CAAA;AAC9B,OAAO,EAAE,kBAAkB,EAAE,CAAA"}
package/dist/result.js CHANGED
@@ -1,45 +1,36 @@
1
1
  import { Effect, Option, Stream } from "effect";
2
- import { drainClose, releaseOwner } from "#close.ts";
3
- import { dbNative } from "#db-native.ts";
4
- import { decodeAnswers } from "#query/run.ts";
5
- import { nativeOperationWith } from "#runtime.ts";
6
- const resultInternals = new WeakMap();
7
- /** Private cross-module accessor (scope finalizers in db.ts reach the handle). */
8
- function internalResult(value) {
9
- return resultInternals.get(value);
10
- }
2
+ import { addon } from "./native/addon.js";
3
+ import { call, scoped } from "./native/op.js";
4
+ import { decodeAnswers } from "./query/run.js";
11
5
  function decodePage(finds, rows) {
12
- // Owned ordinary records in declared column order — the same fields and
13
- // shapes on every page (stable row shape; no Proxy, no per-row fiber).
14
6
  return Object.freeze(decodeAnswers(finds, rows));
15
7
  }
16
- /**
17
- * Internal constructor: `db.ts` publishes results through this after
18
- * execution completes. Each delivery has independent cooperative cancellation.
19
- */
20
- function makeCompleteResult(handle, finds) {
21
- const value = {
22
- collect() {
23
- return Effect.suspend(() => nativeOperationWith("CompleteResult.collect", (callback) => dbNative.runtimeResultCollect(handle, callback), dbNative.runtimeRowsTake, (rows) => decodePage(finds, rows)));
24
- },
25
- pages() {
26
- return Stream.unwrap(Effect.gen(function* () {
27
- const cursor = yield* Effect.acquireRelease(nativeOperationWith("CompleteResult.pages", (callback) => dbNative.runtimeResultCursor(handle, callback), dbNative.runtimeCursorTake, (taken) => taken), (taken) => releaseOwner("ResultCursor.close", (callback) => dbNative.runtimeCursorClose(taken, callback)), { interruptible: true });
28
- return Stream.paginate(undefined, () => nativeOperationWith("CompleteResult.page", (callback) => dbNative.runtimeCursorNext(cursor, callback), dbNative.runtimePageTake, (page) => page).pipe(Effect.map((page) => {
29
- if (page === null) {
30
- return [[], Option.none()];
31
- }
32
- return [[decodePage(finds, page)], Option.some(undefined)];
33
- })));
34
- }));
35
- },
36
- close() {
37
- return drainClose("CompleteResult.close", (callback) => dbNative.runtimeResultClose(handle, callback));
38
- }
39
- };
40
- Object.freeze(value);
41
- resultInternals.set(value, { handle });
42
- return value;
8
+ class CompleteResultLive {
9
+ #handle;
10
+ #finds;
11
+ constructor(handle, finds) {
12
+ this.#handle = handle;
13
+ this.#finds = finds;
14
+ }
15
+ collect() {
16
+ const handle = this.#handle;
17
+ const finds = this.#finds;
18
+ return call("CompleteResult.collect", (done) => addon.runtimeResultCollect(handle, done), (lease) => decodePage(finds, addon.runtimeRowsTake(lease))).pipe(Effect.withSpan("CompleteResult.collect"));
19
+ }
20
+ pages() {
21
+ const handle = this.#handle;
22
+ const finds = this.#finds;
23
+ return Stream.unwrap(Effect.gen(function* () {
24
+ const cursor = yield* scoped("ResultCursor.release", call("CompleteResult.pages", (done) => addon.runtimeResultCursor(handle, done), addon.runtimeCursorTake), (owned) => (done) => addon.runtimeCursorClose(owned, done));
25
+ return Stream.paginate(undefined, () => call("CompleteResult.page", (done) => addon.runtimeCursorNext(cursor, done), addon.runtimePageTake).pipe(Effect.map((page) => page === null
26
+ ? [[], Option.none()]
27
+ : [[decodePage(finds, page)], Option.some(undefined)])));
28
+ })).pipe(Stream.withSpan("CompleteResult.pages"));
29
+ }
30
+ /** The native result behind `value`, when `value` is a result this SDK made. */
31
+ static handle(value) {
32
+ return #handle in value ? value.#handle : undefined;
33
+ }
43
34
  }
44
- export { internalResult, makeCompleteResult };
35
+ export { CompleteResultLive };
45
36
  //# sourceMappingURL=result.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"result.js","sourceRoot":"","sources":["../src/result.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"result.js","sourceRoot":"","sources":["../src/result.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAG/C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAE7C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAc9C,SAAS,UAAU,CAAI,KAA4B,EAAE,IAAuC;IAC3F,OAAO,MAAM,CAAC,MAAM,CAAC,aAAa,CAAI,KAAK,EAAE,IAAI,CAAC,CAAC,CAAA;AACpD,CAAC;AAED,MAAM,kBAAkB;IACd,OAAO,CAAW;IAClB,MAAM,CAAuB;IAEtC,YAAY,MAAiB,EAAE,KAA4B;QAC1D,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;QACrB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;IACpB,CAAC;IAED,OAAO;QACN,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAA;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAA;QACzB,OAAO,IAAI,CACV,wBAAwB,EACxB,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC,MAAM,EAAE,IAAI,CAAC,EAClD,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAI,KAAK,EAAE,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAC7D,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CAAA;IAClD,CAAC;IAED,KAAK;QACJ,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAA;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAA;QACzB,OAAO,MAAM,CAAC,MAAM,CACnB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YACnB,MAAM,MAAM,GAAc,KAAK,CAAC,CAAC,MAAM,CACtC,sBAAsB,EACtB,IAAI,CAAC,sBAAsB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,EACxG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,CAC1D,CAAA;YACD,OAAO,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE,CACtC,IAAI,CAAC,qBAAqB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,IAAI,CACvG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACnB,IAAI,KAAK,IAAI;gBACZ,CAAC,CAAE,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,EAAa,CAAW;gBAC3C,CAAC,CAAE,CAAC,CAAC,UAAU,CAAI,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAW,CACpE,CACD,CACD,CAAA;QACF,CAAC,CAAC,CACF,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAA;IAChD,CAAC;IAED,gFAAgF;IAChF,MAAM,CAAC,MAAM,CAAC,KAAa;QAC1B,OAAO,OAAO,IAAI,KAAK,CAAC,CAAC,CAAE,KAAqC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAA;IACrF,CAAC;CACD;AAGD,OAAO,EAAE,kBAAkB,EAAE,CAAA"}
package/dist/rows.d.ts CHANGED
@@ -1,40 +1,16 @@
1
1
  /**
2
- * The row codec: fact object ⇄ positional cell array by field
3
- * ordinal, schema-directed, in ONE place. The write side lowers named host
4
- * objects to rows in the relation's field-declaration order (declaration
5
- * order = ordinal ids); the read side decodes owned rows back to named
6
- * objects of BARE structural values. This module is the one fact⇄row
7
- * projector. It covers all value types: bool, u64, i64,
8
- * f64, uuid, str, bytes<N>, discrete intervals and dense float intervals,
9
- * plus the closed-handle bijection (name ⇄ declaration-order row id).
10
- *
11
- * Cells here are OWNED plain host values; the native boundary re-judges
12
- * every crossing against its resident sealed roster. Shape misuse throws
13
- * the pure {@link AuthoringError}; the Effect ingestion boundary catches
14
- * and types it (never an untracked partial draft). SharedArrayBuffer-backed
15
- * views are refused before any copy. Host length is judged before string
16
- * scans and byte copies.
2
+ * The one fact ⇄ row projector: named host objects to positional cells in field-declaration order
3
+ * and back, for every value type plus the closed-handle bijection (name ⇄ declaration-order id).
4
+ * Cells are owned host values that the native boundary checks again; shape misuse throws
5
+ * `AuthoringError`. SharedArrayBuffer-backed views are refused before any copy.
17
6
  */
18
- import type { AnyClosedRoster, AnyField } from "./fields.js";
19
- import { type AnyRelation, type Fact } from "./relation.js";
20
- /**
21
- * One owned cell at the private bridge boundary. The declared sealed field
22
- * type disambiguates the union: `string` is text, an `uuid` in its
23
- * canonical hyphenated UUID spelling, or a closed handle
24
- * before lowering (closed handles cross as `bigint` row ids),
25
- * `Uint8Array` is `bytes<N>`, `{ start, end }` bigints are a discrete
26
- * interval and numbers a dense float interval.
27
- */
28
- type CellValue = boolean | bigint | number | string | Uint8Array | {
29
- readonly start: bigint;
30
- readonly end: bigint;
31
- } | {
32
- readonly start: number;
33
- readonly end: number;
34
- };
7
+ import type { AnyClosedRoster, AnyField } from "./fields.ts";
8
+ import type { CellValue } from "./native/binding.d.ts";
9
+ import { type AnyRelation, type Fact } from "./relation.ts";
10
+ /** Row-major cells for `rows` rows, in sealed field order. */
35
11
  interface FlatRows {
36
12
  readonly rows: bigint;
37
- readonly cells: readonly CellValue[];
13
+ readonly cells: CellValue[];
38
14
  }
39
15
  declare function recordOf(fact: object): Readonly<Record<string, unknown>>;
40
16
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"rows.d.ts","sourceRoot":"","sources":["../src/rows.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAE3D,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,IAAI,EAAkB,MAAM,cAAc,CAAA;AAG1E;;;;;;;GAOG;AACH,KAAK,SAAS,GACX,OAAO,GACP,MAAM,GACN,MAAM,GACN,MAAM,GACN,UAAU,GACV;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAChD;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAA;AAEnD,UAAU,QAAQ;IACjB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,KAAK,EAAE,SAAS,SAAS,EAAE,CAAA;CACpC;AAED,iBAAS,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAKjE;AAED;;;GAGG;AACH,iBAAS,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAiB9C;AAED,iBAAS,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,CAWjF;AAED,iBAAS,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,GAAG,SAAS,CAK3E;AAED,iBAAS,WAAW,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,GAAG,SAAS,EAAE,CASlE;AAED;;;;;GAKG;AACH,iBAAS,UAAU,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,QAAQ,CAQxE;AAED,iBAAS,UAAU,CAClB,IAAI,EAAE,WAAW,EACjB,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GACtC,SAAS,EAAE,CASb;AAED,iBAAS,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAS5E;AAWD;;;GAGG;AACH,iBAAS,WAAW,CAAC,CAAC,SAAS,WAAW,EAAE,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAuBzF;AAED,qFAAqF;AACrF,iBAAS,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAMxF;AAED,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAA;AACnC,OAAO,EACN,MAAM,EACN,UAAU,EACV,WAAW,EACX,WAAW,EACX,UAAU,EACV,QAAQ,EACR,cAAc,EACd,UAAU,EACV,QAAQ,EACR,WAAW,EACX,CAAA"}
1
+ {"version":3,"file":"rows.d.ts","sourceRoot":"","sources":["../src/rows.ts"],"names":[],"mappings":"AACA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAE5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,IAAI,EAAkB,MAAM,eAAe,CAAA;AAG3E,8DAA8D;AAC9D,UAAU,QAAQ;IACjB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,CAAA;CAC3B;AAED,iBAAS,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAKjE;AAED;;;GAGG;AACH,iBAAS,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAiB9C;AAED,iBAAS,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,CAWjF;AAED,iBAAS,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,GAAG,SAAS,CAK3E;AAED,iBAAS,WAAW,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,GAAG,SAAS,EAAE,CASlE;AAED;;;;;GAKG;AACH,iBAAS,UAAU,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,QAAQ,CAQxE;AAED,iBAAS,UAAU,CAClB,IAAI,EAAE,WAAW,EACjB,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GACtC,SAAS,EAAE,CASb;AAED,iBAAS,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAS5E;AAWD;;;GAGG;AACH,iBAAS,WAAW,CAAC,CAAC,SAAS,WAAW,EAAE,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAqBzF;AAED,qFAAqF;AACrF,iBAAS,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAMxF;AAED,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAA;AACnC,OAAO,EACN,MAAM,EACN,UAAU,EACV,WAAW,EACX,WAAW,EACX,UAAU,EACV,QAAQ,EACR,cAAc,EACd,UAAU,EACV,QAAQ,EACR,WAAW,EACX,CAAA"}
package/dist/rows.js CHANGED
@@ -1,7 +1,7 @@
1
- import { AuthoringError, SdkInvariantError } from "#errors.ts";
2
- import { literalShapeError, rosterOf } from "#fields.ts";
3
- import { relationFields } from "#relation.ts";
4
- import { fieldValue, recordValue } from "#values.ts";
1
+ import { AuthoringError, internalError } from "./errors.js";
2
+ import { literalShapeError, rosterOf } from "./fields.js";
3
+ import { relationFields } from "./relation.js";
4
+ import { fieldValue, recordValue } from "./values.js";
5
5
  function recordOf(fact) {
6
6
  if (typeof fact !== "object" || fact === null) {
7
7
  throw new AuthoringError({ message: "expected a fact record" });
@@ -87,7 +87,7 @@ function decodeCell(context, field, cell) {
87
87
  }
88
88
  catch (cause) {
89
89
  if (cause instanceof AuthoringError)
90
- throw new SdkInvariantError({ message: cause.message });
90
+ throw internalError(cause.message);
91
91
  throw cause;
92
92
  }
93
93
  }
@@ -103,24 +103,20 @@ function isCompleteFact(relation, decoded) {
103
103
  function factOfCells(relation, row) {
104
104
  const data = relation;
105
105
  if (row.length !== relationFields(data).length) {
106
- throw new SdkInvariantError({
107
- message: `relation ${data.name}: row arity ${row.length} does not match the ${relationFields(data).length} declared fields`
108
- });
106
+ throw internalError(`relation ${data.name}: row arity ${row.length} does not match the ${relationFields(data).length} declared fields`);
109
107
  }
110
108
  const decoded = {};
111
109
  relationFields(data).forEach(function decodeOne(declared, ordinal) {
112
110
  const cell = row[ordinal];
113
111
  if (cell === undefined) {
114
- throw new SdkInvariantError({
115
- message: `relation ${data.name}: row cell ${ordinal} (${declared.name}) is absent`
116
- });
112
+ throw internalError(`relation ${data.name}: row cell ${ordinal} (${declared.name}) is absent`);
117
113
  }
118
114
  const value = decodeCell(`relation ${data.name} field ${declared.name}`, declared.field, cell);
119
115
  setOwnField(decoded, declared.name, value);
120
116
  });
121
117
  Object.freeze(decoded);
122
118
  if (!isCompleteFact(relation, decoded)) {
123
- throw new SdkInvariantError({ message: `relation ${data.name}: decoded row is not a complete fact` });
119
+ throw internalError(`relation ${data.name}: decoded row is not a complete fact`);
124
120
  }
125
121
  return decoded;
126
122
  }
package/dist/rows.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"rows.js","sourceRoot":"","sources":["../src/rows.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rows.js","sourceRoot":"","sources":["../src/rows.ts"],"names":[],"mappings":"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"}
package/dist/runtime.d.ts CHANGED
@@ -1,8 +1,9 @@
1
1
  import { Context, Duration, Effect, Layer } from "effect";
2
- import type { CloseReport, OutstandingWork } from "./runtime-errors.js";
3
- import { DbError } from "./runtime-errors.js";
4
- import type { OperationHandle, RuntimeHandle } from "./runtime-native.js";
5
- export interface NativeRuntimeOptions {
2
+ import type { OutstandingWork } from "./errors.ts";
3
+ import { DbError } from "./errors.ts";
4
+ import type { RuntimeRef } from "./native/addon.ts";
5
+ /** Sizing for the native runtime. The addon validates every count and picks the defaults. */
6
+ export interface BumbleOptions {
6
7
  readonly workers?: number;
7
8
  readonly queueCapacity?: number;
8
9
  readonly cleanupCapacity?: number;
@@ -10,47 +11,20 @@ export interface NativeRuntimeOptions {
10
11
  readonly nativeHandleCapacity?: number;
11
12
  readonly cleanupTimeout?: Duration.Input;
12
13
  }
13
- interface RuntimeService {
14
- readonly close: () => Effect.Effect<CloseReport>;
14
+ /** The live native runtime: one worker pool and handle registry per process. */
15
+ export declare class Runtime {
16
+ #private;
17
+ /** The runtime's outstanding native work, after every operation queued before it settles. */
15
18
  readonly inspect: () => Effect.Effect<OutstandingWork, DbError>;
19
+ constructor(handle: RuntimeRef);
20
+ static handle(runtime: Runtime): RuntimeRef;
16
21
  }
17
- export declare function finalizeClose(operation: string, report: CloseReport): Effect.Effect<void>;
18
- /** Registration returns the native lease before any completion can run in JS.
19
- * Interruption cancels and joins that lease, including a late successful result.
20
- * No Promise or libuv job is created for ordinary native work.
21
- */
22
- export declare function nativeOperation<A>(operation: string, start: (callback: () => void) => OperationHandle, accept: (value: Uint8Array | null) => A): Effect.Effect<A, DbError>;
23
- export declare function nativeOperationWith<A, Value>(operation: string, start: (callback: () => void) => OperationHandle, take: (operation: OperationHandle) => Value, accept: (value: Value) => A): Effect.Effect<A, DbError>;
24
- declare const NativeRuntime_base: Context.ServiceClass<NativeRuntime, "@bjornpagen/bumbledb/NativeRuntime", RuntimeService>;
25
- export declare class NativeRuntime extends NativeRuntime_base {
26
- static layer(options?: NativeRuntimeOptions): Layer.Layer<NativeRuntime, DbError>;
22
+ declare const Bumble_base: Context.ServiceClass<Bumble, "@bjornpagen/bumbledb/Bumble", Runtime>;
23
+ /** The native runtime as an Effect service. Provide `Bumble.layer()` once in the application graph. */
24
+ export declare class Bumble extends Bumble_base {
25
+ static layer(options?: BumbleOptions): Layer.Layer<Bumble, DbError>;
27
26
  }
28
- /** Private core/log integration: captures the already acquired shared service. */
29
- export declare const runtimeHandle: () => Effect.Effect<RuntimeHandle, DbError, NativeRuntime>;
30
- /**
31
- * Opaque kernel fence (C8). Backed by L14 `log_repository_lock_*` and
32
- * L12 `mint_repository_lock` (`NativeKind::RepositoryLock`). Native
33
- * exclusion is the owner — there is no JS occupancy table. `release`
34
- * is the one close: it joins `logRepositoryLockRelease` then clears
35
- * `slot.owner` so the Scope finalizer is a no-op. Callers join host
36
- * I/O first (`joinPendingIo.pipe(Effect.andThen(lock.release))`).
37
- */
38
- export interface RepositoryLock {
39
- readonly directory: string;
40
- readonly release: Effect.Effect<void>;
41
- }
42
- /**
43
- * Internal log seam: stamped mint only. Cleanup is registered before
44
- * the interruptible acquire: `acquireRelease({ interruptible })`
45
- * installs the finalizer only after acquire succeeds. Interrupt, defect,
46
- * and acquire failure all run the same slot finalizer — empty slot is
47
- * a no-op. No `runtimeDirectoryAcquire`, no core `Db`, no JS bookkeeping.
48
- */
49
- export declare const internalAcquireRepositoryLock: (operation: string, directory: string) => Effect.Effect<Readonly<{
50
- directory: string;
51
- release: Effect.Effect<void, never, never>;
52
- }>, DbError, NativeRuntime | import("effect/Scope").Scope>;
53
- /** Internal first executor consumer; not a replacement row codec or public hash API. */
54
- export declare const hashChunk: (input: Uint8Array<ArrayBufferLike>) => Effect.Effect<Uint8Array<ArrayBufferLike>, DbError, NativeRuntime>;
27
+ /** The provided runtime's native handle. */
28
+ export declare const runtimeHandle: Effect.Effect<RuntimeRef, never, Bumble>;
55
29
  export {};
56
30
  //# sourceMappingURL=runtime.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAQ,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACtE,OAAO,EAAgB,OAAO,EAAW,MAAM,oBAAoB,CAAA;AACnE,OAAO,KAAK,EAAa,eAAe,EAAqC,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAGtH,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;IACjC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAA;IACtC,QAAQ,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAA;CACxC;AAED,UAAU,cAAc;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;IAChD,QAAQ,CAAC,OAAO,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,CAAC,CAAA;CAC/D;AAwDD,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAEzF;AAwED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAChC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,eAAe,EAChD,MAAM,EAAE,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,KAAK,CAAC,GACrC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,CAE3B;AAED,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,KAAK,EAC3C,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,eAAe,EAChD,IAAI,EAAE,CAAC,SAAS,EAAE,eAAe,KAAK,KAAK,EAC3C,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,CAAC,GACzB,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,CA4B3B;;AA4ED,qBAAa,aAAc,SAAQ,kBAElC;IACA,MAAM,CAAC,KAAK,CAAC,OAAO,GAAE,oBAAyB,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,EAAE,OAAO,CAAC,CAEpF;CACD;AAED,kFAAkF;AAClF,eAAO,MAAM,aAAa,4DAKxB,CAAA;AAEF;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;CACrC;AAQD;;;;;;GAMG;AACH,eAAO,MAAM,6BAA6B;;;0DAyCxC,CAAA;AAEF,wFAAwF;AACxF,eAAO,MAAM,SAAS,4GAepB,CAAA"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,EAAE,OAAO,EAAW,MAAM,aAAa,CAAA;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAKnD,6FAA6F;AAC7F,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;IACjC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAA;IACtC,QAAQ,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAA;CACxC;AAkBD,gFAAgF;AAChF,qBAAa,OAAO;;IAEnB,6FAA6F;IAC7F,QAAQ,CAAC,OAAO,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,CAAC,CAAA;IAE/D,YAAY,MAAM,EAAE,UAAU,EAM7B;IAED,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,UAAU,CAE1C;CACD;;AAaD,uGAAuG;AACvG,qBAAa,MAAO,SAAQ,WAAiE;IAC5F,MAAM,CAAC,KAAK,CAAC,OAAO,GAAE,aAAkB,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAEtE;CACD;AAED,4CAA4C;AAC5C,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAEjE,CAAA"}