@benrogmans/lemma-engine 0.6.5 → 0.6.7
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/lemma.d.ts +5 -3
- package/lemma.js +48 -21
- package/lemma_bg.wasm +0 -0
- package/lemma_bg.wasm.d.ts +2 -1
- package/package.json +1 -1
package/lemma.d.ts
CHANGED
|
@@ -3,10 +3,11 @@
|
|
|
3
3
|
export class WasmEngine {
|
|
4
4
|
free(): void;
|
|
5
5
|
[Symbol.dispose](): void;
|
|
6
|
-
constructor();
|
|
7
6
|
addLemmaCode(code: string, source: string): string;
|
|
8
|
-
evaluate(doc_name: string, fact_values_json: string): string;
|
|
9
7
|
listDocuments(): string;
|
|
8
|
+
constructor();
|
|
9
|
+
invert(doc_name: string, rule_name: string, target_json: string, given_facts_json: string): string;
|
|
10
|
+
evaluate(doc_name: string, fact_values_json: string): string;
|
|
10
11
|
}
|
|
11
12
|
|
|
12
13
|
export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
|
|
@@ -14,10 +15,11 @@ export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembl
|
|
|
14
15
|
export interface InitOutput {
|
|
15
16
|
readonly memory: WebAssembly.Memory;
|
|
16
17
|
readonly __wbg_wasmengine_free: (a: number, b: number) => void;
|
|
17
|
-
readonly wasmengine_new: () => number;
|
|
18
18
|
readonly wasmengine_addLemmaCode: (a: number, b: number, c: number, d: number, e: number) => [number, number];
|
|
19
19
|
readonly wasmengine_evaluate: (a: number, b: number, c: number, d: number, e: number) => [number, number];
|
|
20
|
+
readonly wasmengine_invert: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number];
|
|
20
21
|
readonly wasmengine_listDocuments: (a: number) => [number, number];
|
|
22
|
+
readonly wasmengine_new: () => number;
|
|
21
23
|
readonly __wbindgen_free: (a: number, b: number, c: number) => void;
|
|
22
24
|
readonly __wbindgen_malloc: (a: number, b: number) => number;
|
|
23
25
|
readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
|
package/lemma.js
CHANGED
|
@@ -110,12 +110,6 @@ export class WasmEngine {
|
|
|
110
110
|
const ptr = this.__destroy_into_raw();
|
|
111
111
|
wasm.__wbg_wasmengine_free(ptr, 0);
|
|
112
112
|
}
|
|
113
|
-
constructor() {
|
|
114
|
-
const ret = wasm.wasmengine_new();
|
|
115
|
-
this.__wbg_ptr = ret >>> 0;
|
|
116
|
-
WasmEngineFinalization.register(this, this.__wbg_ptr, this);
|
|
117
|
-
return this;
|
|
118
|
-
}
|
|
119
113
|
/**
|
|
120
114
|
* @param {string} code
|
|
121
115
|
* @param {string} source
|
|
@@ -137,6 +131,54 @@ export class WasmEngine {
|
|
|
137
131
|
wasm.__wbindgen_free(deferred3_0, deferred3_1, 1);
|
|
138
132
|
}
|
|
139
133
|
}
|
|
134
|
+
/**
|
|
135
|
+
* @returns {string}
|
|
136
|
+
*/
|
|
137
|
+
listDocuments() {
|
|
138
|
+
let deferred1_0;
|
|
139
|
+
let deferred1_1;
|
|
140
|
+
try {
|
|
141
|
+
const ret = wasm.wasmengine_listDocuments(this.__wbg_ptr);
|
|
142
|
+
deferred1_0 = ret[0];
|
|
143
|
+
deferred1_1 = ret[1];
|
|
144
|
+
return getStringFromWasm0(ret[0], ret[1]);
|
|
145
|
+
} finally {
|
|
146
|
+
wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
constructor() {
|
|
150
|
+
const ret = wasm.wasmengine_new();
|
|
151
|
+
this.__wbg_ptr = ret >>> 0;
|
|
152
|
+
WasmEngineFinalization.register(this, this.__wbg_ptr, this);
|
|
153
|
+
return this;
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* @param {string} doc_name
|
|
157
|
+
* @param {string} rule_name
|
|
158
|
+
* @param {string} target_json
|
|
159
|
+
* @param {string} given_facts_json
|
|
160
|
+
* @returns {string}
|
|
161
|
+
*/
|
|
162
|
+
invert(doc_name, rule_name, target_json, given_facts_json) {
|
|
163
|
+
let deferred5_0;
|
|
164
|
+
let deferred5_1;
|
|
165
|
+
try {
|
|
166
|
+
const ptr0 = passStringToWasm0(doc_name, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
167
|
+
const len0 = WASM_VECTOR_LEN;
|
|
168
|
+
const ptr1 = passStringToWasm0(rule_name, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
169
|
+
const len1 = WASM_VECTOR_LEN;
|
|
170
|
+
const ptr2 = passStringToWasm0(target_json, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
171
|
+
const len2 = WASM_VECTOR_LEN;
|
|
172
|
+
const ptr3 = passStringToWasm0(given_facts_json, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
|
|
173
|
+
const len3 = WASM_VECTOR_LEN;
|
|
174
|
+
const ret = wasm.wasmengine_invert(this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2, ptr3, len3);
|
|
175
|
+
deferred5_0 = ret[0];
|
|
176
|
+
deferred5_1 = ret[1];
|
|
177
|
+
return getStringFromWasm0(ret[0], ret[1]);
|
|
178
|
+
} finally {
|
|
179
|
+
wasm.__wbindgen_free(deferred5_0, deferred5_1, 1);
|
|
180
|
+
}
|
|
181
|
+
}
|
|
140
182
|
/**
|
|
141
183
|
* @param {string} doc_name
|
|
142
184
|
* @param {string} fact_values_json
|
|
@@ -158,21 +200,6 @@ export class WasmEngine {
|
|
|
158
200
|
wasm.__wbindgen_free(deferred3_0, deferred3_1, 1);
|
|
159
201
|
}
|
|
160
202
|
}
|
|
161
|
-
/**
|
|
162
|
-
* @returns {string}
|
|
163
|
-
*/
|
|
164
|
-
listDocuments() {
|
|
165
|
-
let deferred1_0;
|
|
166
|
-
let deferred1_1;
|
|
167
|
-
try {
|
|
168
|
-
const ret = wasm.wasmengine_listDocuments(this.__wbg_ptr);
|
|
169
|
-
deferred1_0 = ret[0];
|
|
170
|
-
deferred1_1 = ret[1];
|
|
171
|
-
return getStringFromWasm0(ret[0], ret[1]);
|
|
172
|
-
} finally {
|
|
173
|
-
wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
203
|
}
|
|
177
204
|
if (Symbol.dispose) WasmEngine.prototype[Symbol.dispose] = WasmEngine.prototype.free;
|
|
178
205
|
|
package/lemma_bg.wasm
CHANGED
|
Binary file
|
package/lemma_bg.wasm.d.ts
CHANGED
|
@@ -2,10 +2,11 @@
|
|
|
2
2
|
/* eslint-disable */
|
|
3
3
|
export const memory: WebAssembly.Memory;
|
|
4
4
|
export const __wbg_wasmengine_free: (a: number, b: number) => void;
|
|
5
|
-
export const wasmengine_new: () => number;
|
|
6
5
|
export const wasmengine_addLemmaCode: (a: number, b: number, c: number, d: number, e: number) => [number, number];
|
|
7
6
|
export const wasmengine_evaluate: (a: number, b: number, c: number, d: number, e: number) => [number, number];
|
|
7
|
+
export const wasmengine_invert: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number) => [number, number];
|
|
8
8
|
export const wasmengine_listDocuments: (a: number) => [number, number];
|
|
9
|
+
export const wasmengine_new: () => number;
|
|
9
10
|
export const __wbindgen_free: (a: number, b: number, c: number) => void;
|
|
10
11
|
export const __wbindgen_malloc: (a: number, b: number) => number;
|
|
11
12
|
export const __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
|