@fraczak/k 2.1.6 → 3.0.2
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/BIG_PICTURE.md +211 -0
- package/Code-derivation-tests/bnat.mjs +10 -0
- package/Code-derivation-tests/built-in.mjs +19 -0
- package/Code-derivation-tests/dot.mjs +15 -0
- package/Code-derivation-tests/index.mjs +20 -0
- package/Code-derivation-tests/loop.mjs +11 -0
- package/Code-derivation-tests/nat.mjs +10 -0
- package/Code-derivation-tests/not-not.mjs +14 -0
- package/Code-derivation-tests/product.mjs +21 -0
- package/Code-derivation-tests/rlz.mjs +14 -0
- package/Code-derivation-tests/vector.mjs +28 -0
- package/INTRO.md +88 -0
- package/README.md +68 -14
- package/TODO.md +54 -0
- package/TYPES.md +32 -0
- package/bug.json +419 -0
- package/chatGPT.md +235 -0
- package/chatGPT.md~ +119 -0
- package/code-resolution.md +121 -0
- package/code-resolution.mjs +51 -0
- package/codes.mjs +59 -4
- package/filters.mjs +59 -0
- package/hash.mjs +39 -0
- package/index.mjs +55 -12
- package/package.json +2 -2
- package/parser.jison +111 -44
- package/parser.mjs +146 -88
- package/patterns.mjs +601 -0
- package/pretty.mjs +27 -0
- package/repl.mjs +35 -6
- package/run.mjs +4 -1
- package/symbol-table.mjs +1 -1
- package/test-filters.mjs +45 -0
- package/test-fingerprint.mjs +38 -0
- package/test.mjs +1 -43
package/parser.mjs
CHANGED
|
@@ -77,6 +77,16 @@
|
|
|
77
77
|
|
|
78
78
|
import s from "./symbol-table.mjs";
|
|
79
79
|
|
|
80
|
+
function getToken(yytext,yy,lstack) {
|
|
81
|
+
const yylloc = yy.lexer.yylloc;
|
|
82
|
+
const loc = lstack[lstack.length - 1]; // { first_line: 5, last_line: 5, first_column: 2, last_column: 3 };
|
|
83
|
+
const start = {line: loc.first_line, column: loc.first_column + 1};
|
|
84
|
+
const end = {line: start.line, column: start.column + yytext.length};
|
|
85
|
+
const result = {start,end,value: String(yytext)};
|
|
86
|
+
// console.log(result);
|
|
87
|
+
return result;
|
|
88
|
+
}
|
|
89
|
+
|
|
80
90
|
function fromEscString(escString) {
|
|
81
91
|
const isSingleQuoted = escString.startsWith("'");
|
|
82
92
|
let str = escString.substring(1, escString.length - 1);
|
|
@@ -100,139 +110,183 @@ function fromEscString(escString) {
|
|
|
100
110
|
|
|
101
111
|
|
|
102
112
|
var parser = (function(){
|
|
103
|
-
var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[4,6,8,
|
|
113
|
+
var o=function(k,v,o,l){for(o=o||{},l=k.length;l--;o[k[l]]=v);return o},$V0=[4,6,8,10,12,14,16,30,38,40,58],$V1=[1,7],$V2=[1,22],$V3=[1,23],$V4=[1,20],$V5=[1,18],$V6=[1,19],$V7=[1,21],$V8=[1,24],$V9=[1,8],$Va=[1,25],$Vb=[1,17],$Vc=[1,28],$Vd=[4,6,8,10,12,14,16,30,38,40,44,55,58],$Ve=[2,62],$Vf=[1,32],$Vg=[4,6,8,10,12,14,16,18,20,22,24,30,32,34,38,40,44,55,58],$Vh=[2,83],$Vi=[1,52],$Vj=[2,65],$Vk=[2,66],$Vl=[4,6,8,10,12,14,16,18,20,22,24,30,32,34,36,38,40,44,55,58],$Vm=[4,6,8],$Vn=[2,24],$Vo=[2,29],$Vp=[1,76],$Vq=[1,78],$Vr=[20,32],$Vs=[4,6,8,10,12,14,16,30,38,40,55,58],$Vt=[1,83],$Vu=[1,87],$Vv=[18,22,32],$Vw=[1,90],$Vx=[2,39],$Vy=[2,45],$Vz=[1,101],$VA=[18,20,32],$VB=[2,77],$VC=[2,78],$VD=[2,79],$VE=[18,20,24,32];
|
|
104
114
|
var parser = {trace: function trace () { },
|
|
105
115
|
yy: {},
|
|
106
|
-
symbols_: {"error":2,"name":3,"NAME":4,"str":5,"STRING":6,"int":7,"INT":8,"
|
|
107
|
-
terminals_: {2:"error",4:"NAME",6:"STRING",8:"INT",
|
|
108
|
-
productions_: [0,[3,1],[5,1],[7,1],[9,3],[
|
|
116
|
+
symbols_: {"error":2,"name":3,"NAME":4,"str":5,"STRING":6,"int":7,"INT":8,"la":9,"LA":10,"lc":11,"LC":12,"lb":13,"LB":14,"lp":15,"LP":16,"ra":17,"RA":18,"rc":19,"RC":20,"rb":21,"RB":22,"rp":23,"RP":24,"eq":25,"EQ":26,"dots":27,"DOTS":28,"dot":29,"DOT":30,"comma":31,"COMMA":32,"sc":33,"SC":34,"col":35,"COL":36,"dollar":37,"DOLLAR":38,"qmark":39,"QMARK":40,"input_with_eof":41,"defs":42,"comp":43,"EOF":44,"codeDef":45,"code":46,"labelled_codes":47,"non_empty_labelled_codes":48,"code_label":49,"filter":50,"labelled_filters":51,"non_empty_labelled_filters":52,"filter_label":53,"exp":54,"CARET":55,"labelled":56,"list":57,"PIPE":58,"non_empty_labelled":59,"comp_label":60,"non_empty_list":61,"$accept":0,"$end":1},
|
|
117
|
+
terminals_: {2:"error",4:"NAME",6:"STRING",8:"INT",10:"LA",12:"LC",14:"LB",16:"LP",18:"RA",20:"RC",22:"RB",24:"RP",26:"EQ",28:"DOTS",30:"DOT",32:"COMMA",34:"SC",36:"COL",38:"DOLLAR",40:"QMARK",44:"EOF",55:"CARET",58:"PIPE"},
|
|
118
|
+
productions_: [0,[3,1],[5,1],[7,1],[9,1],[11,1],[13,1],[15,1],[17,1],[19,1],[21,1],[23,1],[25,1],[27,1],[29,1],[31,1],[33,1],[35,1],[37,1],[39,1],[41,3],[42,0],[42,5],[42,6],[46,1],[46,1],[45,3],[45,3],[45,3],[47,0],[47,1],[48,1],[48,3],[49,2],[49,2],[49,2],[49,3],[49,3],[49,3],[50,1],[50,2],[50,3],[50,3],[50,3],[50,3],[51,0],[51,1],[52,1],[52,3],[53,1],[53,2],[53,2],[53,2],[53,3],[53,3],[53,3],[43,1],[43,2],[43,2],[54,3],[54,3],[54,3],[54,1],[54,2],[54,3],[54,1],[54,1],[54,2],[54,2],[54,2],[54,2],[54,2],[54,1],[56,0],[56,1],[59,1],[59,3],[60,2],[60,2],[60,2],[60,3],[60,3],[60,3],[57,0],[57,1],[61,1],[61,3]],
|
|
109
119
|
performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate /* action[1] */, $$ /* vstack */, _$ /* lstack */) {
|
|
110
120
|
/* this == yyval */
|
|
111
121
|
|
|
112
122
|
var $0 = $$.length - 1;
|
|
113
123
|
switch (yystate) {
|
|
114
|
-
case 1:
|
|
115
|
-
this.$ =
|
|
124
|
+
case 1: case 4: case 5: case 6: case 7: case 8: case 9: case 10: case 11: case 12: case 13: case 14: case 15: case 16: case 17: case 18: case 19:
|
|
125
|
+
this.$ = getToken(yytext,yy,_$);
|
|
116
126
|
break;
|
|
117
127
|
case 2:
|
|
118
|
-
this.$ =
|
|
128
|
+
this.$ = getToken(yytext,yy,_$); this.$.value = fromEscString(this.$.value);
|
|
119
129
|
break;
|
|
120
130
|
case 3:
|
|
121
|
-
this.$ =
|
|
131
|
+
this.$ = getToken(yytext,yy,_$); this.$.value = parseInt(this.$.value);
|
|
122
132
|
break;
|
|
123
|
-
case
|
|
133
|
+
case 20:
|
|
124
134
|
|
|
125
135
|
const result = {defs: {rels: s.rels, codes: s.codes}, exp: $$[$0-1]};
|
|
126
136
|
// console.log(JSON.stringify(result, "", 2));
|
|
137
|
+
// process.exit(0);
|
|
127
138
|
return result;
|
|
128
139
|
|
|
129
140
|
break;
|
|
130
|
-
case
|
|
141
|
+
case 21:
|
|
131
142
|
|
|
132
143
|
break;
|
|
133
|
-
case
|
|
134
|
-
s.add_rel($$[$0-3],$$[$0-1]);
|
|
144
|
+
case 22:
|
|
145
|
+
s.add_rel($$[$0-3].value,$$[$0-1]);
|
|
135
146
|
break;
|
|
136
|
-
case
|
|
137
|
-
s.add_code($$[$0-3],$$[$0-1]);
|
|
147
|
+
case 23:
|
|
148
|
+
s.add_code($$[$0-3].value,$$[$0-1]);
|
|
138
149
|
break;
|
|
139
|
-
case
|
|
140
|
-
this.$ = {code: "ref", ref: $$[$0]};
|
|
150
|
+
case 24:
|
|
151
|
+
this.$ = { code: "ref", ref: $$[$0].value, start: $$[$0].start, end: $$[$0].end};
|
|
141
152
|
break;
|
|
142
|
-
case
|
|
153
|
+
case 25: case 56: case 74: case 84:
|
|
143
154
|
this.$ = $$[$0];
|
|
144
155
|
break;
|
|
145
|
-
case
|
|
146
|
-
this.$ = {code: "product", product: $$[$0-1]};
|
|
156
|
+
case 26:
|
|
157
|
+
this.$ = { code: "product", product: $$[$0-1], start: $$[$0-2].start, end: $$[$0].end };
|
|
147
158
|
break;
|
|
148
|
-
case
|
|
149
|
-
this.$ = {code: "vector", vector: s.as_ref($$[$0-1])};
|
|
159
|
+
case 27:
|
|
160
|
+
this.$ = { code: "vector", vector: s.as_ref($$[$0-1]), start: $$[$0-2].start, end: $$[$0].end };
|
|
150
161
|
break;
|
|
151
|
-
case
|
|
152
|
-
this.$ = {code: "union", union: $$[$0-1]};
|
|
162
|
+
case 28:
|
|
163
|
+
this.$ = { code: "union", union: $$[$0-1], start: $$[$0-2].start, end: $$[$0].end };
|
|
153
164
|
break;
|
|
154
|
-
case
|
|
155
|
-
this.$ = {}
|
|
165
|
+
case 29:
|
|
166
|
+
this.$ = {};
|
|
156
167
|
break;
|
|
157
|
-
case
|
|
168
|
+
case 30:
|
|
158
169
|
this.$ = $$[$0].reduce((r, lc) => {
|
|
159
170
|
r[lc.label] = s.as_ref(lc.code);
|
|
160
171
|
return r }
|
|
161
172
|
, {});
|
|
162
173
|
break;
|
|
163
|
-
case
|
|
174
|
+
case 31: case 47: case 85:
|
|
164
175
|
this.$ = [$$[$0]];
|
|
165
176
|
break;
|
|
166
|
-
case
|
|
177
|
+
case 32: case 48: case 86:
|
|
167
178
|
this.$ = [].concat($$[$0-2],$$[$0]);
|
|
168
179
|
break;
|
|
169
|
-
case
|
|
170
|
-
this.$ = {label: $$[$0], code: $$[$0-1]};
|
|
180
|
+
case 33: case 34: case 35:
|
|
181
|
+
this.$ = {label: $$[$0].value, code: $$[$0-1]};
|
|
171
182
|
break;
|
|
172
|
-
case
|
|
173
|
-
this.$ = {label: $$[$0-2], code: $$[$0]};
|
|
183
|
+
case 36: case 37: case 38:
|
|
184
|
+
this.$ = {label: $$[$0-2].value, code: $$[$0]};
|
|
174
185
|
break;
|
|
175
|
-
case
|
|
176
|
-
this.$ =
|
|
186
|
+
case 39:
|
|
187
|
+
this.$ = { type: "name", name: $$[$0].value, start: $$[$0].start, end: $$[$0].end};
|
|
177
188
|
break;
|
|
178
|
-
case
|
|
179
|
-
this.$ = {
|
|
189
|
+
case 40:
|
|
190
|
+
this.$ = { type: "code", code: s.as_ref($$[$0]), start: $$[$0-1].start, end: $$[$0].end};
|
|
180
191
|
break;
|
|
181
|
-
case
|
|
182
|
-
this.$ = $$[$0-1];
|
|
192
|
+
case 41:
|
|
193
|
+
this.$ = { open: $$[$0-1].open, fields: $$[$0-1].fields, start: $$[$0-2].start, end: $$[$0].end};
|
|
183
194
|
break;
|
|
184
|
-
case
|
|
185
|
-
this.$ = {
|
|
195
|
+
case 42:
|
|
196
|
+
this.$ = { type: "union", open: $$[$0-1].open, fields: $$[$0-1].fields, start: $$[$0-2].start, end: $$[$0].end};
|
|
186
197
|
break;
|
|
187
|
-
case
|
|
188
|
-
this.$ =
|
|
198
|
+
case 43:
|
|
199
|
+
this.$ = { type: "product", open: $$[$0-1].open, fields: $$[$0-1].fields, start: $$[$0-2].start, end: $$[$0].end};
|
|
189
200
|
break;
|
|
190
|
-
case
|
|
191
|
-
this.$ = {
|
|
201
|
+
case 44:
|
|
202
|
+
this.$ = { type: "vector", vector: $$[$0-1], start: $$[$0-2].start, end: $$[$0].end };
|
|
192
203
|
break;
|
|
193
|
-
case
|
|
194
|
-
this.$ =
|
|
204
|
+
case 45:
|
|
205
|
+
this.$ = { fields: {}};
|
|
206
|
+
break;
|
|
207
|
+
case 46:
|
|
208
|
+
this.$ = $$[$0].reduce((r, lc) => {
|
|
209
|
+
if (lc.dots) {
|
|
210
|
+
r.open = true;
|
|
211
|
+
} else {
|
|
212
|
+
r.fields[lc.label] = lc.filter;
|
|
213
|
+
}
|
|
214
|
+
return r }
|
|
215
|
+
, { fields: {} });
|
|
195
216
|
break;
|
|
196
|
-
case
|
|
197
|
-
this.$ =
|
|
217
|
+
case 49:
|
|
218
|
+
this.$ = {dots: true };
|
|
198
219
|
break;
|
|
199
|
-
case
|
|
200
|
-
this.$ = {
|
|
220
|
+
case 50: case 51: case 52:
|
|
221
|
+
this.$ = {label: $$[$0].value, filter: $$[$0-1]};
|
|
201
222
|
break;
|
|
202
|
-
case
|
|
203
|
-
this.$ = {
|
|
223
|
+
case 53: case 54: case 55:
|
|
224
|
+
this.$ = {label: $$[$0-2].value, filter: $$[$0]};
|
|
204
225
|
break;
|
|
205
|
-
case
|
|
206
|
-
this.$ = {
|
|
226
|
+
case 57:
|
|
227
|
+
this.$ = {...s.comp($$[$0-1], $$[$0]), start: $$[$0-1].start, end:$$[$0].end};
|
|
207
228
|
break;
|
|
208
|
-
case
|
|
209
|
-
this.$ = {op:
|
|
229
|
+
case 58:
|
|
230
|
+
this.$ = {op: 'caret', caret: $$[$0-1], start: $$[$0-1].start, end:$$[$0].end};
|
|
210
231
|
break;
|
|
211
|
-
case
|
|
212
|
-
this.$ = {
|
|
232
|
+
case 59:
|
|
233
|
+
this.$ = {...$$[$0-1], start: $$[$0-2].start, end: $$[$0].end};
|
|
213
234
|
break;
|
|
214
|
-
case
|
|
235
|
+
case 60:
|
|
236
|
+
this.$ = {op: "vector", vector: $$[$0-1], start: $$[$0-2].start, end: $$[$0].end};
|
|
237
|
+
break;
|
|
238
|
+
case 61:
|
|
239
|
+
this.$ = {...s.union($$[$0-1]), start: $$[$0-2].start, end: $$[$0].end};
|
|
240
|
+
break;
|
|
241
|
+
case 62:
|
|
242
|
+
this.$ = {op: "ref", ref: $$[$0].value, start: $$[$0].start, end: $$[$0].end};
|
|
243
|
+
break;
|
|
244
|
+
case 63:
|
|
245
|
+
this.$ = {...s.identity, start: $$[$0-1].start, end: $$[$0].end};
|
|
246
|
+
break;
|
|
247
|
+
case 64:
|
|
248
|
+
this.$ = {...$$[$0-1], start: $$[$0-2].start, end: $$[$0].end };
|
|
249
|
+
break;
|
|
250
|
+
case 65:
|
|
251
|
+
this.$ = {op: "str", str: $$[$0].value, start: $$[$0].start, end: $$[$0].end };
|
|
252
|
+
break;
|
|
253
|
+
case 66:
|
|
254
|
+
this.$ = {op: "int", int: $$[$0].value, start: $$[$0].start, end: $$[$0].end };
|
|
255
|
+
break;
|
|
256
|
+
case 67: case 68: case 69:
|
|
257
|
+
this.$ = {op: "dot", dot: $$[$0].value, start: $$[$0-1].start, end: $$[$0].end };
|
|
258
|
+
break;
|
|
259
|
+
case 70:
|
|
260
|
+
this.$ = {op: "code", code: s.as_ref($$[$0]), start: $$[$0-1].start, end: $$[$0].end};
|
|
261
|
+
break;
|
|
262
|
+
case 71:
|
|
263
|
+
this.$ = {op: "filter", filter: $$[$0], start: $$[$0-1].start, end:$$[$0].end};
|
|
264
|
+
break;
|
|
265
|
+
case 72:
|
|
266
|
+
this.$ = {op: "pipe", start: $$[$0].start, end: $$[$0].end};
|
|
267
|
+
break;
|
|
268
|
+
case 73:
|
|
215
269
|
this.$ = {op: "product", product: []};
|
|
216
270
|
break;
|
|
217
|
-
case
|
|
271
|
+
case 75:
|
|
218
272
|
this.$ = {op: "product", product: [$$[$0]]};
|
|
219
273
|
break;
|
|
220
|
-
case
|
|
274
|
+
case 76:
|
|
221
275
|
$$[$0-2].product = [].concat($$[$0-2].product,$$[$0]); this.$ = $$[$0-2];
|
|
222
276
|
break;
|
|
223
|
-
case
|
|
224
|
-
this.$ = {label: $$[$0], exp: $$[$0-1]};
|
|
277
|
+
case 77: case 78: case 79:
|
|
278
|
+
this.$ = {label: $$[$0].value, exp: $$[$0-1]};
|
|
225
279
|
break;
|
|
226
|
-
case
|
|
227
|
-
this.$ = {label: $$[$0-2], exp: $$[$0]};
|
|
280
|
+
case 80: case 81: case 82:
|
|
281
|
+
this.$ = {label: $$[$0-2].value, exp: $$[$0]};
|
|
228
282
|
break;
|
|
229
|
-
case
|
|
283
|
+
case 83:
|
|
230
284
|
this.$ = [];
|
|
231
285
|
break;
|
|
232
286
|
}
|
|
233
287
|
},
|
|
234
|
-
table: [o($V0,[2,
|
|
235
|
-
defaultActions: {
|
|
288
|
+
table: [o($V0,[2,21],{41:1,42:2}),{1:[3]},{3:4,4:$V1,5:13,6:$V2,7:14,8:$V3,9:11,10:$V4,11:9,12:$V5,13:10,14:$V6,15:12,16:$V7,29:15,30:$V8,37:5,38:$V9,39:16,40:$Va,43:3,54:6,58:$Vb},{3:29,4:$V1,5:13,6:$V2,7:14,8:$V3,9:11,10:$V4,11:9,12:$V5,13:10,14:$V6,15:12,16:$V7,29:15,30:$V8,37:30,38:$V9,39:16,40:$Va,44:[1,26],54:27,55:$Vc,58:$Vb},o($Vd,$Ve,{25:31,26:$Vf}),{3:33,4:$V1,9:38,10:$V4,11:36,12:$V5,13:37,14:$V6,45:35,46:34},o($Vg,[2,56]),o([4,6,8,10,12,14,16,18,20,22,24,26,30,32,34,36,38,40,44,55,58],[2,1]),o([4,10,12,14],[2,18]),{3:43,4:$V1,5:44,6:$V2,7:45,8:$V3,9:11,10:$V4,11:9,12:$V5,13:10,14:$V6,15:12,16:$V7,20:[2,73],29:15,30:$V8,37:30,38:$V9,39:16,40:$Va,43:42,54:6,56:39,58:$Vb,59:40,60:41},{3:29,4:$V1,5:13,6:$V2,7:14,8:$V3,9:11,10:$V4,11:9,12:$V5,13:10,14:$V6,15:12,16:$V7,22:$Vh,29:15,30:$V8,37:30,38:$V9,39:16,40:$Va,43:48,54:6,57:46,58:$Vb,61:47},{3:29,4:$V1,5:13,6:$V2,7:14,8:$V3,9:11,10:$V4,11:9,12:$V5,13:10,14:$V6,15:12,16:$V7,18:$Vh,29:15,30:$V8,37:30,38:$V9,39:16,40:$Va,43:48,54:6,57:49,58:$Vb,61:47},{3:29,4:$V1,5:13,6:$V2,7:14,8:$V3,9:11,10:$V4,11:9,12:$V5,13:10,14:$V6,15:12,16:$V7,23:50,24:$Vi,29:15,30:$V8,37:30,38:$V9,39:16,40:$Va,43:51,54:6,58:$Vb},o($Vg,$Vj),o($Vg,$Vk),{3:55,4:$V1,5:54,6:$V2,7:53,8:$V3},{3:57,4:$V1,9:60,10:$V4,11:61,12:$V5,13:62,14:$V6,15:59,16:$V7,37:58,38:$V9,50:56},o($Vg,[2,72]),o([4,6,8,10,12,14,16,20,28,30,38,40,58],[2,5]),o([4,6,8,10,12,14,16,22,30,38,40,58],[2,6]),o([4,6,8,10,12,14,16,18,28,30,38,40,58],[2,4]),o([4,6,8,10,12,14,16,24,28,30,38,40,58],[2,7]),o($Vl,[2,2]),o($Vl,[2,3]),o($Vm,[2,14]),o([4,10,12,14,16,38],[2,19]),{1:[2,20]},o($Vg,[2,57]),o($Vg,[2,58]),o($Vg,$Ve),{3:63,4:$V1,9:38,10:$V4,11:36,12:$V5,13:37,14:$V6,45:35,46:34},{3:29,4:$V1,5:13,6:$V2,7:14,8:$V3,9:11,10:$V4,11:9,12:$V5,13:10,14:$V6,15:12,16:$V7,29:15,30:$V8,37:30,38:$V9,39:16,40:$Va,43:64,54:6,58:$Vb},o($V0,[2,12]),o($Vd,$Vn,{25:65,26:$Vf}),o($Vg,[2,70]),o($Vg,[2,25]),{3:70,4:$V1,5:71,6:$V2,7:72,8:$V3,9:38,10:$V4,11:36,12:$V5,13:37,14:$V6,20:$Vo,45:35,46:69,47:66,48:67,49:68},{3:63,4:$V1,9:38,10:$V4,11:36,12:$V5,13:37,14:$V6,45:35,46:73},{3:70,4:$V1,5:71,6:$V2,7:72,8:$V3,9:38,10:$V4,11:36,12:$V5,13:37,14:$V6,18:$Vo,45:35,46:69,47:74,48:67,49:68},{19:75,20:$Vp},{20:[2,74],31:77,32:$Vq},o($Vr,[2,75]),{3:79,4:$V1,5:80,6:$V2,7:81,8:$V3,9:11,10:$V4,11:9,12:$V5,13:10,14:$V6,15:12,16:$V7,29:15,30:$V8,37:30,38:$V9,39:16,40:$Va,54:27,55:$Vc,58:$Vb},o($Vs,$Ve,{35:82,36:$Vt}),o($Vs,$Vj,{35:84,36:$Vt}),o($Vs,$Vk,{35:85,36:$Vt}),{21:86,22:$Vu},o([18,22],[2,84],{31:88,32:$Vq}),o($Vv,[2,85],{11:9,13:10,9:11,15:12,5:13,7:14,29:15,39:16,54:27,3:29,37:30,4:$V1,6:$V2,8:$V3,10:$V4,12:$V5,14:$V6,16:$V7,30:$V8,38:$V9,40:$Va,55:$Vc,58:$Vb}),{17:89,18:$Vw},o($Vg,[2,63]),{3:29,4:$V1,5:13,6:$V2,7:14,8:$V3,9:11,10:$V4,11:9,12:$V5,13:10,14:$V6,15:12,16:$V7,23:91,24:$Vi,29:15,30:$V8,37:30,38:$V9,39:16,40:$Va,54:27,55:$Vc,58:$Vb},o($Vg,[2,11]),o($Vg,[2,67]),o($Vg,[2,68]),o($Vg,[2,69]),o($Vg,[2,71]),o($Vg,$Vx),{3:63,4:$V1,9:38,10:$V4,11:36,12:$V5,13:37,14:$V6,45:35,46:92},{3:98,4:$V1,5:99,6:$V2,7:100,8:$V3,9:60,10:$V4,11:61,12:$V5,13:62,14:$V6,15:59,16:$V7,24:$Vy,27:96,28:$Vz,37:58,38:$V9,50:97,51:93,52:94,53:95},{3:98,4:$V1,5:99,6:$V2,7:100,8:$V3,9:60,10:$V4,11:61,12:$V5,13:62,14:$V6,15:59,16:$V7,18:$Vy,27:96,28:$Vz,37:58,38:$V9,50:97,51:102,52:94,53:95},{3:98,4:$V1,5:99,6:$V2,7:100,8:$V3,9:60,10:$V4,11:61,12:$V5,13:62,14:$V6,15:59,16:$V7,20:$Vy,27:96,28:$Vz,37:58,38:$V9,50:97,51:103,52:94,53:95},{3:57,4:$V1,9:60,10:$V4,11:61,12:$V5,13:62,14:$V6,15:59,16:$V7,37:58,38:$V9,50:104},o($Vg,$Vn),{3:29,4:$V1,5:13,6:$V2,7:14,8:$V3,9:11,10:$V4,11:9,12:$V5,13:10,14:$V6,15:12,16:$V7,29:15,30:$V8,33:105,34:[1,106],37:30,38:$V9,39:16,40:$Va,54:27,55:$Vc,58:$Vb},{9:38,10:$V4,11:36,12:$V5,13:37,14:$V6,45:107},{19:108,20:$Vp},o([18,20],[2,30],{31:109,32:$Vq}),o($VA,[2,31]),{3:110,4:$V1,5:111,6:$V2,7:112,8:$V3},o($Vm,$Vn,{35:113,36:$Vt}),{35:114,36:$Vt},{35:115,36:$Vt},{21:116,22:$Vu},{17:117,18:$Vw},o($Vg,[2,59]),o($Vg,[2,9]),{3:43,4:$V1,5:44,6:$V2,7:45,8:$V3,9:11,10:$V4,11:9,12:$V5,13:10,14:$V6,15:12,16:$V7,29:15,30:$V8,37:30,38:$V9,39:16,40:$Va,43:42,54:6,58:$Vb,60:118},o([4,6,8,10,12,14,16,28,30,38,40,58],[2,15]),o($Vs,$Ve,{20:$VB,32:$VB}),o($Vs,$Vj,{20:$VC,32:$VC}),o($Vs,$Vk,{20:$VD,32:$VD}),{3:29,4:$V1,5:13,6:$V2,7:14,8:$V3,9:11,10:$V4,11:9,12:$V5,13:10,14:$V6,15:12,16:$V7,29:15,30:$V8,37:30,38:$V9,39:16,40:$Va,43:119,54:6,58:$Vb},o($V0,[2,17]),{3:29,4:$V1,5:13,6:$V2,7:14,8:$V3,9:11,10:$V4,11:9,12:$V5,13:10,14:$V6,15:12,16:$V7,29:15,30:$V8,37:30,38:$V9,39:16,40:$Va,43:120,54:6,58:$Vb},{3:29,4:$V1,5:13,6:$V2,7:14,8:$V3,9:11,10:$V4,11:9,12:$V5,13:10,14:$V6,15:12,16:$V7,29:15,30:$V8,37:30,38:$V9,39:16,40:$Va,43:121,54:6,58:$Vb},o($Vg,[2,60]),o($Vg,[2,10]),{3:29,4:$V1,5:13,6:$V2,7:14,8:$V3,9:11,10:$V4,11:9,12:$V5,13:10,14:$V6,15:12,16:$V7,29:15,30:$V8,37:30,38:$V9,39:16,40:$Va,43:122,54:6,58:$Vb},o($Vg,[2,61]),o($Vg,[2,8]),o($Vg,[2,64]),o($Vg,[2,40]),{23:123,24:$Vi},o([18,20,24],[2,46],{31:124,32:$Vq}),o($VE,[2,47]),o($VE,[2,49]),{3:125,4:$V1,5:126,6:$V2,7:127,8:$V3},o($Vm,$Vx,{35:128,36:$Vt}),{35:129,36:$Vt},{35:130,36:$Vt},o($VE,[2,13]),{17:131,18:$Vw},{19:132,20:$Vp},{21:133,22:$Vu},o($V0,[2,22]),o($V0,[2,16]),{34:[1,134]},o($Vg,[2,26]),{3:70,4:$V1,5:71,6:$V2,7:72,8:$V3,9:38,10:$V4,11:36,12:$V5,13:37,14:$V6,45:35,46:69,49:135},o($VA,[2,33]),o($VA,[2,34]),o($VA,[2,35]),{3:63,4:$V1,9:38,10:$V4,11:36,12:$V5,13:37,14:$V6,45:35,46:136},{3:63,4:$V1,9:38,10:$V4,11:36,12:$V5,13:37,14:$V6,45:35,46:137},{3:63,4:$V1,9:38,10:$V4,11:36,12:$V5,13:37,14:$V6,45:35,46:138},o($Vg,[2,27]),o($Vg,[2,28]),o($Vr,[2,76]),o($Vr,[2,80],{11:9,13:10,9:11,15:12,5:13,7:14,29:15,39:16,54:27,3:29,37:30,4:$V1,6:$V2,8:$V3,10:$V4,12:$V5,14:$V6,16:$V7,30:$V8,38:$V9,40:$Va,55:$Vc,58:$Vb}),o($Vr,[2,81],{11:9,13:10,9:11,15:12,5:13,7:14,29:15,39:16,54:27,3:29,37:30,4:$V1,6:$V2,8:$V3,10:$V4,12:$V5,14:$V6,16:$V7,30:$V8,38:$V9,40:$Va,55:$Vc,58:$Vb}),o($Vr,[2,82],{11:9,13:10,9:11,15:12,5:13,7:14,29:15,39:16,54:27,3:29,37:30,4:$V1,6:$V2,8:$V3,10:$V4,12:$V5,14:$V6,16:$V7,30:$V8,38:$V9,40:$Va,55:$Vc,58:$Vb}),o($Vv,[2,86],{11:9,13:10,9:11,15:12,5:13,7:14,29:15,39:16,54:27,3:29,37:30,4:$V1,6:$V2,8:$V3,10:$V4,12:$V5,14:$V6,16:$V7,30:$V8,38:$V9,40:$Va,55:$Vc,58:$Vb}),o($Vg,[2,41]),{3:98,4:$V1,5:99,6:$V2,7:100,8:$V3,9:60,10:$V4,11:61,12:$V5,13:62,14:$V6,15:59,16:$V7,27:96,28:$Vz,37:58,38:$V9,50:97,53:139},o($VE,[2,50]),o($VE,[2,51]),o($VE,[2,52]),{3:57,4:$V1,9:60,10:$V4,11:61,12:$V5,13:62,14:$V6,15:59,16:$V7,37:58,38:$V9,50:140},{3:57,4:$V1,9:60,10:$V4,11:61,12:$V5,13:62,14:$V6,15:59,16:$V7,37:58,38:$V9,50:141},{3:57,4:$V1,9:60,10:$V4,11:61,12:$V5,13:62,14:$V6,15:59,16:$V7,37:58,38:$V9,50:142},o($Vg,[2,42]),o($Vg,[2,43]),o($Vg,[2,44]),o($V0,[2,23]),o($VA,[2,32]),o($VA,[2,36]),o($VA,[2,37]),o($VA,[2,38]),o($VE,[2,48]),o($VE,[2,53]),o($VE,[2,54]),o($VE,[2,55])],
|
|
289
|
+
defaultActions: {26:[2,20]},
|
|
236
290
|
parseError: function parseError (str, hash) {
|
|
237
291
|
if (hash.recoverable) {
|
|
238
292
|
this.trace(str);
|
|
@@ -712,50 +766,54 @@ case 1:/* one line comment */
|
|
|
712
766
|
break;
|
|
713
767
|
case 2:/* blanks */
|
|
714
768
|
break;
|
|
715
|
-
case 3:return
|
|
769
|
+
case 3:return 10;
|
|
716
770
|
break;
|
|
717
|
-
case 4:return
|
|
771
|
+
case 4:return 12;
|
|
718
772
|
break;
|
|
719
|
-
case 5:return
|
|
773
|
+
case 5:return 14;
|
|
720
774
|
break;
|
|
721
|
-
case 6:return
|
|
775
|
+
case 6:return 16;
|
|
722
776
|
break;
|
|
723
|
-
case 7:return
|
|
777
|
+
case 7:return 18;
|
|
724
778
|
break;
|
|
725
779
|
case 8:return 20;
|
|
726
780
|
break;
|
|
727
781
|
case 9:return 22;
|
|
728
782
|
break;
|
|
729
|
-
case 10:return
|
|
783
|
+
case 10:return 24;
|
|
784
|
+
break;
|
|
785
|
+
case 11:return 26;
|
|
786
|
+
break;
|
|
787
|
+
case 12:return 28;
|
|
730
788
|
break;
|
|
731
|
-
case
|
|
789
|
+
case 13:return 30;
|
|
732
790
|
break;
|
|
733
|
-
case
|
|
791
|
+
case 14:return 32;
|
|
734
792
|
break;
|
|
735
|
-
case
|
|
793
|
+
case 15:return 34;
|
|
736
794
|
break;
|
|
737
|
-
case
|
|
795
|
+
case 16:return 36;
|
|
738
796
|
break;
|
|
739
|
-
case
|
|
797
|
+
case 17:return 38;
|
|
740
798
|
break;
|
|
741
|
-
case
|
|
799
|
+
case 18:return 40;
|
|
742
800
|
break;
|
|
743
|
-
case
|
|
801
|
+
case 19:return 58;
|
|
744
802
|
break;
|
|
745
|
-
case
|
|
803
|
+
case 20:return 55;
|
|
746
804
|
break;
|
|
747
|
-
case
|
|
805
|
+
case 21:return 6;
|
|
748
806
|
break;
|
|
749
|
-
case
|
|
807
|
+
case 22:return 4;
|
|
750
808
|
break;
|
|
751
|
-
case
|
|
809
|
+
case 23:return 8;
|
|
752
810
|
break;
|
|
753
|
-
case
|
|
811
|
+
case 24:return 44;
|
|
754
812
|
break;
|
|
755
813
|
}
|
|
756
814
|
},
|
|
757
|
-
rules: [/^(?:[/][*]([*][^/]|[^*])*[*][/])/,/^(?:(\/\/|#|%|--)[^\n]*)/,/^(?:\s+)/,/^(?:<)/,/^(?:\{)/,/^(?:\[)/,/^(?:\()/,/^(?:>)/,/^(?:\})/,/^(?:\])/,/^(?:\))/,/^(?:=)/,/^(?:\.)/,/^(?:,)/,/^(?:;)/,/^(?::)/,/^(?:\$)/,/^(?:\|)/,/^(?:\^)/,/^(?:"([^"\\]|\\(.|\n))*"|'([^'\\]|\\(.|\n))*')/,/^(?:[a-zA-Z_][a-zA-Z0-9_?!]*)/,/^(?:0|[-]?[1-9][0-9]*)/,/^(?:$)/],
|
|
758
|
-
conditions: {"INITIAL":{"rules":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22],"inclusive":true}}
|
|
815
|
+
rules: [/^(?:[/][*]([*][^/]|[^*])*[*][/])/,/^(?:(\/\/|#|%|--)[^\n]*)/,/^(?:\s+)/,/^(?:<)/,/^(?:\{)/,/^(?:\[)/,/^(?:\()/,/^(?:>)/,/^(?:\})/,/^(?:\])/,/^(?:\))/,/^(?:=)/,/^(?:\.\.\.)/,/^(?:\.)/,/^(?:,)/,/^(?:;)/,/^(?::)/,/^(?:\$)/,/^(?:\?)/,/^(?:\|)/,/^(?:\^)/,/^(?:"([^"\\]|\\(.|\n))*"|'([^'\\]|\\(.|\n))*')/,/^(?:[a-zA-Z_][a-zA-Z0-9_?!]*)/,/^(?:0|[-]?[1-9][0-9]*)/,/^(?:$)/],
|
|
816
|
+
conditions: {"INITIAL":{"rules":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24],"inclusive":true}}
|
|
759
817
|
});
|
|
760
818
|
return lexer;
|
|
761
819
|
})();
|