@ahmadmoussawi/webdb 0.0.0-stage → 0.1.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.
- package/README.md +386 -2
- package/dist/constants.d.ts +18 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/core/index.d.ts +15 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/js/buffer_pool.c.d.ts +142 -0
- package/dist/core/js/buffer_pool.c.d.ts.map +1 -0
- package/dist/core/js/catalog.c.d.ts +186 -0
- package/dist/core/js/catalog.c.d.ts.map +1 -0
- package/dist/core/js/codecs.c.d.ts +32 -0
- package/dist/core/js/codecs.c.d.ts.map +1 -0
- package/dist/core/js/index.d.ts +7 -0
- package/dist/core/js/index.d.ts.map +1 -0
- package/dist/core/js/page.c.d.ts +229 -0
- package/dist/core/js/page.c.d.ts.map +1 -0
- package/dist/core/js/page_table.c.d.ts +48 -0
- package/dist/core/js/page_table.c.d.ts.map +1 -0
- package/dist/core/js/vm.c.d.ts +11 -0
- package/dist/core/js/vm.c.d.ts.map +1 -0
- package/dist/core/js/vm.helpers.c.d.ts +124 -0
- package/dist/core/js/vm.helpers.c.d.ts.map +1 -0
- package/dist/core/types.d.ts +26 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/wasm/embedded_wasm.d.ts +7 -0
- package/dist/core/wasm/embedded_wasm.d.ts.map +1 -0
- package/dist/core/wasm/wasm_core.d.ts +75 -0
- package/dist/core/wasm/wasm_core.d.ts.map +1 -0
- package/dist/host/api/index.d.ts +3 -0
- package/dist/host/api/index.d.ts.map +1 -0
- package/dist/host/api/query_builder.d.ts +216 -0
- package/dist/host/api/query_builder.d.ts.map +1 -0
- package/dist/host/api/webdb.d.ts +172 -0
- package/dist/host/api/webdb.d.ts.map +1 -0
- package/dist/host/compiler/compiler.d.ts +151 -0
- package/dist/host/compiler/compiler.d.ts.map +1 -0
- package/dist/host/compiler/expr_parser.d.ts +87 -0
- package/dist/host/compiler/expr_parser.d.ts.map +1 -0
- package/dist/host/compiler/index.d.ts +4 -0
- package/dist/host/compiler/index.d.ts.map +1 -0
- package/dist/host/compiler/planner/cost.d.ts +23 -0
- package/dist/host/compiler/planner/cost.d.ts.map +1 -0
- package/dist/host/compiler/planner/custom_order.d.ts +16 -0
- package/dist/host/compiler/planner/custom_order.d.ts.map +1 -0
- package/dist/host/compiler/planner/heuristic.d.ts +11 -0
- package/dist/host/compiler/planner/heuristic.d.ts.map +1 -0
- package/dist/host/compiler/planner/index.d.ts +34 -0
- package/dist/host/compiler/planner/index.d.ts.map +1 -0
- package/dist/host/compiler/planner/noop.d.ts +11 -0
- package/dist/host/compiler/planner/noop.d.ts.map +1 -0
- package/dist/host/compiler/planner/types.d.ts +100 -0
- package/dist/host/compiler/planner/types.d.ts.map +1 -0
- package/dist/host/compiler/planner/where_optimizer.d.ts +30 -0
- package/dist/host/compiler/planner/where_optimizer.d.ts.map +1 -0
- package/dist/host/compiler/planner.d.ts +2 -0
- package/dist/host/compiler/planner.d.ts.map +1 -0
- package/dist/host/driver/buffer_pool_driver.d.ts +94 -0
- package/dist/host/driver/buffer_pool_driver.d.ts.map +1 -0
- package/dist/host/driver/crash_recovery.d.ts +24 -0
- package/dist/host/driver/crash_recovery.d.ts.map +1 -0
- package/dist/host/driver/index.d.ts +4 -0
- package/dist/host/driver/index.d.ts.map +1 -0
- package/dist/host/driver/transaction_coordinator.d.ts +166 -0
- package/dist/host/driver/transaction_coordinator.d.ts.map +1 -0
- package/dist/host/storage/crc32.d.ts +24 -0
- package/dist/host/storage/crc32.d.ts.map +1 -0
- package/dist/host/storage/idb.d.ts +27 -0
- package/dist/host/storage/idb.d.ts.map +1 -0
- package/dist/host/storage/index.d.ts +8 -0
- package/dist/host/storage/index.d.ts.map +1 -0
- package/dist/host/storage/io.d.ts +60 -0
- package/dist/host/storage/io.d.ts.map +1 -0
- package/dist/host/storage/memory.d.ts +28 -0
- package/dist/host/storage/memory.d.ts.map +1 -0
- package/dist/host/storage/opfs.d.ts +31 -0
- package/dist/host/storage/opfs.d.ts.map +1 -0
- package/dist/host/storage/vfs.d.ts +36 -0
- package/dist/host/storage/vfs.d.ts.map +1 -0
- package/dist/host/storage/wal_codec.d.ts +56 -0
- package/dist/host/storage/wal_codec.d.ts.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/layouts/index.d.ts +5 -0
- package/dist/layouts/index.d.ts.map +1 -0
- package/dist/layouts/page_format.d.ts +163 -0
- package/dist/layouts/page_format.d.ts.map +1 -0
- package/dist/layouts/pool_format.d.ts +126 -0
- package/dist/layouts/pool_format.d.ts.map +1 -0
- package/dist/layouts/syspage_format.d.ts +499 -0
- package/dist/layouts/syspage_format.d.ts.map +1 -0
- package/dist/layouts/wal_format.d.ts +197 -0
- package/dist/layouts/wal_format.d.ts.map +1 -0
- package/dist/shared/c_runtime.d.ts +47 -0
- package/dist/shared/c_runtime.d.ts.map +1 -0
- package/dist/shared/index.d.ts +4 -0
- package/dist/shared/index.d.ts.map +1 -0
- package/dist/shared/page_provider.d.ts +12 -0
- package/dist/shared/page_provider.d.ts.map +1 -0
- package/dist/shared/vm_context.d.ts +73 -0
- package/dist/shared/vm_context.d.ts.map +1 -0
- package/dist/types/index.d.ts +338 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/webdb.js +13059 -0
- package/dist/webdb.js.map +1 -0
- package/dist/webdb.umd.cjs +5 -0
- package/dist/webdb.umd.cjs.map +1 -0
- package/package.json +82 -4
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { VmStatus, ColumnMeta } from '../../types/index.ts';
|
|
2
|
+
import { u32, i32, i64, f64 } from '../types.ts';
|
|
3
|
+
import { VmCursor, VmContext, VmKeyInfo, VmSorter, VmSorterEntry, VmAggBucket } from '../../shared/index.ts';
|
|
4
|
+
/**
|
|
5
|
+
* Returns the active cursor for cursor_idx (0..15), falling back to ctx.cursor.
|
|
6
|
+
*/
|
|
7
|
+
export declare function get_cursor(ctx: VmContext, cursor_idx: number): VmCursor;
|
|
8
|
+
/**
|
|
9
|
+
* Resolves the byte offset in linear memory for a given page_id.
|
|
10
|
+
* If the buffer pool page-to-slot table is populated, maps via the resident slot.
|
|
11
|
+
* Otherwise falls back to standalone direct calculation: (page_id - 1) * PAGE_SIZE.
|
|
12
|
+
*/
|
|
13
|
+
export declare function resolve_page_offset(view: DataView, page_id: number): number;
|
|
14
|
+
/**
|
|
15
|
+
* Three-Valued Logic (3VL) comparator for evaluation registers.
|
|
16
|
+
* If either value is null or undefined, returns is_unknown = true.
|
|
17
|
+
*/
|
|
18
|
+
export declare function compare_3vl(val_a: any, val_b: any): {
|
|
19
|
+
result: number;
|
|
20
|
+
is_unknown: boolean;
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* @export_c
|
|
24
|
+
*/
|
|
25
|
+
export declare function fnv1a_32_bytes(data: Uint8Array, len: u32): u32;
|
|
26
|
+
/**
|
|
27
|
+
* @export_c
|
|
28
|
+
*/
|
|
29
|
+
export declare function sql_like_match_raw(str: string, str_len: u32, pattern: string, pat_len: u32): i32;
|
|
30
|
+
export interface Compare3VLResult {
|
|
31
|
+
result: i32;
|
|
32
|
+
is_unknown: i32;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* @export_c
|
|
36
|
+
*/
|
|
37
|
+
export declare function compare_3vl_int64(a: i64, a_null: i32, b: i64, b_null: i32): Compare3VLResult;
|
|
38
|
+
/**
|
|
39
|
+
* @export_c
|
|
40
|
+
*/
|
|
41
|
+
export declare function compare_3vl_float64(a: f64, a_null: i32, b: f64, b_null: i32): Compare3VLResult;
|
|
42
|
+
/**
|
|
43
|
+
* @export_c
|
|
44
|
+
*/
|
|
45
|
+
export declare function compare_3vl_bytes(a: Uint8Array, a_len: u32, a_null: i32, b: Uint8Array, b_len: u32, b_null: i32): Compare3VLResult;
|
|
46
|
+
/**
|
|
47
|
+
* Standard SQL LIKE pattern matcher supporting '%' (any sequence) and '_' (any single character).
|
|
48
|
+
* Case-insensitive for ASCII matching according to SQLite semantics.
|
|
49
|
+
*/
|
|
50
|
+
export declare function sql_like_match(str: string, pattern: string): boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Compares two sets of sort keys according to KeyInfo descriptor.
|
|
53
|
+
* Strictly adheres to SQLite NULL collation (NULL is smaller than any non-NULL value)
|
|
54
|
+
* and honors independent per-column ASC/DESC and NULLS_FIRST/NULLS_LAST.
|
|
55
|
+
*/
|
|
56
|
+
export declare function compare_sorter_keys(keys_a: any[], keys_b: any[], key_info: VmKeyInfo): number;
|
|
57
|
+
/**
|
|
58
|
+
* Compares sort keys stored in contiguous registers against a target entry's keys.
|
|
59
|
+
* Avoids allocating an intermediate array for rejected Top-K candidates.
|
|
60
|
+
*/
|
|
61
|
+
export declare function compare_registers_to_sorter_keys(registers: any[], start_reg: number, keys_b: any[], key_info: VmKeyInfo): number;
|
|
62
|
+
/**
|
|
63
|
+
* 32-bit FNV-1a hash over grouping key values.
|
|
64
|
+
* Returns non-zero uint32 (reserving 0 as empty bucket marker).
|
|
65
|
+
*/
|
|
66
|
+
export declare function fnv1a_32(values: any[]): number;
|
|
67
|
+
/**
|
|
68
|
+
* Checks equality between two sets of grouping keys.
|
|
69
|
+
* In SQL GROUP BY: two NULLs in grouping columns are considered identical!
|
|
70
|
+
*/
|
|
71
|
+
export declare function group_keys_match(keys_a: any[], keys_b: any[]): boolean;
|
|
72
|
+
/**
|
|
73
|
+
* Allocates and initializes an array of empty aggregate buckets.
|
|
74
|
+
*/
|
|
75
|
+
export declare function create_agg_buckets(capacity: number): VmAggBucket[];
|
|
76
|
+
/**
|
|
77
|
+
* Sifts down an entry at index in a max-heap of top-K entries.
|
|
78
|
+
* The root (index 0) contains the worst entry (largest/latest in sorted order).
|
|
79
|
+
*/
|
|
80
|
+
export declare function heap_sift_down(entries: VmSorterEntry[], index: number, length: number, key_info: VmKeyInfo): void;
|
|
81
|
+
/**
|
|
82
|
+
* Sorts sorter entries using collation keys and initializes readIdx at offset.
|
|
83
|
+
*/
|
|
84
|
+
export declare function sort_sorter_entries(sorter: VmSorter): void;
|
|
85
|
+
/**
|
|
86
|
+
* Copies a contiguous slice of row bytes from linear memory.
|
|
87
|
+
*/
|
|
88
|
+
export declare function copy_row_bytes(view: DataView, offset: number, length: number): Uint8Array;
|
|
89
|
+
/**
|
|
90
|
+
* Inserts or replaces a row entry into the in-arena sorter.
|
|
91
|
+
* Employs a Top-K bounded max-heap optimization when max_k > 0.
|
|
92
|
+
*/
|
|
93
|
+
export declare function sorter_insert_row(ctx: VmContext, sorter: VmSorter, keys: any[], cursor_row_offset: number, row_len: number, view: DataView, max_k: number): VmStatus;
|
|
94
|
+
/**
|
|
95
|
+
* Serializes register values into a binary row based on the current query schema context.
|
|
96
|
+
*
|
|
97
|
+
* Responsibilities across the 3 branches:
|
|
98
|
+
* 1. Explicit Output Projection (`ctx.outputColumns`):
|
|
99
|
+
* Handles queries with transformed output schemas (e.g. GROUP BY aggregations,
|
|
100
|
+
* computed expressions, or column aliases) defined in `ctx.outputColumns`.
|
|
101
|
+
* 2. Physical Table Schema (`ctx.table.columns`):
|
|
102
|
+
* Handles standard row scans where the number of emitted registers
|
|
103
|
+
* matches the physical table schema in `ctx.table`.
|
|
104
|
+
* 3. Dynamic Runtime Type Inference (Fallback):
|
|
105
|
+
* Handles ad-hoc expressions, partial projections, or subqueries lacking
|
|
106
|
+
* pre-compiled schema metadata, inferring data types (INT32, FLOAT64, INT64, BLOB, TEXT)
|
|
107
|
+
* directly from register values.
|
|
108
|
+
*/
|
|
109
|
+
export declare function serialize_result_registers(ctx: VmContext, start_reg: number, num_cols: number): Uint8Array;
|
|
110
|
+
/**
|
|
111
|
+
* Writes serialized row bytes into the 64KB Output Result Buffer.
|
|
112
|
+
* Prepends a 2-byte uint16 length prefix. Yields BUFFER_FULL on overflow.
|
|
113
|
+
*/
|
|
114
|
+
export declare function emit_to_result_buffer(ctx: VmContext, view: DataView, row_bytes: Uint8Array, instr_pc: number): VmStatus;
|
|
115
|
+
/**
|
|
116
|
+
* Tests whether a column in the row is marked NULL in the null-bitmap.
|
|
117
|
+
*/
|
|
118
|
+
export declare function row_is_null(view: DataView, null_bitmap_offset: number, col_idx: number): boolean;
|
|
119
|
+
/**
|
|
120
|
+
* Computes the byte offset of a fixed-width column within a row record,
|
|
121
|
+
* or the start of the variable-length offset table if target_col_idx == column_count.
|
|
122
|
+
*/
|
|
123
|
+
export declare function compute_fixed_column_offset(view: DataView, null_bitmap_offset: number, null_bitmap_bytes: number, columns: ColumnMeta[], target_col_idx: number): number;
|
|
124
|
+
//# sourceMappingURL=vm.helpers.c.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vm.helpers.c.d.ts","sourceRoot":"","sources":["../../../src/core/js/vm.helpers.c.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Primitive C-compatible type aliases for the WebDB Core Engine.
|
|
3
|
+
* Used by the TypeScript-to-C Transpiler to emit exact C native types.
|
|
4
|
+
*/
|
|
5
|
+
export type u8 = number;
|
|
6
|
+
export type u16 = number;
|
|
7
|
+
export type u32 = number;
|
|
8
|
+
export type i8 = number;
|
|
9
|
+
export type i16 = number;
|
|
10
|
+
export type i32 = number;
|
|
11
|
+
export type u64 = bigint;
|
|
12
|
+
export type i64 = bigint;
|
|
13
|
+
export type f64 = number;
|
|
14
|
+
export type byte_ptr = number;
|
|
15
|
+
export type c_bool = boolean | number;
|
|
16
|
+
export type const_u8_ptr = Uint8Array | number;
|
|
17
|
+
export type u8_ptr = Uint8Array | number;
|
|
18
|
+
export type const_char_ptr = string | number;
|
|
19
|
+
export type char_ptr = string | number;
|
|
20
|
+
/**
|
|
21
|
+
* Compile-time intrinsic helper.
|
|
22
|
+
* In TypeScript / Vitest execution, returns jsFallback.
|
|
23
|
+
* In C transpilation, the transpiler emits cCode verbatim instead of calling this function.
|
|
24
|
+
*/
|
|
25
|
+
export declare function c_inline<T>(cCode: string, jsFallback: T): T;
|
|
26
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,MAAM,EAAE,GAAG,MAAM,CAAC;AACxB,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC;AACzB,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC;AACzB,MAAM,MAAM,EAAE,GAAG,MAAM,CAAC;AACxB,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC;AACzB,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC;AACzB,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC;AACzB,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC;AACzB,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC;AACzB,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC;AAC9B,MAAM,MAAM,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;AACtC,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,MAAM,CAAC;AAC/C,MAAM,MAAM,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;AACzC,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,CAAC;AAC7C,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;AAEvC;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,GAAG,CAAC,CAE3D"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Embedded WebDB Core WebAssembly binary (Base64 encoded).
|
|
3
|
+
* Auto-generated by scripts/build_wasm.js. Do not edit manually.
|
|
4
|
+
*/
|
|
5
|
+
export declare const WEBDB_CORE_WASM_BASE64 = "AGFzbQEAAAABcBFgAX8Bf2ACf38AYAJ/fwF/YAN/f38AYAN/f38Bf2AEf39/fwF/YAAAYAV/f39/fwF/YAN/f34Bf2ACf34Bf2ABfwBgBH9/f38AYAV/f39/fwBgBX9+f35/AGAFf3x/fH8AYAd/f39/f39/AGAAAX8CDwEDZW52Bm1lbW9yeQIAAgNIRwYAAAQAAwQDAgQFBAACAwcFAQECAwEAAQABAAEAAQABAAECAwAAAQABAQgJAQIAAAoAAQAAAAAAAwAAAgILDAACBQ0ODwUQBggBfwFBgIAECwfYDUwPX19zdGFja19wb2ludGVyAwAHaGV4X3ZhbAABEGNyb2NrZm9yZF9kZWNvZGUAAgt1dWlkX2VuY29kZQADBnN0cmxlbgAEC3V1aWRfZGVjb2RlAAULdWxpZF9lbmNvZGUABgt1bGlkX2RlY29kZQAHD3BhZ2VfdGFibGVfaGFzaAAIDnBhZ2VfdGFibGVfZ2V0AAkOcGFnZV90YWJsZV9zZXQAChFwYWdlX3RhYmxlX2RlbGV0ZQALGGJ1Zl9wb29sX2dldF9zbG90X29mZnNldAAMGmJ1Zl9wb29sX3JlYWRfc2xvdF90b19wYWdlAA0bYnVmX3Bvb2xfd3JpdGVfc2xvdF90b19wYWdlAA4aYnVmX3Bvb2xfZ2V0X3Jlc2lkZW50X3Nsb3QACRRidWZfcG9vbF9hc3NpZ25fc2xvdAAPFmJ1Zl9wb29sX3VuYXNzaWduX3Nsb3QAEBNidWZfcG9vbF9tYXJrX2RpcnR5ABEUYnVmX3Bvb2xfY2xlYXJfZGlydHkAEhFidWZfcG9vbF9pc19kaXJ0eQATCXBhZ2VfaW5pdAAUDnBhZ2VfaW5pdF9mcmVlABUNcGFnZV9nZXRfdHlwZQAWDXBhZ2Vfc2V0X3R5cGUAFxNwYWdlX2dldF9jZWxsX2NvdW50ABgTcGFnZV9zZXRfY2VsbF9jb3VudAAZHHBhZ2VfZ2V0X2NlbGxfY29udGVudF9vZmZzZXQAGhxwYWdlX3NldF9jZWxsX2NvbnRlbnRfb2Zmc2V0ABsVcGFnZV9nZXRfbmV4dF9wYWdlX2lkABwVcGFnZV9zZXRfbmV4dF9wYWdlX2lkAB0TcGFnZV9nZXRfZnJlZV9ieXRlcwAeE3BhZ2Vfc2V0X2ZyZWVfYnl0ZXMAHxFwYWdlX2dldF9jaGVja3N1bQAgEXBhZ2Vfc2V0X2NoZWNrc3VtACEUcGFnZV9nZXRfY2VsbF9vZmZzZXQAIhRwYWdlX3NldF9jZWxsX29mZnNldAAjHnBhZ2VfZ2V0X2NvbnRpZ3VvdXNfZnJlZV9zcGFjZQAkGXBhZ2VfZ2V0X3RvdGFsX2ZyZWVfc3BhY2UAJQxwYWdlX2NvbXBhY3QAJhNwYWdlX2dldF9yb3dfbGVuZ3RoACcPcGFnZV9kZWxldGVfcm93ACgScGFnZV9pbml0X2ludGVyaW9yACkccGFnZV9nZXRfcmlnaHRfY2hpbGRfcGFnZV9pZAAcHHBhZ2Vfc2V0X3JpZ2h0X2NoaWxkX3BhZ2VfaWQAHRlwYWdlX2luc2VydF9pbnRlcmlvcl9jZWxsACobcGFnZV9iaW5hcnlfc2VhcmNoX2ludGVyaW9yACsUcGFnZV9pbml0X2luZGV4X2xlYWYALA1jb21wdXRlX2NyYzMyAC0VY29tcHV0ZV9wYWdlX2NoZWNrc3VtAC4WY29tcHV0ZV9wYWdlMV9jaGVja3N1bQAvEmNhdGFsb2dfaW5pdF9wYWdlMQAwF2NhdGFsb2dfZ2V0X3RvdGFsX3BhZ2VzACAXY2F0YWxvZ19zZXRfdG90YWxfcGFnZXMAIRpjYXRhbG9nX2dldF9mcmVlX3BhZ2VfaGVhZAAxGmNhdGFsb2dfc2V0X2ZyZWVfcGFnZV9oZWFkADIaY2F0YWxvZ19nZXRfc2NoZW1hX3ZlcnNpb24AMyBjYXRhbG9nX2luY3JlbWVudF9zY2hlbWFfdmVyc2lvbgA0GmNhdGFsb2dfZ2V0X2NoYW5nZV9jb3VudGVyADUgY2F0YWxvZ19pbmNyZW1lbnRfY2hhbmdlX2NvdW50ZXIANh1jYXRhbG9nX3VwZGF0ZV9wYWdlMV9jaGVja3N1bQA3GmNhdGFsb2dfd3JpdGVfZml4ZWRfc3RyaW5nADgcY2F0YWxvZ19maW5kX2ZyZWVfdGFibGVfc2xvdAA5HGNhdGFsb2dfZmluZF9mcmVlX2luZGV4X3Nsb3QAOh9jYXRhbG9nX2RlbGV0ZV9pbmRleF9kZXNjcmlwdG9yADsfY2F0YWxvZ19kZWxldGVfdGFibGVfZGVzY3JpcHRvcgA8EWNhdGFsb2dfaW5pdF9wYWdlAD0Z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IABBBmooAAALDAAgAEEGaiABNgAACwoAIABBCmovAAALDAAgAEEKaiABOwAACwoAIABBDGooAAALDAAgAEEMaiABNgAACxAAIAAgAUEBdGpBEGovAAALEgAgACABQQF0akEQaiACOwAACx4AIABBBGovAAAgAEECai8AAEEBdGtBEGtB//8DcQsnACAAQQpqLwAAIABBBGovAAAgAEECai8AAEEBdGtqQRBrQf//A3EL0AEBBn8gAEECai8AACIFRQRAIABBCmpBADsAACAAQQRqQYAgOwAADwsgAUEAIAAgAUcbQQAgAUGAYE8bIgIgACkACDcACCACIAApAAA3AAAgAkEQaiEDIABBEGohBEGAICEBA0AgASAAIAQvAABqIgdBAWovAAAiBmshASAGBEAgAiABQf//A3FqIAcgBvwKAAALIAMgATsAACAEQQJqIQQgA0ECaiEDIAVBAWsiBQ0ACyACQQpqQQA7AAAgAkEEaiABOwAAIAAgAkGAIPwKAAALCgAgAEEBai8AAAt0AQN/IABBAmovAAAiAiABSwRAIAAgACABQQF0akEQaiIDLwAAakEBai8AACEEAkAgAkEBayICIAFGDQAgAiABa0EBdCIBRQ0AIAMgA0ECaiAB/AoAAAsgAEECaiACOwAAIABBCmoiACAALwAAIARqOwAACws1ACAAQQU7AAAgAEEMakEANgAAIABBCmpBADsAACAAQQZqIAE2AAAgAEECakGAgICAATYAAAtsAQV/IABBAmoiBS8AACIDQaICTQR/IABBBGoiBi8AAEEMayIEIABqIgcgATYAACAHQQRqIAI3AAAgACADQQF0Qf7/A3FqQRBqIAQ7AAAgBiAEOwAAIAUgA0EBaiIAOwAAIABB//8DcQVBfwsLhwEBBn8CQCAAQQJqLwAAIgIEQCAAQRBqIQcgAkEBayEDQX8hAgNAIAMgBWoiBEEBdiEGAkAgACAHIARB/v8HcWovAABqIgRBBGo1AAAgAVkEQCAGQQFrIQMgBCgAACECDAELIAZBAWohBQsgAyAFTw0ACyACQX9HDQELIABBBmooAAAhAgsgAgs1ACAAQQo7AAAgAEEMakEANgAAIABBCmpBADsAACAAQQZqIAE2AAAgAEECakGAgICAATYAAAu6AgEEf0HAkQQtAABFBEADQCACQcyJBGogBEEIdiID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";
|
|
6
|
+
export declare function getWebDbCoreWasmBytes(): Uint8Array;
|
|
7
|
+
//# sourceMappingURL=embedded_wasm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"embedded_wasm.d.ts","sourceRoot":"","sources":["../../../src/core/wasm/embedded_wasm.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,sBAAsB,qhjBAAqhjB,CAAC;AAIzjjB,wBAAgB,qBAAqB,IAAI,UAAU,CAelD"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WebDB WebAssembly Core Adapter
|
|
3
|
+
* Wraps compiled C WebAssembly exports with 1:1 API parity to the JS Core.
|
|
4
|
+
*/
|
|
5
|
+
import * as jsCore from "../js/index.ts";
|
|
6
|
+
export interface WasmCoreExports {
|
|
7
|
+
instance: WebAssembly.Instance;
|
|
8
|
+
exports: Record<string, any>;
|
|
9
|
+
memory: WebAssembly.Memory;
|
|
10
|
+
page_init: (view: DataView, page_offset: number, page_type?: number, next_page_id?: number) => void;
|
|
11
|
+
page_init_free: (view: DataView, page_offset: number, next_free_page_id?: number) => void;
|
|
12
|
+
page_get_type: (view: DataView, page_offset: number) => number;
|
|
13
|
+
page_set_type: (view: DataView, page_offset: number, type: number) => void;
|
|
14
|
+
page_get_cell_count: (view: DataView, page_offset: number) => number;
|
|
15
|
+
page_set_cell_count: (view: DataView, page_offset: number, count: number) => void;
|
|
16
|
+
page_get_cell_content_offset: (view: DataView, page_offset: number) => number;
|
|
17
|
+
page_set_cell_content_offset: (view: DataView, page_offset: number, offset: number) => void;
|
|
18
|
+
page_get_next_page_id: (view: DataView, page_offset: number) => number;
|
|
19
|
+
page_set_next_page_id: (view: DataView, page_offset: number, next_page_id: number) => void;
|
|
20
|
+
page_get_free_bytes: (view: DataView, page_offset: number) => number;
|
|
21
|
+
page_set_free_bytes: (view: DataView, page_offset: number, free_bytes: number) => void;
|
|
22
|
+
page_get_checksum: (view: DataView, page_offset: number) => number;
|
|
23
|
+
page_set_checksum: (view: DataView, page_offset: number, checksum: number) => void;
|
|
24
|
+
page_get_cell_offset: (view: DataView, page_offset: number, slot_idx: number) => number;
|
|
25
|
+
page_set_cell_offset: (view: DataView, page_offset: number, slot_idx: number, cell_offset: number) => void;
|
|
26
|
+
page_get_contiguous_free_space: (view: DataView, page_offset: number) => number;
|
|
27
|
+
page_get_total_free_space: (view: DataView, page_offset: number) => number;
|
|
28
|
+
page_compact: (view: DataView, page_offset: number, scratchpad_offset?: number, replacement?: any) => void;
|
|
29
|
+
page_get_row_length: (view: DataView, row_offset: number) => number;
|
|
30
|
+
page_insert_row: (view: DataView, page_offset: number, row_bytes: Uint8Array, scratchpad_offset?: number) => number;
|
|
31
|
+
page_delete_row: (view: DataView, page_offset: number, cell_idx: number) => void;
|
|
32
|
+
page_update_row: (view: DataView, page_offset: number, cell_idx: number, new_row_bytes: Uint8Array, scratchpad_offset?: number) => boolean;
|
|
33
|
+
page_table_hash: (page_id: number, mask: number) => number;
|
|
34
|
+
page_table_get: (view: DataView, base_offset: number, bucket_count: number, page_id: number) => number;
|
|
35
|
+
page_table_set: (view: DataView, base_offset: number, bucket_count: number, page_id: number, slot_idx: number) => void;
|
|
36
|
+
page_table_delete: (view: DataView, base_offset: number, bucket_count: number, page_id: number) => boolean;
|
|
37
|
+
buf_pool_get_slot_offset: (slot_idx: number) => number;
|
|
38
|
+
buf_pool_read_slot_to_page: (view: DataView, slot_to_page_offset: number, slot_idx: number) => number;
|
|
39
|
+
buf_pool_write_slot_to_page: (view: DataView, slot_to_page_offset: number, slot_idx: number, page_id: number) => void;
|
|
40
|
+
buf_pool_get_resident_slot: (view: DataView, page_to_slot_offset: number, page_to_slot_buckets: number, page_id: number) => number;
|
|
41
|
+
buf_pool_assign_slot: (view: DataView, slot_to_page_offset: number, page_to_slot_offset: number, page_to_slot_buckets: number, slot_idx: number, page_id: number) => void;
|
|
42
|
+
buf_pool_unassign_slot: (view: DataView, slot_to_page_offset: number, page_to_slot_offset: number, page_to_slot_buckets: number, slot_idx: number) => void;
|
|
43
|
+
buf_pool_mark_dirty: (view: DataView | Uint8Array, dirty_mask_offset: number, slot_idx: number) => void;
|
|
44
|
+
buf_pool_clear_dirty: (view: DataView | Uint8Array, dirty_mask_offset: number, slot_idx: number) => void;
|
|
45
|
+
buf_pool_is_dirty: (view: DataView | Uint8Array, dirty_mask_offset: number, slot_idx: number) => boolean;
|
|
46
|
+
buf_pool_pin_slot: (pin_counts: Uint32Array, slot_idx: number) => void;
|
|
47
|
+
buf_pool_unpin_slot: (pin_counts: Uint32Array, slot_idx: number) => void;
|
|
48
|
+
buf_pool_is_pinned: (pin_counts: Uint32Array, slot_idx: number) => boolean;
|
|
49
|
+
buf_pool_find_victim: (buffer: ArrayBuffer, ref_bits: Uint8Array, pin_counts: Uint32Array, slot_to_page_offset: number, slot_count: number, current_clock_hand: number) => {
|
|
50
|
+
candidate_slot: number;
|
|
51
|
+
next_clock_hand: number;
|
|
52
|
+
};
|
|
53
|
+
buf_pool_select_eviction_victim: (buffer: ArrayBuffer, ref_bits: Uint8Array, pin_counts: Uint32Array, slot_to_page_offset: number, dirty_mask_offset: number, slot_count: number, current_clock_hand: number, page_id: number) => {
|
|
54
|
+
candidate_slot: number;
|
|
55
|
+
flush_page_id: number;
|
|
56
|
+
next_clock_hand: number;
|
|
57
|
+
};
|
|
58
|
+
catalog_init_page1: (view: DataView) => void;
|
|
59
|
+
catalog_read_page1_header: typeof jsCore.catalog_read_page1_header;
|
|
60
|
+
catalog_get_total_pages: (view: DataView) => number;
|
|
61
|
+
catalog_set_total_pages: (view: DataView, count: number) => void;
|
|
62
|
+
catalog_get_free_page_head: (view: DataView) => number;
|
|
63
|
+
catalog_set_free_page_head: (view: DataView, page_id: number) => void;
|
|
64
|
+
catalog_get_schema_version: (view: DataView) => number;
|
|
65
|
+
catalog_increment_schema_version: (view: DataView) => number;
|
|
66
|
+
catalog_get_change_counter: (view: DataView) => number;
|
|
67
|
+
catalog_increment_change_counter: (view: DataView) => number;
|
|
68
|
+
catalog_update_page1_checksum: (view: DataView) => number;
|
|
69
|
+
sql_like_match: (str: string, pattern: string) => boolean;
|
|
70
|
+
fnv1a_32: (values: any[]) => number;
|
|
71
|
+
compare_sorter_keys: typeof jsCore.compare_sorter_keys;
|
|
72
|
+
vm_step: typeof jsCore.vm_step;
|
|
73
|
+
}
|
|
74
|
+
export declare function createWasmCore(memory: WebAssembly.Memory, customBytes?: Uint8Array): WasmCoreExports;
|
|
75
|
+
//# sourceMappingURL=wasm_core.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wasm_core.d.ts","sourceRoot":"","sources":["../../../src/core/wasm/wasm_core.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/host/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
import { DbRow, JoinType, TransactionOptions } from '../../types/index.js';
|
|
2
|
+
import { ComparisonOp, QueryFilter, SortKey, GroupKey, AggExpr, DisassembledInstruction } from '../compiler/compiler.js';
|
|
3
|
+
import { QueryPlanner } from '../compiler/planner/index.js';
|
|
4
|
+
import { ExprNode, ParsedSelectExpr, ExpressionBuilder } from '../compiler/expr_parser.js';
|
|
5
|
+
export type SelectFunction = 'count' | 'sum' | 'avg' | 'min' | 'max' | 'upper' | 'lower' | 'length' | 'substr' | 'trim' | 'round' | 'floor' | 'ceil' | 'abs';
|
|
6
|
+
export interface SelectColumnSpec {
|
|
7
|
+
col: string;
|
|
8
|
+
as: string;
|
|
9
|
+
}
|
|
10
|
+
export interface NormalizedSelectField {
|
|
11
|
+
sourceCol?: string;
|
|
12
|
+
alias: string;
|
|
13
|
+
fn?: SelectFunction | string;
|
|
14
|
+
args?: any[];
|
|
15
|
+
expr?: ExprNode;
|
|
16
|
+
}
|
|
17
|
+
export type SelectItem = string | SelectColumnSpec | Record<string, string> | ExpressionBuilder | ParsedSelectExpr;
|
|
18
|
+
export declare function parseFilterTarget(target: string | ExprNode | ExpressionBuilder): {
|
|
19
|
+
colName?: string;
|
|
20
|
+
expr?: ExprNode;
|
|
21
|
+
};
|
|
22
|
+
export type GroupByItem = string | ExprNode | ExpressionBuilder;
|
|
23
|
+
export declare function extractAggregatesFromExpr(expr: ExprNode): AggExpr[];
|
|
24
|
+
export declare function normalizeSelectItem(item: any): NormalizedSelectField[];
|
|
25
|
+
export interface ExplainOutput {
|
|
26
|
+
plan: {
|
|
27
|
+
table: string;
|
|
28
|
+
rootPageId: number;
|
|
29
|
+
scanType: 'TableScan' | 'IndexScan';
|
|
30
|
+
indexName?: string;
|
|
31
|
+
filters: QueryFilter[];
|
|
32
|
+
orderBy?: SortKey[];
|
|
33
|
+
groupBy?: (string | GroupKey)[];
|
|
34
|
+
aggregates?: AggExpr[];
|
|
35
|
+
having?: QueryFilter[];
|
|
36
|
+
select?: NormalizedSelectField[];
|
|
37
|
+
joins?: JoinClause[];
|
|
38
|
+
limit?: number;
|
|
39
|
+
offset?: number;
|
|
40
|
+
estimatedCost?: number;
|
|
41
|
+
estimatedRows?: number;
|
|
42
|
+
joinOrder?: string[];
|
|
43
|
+
isOrderSatisfied?: boolean;
|
|
44
|
+
sortCostAvoided?: number;
|
|
45
|
+
};
|
|
46
|
+
bytecodeSize: number;
|
|
47
|
+
instructions: DisassembledInstruction[];
|
|
48
|
+
assembly: string;
|
|
49
|
+
}
|
|
50
|
+
export interface JoinClause {
|
|
51
|
+
type: JoinType;
|
|
52
|
+
table: string;
|
|
53
|
+
leftCol: string;
|
|
54
|
+
op: ComparisonOp;
|
|
55
|
+
rightCol: string;
|
|
56
|
+
scanType?: 'TableScan' | 'IndexScan';
|
|
57
|
+
indexName?: string;
|
|
58
|
+
}
|
|
59
|
+
export interface QueryExecutionOptions {
|
|
60
|
+
limit: number | null;
|
|
61
|
+
offset: number | null;
|
|
62
|
+
sortCol: string | null;
|
|
63
|
+
sortDir: 'asc' | 'desc';
|
|
64
|
+
orderBy?: SortKey[];
|
|
65
|
+
groupBy?: (string | GroupKey)[];
|
|
66
|
+
aggregates?: AggExpr[];
|
|
67
|
+
having?: QueryFilter[];
|
|
68
|
+
select?: NormalizedSelectField[];
|
|
69
|
+
selectExprs?: ParsedSelectExpr[];
|
|
70
|
+
joins?: JoinClause[];
|
|
71
|
+
planner?: QueryPlanner;
|
|
72
|
+
}
|
|
73
|
+
export interface IDatabaseQueryExecutor {
|
|
74
|
+
explainQuery(tableName: string, filters: QueryFilter[], options?: {
|
|
75
|
+
orderBy?: SortKey[];
|
|
76
|
+
groupBy?: (string | GroupKey)[];
|
|
77
|
+
aggregates?: AggExpr[];
|
|
78
|
+
having?: QueryFilter[];
|
|
79
|
+
select?: NormalizedSelectField[];
|
|
80
|
+
selectExprs?: ParsedSelectExpr[];
|
|
81
|
+
joins?: JoinClause[];
|
|
82
|
+
limit?: number;
|
|
83
|
+
offset?: number;
|
|
84
|
+
planner?: QueryPlanner;
|
|
85
|
+
}): Promise<ExplainOutput>;
|
|
86
|
+
executeQuery(tableName: string, filters: QueryFilter[], options: QueryExecutionOptions): Promise<DbRow[]>;
|
|
87
|
+
executeUpdate?(tableName: string, filters: QueryFilter[], patch: Partial<DbRow>, options?: TransactionOptions): Promise<number>;
|
|
88
|
+
executeDelete?(tableName: string, filters: QueryFilter[], options?: TransactionOptions): Promise<number>;
|
|
89
|
+
}
|
|
90
|
+
export declare class QueryBuilder {
|
|
91
|
+
private db;
|
|
92
|
+
private tableName;
|
|
93
|
+
private filters;
|
|
94
|
+
private selectFields;
|
|
95
|
+
private limitCount;
|
|
96
|
+
private offsetCount;
|
|
97
|
+
private sortCol;
|
|
98
|
+
private sortDir;
|
|
99
|
+
private orderKeys;
|
|
100
|
+
private groupCols;
|
|
101
|
+
private groupKeys;
|
|
102
|
+
private aggExprs;
|
|
103
|
+
private havingFilters;
|
|
104
|
+
private joins;
|
|
105
|
+
private planner?;
|
|
106
|
+
withPlanner(planner: QueryPlanner): this;
|
|
107
|
+
constructor(db: IDatabaseQueryExecutor, tableName: string);
|
|
108
|
+
join(table: string, leftCol: string, rightCol: string): this;
|
|
109
|
+
join(table: string, leftCol: string, op: ComparisonOp, rightCol: string): this;
|
|
110
|
+
innerJoin(table: string, leftCol: string, rightCol: string): this;
|
|
111
|
+
innerJoin(table: string, leftCol: string, op: ComparisonOp, rightCol: string): this;
|
|
112
|
+
leftJoin(table: string, leftCol: string, rightCol: string): this;
|
|
113
|
+
leftJoin(table: string, leftCol: string, op: ComparisonOp, rightCol: string): this;
|
|
114
|
+
getJoins(): JoinClause[];
|
|
115
|
+
where(exprSql: string): this;
|
|
116
|
+
where(expr: ExprNode | ExpressionBuilder): this;
|
|
117
|
+
where(colOrExpr: string | ExprNode | ExpressionBuilder, op: ComparisonOp, value: any): this;
|
|
118
|
+
where(callback: (qb: QueryBuilder) => void): this;
|
|
119
|
+
orWhere(exprSql: string): this;
|
|
120
|
+
orWhere(expr: ExprNode | ExpressionBuilder): this;
|
|
121
|
+
orWhere(colOrExpr: string | ExprNode | ExpressionBuilder, op: ComparisonOp, value: any): this;
|
|
122
|
+
orWhere(callback: (qb: QueryBuilder) => void): this;
|
|
123
|
+
whereNot(exprSql: string): this;
|
|
124
|
+
whereNot(expr: ExprNode | ExpressionBuilder): this;
|
|
125
|
+
whereNot(colOrExpr: string | ExprNode | ExpressionBuilder, op: ComparisonOp, value: any): this;
|
|
126
|
+
whereNot(callback: (qb: QueryBuilder) => void): this;
|
|
127
|
+
orWhereNot(exprSql: string): this;
|
|
128
|
+
orWhereNot(expr: ExprNode | ExpressionBuilder): this;
|
|
129
|
+
orWhereNot(colOrExpr: string | ExprNode | ExpressionBuilder, op: ComparisonOp, value: any): this;
|
|
130
|
+
orWhereNot(callback: (qb: QueryBuilder) => void): this;
|
|
131
|
+
whereRaw(sqlStr: string): this;
|
|
132
|
+
orWhereRaw(sqlStr: string): this;
|
|
133
|
+
whereNull(colName: string): this;
|
|
134
|
+
whereNotNull(colName: string): this;
|
|
135
|
+
orWhereNull(colName: string): this;
|
|
136
|
+
orWhereNotNull(colName: string): this;
|
|
137
|
+
whereLike(colName: string, pattern: string): this;
|
|
138
|
+
whereNotLike(colName: string, pattern: string): this;
|
|
139
|
+
whereStartsWith(colName: string, prefix: string): this;
|
|
140
|
+
whereEndsWith(colName: string, suffix: string): this;
|
|
141
|
+
whereContains(colName: string, substring: string): this;
|
|
142
|
+
orWhereLike(colName: string, pattern: string): this;
|
|
143
|
+
orWhereNotLike(colName: string, pattern: string): this;
|
|
144
|
+
orWhereStartsWith(colName: string, prefix: string): this;
|
|
145
|
+
orWhereEndsWith(colName: string, suffix: string): this;
|
|
146
|
+
orWhereContains(colName: string, substring: string): this;
|
|
147
|
+
whereIn(colName: string, values: any[]): this;
|
|
148
|
+
whereNotIn(colName: string, values: any[]): this;
|
|
149
|
+
orWhereIn(colName: string, values: any[]): this;
|
|
150
|
+
orWhereNotIn(colName: string, values: any[]): this;
|
|
151
|
+
getFilters(): QueryFilter[];
|
|
152
|
+
getRootFilter(): QueryFilter | null;
|
|
153
|
+
private addOrFilter;
|
|
154
|
+
limit(count: number): this;
|
|
155
|
+
offset(count: number): this;
|
|
156
|
+
orderBy(colOrKeys: string | SortKey | SortKey[] | ExpressionBuilder | ExprNode, direction?: 'asc' | 'desc', nullOrder?: 'nulls_first' | 'nulls_last'): this;
|
|
157
|
+
groupBy(...columns: (GroupByItem | GroupByItem[])[]): this;
|
|
158
|
+
private addGroupByItem;
|
|
159
|
+
private registerAggregatesFromFilter;
|
|
160
|
+
having(exprSql: string): this;
|
|
161
|
+
having(expr: ExprNode | ExpressionBuilder): this;
|
|
162
|
+
having(colOrExpr: string | ExprNode | ExpressionBuilder, op: ComparisonOp, value: any): this;
|
|
163
|
+
having(callback: (qb: QueryBuilder) => void): this;
|
|
164
|
+
orHaving(exprSql: string): this;
|
|
165
|
+
orHaving(expr: ExprNode | ExpressionBuilder): this;
|
|
166
|
+
orHaving(colOrExpr: string | ExprNode | ExpressionBuilder, op: ComparisonOp, value: any): this;
|
|
167
|
+
orHaving(callback: (qb: QueryBuilder) => void): this;
|
|
168
|
+
havingNot(exprSql: string): this;
|
|
169
|
+
havingNot(expr: ExprNode | ExpressionBuilder): this;
|
|
170
|
+
havingNot(colOrExpr: string | ExprNode | ExpressionBuilder, op: ComparisonOp, value: any): this;
|
|
171
|
+
havingNot(callback: (qb: QueryBuilder) => void): this;
|
|
172
|
+
orHavingNot(exprSql: string): this;
|
|
173
|
+
orHavingNot(expr: ExprNode | ExpressionBuilder): this;
|
|
174
|
+
orHavingNot(colOrExpr: string | ExprNode | ExpressionBuilder, op: ComparisonOp, value: any): this;
|
|
175
|
+
orHavingNot(callback: (qb: QueryBuilder) => void): this;
|
|
176
|
+
havingRaw(sqlStr: string): this;
|
|
177
|
+
orHavingRaw(sqlStr: string): this;
|
|
178
|
+
havingNull(colOrExpr: string | ExprNode | ExpressionBuilder): this;
|
|
179
|
+
havingNotNull(colOrExpr: string | ExprNode | ExpressionBuilder): this;
|
|
180
|
+
orHavingNull(colOrExpr: string | ExprNode | ExpressionBuilder): this;
|
|
181
|
+
orHavingNotNull(colOrExpr: string | ExprNode | ExpressionBuilder): this;
|
|
182
|
+
getHavingFilters(): QueryFilter[];
|
|
183
|
+
getRootHavingFilter(): QueryFilter | null;
|
|
184
|
+
private addHavingOrFilter;
|
|
185
|
+
aggregate(aggregates: AggExpr[]): this;
|
|
186
|
+
count(colName?: string, alias?: string): this;
|
|
187
|
+
sum(colName: string, alias?: string): this;
|
|
188
|
+
avg(colName: string, alias?: string): this;
|
|
189
|
+
min(colName: string, alias?: string): this;
|
|
190
|
+
max(colName: string, alias?: string): this;
|
|
191
|
+
select(...columns: SelectItem[]): this;
|
|
192
|
+
select(columns: SelectItem[]): this;
|
|
193
|
+
select(columnsMap: Record<string, string>): this;
|
|
194
|
+
getSelectFields(): NormalizedSelectField[];
|
|
195
|
+
/**
|
|
196
|
+
* Post-processes raw VDBE result rows into projected output records according
|
|
197
|
+
* to select fields, expressions, aliases, and registered UDFs.
|
|
198
|
+
*
|
|
199
|
+
* ARCHITECTURAL LIMITATION NOTE:
|
|
200
|
+
* Everything handled exclusively within `projectRow` operates on client-side
|
|
201
|
+
* result rows after VM execution. Subqueries (e.g. derived tables `db.from(subquery)`
|
|
202
|
+
* or correlated scalar subqueries) compile and execute at the VDBE bytecode level,
|
|
203
|
+
* so client-side transformations performed solely in `projectRow` will not be
|
|
204
|
+
* available inside subqueries until scalar expressions are fully lowered into
|
|
205
|
+
* VDBE register opcodes in the compiler.
|
|
206
|
+
*/
|
|
207
|
+
private projectRow;
|
|
208
|
+
explain(): Promise<ExplainOutput>;
|
|
209
|
+
private getOrderKeyValue;
|
|
210
|
+
private sortAggregatedRows;
|
|
211
|
+
toArray(): Promise<DbRow[]>;
|
|
212
|
+
first(): Promise<DbRow | null>;
|
|
213
|
+
update(patch: Partial<DbRow>, options?: TransactionOptions): Promise<number>;
|
|
214
|
+
delete(options?: TransactionOptions): Promise<number>;
|
|
215
|
+
}
|
|
216
|
+
//# sourceMappingURL=query_builder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query_builder.d.ts","sourceRoot":"","sources":["../../../src/host/api/query_builder.ts"],"names":[],"mappings":"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"}
|