effect-grammar 0.4.0 → 0.5.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 +175 -87
- package/dist/binary.d.ts +64 -0
- package/dist/binary.d.ts.map +1 -0
- package/dist/binary.js +246 -0
- package/dist/binary.js.map +1 -0
- package/dist/codec.d.ts +17 -0
- package/dist/codec.d.ts.map +1 -0
- package/dist/codec.js +14 -0
- package/dist/codec.js.map +1 -0
- package/dist/combinators.d.ts +112 -6
- package/dist/combinators.d.ts.map +1 -1
- package/dist/combinators.js +218 -28
- package/dist/combinators.js.map +1 -1
- package/dist/compile.d.ts +36 -0
- package/dist/compile.d.ts.map +1 -0
- package/dist/compile.js +228 -0
- package/dist/compile.js.map +1 -0
- package/dist/core.d.ts +34 -1
- package/dist/core.d.ts.map +1 -1
- package/dist/core.js +51 -1
- package/dist/core.js.map +1 -1
- package/dist/env.d.ts +5 -0
- package/dist/env.d.ts.map +1 -1
- package/dist/env.js +20 -1
- package/dist/env.js.map +1 -1
- package/dist/errors.d.ts +12 -0
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +40 -4
- package/dist/errors.js.map +1 -1
- package/dist/gen.d.ts.map +1 -1
- package/dist/gen.js +5 -7
- package/dist/gen.js.map +1 -1
- package/dist/index.d.ts +5 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/parse.d.ts +10 -1
- package/dist/parse.d.ts.map +1 -1
- package/dist/parse.js +81 -19
- package/dist/parse.js.map +1 -1
- package/dist/pattern.d.ts +2 -1
- package/dist/pattern.d.ts.map +1 -1
- package/dist/pattern.js +46 -2
- package/dist/pattern.js.map +1 -1
- package/dist/print.d.ts +8 -0
- package/dist/print.d.ts.map +1 -1
- package/dist/print.js +136 -18
- package/dist/print.js.map +1 -1
- package/dist/render.d.ts.map +1 -1
- package/dist/render.js +33 -6
- package/dist/render.js.map +1 -1
- package/dist/schema.d.ts +8 -3
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +11 -13
- package/dist/schema.js.map +1 -1
- package/dist/testing.d.ts +18 -0
- package/dist/testing.d.ts.map +1 -0
- package/dist/testing.js +72 -0
- package/dist/testing.js.map +1 -0
- package/package.json +9 -3
- package/dist/ast.d.ts +0 -115
- package/dist/ast.d.ts.map +0 -1
- package/dist/ast.js +0 -253
- package/dist/ast.js.map +0 -1
- package/dist/grammar.d.ts +0 -8
- package/dist/grammar.d.ts.map +0 -1
- package/dist/grammar.js +0 -8
- package/dist/grammar.js.map +0 -1
- package/dist/recovery.d.ts +0 -10
- package/dist/recovery.d.ts.map +0 -1
- package/dist/recovery.js +0 -296
- package/dist/recovery.js.map +0 -1
package/dist/print.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { Predicate, Result } from "effect";
|
|
1
|
+
import { Equal, Predicate, Result } from "effect";
|
|
2
2
|
import { nodeOf, resolve, unsafeToNever, } from "./core.js";
|
|
3
|
-
import { caseFor, evaluate, frame, isCount, Unbound } from "./env.js";
|
|
4
|
-
import { exceptionMessage, preview, PrintError } from "./errors.js";
|
|
5
|
-
import {
|
|
3
|
+
import { caseFor, copyFields, evaluate, frame, nonByte, isCount, toBytes, Unbound, } from "./env.js";
|
|
4
|
+
import { describeRoundTrip, exceptionMessage, preview, PrintError, } from "./errors.js";
|
|
5
|
+
import { reparse } from "./parse.js";
|
|
6
|
+
import { ownKeys, unifyPattern } from "./pattern.js";
|
|
6
7
|
import { describe, describeStep } from "./render.js";
|
|
7
8
|
class Failure {
|
|
8
9
|
issue;
|
|
@@ -11,6 +12,15 @@ class Failure {
|
|
|
11
12
|
}
|
|
12
13
|
}
|
|
13
14
|
const fail = (issue) => new Failure(issue);
|
|
15
|
+
/** Parse `printed` back through `grammar`; the issue if it does not read as `value`. */
|
|
16
|
+
const roundTripIssue = (grammar, value, printed, env) => {
|
|
17
|
+
const back = reparse(grammar, printed, env);
|
|
18
|
+
if (!back.ok)
|
|
19
|
+
return { _tag: "RoundTrip", value, printed, error: back.error.message };
|
|
20
|
+
return Equal.equals(back.value, value)
|
|
21
|
+
? undefined
|
|
22
|
+
: { _tag: "RoundTrip", value, printed, parsed: back.value };
|
|
23
|
+
};
|
|
14
24
|
const bindingPath = (pattern, scope, slot, path) => {
|
|
15
25
|
switch (pattern._tag) {
|
|
16
26
|
case "Ref":
|
|
@@ -60,7 +70,35 @@ const outputGen = (node, value, env) => {
|
|
|
60
70
|
}
|
|
61
71
|
return text;
|
|
62
72
|
};
|
|
63
|
-
const
|
|
73
|
+
const outputMerge = (node, value, env) => {
|
|
74
|
+
if (!Predicate.isObject(value)) {
|
|
75
|
+
return fail({ _tag: "TypeMismatch", expected: "an object", actual: value });
|
|
76
|
+
}
|
|
77
|
+
const keys = ownKeys(value, node.parts.flatMap((part) => part.keys));
|
|
78
|
+
if (!Array.isArray(keys))
|
|
79
|
+
return fail(keys);
|
|
80
|
+
let text = "";
|
|
81
|
+
for (const part of node.parts) {
|
|
82
|
+
const fields = {};
|
|
83
|
+
try {
|
|
84
|
+
copyFields(fields, value, part.keys);
|
|
85
|
+
}
|
|
86
|
+
catch (error) {
|
|
87
|
+
return fail({
|
|
88
|
+
_tag: "InvalidValue",
|
|
89
|
+
expected: "readable fields",
|
|
90
|
+
actual: value,
|
|
91
|
+
detail: exceptionMessage(error),
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
const result = out(part.grammar, fields, env);
|
|
95
|
+
if (result instanceof Failure)
|
|
96
|
+
return result;
|
|
97
|
+
text += result;
|
|
98
|
+
}
|
|
99
|
+
return text;
|
|
100
|
+
};
|
|
101
|
+
const out = (grammar, value, env, suspended = new Set()) => {
|
|
64
102
|
const node = nodeOf(grammar);
|
|
65
103
|
switch (node._tag) {
|
|
66
104
|
case "Literal":
|
|
@@ -68,14 +106,14 @@ const out = (grammar, value, env) => {
|
|
|
68
106
|
case "Regex": {
|
|
69
107
|
if (!Predicate.isString(value))
|
|
70
108
|
return fail({ _tag: "TypeMismatch", expected: "a string", actual: value });
|
|
71
|
-
node.
|
|
72
|
-
const match =
|
|
73
|
-
if (match === null || match
|
|
109
|
+
const expression = new RegExp(node.source, `${node.flags}y`);
|
|
110
|
+
const match = expression.exec(value);
|
|
111
|
+
if (match === null || match[0].length !== value.length) {
|
|
74
112
|
return fail({
|
|
75
113
|
_tag: "InvalidValue",
|
|
76
114
|
expected: node.name,
|
|
77
115
|
actual: value,
|
|
78
|
-
detail: `${JSON.stringify(value)} does not match /${node.
|
|
116
|
+
detail: `${JSON.stringify(value)} does not match /${node.source}/`,
|
|
79
117
|
});
|
|
80
118
|
}
|
|
81
119
|
return value;
|
|
@@ -93,12 +131,44 @@ const out = (grammar, value, env) => {
|
|
|
93
131
|
return close instanceof Failure ? close : open + inner + close;
|
|
94
132
|
}
|
|
95
133
|
case "Choice": {
|
|
134
|
+
if (node.on !== undefined) {
|
|
135
|
+
const { tag, keys } = node.on;
|
|
136
|
+
if (!Predicate.isObject(value) || !Object.hasOwn(value, tag)) {
|
|
137
|
+
return fail({
|
|
138
|
+
_tag: "TypeMismatch",
|
|
139
|
+
expected: `an object with a ${tag} field`,
|
|
140
|
+
actual: value,
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
const key = value[tag];
|
|
144
|
+
const index = keys.findIndex((candidate) => Object.is(candidate, key));
|
|
145
|
+
if (index === -1) {
|
|
146
|
+
return fail({
|
|
147
|
+
_tag: "InvalidValue",
|
|
148
|
+
expected: `${tag} to be one of ${keys.map(preview).join(", ")}`,
|
|
149
|
+
actual: key,
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
return out(node.options[index], value, env);
|
|
153
|
+
}
|
|
96
154
|
const issues = [];
|
|
97
155
|
for (const option of node.options) {
|
|
98
156
|
const result = out(option, value, env);
|
|
99
|
-
if (
|
|
157
|
+
if (result instanceof Failure) {
|
|
158
|
+
issues.push(result.issue);
|
|
159
|
+
continue;
|
|
160
|
+
}
|
|
161
|
+
if (node.checked !== true)
|
|
162
|
+
return result;
|
|
163
|
+
const issue = roundTripIssue(grammar, value, result, env);
|
|
164
|
+
if (issue === undefined)
|
|
100
165
|
return result;
|
|
101
|
-
issues.push(
|
|
166
|
+
issues.push({
|
|
167
|
+
_tag: "InvalidValue",
|
|
168
|
+
expected: describe(option),
|
|
169
|
+
actual: value,
|
|
170
|
+
detail: describeRoundTrip(issue),
|
|
171
|
+
});
|
|
102
172
|
}
|
|
103
173
|
return fail({ _tag: "NoAlternative", actual: value, issues });
|
|
104
174
|
}
|
|
@@ -163,8 +233,35 @@ const out = (grammar, value, env) => {
|
|
|
163
233
|
return out(node.inner, node.printAs, env);
|
|
164
234
|
case "Label":
|
|
165
235
|
return out(node.inner, value, env);
|
|
166
|
-
case "Suspend":
|
|
167
|
-
|
|
236
|
+
case "Suspend": {
|
|
237
|
+
if (suspended.has(node)) {
|
|
238
|
+
return fail({
|
|
239
|
+
_tag: "InvalidValue",
|
|
240
|
+
expected: "a productive recursive grammar",
|
|
241
|
+
actual: value,
|
|
242
|
+
detail: `suspend${node.name === undefined ? "" : ` ${JSON.stringify(node.name)}`} recursed without consuming a value`,
|
|
243
|
+
});
|
|
244
|
+
}
|
|
245
|
+
let target;
|
|
246
|
+
try {
|
|
247
|
+
target = resolve(node);
|
|
248
|
+
}
|
|
249
|
+
catch (error) {
|
|
250
|
+
return fail({
|
|
251
|
+
_tag: "InvalidValue",
|
|
252
|
+
expected: "a valid suspended grammar",
|
|
253
|
+
actual: value,
|
|
254
|
+
detail: exceptionMessage(error),
|
|
255
|
+
});
|
|
256
|
+
}
|
|
257
|
+
suspended.add(node);
|
|
258
|
+
try {
|
|
259
|
+
return out(target, value, env, suspended);
|
|
260
|
+
}
|
|
261
|
+
finally {
|
|
262
|
+
suspended.delete(node);
|
|
263
|
+
}
|
|
264
|
+
}
|
|
168
265
|
case "Match": {
|
|
169
266
|
const key = evaluate(node.scrutinee, env);
|
|
170
267
|
if (key === Unbound)
|
|
@@ -187,13 +284,18 @@ const out = (grammar, value, env) => {
|
|
|
187
284
|
}
|
|
188
285
|
if (!Predicate.isString(value))
|
|
189
286
|
return fail({ _tag: "TypeMismatch", expected: "a string", actual: value });
|
|
287
|
+
if (node.unit === "char") {
|
|
288
|
+
return value.length === count
|
|
289
|
+
? value
|
|
290
|
+
: fail({ _tag: "InvalidValue", expected: `${count} UTF-16 code units`, actual: value });
|
|
291
|
+
}
|
|
292
|
+
if (nonByte.test(value)) {
|
|
293
|
+
return fail({ _tag: "InvalidValue", expected: "a string of bytes", actual: value });
|
|
294
|
+
}
|
|
295
|
+
// A binary string is an encoding detail, so the error shows the bytes it stands for.
|
|
190
296
|
return value.length === count
|
|
191
297
|
? value
|
|
192
|
-
: fail({
|
|
193
|
-
_tag: "InvalidValue",
|
|
194
|
-
expected: `${count} UTF-16 code units`,
|
|
195
|
-
actual: value,
|
|
196
|
-
});
|
|
298
|
+
: fail({ _tag: "InvalidValue", expected: `${count} bytes`, actual: toBytes(value) });
|
|
197
299
|
}
|
|
198
300
|
case "RepeatExact": {
|
|
199
301
|
const count = evaluate(node.count, env);
|
|
@@ -221,6 +323,8 @@ const out = (grammar, value, env) => {
|
|
|
221
323
|
}
|
|
222
324
|
return text;
|
|
223
325
|
}
|
|
326
|
+
case "Merge":
|
|
327
|
+
return outputMerge(node, value, env);
|
|
224
328
|
}
|
|
225
329
|
};
|
|
226
330
|
export const printUnknown = (grammar, value) => {
|
|
@@ -229,5 +333,19 @@ export const printUnknown = (grammar, value) => {
|
|
|
229
333
|
? Result.fail(new PrintError({ issue: result.issue }))
|
|
230
334
|
: Result.succeed(result);
|
|
231
335
|
};
|
|
336
|
+
/** Print a value using the grammar's selected branches and configured spellings. This does not verify a round trip; see {@link printCheckedUnknown}. */
|
|
232
337
|
export const print = (grammar, value) => printUnknown(grammar, value);
|
|
338
|
+
export const printCheckedUnknown = (grammar, value) => {
|
|
339
|
+
const printed = printUnknown(grammar, value);
|
|
340
|
+
if (Result.isFailure(printed))
|
|
341
|
+
return printed;
|
|
342
|
+
const issue = roundTripIssue(grammar, value, printed.success, undefined);
|
|
343
|
+
return issue === undefined ? printed : Result.fail(new PrintError({ issue }));
|
|
344
|
+
};
|
|
345
|
+
/**
|
|
346
|
+
* Print a value, then parse the whole output back and confirm it equals the
|
|
347
|
+
* original. Fails if the text would decode to a different value, so a checked
|
|
348
|
+
* print never hides a broken round trip.
|
|
349
|
+
*/
|
|
350
|
+
export const printChecked = (grammar, value) => printCheckedUnknown(grammar, value);
|
|
233
351
|
//# sourceMappingURL=print.js.map
|
package/dist/print.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"print.js","sourceRoot":"","sources":["../src/print.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"print.js","sourceRoot":"","sources":["../src/print.ts"],"names":[],"mappings":"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"}
|
package/dist/render.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,eAAe,EAMpB,KAAK,IAAI,EACV,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,eAAe,EAMpB,KAAK,IAAI,EACV,MAAM,WAAW,CAAA;AAwMlB,eAAO,MAAM,MAAM,YAAa,eAAe,KAAG,MACc,CAAA;AAEhE,eAAO,MAAM,QAAQ,YAAa,eAAe,KAAG,MAGnD,CAAA;AAED,eAAO,MAAM,YAAY,SAAU,IAAI,SAAS,MAAM,KAAG,MACR,CAAA"}
|
package/dist/render.js
CHANGED
|
@@ -48,6 +48,8 @@ const nameBindings = (pattern, path, scope, names) => {
|
|
|
48
48
|
const showExpr = (expr, context) => {
|
|
49
49
|
if (expr._tag === "Ref")
|
|
50
50
|
return context.names.get(expr.scope)?.get(expr.slot) ?? `$${expr.slot}`;
|
|
51
|
+
if (expr._tag === "Count")
|
|
52
|
+
return String(expr.value);
|
|
51
53
|
const object = showExpr(expr.object, context);
|
|
52
54
|
return Predicate.isString(expr.key) && /^[A-Za-z_$][\w$]*$/.test(expr.key)
|
|
53
55
|
? `${object}.${expr.key}`
|
|
@@ -59,7 +61,7 @@ const show = (grammar, context) => {
|
|
|
59
61
|
case "Literal":
|
|
60
62
|
return {
|
|
61
63
|
precedence: AtomPrecedence,
|
|
62
|
-
text: node.value === "" ? "" : JSON.stringify(node.value),
|
|
64
|
+
text: node.value === "" ? "" : (node.name ?? JSON.stringify(node.value)),
|
|
63
65
|
};
|
|
64
66
|
case "Regex":
|
|
65
67
|
return { precedence: AtomPrecedence, text: `<${node.name}>` };
|
|
@@ -84,13 +86,22 @@ const show = (grammar, context) => {
|
|
|
84
86
|
show(node.inner, context),
|
|
85
87
|
show(node.close, context),
|
|
86
88
|
]);
|
|
87
|
-
case "Choice":
|
|
89
|
+
case "Choice": {
|
|
90
|
+
const on = node.on;
|
|
91
|
+
if (on !== undefined) {
|
|
92
|
+
const cases = node.options.map((option, index) => `${preview(on.keys[index])} => ${show(option, context).text}`);
|
|
93
|
+
return {
|
|
94
|
+
precedence: AtomPrecedence,
|
|
95
|
+
text: `on(${on.tag}){${cases.join(" | ")}}`,
|
|
96
|
+
};
|
|
97
|
+
}
|
|
88
98
|
return {
|
|
89
99
|
precedence: ChoicePrecedence,
|
|
90
100
|
text: node.options
|
|
91
101
|
.map((option) => parenthesize(show(option, context), SequencePrecedence))
|
|
92
102
|
.join(" | "),
|
|
93
103
|
};
|
|
104
|
+
}
|
|
94
105
|
case "Many": {
|
|
95
106
|
const inner = show(node.inner, context);
|
|
96
107
|
const sep = show(node.sep, context);
|
|
@@ -121,9 +132,18 @@ const show = (grammar, context) => {
|
|
|
121
132
|
return { precedence: AtomPrecedence, text: node.name ?? "…" };
|
|
122
133
|
}
|
|
123
134
|
context.seen.add(node);
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
135
|
+
try {
|
|
136
|
+
return show(resolve(node), context);
|
|
137
|
+
}
|
|
138
|
+
catch (error) {
|
|
139
|
+
return {
|
|
140
|
+
precedence: AtomPrecedence,
|
|
141
|
+
text: `<invalid suspend: ${error instanceof Error ? error.message : preview(error)}>`,
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
finally {
|
|
145
|
+
context.seen.delete(node);
|
|
146
|
+
}
|
|
127
147
|
}
|
|
128
148
|
case "Match": {
|
|
129
149
|
const cases = node.cases.map((matchCase) => `${preview(matchCase.key)} => ${show(matchCase.grammar, context).text}`);
|
|
@@ -133,12 +153,19 @@ const show = (grammar, context) => {
|
|
|
133
153
|
};
|
|
134
154
|
}
|
|
135
155
|
case "Take":
|
|
136
|
-
return {
|
|
156
|
+
return {
|
|
157
|
+
precedence: AtomPrecedence,
|
|
158
|
+
text: node.name === undefined
|
|
159
|
+
? `<${node.unit}>{${showExpr(node.count, context)}}`
|
|
160
|
+
: `<${node.name}>`,
|
|
161
|
+
};
|
|
137
162
|
case "RepeatExact":
|
|
138
163
|
return {
|
|
139
164
|
precedence: PostfixPrecedence,
|
|
140
165
|
text: `(${show(node.inner, context).text}){${showExpr(node.count, context)}}`,
|
|
141
166
|
};
|
|
167
|
+
case "Merge":
|
|
168
|
+
return sequence(node.parts.map((part) => show(part.grammar, context)));
|
|
142
169
|
}
|
|
143
170
|
};
|
|
144
171
|
const context = (includeBindings) => ({
|
package/dist/render.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
|
package/dist/schema.d.ts
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import { Schema } from "effect";
|
|
2
|
+
import { type CodecOptions } from "./codec.ts";
|
|
2
3
|
import type { Grammar } from "./core.ts";
|
|
3
|
-
export
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
export type { CodecOptions } from "./codec.ts";
|
|
5
|
+
/**
|
|
6
|
+
* Derive a string-to-schema codec from a grammar. Decoding parses the whole
|
|
7
|
+
* string. Encoding checks the printed value round trip by default; set
|
|
8
|
+
* `roundTrip: "off"` to use unchecked printing.
|
|
9
|
+
*/
|
|
10
|
+
export declare const codec: <S extends Schema.Top, A extends S["Encoded"]>(grammar: Grammar<A>, target: S, options?: CodecOptions) => Schema.decodeTo<S, Schema.Codec<string, string, never, never>, never, never>;
|
|
6
11
|
//# sourceMappingURL=schema.d.ts.map
|
package/dist/schema.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,OAAO,EAAE,KAAK,YAAY,EAAa,MAAM,YAAY,CAAA;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAIxC,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9C;;;;GAIG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,SAAS,MAAM,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,WACvD,OAAO,CAAC,CAAC,CAAC,UACX,CAAC,YACC,YAAY,iFAWvB,CAAA"}
|
package/dist/schema.js
CHANGED
|
@@ -1,16 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { Schema } from "effect";
|
|
2
|
+
import { codecFrom } from "./codec.js";
|
|
3
3
|
import { parse } from "./parse.js";
|
|
4
|
-
import { printUnknown } from "./print.js";
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
4
|
+
import { printCheckedUnknown, printUnknown } from "./print.js";
|
|
5
|
+
/**
|
|
6
|
+
* Derive a string-to-schema codec from a grammar. Decoding parses the whole
|
|
7
|
+
* string. Encoding checks the printed value round trip by default; set
|
|
8
|
+
* `roundTrip: "off"` to use unchecked printing.
|
|
9
|
+
*/
|
|
10
|
+
export const codec = (grammar, target, options) => {
|
|
11
|
+
const print = options?.roundTrip === "off" ? printUnknown : printCheckedUnknown;
|
|
12
|
+
return codecFrom(Schema.String, target, grammar, options?.identifier, (text) => parse(grammar, text), (value) => print(grammar, value));
|
|
11
13
|
};
|
|
12
|
-
export const codec = (grammar, target, options) => Schema.String.pipe(Schema.decodeTo(target, SchemaTransformation.transformOrFail({
|
|
13
|
-
decode: (text) => Effect.fromResult(parse(grammar, text)).pipe(Effect.mapError(({ message }) => new SchemaIssue.InvalidValue({ message }, text))),
|
|
14
|
-
encode: (value) => Effect.fromResult(printUnknown(grammar, value)).pipe(Effect.mapError((error) => printIssueToSchema(value, error.issue))),
|
|
15
|
-
})), Schema.annotate({ ...options, description: render(grammar) }));
|
|
16
14
|
//# sourceMappingURL=schema.js.map
|
package/dist/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,OAAO,EAAqB,SAAS,EAAE,MAAM,YAAY,CAAA;AAEzD,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAI9D;;;;GAIG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,CACnB,OAAmB,EACnB,MAAS,EACT,OAAsB,EACtB,EAAE;IACF,MAAM,KAAK,GAAG,OAAO,EAAE,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,mBAAmB,CAAA;IAC/E,OAAO,SAAS,CACd,MAAM,CAAC,MAAM,EACb,MAAM,EACN,OAAO,EACP,OAAO,EAAE,UAAU,EACnB,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,EAC9B,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CACjC,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import * as FastCheck from "effect/testing/FastCheck";
|
|
2
|
+
import type { Grammar } from "./core.ts";
|
|
3
|
+
/** Assert `parse(print(value))` equals `value`. */
|
|
4
|
+
export declare const assertPrintParse: <A>(grammar: Grammar<A>, value: A) => void;
|
|
5
|
+
/**
|
|
6
|
+
* Assert that `text` parses, that parsing its printed form yields an equal
|
|
7
|
+
* value, and that printing the result again is unchanged. Returns that stable
|
|
8
|
+
* printed form; this assertion does not imply universal canonicality.
|
|
9
|
+
*/
|
|
10
|
+
export declare const assertParsePrintCanonical: <A>(grammar: Grammar<A>, text: string) => string;
|
|
11
|
+
/** Check `parse(print(value)) = value` over an arbitrary of values. */
|
|
12
|
+
export declare const checkPrintParse: <A>(grammar: Grammar<A>, arbitrary: FastCheck.Arbitrary<A>, params?: FastCheck.Parameters<[A]>) => void;
|
|
13
|
+
/**
|
|
14
|
+
* Check the accepted-text value-preservation and print fixed-point properties
|
|
15
|
+
* over arbitrary text. Inputs that do not parse are skipped.
|
|
16
|
+
*/
|
|
17
|
+
export declare const checkCanonicalization: <A>(grammar: Grammar<A>, arbitraryText: FastCheck.Arbitrary<string>, params?: FastCheck.Parameters<[string]>) => void;
|
|
18
|
+
//# sourceMappingURL=testing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../src/testing.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,SAAS,MAAM,0BAA0B,CAAA;AAErD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAkBxC,mDAAmD;AACnD,eAAO,MAAM,gBAAgB,GAAI,CAAC,WAAW,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,KAAG,IAKnE,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,GAAI,CAAC,WAAW,OAAO,CAAC,CAAC,CAAC,QAAQ,MAAM,KAAG,MAMhF,CAAA;AA6BD,uEAAuE;AACvE,eAAO,MAAM,eAAe,GAAI,CAAC,WACtB,OAAO,CAAC,CAAC,CAAC,aACR,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,WACxB,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,KACjC,IAOF,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAAI,CAAC,WAC5B,OAAO,CAAC,CAAC,CAAC,iBACJ,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,WACjC,SAAS,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,KACtC,IASF,CAAA"}
|
package/dist/testing.js
ADDED
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { Equal, Result } from "effect";
|
|
2
|
+
import * as FastCheck from "effect/testing/FastCheck";
|
|
3
|
+
import { preview } from "./errors.js";
|
|
4
|
+
import { parse } from "./parse.js";
|
|
5
|
+
import { print, printChecked } from "./print.js";
|
|
6
|
+
/**
|
|
7
|
+
* Property helpers for checking a particular grammar. These properties are not
|
|
8
|
+
* guaranteed for every grammar: choices, transforms, and configured silent
|
|
9
|
+
* spellings can make printing lossy or non-idempotent.
|
|
10
|
+
*
|
|
11
|
+
* - `parse(print(value)) = value` checks a value round trip.
|
|
12
|
+
* - For accepted text, parse, print, and parse again preserve the value, and a
|
|
13
|
+
* second print is unchanged. “Canonical” names that tested fixed-point
|
|
14
|
+
* property; it is not a universal canonicalization guarantee.
|
|
15
|
+
*/
|
|
16
|
+
const lawError = (message) => new Error(`grammar law: ${message}`);
|
|
17
|
+
/** Assert `parse(print(value))` equals `value`. */
|
|
18
|
+
export const assertPrintParse = (grammar, value) => {
|
|
19
|
+
const printed = printChecked(grammar, value);
|
|
20
|
+
if (Result.isFailure(printed)) {
|
|
21
|
+
throw lawError(`parse(print(value)) = value fails: ${printed.failure.message}`);
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* Assert that `text` parses, that parsing its printed form yields an equal
|
|
26
|
+
* value, and that printing the result again is unchanged. Returns that stable
|
|
27
|
+
* printed form; this assertion does not imply universal canonicality.
|
|
28
|
+
*/
|
|
29
|
+
export const assertParsePrintCanonical = (grammar, text) => {
|
|
30
|
+
const parsed = parse(grammar, text);
|
|
31
|
+
if (Result.isFailure(parsed)) {
|
|
32
|
+
throw lawError(`parse failed for ${JSON.stringify(text)}: ${parsed.failure.message}`);
|
|
33
|
+
}
|
|
34
|
+
return assertCanonical(grammar, text, parsed.success);
|
|
35
|
+
};
|
|
36
|
+
const assertCanonical = (grammar, text, value) => {
|
|
37
|
+
const canonical = print(grammar, value);
|
|
38
|
+
if (Result.isFailure(canonical)) {
|
|
39
|
+
throw lawError(`print(parse(text)) failed\n text: ${JSON.stringify(text)}\n parsed: ${preview(value)}\n error: ${canonical.failure.message}`);
|
|
40
|
+
}
|
|
41
|
+
const reparsed = parse(grammar, canonical.success);
|
|
42
|
+
if (Result.isFailure(reparsed)) {
|
|
43
|
+
throw lawError(`the canonical text does not parse\n text: ${JSON.stringify(text)}\n canonical: ${JSON.stringify(canonical.success)}\n error: ${reparsed.failure.message}`);
|
|
44
|
+
}
|
|
45
|
+
if (!Equal.equals(reparsed.success, value)) {
|
|
46
|
+
throw lawError(`canonicalization changed the value\n text: ${JSON.stringify(text)}\n canonical: ${JSON.stringify(canonical.success)}\n before: ${preview(value)}\n after: ${preview(reparsed.success)}`);
|
|
47
|
+
}
|
|
48
|
+
const again = print(grammar, reparsed.success);
|
|
49
|
+
if (Result.isFailure(again) || again.success !== canonical.success) {
|
|
50
|
+
throw lawError(`canonicalization is not idempotent\n once: ${JSON.stringify(canonical.success)}\n twice: ${Result.isFailure(again) ? again.failure.message : JSON.stringify(again.success)}`);
|
|
51
|
+
}
|
|
52
|
+
return canonical.success;
|
|
53
|
+
};
|
|
54
|
+
/** Check `parse(print(value)) = value` over an arbitrary of values. */
|
|
55
|
+
export const checkPrintParse = (grammar, arbitrary, params) => {
|
|
56
|
+
FastCheck.assert(FastCheck.property(arbitrary, (value) => {
|
|
57
|
+
assertPrintParse(grammar, value);
|
|
58
|
+
}), params);
|
|
59
|
+
};
|
|
60
|
+
/**
|
|
61
|
+
* Check the accepted-text value-preservation and print fixed-point properties
|
|
62
|
+
* over arbitrary text. Inputs that do not parse are skipped.
|
|
63
|
+
*/
|
|
64
|
+
export const checkCanonicalization = (grammar, arbitraryText, params) => {
|
|
65
|
+
FastCheck.assert(FastCheck.property(arbitraryText, (text) => {
|
|
66
|
+
const parsed = parse(grammar, text);
|
|
67
|
+
if (Result.isFailure(parsed))
|
|
68
|
+
return FastCheck.pre(false);
|
|
69
|
+
assertCanonical(grammar, text, parsed.success);
|
|
70
|
+
}), params);
|
|
71
|
+
};
|
|
72
|
+
//# sourceMappingURL=testing.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"testing.js","sourceRoot":"","sources":["../src/testing.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "effect-grammar",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.5.0",
|
|
4
|
+
"description": "Bidirectional grammar combinators and Schema codecs for Effect.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"bidirectional",
|
|
7
7
|
"effect",
|
|
@@ -30,6 +30,10 @@
|
|
|
30
30
|
"types": "./dist/index.d.ts",
|
|
31
31
|
"import": "./dist/index.js"
|
|
32
32
|
},
|
|
33
|
+
"./Binary": {
|
|
34
|
+
"types": "./dist/binary.d.ts",
|
|
35
|
+
"import": "./dist/binary.js"
|
|
36
|
+
},
|
|
33
37
|
"./Schema": {
|
|
34
38
|
"types": "./dist/schema.d.ts",
|
|
35
39
|
"import": "./dist/schema.js"
|
|
@@ -45,7 +49,8 @@
|
|
|
45
49
|
},
|
|
46
50
|
"scripts": {
|
|
47
51
|
"bench": "vitest bench --dir bench",
|
|
48
|
-
"build": "tsc -p tsconfig.build.json",
|
|
52
|
+
"build": "pnpm clean && tsc -p tsconfig.build.json",
|
|
53
|
+
"clean": "node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"",
|
|
49
54
|
"check": "pnpm fmt:check && pnpm lint && pnpm typecheck && pnpm test && pnpm build",
|
|
50
55
|
"fmt": "oxfmt",
|
|
51
56
|
"fmt:check": "oxfmt --check",
|
|
@@ -59,6 +64,7 @@
|
|
|
59
64
|
"@changesets/changelog-github": "^0.7.0",
|
|
60
65
|
"@changesets/cli": "^2.31.0",
|
|
61
66
|
"@effect/language-service": "^0.87.2",
|
|
67
|
+
"@effect/platform-node": "4.0.0-rc.112",
|
|
62
68
|
"@effect/tsgo": "0.38.0",
|
|
63
69
|
"@effect/vitest": "4.0.0-rc.112",
|
|
64
70
|
"@oxlint/plugins": "1.80.0",
|