aontu 0.39.0 → 0.41.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/dist/aontu.js +7 -0
- package/dist/aontu.js.map +1 -1
- package/dist/ctx.d.ts +9 -0
- package/dist/ctx.js +54 -8
- package/dist/ctx.js.map +1 -1
- package/dist/err.js +36 -15
- package/dist/err.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/unify.js +85 -47
- package/dist/unify.js.map +1 -1
- package/dist/val/ConjunctVal.js +2 -2
- package/dist/val/ConjunctVal.js.map +1 -1
- package/dist/val/DisjunctVal.js +36 -10
- package/dist/val/DisjunctVal.js.map +1 -1
- package/dist/val/ExpectVal.js +2 -2
- package/dist/val/ExpectVal.js.map +1 -1
- package/dist/val/FuncBaseVal.js +2 -2
- package/dist/val/FuncBaseVal.js.map +1 -1
- package/dist/val/IntegerVal.js +1 -1
- package/dist/val/IntegerVal.js.map +1 -1
- package/dist/val/ListVal.js +7 -3
- package/dist/val/ListVal.js.map +1 -1
- package/dist/val/MapVal.js +20 -12
- package/dist/val/MapVal.js.map +1 -1
- package/dist/val/NilVal.d.ts +2 -1
- package/dist/val/NilVal.js +15 -1
- package/dist/val/NilVal.js.map +1 -1
- package/dist/val/OpBaseVal.js +1 -1
- package/dist/val/OpBaseVal.js.map +1 -1
- package/dist/val/PrefVal.js +3 -3
- package/dist/val/PrefVal.js.map +1 -1
- package/dist/val/RefVal.js +1 -1
- package/dist/val/RefVal.js.map +1 -1
- package/dist/val/Val.d.ts +2 -0
- package/dist/val/Val.js +88 -43
- package/dist/val/Val.js.map +1 -1
- package/dist/val/VarVal.js +1 -1
- package/dist/val/VarVal.js.map +1 -1
- package/package.json +9 -10
- package/src/aontu.ts +9 -1
- package/src/ctx.ts +79 -8
- package/src/err.ts +37 -17
- package/src/tsconfig.json +2 -1
- package/src/unify.ts +86 -57
- package/src/val/ConjunctVal.ts +2 -2
- package/src/val/DisjunctVal.ts +37 -11
- package/src/val/ExpectVal.ts +2 -2
- package/src/val/FuncBaseVal.ts +2 -2
- package/src/val/IntegerVal.ts +1 -1
- package/src/val/ListVal.ts +7 -3
- package/src/val/MapVal.ts +20 -12
- package/src/val/NilVal.ts +17 -1
- package/src/val/OpBaseVal.ts +1 -1
- package/src/val/PrefVal.ts +3 -3
- package/src/val/RefVal.ts +1 -1
- package/src/val/Val.ts +139 -48
- package/src/val/VarVal.ts +1 -1
package/dist/aontu.js
CHANGED
|
@@ -124,6 +124,13 @@ function handleErrors(errs, out, ac) {
|
|
|
124
124
|
out.err.map((err) => ac.adderr(err));
|
|
125
125
|
}
|
|
126
126
|
if (0 < ac.err.length) {
|
|
127
|
+
// Error message formatting is deferred by adderr (many NilVals are
|
|
128
|
+
// transient). Materialize msgs here before the caller sees them.
|
|
129
|
+
for (const err of ac.err) {
|
|
130
|
+
if (null == err?.msg || '' === err.msg) {
|
|
131
|
+
(0, err_1.descErr)(err, ac);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
127
134
|
if (ac.collect) {
|
|
128
135
|
if (out) {
|
|
129
136
|
out.err = ac.err;
|
package/dist/aontu.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aontu.js","sourceRoot":"","sources":["../src/aontu.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;
|
|
1
|
+
{"version":3,"file":"aontu.js","sourceRoot":"","sources":["../src/aontu.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;AA+NvD,4BAAQ;AAxNV,iCAA6B;AAuN3B,qFAvNO,WAAI,OAuNP;AAtNN,mCAA+B;AAC/B,+BAAwD;AAiNtD,6FAjNO,kBAAY,OAiNP;AAhNd,yCAAqC;AACrC,uCAAyC;AAsNvC,8FAtNO,uBAAa,OAsNP;AArNf,+BAAuD;AA+MrD,2FA/M4B,gBAAU,OA+M5B;AA3MZ,MAAM,KAAK;IAKT,YAAY,KAAoB;QAC9B,IAAI,CAAC,IAAI,GAAG,KAAK,IAAI,EAAE,CAAA;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,WAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACjC,CAAC;IAGD,wBAAwB;IACxB,GAAG,CAAC,GAAwB;QAC1B,GAAG,GAAG,GAAG,IAAI,EAAE,CAAA;QACf,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAA;QAC/B,MAAM,EAAE,GAAG,IAAI,kBAAY,CAAC,GAAG,CAAC,CAAA;QAChC,OAAO,EAAE,CAAA;IACX,CAAC;IAGD,yDAAyD;IACzD,KAAK,CAAC,GAAW,EAAE,IAAmB,EAAE,EAAiB;QACvD,IAAI,GAAoB,CAAA;QACxB,IAAI,IAAI,GAAU,EAAE,CAAA;QAEpB,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;YAChB,GAAG,GAAG,EAAE,CAAA;QACV,CAAC;QAED,EAAE,GAAG,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,CAAA;QACrB,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;QAEpC,IAAI,QAAQ,KAAK,OAAO,GAAG,EAAE,CAAC;YAC5B,GAAG,GAAG,IAAA,gBAAU,EAAC,EAAE,EAAE,eAAe,CAAC,CAAA;YACrC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAChB,CAAC;QAED,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;YACtB,GAAG,GAAG,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;YAClC,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAA;YAClB,EAAE,CAAC,IAAI,GAAG,GAAG,CAAA;QACf,CAAC;QAED,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,CAAA;QAE3B,OAAO,GAAG,CAAA;IACZ,CAAC;IAGD,sDAAsD;IACtD,KAAK,CAAC,GAAiB,EAAE,IAAmB,EAAE,EAAuB;QACnE,IAAI,GAAoB,CAAA;QACxB,IAAI,IAAI,GAAU,EAAE,CAAA;QAEpB,EAAE,GAAG,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,CAAA;QACrB,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;QAEpC,IAAI,IAAqB,CAAA;QAEzB,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;YAChB,GAAG,GAAG,EAAE,CAAA;QACV,CAAC;QAED,IAAI,QAAQ,KAAK,OAAO,GAAG,EAAE,CAAC;YAC5B,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,CAAA;QACvC,CAAC;aACI,IAAI,GAAG,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YAC1B,IAAI,GAAG,GAAG,CAAA;QACZ,CAAC;aACI,CAAC;YACJ,GAAG,GAAG,IAAA,gBAAU,EAAC,EAAE,EAAE,cAAc,CAAC,CAAA;YACpC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAChB,CAAC;QAED,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;YACtC,IAAI,GAAG,GAAG,IAAI,aAAK,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAA;YAC7C,IAAI,GAAG,GAAG,CAAC,GAAG,CAAA;YAEd,GAAG,GAAG,GAAG,CAAC,GAAG,CAAA;YAEb,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;gBAChB,GAAG,GAAG,IAAA,gBAAU,EAAC,EAAE,EAAE,cAAc,CAAC,CAAA;gBACpC,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;oBACtB,IAAI,GAAG,CAAC,GAAG,CAAC,CAAA;gBACd,CAAC;YACH,CAAC;YAED,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;YACpB,GAAG,CAAC,GAAG,GAAG,IAAI,CAAA;YACd,EAAE,CAAC,IAAI,GAAG,GAAG,CAAA;QACf,CAAC;QAED,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,CAAA;QAE3B,OAAO,GAAU,CAAA;IACnB,CAAC;IAGD,2EAA2E;IAC3E,QAAQ,CAAC,GAAW,EAAE,IAAU,EAAE,EAAiB;QACjD,IAAI,CAAC;YACH,IAAI,GAAG,GAAG,SAAS,CAAA;YAEnB,EAAE,GAAG,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,CAAA;YACrB,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;YAEpC,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,CAAA;YAEzC,IAAI,SAAS,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;gBAEhD,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,CAAA;gBAC1C,kEAAkE;gBAElE,IAAI,SAAS,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;oBAEhD,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,IAAW,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAS,CAAC,CAAA;oBAE5E,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;wBACtB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC;4BAChB,MAAM,IAAI,gBAAU,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAA;wBAC3C,CAAC;wBACD,GAAG,GAAG,SAAS,CAAA;oBACjB,CAAC;gBACH,CAAC;YACH,CAAC;YAED,OAAO,GAAG,CAAA;QACZ,CAAC;QACD,OAAO,GAAQ,EAAE,CAAC;YAChB,IAAI,GAAG,YAAY,gBAAU,IAAI,IAAI,KAAK,GAAG,CAAC,KAAK,EAAE,CAAC;gBACpD,MAAM,GAAG,CAAA;YACX,CAAC;YACD,MAAM,IAAI,GAAG,IAAI,gBAAU,CAAC,2BAA2B,GAAG,GAAG,CAAC,OAAO,CAAC,CAAA;YACtE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;YACxB,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAA;YACtB,MAAM,IAAI,CAAA;QACZ,CAAC;IACH,CAAC;CACF;AA8DC,sBAAK;AA3DP,+DAA+D;AAC/D,SAAS,YAAY,CAAC,IAAW,EAAE,GAAoB,EAAE,EAAgB;IAEvE,IAAI,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;IAEtC,IAAI,GAAG,EAAE,CAAC;QACR,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;IAC3C,CAAC;IAED,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;QACtB,mEAAmE;QACnE,iEAAiE;QACjE,KAAK,MAAM,GAAG,IAAI,EAAE,CAAC,GAAG,EAAE,CAAC;YACzB,IAAI,IAAI,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,KAAK,GAAG,CAAC,GAAG,EAAE,CAAC;gBACvC,IAAA,aAAO,EAAC,GAAG,EAAE,EAAE,CAAC,CAAA;YAClB,CAAC;QACH,CAAC;QAED,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;YACf,IAAI,GAAG,EAAE,CAAC;gBACR,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,CAAA;YAClB,CAAC;QACH,CAAC;aACI,CAAC;YACJ,MAAM,IAAI,gBAAU,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAA;QAC3C,CAAC;IACH,CAAC;AACH,CAAC;AAGD,uEAAuE;AACvE,SAAS,QAAQ,CAAC,GAAW,EAAE,IAAU,EAAE,GAAiB;IAC1D,MAAM,KAAK,GAAG;QACZ,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI;KACpB,CAAA;IACD,IAAI,GAAG,CAAA;IAEP,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;IAEhD,IAAI,QAAQ,KAAK,OAAO,GAAG,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;QAC3C,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IAC9B,CAAC;IAED,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;QACtB,GAAG,GAAG,IAAI,eAAM,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAA;IAC/B,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC;AAGD,MAAM,IAAI,GAAG;IACX,QAAQ;CACT,CAAA;AAYC,oBAAI;AAKN,kBAAe,KAAK,CAAA"}
|
package/dist/ctx.d.ts
CHANGED
|
@@ -36,6 +36,15 @@ declare class AontuContext {
|
|
|
36
36
|
_pathstr: string | undefined;
|
|
37
37
|
_pathidx: number | undefined;
|
|
38
38
|
_pathmap: Map<string, number>;
|
|
39
|
+
_pathTrie: Map<number, Map<string, {
|
|
40
|
+
idx: number;
|
|
41
|
+
path: string[];
|
|
42
|
+
}>>;
|
|
43
|
+
_pathidxNext: {
|
|
44
|
+
n: number;
|
|
45
|
+
};
|
|
46
|
+
_trialMode?: boolean;
|
|
47
|
+
_childCache?: Map<string, AontuContext>;
|
|
39
48
|
constructor(cfg: AontuContextConfig);
|
|
40
49
|
clone(cfg: {
|
|
41
50
|
root?: Val;
|
package/dist/ctx.js
CHANGED
|
@@ -26,6 +26,9 @@ class AontuContext {
|
|
|
26
26
|
this.srcpath = cfg.srcpath ?? undefined;
|
|
27
27
|
this.deps = cfg.deps ?? {};
|
|
28
28
|
this._pathmap = new Map();
|
|
29
|
+
this._pathTrie = new Map();
|
|
30
|
+
this._pathidxNext = { n: 1 }; // 0 reserved for the root path
|
|
31
|
+
this._pathidx = 0;
|
|
29
32
|
this.opts = (0, type_1.DEFAULT_OPTS)();
|
|
30
33
|
this.addopts(cfg.opts);
|
|
31
34
|
}
|
|
@@ -38,21 +41,62 @@ class AontuContext {
|
|
|
38
41
|
ctx.err = cfg.err ?? ctx.err;
|
|
39
42
|
ctx.explain = Array.isArray(cfg.explain) ? cfg.explain : ctx.explain;
|
|
40
43
|
ctx._pathstr = undefined;
|
|
41
|
-
|
|
44
|
+
// Path didn't move unless cfg.path was supplied, so pathidx stays
|
|
45
|
+
// valid in the common case. For cfg.path-override (4 calls per
|
|
46
|
+
// run, fixpoint advances) fall back to the join-based lookup.
|
|
47
|
+
if (cfg.path !== undefined) {
|
|
48
|
+
ctx._pathidx = undefined;
|
|
49
|
+
}
|
|
42
50
|
return ctx;
|
|
43
51
|
}
|
|
44
52
|
descend(key) {
|
|
53
|
+
// C3: reuse the child ctx from a previous descend with the same
|
|
54
|
+
// (parent, key). Saves one Object.create + several property
|
|
55
|
+
// writes per hit; ~48% hit rate on foo-sdk.
|
|
56
|
+
//
|
|
57
|
+
// NB: must use hasOwnProperty here — plain `this._childCache`
|
|
58
|
+
// would walk the prototype chain and read the *parent's* cache
|
|
59
|
+
// (ctxs are created via Object.create(parent)), so keys would
|
|
60
|
+
// cross-contaminate between sibling branches.
|
|
61
|
+
let childCache;
|
|
62
|
+
if (Object.prototype.hasOwnProperty.call(this, '_childCache')) {
|
|
63
|
+
childCache = this._childCache;
|
|
64
|
+
const cached = childCache.get(key);
|
|
65
|
+
if (cached !== undefined)
|
|
66
|
+
return cached;
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
childCache = new Map();
|
|
70
|
+
this._childCache = childCache;
|
|
71
|
+
}
|
|
45
72
|
const ctx = Object.create(this);
|
|
46
|
-
ctx.path = this.path.concat(key);
|
|
47
73
|
ctx._pathstr = undefined;
|
|
48
|
-
|
|
74
|
+
// Trie doubles as both pathidx assignment and path-array cache.
|
|
75
|
+
// (parent_pathidx, key) uniquely identifies a descended path,
|
|
76
|
+
// and is visited many times across fixpoint passes. Caching the
|
|
77
|
+
// materialised array lets descend share references instead of
|
|
78
|
+
// allocating a fresh concat every time.
|
|
79
|
+
const parentIdx = this._pathidx;
|
|
80
|
+
let childMap = this._pathTrie.get(parentIdx);
|
|
81
|
+
if (childMap === undefined) {
|
|
82
|
+
childMap = new Map();
|
|
83
|
+
this._pathTrie.set(parentIdx, childMap);
|
|
84
|
+
}
|
|
85
|
+
let entry = childMap.get(key);
|
|
86
|
+
if (entry === undefined) {
|
|
87
|
+
entry = { idx: this._pathidxNext.n++, path: this.path.concat(key) };
|
|
88
|
+
childMap.set(key, entry);
|
|
89
|
+
}
|
|
90
|
+
ctx._pathidx = entry.idx;
|
|
91
|
+
ctx.path = entry.path;
|
|
92
|
+
childCache.set(key, ctx);
|
|
49
93
|
return ctx;
|
|
50
94
|
}
|
|
51
95
|
addopts(opts) {
|
|
52
96
|
if (null != opts) {
|
|
53
97
|
Object.assign(this.opts, opts);
|
|
54
98
|
}
|
|
55
|
-
this.collect =
|
|
99
|
+
this.collect = this.opts.collect ?? (null != this.opts.err || this.collect);
|
|
56
100
|
this.err = this.opts.err ?? this.err;
|
|
57
101
|
this.deps = this.opts.deps ?? this.deps;
|
|
58
102
|
this.fs = this.opts.fs ?? this.fs;
|
|
@@ -69,15 +113,17 @@ class AontuContext {
|
|
|
69
113
|
if (!this.err.includes(err)) {
|
|
70
114
|
this.err.push(err);
|
|
71
115
|
}
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
116
|
+
// NOTE: error message formatting is deferred to errmsg() / NilVal.gen.
|
|
117
|
+
// Many NilVals are transient (disjunct member trials, etc.) and never
|
|
118
|
+
// surface to the user — eager descErr was a major hot path.
|
|
75
119
|
}
|
|
76
120
|
}
|
|
77
121
|
errmsg() {
|
|
78
122
|
// return this.errlist
|
|
79
123
|
return this.err
|
|
80
|
-
.map((err) => err
|
|
124
|
+
.map((err) => (err && (null == err.msg || '' === err.msg)
|
|
125
|
+
? ((0, err_1.descErr)(err, this), err.msg)
|
|
126
|
+
: err?.msg))
|
|
81
127
|
.filter(msg => null != msg)
|
|
82
128
|
.join('\n------\n');
|
|
83
129
|
}
|
package/dist/ctx.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ctx.js","sourceRoot":"","sources":["../src/ctx.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;AAKzD,iCAAqC;AAGrC,yCAAqC;AACrC,2CAAuC;AAIvC,+BAEc;AAuBd,MAAM,YAAY;
|
|
1
|
+
{"version":3,"file":"ctx.js","sourceRoot":"","sources":["../src/ctx.ts"],"names":[],"mappings":"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"}
|
package/dist/err.js
CHANGED
|
@@ -17,6 +17,20 @@ function getHint(why, details) {
|
|
|
17
17
|
return undefined;
|
|
18
18
|
}
|
|
19
19
|
function makeNilErr(ctx, why, av, bv, attempt, details) {
|
|
20
|
+
// C1-inner: when a DisjunctVal trial is in progress, failures are
|
|
21
|
+
// transient markers — none of the NilVal fields (site, path,
|
|
22
|
+
// primary, secondary, details) ever surface to the user because
|
|
23
|
+
// DisjunctVal replaces the oval entry with TRIAL_NIL and filters
|
|
24
|
+
// by isNil. Allocating a fresh NilVal per failure (~60k per
|
|
25
|
+
// foo-sdk run from IntegerVal/BooleanVal/ScalarVal.unify et al.)
|
|
26
|
+
// is pure waste. Short-circuit to the shared sentinel; push once
|
|
27
|
+
// to ctx.err so the caller's `trialErr.length > 0` check still
|
|
28
|
+
// signals failure.
|
|
29
|
+
if (ctx !== undefined && ctx._trialMode === true) {
|
|
30
|
+
if (ctx.err.length === 0)
|
|
31
|
+
ctx.err.push(NilVal_1.TRIAL_NIL);
|
|
32
|
+
return NilVal_1.TRIAL_NIL;
|
|
33
|
+
}
|
|
20
34
|
const nilval = NilVal_1.NilVal.make(ctx, why, av, bv, attempt, details);
|
|
21
35
|
return nilval;
|
|
22
36
|
}
|
|
@@ -96,32 +110,39 @@ function resolveFile(url) {
|
|
|
96
110
|
}
|
|
97
111
|
function resolveSrc(v, errctx, position) {
|
|
98
112
|
let src = undefined;
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
113
|
+
const url = v?.site.url;
|
|
114
|
+
// Cache reads on errctx for the lifetime of the error-formatting pass.
|
|
115
|
+
// When many NilVals share the same source file (common during batch
|
|
116
|
+
// descErr after unify), this avoids re-reading the same file N times.
|
|
117
|
+
const cache = errctx ? (errctx._srcCache ??= new Map()) : null;
|
|
118
|
+
if (null != url) {
|
|
119
|
+
if (cache && cache.has(url)) {
|
|
120
|
+
src = cache.get(url);
|
|
105
121
|
}
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
122
|
+
else {
|
|
123
|
+
try {
|
|
124
|
+
const fileExists = errctx?.fs?.existsSync(url);
|
|
125
|
+
if (fileExists) {
|
|
126
|
+
src = errctx?.fs?.readFileSync(url, 'utf8') ?? undefined;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
catch (fe) {
|
|
130
|
+
// ignore as more important to report original error
|
|
131
|
+
}
|
|
132
|
+
if (cache && null != src) {
|
|
133
|
+
cache.set(url, src);
|
|
134
|
+
}
|
|
109
135
|
}
|
|
110
136
|
}
|
|
111
|
-
else {
|
|
112
|
-
// console.log(v)
|
|
113
|
-
// console.trace()
|
|
114
|
-
}
|
|
115
137
|
if (undefined == src || '' === src) {
|
|
116
138
|
if (errctx?.src) {
|
|
117
139
|
src = errctx.src;
|
|
118
140
|
}
|
|
119
141
|
else if (errctx) {
|
|
120
|
-
src = 'SOURCE-NOT-FOUND:' + (null !=
|
|
142
|
+
src = 'SOURCE-NOT-FOUND:' + (null != url ? (' ' + url) : '') +
|
|
121
143
|
(null == errctx?.fs ? ' (NO-FS)' : '');
|
|
122
144
|
}
|
|
123
145
|
}
|
|
124
|
-
// console.log('AONTU-resolveSrc', position, v, v?.site.url, errctx?.fs, src?.length)
|
|
125
146
|
return src;
|
|
126
147
|
}
|
|
127
148
|
class AontuError extends Error {
|
package/dist/err.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"err.js","sourceRoot":"","sources":["../src/err.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;
|
|
1
|
+
{"version":3,"file":"err.js","sourceRoot":"","sources":["../src/err.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"root":["../src/aontu.ts","../src/ctx.ts","../src/err.ts","../src/hints.ts","../src/lang.ts","../src/site.ts","../src/type.ts","../src/unify.ts","../src/utility.ts","../src/val/bagval.ts","../src/val/booleanval.ts","../src/val/closefuncval.ts","../src/val/conjunctval.ts","../src/val/copyfuncval.ts","../src/val/disjunctval.ts","../src/val/expectval.ts","../src/val/featureval.ts","../src/val/funcbaseval.ts","../src/val/hidefuncval.ts","../src/val/integerval.ts","../src/val/junctionval.ts","../src/val/keyfuncval.ts","../src/val/listval.ts","../src/val/lowerfuncval.ts","../src/val/mapval.ts","../src/val/movefuncval.ts","../src/val/nilval.ts","../src/val/nullval.ts","../src/val/numberval.ts","../src/val/opbaseval.ts","../src/val/openfuncval.ts","../src/val/pathfuncval.ts","../src/val/plusopval.ts","../src/val/preffuncval.ts","../src/val/prefval.ts","../src/val/refval.ts","../src/val/scalarkindval.ts","../src/val/scalarval.ts","../src/val/stringval.ts","../src/val/superfuncval.ts","../src/val/topval.ts","../src/val/typefuncval.ts","../src/val/upperfuncval.ts","../src/val/val.ts","../src/val/varval.ts","../src/val/top.ts","../src/val/valutil.ts"],"version":"
|
|
1
|
+
{"root":["../src/aontu.ts","../src/ctx.ts","../src/err.ts","../src/hints.ts","../src/lang.ts","../src/site.ts","../src/type.ts","../src/unify.ts","../src/utility.ts","../src/val/bagval.ts","../src/val/booleanval.ts","../src/val/closefuncval.ts","../src/val/conjunctval.ts","../src/val/copyfuncval.ts","../src/val/disjunctval.ts","../src/val/expectval.ts","../src/val/featureval.ts","../src/val/funcbaseval.ts","../src/val/hidefuncval.ts","../src/val/integerval.ts","../src/val/junctionval.ts","../src/val/keyfuncval.ts","../src/val/listval.ts","../src/val/lowerfuncval.ts","../src/val/mapval.ts","../src/val/movefuncval.ts","../src/val/nilval.ts","../src/val/nullval.ts","../src/val/numberval.ts","../src/val/opbaseval.ts","../src/val/openfuncval.ts","../src/val/pathfuncval.ts","../src/val/plusopval.ts","../src/val/preffuncval.ts","../src/val/prefval.ts","../src/val/refval.ts","../src/val/scalarkindval.ts","../src/val/scalarval.ts","../src/val/stringval.ts","../src/val/superfuncval.ts","../src/val/topval.ts","../src/val/typefuncval.ts","../src/val/upperfuncval.ts","../src/val/val.ts","../src/val/varval.ts","../src/val/top.ts","../src/val/valutil.ts"],"version":"6.0.3"}
|
package/dist/unify.js
CHANGED
|
@@ -13,6 +13,35 @@ const MAXCYCLE = 999;
|
|
|
13
13
|
// Vals should only have to unify downwards (in .unify) over Vals they understand.
|
|
14
14
|
// and for complex Vals, TOP, which means self unify if not yet done
|
|
15
15
|
const unite = (ctx, a, b, whence) => {
|
|
16
|
+
// Fast paths that don't recurse and so don't need cycle-detection:
|
|
17
|
+
// short-circuit before the saw-key build and seen-map lookup (which
|
|
18
|
+
// together cost ~2.5µs per call). Only return early when the result
|
|
19
|
+
// is already `done` — a non-done result would need the trailing
|
|
20
|
+
// top() unify below.
|
|
21
|
+
//
|
|
22
|
+
// A6a: same ref, already done
|
|
23
|
+
// A6b: different ref but same id + both done
|
|
24
|
+
// P1: exact-equal scalars that are already done (14% of calls
|
|
25
|
+
// in foo-sdk, ~100% with a.done=true)
|
|
26
|
+
if (a !== undefined && a !== null) {
|
|
27
|
+
if (a === b) {
|
|
28
|
+
if (a.done)
|
|
29
|
+
return a;
|
|
30
|
+
}
|
|
31
|
+
else if (b !== undefined && b !== null) {
|
|
32
|
+
if (a.done && b.done) {
|
|
33
|
+
if (a.id === b.id)
|
|
34
|
+
return a;
|
|
35
|
+
if (a.constructor === b.constructor && a.peg === b.peg
|
|
36
|
+
&& !a.isNil && !b.isNil
|
|
37
|
+
&& !a.isMap && !a.isList
|
|
38
|
+
&& !a.isConjunct && !a.isDisjunct
|
|
39
|
+
&& !a.isRef && !a.isPref && !a.isFunc && !a.isExpect) {
|
|
40
|
+
return a;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
16
45
|
const te = ctx.explain && (0, utility_1.explainOpen)(ctx, ctx.explain, 'unite', a, b);
|
|
17
46
|
let out = a;
|
|
18
47
|
let why = 'u';
|
|
@@ -34,69 +63,78 @@ const unite = (ctx, a, b, whence) => {
|
|
|
34
63
|
ctx.seen[saw] = sawCount + 1;
|
|
35
64
|
try {
|
|
36
65
|
let unified = false;
|
|
37
|
-
|
|
66
|
+
// Dispatch ladder. Structure note:
|
|
67
|
+
// - `a == null` is degenerate (shouldn't happen in practice:
|
|
68
|
+
// the top-level call seeds with a real Val). Kept for safety.
|
|
69
|
+
// - TOP is the unit element: unifying with it returns the
|
|
70
|
+
// other side. Handle both sides.
|
|
71
|
+
// - Otherwise route by Val type. Complex Vals (Conjunct,
|
|
72
|
+
// Disjunct, Ref, Pref, Func, Expect) have their own unify
|
|
73
|
+
// that knows how to absorb the peer; prefer `a.unify` when
|
|
74
|
+
// `a` is complex, else `b.unify` when `b` is complex. If
|
|
75
|
+
// neither is complex and it's not a plain-scalar match, fall
|
|
76
|
+
// through to the generic `a.unify` (concrete Val classes
|
|
77
|
+
// each handle their own peer case).
|
|
78
|
+
if (a == null) {
|
|
38
79
|
out = b;
|
|
39
80
|
why = 'b';
|
|
40
81
|
}
|
|
41
|
-
else if (
|
|
82
|
+
else if (b == null || b.isTop) {
|
|
42
83
|
out = a;
|
|
43
84
|
why = 'a';
|
|
44
85
|
}
|
|
45
|
-
else if (a
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
why = 'ab';
|
|
83
|
-
}
|
|
86
|
+
else if (a.isTop) {
|
|
87
|
+
out = b;
|
|
88
|
+
why = 'b';
|
|
89
|
+
}
|
|
90
|
+
else if (a.isNil) {
|
|
91
|
+
out = update(a, b);
|
|
92
|
+
why = 'an';
|
|
93
|
+
}
|
|
94
|
+
else if (b.isNil) {
|
|
95
|
+
out = update(b, a);
|
|
96
|
+
why = 'bn';
|
|
97
|
+
}
|
|
98
|
+
else if (a.isConjunct || a.isExpect) {
|
|
99
|
+
out = a.unify(b, te ? ctx.clone({ explain: (0, utility_1.ec)(te, 'AC') }) : ctx);
|
|
100
|
+
unified = true;
|
|
101
|
+
why = 'a*';
|
|
102
|
+
}
|
|
103
|
+
else if (b.isConjunct
|
|
104
|
+
|| b.isDisjunct
|
|
105
|
+
|| b.isRef
|
|
106
|
+
|| b.isPref
|
|
107
|
+
|| b.isFunc
|
|
108
|
+
|| b.isExpect) {
|
|
109
|
+
out = b.unify(a, te ? ctx.clone({ explain: (0, utility_1.ec)(te, 'BW') }) : ctx);
|
|
110
|
+
unified = true;
|
|
111
|
+
why = 'bv';
|
|
112
|
+
}
|
|
113
|
+
// Exactly equal scalars (not caught by early fast-path — e.g.
|
|
114
|
+
// because a or b isn't .done yet).
|
|
115
|
+
else if (a.constructor === b.constructor && a.peg === b.peg) {
|
|
116
|
+
out = update(a, b);
|
|
117
|
+
why = 'up';
|
|
118
|
+
}
|
|
119
|
+
else {
|
|
120
|
+
out = a.unify(b, te ? ctx.clone({ explain: (0, utility_1.ec)(te, 'GN') }) : ctx);
|
|
121
|
+
unified = true;
|
|
122
|
+
why = 'ab';
|
|
84
123
|
}
|
|
85
124
|
if (!out || !out.unify) {
|
|
86
125
|
out = (0, err_1.makeNilErr)(ctx, 'unite', a, b, whence + '/nil');
|
|
87
126
|
why += 'N';
|
|
88
127
|
}
|
|
89
|
-
//
|
|
90
|
-
//
|
|
128
|
+
// Any non-done top-level result self-unifies with TOP to ensure
|
|
129
|
+
// its children finish converging. Skipped when `unified` is true
|
|
130
|
+
// because the branch that set `out = X.unify(Y, ctx)` already
|
|
131
|
+
// ran that Val's own unify logic.
|
|
91
132
|
if (!out.done && !unified) {
|
|
92
|
-
|
|
93
|
-
out = nout;
|
|
133
|
+
out = out.unify((0, top_1.top)(), te ? ctx.clone({ explain: (0, utility_1.ec)(te, 'ND') }) : ctx);
|
|
94
134
|
why += 'T';
|
|
95
135
|
}
|
|
96
|
-
// console.log('UNITE', why, a?.id, a?.canon, a?.done, b?.id, b?.canon, b?.done, '->', out?.id, out?.canon, out?.done)
|
|
97
136
|
}
|
|
98
137
|
catch (err) {
|
|
99
|
-
// console.log(err)
|
|
100
138
|
// TODO: handle unexpected
|
|
101
139
|
out = (0, err_1.makeNilErr)(ctx, 'internal', a, b);
|
|
102
140
|
}
|
package/dist/unify.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unify.js","sourceRoot":"","sources":["../src/unify.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;AAKzD,+BAAoC;AAEpC,iCAA6B;AAE7B,+BAAkC;AAIlC,iCAEe;AAGf,uCAEkB;AAGlB,mCAEkB;AAGlB,2DAA2D;AAC3D,MAAM,QAAQ,GAAG,GAAG,CAAA;AAEpB,kFAAkF;AAClF,oEAAoE;AACpE,MAAM,KAAK,GAAG,CAAC,GAAiB,EAAE,CAAM,EAAE,CAAM,EAAE,MAAc,EAAE,EAAE;IAClE,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,IAAI,IAAA,qBAAW,EAAC,GAAG,EAAE,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAEtE,IAAI,GAAG,GAAG,CAAC,CAAA;IACX,IAAI,GAAG,GAAG,GAAG,CAAA;IAEb,sEAAsE;IACtE,4EAA4E;IAC5E,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK;QACxB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG;YAC3C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,OAAO;QAC3D,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG;YAC1C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,OAAO,CAAA;IAE5D,oFAAoF;IACpF,sDAAsD;IACtD,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACnC,IAAI,QAAQ,GAAG,QAAQ,EAAE,CAAC;QACxB,8EAA8E;QAC9E,GAAG,GAAG,IAAA,gBAAU,EAAC,GAAG,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAC5C,CAAC;SACI,CAAC;QACJ,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,GAAG,CAAC,CAAA;QAE5B,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"unify.js","sourceRoot":"","sources":["../src/unify.ts"],"names":[],"mappings":"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"}
|
package/dist/val/ConjunctVal.js
CHANGED
|
@@ -53,7 +53,7 @@ class ConjunctVal extends JunctionVal_1.JunctionVal {
|
|
|
53
53
|
this.peg[vI].mark.hide = newhide;
|
|
54
54
|
// console.log('CONJUNCT-TERM', this.id, vI, this.peg[vI].canon)
|
|
55
55
|
upeer[vI] = (this.peg[vI].done && peer.isTop) ? this.peg[vI] :
|
|
56
|
-
(0, unify_1.unite)(ctx.clone({ explain: (0, utility_1.ec)(te, 'OWN') }), this.peg[vI], peer, 'cj-own');
|
|
56
|
+
(0, unify_1.unite)(te ? ctx.clone({ explain: (0, utility_1.ec)(te, 'OWN') }) : ctx, this.peg[vI], peer, 'cj-own');
|
|
57
57
|
upeer[vI].mark.type = newtype = newtype || upeer[vI].mark.type;
|
|
58
58
|
upeer[vI].mark.hide = newhide = newhide || upeer[vI].mark.hide;
|
|
59
59
|
// let prevdone = done
|
|
@@ -94,7 +94,7 @@ class ConjunctVal extends JunctionVal_1.JunctionVal {
|
|
|
94
94
|
t0 = t1;
|
|
95
95
|
}
|
|
96
96
|
else {
|
|
97
|
-
val = (0, unify_1.unite)(ctx.clone({ explain: (0, utility_1.ec)(te, 'DEF') }), t0, t1, 'cj-peer-t0t1');
|
|
97
|
+
val = (0, unify_1.unite)(te ? ctx.clone({ explain: (0, utility_1.ec)(te, 'DEF') }) : ctx, t0, t1, 'cj-peer-t0t1');
|
|
98
98
|
// console.log('CONJUNCT-T', t0.canon, t1?.canon, '->', val.canon)
|
|
99
99
|
done = done && type_1.DONE === val.dc;
|
|
100
100
|
newtype = this.mark.type || val.mark.type;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConjunctVal.js","sourceRoot":"","sources":["../../src/val/ConjunctVal.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ConjunctVal.js","sourceRoot":"","sources":["../../src/val/ConjunctVal.ts"],"names":[],"mappings":"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"}
|