@fraczak/k 3.0.2 → 4.0.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/parser.mjs CHANGED
@@ -75,7 +75,8 @@
75
75
 
76
76
 
77
77
 
78
- import s from "./symbol-table.mjs";
78
+ import { SymbolTable, comp, union, identity } from "./symbol-table.mjs";
79
+ let s = new SymbolTable();
79
80
 
80
81
  function getToken(yytext,yy,lstack) {
81
82
  const yylloc = yy.lexer.yylloc;
@@ -110,18 +111,18 @@ function fromEscString(escString) {
110
111
 
111
112
 
112
113
  var parser = (function(){
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];
114
+ 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,62],$V1=[1,10],$V2=[1,25],$V3=[1,26],$V4=[1,23],$V5=[1,21],$V6=[1,22],$V7=[1,24],$V8=[1,27],$V9=[1,11],$Va=[1,28],$Vb=[1,20],$Vc=[1,31],$Vd=[4,6,8,10,12,14,16,30,38,40,47,59,62],$Ve=[2,67],$Vf=[1,35],$Vg=[4,6,8,10,12,14,16,18,20,22,24,30,32,34,38,40,47,59,62],$Vh=[2,88],$Vi=[1,55],$Vj=[2,70],$Vk=[2,71],$Vl=[4,6,8,10,12,14,16,18,20,22,24,30,32,34,36,38,40,47,59,62],$Vm=[4,6,8],$Vn=[2,27],$Vo=[4,6,8,10,12,14,16,18,20,22,24,26,30,32,34,38,40,47,59,62],$Vp=[2,32],$Vq=[1,80],$Vr=[1,82],$Vs=[20,32],$Vt=[4,6,8,10,12,14,16,30,38,40,59,62],$Vu=[1,87],$Vv=[1,91],$Vw=[18,22,32],$Vx=[1,94],$Vy=[2,49],$Vz=[2,50],$VA=[1,106],$VB=[18,20,32],$VC=[2,82],$VD=[2,83],$VE=[2,84],$VF=[18,20,24,32];
114
115
  var parser = {trace: function trace () { },
115
116
  yy: {},
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]],
117
+ 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,"incremental":41,"INCREMENTAL":42,"input_with_eof":43,"initialize_symbol_table":44,"defs":45,"comp":46,"EOF":47,"codeDef":48,"code":49,"labelled_codes":50,"non_empty_labelled_codes":51,"code_label":52,"filter_":53,"labelled_filters":54,"filter":55,"non_empty_labelled_filters":56,"filter_label":57,"exp":58,"CARET":59,"labelled":60,"list":61,"PIPE":62,"non_empty_labelled":63,"comp_label":64,"non_empty_list":65,"$accept":0,"$end":1},
118
+ 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",42:"INCREMENTAL",47:"EOF",59:"CARET",62:"PIPE"},
119
+ 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,1],[43,4],[44,0],[44,1],[45,0],[45,5],[45,6],[49,1],[49,1],[48,3],[48,3],[48,3],[50,0],[50,1],[51,1],[51,3],[52,2],[52,2],[52,2],[52,3],[52,3],[52,3],[53,2],[53,3],[53,3],[53,3],[53,3],[55,1],[55,3],[55,1],[54,0],[54,1],[56,1],[56,3],[57,1],[57,2],[57,2],[57,2],[57,3],[57,3],[57,3],[46,1],[46,2],[46,2],[58,3],[58,3],[58,3],[58,1],[58,2],[58,3],[58,1],[58,1],[58,2],[58,2],[58,2],[58,2],[58,2],[58,1],[60,0],[60,1],[63,1],[63,3],[64,2],[64,2],[64,2],[64,3],[64,3],[64,3],[61,0],[61,1],[65,1],[65,3]],
119
120
  performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate /* action[1] */, $$ /* vstack */, _$ /* lstack */) {
120
121
  /* this == yyval */
121
122
 
122
123
  var $0 = $$.length - 1;
123
124
  switch (yystate) {
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
+ 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: case 20:
125
126
  this.$ = getToken(yytext,yy,_$);
126
127
  break;
127
128
  case 2:
@@ -130,7 +131,7 @@ break;
130
131
  case 3:
131
132
  this.$ = getToken(yytext,yy,_$); this.$.value = parseInt(this.$.value);
132
133
  break;
133
- case 20:
134
+ case 21:
134
135
 
135
136
  const result = {defs: {rels: s.rels, codes: s.codes}, exp: $$[$0-1]};
136
137
  // console.log(JSON.stringify(result, "", 2));
@@ -138,73 +139,79 @@ case 20:
138
139
  return result;
139
140
 
140
141
  break;
141
- case 21:
142
+ case 22:
143
+ s = new SymbolTable();
144
+ break;
145
+ case 23: case 24:
142
146
 
143
147
  break;
144
- case 22:
148
+ case 25:
145
149
  s.add_rel($$[$0-3].value,$$[$0-1]);
146
150
  break;
147
- case 23:
151
+ case 26:
148
152
  s.add_code($$[$0-3].value,$$[$0-1]);
149
153
  break;
150
- case 24:
154
+ case 27:
151
155
  this.$ = { code: "ref", ref: $$[$0].value, start: $$[$0].start, end: $$[$0].end};
152
156
  break;
153
- case 25: case 56: case 74: case 84:
157
+ case 28: case 47: case 61: case 79: case 89:
154
158
  this.$ = $$[$0];
155
159
  break;
156
- case 26:
160
+ case 29:
157
161
  this.$ = { code: "product", product: $$[$0-1], start: $$[$0-2].start, end: $$[$0].end };
158
162
  break;
159
- case 27:
163
+ case 30:
160
164
  this.$ = { code: "vector", vector: s.as_ref($$[$0-1]), start: $$[$0-2].start, end: $$[$0].end };
161
165
  break;
162
- case 28:
166
+ case 31:
163
167
  this.$ = { code: "union", union: $$[$0-1], start: $$[$0-2].start, end: $$[$0].end };
164
168
  break;
165
- case 29:
169
+ case 32:
166
170
  this.$ = {};
167
171
  break;
168
- case 30:
172
+ case 33:
169
173
  this.$ = $$[$0].reduce((r, lc) => {
170
174
  r[lc.label] = s.as_ref(lc.code);
171
175
  return r }
172
176
  , {});
173
177
  break;
174
- case 31: case 47: case 85:
178
+ case 34: case 52: case 90:
175
179
  this.$ = [$$[$0]];
176
180
  break;
177
- case 32: case 48: case 86:
181
+ case 35: case 53: case 91:
178
182
  this.$ = [].concat($$[$0-2],$$[$0]);
179
183
  break;
180
- case 33: case 34: case 35:
184
+ case 36: case 37: case 38:
181
185
  this.$ = {label: $$[$0].value, code: $$[$0-1]};
182
186
  break;
183
- case 36: case 37: case 38:
187
+ case 39: case 40: case 41:
184
188
  this.$ = {label: $$[$0-2].value, code: $$[$0]};
185
189
  break;
186
- case 39:
187
- this.$ = { type: "name", name: $$[$0].value, start: $$[$0].start, end: $$[$0].end};
188
- break;
189
- case 40:
190
+ case 42:
190
191
  this.$ = { type: "code", code: s.as_ref($$[$0]), start: $$[$0-1].start, end: $$[$0].end};
191
192
  break;
192
- case 41:
193
- this.$ = { open: $$[$0-1].open, fields: $$[$0-1].fields, start: $$[$0-2].start, end: $$[$0].end};
193
+ case 43:
194
+ this.$ = { type: null, open: $$[$0-1].open, fields: $$[$0-1].fields, start: $$[$0-2].start, end: $$[$0].end};
194
195
  break;
195
- case 42:
196
+ case 44:
196
197
  this.$ = { type: "union", open: $$[$0-1].open, fields: $$[$0-1].fields, start: $$[$0-2].start, end: $$[$0].end};
197
198
  break;
198
- case 43:
199
+ case 45:
199
200
  this.$ = { type: "product", open: $$[$0-1].open, fields: $$[$0-1].fields, start: $$[$0-2].start, end: $$[$0].end};
200
201
  break;
201
- case 44:
202
+ case 46:
202
203
  this.$ = { type: "vector", vector: $$[$0-1], start: $$[$0-2].start, end: $$[$0].end };
203
204
  break;
204
- case 45:
205
+ case 48:
206
+ this.$ = { name: $$[$0].value, ...$$[$0-2], start: $$[$0-2].start, end: $$[$0].end };
207
+ break;
208
+ case 49:
209
+ this.$ = { type: 'name', name: $$[$0].value, open: true, start: $$[$0].start, end: $$[$0].end};
210
+ break;
211
+ case 50:
205
212
  this.$ = { fields: {}};
206
213
  break;
207
- case 46:
214
+ case 51:
208
215
  this.$ = $$[$0].reduce((r, lc) => {
209
216
  if (lc.dots) {
210
217
  r.open = true;
@@ -214,79 +221,79 @@ case 46:
214
221
  return r }
215
222
  , { fields: {} });
216
223
  break;
217
- case 49:
224
+ case 54:
218
225
  this.$ = {dots: true };
219
226
  break;
220
- case 50: case 51: case 52:
227
+ case 55: case 56: case 57:
221
228
  this.$ = {label: $$[$0].value, filter: $$[$0-1]};
222
229
  break;
223
- case 53: case 54: case 55:
230
+ case 58: case 59: case 60:
224
231
  this.$ = {label: $$[$0-2].value, filter: $$[$0]};
225
232
  break;
226
- case 57:
227
- this.$ = {...s.comp($$[$0-1], $$[$0]), start: $$[$0-1].start, end:$$[$0].end};
233
+ case 62:
234
+ this.$ = {...comp($$[$0-1], $$[$0]), start: $$[$0-1].start, end:$$[$0].end};
228
235
  break;
229
- case 58:
236
+ case 63:
230
237
  this.$ = {op: 'caret', caret: $$[$0-1], start: $$[$0-1].start, end:$$[$0].end};
231
238
  break;
232
- case 59:
239
+ case 64:
233
240
  this.$ = {...$$[$0-1], start: $$[$0-2].start, end: $$[$0].end};
234
241
  break;
235
- case 60:
242
+ case 65:
236
243
  this.$ = {op: "vector", vector: $$[$0-1], start: $$[$0-2].start, end: $$[$0].end};
237
244
  break;
238
- case 61:
239
- this.$ = {...s.union($$[$0-1]), start: $$[$0-2].start, end: $$[$0].end};
245
+ case 66:
246
+ this.$ = {...union($$[$0-1]), start: $$[$0-2].start, end: $$[$0].end};
240
247
  break;
241
- case 62:
248
+ case 67:
242
249
  this.$ = {op: "ref", ref: $$[$0].value, start: $$[$0].start, end: $$[$0].end};
243
250
  break;
244
- case 63:
245
- this.$ = {...s.identity, start: $$[$0-1].start, end: $$[$0].end};
251
+ case 68:
252
+ this.$ = {...identity, start: $$[$0-1].start, end: $$[$0].end};
246
253
  break;
247
- case 64:
254
+ case 69:
248
255
  this.$ = {...$$[$0-1], start: $$[$0-2].start, end: $$[$0].end };
249
256
  break;
250
- case 65:
257
+ case 70:
251
258
  this.$ = {op: "str", str: $$[$0].value, start: $$[$0].start, end: $$[$0].end };
252
259
  break;
253
- case 66:
260
+ case 71:
254
261
  this.$ = {op: "int", int: $$[$0].value, start: $$[$0].start, end: $$[$0].end };
255
262
  break;
256
- case 67: case 68: case 69:
263
+ case 72: case 73: case 74:
257
264
  this.$ = {op: "dot", dot: $$[$0].value, start: $$[$0-1].start, end: $$[$0].end };
258
265
  break;
259
- case 70:
266
+ case 75:
260
267
  this.$ = {op: "code", code: s.as_ref($$[$0]), start: $$[$0-1].start, end: $$[$0].end};
261
268
  break;
262
- case 71:
269
+ case 76:
263
270
  this.$ = {op: "filter", filter: $$[$0], start: $$[$0-1].start, end:$$[$0].end};
264
271
  break;
265
- case 72:
272
+ case 77:
266
273
  this.$ = {op: "pipe", start: $$[$0].start, end: $$[$0].end};
267
274
  break;
268
- case 73:
275
+ case 78:
269
276
  this.$ = {op: "product", product: []};
270
277
  break;
271
- case 75:
278
+ case 80:
272
279
  this.$ = {op: "product", product: [$$[$0]]};
273
280
  break;
274
- case 76:
281
+ case 81:
275
282
  $$[$0-2].product = [].concat($$[$0-2].product,$$[$0]); this.$ = $$[$0-2];
276
283
  break;
277
- case 77: case 78: case 79:
284
+ case 82: case 83: case 84:
278
285
  this.$ = {label: $$[$0].value, exp: $$[$0-1]};
279
286
  break;
280
- case 80: case 81: case 82:
287
+ case 85: case 86: case 87:
281
288
  this.$ = {label: $$[$0-2].value, exp: $$[$0]};
282
289
  break;
283
- case 83:
290
+ case 88:
284
291
  this.$ = [];
285
292
  break;
286
293
  }
287
294
  },
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]},
295
+ table: [o($V0,[2,22],{43:1,44:2,41:3,42:[1,4]}),{1:[3]},o($V0,[2,24],{45:5}),o($V0,[2,23]),o($V0,[2,20]),{3:7,4:$V1,5:16,6:$V2,7:17,8:$V3,9:14,10:$V4,11:12,12:$V5,13:13,14:$V6,15:15,16:$V7,29:18,30:$V8,37:8,38:$V9,39:19,40:$Va,46:6,58:9,62:$Vb},{3:32,4:$V1,5:16,6:$V2,7:17,8:$V3,9:14,10:$V4,11:12,12:$V5,13:13,14:$V6,15:15,16:$V7,29:18,30:$V8,37:33,38:$V9,39:19,40:$Va,47:[1,29],58:30,59:$Vc,62:$Vb},o($Vd,$Ve,{25:34,26:$Vf}),{3:36,4:$V1,9:41,10:$V4,11:39,12:$V5,13:40,14:$V6,48:38,49:37},o($Vg,[2,61]),o([4,6,8,10,12,14,16,18,20,22,24,26,30,32,34,36,38,40,47,59,62],[2,1]),o([4,10,12,14],[2,18]),{3:46,4:$V1,5:47,6:$V2,7:48,8:$V3,9:14,10:$V4,11:12,12:$V5,13:13,14:$V6,15:15,16:$V7,20:[2,78],29:18,30:$V8,37:33,38:$V9,39:19,40:$Va,46:45,58:9,60:42,62:$Vb,63:43,64:44},{3:32,4:$V1,5:16,6:$V2,7:17,8:$V3,9:14,10:$V4,11:12,12:$V5,13:13,14:$V6,15:15,16:$V7,22:$Vh,29:18,30:$V8,37:33,38:$V9,39:19,40:$Va,46:51,58:9,61:49,62:$Vb,65:50},{3:32,4:$V1,5:16,6:$V2,7:17,8:$V3,9:14,10:$V4,11:12,12:$V5,13:13,14:$V6,15:15,16:$V7,18:$Vh,29:18,30:$V8,37:33,38:$V9,39:19,40:$Va,46:51,58:9,61:52,62:$Vb,65:50},{3:32,4:$V1,5:16,6:$V2,7:17,8:$V3,9:14,10:$V4,11:12,12:$V5,13:13,14:$V6,15:15,16:$V7,23:53,24:$Vi,29:18,30:$V8,37:33,38:$V9,39:19,40:$Va,46:54,58:9,62:$Vb},o($Vg,$Vj),o($Vg,$Vk),{3:58,4:$V1,5:57,6:$V2,7:56,8:$V3},{3:61,4:$V1,9:64,10:$V4,11:65,12:$V5,13:66,14:$V6,15:63,16:$V7,37:62,38:$V9,53:60,55:59},o($Vg,[2,77]),o([4,6,8,10,12,14,16,20,28,30,38,40,62],[2,5]),o([4,6,8,10,12,14,16,22,30,38,40,62],[2,6]),o([4,6,8,10,12,14,16,18,28,30,38,40,62],[2,4]),o([4,6,8,10,12,14,16,24,28,30,38,40,62],[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,21]},o($Vg,[2,62]),o($Vg,[2,63]),o($Vg,$Ve),{3:67,4:$V1,9:41,10:$V4,11:39,12:$V5,13:40,14:$V6,48:38,49:37},{3:32,4:$V1,5:16,6:$V2,7:17,8:$V3,9:14,10:$V4,11:12,12:$V5,13:13,14:$V6,15:15,16:$V7,29:18,30:$V8,37:33,38:$V9,39:19,40:$Va,46:68,58:9,62:$Vb},o($V0,[2,12]),o($Vd,$Vn,{25:69,26:$Vf}),o($Vg,[2,75]),o($Vo,[2,28]),{3:74,4:$V1,5:75,6:$V2,7:76,8:$V3,9:41,10:$V4,11:39,12:$V5,13:40,14:$V6,20:$Vp,48:38,49:73,50:70,51:71,52:72},{3:67,4:$V1,9:41,10:$V4,11:39,12:$V5,13:40,14:$V6,48:38,49:77},{3:74,4:$V1,5:75,6:$V2,7:76,8:$V3,9:41,10:$V4,11:39,12:$V5,13:40,14:$V6,18:$Vp,48:38,49:73,50:78,51:71,52:72},{19:79,20:$Vq},{20:[2,79],31:81,32:$Vr},o($Vs,[2,80]),{3:83,4:$V1,5:84,6:$V2,7:85,8:$V3,9:14,10:$V4,11:12,12:$V5,13:13,14:$V6,15:15,16:$V7,29:18,30:$V8,37:33,38:$V9,39:19,40:$Va,58:30,59:$Vc,62:$Vb},o($Vt,$Ve,{35:86,36:$Vu}),o($Vt,$Vj,{35:88,36:$Vu}),o($Vt,$Vk,{35:89,36:$Vu}),{21:90,22:$Vv},o([18,22],[2,89],{31:92,32:$Vr}),o($Vw,[2,90],{11:12,13:13,9:14,15:15,5:16,7:17,29:18,39:19,58:30,3:32,37:33,4:$V1,6:$V2,8:$V3,10:$V4,12:$V5,14:$V6,16:$V7,30:$V8,38:$V9,40:$Va,59:$Vc,62:$Vb}),{17:93,18:$Vx},o($Vg,[2,68]),{3:32,4:$V1,5:16,6:$V2,7:17,8:$V3,9:14,10:$V4,11:12,12:$V5,13:13,14:$V6,15:15,16:$V7,23:95,24:$Vi,29:18,30:$V8,37:33,38:$V9,39:19,40:$Va,58:30,59:$Vc,62:$Vb},o($Vo,[2,11]),o($Vg,[2,72]),o($Vg,[2,73]),o($Vg,[2,74]),o($Vg,[2,76]),o($Vg,[2,47],{26:[1,96]}),o($Vg,$Vy),{3:67,4:$V1,9:41,10:$V4,11:39,12:$V5,13:40,14:$V6,48:38,49:97},{3:103,4:$V1,5:104,6:$V2,7:105,8:$V3,9:64,10:$V4,11:65,12:$V5,13:66,14:$V6,15:63,16:$V7,24:$Vz,27:101,28:$VA,37:62,38:$V9,53:60,54:98,55:102,56:99,57:100},{3:103,4:$V1,5:104,6:$V2,7:105,8:$V3,9:64,10:$V4,11:65,12:$V5,13:66,14:$V6,15:63,16:$V7,18:$Vz,27:101,28:$VA,37:62,38:$V9,53:60,54:107,55:102,56:99,57:100},{3:103,4:$V1,5:104,6:$V2,7:105,8:$V3,9:64,10:$V4,11:65,12:$V5,13:66,14:$V6,15:63,16:$V7,20:$Vz,27:101,28:$VA,37:62,38:$V9,53:60,54:108,55:102,56:99,57:100},{3:61,4:$V1,9:64,10:$V4,11:65,12:$V5,13:66,14:$V6,15:63,16:$V7,37:62,38:$V9,53:60,55:109},o($Vo,$Vn),{3:32,4:$V1,5:16,6:$V2,7:17,8:$V3,9:14,10:$V4,11:12,12:$V5,13:13,14:$V6,15:15,16:$V7,29:18,30:$V8,33:110,34:[1,111],37:33,38:$V9,39:19,40:$Va,58:30,59:$Vc,62:$Vb},{9:41,10:$V4,11:39,12:$V5,13:40,14:$V6,48:112},{19:113,20:$Vq},o([18,20],[2,33],{31:114,32:$Vr}),o($VB,[2,34]),{3:115,4:$V1,5:116,6:$V2,7:117,8:$V3},o($Vm,$Vn,{35:118,36:$Vu}),{35:119,36:$Vu},{35:120,36:$Vu},{21:121,22:$Vv},{17:122,18:$Vx},o($Vg,[2,64]),o($Vo,[2,9]),{3:46,4:$V1,5:47,6:$V2,7:48,8:$V3,9:14,10:$V4,11:12,12:$V5,13:13,14:$V6,15:15,16:$V7,29:18,30:$V8,37:33,38:$V9,39:19,40:$Va,46:45,58:9,62:$Vb,64:123},o([4,6,8,10,12,14,16,28,30,38,40,62],[2,15]),o($Vt,$Ve,{20:$VC,32:$VC}),o($Vt,$Vj,{20:$VD,32:$VD}),o($Vt,$Vk,{20:$VE,32:$VE}),{3:32,4:$V1,5:16,6:$V2,7:17,8:$V3,9:14,10:$V4,11:12,12:$V5,13:13,14:$V6,15:15,16:$V7,29:18,30:$V8,37:33,38:$V9,39:19,40:$Va,46:124,58:9,62:$Vb},o($V0,[2,17]),{3:32,4:$V1,5:16,6:$V2,7:17,8:$V3,9:14,10:$V4,11:12,12:$V5,13:13,14:$V6,15:15,16:$V7,29:18,30:$V8,37:33,38:$V9,39:19,40:$Va,46:125,58:9,62:$Vb},{3:32,4:$V1,5:16,6:$V2,7:17,8:$V3,9:14,10:$V4,11:12,12:$V5,13:13,14:$V6,15:15,16:$V7,29:18,30:$V8,37:33,38:$V9,39:19,40:$Va,46:126,58:9,62:$Vb},o($Vg,[2,65]),o($Vo,[2,10]),{3:32,4:$V1,5:16,6:$V2,7:17,8:$V3,9:14,10:$V4,11:12,12:$V5,13:13,14:$V6,15:15,16:$V7,29:18,30:$V8,37:33,38:$V9,39:19,40:$Va,46:127,58:9,62:$Vb},o($Vg,[2,66]),o($Vo,[2,8]),o($Vg,[2,69]),{3:128,4:$V1},o($Vo,[2,42]),{23:129,24:$Vi},o([18,20,24],[2,51],{31:130,32:$Vr}),o($VF,[2,52]),o($VF,[2,54]),{3:131,4:$V1,5:132,6:$V2,7:133,8:$V3},o($Vm,$Vy,{35:134,36:$Vu}),{35:135,36:$Vu},{35:136,36:$Vu},o($VF,[2,13]),{17:137,18:$Vx},{19:138,20:$Vq},{21:139,22:$Vv},o($V0,[2,25]),o($V0,[2,16]),{34:[1,140]},o($Vo,[2,29]),{3:74,4:$V1,5:75,6:$V2,7:76,8:$V3,9:41,10:$V4,11:39,12:$V5,13:40,14:$V6,48:38,49:73,52:141},o($VB,[2,36]),o($VB,[2,37]),o($VB,[2,38]),{3:67,4:$V1,9:41,10:$V4,11:39,12:$V5,13:40,14:$V6,48:38,49:142},{3:67,4:$V1,9:41,10:$V4,11:39,12:$V5,13:40,14:$V6,48:38,49:143},{3:67,4:$V1,9:41,10:$V4,11:39,12:$V5,13:40,14:$V6,48:38,49:144},o($Vo,[2,30]),o($Vo,[2,31]),o($Vs,[2,81]),o($Vs,[2,85],{11:12,13:13,9:14,15:15,5:16,7:17,29:18,39:19,58:30,3:32,37:33,4:$V1,6:$V2,8:$V3,10:$V4,12:$V5,14:$V6,16:$V7,30:$V8,38:$V9,40:$Va,59:$Vc,62:$Vb}),o($Vs,[2,86],{11:12,13:13,9:14,15:15,5:16,7:17,29:18,39:19,58:30,3:32,37:33,4:$V1,6:$V2,8:$V3,10:$V4,12:$V5,14:$V6,16:$V7,30:$V8,38:$V9,40:$Va,59:$Vc,62:$Vb}),o($Vs,[2,87],{11:12,13:13,9:14,15:15,5:16,7:17,29:18,39:19,58:30,3:32,37:33,4:$V1,6:$V2,8:$V3,10:$V4,12:$V5,14:$V6,16:$V7,30:$V8,38:$V9,40:$Va,59:$Vc,62:$Vb}),o($Vw,[2,91],{11:12,13:13,9:14,15:15,5:16,7:17,29:18,39:19,58:30,3:32,37:33,4:$V1,6:$V2,8:$V3,10:$V4,12:$V5,14:$V6,16:$V7,30:$V8,38:$V9,40:$Va,59:$Vc,62:$Vb}),o($Vg,[2,48]),o($Vo,[2,43]),{3:103,4:$V1,5:104,6:$V2,7:105,8:$V3,9:64,10:$V4,11:65,12:$V5,13:66,14:$V6,15:63,16:$V7,27:101,28:$VA,37:62,38:$V9,53:60,55:102,57:145},o($VF,[2,55]),o($VF,[2,56]),o($VF,[2,57]),{3:61,4:$V1,9:64,10:$V4,11:65,12:$V5,13:66,14:$V6,15:63,16:$V7,37:62,38:$V9,53:60,55:146},{3:61,4:$V1,9:64,10:$V4,11:65,12:$V5,13:66,14:$V6,15:63,16:$V7,37:62,38:$V9,53:60,55:147},{3:61,4:$V1,9:64,10:$V4,11:65,12:$V5,13:66,14:$V6,15:63,16:$V7,37:62,38:$V9,53:60,55:148},o($Vo,[2,44]),o($Vo,[2,45]),o($Vo,[2,46]),o($V0,[2,26]),o($VB,[2,35]),o($VB,[2,39]),o($VB,[2,40]),o($VB,[2,41]),o($VF,[2,53]),o($VF,[2,58]),o($VF,[2,59]),o($VF,[2,60])],
296
+ defaultActions: {29:[2,21]},
290
297
  parseError: function parseError (str, hash) {
291
298
  if (hash.recoverable) {
292
299
  this.trace(str);
@@ -798,9 +805,9 @@ case 17:return 38;
798
805
  break;
799
806
  case 18:return 40;
800
807
  break;
801
- case 19:return 58;
808
+ case 19:return 62;
802
809
  break;
803
- case 20:return 55;
810
+ case 20:return 59;
804
811
  break;
805
812
  case 21:return 6;
806
813
  break;
@@ -808,12 +815,14 @@ case 22:return 4;
808
815
  break;
809
816
  case 23:return 8;
810
817
  break;
811
- case 24:return 44;
818
+ case 24:return 42;
819
+ break;
820
+ case 25:return 47;
812
821
  break;
813
822
  }
814
823
  },
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}}
824
+ rules: [/^(?:[/][*]([*][^/]|[^*])*[*][/])/,/^(?:(\/\/|#|%|--)[^\n]*)/,/^(?:\s+)/,/^(?:<)/,/^(?:\{)/,/^(?:\[)/,/^(?:\()/,/^(?:>)/,/^(?:\})/,/^(?:\])/,/^(?:\))/,/^(?:=)/,/^(?:\.\.\.)/,/^(?:\.)/,/^(?:,)/,/^(?:;)/,/^(?::)/,/^(?:\$)/,/^(?:\?)/,/^(?:\|)/,/^(?:\^)/,/^(?:"([^"\\]|\\(.|\n))*"|'([^'\\]|\\(.|\n))*')/,/^(?:[a-zA-Z_][a-zA-Z0-9_?!]*)/,/^(?:0|[-]?[1-9][0-9]*)/,/^(?:\+\+\+)/,/^(?:$)/],
825
+ 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,25],"inclusive":true}}
817
826
  });
818
827
  return lexer;
819
828
  })();