aontu 0.0.9 → 0.2.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/lib/lang.js CHANGED
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
  /* Copyright (c) 2021 Richard Rodger, MIT License */
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.Site = exports.Lang = void 0;
5
- const jsonic_1 = require("jsonic");
4
+ exports.includeFileResolver = exports.Site = exports.Lang = void 0;
5
+ const jsonic_next_1 = require("@jsonic/jsonic-next");
6
6
  const multisource_1 = require("@jsonic/multisource");
7
+ const file_1 = require("@jsonic/multisource/dist/resolver/file");
8
+ const expr_1 = require("@jsonic/expr");
7
9
  const val_1 = require("./val");
8
10
  class Site {
9
11
  constructor(val) {
@@ -22,26 +24,31 @@ Site.NONE = new Site(val_1.TOP);
22
24
  let AontuJsonic = function aontu(jsonic) {
23
25
  jsonic.options({
24
26
  value: {
25
- src: {
27
+ // JSONIC-UPDATE: map: { val: ... }
28
+ map: {
26
29
  // NOTE: specify with functions as jsonic/deep will
27
30
  // remove class prototype as options are assumed plain
28
31
  // (except for functions).
29
32
  // TODO: jsonic should be able to pass context into these
30
- 'string': () => new val_1.ScalarTypeVal(String),
31
- 'number': () => new val_1.ScalarTypeVal(Number),
32
- 'integer': () => new val_1.ScalarTypeVal(val_1.Integer),
33
- 'boolean': () => new val_1.ScalarTypeVal(Boolean),
34
- 'nil': () => new val_1.Nil('literal'),
35
- 'top': () => val_1.TOP,
33
+ 'string': { val: () => new val_1.ScalarTypeVal(String) },
34
+ 'number': { val: () => new val_1.ScalarTypeVal(Number) },
35
+ 'integer': { val: () => new val_1.ScalarTypeVal(val_1.Integer) },
36
+ 'boolean': { val: () => new val_1.ScalarTypeVal(Boolean) },
37
+ 'nil': { val: () => new val_1.Nil('literal') },
38
+ 'top': { val: () => val_1.TOP },
36
39
  }
37
40
  },
38
- token: {
39
- '#A&': { c: '&' },
40
- '#A|': { c: '|' },
41
- '#A/': { c: '/' },
42
- '#A*': { c: '*' },
43
- '#A=': { c: '=' },
44
- },
41
+ // // JSONIC-UPDATE: fixed: { token }
42
+ // fixed: {
43
+ // token: {
44
+ // '#A&': '&',
45
+ // '#A|': '|',
46
+ // '#A/': '/',
47
+ // '#A*': '*', // TODO: REVIEW char as * is a bit overloaded
48
+ // '#A=': '=',
49
+ // }
50
+ // },
51
+ // JSONIC-UPDATE: check impl
45
52
  map: {
46
53
  merge: (prev, curr) => {
47
54
  let pval = prev;
@@ -50,199 +57,238 @@ let AontuJsonic = function aontu(jsonic) {
50
57
  }
51
58
  }
52
59
  });
53
- let NR = jsonic.token.NR;
54
- let TX = jsonic.token.TX;
55
- let ST = jsonic.token.ST;
56
- let VL = jsonic.token.VL;
57
- let OB = jsonic.token.OB;
58
- let OS = jsonic.token.OS;
59
- let CJ = jsonic.token['#A&'];
60
- let DJ = jsonic.token['#A|'];
61
- let FS = jsonic.token['#A/'];
62
- let AK = jsonic.token['#A*'];
63
- let EQ = jsonic.token['#A='];
64
- jsonic.rule('expr', () => {
65
- return new jsonic_1.RuleSpec({
66
- open: [
67
- { s: [[CJ, DJ, AK]], p: 'disjunct', b: 1, n: { expr: 1 } },
68
- ],
69
- close: [
70
- { s: [] }
71
- ],
72
- // NOTE: expr node are meta structures, not Vals
73
- // t=most recent term on the left, o=Val
74
- bo: (r) => r.node = { t: r.node },
75
- ac: (r) => {
76
- let cn = r.child.node.o;
77
- if (cn instanceof val_1.PrefVal) {
78
- return { err: 'single-pref' };
79
- }
80
- // replace first val with expr val
81
- r.node = cn;
60
+ let opmap = {
61
+ 'conjunct-infix': (_op, terms) => new val_1.ConjunctVal(terms),
62
+ 'disjunct-infix': (_op, terms) => new val_1.DisjunctVal(terms),
63
+ 'dot-prefix': (_op, terms) => new val_1.RefVal(terms, true),
64
+ 'dot-infix': (_op, terms) => new val_1.RefVal(terms),
65
+ 'star-prefix': (_op, terms) => new val_1.PrefVal(terms[0]),
66
+ };
67
+ jsonic
68
+ .use(expr_1.Expr, {
69
+ op: {
70
+ // disjunct > conjunct: c & b|a -> c & (b|a)
71
+ 'conjunct': {
72
+ infix: true, src: '&', left: 14000, right: 15000
82
73
  },
83
- });
84
- });
85
- jsonic.rule('disjunct', () => {
86
- return new jsonic_1.RuleSpec({
87
- open: [
88
- {
89
- s: [CJ], p: 'conjunct', b: 1
90
- },
91
- {
92
- s: [AK], p: 'pref', b: 1
93
- },
94
- {
95
- s: [DJ, AK], p: 'pref', b: 1,
96
- a: (r) => {
97
- // Append to existing or start new
98
- r.node.o = r.node.o instanceof val_1.DisjunctVal ?
99
- r.node.o : new val_1.DisjunctVal([r.node.t]);
100
- }
101
- },
102
- {
103
- s: [DJ, [NR, TX, ST, VL, OB, OS]], b: 1,
104
- p: 'val',
105
- a: (r) => {
106
- // Append to existing or start new
107
- r.node.o = r.node.o instanceof val_1.DisjunctVal ?
108
- r.node.o : new val_1.DisjunctVal([r.node.t]);
109
- }
110
- },
111
- ],
112
- close: [
113
- {
114
- s: [DJ], r: 'disjunct', b: 1, a: (r) => {
115
- var _a;
116
- // higher precedence term (e.g &) was on the left
117
- let cn = ((_a = r.child.node) === null || _a === void 0 ? void 0 : _a.o) || r.child.node;
118
- r.node.t = cn;
119
- }
120
- },
121
- {
122
- s: [CJ], r: 'disjunct', b: 1, a: (r) => {
123
- var _a;
124
- // & with higher precedence to the right
125
- let cn = ((_a = r.child.node) === null || _a === void 0 ? void 0 : _a.o) || r.child.node;
126
- r.node.t = cn;
127
- r.child.node = null;
128
- }
129
- },
130
- {}
131
- ],
132
- ac: (r) => {
133
- var _a;
134
- // child values may be normal or expr metas
135
- let cn = ((_a = r.child.node) === null || _a === void 0 ? void 0 : _a.o) || r.child.node;
136
- if (cn) {
137
- if (r.node.o instanceof val_1.DisjunctVal) {
138
- r.node.o.append(cn);
139
- }
140
- else {
141
- // this rule was just a pass-through
142
- r.node.o = cn;
143
- }
144
- }
145
- }
146
- });
147
- });
148
- jsonic.rule('conjunct', () => {
149
- return new jsonic_1.RuleSpec({
150
- open: [
151
- {
152
- s: [CJ, [NR, TX, ST, VL, OB, OS, FS]], b: 1,
153
- p: 'val',
154
- a: (r) => {
155
- r.node = {
156
- o: r.node.o instanceof val_1.ConjunctVal ?
157
- r.node.o : new val_1.ConjunctVal([r.node.t])
158
- };
159
- }
160
- },
161
- ],
162
- close: [
163
- {
164
- s: [CJ], r: 'conjunct', b: 1
165
- },
166
- {}
167
- ],
168
- ac: (r) => {
169
- var _a;
170
- let cn = ((_a = r.child.node) === null || _a === void 0 ? void 0 : _a.o) || r.child.node;
171
- if (cn) {
172
- if (r.node.o instanceof val_1.ConjunctVal) {
173
- r.node.o.append(cn);
174
- }
175
- else {
176
- r.node.o = cn;
177
- }
178
- }
179
- }
180
- });
181
- });
182
- jsonic.rule('path', () => {
183
- return new jsonic_1.RuleSpec({
184
- open: [
185
- { s: [FS, [TX, ST, NR, VL]], p: 'part', b: 2 }
186
- ],
187
- bo: (r) => r.node = new val_1.RefVal('/')
188
- });
189
- });
190
- jsonic.rule('part', () => {
191
- return new jsonic_1.RuleSpec({
192
- open: [
193
- {
194
- s: [FS, [TX, ST, NR, VL]], r: 'part', a: (r) => {
195
- r.node.append(r.open[1].src);
196
- }
197
- },
198
- {}, // no more parts
199
- ],
200
- });
201
- });
202
- jsonic.rule('pair', (rs) => {
203
- rs.def.open.unshift({
204
- s: [[CJ, DJ], EQ], p: 'val', u: { spread: true }
205
- });
206
- // TODO: make before/after function[]
207
- let orig_bc = rs.def.bc;
208
- rs.def.bc = function (rule, ctx) {
209
- let out = orig_bc.call(this, rule, ctx);
210
- if (rule.use.spread) {
211
- rule.node[val_1.MapVal.SPREAD] =
212
- (rule.node[val_1.MapVal.SPREAD] || { o: rule.open[0].src, v: [] });
213
- rule.node[val_1.MapVal.SPREAD].v.push(rule.child.node);
214
- }
215
- return out;
216
- };
217
- return rs;
218
- });
219
- jsonic.rule('pref', () => {
220
- return new jsonic_1.RuleSpec({
221
- open: [
222
- {
223
- s: [AK, [NR, TX, ST, VL, OB, OS, FS]], b: 1,
224
- p: 'val',
225
- },
226
- ],
227
- close: [
228
- // Can't be in a conjunct
229
- { s: [CJ], e: (r) => r.open[1] },
230
- {}
231
- ],
232
- ac: (r) => {
233
- r.node = new val_1.PrefVal(r.child.node);
234
- }
235
- });
74
+ 'disjunct': {
75
+ // infix: true, src: '|', left: 14000, right: 15000
76
+ infix: true, src: '|', left: 16000, right: 17000
77
+ },
78
+ 'dot-infix': {
79
+ src: '.',
80
+ infix: true,
81
+ left: 15000000,
82
+ right: 14000000,
83
+ },
84
+ 'dot-prefix': {
85
+ src: '.',
86
+ prefix: true,
87
+ right: 14000000,
88
+ },
89
+ 'star': {
90
+ src: '*',
91
+ prefix: true,
92
+ right: 14000000,
93
+ },
94
+ },
95
+ evaluate: (op, terms) => {
96
+ // console.log('LANG EVAL', op, terms)
97
+ return opmap[op.name](op, terms);
98
+ }
236
99
  });
100
+ // console.log(jsonic.token)
101
+ let CJ = jsonic.token['#E&'];
102
+ let CL = jsonic.token.CL;
103
+ // let NR = jsonic.token.NR
104
+ // let TX = jsonic.token.TX
105
+ // let ST = jsonic.token.ST
106
+ // let VL = jsonic.token.VL
107
+ // let OB = jsonic.token.OB
108
+ // let OS = jsonic.token.OS
109
+ // let DJ = jsonic.token['#A|']
110
+ // let FS = jsonic.token['#A/']
111
+ // let AK = jsonic.token['#A*']
112
+ // let EQ = jsonic.token['#A=']
113
+ // JSONIC-UPDATE: rule.open[], rule.close[] - replace with rule.oN|cN
114
+ // jsonic.rule('expr', (rs: RuleSpec) => {
115
+ // rs
116
+ // .open([
117
+ // { s: [[CJ, DJ, AK]], p: 'disjunct', b: 1, n: { expr: 1 } },
118
+ // ])
119
+ // .close([
120
+ // { s: [] }
121
+ // ])
122
+ // // NOTE: expr node are meta structures, not Vals
123
+ // // t=most recent term on the left, o=Val
124
+ // .bo((r: Rule) => r.node = { t: r.node })
125
+ // .ac((r: Rule) => {
126
+ // let cn = r.child.node.o
127
+ // if (cn instanceof PrefVal) {
128
+ // return r.o0.bad('single-pref')
129
+ // }
130
+ // // replace first val with expr val
131
+ // r.node = cn
132
+ // if ('val' === r.parent?.name) {
133
+ // r.parent.node = r.node
134
+ // }
135
+ // })
136
+ // })
137
+ // jsonic.rule('disjunct', (rs: RuleSpec) => {
138
+ // rs
139
+ // .open([
140
+ // {
141
+ // s: [CJ], p: 'conjunct', b: 1
142
+ // },
143
+ // {
144
+ // s: [AK], p: 'pref', b: 1
145
+ // },
146
+ // {
147
+ // s: [DJ, AK], p: 'pref', b: 1,
148
+ // a: (r: Rule) => {
149
+ // // Append to existing or start new
150
+ // r.node.o = r.node.o instanceof DisjunctVal ?
151
+ // r.node.o : new DisjunctVal([r.node.t])
152
+ // }
153
+ // },
154
+ // {
155
+ // s: [DJ, [NR, TX, ST, VL, OB, OS]], b: 1,
156
+ // p: 'val',
157
+ // a: (r: Rule) => {
158
+ // // Append to existing or start new
159
+ // r.node.o = r.node.o instanceof DisjunctVal ?
160
+ // r.node.o : new DisjunctVal([r.node.t])
161
+ // }
162
+ // },
163
+ // ])
164
+ // .close([
165
+ // {
166
+ // s: [DJ], r: 'disjunct', b: 1, a: (r: Rule) => {
167
+ // // higher precedence term (e.g &) was on the left
168
+ // let cn = r.child.node?.o || r.child.node
169
+ // r.node.t = cn
170
+ // }
171
+ // },
172
+ // {
173
+ // s: [CJ], r: 'disjunct', b: 1, a: (r: Rule) => {
174
+ // // & with higher precedence to the right
175
+ // let cn = r.child.node?.o || r.child.node
176
+ // r.node.t = cn
177
+ // r.child.node = null
178
+ // }
179
+ // },
180
+ // {}
181
+ // ])
182
+ // .ac((r: Rule) => {
183
+ // // child values may be normal or expr metas
184
+ // let cn = r.child.node?.o || r.child.node
185
+ // if (cn) {
186
+ // if (r.node.o instanceof DisjunctVal) {
187
+ // r.node.o.append(cn)
188
+ // }
189
+ // else {
190
+ // // this rule was just a pass-through
191
+ // r.node.o = cn
192
+ // }
193
+ // }
194
+ // })
195
+ // })
196
+ // jsonic.rule('conjunct', (rs: RuleSpec) => {
197
+ // rs
198
+ // .open([
199
+ // {
200
+ // s: [CJ, [NR, TX, ST, VL, OB, OS, FS]], b: 1,
201
+ // p: 'val',
202
+ // a: (r: Rule) => {
203
+ // r.node = {
204
+ // o: r.node.o instanceof ConjunctVal ?
205
+ // r.node.o : new ConjunctVal([r.node.t])
206
+ // }
207
+ // }
208
+ // },
209
+ // ])
210
+ // .close([
211
+ // {
212
+ // s: [CJ], r: 'conjunct', b: 1
213
+ // },
214
+ // {}
215
+ // ])
216
+ // .ac((r: Rule) => {
217
+ // let cn = r.child.node?.o || r.child.node
218
+ // if (cn) {
219
+ // if (r.node.o instanceof ConjunctVal) {
220
+ // r.node.o.append(cn)
221
+ // }
222
+ // else {
223
+ // r.node.o = cn
224
+ // }
225
+ // }
226
+ // })
227
+ // })
228
+ // jsonic.rule('path', (rs: RuleSpec) => {
229
+ // rs
230
+ // .open([
231
+ // { s: [FS, [TX, ST, NR, VL]], p: 'part', b: 2 }
232
+ // ])
233
+ // .bo((r: Rule) => r.node = new RefVal('/'))
234
+ // })
235
+ // jsonic.rule('part', (rs: RuleSpec) => {
236
+ // rs.
237
+ // open([
238
+ // {
239
+ // s: [FS, [TX, ST, NR, VL]], r: 'part', a: (r: Rule) => {
240
+ // r.node.append(r.o1.src)
241
+ // }
242
+ // },
243
+ // {}, // no more parts
244
+ // ])
245
+ // })
246
+ // // rs.def.open.unshift({
247
+ // // s: [[CJ, DJ], EQ], p: 'val', u: { spread: true }
248
+ // // })
249
+ // // // TODO: make before/after function[]
250
+ // // let orig_bc: any = rs.def.bc
251
+ // // rs.def.bc = function(rule: Rule, ctx: Context) {
252
+ // // let out = orig_bc.call(this, rule, ctx)
253
+ // // if (rule.use.spread) {
254
+ // // rule.node[MapVal.SPREAD] =
255
+ // // (rule.node[MapVal.SPREAD] || { o: rule.o0.src, v: [] })
256
+ // // rule.node[MapVal.SPREAD].v.push(rule.child.node)
257
+ // // }
258
+ // // return out
259
+ // // }
260
+ // return rs
261
+ // })
262
+ // jsonic.rule('pref', (rs: RuleSpec) => {
263
+ // rs
264
+ // .open([
265
+ // {
266
+ // s: [AK, [NR, TX, ST, VL, OB, OS, FS]], b: 1,
267
+ // p: 'val',
268
+ // },
269
+ // ])
270
+ // .close([
271
+ // // Can't be in a conjunct
272
+ // { s: [CJ], e: (r: Rule) => r.o1 },
273
+ // {}
274
+ // ])
275
+ // .ac((r: Rule) => {
276
+ // r.node = new PrefVal(r.child.node)
277
+ // })
278
+ // })
237
279
  jsonic.rule('val', (rs) => {
238
- rs.def.open.unshift(
239
- // Prefs are always within an expression
240
- { s: [AK, [NR, TX, ST, VL, OB, OS, FS]], p: 'expr', b: 2 }, { s: [FS, [TX, ST, NR, VL]], p: 'path', b: 2 });
241
- rs.def.close.unshift({
242
- s: [[CJ, DJ]], p: 'expr', b: 1, c: (r) => {
243
- return null == r.n.expr || 0 === r.n.expr;
244
- }
245
- });
280
+ // rs.def.open.unshift(
281
+ // // Prefs are always within an expression
282
+ // { s: [AK, [NR, TX, ST, VL, OB, OS, FS]], p: 'expr', b: 2 },
283
+ // { s: [FS, [TX, ST, NR, VL]], p: 'path', b: 2 },
284
+ // )
285
+ // rs.def.close.unshift(
286
+ // {
287
+ // s: [[CJ, DJ]], p: 'expr', b: 1, c: (r: Rule) => {
288
+ // return null == r.n.expr || 0 === r.n.expr
289
+ // }
290
+ // },
291
+ // )
246
292
  // TODO: wrap utility needed for jsonic to do this?
247
293
  let orig_bc = rs.def.bc;
248
294
  rs.def.bc = function (rule, ctx) {
@@ -263,11 +309,11 @@ let AontuJsonic = function aontu(jsonic) {
263
309
  else if ('boolean' === valtype) {
264
310
  valnode = new val_1.BooleanVal(rule.node);
265
311
  }
266
- let st = rule.open[0];
267
- valnode.row = st.row;
268
- valnode.col = st.col;
312
+ let st = rule.o0;
313
+ valnode.row = st.rI;
314
+ valnode.col = st.cI;
315
+ // JSONIC-UPDATE: still valid? check multisource
269
316
  valnode.url = ctx.meta.multisource && ctx.meta.multisource.path;
270
- // console.log('VAL META', valnode.canon, valnode.url)
271
317
  rule.node = valnode;
272
318
  return out;
273
319
  };
@@ -282,7 +328,26 @@ let AontuJsonic = function aontu(jsonic) {
282
328
  };
283
329
  return rs;
284
330
  });
331
+ jsonic.rule('pair', (rs) => {
332
+ let orig_bc = rs.def.bc;
333
+ rs
334
+ .open([{ s: [CJ, CL], p: 'val', u: { spread: true }, g: 'spread' }])
335
+ .bc((...rest) => {
336
+ orig_bc(...rest);
337
+ let rule = rest[0];
338
+ if (rule.use.spread) {
339
+ rule.node[val_1.MapVal.SPREAD] =
340
+ (rule.node[val_1.MapVal.SPREAD] || { o: rule.o0.src, v: [] });
341
+ rule.node[val_1.MapVal.SPREAD].v.push(rule.child.node);
342
+ }
343
+ });
344
+ return rs;
345
+ });
285
346
  };
347
+ const includeFileResolver = (0, file_1.makeFileResolver)((spec) => {
348
+ return 'string' === typeof spec ? spec : spec === null || spec === void 0 ? void 0 : spec.peg;
349
+ });
350
+ exports.includeFileResolver = includeFileResolver;
286
351
  class Lang {
287
352
  constructor(options) {
288
353
  this.options = {
@@ -290,14 +355,14 @@ class Lang {
290
355
  print: -1,
291
356
  };
292
357
  this.options = Object.assign({}, this.options, options);
293
- this.jsonic = jsonic_1.Jsonic.make()
358
+ this.jsonic = jsonic_next_1.Jsonic.make()
294
359
  .use(AontuJsonic)
295
360
  .use(multisource_1.MultiSource, {
296
- resolver: options ? options.resolver : undefined
361
+ resolver: (options === null || options === void 0 ? void 0 : options.resolver) || includeFileResolver
297
362
  });
298
- // console.log('AL options', this.options)
299
363
  }
300
364
  parse(src, opts) {
365
+ // JSONIC-UPDATE - check meta
301
366
  let jm = {
302
367
  multisource: {
303
368
  // NOTE: multisource has property `path` NOT `base`
@@ -309,7 +374,6 @@ class Lang {
309
374
  if (opts && null != opts.log && Number.isInteger(opts.log)) {
310
375
  jm.log = opts.log;
311
376
  }
312
- // console.log('ALp jm', jm)
313
377
  let val = this.jsonic(src, jm);
314
378
  return val;
315
379
  }
@@ -1 +1 @@
1
- {"version":3,"file":"lang.js","sourceRoot":"","sources":["../../lib/lang.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lang.js","sourceRoot":"","sources":["../../lib/lang.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAEpD,qDAM4B;AAE5B,qDAE4B;AAE5B,iEAE+C;AAE/C,uCAGqB;AAQrB,+BAec;AAId,MAAM,IAAI;IAOR,YAAY,GAAQ;QANpB,QAAG,GAAW,CAAC,CAAC,CAAA;QAChB,QAAG,GAAW,CAAC,CAAC,CAAA;QAChB,QAAG,GAAW,EAAE,CAAA;QAKd,iEAAiE;QACjE,gCAAgC;QAChC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAA;QAClB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAA;QAClB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAA;IACpB,CAAC;;AAwbD,oBAAI;AAhcG,SAAI,GAAG,IAAI,IAAI,CAAC,SAAG,CAAC,CAAA;AAc7B,IAAI,WAAW,GAAW,SAAS,KAAK,CAAC,MAAc;IAErD,MAAM,CAAC,OAAO,CAAC;QACb,KAAK,EAAE;YACL,mCAAmC;YACnC,GAAG,EAAE;gBACH,mDAAmD;gBACnD,sDAAsD;gBACtD,0BAA0B;gBAC1B,yDAAyD;gBACzD,QAAQ,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,mBAAa,CAAC,MAAM,CAAC,EAAE;gBAClD,QAAQ,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,mBAAa,CAAC,MAAM,CAAC,EAAE;gBAClD,SAAS,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,mBAAa,CAAC,aAAO,CAAC,EAAE;gBACpD,SAAS,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,mBAAa,CAAC,OAAO,CAAC,EAAE;gBACpD,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,SAAG,CAAC,SAAS,CAAC,EAAE;gBACxC,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,SAAG,EAAE;aAC1B;SACF;QAED,qCAAqC;QACrC,WAAW;QACX,aAAa;QACb,kBAAkB;QAClB,kBAAkB;QAClB,kBAAkB;QAClB,gEAAgE;QAChE,kBAAkB;QAClB,MAAM;QACN,KAAK;QAEL,4BAA4B;QAC5B,GAAG,EAAE;YACH,KAAK,EAAE,CAAC,IAAS,EAAE,IAAS,EAAE,EAAE;gBAC9B,IAAI,IAAI,GAAI,IAAY,CAAA;gBACxB,IAAI,IAAI,GAAI,IAAY,CAAA;gBACxB,OAAO,IAAI,iBAAW,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;YACtC,CAAC;SACF;KACF,CAAC,CAAA;IAGF,IAAI,KAAK,GAAQ;QACf,gBAAgB,EAAE,CAAC,GAAO,EAAE,KAAU,EAAE,EAAE,CAAC,IAAI,iBAAW,CAAC,KAAK,CAAC;QACjE,gBAAgB,EAAE,CAAC,GAAO,EAAE,KAAU,EAAE,EAAE,CAAC,IAAI,iBAAW,CAAC,KAAK,CAAC;QAEjE,YAAY,EAAE,CAAC,GAAO,EAAE,KAAU,EAAE,EAAE,CAAC,IAAI,YAAM,CAAC,KAAK,EAAE,IAAI,CAAC;QAC9D,WAAW,EAAE,CAAC,GAAO,EAAE,KAAU,EAAE,EAAE,CAAC,IAAI,YAAM,CAAC,KAAK,CAAC;QAEvD,aAAa,EAAE,CAAC,GAAO,EAAE,KAAU,EAAE,EAAE,CAAC,IAAI,aAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KAC9D,CAAA;IAGD,MAAM;SACH,GAAG,CAAC,WAAI,EAAE;QACT,EAAE,EAAE;YACF,4CAA4C;YAC5C,UAAU,EAAE;gBACV,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK;aACjD;YACD,UAAU,EAAE;gBACV,mDAAmD;gBACnD,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK;aACjD;YAED,WAAW,EAAE;gBACX,GAAG,EAAE,GAAG;gBACR,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,QAAU;gBAChB,KAAK,EAAE,QAAU;aAClB;YACD,YAAY,EAAE;gBACZ,GAAG,EAAE,GAAG;gBACR,MAAM,EAAE,IAAI;gBACZ,KAAK,EAAE,QAAU;aAClB;YAED,MAAM,EAAE;gBACN,GAAG,EAAE,GAAG;gBACR,MAAM,EAAE,IAAI;gBACZ,KAAK,EAAE,QAAU;aAClB;SACF;QACD,QAAQ,EAAE,CAAC,EAAM,EAAE,KAAU,EAAE,EAAE;YAC/B,sCAAsC;YACtC,OAAO,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;QAClC,CAAC;KACF,CAAC,CAAA;IAEJ,4BAA4B;IAC5B,IAAI,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IAC5B,IAAI,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAA;IAExB,2BAA2B;IAC3B,2BAA2B;IAC3B,2BAA2B;IAC3B,2BAA2B;IAC3B,2BAA2B;IAC3B,2BAA2B;IAG3B,+BAA+B;IAC/B,+BAA+B;IAC/B,+BAA+B;IAC/B,+BAA+B;IAG/B,qEAAqE;IAErE,0CAA0C;IAC1C,OAAO;IACP,cAAc;IACd,oEAAoE;IACpE,SAAS;IAET,eAAe;IACf,kBAAkB;IAClB,SAAS;IAET,uDAAuD;IACvD,+CAA+C;IAC/C,+CAA+C;IAE/C,yBAAyB;IACzB,gCAAgC;IAEhC,qCAAqC;IACrC,yCAAyC;IACzC,UAAU;IAEV,2CAA2C;IAC3C,oBAAoB;IAEpB,wCAAwC;IACxC,iCAAiC;IACjC,UAAU;IACV,SAAS;IAET,KAAK;IAGL,8CAA8C;IAC9C,OAAO;IACP,cAAc;IACd,UAAU;IACV,uCAAuC;IACvC,WAAW;IACX,UAAU;IACV,mCAAmC;IACnC,WAAW;IACX,UAAU;IACV,wCAAwC;IACxC,4BAA4B;IAC5B,+CAA+C;IAC/C,yDAAyD;IACzD,qDAAqD;IACrD,YAAY;IACZ,WAAW;IACX,UAAU;IACV,mDAAmD;IACnD,oBAAoB;IACpB,4BAA4B;IAC5B,+CAA+C;IAC/C,yDAAyD;IACzD,qDAAqD;IACrD,YAAY;IACZ,WAAW;IACX,SAAS;IAET,eAAe;IACf,UAAU;IACV,0DAA0D;IAC1D,8DAA8D;IAC9D,qDAAqD;IACrD,0BAA0B;IAC1B,YAAY;IACZ,WAAW;IACX,UAAU;IACV,0DAA0D;IAC1D,qDAAqD;IACrD,qDAAqD;IACrD,0BAA0B;IAC1B,gCAAgC;IAChC,YAAY;IACZ,WAAW;IACX,WAAW;IACX,SAAS;IACT,yBAAyB;IACzB,oDAAoD;IACpD,iDAAiD;IACjD,kBAAkB;IAClB,iDAAiD;IACjD,gCAAgC;IAChC,YAAY;IACZ,iBAAiB;IACjB,iDAAiD;IACjD,0BAA0B;IAC1B,YAAY;IACZ,UAAU;IACV,SAAS;IACT,KAAK;IAIL,8CAA8C;IAC9C,OAAO;IACP,cAAc;IACd,UAAU;IACV,uDAAuD;IACvD,oBAAoB;IACpB,4BAA4B;IAC5B,uBAAuB;IACvB,mDAAmD;IACnD,uDAAuD;IACvD,cAAc;IACd,YAAY;IACZ,WAAW;IACX,SAAS;IACT,eAAe;IACf,UAAU;IACV,uCAAuC;IACvC,WAAW;IACX,WAAW;IACX,SAAS;IACT,yBAAyB;IACzB,iDAAiD;IACjD,kBAAkB;IAClB,iDAAiD;IACjD,gCAAgC;IAChC,YAAY;IACZ,iBAAiB;IACjB,0BAA0B;IAC1B,YAAY;IACZ,UAAU;IACV,SAAS;IACT,KAAK;IAGL,0CAA0C;IAC1C,OAAO;IACP,cAAc;IACd,uDAAuD;IACvD,SAAS;IACT,iDAAiD;IACjD,KAAK;IAGL,0CAA0C;IAC1C,QAAQ;IACR,aAAa;IACb,UAAU;IACV,kEAAkE;IAClE,oCAAoC;IACpC,YAAY;IACZ,WAAW;IACX,6BAA6B;IAC7B,SAAS;IACT,KAAK;IAIL,6BAA6B;IAC7B,0DAA0D;IAC1D,UAAU;IAEV,6CAA6C;IAC7C,oCAAoC;IACpC,wDAAwD;IACxD,iDAAiD;IAEjD,gCAAgC;IAChC,sCAAsC;IACtC,qEAAqE;IACrE,4DAA4D;IAC5D,WAAW;IAEX,oBAAoB;IACpB,SAAS;IAET,cAAc;IACd,KAAK;IAGL,0CAA0C;IAC1C,OAAO;IACP,cAAc;IACd,UAAU;IACV,uDAAuD;IACvD,oBAAoB;IACpB,WAAW;IACX,SAAS;IACT,eAAe;IACf,kCAAkC;IAClC,2CAA2C;IAC3C,WAAW;IACX,SAAS;IACT,yBAAyB;IACzB,2CAA2C;IAC3C,SAAS;IACT,KAAK;IAIL,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAY,EAAE,EAAE;QAClC,uBAAuB;QACvB,6CAA6C;QAC7C,gEAAgE;QAChE,oDAAoD;QACpD,IAAI;QACJ,wBAAwB;QACxB,MAAM;QACN,wDAAwD;QACxD,kDAAkD;QAClD,QAAQ;QACR,OAAO;QACP,IAAI;QAGJ,mDAAmD;QACnD,IAAI,OAAO,GAAQ,EAAE,CAAC,GAAG,CAAC,EAAE,CAAA;QAC5B,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,UAAS,IAAU,EAAE,GAAY;YAC3C,IAAI,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;YAEvC,IAAI,OAAO,GAAQ,IAAI,CAAC,IAAI,CAAA;YAC5B,IAAI,OAAO,GAAG,OAAO,OAAO,CAAA;YAE5B,IAAI,QAAQ,KAAK,OAAO,EAAE;gBACxB,OAAO,GAAG,IAAI,eAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;aACnC;iBACI,IAAI,QAAQ,KAAK,OAAO,EAAE;gBAC7B,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;oBAC/B,OAAO,GAAG,IAAI,gBAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;iBACpC;qBACI;oBACH,OAAO,GAAG,IAAI,eAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;iBACnC;aACF;iBACI,IAAI,SAAS,KAAK,OAAO,EAAE;gBAC9B,OAAO,GAAG,IAAI,gBAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;aACpC;YAED,IAAI,EAAE,GAAG,IAAI,CAAC,EAAE,CAAA;YAChB,OAAO,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,CAAA;YACnB,OAAO,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,CAAA;YAEnB,gDAAgD;YAChD,OAAO,CAAC,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAA;YAE/D,IAAI,CAAC,IAAI,GAAG,OAAO,CAAA;YAEnB,OAAO,GAAG,CAAA;QACZ,CAAC,CAAA;QACD,OAAO,EAAE,CAAA;IACX,CAAC,CAAC,CAAA;IAIF,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAY,EAAE,EAAE;QAClC,IAAI,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAA;QACvB,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,UAAS,IAAU,EAAE,GAAY;YAC3C,IAAI,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YAE7D,IAAI,CAAC,IAAI,GAAG,IAAI,YAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAEjC,OAAO,GAAG,CAAA;QACZ,CAAC,CAAA;QACD,OAAO,EAAE,CAAA;IACX,CAAC,CAAC,CAAA;IAGF,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAY,EAAE,EAAE;QACnC,IAAI,OAAO,GAAQ,EAAE,CAAC,GAAG,CAAC,EAAE,CAAA;QAC5B,EAAE;aACC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;aACnE,EAAE,CAAC,CAAC,GAAG,IAAS,EAAE,EAAE;YACnB,OAAO,CAAC,GAAG,IAAI,CAAC,CAAA;YAEhB,IAAI,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;YAClB,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE;gBACnB,IAAI,CAAC,IAAI,CAAC,YAAM,CAAC,MAAM,CAAC;oBACtB,CAAC,IAAI,CAAC,IAAI,CAAC,YAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;gBACzD,IAAI,CAAC,IAAI,CAAC,YAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;aACjD;QACH,CAAC,CAAC,CAAA;QACJ,OAAO,EAAE,CAAA;IACX,CAAC,CAAC,CAAA;AAEJ,CAAC,CAAA;AAGD,MAAM,mBAAmB,GAAG,IAAA,uBAAgB,EAAC,CAAC,IAAS,EAAE,EAAE;IACzD,OAAO,QAAQ,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,GAAG,CAAA;AACpD,CAAC,CAAC,CAAA;AA4CA,kDAAmB;AAzCrB,MAAM,IAAI;IAOR,YAAY,OAA0B;QALtC,YAAO,GAAY;YACjB,GAAG,EAAE,EAAE;YACP,KAAK,EAAE,CAAC,CAAC;SACV,CAAA;QAGC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACvD,IAAI,CAAC,MAAM,GAAG,oBAAM,CAAC,IAAI,EAAE;aACxB,GAAG,CAAC,WAAW,CAAC;aAChB,GAAG,CAAC,yBAAW,EAAE;YAChB,QAAQ,EAAE,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,KAAI,mBAAmB;SACnD,CAAC,CAAA;IACN,CAAC;IAED,KAAK,CAAC,GAAW,EAAE,IAAU;QAE3B,6BAA6B;QAC7B,IAAI,EAAE,GAAQ;YACZ,WAAW,EAAE;gBACX,mDAAmD;gBACnD,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;gBACvB,IAAI,EAAE,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,SAAS;aACvC;SACF,CAAA;QAED,sCAAsC;QACtC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,GAAG,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YAC1D,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAA;SAClB;QAED,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;QAE9B,OAAO,GAAG,CAAA;IACZ,CAAC;CACF;AAGC,oBAAI"}
@@ -2,5 +2,5 @@ import { Context } from '../unify';
2
2
  import { Val } from '../val';
3
3
  import { disjunct } from './disjunct';
4
4
  import { unite } from './unite';
5
- declare type Operation = (ctx: Context, a?: Val, b?: Val) => Val;
5
+ declare type Operation = (ctx: Context, a?: Val, b?: Val, whence?: string) => Val;
6
6
  export { Operation, disjunct, unite, };
@@ -5,9 +5,11 @@ exports.unite = void 0;
5
5
  const val_1 = require("../val");
6
6
  // Vals should only have to unify downwards (in .unify) over Vals they understand.
7
7
  // and for complex Vals, TOP, which means self unify if not yet done
8
- const unite = (ctx, a, b) => {
8
+ const unite = (ctx, a, b, whence) => {
9
9
  let out = a;
10
- //console.log('Ua', a && a.canon, b && b.canon)
10
+ // console.log('AA OP unite IN', a?.canon, b?.canon,
11
+ // 'W', whence,
12
+ // 'E', 0 < ctx?.err?.length ? ctx.err.map((e: Val) => e.canon) : '')
11
13
  if (b && (val_1.TOP === a || !a)) {
12
14
  //console.log('Utb', b.canon)
13
15
  out = b;
@@ -30,6 +32,7 @@ const unite = (ctx, a, b) => {
30
32
  //console.log('U', a.canon, b.canon)
31
33
  return b.unify(a, ctx);
32
34
  }
35
+ // Exactly equal scalars.
33
36
  else if (a.constructor === b.constructor && a.peg === b.peg) {
34
37
  out = update(a, b);
35
38
  }
@@ -43,6 +46,8 @@ const unite = (ctx, a, b) => {
43
46
  if (val_1.DONE !== out.done) {
44
47
  out = out.unify(val_1.TOP, ctx);
45
48
  }
49
+ // console.log('AA OP unite OUT', a?.canon, b?.canon, '->', out && out.canon,
50
+ // 0 < ctx?.err?.length ? ctx.err.map((e: Val) => e.canon) : '')
46
51
  return out;
47
52
  };
48
53
  exports.unite = unite;
@@ -1 +1 @@
1
- {"version":3,"file":"unite.js","sourceRoot":"","sources":["../../../lib/op/unite.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAKpD,gCAUe;AAIf,kFAAkF;AAClF,oEAAoE;AACpE,MAAM,KAAK,GAAc,CAAC,GAAY,EAAE,CAAO,EAAE,CAAO,EAAE,EAAE;IAC1D,IAAI,GAAG,GAAG,CAAC,CAAA;IAEX,+CAA+C;IAE/C,IAAI,CAAC,IAAI,CAAC,SAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;QAC1B,6BAA6B;QAC7B,GAAG,GAAG,CAAC,CAAA;KACR;SAEI,IAAI,CAAC,IAAI,CAAC,SAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;QAC/B,6BAA6B;QAC7B,GAAG,GAAG,CAAC,CAAA;KACR;SAEI,IAAI,CAAC,IAAI,CAAC,IAAI,SAAG,KAAK,CAAC,EAAE;QAC5B,IAAI,CAAC,YAAY,SAAG,EAAE;YACpB,GAAG,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;SACnB;aACI,IAAI,CAAC,YAAY,SAAG,EAAE;YACzB,GAAG,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;SACnB;aACI,IACH,CAAC,YAAY,iBAAW;YACxB,CAAC,YAAY,iBAAW;YACxB,CAAC,YAAY,YAAM;YACnB,CAAC,YAAY,aAAO,EACpB;YAEA,oCAAoC;YACpC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;SACvB;aACI,IAAI,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,EAAE;YAC3D,GAAG,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;SACnB;aACI;YACH,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;SACtB;KACF;IAED,IAAI,CAAC,GAAG,EAAE;QACR,GAAG,GAAG,SAAG,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;KACnC;IAED,IAAI,UAAI,KAAK,GAAG,CAAC,IAAI,EAAE;QACrB,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,SAAG,EAAE,GAAG,CAAC,CAAA;KAC1B;IAED,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA;AAUC,sBAAK;AAPP,SAAS,MAAM,CAAC,CAAM,EAAE,EAAO;IAC7B,6BAA6B;IAC7B,OAAO,CAAC,CAAA;AACV,CAAC"}
1
+ {"version":3,"file":"unite.js","sourceRoot":"","sources":["../../../lib/op/unite.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAKpD,gCASe;AAIf,kFAAkF;AAClF,oEAAoE;AACpE,MAAM,KAAK,GAAc,CAAC,GAAY,EAAE,CAAO,EAAE,CAAO,EAAE,MAAe,EAAE,EAAE;IAC3E,IAAI,GAAG,GAAG,CAAC,CAAA;IAEX,qDAAqD;IACrD,iBAAiB;IACjB,uEAAuE;IAGvE,IAAI,CAAC,IAAI,CAAC,SAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;QAC1B,6BAA6B;QAC7B,GAAG,GAAG,CAAC,CAAA;KACR;SAEI,IAAI,CAAC,IAAI,CAAC,SAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;QAC/B,6BAA6B;QAC7B,GAAG,GAAG,CAAC,CAAA;KACR;SAEI,IAAI,CAAC,IAAI,CAAC,IAAI,SAAG,KAAK,CAAC,EAAE;QAC5B,IAAI,CAAC,YAAY,SAAG,EAAE;YACpB,GAAG,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;SACnB;aACI,IAAI,CAAC,YAAY,SAAG,EAAE;YACzB,GAAG,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;SACnB;aACI,IACH,CAAC,YAAY,iBAAW;YACxB,CAAC,YAAY,iBAAW;YACxB,CAAC,YAAY,YAAM;YACnB,CAAC,YAAY,aAAO,EACpB;YAEA,oCAAoC;YACpC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;SACvB;QAED,yBAAyB;aACpB,IAAI,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,EAAE;YAC3D,GAAG,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;SACnB;aAEI;YACH,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;SACtB;KACF;IAED,IAAI,CAAC,GAAG,EAAE;QACR,GAAG,GAAG,SAAG,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;KACnC;IAED,IAAI,UAAI,KAAK,GAAG,CAAC,IAAI,EAAE;QACrB,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,SAAG,EAAE,GAAG,CAAC,CAAA;KAC1B;IAED,6EAA6E;IAC7E,kEAAkE;IAElE,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA;AAUC,sBAAK;AAPP,SAAS,MAAM,CAAC,CAAM,EAAE,EAAO;IAC7B,6BAA6B;IAC7B,OAAO,CAAC,CAAA;AACV,CAAC"}
@@ -12,8 +12,9 @@ declare class Context {
12
12
  vc?: number;
13
13
  });
14
14
  clone(cfg: {
15
- root: Val;
15
+ root?: Val;
16
16
  path?: Path;
17
+ err?: Nil[];
17
18
  }): Context;
18
19
  descend(key: string): Context;
19
20
  find(ref: RefVal): MapVal | undefined;