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/aontu.ts +11 -12
- package/dist/aontu.d.ts +3 -3
- package/dist/aontu.js +11 -8
- package/dist/aontu.js.map +1 -1
- package/dist/aontu.min.js +63 -1
- package/dist/lib/lang.d.ts +3 -2
- package/dist/lib/lang.js +278 -214
- package/dist/lib/lang.js.map +1 -1
- package/dist/lib/op/op.d.ts +1 -1
- package/dist/lib/op/unite.js +7 -2
- package/dist/lib/op/unite.js.map +1 -1
- package/dist/lib/unify.d.ts +2 -1
- package/dist/lib/unify.js +3 -4
- package/dist/lib/unify.js.map +1 -1
- package/dist/lib/val.d.ts +4 -3
- package/dist/lib/val.js +46 -33
- package/dist/lib/val.js.map +1 -1
- package/lib/lang.ts +319 -230
- package/lib/op/op.ts +2 -1
- package/lib/op/unite.ts +11 -3
- package/lib/unify.ts +5 -8
- package/lib/val.ts +53 -31
- package/package.json +14 -11
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
|
|
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
|
-
|
|
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
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
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
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
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
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
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 },
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
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.
|
|
267
|
-
valnode.row = st.
|
|
268
|
-
valnode.col = st.
|
|
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 =
|
|
358
|
+
this.jsonic = jsonic_next_1.Jsonic.make()
|
|
294
359
|
.use(AontuJsonic)
|
|
295
360
|
.use(multisource_1.MultiSource, {
|
|
296
|
-
resolver: options ? options.resolver
|
|
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
|
}
|
package/dist/lib/lang.js.map
CHANGED
|
@@ -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":"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"}
|
package/dist/lib/op/op.d.ts
CHANGED
|
@@ -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, };
|
package/dist/lib/op/unite.js
CHANGED
|
@@ -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('
|
|
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;
|
package/dist/lib/op/unite.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unite.js","sourceRoot":"","sources":["../../../lib/op/unite.ts"],"names":[],"mappings":";AAAA,oDAAoD;;;AAKpD,
|
|
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"}
|