xitdb 0.12.0 → 0.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +120 -118
- package/dist/core-buffered-file.d.ts +23 -25
- package/dist/core-buffered-file.js +182 -0
- package/dist/core-file.d.ts +8 -10
- package/dist/core-file.js +105 -0
- package/dist/core-memory.d.ts +15 -15
- package/dist/core-memory.js +152 -0
- package/dist/core.d.ts +14 -14
- package/dist/core.js +1 -0
- package/dist/database.d.ts +204 -80
- package/dist/database.js +3047 -0
- package/dist/exceptions.d.ts +4 -0
- package/dist/exceptions.js +62 -0
- package/dist/hasher.d.ts +2 -1
- package/dist/hasher.js +49 -0
- package/dist/index.d.ts +30 -26
- package/dist/index.js +35 -3986
- package/dist/read-array-list.d.ts +8 -8
- package/dist/read-array-list.js +35 -0
- package/dist/read-counted-hash-map.d.ts +3 -3
- package/dist/read-counted-hash-map.js +19 -0
- package/dist/read-counted-hash-set.d.ts +3 -3
- package/dist/read-counted-hash-set.js +19 -0
- package/dist/read-cursor.d.ts +29 -23
- package/dist/read-cursor.js +577 -0
- package/dist/read-hash-map.d.ts +22 -22
- package/dist/read-hash-map.js +65 -0
- package/dist/read-hash-set.d.ts +13 -13
- package/dist/read-hash-set.js +47 -0
- package/dist/read-linked-array-list.d.ts +8 -8
- package/dist/read-linked-array-list.js +35 -0
- package/dist/read-sorted-map.d.ts +21 -0
- package/dist/read-sorted-map.js +73 -0
- package/dist/read-sorted-set.d.ts +19 -0
- package/dist/read-sorted-set.js +65 -0
- package/dist/slot-pointer.d.ts +1 -1
- package/dist/slot-pointer.js +11 -0
- package/dist/slot.d.ts +2 -2
- package/dist/slot.js +41 -0
- package/dist/slotted.d.ts +1 -1
- package/dist/slotted.js +1 -0
- package/dist/tag.d.ts +3 -1
- package/dist/tag.js +25 -0
- package/dist/write-array-list.d.ts +13 -14
- package/dist/write-array-list.js +42 -0
- package/dist/write-counted-hash-map.d.ts +4 -5
- package/dist/write-counted-hash-map.js +18 -0
- package/dist/write-counted-hash-set.d.ts +4 -5
- package/dist/write-counted-hash-set.js +18 -0
- package/dist/write-cursor.d.ts +15 -15
- package/dist/write-cursor.js +124 -0
- package/dist/write-hash-map.d.ts +22 -23
- package/dist/write-hash-map.js +90 -0
- package/dist/write-hash-set.d.ts +16 -17
- package/dist/write-hash-set.js +59 -0
- package/dist/write-linked-array-list.d.ts +16 -17
- package/dist/write-linked-array-list.js +52 -0
- package/dist/write-sorted-map.d.ts +12 -0
- package/dist/write-sorted-map.js +37 -0
- package/dist/write-sorted-set.d.ts +10 -0
- package/dist/write-sorted-set.js +29 -0
- package/dist/writeable-data.js +68 -0
- package/package.json +6 -6
package/dist/database.d.ts
CHANGED
|
@@ -1,19 +1,24 @@
|
|
|
1
|
-
import type { Core } from './core';
|
|
2
|
-
import { Hasher } from './hasher';
|
|
3
|
-
import { Tag } from './tag';
|
|
4
|
-
import { Slot } from './slot';
|
|
5
|
-
import { SlotPointer } from './slot-pointer';
|
|
6
|
-
import { type WriteableData } from './writeable-data';
|
|
7
|
-
import { WriteCursor } from './write-cursor';
|
|
1
|
+
import type { Core } from './core.js';
|
|
2
|
+
import { Hasher } from './hasher.js';
|
|
3
|
+
import { Tag } from './tag.js';
|
|
4
|
+
import { Slot } from './slot.js';
|
|
5
|
+
import { SlotPointer } from './slot-pointer.js';
|
|
6
|
+
import { type WriteableData } from './writeable-data.js';
|
|
7
|
+
import { WriteCursor } from './write-cursor.js';
|
|
8
8
|
export declare const VERSION = 0;
|
|
9
9
|
export declare const MAGIC_NUMBER: Uint8Array<ArrayBuffer>;
|
|
10
10
|
export declare const BIT_COUNT = 4;
|
|
11
11
|
export declare const SLOT_COUNT: number;
|
|
12
12
|
export declare const MASK: bigint;
|
|
13
13
|
export declare const INDEX_BLOCK_SIZE: number;
|
|
14
|
-
export declare const LINKED_ARRAY_LIST_SLOT_LENGTH: number;
|
|
15
|
-
export declare const LINKED_ARRAY_LIST_INDEX_BLOCK_SIZE: number;
|
|
16
14
|
export declare const MAX_BRANCH_LENGTH = 16;
|
|
15
|
+
export declare const BTREE_SLOT_COUNT: number;
|
|
16
|
+
export declare const BTREE_SPLIT_COUNT: number;
|
|
17
|
+
export declare const BTREE_NODE_HEADER_SIZE = 2;
|
|
18
|
+
export declare const BTREE_LEAF_BLOCK_SIZE: number;
|
|
19
|
+
export declare const BTREE_BRANCH_BLOCK_SIZE: number;
|
|
20
|
+
export declare const SORTED_LEAF_BLOCK_SIZE: number;
|
|
21
|
+
export declare const SORTED_BRANCH_BLOCK_SIZE: number;
|
|
17
22
|
export declare enum WriteMode {
|
|
18
23
|
READ_ONLY = 0,
|
|
19
24
|
READ_WRITE = 1
|
|
@@ -27,8 +32,8 @@ export declare class Header {
|
|
|
27
32
|
static readonly LENGTH = 12;
|
|
28
33
|
constructor(hashId: number, hashSize: number, version: number, tag: Tag, magicNumber: Uint8Array);
|
|
29
34
|
toBytes(): Uint8Array;
|
|
30
|
-
static read(core: Core):
|
|
31
|
-
write(core: Core):
|
|
35
|
+
static read(core: Core): Header;
|
|
36
|
+
write(core: Core): void;
|
|
32
37
|
validate(): void;
|
|
33
38
|
withTag(tag: Tag): Header;
|
|
34
39
|
}
|
|
@@ -48,15 +53,13 @@ export declare class TopLevelArrayListHeader {
|
|
|
48
53
|
constructor(fileSize: number, parent: ArrayListHeader);
|
|
49
54
|
toBytes(): Uint8Array;
|
|
50
55
|
}
|
|
51
|
-
export declare class
|
|
52
|
-
|
|
53
|
-
ptr: number;
|
|
56
|
+
export declare class BTreeHeader {
|
|
57
|
+
rootPtr: number;
|
|
54
58
|
size: number;
|
|
55
|
-
static readonly LENGTH =
|
|
56
|
-
constructor(
|
|
59
|
+
static readonly LENGTH = 16;
|
|
60
|
+
constructor(rootPtr: number, size: number);
|
|
57
61
|
toBytes(): Uint8Array;
|
|
58
|
-
static fromBytes(bytes: Uint8Array):
|
|
59
|
-
withPtr(ptr: number): LinkedArrayListHeader;
|
|
62
|
+
static fromBytes(bytes: Uint8Array): BTreeHeader;
|
|
60
63
|
}
|
|
61
64
|
export declare class KeyValuePair {
|
|
62
65
|
valueSlot: Slot;
|
|
@@ -67,30 +70,91 @@ export declare class KeyValuePair {
|
|
|
67
70
|
toBytes(): Uint8Array;
|
|
68
71
|
static fromBytes(bytes: Uint8Array, hashSize: number): KeyValuePair;
|
|
69
72
|
}
|
|
70
|
-
export declare
|
|
71
|
-
|
|
73
|
+
export declare enum BTreeNodeKind {
|
|
74
|
+
LEAF = 0,
|
|
75
|
+
BRANCH = 1
|
|
76
|
+
}
|
|
77
|
+
export declare class BTreeNode {
|
|
78
|
+
kind: BTreeNodeKind;
|
|
79
|
+
num: number;
|
|
80
|
+
values: Slot[];
|
|
81
|
+
children: Slot[];
|
|
82
|
+
counts: number[];
|
|
83
|
+
constructor(kind: BTreeNodeKind, num: number);
|
|
84
|
+
subtreeCount(): number;
|
|
85
|
+
}
|
|
86
|
+
export declare class BTreeNodeRef {
|
|
87
|
+
nodePtr: number;
|
|
88
|
+
count: number;
|
|
89
|
+
constructor(nodePtr: number, count: number);
|
|
90
|
+
}
|
|
91
|
+
export declare class BTreeInsertResult {
|
|
92
|
+
nodePtr: number;
|
|
93
|
+
count: number;
|
|
94
|
+
valuePosition: number;
|
|
95
|
+
split: BTreeNodeRef | null;
|
|
96
|
+
constructor(nodePtr: number, count: number, valuePosition: number, split: BTreeNodeRef | null);
|
|
97
|
+
}
|
|
98
|
+
export declare class BTreeWriteSlot {
|
|
99
|
+
nodePtr: number;
|
|
100
|
+
valuePosition: number;
|
|
72
101
|
slot: Slot;
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
102
|
+
constructor(nodePtr: number, valuePosition: number, slot: Slot);
|
|
103
|
+
}
|
|
104
|
+
export declare class BTreeJoinResult {
|
|
105
|
+
nodePtr: number;
|
|
106
|
+
count: number;
|
|
107
|
+
split: BTreeNodeRef | null;
|
|
108
|
+
constructor(nodePtr: number, count: number, split: BTreeNodeRef | null);
|
|
109
|
+
}
|
|
110
|
+
export declare class BTreeSplitResult {
|
|
111
|
+
left: number;
|
|
112
|
+
right: number;
|
|
113
|
+
constructor(left: number, right: number);
|
|
114
|
+
}
|
|
115
|
+
export declare class SortedNode {
|
|
116
|
+
kind: BTreeNodeKind;
|
|
117
|
+
num: number;
|
|
118
|
+
entries: Slot[];
|
|
119
|
+
children: Slot[];
|
|
120
|
+
separators: Slot[];
|
|
121
|
+
counts: number[];
|
|
122
|
+
constructor(kind: BTreeNodeKind, num: number);
|
|
123
|
+
subtreeCount(): number;
|
|
124
|
+
}
|
|
125
|
+
export declare class SortedSplit {
|
|
126
|
+
nodePtr: number;
|
|
127
|
+
count: number;
|
|
128
|
+
separator: Slot;
|
|
129
|
+
constructor(nodePtr: number, count: number, separator: Slot);
|
|
130
|
+
}
|
|
131
|
+
export declare class SortedInsertResult {
|
|
132
|
+
nodePtr: number;
|
|
133
|
+
count: number;
|
|
134
|
+
valuePosition: number;
|
|
135
|
+
added: boolean;
|
|
136
|
+
split: SortedSplit | null;
|
|
137
|
+
constructor(nodePtr: number, count: number, valuePosition: number, added: boolean, split: SortedSplit | null);
|
|
138
|
+
}
|
|
139
|
+
export declare class SortedRemoveResult {
|
|
140
|
+
nodePtr: number;
|
|
141
|
+
found: boolean;
|
|
142
|
+
constructor(nodePtr: number, found: boolean);
|
|
143
|
+
}
|
|
144
|
+
export declare class SortedSlot {
|
|
145
|
+
slot: Slot;
|
|
146
|
+
position: number;
|
|
147
|
+
constructor(slot: Slot, position: number);
|
|
84
148
|
}
|
|
85
|
-
export declare class
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
constructor(
|
|
149
|
+
export declare class SortedEntry {
|
|
150
|
+
kvSlot: Slot;
|
|
151
|
+
keySlot: Slot;
|
|
152
|
+
valuePosition: number;
|
|
153
|
+
constructor(kvSlot: Slot, keySlot: Slot, valuePosition: number);
|
|
90
154
|
}
|
|
91
|
-
export type PathPart = ArrayListInit | ArrayListGet | ArrayListAppend | ArrayListSlice | LinkedArrayListInit | LinkedArrayListGet | LinkedArrayListAppend | LinkedArrayListSlice | LinkedArrayListConcat | LinkedArrayListInsert | LinkedArrayListRemove | HashMapInit | HashMapGet | HashMapRemove | WriteData | Context;
|
|
155
|
+
export type PathPart = ArrayListInit | ArrayListGet | ArrayListAppend | ArrayListSlice | LinkedArrayListInit | LinkedArrayListGet | LinkedArrayListAppend | LinkedArrayListSlice | LinkedArrayListConcat | LinkedArrayListInsert | LinkedArrayListRemove | HashMapInit | HashMapGet | HashMapRemove | SortedMapInit | SortedMapGet | SortedMapGetIndex | SortedMapRemove | WriteData | Context;
|
|
92
156
|
export interface PathPartBase {
|
|
93
|
-
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer):
|
|
157
|
+
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
94
158
|
}
|
|
95
159
|
export type HashMapGetTarget = HashMapGetKVPair | HashMapGetKey | HashMapGetValue;
|
|
96
160
|
export declare class HashMapGetKVPair {
|
|
@@ -108,96 +172,136 @@ export declare class HashMapGetValue {
|
|
|
108
172
|
readonly kind = "value";
|
|
109
173
|
constructor(hash: Uint8Array);
|
|
110
174
|
}
|
|
111
|
-
export type
|
|
175
|
+
export type SortedMapGetTarget = SortedMapGetKVPair | SortedMapGetKey | SortedMapGetValue;
|
|
176
|
+
export declare class SortedMapGetKVPair {
|
|
177
|
+
key: Uint8Array;
|
|
178
|
+
readonly kind = "kv_pair";
|
|
179
|
+
constructor(key: Uint8Array);
|
|
180
|
+
}
|
|
181
|
+
export declare class SortedMapGetKey {
|
|
182
|
+
key: Uint8Array;
|
|
183
|
+
readonly kind = "key";
|
|
184
|
+
constructor(key: Uint8Array);
|
|
185
|
+
}
|
|
186
|
+
export declare class SortedMapGetValue {
|
|
187
|
+
key: Uint8Array;
|
|
188
|
+
readonly kind = "value";
|
|
189
|
+
constructor(key: Uint8Array);
|
|
190
|
+
}
|
|
191
|
+
export type ContextFunction = (cursor: any) => void;
|
|
112
192
|
export declare class ArrayListInit implements PathPartBase {
|
|
113
193
|
readonly kind = "ArrayListInit";
|
|
114
|
-
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer):
|
|
194
|
+
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
115
195
|
}
|
|
116
196
|
export declare class ArrayListGet implements PathPartBase {
|
|
117
197
|
index: number;
|
|
118
198
|
readonly kind = "ArrayListGet";
|
|
119
199
|
constructor(index: number);
|
|
120
|
-
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer):
|
|
200
|
+
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
121
201
|
}
|
|
122
202
|
export declare class ArrayListAppend implements PathPartBase {
|
|
123
203
|
readonly kind = "ArrayListAppend";
|
|
124
|
-
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer):
|
|
204
|
+
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
125
205
|
}
|
|
126
206
|
export declare class ArrayListSlice implements PathPartBase {
|
|
127
207
|
size: number;
|
|
128
208
|
readonly kind = "ArrayListSlice";
|
|
129
209
|
constructor(size: number);
|
|
130
|
-
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer):
|
|
210
|
+
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
131
211
|
}
|
|
132
212
|
export declare class LinkedArrayListInit implements PathPartBase {
|
|
133
213
|
readonly kind = "LinkedArrayListInit";
|
|
134
|
-
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer):
|
|
214
|
+
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
135
215
|
}
|
|
136
216
|
export declare class LinkedArrayListGet implements PathPartBase {
|
|
137
217
|
index: number;
|
|
138
218
|
readonly kind = "LinkedArrayListGet";
|
|
139
219
|
constructor(index: number);
|
|
140
|
-
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer):
|
|
220
|
+
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
141
221
|
}
|
|
142
222
|
export declare class LinkedArrayListAppend implements PathPartBase {
|
|
143
223
|
readonly kind = "LinkedArrayListAppend";
|
|
144
|
-
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer):
|
|
224
|
+
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
145
225
|
}
|
|
146
226
|
export declare class LinkedArrayListSlice implements PathPartBase {
|
|
147
227
|
offset: number;
|
|
148
228
|
size: number;
|
|
149
229
|
readonly kind = "LinkedArrayListSlice";
|
|
150
230
|
constructor(offset: number, size: number);
|
|
151
|
-
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer):
|
|
231
|
+
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
152
232
|
}
|
|
153
233
|
export declare class LinkedArrayListConcat implements PathPartBase {
|
|
154
234
|
list: Slot;
|
|
155
235
|
readonly kind = "LinkedArrayListConcat";
|
|
156
236
|
constructor(list: Slot);
|
|
157
|
-
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer):
|
|
237
|
+
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
158
238
|
}
|
|
159
239
|
export declare class LinkedArrayListInsert implements PathPartBase {
|
|
160
240
|
index: number;
|
|
161
241
|
readonly kind = "LinkedArrayListInsert";
|
|
162
242
|
constructor(index: number);
|
|
163
|
-
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer):
|
|
243
|
+
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
164
244
|
}
|
|
165
245
|
export declare class LinkedArrayListRemove implements PathPartBase {
|
|
166
246
|
index: number;
|
|
167
247
|
readonly kind = "LinkedArrayListRemove";
|
|
168
248
|
constructor(index: number);
|
|
169
|
-
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer):
|
|
249
|
+
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
170
250
|
}
|
|
171
251
|
export declare class HashMapInit implements PathPartBase {
|
|
172
252
|
counted: boolean;
|
|
173
253
|
set: boolean;
|
|
174
254
|
readonly kind = "HashMapInit";
|
|
175
255
|
constructor(counted?: boolean, set?: boolean);
|
|
176
|
-
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer):
|
|
256
|
+
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
177
257
|
}
|
|
178
258
|
export declare class HashMapGet implements PathPartBase {
|
|
179
259
|
target: HashMapGetTarget;
|
|
180
260
|
readonly kind = "HashMapGet";
|
|
181
261
|
constructor(target: HashMapGetTarget);
|
|
182
|
-
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer):
|
|
262
|
+
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
183
263
|
}
|
|
184
264
|
export declare class HashMapRemove implements PathPartBase {
|
|
185
265
|
hash: Uint8Array;
|
|
186
266
|
readonly kind = "HashMapRemove";
|
|
187
267
|
constructor(hash: Uint8Array);
|
|
188
|
-
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer):
|
|
268
|
+
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
269
|
+
}
|
|
270
|
+
export declare class SortedMapInit implements PathPartBase {
|
|
271
|
+
set: boolean;
|
|
272
|
+
readonly kind = "SortedMapInit";
|
|
273
|
+
constructor(set?: boolean);
|
|
274
|
+
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
275
|
+
}
|
|
276
|
+
export declare class SortedMapGet implements PathPartBase {
|
|
277
|
+
target: SortedMapGetTarget;
|
|
278
|
+
readonly kind = "SortedMapGet";
|
|
279
|
+
constructor(target: SortedMapGetTarget);
|
|
280
|
+
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
281
|
+
}
|
|
282
|
+
export declare class SortedMapGetIndex implements PathPartBase {
|
|
283
|
+
index: number;
|
|
284
|
+
readonly kind = "SortedMapGetIndex";
|
|
285
|
+
constructor(index: number);
|
|
286
|
+
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
287
|
+
}
|
|
288
|
+
export declare class SortedMapRemove implements PathPartBase {
|
|
289
|
+
key: Uint8Array;
|
|
290
|
+
readonly kind = "SortedMapRemove";
|
|
291
|
+
constructor(key: Uint8Array);
|
|
292
|
+
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
189
293
|
}
|
|
190
294
|
export declare class WriteData implements PathPartBase {
|
|
191
295
|
data: WriteableData | null;
|
|
192
296
|
readonly kind = "WriteData";
|
|
193
297
|
constructor(data: WriteableData | null);
|
|
194
|
-
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer):
|
|
298
|
+
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
195
299
|
}
|
|
196
300
|
export declare class Context implements PathPartBase {
|
|
197
301
|
fn: ContextFunction;
|
|
198
302
|
readonly kind = "Context";
|
|
199
303
|
constructor(fn: ContextFunction);
|
|
200
|
-
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer):
|
|
304
|
+
readSlotPointer(db: Database, isTopLevel: boolean, writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
201
305
|
}
|
|
202
306
|
declare class HashMapGetResult {
|
|
203
307
|
slotPtr: SlotPointer;
|
|
@@ -209,38 +313,58 @@ declare class ArrayListAppendResult {
|
|
|
209
313
|
slotPtr: SlotPointer;
|
|
210
314
|
constructor(header: ArrayListHeader, slotPtr: SlotPointer);
|
|
211
315
|
}
|
|
212
|
-
declare class LinkedArrayListAppendResult {
|
|
213
|
-
header: LinkedArrayListHeader;
|
|
214
|
-
slotPtr: LinkedArrayListSlotPointer;
|
|
215
|
-
constructor(header: LinkedArrayListHeader, slotPtr: LinkedArrayListSlotPointer);
|
|
216
|
-
}
|
|
217
316
|
export declare class Database {
|
|
218
317
|
core: Core;
|
|
219
318
|
hasher: Hasher;
|
|
220
319
|
header: Header;
|
|
221
320
|
txStart: number | null;
|
|
222
|
-
|
|
223
|
-
static create(core: Core, hasher: Hasher): Promise<Database>;
|
|
321
|
+
constructor(core: Core, hasher: Hasher);
|
|
224
322
|
rootCursor(): WriteCursor;
|
|
225
|
-
freeze():
|
|
226
|
-
compact(targetCore: Core):
|
|
227
|
-
truncate():
|
|
323
|
+
freeze(): void;
|
|
324
|
+
compact(targetCore: Core): Database;
|
|
325
|
+
truncate(): void;
|
|
228
326
|
checkHashBytes(hash: Uint8Array): Uint8Array;
|
|
229
327
|
checkHash(target: HashMapGetTarget): Uint8Array;
|
|
230
|
-
readSlotPointer(writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer):
|
|
231
|
-
readMapSlot(indexPos: number, keyHash: Uint8Array, keyOffset: number, writeMode: WriteMode, isTopLevel: boolean, target: HashMapGetTarget):
|
|
232
|
-
removeMapSlot(indexPos: number, keyHash: Uint8Array, keyOffset: number, isTopLevel: boolean):
|
|
233
|
-
readArrayListSlotAppend(header: ArrayListHeader, writeMode: WriteMode, isTopLevel: boolean):
|
|
234
|
-
readArrayListSlot(indexPos: number, key: number, shift: number, writeMode: WriteMode, isTopLevel: boolean):
|
|
235
|
-
readArrayListSlice(header: ArrayListHeader, size: number):
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
328
|
+
readSlotPointer(writeMode: WriteMode, path: PathPart[], pathI: number, slotPtr: SlotPointer): SlotPointer;
|
|
329
|
+
readMapSlot(indexPos: number, keyHash: Uint8Array, keyOffset: number, writeMode: WriteMode, isTopLevel: boolean, target: HashMapGetTarget): HashMapGetResult;
|
|
330
|
+
removeMapSlot(indexPos: number, keyHash: Uint8Array, keyOffset: number, isTopLevel: boolean): Slot;
|
|
331
|
+
readArrayListSlotAppend(header: ArrayListHeader, writeMode: WriteMode, isTopLevel: boolean): ArrayListAppendResult;
|
|
332
|
+
readArrayListSlot(indexPos: number, key: number, shift: number, writeMode: WriteMode, isTopLevel: boolean): SlotPointer;
|
|
333
|
+
readArrayListSlice(header: ArrayListHeader, size: number): ArrayListHeader;
|
|
334
|
+
readBTreeNode(ptr: number): BTreeNode;
|
|
335
|
+
writeBTreeNodeAt(node: BTreeNode, ptr: number): void;
|
|
336
|
+
writeBTreeNode(node: BTreeNode): number;
|
|
337
|
+
btreeReusable(ptr: number): boolean;
|
|
338
|
+
btreeWriteNode(node: BTreeNode, oldPtr: number): number;
|
|
339
|
+
btreeNewRoot(): number;
|
|
340
|
+
readBTreeSlot(rootPtr: number, rank: number): SlotPointer;
|
|
341
|
+
btreeInsert(nodePtr: number, rank: number): BTreeInsertResult;
|
|
342
|
+
btreeGrowRoot(result: BTreeInsertResult): number;
|
|
343
|
+
btreeGetForWrite(nodePtr: number, rank: number): BTreeWriteSlot;
|
|
344
|
+
btreeHeight(rootPtr: number): number;
|
|
345
|
+
btreeMakeRoot(result: BTreeJoinResult): number;
|
|
346
|
+
btreeAssembleLeaf(vals: Slot[], total: number): BTreeJoinResult;
|
|
347
|
+
btreeAssembleBranch(children: Slot[], counts: number[], total: number): BTreeJoinResult;
|
|
348
|
+
btreeMergeNodes(a: BTreeNode, b: BTreeNode): BTreeJoinResult;
|
|
349
|
+
btreeJoinRight(aPtr: number, ha: number, bPtr: number, hb: number): BTreeJoinResult;
|
|
350
|
+
btreeJoinLeft(aPtr: number, ha: number, bPtr: number, hb: number): BTreeJoinResult;
|
|
351
|
+
btreeJoin(rootA: number, rootB: number): number;
|
|
352
|
+
btreeSubtree(children: Slot[], counts: number[], start: number, len: number): number;
|
|
353
|
+
btreeSplit(rootPtr: number, rank: number): BTreeSplitResult;
|
|
354
|
+
readSortedNode(ptr: number): SortedNode;
|
|
355
|
+
writeSortedNodeAt(node: SortedNode, ptr: number): void;
|
|
356
|
+
writeSortedNode(node: SortedNode): number;
|
|
357
|
+
sortedWriteNode(node: SortedNode, oldPtr: number): number;
|
|
358
|
+
readKvPair(kvSlot: Slot): KeyValuePair;
|
|
359
|
+
compareKey(keySlot: Slot, target: Uint8Array): number;
|
|
360
|
+
sortedGet(rootPtr: number, key: Uint8Array): SortedSlot | null;
|
|
361
|
+
sortedGetByIndex(rootPtr: number, rank: number): SortedSlot;
|
|
362
|
+
sortedRank(rootPtr: number, key: Uint8Array): number;
|
|
363
|
+
writeKey(key: Uint8Array): Slot;
|
|
364
|
+
sortedNewEntry(key: Uint8Array): SortedEntry;
|
|
365
|
+
sortedPut(nodePtr: number, key: Uint8Array): SortedInsertResult;
|
|
366
|
+
sortedRemove(nodePtr: number, key: Uint8Array): SortedRemoveResult;
|
|
367
|
+
sortedGrowRoot(result: SortedInsertResult): number;
|
|
368
|
+
sortedTargetSlot(kvPos: number, target: SortedMapGetTarget): SlotPointer;
|
|
245
369
|
}
|
|
246
370
|
export {};
|