@blackcatinformatics/purrdf 0.1.3

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.
@@ -0,0 +1,1131 @@
1
+ /* @ts-self-types="./purrdf_wasm.d.ts" */
2
+
3
+ /**
4
+ * An RDF/JS `DataFactory`. Stateless except for the auto-generated blank-node
5
+ * counter (`blankNode()` with no argument mints a fresh label).
6
+ */
7
+ export class DataFactory {
8
+ __destroy_into_raw() {
9
+ const ptr = this.__wbg_ptr;
10
+ this.__wbg_ptr = 0;
11
+ DataFactoryFinalization.unregister(this);
12
+ return ptr;
13
+ }
14
+ free() {
15
+ const ptr = this.__destroy_into_raw();
16
+ wasm.__wbg_datafactory_free(ptr, 0);
17
+ }
18
+ /**
19
+ * `blankNode(value?)` → a `BlankNode` term; a fresh label is minted when omitted.
20
+ * @param {string | null} [value]
21
+ * @returns {Term}
22
+ */
23
+ blankNode(value) {
24
+ var ptr0 = isLikeNone(value) ? 0 : passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
25
+ var len0 = WASM_VECTOR_LEN;
26
+ const ret = wasm.datafactory_blankNode(this.__wbg_ptr, ptr0, len0);
27
+ return Term.__wrap(ret);
28
+ }
29
+ /**
30
+ * `defaultGraph()` → the `DefaultGraph` term.
31
+ * @returns {Term}
32
+ */
33
+ defaultGraph() {
34
+ const ret = wasm.datafactory_defaultGraph(this.__wbg_ptr);
35
+ return Term.__wrap(ret);
36
+ }
37
+ /**
38
+ * `directionalLiteral(value, language, direction)` → an RDF-1.2 base-direction
39
+ * literal (`direction` is `"ltr"` or `"rtl"`). The deliberate extension to stock
40
+ * RDF/JS — no incumbent library carries base direction.
41
+ * @param {string} value
42
+ * @param {string} language
43
+ * @param {string} direction
44
+ * @returns {Term}
45
+ */
46
+ directionalLiteral(value, language, direction) {
47
+ try {
48
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
49
+ const ptr0 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
50
+ const len0 = WASM_VECTOR_LEN;
51
+ const ptr1 = passStringToWasm0(language, wasm.__wbindgen_export, wasm.__wbindgen_export2);
52
+ const len1 = WASM_VECTOR_LEN;
53
+ const ptr2 = passStringToWasm0(direction, wasm.__wbindgen_export, wasm.__wbindgen_export2);
54
+ const len2 = WASM_VECTOR_LEN;
55
+ wasm.datafactory_directionalLiteral(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2);
56
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
57
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
58
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
59
+ if (r2) {
60
+ throw takeObject(r1);
61
+ }
62
+ return Term.__wrap(r0);
63
+ } finally {
64
+ wasm.__wbindgen_add_to_stack_pointer(16);
65
+ }
66
+ }
67
+ /**
68
+ * `fromQuad(original)` → a copy of `original`.
69
+ * @param {Quad} original
70
+ * @returns {Quad}
71
+ */
72
+ fromQuad(original) {
73
+ _assertClass(original, Quad);
74
+ const ret = wasm.datafactory_fromQuad(this.__wbg_ptr, original.__wbg_ptr);
75
+ return Quad.__wrap(ret);
76
+ }
77
+ /**
78
+ * `fromTerm(original)` → a copy of `original` (RDF/JS structural clone).
79
+ * @param {Term} original
80
+ * @returns {Term}
81
+ */
82
+ fromTerm(original) {
83
+ _assertClass(original, Term);
84
+ const ret = wasm.datafactory_fromTerm(this.__wbg_ptr, original.__wbg_ptr);
85
+ return Term.__wrap(ret);
86
+ }
87
+ /**
88
+ * `literal(value, language?)` → a plain (`xsd:string`) or language-tagged literal.
89
+ *
90
+ * The RDF/JS spec's unified `literal(value, languageOrDatatype)` — where the second
91
+ * argument may be a string *or* a `NamedNode` — is presented by the TypeScript
92
+ * wrapper, which dispatches the `NamedNode` case to [`DataFactory::typed_literal`].
93
+ * (A `#[wasm_bindgen]`-exported type cannot be recovered from an untyped `JsValue`
94
+ * in Rust, so the polymorphism lives one layer out, in JS.) For base-direction
95
+ * literals (RDF 1.2) use [`DataFactory::directional_literal`].
96
+ * @param {string} value
97
+ * @param {string | null} [language]
98
+ * @returns {Term}
99
+ */
100
+ literal(value, language) {
101
+ const ptr0 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
102
+ const len0 = WASM_VECTOR_LEN;
103
+ var ptr1 = isLikeNone(language) ? 0 : passStringToWasm0(language, wasm.__wbindgen_export, wasm.__wbindgen_export2);
104
+ var len1 = WASM_VECTOR_LEN;
105
+ const ret = wasm.datafactory_literal(this.__wbg_ptr, ptr0, len0, ptr1, len1);
106
+ return Term.__wrap(ret);
107
+ }
108
+ /**
109
+ * `namedNode(value)` → a `NamedNode` term.
110
+ * @param {string} value
111
+ * @returns {Term}
112
+ */
113
+ namedNode(value) {
114
+ const ptr0 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
115
+ const len0 = WASM_VECTOR_LEN;
116
+ const ret = wasm.datafactory_namedNode(this.__wbg_ptr, ptr0, len0);
117
+ return Term.__wrap(ret);
118
+ }
119
+ constructor() {
120
+ const ret = wasm.datafactory_new();
121
+ this.__wbg_ptr = ret;
122
+ DataFactoryFinalization.register(this, this.__wbg_ptr, this);
123
+ return this;
124
+ }
125
+ /**
126
+ * `quad(subject, predicate, object, graph?)` → a `Quad`. The graph defaults to the
127
+ * default graph. A quoted-triple term (from [`DataFactory::quoted_triple`]) may be
128
+ * passed as `subject` or `object` (the RDF-1.2 wedge).
129
+ * @param {Term} subject
130
+ * @param {Term} predicate
131
+ * @param {Term} object
132
+ * @param {Term | null} [graph]
133
+ * @returns {Quad}
134
+ */
135
+ quad(subject, predicate, object, graph) {
136
+ _assertClass(subject, Term);
137
+ _assertClass(predicate, Term);
138
+ _assertClass(object, Term);
139
+ let ptr0 = 0;
140
+ if (!isLikeNone(graph)) {
141
+ _assertClass(graph, Term);
142
+ ptr0 = graph.__destroy_into_raw();
143
+ }
144
+ const ret = wasm.datafactory_quad(this.__wbg_ptr, subject.__wbg_ptr, predicate.__wbg_ptr, object.__wbg_ptr, ptr0);
145
+ return Quad.__wrap(ret);
146
+ }
147
+ /**
148
+ * `quotedTriple(subject, predicate, object)` → a quoted-triple `Term`
149
+ * (`termType: "Quad"`) — the RDF-1.2 wedge. Embed it by passing it as the
150
+ * `subject`/`object` of another quad.
151
+ * @param {Term} subject
152
+ * @param {Term} predicate
153
+ * @param {Term} object
154
+ * @returns {Term}
155
+ */
156
+ quotedTriple(subject, predicate, object) {
157
+ try {
158
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
159
+ _assertClass(subject, Term);
160
+ _assertClass(predicate, Term);
161
+ _assertClass(object, Term);
162
+ wasm.datafactory_quotedTriple(retptr, this.__wbg_ptr, subject.__wbg_ptr, predicate.__wbg_ptr, object.__wbg_ptr);
163
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
164
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
165
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
166
+ if (r2) {
167
+ throw takeObject(r1);
168
+ }
169
+ return Term.__wrap(r0);
170
+ } finally {
171
+ wasm.__wbindgen_add_to_stack_pointer(16);
172
+ }
173
+ }
174
+ /**
175
+ * `typedLiteral(value, datatype)` → a datatyped literal. `datatype` must be a
176
+ * `NamedNode`. (The RDF/JS `literal(value, datatype)` form, surfaced by the TS
177
+ * wrapper.)
178
+ * @param {string} value
179
+ * @param {Term} datatype
180
+ * @returns {Term}
181
+ */
182
+ typedLiteral(value, datatype) {
183
+ try {
184
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
185
+ const ptr0 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
186
+ const len0 = WASM_VECTOR_LEN;
187
+ _assertClass(datatype, Term);
188
+ wasm.datafactory_typedLiteral(retptr, this.__wbg_ptr, ptr0, len0, datatype.__wbg_ptr);
189
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
190
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
191
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
192
+ if (r2) {
193
+ throw takeObject(r1);
194
+ }
195
+ return Term.__wrap(r0);
196
+ } finally {
197
+ wasm.__wbindgen_add_to_stack_pointer(16);
198
+ }
199
+ }
200
+ /**
201
+ * `variable(value)` → a `Variable` term.
202
+ * @param {string} value
203
+ * @returns {Term}
204
+ */
205
+ variable(value) {
206
+ const ptr0 = passStringToWasm0(value, wasm.__wbindgen_export, wasm.__wbindgen_export2);
207
+ const len0 = WASM_VECTOR_LEN;
208
+ const ret = wasm.datafactory_variable(this.__wbg_ptr, ptr0, len0);
209
+ return Term.__wrap(ret);
210
+ }
211
+ }
212
+ if (Symbol.dispose) DataFactory.prototype[Symbol.dispose] = DataFactory.prototype.free;
213
+
214
+ /**
215
+ * An RDF/JS `DatasetCore` backed by the engine's COW mutable dataset.
216
+ */
217
+ export class Dataset {
218
+ static __wrap(ptr) {
219
+ const obj = Object.create(Dataset.prototype);
220
+ obj.__wbg_ptr = ptr;
221
+ DatasetFinalization.register(obj, obj.__wbg_ptr, obj);
222
+ return obj;
223
+ }
224
+ __destroy_into_raw() {
225
+ const ptr = this.__wbg_ptr;
226
+ this.__wbg_ptr = 0;
227
+ DatasetFinalization.unregister(this);
228
+ return ptr;
229
+ }
230
+ free() {
231
+ const ptr = this.__destroy_into_raw();
232
+ wasm.__wbg_dataset_free(ptr, 0);
233
+ }
234
+ /**
235
+ * `add(quad)` → insert a quad. Returns `true` if the effective set changed.
236
+ * @param {Quad} quad
237
+ * @returns {boolean}
238
+ */
239
+ add(quad) {
240
+ try {
241
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
242
+ _assertClass(quad, Quad);
243
+ wasm.dataset_add(retptr, this.__wbg_ptr, quad.__wbg_ptr);
244
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
245
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
246
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
247
+ if (r2) {
248
+ throw takeObject(r1);
249
+ }
250
+ return r0 !== 0;
251
+ } finally {
252
+ wasm.__wbindgen_add_to_stack_pointer(16);
253
+ }
254
+ }
255
+ /**
256
+ * `delete(quad)` → remove a quad. Returns `true` if the effective set changed.
257
+ * @param {Quad} quad
258
+ * @returns {boolean}
259
+ */
260
+ delete(quad) {
261
+ try {
262
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
263
+ _assertClass(quad, Quad);
264
+ wasm.dataset_delete(retptr, this.__wbg_ptr, quad.__wbg_ptr);
265
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
266
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
267
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
268
+ if (r2) {
269
+ throw takeObject(r1);
270
+ }
271
+ return r0 !== 0;
272
+ } finally {
273
+ wasm.__wbindgen_add_to_stack_pointer(16);
274
+ }
275
+ }
276
+ /**
277
+ * `has(quad)` → whether the quad is in the dataset.
278
+ * @param {Quad} quad
279
+ * @returns {boolean}
280
+ */
281
+ has(quad) {
282
+ try {
283
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
284
+ _assertClass(quad, Quad);
285
+ wasm.dataset_has(retptr, this.__wbg_ptr, quad.__wbg_ptr);
286
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
287
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
288
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
289
+ if (r2) {
290
+ throw takeObject(r1);
291
+ }
292
+ return r0 !== 0;
293
+ } finally {
294
+ wasm.__wbindgen_add_to_stack_pointer(16);
295
+ }
296
+ }
297
+ /**
298
+ * `match(subject?, predicate?, object?, graph?)` → a new dataset of the matching
299
+ * quads. An omitted (`undefined`) position is a wildcard; `defaultGraph()` matches
300
+ * only the default graph, a named node matches that graph.
301
+ * @param {Term | null} [subject]
302
+ * @param {Term | null} [predicate]
303
+ * @param {Term | null} [object]
304
+ * @param {Term | null} [graph]
305
+ * @returns {Dataset}
306
+ */
307
+ match(subject, predicate, object, graph) {
308
+ try {
309
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
310
+ let ptr0 = 0;
311
+ if (!isLikeNone(subject)) {
312
+ _assertClass(subject, Term);
313
+ ptr0 = subject.__destroy_into_raw();
314
+ }
315
+ let ptr1 = 0;
316
+ if (!isLikeNone(predicate)) {
317
+ _assertClass(predicate, Term);
318
+ ptr1 = predicate.__destroy_into_raw();
319
+ }
320
+ let ptr2 = 0;
321
+ if (!isLikeNone(object)) {
322
+ _assertClass(object, Term);
323
+ ptr2 = object.__destroy_into_raw();
324
+ }
325
+ let ptr3 = 0;
326
+ if (!isLikeNone(graph)) {
327
+ _assertClass(graph, Term);
328
+ ptr3 = graph.__destroy_into_raw();
329
+ }
330
+ wasm.dataset_match(retptr, this.__wbg_ptr, ptr0, ptr1, ptr2, ptr3);
331
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
332
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
333
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
334
+ if (r2) {
335
+ throw takeObject(r1);
336
+ }
337
+ return Dataset.__wrap(r0);
338
+ } finally {
339
+ wasm.__wbindgen_add_to_stack_pointer(16);
340
+ }
341
+ }
342
+ /**
343
+ * An empty dataset.
344
+ */
345
+ constructor() {
346
+ try {
347
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
348
+ wasm.dataset_new(retptr);
349
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
350
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
351
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
352
+ if (r2) {
353
+ throw takeObject(r1);
354
+ }
355
+ this.__wbg_ptr = r0;
356
+ DatasetFinalization.register(this, this.__wbg_ptr, this);
357
+ return this;
358
+ } finally {
359
+ wasm.__wbindgen_add_to_stack_pointer(16);
360
+ }
361
+ }
362
+ /**
363
+ * `parse(input, format, base?)` → a dataset of the parsed quads.
364
+ *
365
+ * `format` is a media type or short name (turtle/ntriples/nquads/trig/rdfxml).
366
+ * Ill-typed literals are preserved verbatim (RDFLib parity), not rejected.
367
+ * @param {string} input
368
+ * @param {string} format
369
+ * @param {string | null} [base]
370
+ * @returns {Dataset}
371
+ */
372
+ static parse(input, format, base) {
373
+ try {
374
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
375
+ const ptr0 = passStringToWasm0(input, wasm.__wbindgen_export, wasm.__wbindgen_export2);
376
+ const len0 = WASM_VECTOR_LEN;
377
+ const ptr1 = passStringToWasm0(format, wasm.__wbindgen_export, wasm.__wbindgen_export2);
378
+ const len1 = WASM_VECTOR_LEN;
379
+ var ptr2 = isLikeNone(base) ? 0 : passStringToWasm0(base, wasm.__wbindgen_export, wasm.__wbindgen_export2);
380
+ var len2 = WASM_VECTOR_LEN;
381
+ wasm.dataset_parse(retptr, ptr0, len0, ptr1, len1, ptr2, len2);
382
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
383
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
384
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
385
+ if (r2) {
386
+ throw takeObject(r1);
387
+ }
388
+ return Dataset.__wrap(r0);
389
+ } finally {
390
+ wasm.__wbindgen_add_to_stack_pointer(16);
391
+ }
392
+ }
393
+ /**
394
+ * `quads()` → every effective quad, as a JS array.
395
+ * @returns {Quad[]}
396
+ */
397
+ quads() {
398
+ try {
399
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
400
+ wasm.dataset_quads(retptr, this.__wbg_ptr);
401
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
402
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
403
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
404
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
405
+ if (r3) {
406
+ throw takeObject(r2);
407
+ }
408
+ var v1 = getArrayJsValueFromWasm0(r0, r1).slice();
409
+ wasm.__wbindgen_export3(r0, r1 * 4, 4);
410
+ return v1;
411
+ } finally {
412
+ wasm.__wbindgen_add_to_stack_pointer(16);
413
+ }
414
+ }
415
+ /**
416
+ * `query(sparql, base?)` → run a SPARQL query against this dataset, offline.
417
+ *
418
+ * Returns **SPARQL Results JSON** for SELECT / ASK and **Turtle** for
419
+ * CONSTRUCT / DESCRIBE. A parse error, an evaluation error, or a `SERVICE` /
420
+ * `LOAD` clause (unresolvable in-browser) throws a JsError — never a silent
421
+ * empty result.
422
+ * @param {string} sparql
423
+ * @param {string | null} [base]
424
+ * @returns {string}
425
+ */
426
+ query(sparql, base) {
427
+ let deferred4_0;
428
+ let deferred4_1;
429
+ try {
430
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
431
+ const ptr0 = passStringToWasm0(sparql, wasm.__wbindgen_export, wasm.__wbindgen_export2);
432
+ const len0 = WASM_VECTOR_LEN;
433
+ var ptr1 = isLikeNone(base) ? 0 : passStringToWasm0(base, wasm.__wbindgen_export, wasm.__wbindgen_export2);
434
+ var len1 = WASM_VECTOR_LEN;
435
+ wasm.dataset_query(retptr, this.__wbg_ptr, ptr0, len0, ptr1, len1);
436
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
437
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
438
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
439
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
440
+ var ptr3 = r0;
441
+ var len3 = r1;
442
+ if (r3) {
443
+ ptr3 = 0; len3 = 0;
444
+ throw takeObject(r2);
445
+ }
446
+ deferred4_0 = ptr3;
447
+ deferred4_1 = len3;
448
+ return getStringFromWasm0(ptr3, len3);
449
+ } finally {
450
+ wasm.__wbindgen_add_to_stack_pointer(16);
451
+ wasm.__wbindgen_export3(deferred4_0, deferred4_1, 1);
452
+ }
453
+ }
454
+ /**
455
+ * `serialize(format)` → the dataset rendered in `format` (a UTF-8 string).
456
+ *
457
+ * Formats: `turtle` / `ntriples` / `nquads` / `trig` / `rdfxml` (their media types
458
+ * too) plus `jsonld` (JSON-LD-star). Note: a quoted-triple term appearing as a quad
459
+ * object currently round-trips only through N-Quads (a serializer limitation for
460
+ * the other text formats).
461
+ * @param {string} format
462
+ * @returns {string}
463
+ */
464
+ serialize(format) {
465
+ let deferred3_0;
466
+ let deferred3_1;
467
+ try {
468
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
469
+ const ptr0 = passStringToWasm0(format, wasm.__wbindgen_export, wasm.__wbindgen_export2);
470
+ const len0 = WASM_VECTOR_LEN;
471
+ wasm.dataset_serialize(retptr, this.__wbg_ptr, ptr0, len0);
472
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
473
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
474
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
475
+ var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);
476
+ var ptr2 = r0;
477
+ var len2 = r1;
478
+ if (r3) {
479
+ ptr2 = 0; len2 = 0;
480
+ throw takeObject(r2);
481
+ }
482
+ deferred3_0 = ptr2;
483
+ deferred3_1 = len2;
484
+ return getStringFromWasm0(ptr2, len2);
485
+ } finally {
486
+ wasm.__wbindgen_add_to_stack_pointer(16);
487
+ wasm.__wbindgen_export3(deferred3_0, deferred3_1, 1);
488
+ }
489
+ }
490
+ /**
491
+ * `size` — the number of effective quads.
492
+ * @returns {number}
493
+ */
494
+ get size() {
495
+ const ret = wasm.dataset_size(this.__wbg_ptr);
496
+ return ret >>> 0;
497
+ }
498
+ }
499
+ if (Symbol.dispose) Dataset.prototype[Symbol.dispose] = Dataset.prototype.free;
500
+
501
+ /**
502
+ * An RDF/JS [Quad](https://rdf.js.org/data-model-spec/#quad-interface) — a statement
503
+ * `(subject, predicate, object, graph)` with `termType: "Quad"`.
504
+ */
505
+ export class Quad {
506
+ static __wrap(ptr) {
507
+ const obj = Object.create(Quad.prototype);
508
+ obj.__wbg_ptr = ptr;
509
+ QuadFinalization.register(obj, obj.__wbg_ptr, obj);
510
+ return obj;
511
+ }
512
+ __destroy_into_raw() {
513
+ const ptr = this.__wbg_ptr;
514
+ this.__wbg_ptr = 0;
515
+ QuadFinalization.unregister(this);
516
+ return ptr;
517
+ }
518
+ free() {
519
+ const ptr = this.__destroy_into_raw();
520
+ wasm.__wbg_quad_free(ptr, 0);
521
+ }
522
+ /**
523
+ * A quoted-triple [`Term`] (`termType: "Quad"`) viewing this quad's `(s, p, o)` —
524
+ * the RDF-1.2 wedge: pass the result as a subject/object to embed it.
525
+ * @returns {Term}
526
+ */
527
+ asTerm() {
528
+ try {
529
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
530
+ wasm.quad_asTerm(retptr, this.__wbg_ptr);
531
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
532
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
533
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
534
+ if (r2) {
535
+ throw takeObject(r1);
536
+ }
537
+ return Term.__wrap(r0);
538
+ } finally {
539
+ wasm.__wbindgen_add_to_stack_pointer(16);
540
+ }
541
+ }
542
+ /**
543
+ * Structural RDF/JS quad equality.
544
+ * @param {Quad} other
545
+ * @returns {boolean}
546
+ */
547
+ equals(other) {
548
+ _assertClass(other, Quad);
549
+ const ret = wasm.quad_equals(this.__wbg_ptr, other.__wbg_ptr);
550
+ return ret !== 0;
551
+ }
552
+ /**
553
+ * @returns {Term}
554
+ */
555
+ get graph() {
556
+ const ret = wasm.quad_graph(this.__wbg_ptr);
557
+ return Term.__wrap(ret);
558
+ }
559
+ /**
560
+ * @returns {Term}
561
+ */
562
+ get object() {
563
+ const ret = wasm.quad_object(this.__wbg_ptr);
564
+ return Term.__wrap(ret);
565
+ }
566
+ /**
567
+ * @returns {Term}
568
+ */
569
+ get predicate() {
570
+ const ret = wasm.quad_predicate(this.__wbg_ptr);
571
+ return Term.__wrap(ret);
572
+ }
573
+ /**
574
+ * @returns {Term}
575
+ */
576
+ get subject() {
577
+ const ret = wasm.quad_subject(this.__wbg_ptr);
578
+ return Term.__wrap(ret);
579
+ }
580
+ /**
581
+ * Always `"Quad"` (a Quad is itself an RDF/JS term).
582
+ * @returns {string}
583
+ */
584
+ get termType() {
585
+ let deferred1_0;
586
+ let deferred1_1;
587
+ try {
588
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
589
+ wasm.quad_term_type(retptr, this.__wbg_ptr);
590
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
591
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
592
+ deferred1_0 = r0;
593
+ deferred1_1 = r1;
594
+ return getStringFromWasm0(r0, r1);
595
+ } finally {
596
+ wasm.__wbindgen_add_to_stack_pointer(16);
597
+ wasm.__wbindgen_export3(deferred1_0, deferred1_1, 1);
598
+ }
599
+ }
600
+ /**
601
+ * Empty for a Quad (per RDF/JS).
602
+ * @returns {string}
603
+ */
604
+ get value() {
605
+ let deferred1_0;
606
+ let deferred1_1;
607
+ try {
608
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
609
+ wasm.quad_value(retptr, this.__wbg_ptr);
610
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
611
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
612
+ deferred1_0 = r0;
613
+ deferred1_1 = r1;
614
+ return getStringFromWasm0(r0, r1);
615
+ } finally {
616
+ wasm.__wbindgen_add_to_stack_pointer(16);
617
+ wasm.__wbindgen_export3(deferred1_0, deferred1_1, 1);
618
+ }
619
+ }
620
+ }
621
+ if (Symbol.dispose) Quad.prototype[Symbol.dispose] = Quad.prototype.free;
622
+
623
+ /**
624
+ * An RDF/JS `Sink` — a streaming consumer that interns pushed quads through the
625
+ * `purrdf-events` protocol and freezes them at `finish()`.
626
+ */
627
+ export class Sink {
628
+ __destroy_into_raw() {
629
+ const ptr = this.__wbg_ptr;
630
+ this.__wbg_ptr = 0;
631
+ SinkFinalization.unregister(this);
632
+ return ptr;
633
+ }
634
+ free() {
635
+ const ptr = this.__destroy_into_raw();
636
+ wasm.__wbg_sink_free(ptr, 0);
637
+ }
638
+ /**
639
+ * `finish()` — run the protocol's forward-reference resolution and return the
640
+ * resulting dataset. The sink is consumed; further `push`/`finish` is an error.
641
+ * @returns {Dataset}
642
+ */
643
+ finish() {
644
+ try {
645
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
646
+ wasm.sink_finish(retptr, this.__wbg_ptr);
647
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
648
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
649
+ var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);
650
+ if (r2) {
651
+ throw takeObject(r1);
652
+ }
653
+ return Dataset.__wrap(r0);
654
+ } finally {
655
+ wasm.__wbindgen_add_to_stack_pointer(16);
656
+ }
657
+ }
658
+ constructor() {
659
+ const ret = wasm.sink_new();
660
+ this.__wbg_ptr = ret;
661
+ SinkFinalization.register(this, this.__wbg_ptr, this);
662
+ return this;
663
+ }
664
+ /**
665
+ * `push(quad)` — stream one quad into the sink (interned via the event protocol).
666
+ * @param {Quad} quad
667
+ */
668
+ push(quad) {
669
+ try {
670
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
671
+ _assertClass(quad, Quad);
672
+ wasm.sink_push(retptr, this.__wbg_ptr, quad.__wbg_ptr);
673
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
674
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
675
+ if (r1) {
676
+ throw takeObject(r0);
677
+ }
678
+ } finally {
679
+ wasm.__wbindgen_add_to_stack_pointer(16);
680
+ }
681
+ }
682
+ }
683
+ if (Symbol.dispose) Sink.prototype[Symbol.dispose] = Sink.prototype.free;
684
+
685
+ /**
686
+ * An RDF/JS [Term](https://rdf.js.org/data-model-spec/#term-interface).
687
+ */
688
+ export class Term {
689
+ static __wrap(ptr) {
690
+ const obj = Object.create(Term.prototype);
691
+ obj.__wbg_ptr = ptr;
692
+ TermFinalization.register(obj, obj.__wbg_ptr, obj);
693
+ return obj;
694
+ }
695
+ __destroy_into_raw() {
696
+ const ptr = this.__wbg_ptr;
697
+ this.__wbg_ptr = 0;
698
+ TermFinalization.unregister(this);
699
+ return ptr;
700
+ }
701
+ free() {
702
+ const ptr = this.__destroy_into_raw();
703
+ wasm.__wbg_term_free(ptr, 0);
704
+ }
705
+ /**
706
+ * `datatype` — the literal's datatype as a `NamedNode`, or `undefined` for a
707
+ * non-literal.
708
+ * @returns {Term | undefined}
709
+ */
710
+ get datatype() {
711
+ const ret = wasm.term_datatype(this.__wbg_ptr);
712
+ return ret === 0 ? undefined : Term.__wrap(ret);
713
+ }
714
+ /**
715
+ * `direction` — the RDF-1.2 base direction (`"ltr"`/`"rtl"`), or `""` when absent.
716
+ * The deliberate extension to stock RDF/JS (`.goals`: overcome, don't inherit).
717
+ * @returns {string}
718
+ */
719
+ get direction() {
720
+ let deferred1_0;
721
+ let deferred1_1;
722
+ try {
723
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
724
+ wasm.term_direction(retptr, this.__wbg_ptr);
725
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
726
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
727
+ deferred1_0 = r0;
728
+ deferred1_1 = r1;
729
+ return getStringFromWasm0(r0, r1);
730
+ } finally {
731
+ wasm.__wbindgen_add_to_stack_pointer(16);
732
+ wasm.__wbindgen_export3(deferred1_0, deferred1_1, 1);
733
+ }
734
+ }
735
+ /**
736
+ * Structural RDF/JS term equality.
737
+ * @param {Term} other
738
+ * @returns {boolean}
739
+ */
740
+ equals(other) {
741
+ _assertClass(other, Term);
742
+ const ret = wasm.term_equals(this.__wbg_ptr, other.__wbg_ptr);
743
+ return ret !== 0;
744
+ }
745
+ /**
746
+ * `graph` of a quoted-triple term — always the default graph (a quoted triple has
747
+ * no graph slot), else `undefined`.
748
+ * @returns {Term | undefined}
749
+ */
750
+ get graph() {
751
+ const ret = wasm.term_graph(this.__wbg_ptr);
752
+ return ret === 0 ? undefined : Term.__wrap(ret);
753
+ }
754
+ /**
755
+ * `language` — the literal's language tag, or `""` for a non-language-tagged term
756
+ * (RDF/JS uses the empty string, not `undefined`).
757
+ * @returns {string}
758
+ */
759
+ get language() {
760
+ let deferred1_0;
761
+ let deferred1_1;
762
+ try {
763
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
764
+ wasm.term_language(retptr, this.__wbg_ptr);
765
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
766
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
767
+ deferred1_0 = r0;
768
+ deferred1_1 = r1;
769
+ return getStringFromWasm0(r0, r1);
770
+ } finally {
771
+ wasm.__wbindgen_add_to_stack_pointer(16);
772
+ wasm.__wbindgen_export3(deferred1_0, deferred1_1, 1);
773
+ }
774
+ }
775
+ /**
776
+ * `object` of a quoted-triple term, else `undefined`.
777
+ * @returns {Term | undefined}
778
+ */
779
+ get object() {
780
+ const ret = wasm.term_object(this.__wbg_ptr);
781
+ return ret === 0 ? undefined : Term.__wrap(ret);
782
+ }
783
+ /**
784
+ * `predicate` of a quoted-triple term as a `NamedNode`, else `undefined`.
785
+ * @returns {Term | undefined}
786
+ */
787
+ get predicate() {
788
+ const ret = wasm.term_predicate(this.__wbg_ptr);
789
+ return ret === 0 ? undefined : Term.__wrap(ret);
790
+ }
791
+ /**
792
+ * `subject` of a quoted-triple term (`termType: "Quad"`), else `undefined`.
793
+ * @returns {Term | undefined}
794
+ */
795
+ get subject() {
796
+ const ret = wasm.term_subject(this.__wbg_ptr);
797
+ return ret === 0 ? undefined : Term.__wrap(ret);
798
+ }
799
+ /**
800
+ * `termType` — the RDF/JS discriminator.
801
+ * @returns {string}
802
+ */
803
+ get termType() {
804
+ let deferred1_0;
805
+ let deferred1_1;
806
+ try {
807
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
808
+ wasm.term_term_type(retptr, this.__wbg_ptr);
809
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
810
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
811
+ deferred1_0 = r0;
812
+ deferred1_1 = r1;
813
+ return getStringFromWasm0(r0, r1);
814
+ } finally {
815
+ wasm.__wbindgen_add_to_stack_pointer(16);
816
+ wasm.__wbindgen_export3(deferred1_0, deferred1_1, 1);
817
+ }
818
+ }
819
+ /**
820
+ * `value` — the IRI, blank label, lexical form, or variable name. Empty for a
821
+ * quoted triple and the default graph (per RDF/JS).
822
+ * @returns {string}
823
+ */
824
+ get value() {
825
+ let deferred1_0;
826
+ let deferred1_1;
827
+ try {
828
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
829
+ wasm.term_value(retptr, this.__wbg_ptr);
830
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
831
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
832
+ deferred1_0 = r0;
833
+ deferred1_1 = r1;
834
+ return getStringFromWasm0(r0, r1);
835
+ } finally {
836
+ wasm.__wbindgen_add_to_stack_pointer(16);
837
+ wasm.__wbindgen_export3(deferred1_0, deferred1_1, 1);
838
+ }
839
+ }
840
+ }
841
+ if (Symbol.dispose) Term.prototype[Symbol.dispose] = Term.prototype.free;
842
+
843
+ /**
844
+ * The purrdf engine version (the crate's SemVer), exposed to JS as `version()`.
845
+ *
846
+ * A liveness probe for the wasm build + the npm package: importing `purrdf` and
847
+ * calling `version()` proves the module instantiated and the engine linked.
848
+ * @returns {string}
849
+ */
850
+ export function version() {
851
+ let deferred1_0;
852
+ let deferred1_1;
853
+ try {
854
+ const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);
855
+ wasm.version(retptr);
856
+ var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);
857
+ var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);
858
+ deferred1_0 = r0;
859
+ deferred1_1 = r1;
860
+ return getStringFromWasm0(r0, r1);
861
+ } finally {
862
+ wasm.__wbindgen_add_to_stack_pointer(16);
863
+ wasm.__wbindgen_export3(deferred1_0, deferred1_1, 1);
864
+ }
865
+ }
866
+ function __wbg_get_imports() {
867
+ const import0 = {
868
+ __proto__: null,
869
+ __wbg_Error_fdd633d4bb5dd76a: function(arg0, arg1) {
870
+ const ret = Error(getStringFromWasm0(arg0, arg1));
871
+ return addHeapObject(ret);
872
+ },
873
+ __wbg___wbindgen_throw_ea4887a5f8f9a9db: function(arg0, arg1) {
874
+ throw new Error(getStringFromWasm0(arg0, arg1));
875
+ },
876
+ __wbg_quad_new: function(arg0) {
877
+ const ret = Quad.__wrap(arg0);
878
+ return addHeapObject(ret);
879
+ },
880
+ __wbindgen_object_drop_ref: function(arg0) {
881
+ takeObject(arg0);
882
+ },
883
+ };
884
+ return {
885
+ __proto__: null,
886
+ "./purrdf_wasm_bg.js": import0,
887
+ };
888
+ }
889
+
890
+ const DataFactoryFinalization = (typeof FinalizationRegistry === 'undefined')
891
+ ? { register: () => {}, unregister: () => {} }
892
+ : new FinalizationRegistry(ptr => wasm.__wbg_datafactory_free(ptr, 1));
893
+ const DatasetFinalization = (typeof FinalizationRegistry === 'undefined')
894
+ ? { register: () => {}, unregister: () => {} }
895
+ : new FinalizationRegistry(ptr => wasm.__wbg_dataset_free(ptr, 1));
896
+ const QuadFinalization = (typeof FinalizationRegistry === 'undefined')
897
+ ? { register: () => {}, unregister: () => {} }
898
+ : new FinalizationRegistry(ptr => wasm.__wbg_quad_free(ptr, 1));
899
+ const SinkFinalization = (typeof FinalizationRegistry === 'undefined')
900
+ ? { register: () => {}, unregister: () => {} }
901
+ : new FinalizationRegistry(ptr => wasm.__wbg_sink_free(ptr, 1));
902
+ const TermFinalization = (typeof FinalizationRegistry === 'undefined')
903
+ ? { register: () => {}, unregister: () => {} }
904
+ : new FinalizationRegistry(ptr => wasm.__wbg_term_free(ptr, 1));
905
+
906
+ function addHeapObject(obj) {
907
+ if (heap_next === heap.length) heap.push(heap.length + 1);
908
+ const idx = heap_next;
909
+ heap_next = heap[idx];
910
+
911
+ heap[idx] = obj;
912
+ return idx;
913
+ }
914
+
915
+ function _assertClass(instance, klass) {
916
+ if (!(instance instanceof klass)) {
917
+ throw new Error(`expected instance of ${klass.name}`);
918
+ }
919
+ }
920
+
921
+ function dropObject(idx) {
922
+ if (idx < 1028) return;
923
+ heap[idx] = heap_next;
924
+ heap_next = idx;
925
+ }
926
+
927
+ function getArrayJsValueFromWasm0(ptr, len) {
928
+ ptr = ptr >>> 0;
929
+ const mem = getDataViewMemory0();
930
+ const result = [];
931
+ for (let i = ptr; i < ptr + 4 * len; i += 4) {
932
+ result.push(takeObject(mem.getUint32(i, true)));
933
+ }
934
+ return result;
935
+ }
936
+
937
+ let cachedDataViewMemory0 = null;
938
+ function getDataViewMemory0() {
939
+ if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || (cachedDataViewMemory0.buffer.detached === undefined && cachedDataViewMemory0.buffer !== wasm.memory.buffer)) {
940
+ cachedDataViewMemory0 = new DataView(wasm.memory.buffer);
941
+ }
942
+ return cachedDataViewMemory0;
943
+ }
944
+
945
+ function getStringFromWasm0(ptr, len) {
946
+ return decodeText(ptr >>> 0, len);
947
+ }
948
+
949
+ let cachedUint8ArrayMemory0 = null;
950
+ function getUint8ArrayMemory0() {
951
+ if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {
952
+ cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);
953
+ }
954
+ return cachedUint8ArrayMemory0;
955
+ }
956
+
957
+ function getObject(idx) { return heap[idx]; }
958
+
959
+ let heap = new Array(1024).fill(undefined);
960
+ heap.push(undefined, null, true, false);
961
+
962
+ let heap_next = heap.length;
963
+
964
+ function isLikeNone(x) {
965
+ return x === undefined || x === null;
966
+ }
967
+
968
+ function passStringToWasm0(arg, malloc, realloc) {
969
+ if (realloc === undefined) {
970
+ const buf = cachedTextEncoder.encode(arg);
971
+ const ptr = malloc(buf.length, 1) >>> 0;
972
+ getUint8ArrayMemory0().subarray(ptr, ptr + buf.length).set(buf);
973
+ WASM_VECTOR_LEN = buf.length;
974
+ return ptr;
975
+ }
976
+
977
+ let len = arg.length;
978
+ let ptr = malloc(len, 1) >>> 0;
979
+
980
+ const mem = getUint8ArrayMemory0();
981
+
982
+ let offset = 0;
983
+
984
+ for (; offset < len; offset++) {
985
+ const code = arg.charCodeAt(offset);
986
+ if (code > 0x7F) break;
987
+ mem[ptr + offset] = code;
988
+ }
989
+ if (offset !== len) {
990
+ if (offset !== 0) {
991
+ arg = arg.slice(offset);
992
+ }
993
+ ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;
994
+ const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);
995
+ const ret = cachedTextEncoder.encodeInto(arg, view);
996
+
997
+ offset += ret.written;
998
+ ptr = realloc(ptr, len, offset, 1) >>> 0;
999
+ }
1000
+
1001
+ WASM_VECTOR_LEN = offset;
1002
+ return ptr;
1003
+ }
1004
+
1005
+ function takeObject(idx) {
1006
+ const ret = getObject(idx);
1007
+ dropObject(idx);
1008
+ return ret;
1009
+ }
1010
+
1011
+ let cachedTextDecoder = new TextDecoder('utf-8', { ignoreBOM: true, fatal: true });
1012
+ cachedTextDecoder.decode();
1013
+ const MAX_SAFARI_DECODE_BYTES = 2146435072;
1014
+ let numBytesDecoded = 0;
1015
+ function decodeText(ptr, len) {
1016
+ numBytesDecoded += len;
1017
+ if (numBytesDecoded >= MAX_SAFARI_DECODE_BYTES) {
1018
+ cachedTextDecoder = new TextDecoder('utf-8', { ignoreBOM: true, fatal: true });
1019
+ cachedTextDecoder.decode();
1020
+ numBytesDecoded = len;
1021
+ }
1022
+ return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));
1023
+ }
1024
+
1025
+ const cachedTextEncoder = new TextEncoder();
1026
+
1027
+ if (!('encodeInto' in cachedTextEncoder)) {
1028
+ cachedTextEncoder.encodeInto = function (arg, view) {
1029
+ const buf = cachedTextEncoder.encode(arg);
1030
+ view.set(buf);
1031
+ return {
1032
+ read: arg.length,
1033
+ written: buf.length
1034
+ };
1035
+ };
1036
+ }
1037
+
1038
+ let WASM_VECTOR_LEN = 0;
1039
+
1040
+ let wasmModule, wasmInstance, wasm;
1041
+ function __wbg_finalize_init(instance, module) {
1042
+ wasmInstance = instance;
1043
+ wasm = instance.exports;
1044
+ wasmModule = module;
1045
+ cachedDataViewMemory0 = null;
1046
+ cachedUint8ArrayMemory0 = null;
1047
+ return wasm;
1048
+ }
1049
+
1050
+ async function __wbg_load(module, imports) {
1051
+ if (typeof Response === 'function' && module instanceof Response) {
1052
+ if (typeof WebAssembly.instantiateStreaming === 'function') {
1053
+ try {
1054
+ return await WebAssembly.instantiateStreaming(module, imports);
1055
+ } catch (e) {
1056
+ const validResponse = module.ok && expectedResponseType(module.type);
1057
+
1058
+ if (validResponse && module.headers.get('Content-Type') !== 'application/wasm') {
1059
+ console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n", e);
1060
+
1061
+ } else { throw e; }
1062
+ }
1063
+ }
1064
+
1065
+ const bytes = await module.arrayBuffer();
1066
+ return await WebAssembly.instantiate(bytes, imports);
1067
+ } else {
1068
+ const instance = await WebAssembly.instantiate(module, imports);
1069
+
1070
+ if (instance instanceof WebAssembly.Instance) {
1071
+ return { instance, module };
1072
+ } else {
1073
+ return instance;
1074
+ }
1075
+ }
1076
+
1077
+ function expectedResponseType(type) {
1078
+ switch (type) {
1079
+ case 'basic': case 'cors': case 'default': return true;
1080
+ }
1081
+ return false;
1082
+ }
1083
+ }
1084
+
1085
+ function initSync(module) {
1086
+ if (wasm !== undefined) return wasm;
1087
+
1088
+
1089
+ if (module !== undefined) {
1090
+ if (Object.getPrototypeOf(module) === Object.prototype) {
1091
+ ({module} = module)
1092
+ } else {
1093
+ console.warn('using deprecated parameters for `initSync()`; pass a single object instead')
1094
+ }
1095
+ }
1096
+
1097
+ const imports = __wbg_get_imports();
1098
+ if (!(module instanceof WebAssembly.Module)) {
1099
+ module = new WebAssembly.Module(module);
1100
+ }
1101
+ const instance = new WebAssembly.Instance(module, imports);
1102
+ return __wbg_finalize_init(instance, module);
1103
+ }
1104
+
1105
+ async function __wbg_init(module_or_path) {
1106
+ if (wasm !== undefined) return wasm;
1107
+
1108
+
1109
+ if (module_or_path !== undefined) {
1110
+ if (Object.getPrototypeOf(module_or_path) === Object.prototype) {
1111
+ ({module_or_path} = module_or_path)
1112
+ } else {
1113
+ console.warn('using deprecated parameters for the initialization function; pass a single object instead')
1114
+ }
1115
+ }
1116
+
1117
+ if (module_or_path === undefined) {
1118
+ module_or_path = new URL('purrdf_wasm_bg.wasm', import.meta.url);
1119
+ }
1120
+ const imports = __wbg_get_imports();
1121
+
1122
+ if (typeof module_or_path === 'string' || (typeof Request === 'function' && module_or_path instanceof Request) || (typeof URL === 'function' && module_or_path instanceof URL)) {
1123
+ module_or_path = fetch(module_or_path);
1124
+ }
1125
+
1126
+ const { instance, module } = await __wbg_load(await module_or_path, imports);
1127
+
1128
+ return __wbg_finalize_init(instance, module);
1129
+ }
1130
+
1131
+ export { initSync, __wbg_init as default };