aontu 0.60.0 → 0.62.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 +3 -3
- package/dist/agentsmd.d.ts +1 -0
- package/dist/agentsmd.js +7 -1
- package/dist/agentsmd.js.map +1 -1
- package/dist/allow.d.ts +23 -0
- package/dist/allow.js +230 -0
- package/dist/allow.js.map +1 -0
- package/dist/aontu.d.ts +4 -2
- package/dist/aontu.js +4 -2
- package/dist/aontu.js.map +1 -1
- package/dist/cli.d.ts +10 -1
- package/dist/cli.js +1000 -47
- package/dist/cli.js.map +1 -1
- package/dist/format.d.ts +1 -0
- package/dist/format.js +154 -12
- package/dist/format.js.map +1 -1
- package/dist/helpdoc.d.ts +16 -0
- package/dist/helpdoc.js +59 -0
- package/dist/helpdoc.js.map +1 -0
- package/dist/hints.js +15 -2
- package/dist/hints.js.map +1 -1
- package/dist/lang.js +93 -40
- package/dist/lang.js.map +1 -1
- package/dist/lower.d.ts +3 -0
- package/dist/lower.js +3 -0
- package/dist/lower.js.map +1 -1
- package/dist/lsp.d.ts +1 -1
- package/dist/lsp.js +1 -1
- package/dist/lsp.js.map +1 -1
- package/dist/relation.d.ts +2 -0
- package/dist/relation.js +7 -1
- package/dist/relation.js.map +1 -1
- package/dist/render.js +26 -21
- package/dist/render.js.map +1 -1
- package/dist/sigdecl.js +1 -1
- package/dist/sigdecl.js.map +1 -1
- package/dist/std.js +112 -69
- package/dist/std.js.map +1 -1
- package/dist/template.d.ts +2 -1
- package/dist/template.js +51 -15
- package/dist/template.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/val/AggFuncVal.js +2 -2
- package/dist/val/AggFuncVal.js.map +1 -1
- package/dist/val/CmpFuncVal.d.ts +20 -0
- package/dist/val/CmpFuncVal.js +245 -0
- package/dist/val/CmpFuncVal.js.map +1 -0
- package/dist/val/EachFuncVal.d.ts +1 -2
- package/dist/val/EachFuncVal.js +15 -29
- package/dist/val/EachFuncVal.js.map +1 -1
- package/dist/val/FormFuncVal.js.map +1 -1
- package/dist/val/LowerFuncVal.js +17 -1
- package/dist/val/LowerFuncVal.js.map +1 -1
- package/dist/val/NamerFuncVal.d.ts +12 -0
- package/dist/val/NamerFuncVal.js +176 -0
- package/dist/val/NamerFuncVal.js.map +1 -0
- package/dist/val/NilVal.js +29 -3
- package/dist/val/NilVal.js.map +1 -1
- package/dist/val/NomFuncVal.d.ts +12 -0
- package/dist/val/NomFuncVal.js +187 -0
- package/dist/val/NomFuncVal.js.map +1 -0
- package/dist/val/PackFuncVal.js +3 -3
- package/dist/val/PackFuncVal.js.map +1 -1
- package/dist/val/RefVal.js +1 -1
- package/dist/val/TranslateFuncVal.d.ts +12 -0
- package/dist/val/TranslateFuncVal.js +101 -0
- package/dist/val/TranslateFuncVal.js.map +1 -0
- package/dist/val/UpperFuncVal.js +17 -1
- package/dist/val/UpperFuncVal.js.map +1 -1
- package/dist/val/caserange.d.ts +3 -0
- package/dist/val/caserange.js +110 -0
- package/dist/val/caserange.js.map +1 -0
- package/dist/vet.d.ts +12 -0
- package/dist/vet.js +209 -1
- package/dist/vet.js.map +1 -1
- package/grammar/aontu.abnf +1 -1
- package/grammar/aontu.gbnf +1 -1
- package/grammar/aontu.lark +1 -1
- package/grammar/aontu.tmLanguage.json +1 -1
- package/package.json +1 -1
- package/skill/SKILL.md +8 -0
- package/skill/init/check.sh +28 -0
- package/skill/init/data.aon +12 -0
- package/skill/init/model.aon +19 -0
- package/skill/tasks.md +151 -0
- package/src/agentsmd.ts +13 -2
- package/src/allow.ts +316 -0
- package/src/aontu.ts +10 -1
- package/src/cli.ts +1131 -53
- package/src/format.ts +191 -14
- package/src/helpdoc.ts +77 -0
- package/src/hints.ts +16 -2
- package/src/lang.ts +98 -42
- package/src/lower.ts +3 -3
- package/src/lsp.ts +1 -1
- package/src/relation.ts +21 -1
- package/src/render.ts +26 -21
- package/src/sigdecl.ts +1 -1
- package/src/std.ts +112 -69
- package/src/template.ts +55 -15
- package/src/val/AggFuncVal.ts +2 -2
- package/src/val/CmpFuncVal.ts +411 -0
- package/src/val/EachFuncVal.ts +49 -50
- package/src/val/LowerFuncVal.ts +18 -1
- package/src/val/NilVal.ts +29 -3
- package/src/val/NomFuncVal.ts +287 -0
- package/src/val/PackFuncVal.ts +3 -3
- package/src/val/RefVal.ts +1 -1
- package/src/val/TranslateFuncVal.ts +182 -0
- package/src/val/UpperFuncVal.ts +18 -1
- package/src/val/caserange.ts +115 -0
- package/src/vet.ts +287 -1
- package/src/val/FormFuncVal.ts +0 -119
package/dist/val/UpperFuncVal.js
CHANGED
|
@@ -6,6 +6,7 @@ const err_1 = require("../err");
|
|
|
6
6
|
const ScalarKindVal_1 = require("../val/ScalarKindVal");
|
|
7
7
|
const valutil_1 = require("../val/valutil");
|
|
8
8
|
const Decimal_1 = require("../val/Decimal");
|
|
9
|
+
const caserange_1 = require("./caserange");
|
|
9
10
|
const FuncBaseVal_1 = require("./FuncBaseVal");
|
|
10
11
|
class UpperFuncVal extends FuncBaseVal_1.FuncBaseVal {
|
|
11
12
|
constructor(spec, ctx) {
|
|
@@ -25,7 +26,22 @@ class UpperFuncVal extends FuncBaseVal_1.FuncBaseVal {
|
|
|
25
26
|
// internal error.
|
|
26
27
|
const arg = args?.[0];
|
|
27
28
|
const oldpeg = arg?.peg;
|
|
28
|
-
|
|
29
|
+
// THE RANGE (ts/src/val/caserange.ts): `start` names the first
|
|
30
|
+
// character of the run when it is zero or positive and the last
|
|
31
|
+
// when it is negative; `len` of -1, and the absent argument, are
|
|
32
|
+
// the source's length. Refused on a NUMBER, where a run of
|
|
33
|
+
// characters means nothing -- the numeric arm below is a ceiling,
|
|
34
|
+
// not a case mapping.
|
|
35
|
+
const start = (0, caserange_1.rangeArg)(args?.[1]);
|
|
36
|
+
const len = (0, caserange_1.rangeArg)(args?.[2]);
|
|
37
|
+
const ranged = undefined !== start || undefined !== len;
|
|
38
|
+
if (ranged &&
|
|
39
|
+
(Number.isNaN(start) || Number.isNaN(len) ||
|
|
40
|
+
'string' !== typeof oldpeg)) {
|
|
41
|
+
return this.place((0, err_1.makeNilErr)(ctx, 'invalid-arg', this, arg, 'range'));
|
|
42
|
+
}
|
|
43
|
+
const peg = 'string' === typeof oldpeg ?
|
|
44
|
+
(0, caserange_1.caseRange)(oldpeg, start ?? 0, len ?? -1, true) :
|
|
29
45
|
'number' === typeof oldpeg ? Math.ceil(oldpeg) :
|
|
30
46
|
// The exact leaves take an EXACT ceiling and keep their kind: a
|
|
31
47
|
// biginteger is already integral so it is its own ceiling, and a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UpperFuncVal.js","sourceRoot":"","sources":["../../src/val/UpperFuncVal.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;AAYzD,gCAAmC;AAGnC,wDAAoD;AACpD,4CAA+C;AAC/C,4CAAwC;
|
|
1
|
+
{"version":3,"file":"UpperFuncVal.js","sourceRoot":"","sources":["../../src/val/UpperFuncVal.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* Copyright (c) 2026 Richard Rodger, MIT License */
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.caseSpan = caseSpan;
|
|
5
|
+
exports.caseRange = caseRange;
|
|
6
|
+
exports.rangeArg = rangeArg;
|
|
7
|
+
// THE RANGE `upper` AND `lower` TAKE.
|
|
8
|
+
//
|
|
9
|
+
// upper(s) the whole string
|
|
10
|
+
// upper(s, start) from `start` to the end
|
|
11
|
+
// upper(s, start, len) `len` characters
|
|
12
|
+
//
|
|
13
|
+
// `start` IS A BOUNDARY, NOT A CHARACTER. Zero or positive, it is
|
|
14
|
+
// where the run BEGINS and the run reaches forward; negative, it counts
|
|
15
|
+
// from the end and is where the run STOPS -- the character it lands on
|
|
16
|
+
// is the first one NOT modified. One index, two directions, and no
|
|
17
|
+
// second argument to say which:
|
|
18
|
+
//
|
|
19
|
+
// upper("foo", 0, 1) "Foo" begins at 0, one character
|
|
20
|
+
// lower("FOOBAR", -3, -1) "fooBAR" stops before the last three
|
|
21
|
+
//
|
|
22
|
+
// `len` of -1 means THE LENGTH OF THE SOURCE, which is how "and the
|
|
23
|
+
// rest of it" is spelled in either direction, and is also the default:
|
|
24
|
+
//
|
|
25
|
+
// lower("FOO", 1, -1) "Foo" from 1 to the end
|
|
26
|
+
// lower("FOOBAR", -1) "foobaR" everything but the last
|
|
27
|
+
//
|
|
28
|
+
// The exclusive reading is why `-0` is not a spelling: it is `0`, and
|
|
29
|
+
// so begins a forward run. The whole string is `upper(s)`.
|
|
30
|
+
//
|
|
31
|
+
// BOTH ENDS CLAMP rather than refuse. A run reaching past either end
|
|
32
|
+
// modifies as much of the string as exists, and one that lands wholly
|
|
33
|
+
// outside it modifies nothing — an out-of-range index is not a
|
|
34
|
+
// different KIND of answer, it is the same answer over a shorter run.
|
|
35
|
+
//
|
|
36
|
+
// CODE POINTS, NOT UTF-16 UNITS, so an index means the same thing in
|
|
37
|
+
// both ports: one index is one Go rune. Twin: caseSpan/caseRange in
|
|
38
|
+
// go/func.go.
|
|
39
|
+
//
|
|
40
|
+
// THE CASE MAPPING IS THE WHOLE-STRING ONE, applied to the slice, so
|
|
41
|
+
// `upper(s)` and `upper(s, 0, -1)` are the same bytes. Two consequences
|
|
42
|
+
// follow from full Unicode case mapping and are properties of the
|
|
43
|
+
// mapping rather than of this range:
|
|
44
|
+
//
|
|
45
|
+
// - THE RESULT MAY BE LONGER than the source, because full mapping is
|
|
46
|
+
// not one-in-one-out: `upper("straße", 3, 3)` is "straSSE".
|
|
47
|
+
// - FINAL SIGMA IS DECIDED WITHIN THE SLICE, since a slice taken out
|
|
48
|
+
// of its word has no following letter to see. A medial sigma cased
|
|
49
|
+
// alone lowercases as a final one.
|
|
50
|
+
//
|
|
51
|
+
// Both are stated here rather than worked around: silently widening
|
|
52
|
+
// the slice to keep context would make the run something other than
|
|
53
|
+
// what the author asked for.
|
|
54
|
+
// The half-open code-point span [lo, hi) a (start, len) selects over a
|
|
55
|
+
// string of `n` code points.
|
|
56
|
+
function caseSpan(n, start, len) {
|
|
57
|
+
// -1 is the source's length, and so is any other negative: there is
|
|
58
|
+
// no meaningful run of "minus two" characters, and refusing one would
|
|
59
|
+
// be a second rule for no gain.
|
|
60
|
+
const span = len < 0 ? n : len;
|
|
61
|
+
if (0 <= start) {
|
|
62
|
+
const lo = Math.min(start, n);
|
|
63
|
+
return [lo, Math.min(lo + span, n)];
|
|
64
|
+
}
|
|
65
|
+
// A negative start is where the run STOPS: the character it lands on
|
|
66
|
+
// is the first one not modified, so the run reaches back from it. No
|
|
67
|
+
// upper clamp: start is negative here, so n+start is below n by
|
|
68
|
+
// construction.
|
|
69
|
+
const hi = Math.max(0, n + start);
|
|
70
|
+
return [Math.max(0, hi - span), hi];
|
|
71
|
+
}
|
|
72
|
+
// `text` with the selected run cased. Outside the run the source is
|
|
73
|
+
// returned verbatim, code point for code point.
|
|
74
|
+
function caseRange(text, start, len, up) {
|
|
75
|
+
const cps = Array.from(text);
|
|
76
|
+
const [lo, hi] = caseSpan(cps.length, start, len);
|
|
77
|
+
if (hi <= lo) {
|
|
78
|
+
return text;
|
|
79
|
+
}
|
|
80
|
+
const mid = cps.slice(lo, hi).join('');
|
|
81
|
+
return cps.slice(0, lo).join('') +
|
|
82
|
+
(up ? mid.toUpperCase() : mid.toLowerCase()) +
|
|
83
|
+
cps.slice(hi).join('');
|
|
84
|
+
}
|
|
85
|
+
// The integer a range argument carries, or undefined when it is not
|
|
86
|
+
// one. `undefined` for an absent argument is the caller's default, not
|
|
87
|
+
// a refusal — these are optional.
|
|
88
|
+
function rangeArg(v) {
|
|
89
|
+
if (null == v) {
|
|
90
|
+
return undefined;
|
|
91
|
+
}
|
|
92
|
+
const p = (true === v?.isScalar) ? v.peg : undefined;
|
|
93
|
+
if ('number' === typeof p && Number.isInteger(p)) {
|
|
94
|
+
return p;
|
|
95
|
+
}
|
|
96
|
+
// A biginteger index is an index: a position in a string is small by
|
|
97
|
+
// construction, or it is not an index at all.
|
|
98
|
+
if ('bigint' === typeof p) {
|
|
99
|
+
const n = Number(p);
|
|
100
|
+
if (Number.isSafeInteger(n)) {
|
|
101
|
+
return n;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
// ONE REFUSAL for every way an argument can fail to be an index: not
|
|
105
|
+
// a scalar at all (a preference reaches here, the signature gate
|
|
106
|
+
// having nothing to check), a scalar of another kind, or a biginteger
|
|
107
|
+
// too large to be a position in a string.
|
|
108
|
+
return NaN;
|
|
109
|
+
}
|
|
110
|
+
//# sourceMappingURL=caserange.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"caserange.js","sourceRoot":"","sources":["../../src/val/caserange.ts"],"names":[],"mappings":"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"}
|
package/dist/vet.d.ts
CHANGED
|
@@ -22,16 +22,27 @@ export type VetFinding = {
|
|
|
22
22
|
actual?: string;
|
|
23
23
|
note?: string;
|
|
24
24
|
};
|
|
25
|
+
export type VetCoverage = {
|
|
26
|
+
checked: number;
|
|
27
|
+
declared: number;
|
|
28
|
+
leaves: number;
|
|
29
|
+
unchecked: string[];
|
|
30
|
+
unused: string[];
|
|
31
|
+
vacuous: boolean;
|
|
32
|
+
};
|
|
25
33
|
export type VetReport = {
|
|
26
34
|
verdict: VetVerdict;
|
|
27
35
|
truncated: boolean;
|
|
28
36
|
findings: VetFinding[];
|
|
37
|
+
coverage?: VetCoverage;
|
|
29
38
|
};
|
|
30
39
|
export type VetOptions = {
|
|
31
40
|
at?: string;
|
|
32
41
|
closed?: boolean;
|
|
33
42
|
partial?: boolean;
|
|
34
43
|
maxErrors?: number;
|
|
44
|
+
coverage?: boolean;
|
|
45
|
+
coverageAt?: string;
|
|
35
46
|
schemaUrl?: string;
|
|
36
47
|
dataUrl?: string;
|
|
37
48
|
schemaPath?: string;
|
|
@@ -44,4 +55,5 @@ export declare function displayFile(url: string, label: string, path?: string):
|
|
|
44
55
|
export declare function failureFinding(ctx: any, url?: string, failed?: any): VetFinding;
|
|
45
56
|
export declare function anchorAt(root: any, at: string): Val | undefined;
|
|
46
57
|
export declare function throughResidue(v: any): any;
|
|
58
|
+
export declare function vetCoverage(anchor: any, dataVal: any, coverageAt?: string): VetCoverage;
|
|
47
59
|
export declare function vet(schemaSrc: string, dataSrc: string, opts?: VetOptions): VetReport;
|
package/dist/vet.js
CHANGED
|
@@ -6,6 +6,7 @@ exports.displayFile = displayFile;
|
|
|
6
6
|
exports.failureFinding = failureFinding;
|
|
7
7
|
exports.anchorAt = anchorAt;
|
|
8
8
|
exports.throughResidue = throughResidue;
|
|
9
|
+
exports.vetCoverage = vetCoverage;
|
|
9
10
|
exports.vet = vet;
|
|
10
11
|
const aontu_1 = require("./aontu");
|
|
11
12
|
const node_path_1 = require("node:path");
|
|
@@ -21,6 +22,7 @@ const subsume_1 = require("./subsume");
|
|
|
21
22
|
// (query imports anchorAt from here), and a benign one: both sides
|
|
22
23
|
// use the other only from inside a function body, never at load time.
|
|
23
24
|
const query_1 = require("./query");
|
|
25
|
+
const keyorder_1 = require("./keyorder");
|
|
24
26
|
// The default cap, exported because the CLI applies it to the WHOLE
|
|
25
27
|
// report across several data files and must not carry a second copy of
|
|
26
28
|
// the number (ts/src/cli.ts).
|
|
@@ -393,6 +395,189 @@ function throughResidue(v) {
|
|
|
393
395
|
// are unusable — which is why an unusable schema is a verdict (`error`)
|
|
394
396
|
// rather than an exception too: "the schema is broken" is a fact the
|
|
395
397
|
// agent loop needs to branch on, not an exceptional condition.
|
|
398
|
+
// THE COVERAGE ACCOUNTING (G11 phase 5). Structural, over the two
|
|
399
|
+
// trees vet already holds, and deliberately NOT provenance-based: the
|
|
400
|
+
// question is what the SCHEMA DECLARES about the data, which is a
|
|
401
|
+
// property of the two documents rather than of the meet that ran. A
|
|
402
|
+
// meet-based reading would also count a value the data supplied to
|
|
403
|
+
// itself as "covered", which is the opposite of the thing being asked.
|
|
404
|
+
//
|
|
405
|
+
// A map's template lives on `spread.cj` rather than in `peg`, so a
|
|
406
|
+
// declaration path spells it `&` -- the same character the language
|
|
407
|
+
// spells it with, and one no map key can collide with, since a bare
|
|
408
|
+
// `&` cannot be a key.
|
|
409
|
+
const COVER_TEMPLATE = '&';
|
|
410
|
+
// Is this value a bag with children to walk?
|
|
411
|
+
function coverKids(v) {
|
|
412
|
+
// NO KIND GUARD: the two tests below already reject anything that is
|
|
413
|
+
// not a bag, exactly as the Go twin's type switch does, so a guard
|
|
414
|
+
// above them is dead code (ADR-002).
|
|
415
|
+
const out = [];
|
|
416
|
+
if (true === v.isMap && null != v.peg) {
|
|
417
|
+
for (const k of Object.keys(v.peg).sort(keyorder_1.cmpCodePoint)) {
|
|
418
|
+
out.push({ key: k, val: v.peg[k] });
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
else if (true === v.isList && Array.isArray(v.peg)) {
|
|
422
|
+
v.peg.forEach((m, i) => out.push({ key: String(i), val: m }));
|
|
423
|
+
}
|
|
424
|
+
return out;
|
|
425
|
+
}
|
|
426
|
+
// The template a bag applies to every child, when it has one. A spread
|
|
427
|
+
// with no conjunct is not a declaration: `{"*":{...}}` carries the
|
|
428
|
+
// empty spread every map carries, and reading that as a template is
|
|
429
|
+
// precisely the confusion this phase exists to end.
|
|
430
|
+
function coverTemplate(v) {
|
|
431
|
+
const cj = v?.spread?.cj;
|
|
432
|
+
return null != cj && true === cj.isVal && true !== cj.isTop ? cj : undefined;
|
|
433
|
+
}
|
|
434
|
+
// Every declaration the schema makes, as a path, with the node at it.
|
|
435
|
+
// Named keys and templates alike, at every depth.
|
|
436
|
+
//
|
|
437
|
+
// NO IDENTITY GUARD, and that is a decision rather than an omission.
|
|
438
|
+
// `walkVals` (ts/src/walk.ts) carries one because it walks values the
|
|
439
|
+
// unification MINTED -- findings, conjunct operands, disjunct trials --
|
|
440
|
+
// where a node really is reached twice. These two walks descend a
|
|
441
|
+
// SETTLED bag through `peg` and `spread` alone, and such a tree is a
|
|
442
|
+
// tree: a reference resolves by cloning its target, and an alias, a
|
|
443
|
+
// repeated spread and a recursive residual were each probed and share
|
|
444
|
+
// nothing. The property is already relied on repository-wide, because
|
|
445
|
+
// `canon` walks the same edges with no guard and is computed on every
|
|
446
|
+
// one of these values. A guard here would be a branch nothing can
|
|
447
|
+
// take, which ADR-002 exists to keep out.
|
|
448
|
+
function coverDeclare(v, path, out) {
|
|
449
|
+
const tpl = coverTemplate(v);
|
|
450
|
+
if (null != tpl) {
|
|
451
|
+
const at = [...path, COVER_TEMPLATE];
|
|
452
|
+
out.set(pathText(at), tpl);
|
|
453
|
+
coverDeclare(tpl, at, out);
|
|
454
|
+
}
|
|
455
|
+
for (const { key, val } of coverKids(v)) {
|
|
456
|
+
const at = [...path, key];
|
|
457
|
+
out.set(pathText(at), val);
|
|
458
|
+
coverDeclare(val, at, out);
|
|
459
|
+
}
|
|
460
|
+
}
|
|
461
|
+
// Every path in the data, and whether it is a LEAF -- a node with no
|
|
462
|
+
// children, which is where a value lives.
|
|
463
|
+
function coverDataPaths(v, path, out) {
|
|
464
|
+
const kids = coverKids(v);
|
|
465
|
+
if (0 < path.length) {
|
|
466
|
+
out.push({ path: pathText(path), leaf: 0 === kids.length });
|
|
467
|
+
}
|
|
468
|
+
for (const { key, val } of kids) {
|
|
469
|
+
coverDataPaths(val, [...path, key], out);
|
|
470
|
+
}
|
|
471
|
+
}
|
|
472
|
+
// Walk one data path down the schema, naming the declaration that
|
|
473
|
+
// constrains it -- the exact key where the schema has one, else the
|
|
474
|
+
// covering template. Undefined when the schema declares nothing there.
|
|
475
|
+
function coverMatch(anchor, segs) {
|
|
476
|
+
// NO NIL GUARD ON `at`, and none on an empty `segs`: `at` starts as
|
|
477
|
+
// the anchor and is only ever reassigned to a non-nil child or
|
|
478
|
+
// template, and coverDataPaths never emits the root path, so a call
|
|
479
|
+
// with no segments cannot happen. A guard that cannot fire is dead
|
|
480
|
+
// code, and dead code is what ADR-002 exists to keep out.
|
|
481
|
+
let at = anchor;
|
|
482
|
+
let decl = '';
|
|
483
|
+
for (const seg of segs) {
|
|
484
|
+
const named = true === at.isMap && null != at.peg ? at.peg[seg]
|
|
485
|
+
: true === at.isList && Array.isArray(at.peg) ? at.peg[Number(seg)]
|
|
486
|
+
: undefined;
|
|
487
|
+
if (null != named && true === named.isVal) {
|
|
488
|
+
decl = '' === decl ? seg : decl + '.' + seg;
|
|
489
|
+
at = named;
|
|
490
|
+
continue;
|
|
491
|
+
}
|
|
492
|
+
const tpl = coverTemplate(at);
|
|
493
|
+
if (null == tpl) {
|
|
494
|
+
return undefined;
|
|
495
|
+
}
|
|
496
|
+
decl = '' === decl ? COVER_TEMPLATE : decl + '.' + COVER_TEMPLATE;
|
|
497
|
+
at = tpl;
|
|
498
|
+
}
|
|
499
|
+
return '$.' + decl;
|
|
500
|
+
}
|
|
501
|
+
// The SHALLOWEST members of a set of paths: one whose parent is also in
|
|
502
|
+
// the set is covered by naming the parent, and naming both is noise.
|
|
503
|
+
// `render --coverage`'s `dead` is built on the same rule.
|
|
504
|
+
function coverShallowest(paths) {
|
|
505
|
+
const held = new Set(paths);
|
|
506
|
+
return paths.filter((p) => {
|
|
507
|
+
for (let at = p; -1 !== at.lastIndexOf('.');) {
|
|
508
|
+
at = at.slice(0, at.lastIndexOf('.'));
|
|
509
|
+
if (held.has(at)) {
|
|
510
|
+
return false;
|
|
511
|
+
}
|
|
512
|
+
}
|
|
513
|
+
return true;
|
|
514
|
+
}).sort(keyorder_1.cmpCodePoint);
|
|
515
|
+
}
|
|
516
|
+
// The accounting itself: what the schema declared, what the data holds,
|
|
517
|
+
// and which of each the other met.
|
|
518
|
+
function vetCoverage(anchor, dataVal, coverageAt) {
|
|
519
|
+
const declarations = new Map();
|
|
520
|
+
coverDeclare(anchor, [], declarations);
|
|
521
|
+
const dataPaths = [];
|
|
522
|
+
coverDataPaths(dataVal, [], dataPaths);
|
|
523
|
+
// `--coverage-at` narrows the DATA side, which is the side a caller
|
|
524
|
+
// gating one subtree is asking about. The schema side follows from
|
|
525
|
+
// it: a declaration is unused only among the data actually measured.
|
|
526
|
+
const under = null == coverageAt ? undefined
|
|
527
|
+
: coverageAt.replace(/^\$\.?/, '');
|
|
528
|
+
const inScope = (p) => {
|
|
529
|
+
if (null == under || '' === under) {
|
|
530
|
+
return true;
|
|
531
|
+
}
|
|
532
|
+
const want = '$.' + under;
|
|
533
|
+
return p === want || p.startsWith(want + '.');
|
|
534
|
+
};
|
|
535
|
+
const used = new Set();
|
|
536
|
+
const unchecked = [];
|
|
537
|
+
let checked = 0;
|
|
538
|
+
let leaves = 0;
|
|
539
|
+
for (const { path, leaf } of dataPaths) {
|
|
540
|
+
if (!inScope(path)) {
|
|
541
|
+
continue;
|
|
542
|
+
}
|
|
543
|
+
const segs = path.replace(/^\$\.?/, '').split('.').filter((x) => '' !== x);
|
|
544
|
+
const decl = coverMatch(anchor, segs);
|
|
545
|
+
if (leaf) {
|
|
546
|
+
leaves++;
|
|
547
|
+
}
|
|
548
|
+
if (null == decl) {
|
|
549
|
+
unchecked.push(path);
|
|
550
|
+
continue;
|
|
551
|
+
}
|
|
552
|
+
used.add(decl);
|
|
553
|
+
if (leaf) {
|
|
554
|
+
checked++;
|
|
555
|
+
}
|
|
556
|
+
}
|
|
557
|
+
// A declaration is met when it constrained a data path, or when a
|
|
558
|
+
// declaration BENEATH it was: `$.a` is used by `$.a.b` meeting
|
|
559
|
+
// `$.a.b`, and reporting the parent as unused would be false.
|
|
560
|
+
const unused = [];
|
|
561
|
+
for (const decl of declarations.keys()) {
|
|
562
|
+
const covered = used.has(decl) ||
|
|
563
|
+
[...used].some((u) => u.startsWith(decl + '.'));
|
|
564
|
+
if (!covered) {
|
|
565
|
+
unused.push(decl);
|
|
566
|
+
}
|
|
567
|
+
}
|
|
568
|
+
return {
|
|
569
|
+
checked,
|
|
570
|
+
declared: declarations.size,
|
|
571
|
+
leaves,
|
|
572
|
+
unchecked: coverShallowest(unchecked),
|
|
573
|
+
unused: coverShallowest(unused),
|
|
574
|
+
// VACUOUS IS ABOUT LEAVES, and a document with none cannot be
|
|
575
|
+
// vacuously checked: `{}` against any schema examined nothing
|
|
576
|
+
// because there was nothing to examine, which is not the failure
|
|
577
|
+
// this reports.
|
|
578
|
+
vacuous: 0 === checked && 0 < leaves,
|
|
579
|
+
};
|
|
580
|
+
}
|
|
396
581
|
function vet(schemaSrc, dataSrc, opts) {
|
|
397
582
|
const options = opts ?? {};
|
|
398
583
|
const schemaUrl = options.schemaUrl ?? DEFAULT_SCHEMA_URL;
|
|
@@ -519,6 +704,26 @@ function vet(schemaSrc, dataSrc, opts) {
|
|
|
519
704
|
schemaUrl, schemaPath: options.schemaPath,
|
|
520
705
|
dataUrl, dataPath: options.dataPath,
|
|
521
706
|
};
|
|
707
|
+
// COVERAGE IS MEASURED BEFORE THE MEET (G11 phase 5), because the
|
|
708
|
+
// meet CONSUMES its operands: parsed trees are single-use, and under
|
|
709
|
+
// `--at` the anchor itself is the left operand. Measuring after would
|
|
710
|
+
// read a tree the fixpoint had already rewritten.
|
|
711
|
+
//
|
|
712
|
+
// The data side is its own evaluation rather than the parse above,
|
|
713
|
+
// so a document that reaches its values through `@"..."` or a
|
|
714
|
+
// reference is measured on the paths it actually has. It is one more
|
|
715
|
+
// evaluation of one document, and it happens only when asked for.
|
|
716
|
+
let coverage;
|
|
717
|
+
if (true === options.coverage) {
|
|
718
|
+
const coverCtx = aontu.ctx({ collect: true });
|
|
719
|
+
const settledData = aontu.unify(dataSrc, dataOpts, coverCtx);
|
|
720
|
+
// A data document that does not stand alone is already reported by
|
|
721
|
+
// the meet below; here it falls back to what was parsed, which is
|
|
722
|
+
// the same paths minus whatever an include would have added.
|
|
723
|
+
const measured = 0 === coverCtx.err.length && true !== settledData?.isNil
|
|
724
|
+
? settledData : dataVal;
|
|
725
|
+
coverage = vetCoverage(anchor, measured, options.coverageAt);
|
|
726
|
+
}
|
|
522
727
|
// Default-validity lint (G3 phase 5, re-examined under ADR-004): for
|
|
523
728
|
// every disjunction in the SCHEMA carrying a preference, warn when
|
|
524
729
|
// the effective default is not an instance of any REMAINING
|
|
@@ -802,6 +1007,9 @@ function vet(schemaSrc, dataSrc, opts) {
|
|
|
802
1007
|
else if (0 < unmet && true !== options.partial) {
|
|
803
1008
|
verdict = 'incomplete';
|
|
804
1009
|
}
|
|
805
|
-
return {
|
|
1010
|
+
return {
|
|
1011
|
+
verdict, truncated, findings: kept,
|
|
1012
|
+
...(null == coverage ? {} : { coverage }),
|
|
1013
|
+
};
|
|
806
1014
|
}
|
|
807
1015
|
//# sourceMappingURL=vet.js.map
|
package/dist/vet.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vet.js","sourceRoot":"","sources":["../src/vet.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"vet.js","sourceRoot":"","sources":["../src/vet.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;;;;;;;AA4BpD,mCAA+B;AAC/B,yCAGkB;AAElB,+BAAwC;AACxC,mDAA+C;AAC/C,iCAA8C;AAC9C,yCAA4C;AAC5C,uCAEkB;AAClB,uCAAyD;AACzD,oEAAoE;AACpE,uEAAuE;AACvE,gEAAgE;AAChE,mEAAmE;AACnE,sEAAsE;AACtE,mCAAuC;AACvC,yCAAyC;AAwKzC,oEAAoE;AACpE,uEAAuE;AACvE,8BAA8B;AACjB,QAAA,cAAc,GAAG,EAAE,CAAA;AAEhC,MAAM,kBAAkB,GAAG,QAAQ,CAAA;AACnC,MAAM,gBAAgB,GAAG,MAAM,CAAA;AAG/B,sEAAsE;AACtE,wEAAwE;AACxE,sEAAsE;AACtE,oEAAoE;AACpE,8DAA8D;AAC9D,wEAAwE;AACxE,uBAAuB;AACvB,iEAAiE;AACjE,uEAAuE;AACvE,wEAAwE;AACxE,sEAAsE;AACtE,kEAAkE;AAClE,6DAA6D;AAC7D,sEAAsE;AACtE,sEAAsE;AACtE,kBAAkB;AAClB,EAAE;AACF,qEAAqE;AACrE,oEAAoE;AACpE,qEAAqE;AACrE,qEAAqE;AACrE,wDAAwD;AACxD,SAAS,QAAQ,CAAC,CAAM,EAAE,GAAW,EAAE,IAAkB;IACvD,MAAM,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,EAAU,CAAA;IACtC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACb,IAAA,eAAQ,EAAC,CAAC,EAAE,CAAC,CAAM,EAAE,EAAE;QACrB,mEAAmE;QACnE,kEAAkE;QAClE,kEAAkE;QAClE,mEAAmE;QACnE,oCAAoC;QACpC,IAAI,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YAC5C,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QAClB,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACpB,OAAO,IAAI,CAAA;IACb,CAAC,EAAE,IAAI,GAAG,EAAE,CAAC,CAAA;IACb,OAAO,IAAI,CAAA;AACb,CAAC;AAkBD,mEAAmE;AACnE,oEAAoE;AACpE,qEAAqE;AACrE,sEAAsE;AACtE,qEAAqE;AACrE,qEAAqE;AACrE,uCAAuC;AACvC,EAAE;AACF,mEAAmE;AACnE,qEAAqE;AACrE,kEAAkE;AAClE,kEAAkE;AAClE,qEAAqE;AACrE,yDAAyD;AACzD,qBACE,GAAW,EAAE,KAAa,EAAE,IAAa;IACzC,IAAI,GAAG,KAAK,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE,KAAK,GAAG,IAAI,CAAC,IAAA,sBAAU,EAAC,GAAG,CAAC,EAAE,CAAC;QACpE,OAAO,GAAG,CAAA;IACZ,CAAC;IACD,MAAM,GAAG,GAAG,IAAA,oBAAY,EAAC,IAAA,mBAAO,EAAC,IAAA,mBAAW,EAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;IACzD,MAAM,GAAG,GAAG,IAAA,mBAAO,EAAC,KAAK,CAAC,CAAA;IAC1B,OAAO,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAA,gBAAQ,EAAC,GAAG,EAAE,GAAG,CAAC,CAAA;AAC/C,CAAC;AAGD,qEAAqE;AACrE,qEAAqE;AACrE,iEAAiE;AACjE,qEAAqE;AACrE,iEAAiE;AACjE,4DAA4D;AAC5D,SAAS,SAAS,CAAC,IAAY,EAAE,IAAa,EAAE,IAAU;IACxD,OAAO,MAAM,KAAK,IAAI;QACpB,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC;QACxD,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;AAChE,CAAC;AAGD,sEAAsE;AACtE,sEAAsE;AACtE,uEAAuE;AACvE,sEAAsE;AACtE,mEAAmE;AACnE,uCAAuC;AACvC,SAAS,MAAM,CAAC,IAAY,EAAE,IAAU;IACtC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAA;AAChD,CAAC;AAGD,uEAAuE;AACvE,iEAAiE;AACjE,sEAAsE;AACtE,+CAA+C;AAC/C,SAAS,QAAQ,CAAC,IAAe;IAC/B,OAAO,GAAG,GAAG,CAAC,IAAI,IAAI,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;AAC5E,CAAC;AAGD,wEAAwE;AACxE,qEAAqE;AACrE,iEAAiE;AACjE,8BAA8B;AAC9B,SAAS,MAAM,CAAC,CAAM,EAAE,IAAU;IAChC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;QACd,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,sEAAsE;IACtE,sEAAsE;IACtE,sEAAsE;IACtE,kEAAkE;IAClE,qEAAqE;IACrE,yCAAyC;IACzC,EAAE;IACF,mEAAmE;IACnE,oEAAoE;IACpE,qEAAqE;IACrE,qEAAqE;IACrE,mCAAmC;IACnC,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAA;IACvB,oEAAoE;IACpE,iEAAiE;IACjE,qBAAqB;IACrB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IAC/B,OAAO;QACL,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;QACjC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG;QACf,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG;QACf,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG;QACf,IAAI;QACJ,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG;QACf,KAAK,EAAE,CAAC,CAAC,KAAK;KACf,CAAA;AACH,CAAC;AAGD,uEAAuE;AACvE,qEAAqE;AACrE,gEAAgE;AAChE,SAAS,OAAO,CAAC,GAAQ,EAAE,IAAU;IACnC,mEAAmE;IACnE,qEAAqE;IACrE,mEAAmE;IACnE,oEAAoE;IACpE,oEAAoE;IACpE,mEAAmE;IACnE,sCAAsC;IACtC,MAAM,KAAK,GAAc,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,EAAE,IAAI,CAAY,CAAC,CAAA;IAEtE,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;IAC7C,IAAI,IAAI,IAAI,SAAS,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACvB,CAAC;IAED,sEAAsE;IACtE,iEAAiE;IACjE,kEAAkE;IAClE,OAAO;QACL,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,CAAC;QACzC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,KAAK,CAAC,CAAC,IAAI,CAAC;KAC5C,CAAA;AACH,CAAC;AAGD,sEAAsE;AACtE,iEAAiE;AACjE,sEAAsE;AACtE,mEAAmE;AACnE,uEAAuE;AACvE,kEAAkE;AAClE,SAAS,WAAW,CAAC,GAAQ,EAAE,GAAQ;IACrC,IAAI,IAAI,IAAI,GAAG,CAAC,GAAG,IAAI,EAAE,KAAK,GAAG,CAAC,GAAG,EAAE,CAAC;QACtC,IAAA,aAAO,EAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IACnB,CAAC;AACH,CAAC;AAGD,qEAAqE;AACrE,qEAAqE;AACrE,iEAAiE;AACjE,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAA;AAEpD,SAAS,SAAS,CAAC,CAAS;IAC1B,OAAO,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;AAC/B,CAAC;AAGD,SAAS,SAAS,CAAC,GAAQ,EAAE,IAAU;IACrC,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,EAAE,CAAA;IACjC,MAAM,OAAO,GAAe;QAC1B,IAAI,EAAE,GAAG,CAAC,GAAG;QACb,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;QACxB,iEAAiE;QACjE,mEAAmE;QACnE,kEAAkE;QAClE,kEAAkE;QAClE,mEAAmE;QACnE,kEAAkE;QAClE,oCAAoC;QACpC,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1C,KAAK,EAAE,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC;KAC1B,CAAA;IAED,qEAAqE;IACrE,gEAAgE;IAChE,kEAAkE;IAClE,iEAAiE;IACjE,uBAAuB;IACvB,MAAM,IAAI,GAAG,IAAA,aAAO,EAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;IAC1C,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;QAChC,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IACpD,CAAC;IAED,oEAAoE;IACpE,sEAAsE;IACtE,mEAAmE;IACnE,6DAA6D;IAC7D,yBAAyB;IACzB,IAAI,QAAQ,KAAK,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;QACzC,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAA;IACrC,CAAC;IACD,IAAI,QAAQ,KAAK,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC;QACvC,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;IACjC,CAAC;IACD,IAAI,QAAQ,KAAK,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QACxC,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,OAAO,CAAA;IAChC,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AAGD,mEAAmE;AACnE,wEAAwE;AACxE,6DAA6D;AAC7D,sEAAsE;AACtE,qEAAqE;AACrE,qBAAqB;AACrB,EAAE;AACF,uEAAuE;AACvE,wEAAwE;AACxE,uEAAuE;AACvE,oEAAoE;AACpE,oEAAoE;AACpE,+CAA+C;AAC/C,MAAM,SAAS,GAAG,CAAC,CAAA;AAGnB,SAAS,GAAG,CAAC,CAAS;IACpB,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,EAAE,GAAG,CAAC,CAAA;AAC3C,CAAC;AAGD,qEAAqE;AACrE,wEAAwE;AACxE,wEAAwE;AACxE,mEAAmE;AACnE,sEAAsE;AACtE,kEAAkE;AAClE,SAAS,QAAQ,CAAC,CAAa,EAAE,KAAa;IAC5C,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACvB,OAAO;QACL,IAAI,CAAC,IAAI;QACT,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC;QACb,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,IAAI;QACN,GAAG,CAAC,KAAK,CAAC;KACX,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;AAClB,CAAC;AAGD,+DAA+D;AAC/D,mEAAmE;AACnE,uEAAuE;AACvE,oEAAoE;AACpE,sEAAsE;AACtE,mEAAmE;AACnE,kEAAkE;AAClE,EAAE;AACF,uEAAuE;AACvE,qEAAqE;AACrE,gDAAgD;AAChD,EAAE;AACF,8CAA8C;AAC9C,wBACE,GAAQ,EAAE,GAAY,EAAE,MAAY;IACpC,sEAAsE;IACtE,qEAAqE;IACrE,kEAAkE;IAClE,qEAAqE;IACrE,sEAAsE;IACtE,kEAAkE;IAClE,qEAAqE;IACrE,qEAAqE;IACrE,+BAA+B;IAC/B,EAAE;IACF,oEAAoE;IACpE,qEAAqE;IACrE,6DAA6D;IAC7D,MAAM,GAAG,GAAQ,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,MAAM,CAAA;IACrC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IAErB,sEAAsE;IACtE,qEAAqE;IACrE,mEAAmE;IACnE,sEAAsE;IACtE,sEAAsE;IACtE,qEAAqE;IACrE,6CAA6C;IAC7C,MAAM,EAAE,GAAG,GAAG,IAAI,EAAE,CAAA;IACpB,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAC1B,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QAClD,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YAChC,SAAQ;QACV,CAAC;QACD,IAAI,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YAC5C,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAA;QACjB,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACtB,CAAC;IAED,OAAO,SAAS,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;AACvC,CAAC;AAGD,oEAAoE;AACpE,qEAAqE;AACrE,YAAY;AACZ,kBAAyB,IAAS,EAAE,EAAU;IAC5C,MAAM,OAAO,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IACrD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;IAExD,IAAI,IAAI,GAAQ,IAAI,CAAA;IACpB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,gEAAgE;QAChE,iEAAiE;QACjE,mEAAmE;QACnE,gEAAgE;QAChE,6DAA6D;QAC7D,eAAe;QACf,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,CAAA;QAE3B,oEAAoE;QACpE,gEAAgE;QAChE,gEAAgE;QAChE,4CAA4C;QAC5C,EAAE;QACF,mEAAmE;QACnE,6DAA6D;QAC7D,8DAA8D;QAC9D,kEAAkE;QAClE,kEAAkE;QAClE,mEAAmE;QACnE,gEAAgE;QAChE,0DAA0D;QAC1D,+DAA+D;QAC/D,IAAI,IAAI,KAAK,IAAI,EAAE,KAAK,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAA;YACpB,IAAI,IAAI,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC;gBACpE,OAAO,SAAS,CAAA;YAClB,CAAC;YACD,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,CAAA;QAClB,CAAC;aACI,IAAI,IAAI,KAAK,IAAI,EAAE,MAAM,EAAE,CAAC;YAC/B,8DAA8D;YAC9D,4DAA4D;YAC5D,kDAAkD;YAClD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAA;YACpB,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;YAC1B,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC;gBACjC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC;gBAC7C,OAAO,SAAS,CAAA;YAClB,CAAC;YACD,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAA;QACnB,CAAC;aACI,CAAC;YACJ,OAAO,SAAS,CAAA;QAClB,CAAC;IACH,CAAC;IAED,oEAAoE;IACpE,oEAAoE;IACpE,kEAAkE;IAClE,sEAAsE;IACtE,sEAAsE;IACtE,iEAAiE;IACjE,oDAAoD;IACpD,OAAO,IAAI,CAAA;AACb,CAAC;AAGD,sEAAsE;AACtE,uEAAuE;AACvE,oEAAoE;AACpE,mEAAmE;AACnE,OAAO;AACP,wBAA+B,CAAM;IACnC,OAAO,IAAA,sBAAa,EAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,CAAA;AACnC,CAAC;AAGD,0CAA0C;AAC1C,EAAE;AACF,sEAAsE;AACtE,wEAAwE;AACxE,wEAAwE;AACxE,qEAAqE;AACrE,+DAA+D;AAC/D,kEAAkE;AAClE,sEAAsE;AACtE,kEAAkE;AAClE,oEAAoE;AACpE,mEAAmE;AACnE,uEAAuE;AACvE,EAAE;AACF,mEAAmE;AACnE,oEAAoE;AACpE,oEAAoE;AACpE,uBAAuB;AACvB,MAAM,cAAc,GAAG,GAAG,CAAA;AAG1B,6CAA6C;AAC7C,SAAS,SAAS,CAAC,CAAM;IACvB,qEAAqE;IACrE,mEAAmE;IACnE,qCAAqC;IACrC,MAAM,GAAG,GAAgC,EAAE,CAAA;IAC3C,IAAI,IAAI,KAAK,CAAC,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC;QACtC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,uBAAY,CAAC,EAAE,CAAC;YACtD,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QACrC,CAAC;IACH,CAAC;SACI,IAAI,IAAI,KAAK,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QACnD,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,CAAS,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAC5E,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAGD,uEAAuE;AACvE,mEAAmE;AACnE,oEAAoE;AACpE,oDAAoD;AACpD,SAAS,aAAa,CAAC,CAAM;IAC3B,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,CAAA;IACxB,OAAO,IAAI,IAAI,EAAE,IAAI,IAAI,KAAK,EAAE,CAAC,KAAK,IAAI,IAAI,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;AAC9E,CAAC;AAGD,sEAAsE;AACtE,kDAAkD;AAClD,EAAE;AACF,qEAAqE;AACrE,sEAAsE;AACtE,wEAAwE;AACxE,kEAAkE;AAClE,qEAAqE;AACrE,oEAAoE;AACpE,sEAAsE;AACtE,sEAAsE;AACtE,sEAAsE;AACtE,kEAAkE;AAClE,0CAA0C;AAC1C,SAAS,YAAY,CACnB,CAAM,EAAE,IAAc,EAAE,GAAqB;IAC7C,MAAM,GAAG,GAAG,aAAa,CAAC,CAAC,CAAC,CAAA;IAC5B,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;QAChB,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,cAAc,CAAC,CAAA;QACpC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAA;QAC1B,YAAY,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,CAAA;IAC5B,CAAC;IACD,KAAK,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;QACxC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,CAAC,CAAA;QACzB,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAA;QAC1B,YAAY,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,CAAA;IAC5B,CAAC;AACH,CAAC;AAGD,qEAAqE;AACrE,0CAA0C;AAC1C,SAAS,cAAc,CACrB,CAAM,EAAE,IAAc,EACtB,GAAsC;IACtC,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAA;IACzB,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;IAC7D,CAAC;IACD,KAAK,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,IAAI,EAAE,CAAC;QAChC,cAAc,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAA;IAC1C,CAAC;AACH,CAAC;AAGD,kEAAkE;AAClE,oEAAoE;AACpE,uEAAuE;AACvE,SAAS,UAAU,CACjB,MAAW,EAAE,IAAc;IAC3B,oEAAoE;IACpE,+DAA+D;IAC/D,oEAAoE;IACpE,mEAAmE;IACnE,0DAA0D;IAC1D,IAAI,EAAE,GAAQ,MAAM,CAAA;IACpB,IAAI,IAAI,GAAG,EAAE,CAAA;IACb,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,IAAI,KAAK,EAAE,CAAC,KAAK,IAAI,IAAI,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC;YAC7D,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACjE,CAAC,CAAC,SAAS,CAAA;QACf,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,KAAK,KAAK,CAAC,KAAK,EAAE,CAAC;YAC1C,IAAI,GAAG,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,GAAG,GAAG,CAAA;YAC3C,EAAE,GAAG,KAAK,CAAA;YACV,SAAQ;QACV,CAAC;QACD,MAAM,GAAG,GAAG,aAAa,CAAC,EAAE,CAAC,CAAA;QAC7B,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;YAChB,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,IAAI,GAAG,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,GAAG,cAAc,CAAA;QACjE,EAAE,GAAG,GAAG,CAAA;IACV,CAAC;IACD,OAAO,IAAI,GAAG,IAAI,CAAA;AACpB,CAAC;AAGD,wEAAwE;AACxE,qEAAqE;AACrE,0DAA0D;AAC1D,SAAS,eAAe,CAAC,KAAe;IACtC,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAA;IAC3B,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QACxB,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC;YAC7C,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAA;YACrC,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBACjB,OAAO,KAAK,CAAA;YACd,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,CAAC,IAAI,CAAC,uBAAY,CAAC,CAAA;AACvB,CAAC;AAGD,wEAAwE;AACxE,mCAAmC;AACnC,qBACE,MAAW,EAAE,OAAY,EAAE,UAAmB;IAC9C,MAAM,YAAY,GAAG,IAAI,GAAG,EAAe,CAAA;IAC3C,YAAY,CAAC,MAAM,EAAE,EAAE,EAAE,YAAY,CAAC,CAAA;IAEtC,MAAM,SAAS,GAAsC,EAAE,CAAA;IACvD,cAAc,CAAC,OAAO,EAAE,EAAE,EAAE,SAAS,CAAC,CAAA;IAEtC,oEAAoE;IACpE,mEAAmE;IACnE,qEAAqE;IACrE,MAAM,KAAK,GAAG,IAAI,IAAI,UAAU,CAAC,CAAC,CAAC,SAAS;QAC1C,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;IACpC,MAAM,OAAO,GAAG,CAAC,CAAS,EAAW,EAAE;QACrC,IAAI,IAAI,IAAI,KAAK,IAAI,EAAE,KAAK,KAAK,EAAE,CAAC;YAClC,OAAO,IAAI,CAAA;QACb,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,GAAG,KAAK,CAAA;QACzB,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,GAAG,GAAG,CAAC,CAAA;IAC/C,CAAC,CAAA;IAED,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,MAAM,SAAS,GAAa,EAAE,CAAA;IAC9B,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,KAAK,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,SAAS,EAAE,CAAC;QACvC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACnB,SAAQ;QACV,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;QAC1E,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QACrC,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,EAAE,CAAA;QACV,CAAC;QACD,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;YACjB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACpB,SAAQ;QACV,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACd,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,EAAE,CAAA;QACX,CAAC;IACH,CAAC;IAED,kEAAkE;IAClE,+DAA+D;IAC/D,8DAA8D;IAC9D,MAAM,MAAM,GAAa,EAAE,CAAA;IAC3B,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;QACvC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;YAC5B,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAA;QACjD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACnB,CAAC;IACH,CAAC;IAED,OAAO;QACL,OAAO;QACP,QAAQ,EAAE,YAAY,CAAC,IAAI;QAC3B,MAAM;QACN,SAAS,EAAE,eAAe,CAAC,SAAS,CAAC;QACrC,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC;QAC/B,8DAA8D;QAC9D,8DAA8D;QAC9D,iEAAiE;QACjE,gBAAgB;QAChB,OAAO,EAAE,CAAC,KAAK,OAAO,IAAI,CAAC,GAAG,MAAM;KACrC,CAAA;AACH,CAAC;AAGD,aACE,SAAiB,EAAE,OAAe,EAAE,IAAiB;IACrD,MAAM,OAAO,GAAG,IAAI,IAAI,EAAE,CAAA;IAC1B,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,kBAAkB,CAAA;IACzD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,gBAAgB,CAAA;IACnD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,QAAA,cAAc,CAAA;IAErD,sEAAsE;IACtE,+DAA+D;IAC/D,kEAAkE;IAClE,MAAM,KAAK,GAAG,IAAI,aAAK,CAAC,IAAA,qBAAW,EAAC,OAAO,CAAC,CAAC,CAAA;IAC7C,MAAM,UAAU,GAAG,IAAI,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC;QAC7C,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,UAAU,EAAE,CAAA;IAC1C,MAAM,QAAQ,GAAG,IAAI,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;QACzC,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAA;IAExC,oEAAoE;IACpE,6BAA6B;IAC7B,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;IAC9C,MAAM,SAAS,GAAQ,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,CAAA;IACpE,IAAI,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,IAAI,IAAI,KAAK,SAAS,EAAE,KAAK,EAAE,CAAC;QAC1D,mEAAmE;QACnE,8DAA8D;QAC9D,mEAAmE;QACnE,mEAAmE;QACnE,gEAAgE;QAChE,gEAAgE;QAChE,wDAAwD;QACxD,EAAE;QACF,8DAA8D;QAC9D,mEAAmE;QACnE,gEAAgE;QAChE,EAAE;QACF,gEAAgE;QAChE,8DAA8D;QAC9D,mEAAmE;QACnE,mEAAmE;QACnE,+DAA+D;QAC/D,gEAAgE;QAChE,kDAAkD;QAClD,MAAM,OAAO,GACX,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACzD,yDAAyD;QACzD,mEAAmE;QACnE,iEAAiE;QACjE,+DAA+D;QAC/D,gEAAgE;QAChE,8DAA8D;QAC9D,gDAAgD;QAChD,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;QAC9B,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;QAC5B,WAAW,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;QAC/B,OAAO;YACL,OAAO,EAAE,OAAO;YAChB,SAAS,EAAE,KAAK;YAChB,gEAAgE;YAChE,uDAAuD;YACvD,QAAQ,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,EAAU,EAAE,CAAC,CAAC;SAC5D,CAAA;IACH,CAAC;IAED,2DAA2D;IAC3D,IAAI,MAAM,GAAQ,SAAS,CAAA;IAC3B,IAAI,IAAI,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;QACvB,MAAM,GAAG,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;QACxC,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;YACnB,+DAA+D;YAC/D,4DAA4D;YAC5D,8DAA8D;YAC9D,+DAA+D;YAC/D,8BAA8B;YAC9B,OAAO;gBACL,OAAO,EAAE,OAAO;gBAChB,SAAS,EAAE,KAAK;gBAChB,QAAQ,EAAE,CAAC,IAAA,qBAAa,EAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;aACjD,CAAA;QACH,CAAC;IACH,CAAC;IAED,sEAAsE;IACtE,iEAAiE;IACjE,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;IAC5C,MAAM,OAAO,GAAQ,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;IAC5D,IAAI,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,IAAI,IAAI,OAAO,EAAE,CAAC;QAC9C,mEAAmE;QACnE,iEAAiE;QACjE,oEAAoE;QACpE,mEAAmE;QACnE,wBAAwB;QACxB,EAAE;QACF,mEAAmE;QACnE,mEAAmE;QACnE,mEAAmE;QACnE,+DAA+D;QAC/D,kEAAkE;QAClE,sCAAsC;QACtC,EAAE;QACF,oEAAoE;QACpE,oEAAoE;QACpE,2BAA2B;QAC3B,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;QAC9B,IAAI,IAAI,IAAI,OAAO,EAAE,CAAC;YACpB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAA;QAC7D,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,GAAG,GAAG,OAAO,CAAA;QAC1B,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAC7B,OAAO;YACL,OAAO,EAAE,SAAS;YAClB,SAAS,EAAE,KAAK;YAChB,QAAQ,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;SAC7D,CAAA;IACH,CAAC;IACD,8DAA8D;IAC9D,mEAAmE;IACnE,oEAAoE;IACpE,+DAA+D;IAC/D,6DAA6D;IAC7D,mEAAmE;IACnE,iEAAiE;IACjE,kEAAkE;IAClE,+DAA+D;IAC/D,gEAAgE;IAChE,oEAAoE;IACpE,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;IAC9B,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAC3C,kEAAkE;IAClE,qEAAqE;IACrE,MAAM,IAAI,GAAS;QACjB,IAAI,EAAE,QAAQ;QACd,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU;QACzC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ;KACpC,CAAA;IAED,kEAAkE;IAClE,qEAAqE;IACrE,sEAAsE;IACtE,kDAAkD;IAClD,EAAE;IACF,mEAAmE;IACnE,8DAA8D;IAC9D,qEAAqE;IACrE,kEAAkE;IAClE,IAAI,QAAiC,CAAA;IACrC,IAAI,IAAI,KAAK,OAAO,CAAC,QAAQ,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;QAC7C,MAAM,WAAW,GAAQ,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;QACjE,mEAAmE;QACnE,kEAAkE;QAClE,6DAA6D;QAC7D,MAAM,QAAQ,GAAG,CAAC,KAAK,QAAQ,CAAC,GAAG,CAAC,MAAM,IAAI,IAAI,KAAK,WAAW,EAAE,KAAK;YACvE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAA;QACzB,QAAQ,GAAG,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,CAAA;IAC9D,CAAC;IAED,qEAAqE;IACrE,mEAAmE;IACnE,4DAA4D;IAC5D,gEAAgE;IAChE,YAAY;IACZ,EAAE;IACF,oEAAoE;IACpE,mEAAmE;IACnE,oEAAoE;IACpE,oEAAoE;IACpE,oEAAoE;IACpE,+DAA+D;IAC/D,qEAAqE;IACrE,sEAAsE;IACtE,oEAAoE;IACpE,8CAA8C;IAC9C,iEAAiE;IACjE,wDAAwD;IACxD,qEAAqE;IACrE,oEAAoE;IACpE,mEAAmE;IACnE,mEAAmE;IACnE,oEAAoE;IACpE,qEAAqE;IACrE,0BAA0B;IAC1B,MAAM,YAAY,GAAiB,EAAE,CAAA;IACrC,IAAA,qBAAW,EAAC,MAAM,EAAE,CAAC,CAAM,EAAE,IAAc,EAAQ,EAAE;QACnD,IAAI,IAAI,KAAK,CAAC,CAAC,UAAU,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;YAClD,MAAM,CAAC,GAAG,IAAA,0BAAgB,EAAC,CAAC,CAAC,CAAA;YAC7B,IAAI,IAAI,IAAI,CAAC,IAAI,eAAe,KAAK,CAAC,EAAE,CAAC;gBACvC,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,EAAE,MAAM,CAAC,CAAA;gBACzD,MAAM,KAAK,GAAQ;oBACjB,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE;oBAC/B,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS;iBAC9C,CAAA;gBACD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CACxB,CAAC,CAAM,EAAE,EAAE,CAAC,KAAK,KAAK,IAAA,qBAAW,EAAC,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;gBACvD,IAAI,CAAC,QAAQ,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;oBACjC,YAAY,CAAC,IAAI,CAAC;wBAChB,IAAI,EAAE,mBAAmB;wBACzB,KAAK,EAAE,QAAQ;wBACf,QAAQ,EAAE,SAAS;wBACnB,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC;wBACpB,OAAO,EAAE,cAAc,GAAG,CAAC,CAAC,KAAK;4BAC/B,sDAAsD;4BACtD,CAAC,CAAC,KAAK;wBACT,KAAK,EAAE,CAAC;gCACN,IAAI,EAAE,SAAS;gCACf,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;gCACtB,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;gCACtB,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;gCACtB,IAAI,EAAE,QAAQ;gCACd,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE;gCACtB,KAAK,EAAE,CAAC,CAAC,KAAK;6BACf,CAAC;qBACH,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,uEAAuE;IACvE,mEAAmE;IACnE,iEAAiE;IACjE,oEAAoE;IACpE,uBAAuB;IACvB,IAAI,IAAI,KAAK,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,IAAI,IAAI,KAAK,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACjF,MAAM,CAAC,MAAM,GAAG,IAAI,CAAA;IACtB,CAAC;IAED,8DAA8D;IAC9D,8CAA8C;IAC9C,EAAE;IACF,oEAAoE;IACpE,oEAAoE;IACpE,kEAAkE;IAClE,oEAAoE;IACpE,qEAAqE;IACrE,iEAAiE;IACjE,wDAAwD;IACxD,sEAAsE;IACtE,mDAAmD;IACnD,EAAE;IACF,oEAAoE;IACpE,qEAAqE;IACrE,oEAAoE;IACpE,mEAAmE;IACnE,0DAA0D;IAC1D,0CAA0C;IAC1C,EAAE;IACF,qEAAqE;IACrE,oEAAoE;IACpE,iEAAiE;IACjE,sEAAsE;IACtE,qEAAqE;IACrE,mEAAmE;IACnE,6DAA6D;IAC7D,mEAAmE;IACnE,kEAAkE;IAClE,qBAAqB;IACrB,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;IACxC,IAAI,UAAU,GAAQ,MAAM,CAAA;IAC5B,IAAI,IAAI,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;QAC5C,MAAM,WAAW,GAAQ,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;QACpE,IAAI,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,IAAI,IAAI,WAAW,EAAE,CAAC;YACpD,UAAU,GAAG,WAAW,CAAA;YACxB,IAAI,IAAI,KAAK,OAAO,CAAC,MAAM;gBACzB,CAAC,IAAI,KAAK,UAAU,CAAC,KAAK,IAAI,IAAI,KAAK,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC5D,UAAU,CAAC,MAAM,GAAG,IAAI,CAAA;YAC1B,CAAC;YACD,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;QACjC,CAAC;IACH,CAAC;SACI,CAAC;QACJ,gEAAgE;QAChE,2DAA2D;QAC3D,iEAAiE;QACjE,8DAA8D;QAC9D,kEAAkE;QAClE,kEAAkE;QAClE,oDAAoD;QACpD,+DAA+D;QAC/D,eAAe;QACf,CAAC;QAAE,GAAW,CAAC,QAAQ,GAAG,SAAS,CAOlC;QAAE,GAAW,CAAC,IAAI,GAAG,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;aACnD,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;IAC/C,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,yBAAW,CAAC,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;IACjE,MAAM,OAAO,GAAQ,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,CAAA;IAEtD,mEAAmE;IACnE,4CAA4C;IAC5C,EAAE;IACF,qEAAqE;IACrE,mEAAmE;IACnE,oEAAoE;IACpE,6DAA6D;IAC7D,oEAAoE;IACpE,oEAAoE;IACpE,iEAAiE;IACjE,8CAA8C;IAC9C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAO,CAAA;IAC3B,MAAM,IAAI,GAAU,IAAA,kBAAW,EAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IAC9C,KAAK,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,CAAC;QAC1B,IAAI,IAAI,KAAK,GAAG,EAAE,KAAK,IAAI,aAAa,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACvE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YACb,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAChB,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAiB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAC5C,WAAW,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;QACnB,OAAO,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;IAC3B,CAAC,CAAC,CAAA;IAEF,qEAAqE;IACrE,kEAAkE;IAClE,qEAAqE;IACrE,qEAAqE;IACrE,iEAAiE;IACjE,qEAAqE;IACrE,MAAM,MAAM,GAAQ,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;IAChD,MAAM,CAAC,IAAI,GAAG,OAAO,CAAA;IACrB,gEAAgE;IAChE,gEAAgE;IAChE,qEAAqE;IACrE,4CAA4C;IAC5C,MAAM,CAAC,KAAK,GAAG,IAAI,IAAI,OAAO,CAAC,EAAE,CAAA;IACjC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACnB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC;QAC7B,mEAAmE;QACnE,yDAAyD;QACzD,mEAAmE;QACnE,6DAA6D;QAC7D,+DAA+D;QAC/D,oEAAoE;QACpE,iEAAiE;QACjE,mEAAmE;QACnE,mEAAmE;QACnE,cAAc;QACd,EAAE;QACF,oEAAoE;QACpE,wDAAwD;QACxD,IAAI,YAAY,KAAK,GAAG,CAAC,KAAK,IAAI,UAAU,KAAK,GAAG,CAAC,KAAK,EAAE,CAAC;YAC3D,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;YACxB,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAA;QACrC,CAAC;IACH,CAAC;IAED,kEAAkE;IAClE,kEAAkE;IAClE,gEAAgE;IAChE,iEAAiE;IACjE,sEAAsE;IACtE,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAA;IAC9B,KAAK,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,IAAA,6BAAmB,EAAC,OAAO,CAAC,EAAE,CAAC;QACzD,MAAM,CAAC,GAAQ,GAAG,CAAA;QAClB,kEAAkE;QAClE,kEAAkE;QAClE,uCAAuC;QACvC,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAA;QACvB,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,YAAY;YAClB,KAAK,EAAE,QAAQ;YACf,QAAQ,EAAE,SAAS;YACnB,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC;YACpB,OAAO,EAAE,IAAA,4BAAkB,EAAC,CAAC,CAAC,WAAW,CAAC;YAC1C,KAAK,EAAE,CAAC;oBACN,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC;oBAC/C,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;oBACrB,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;oBACrB,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;oBACrB,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC;oBACxB,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE;oBACrB,KAAK,EAAE,CAAC,CAAC,KAAK;iBACf,CAAC;SACH,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAC3E,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC5C,IAAI,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;IAEzC,sEAAsE;IACtE,iEAAiE;IACjE,sEAAsE;IACtE,iEAAiE;IACjE,sEAAsE;IACtE,mEAAmE;IACnE,qEAAqE;IACrE,sEAAsE;IACtE,iEAAiE;IACjE,qEAAqE;IACrE,2DAA2D;IAC3D,EAAE;IACF,mEAAmE;IACnE,oEAAoE;IACpE,oEAAoE;IACpE,qEAAqE;IACrE,oEAAoE;IACpE,sEAAsE;IACtE,sEAAsE;IACtE,sEAAsE;IACtE,0DAA0D;IAC1D,MAAM,QAAQ,GAAG,CAAC,CAAa,EAAU,EAAE,CACzC,CAAC,CAAC,IAAI,GAAG,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACpC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC1E,MAAM,KAAK,GAAG,CAAC,CAAa,EAAU,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAA;IACjE,MAAM,OAAO,GAAG,IAAI,GAAG,EAAsB,CAAA;IAC7C,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;QACzB,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QAC/B,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;QACvB,CAAC;IACH,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAA;IAChC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QAC7B,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;QACzB,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YAClD,OAAO,KAAK,CAAA;QACd,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACjB,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,CAAA;IAEF,MAAM,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,CAAA;IAC5C,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;IAE9D,sEAAsE;IACtE,+CAA+C;IAC/C,EAAE;IACF,sEAAsE;IACtE,kEAAkE;IAClE,sEAAsE;IACtE,iEAAiE;IACjE,sEAAsE;IACtE,sEAAsE;IACtE,sEAAsE;IACtE,+CAA+C;IAC/C,EAAE;IACF,qEAAqE;IACrE,sEAAsE;IACtE,mEAAmE;IACnE,wDAAwD;IACxD,IAAI,OAAO,GAAe,OAAO,CAAA;IACjC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAA;IAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAA;IACnE,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;QAC1B,OAAO,GAAG,SAAS,CAAA;IACrB,CAAC;SACI,IAAI,CAAC,GAAG,KAAK,IAAI,IAAI,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC;QAC/C,OAAO,GAAG,YAAY,CAAA;IACxB,CAAC;IAED,OAAO;QACL,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI;QAClC,GAAG,CAAC,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;KAC1C,CAAA;AACH,CAAC"}
|
package/grammar/aontu.abnf
CHANGED
|
@@ -82,7 +82,7 @@ func = name %s"(" ws [ value *( ws %s"," ws value ) ws ] %s")"
|
|
|
82
82
|
; listed before `re`, and `rem` before `re` as well.
|
|
83
83
|
name = %s"above" / %s"acyclic" / %s"add" / %s"below" / %s"close"
|
|
84
84
|
/ %s"copy" / %s"deprecate" / %s"div"
|
|
85
|
-
/ %s"each" / %s"emit" / %s"esc" / %s"filter" / %s"
|
|
85
|
+
/ %s"each" / %s"emit" / %s"esc" / %s"filter" / %s"greatest"
|
|
86
86
|
/ %s"hide"
|
|
87
87
|
/ %s"inverse" / %s"join" / %s"key" / %s"least"
|
|
88
88
|
/ %s"length" / %s"list" / %s"lower" / %s"map" / %s"match"
|
package/grammar/aontu.gbnf
CHANGED
|
@@ -82,7 +82,7 @@ func ::= name "(" ws ( value ( ws "," ws value )* ws )? ")"
|
|
|
82
82
|
|
|
83
83
|
name ::=
|
|
84
84
|
"above" | "acyclic" | "add" | "below" | "close" | "copy" | "deprecate" | "div"
|
|
85
|
-
| "each" | "emit" | "esc" | "filter" | "
|
|
85
|
+
| "each" | "emit" | "esc" | "filter" | "greatest"
|
|
86
86
|
| "hide"
|
|
87
87
|
| "inverse" | "join" | "key" | "least"
|
|
88
88
|
| "length" | "list" | "lower" | "map" | "match" | "max" | "min" | "mod" | "move"
|
package/grammar/aontu.lark
CHANGED
|
@@ -63,7 +63,7 @@ element: spread
|
|
|
63
63
|
func: name "(" [value ("," value)*] ")"
|
|
64
64
|
|
|
65
65
|
name: "above" | "acyclic" | "add" | "below" | "close" | "copy" | "deprecate" | "div"
|
|
66
|
-
| "each" | "emit" | "esc" | "filter" | "
|
|
66
|
+
| "each" | "emit" | "esc" | "filter" | "greatest"
|
|
67
67
|
| "hide"
|
|
68
68
|
| "inverse" | "join" | "key" | "least"
|
|
69
69
|
| "length" | "list" | "lower" | "map" | "match" | "max" | "min" | "mod" | "move"
|
|
@@ -111,7 +111,7 @@
|
|
|
111
111
|
|
|
112
112
|
"builtin": {
|
|
113
113
|
"comment": "The engine's function registry. `func: name \"(\" ...` in aontu.lark — only these names can be called, so a call to anything else is deliberately left uncoloured rather than dressed up as valid. The prefix family is spelled longest-first (refer|rel|rem|re) to keep the intent legible; the trailing \\b already makes the order immaterial, since a short alternative that swallowed the stem fails the boundary and backtracks.",
|
|
114
|
-
"match": "\\b(above|acyclic|add|below|close|copy|deprecate|div|each|emit|esc|filter|
|
|
114
|
+
"match": "\\b(above|acyclic|add|below|close|copy|deprecate|div|each|emit|esc|filter|greatest|hide|inverse|join|key|least|length|list|lower|map|match|max|min|mod|move|mul|must|neq|open|pack|path|pick|pref|refer|rel|rem|rep|re|split|sub|sum|super|type|unique|upper|usc)\\b(?=\\s*\\()",
|
|
115
115
|
"captures": {
|
|
116
116
|
"1": { "name": "support.function.builtin.aontu" }
|
|
117
117
|
}
|
package/package.json
CHANGED
package/skill/SKILL.md
CHANGED
|
@@ -19,6 +19,8 @@ Start here:
|
|
|
19
19
|
|
|
20
20
|
- Every JSON document is an aontu document. Write JSON, then add
|
|
21
21
|
what JSON cannot say.
|
|
22
|
+
- [`tasks.md`](tasks.md) — the verb for a job, indexed by the word
|
|
23
|
+
you arrived with (ontology, schema, validate, model).
|
|
22
24
|
- [`grammar-card.md`](grammar-card.md) — the whole surface on one
|
|
23
25
|
page.
|
|
24
26
|
- [`examples.md`](examples.md) — the JSON-superset ladder: plain
|
|
@@ -33,5 +35,11 @@ aontu vet schema.aon data.aon # does this data satisfy that truth?
|
|
|
33
35
|
aontu get $.a.b file.aon # what does it say at a path?
|
|
34
36
|
aontu why $.a.b file.aon # why does that value hold?
|
|
35
37
|
aontu set $.a.b=1 --entry file.aon --overlay over.aon
|
|
38
|
+
aontu allow --role dev roles.aon $.a.b # may this role change that subtree?
|
|
36
39
|
aontu hash file.aon # a pin that survives reformatting
|
|
37
40
|
```
|
|
41
|
+
|
|
42
|
+
These four files also ship INSIDE the command, so they answer with no
|
|
43
|
+
network and no checkout: `aontu help` lists the topics, `aontu help
|
|
44
|
+
language` is the grammar card, and `aontu explain <code>` says what one
|
|
45
|
+
refusal means.
|