@scinorandex/sparse 0.0.2 → 0.0.4

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.
Files changed (64) hide show
  1. package/README.md +2 -2
  2. package/dist/cli.js +2 -2
  3. package/dist/cli.js.map +1 -1
  4. package/dist/generator.d.ts +4 -1
  5. package/dist/generator.js +47 -32
  6. package/dist/generator.js.map +1 -1
  7. package/dist/index.d.ts +3 -2
  8. package/dist/index.js +5 -5
  9. package/dist/index.js.map +1 -1
  10. package/dist/meta/common.d.ts +57 -0
  11. package/dist/meta/common.js +62 -0
  12. package/dist/meta/common.js.map +1 -0
  13. package/dist/meta/handwritten.d.ts +12 -0
  14. package/dist/{grammarParser.js → meta/handwritten.js} +24 -24
  15. package/dist/meta/handwritten.js.map +1 -0
  16. package/dist/meta/selfhosted.d.ts +23 -0
  17. package/dist/meta/selfhosted.js +206 -0
  18. package/dist/meta/selfhosted.js.map +1 -0
  19. package/dist/meta/states.d.ts +1580 -0
  20. package/dist/meta/states.js +1493 -0
  21. package/dist/meta/states.js.map +1 -0
  22. package/dist/parser.d.ts +16 -5
  23. package/dist/parser.js +25 -7
  24. package/dist/parser.js.map +1 -1
  25. package/dist/{tableParser.d.ts → table/handwritten.d.ts} +1 -1
  26. package/dist/{tableParser.js → table/handwritten.js} +2 -2
  27. package/dist/table/handwritten.js.map +1 -0
  28. package/dist/table/selfhosted.d.ts +2 -0
  29. package/dist/table/selfhosted.js +65 -0
  30. package/dist/table/selfhosted.js.map +1 -0
  31. package/dist/table/states.d.ts +592 -0
  32. package/dist/table/states.js +593 -0
  33. package/dist/table/states.js.map +1 -0
  34. package/dist/utils/Result.d.ts +1 -1
  35. package/dist/utils/errorWindowBuilder.d.ts +1 -1
  36. package/example/LoLang/example.ts +14 -7
  37. package/example/complicated/grammar.txt +37 -0
  38. package/example/math/example.ts +1 -1
  39. package/example/selfhosted/01-meta-grammar.txt +10 -0
  40. package/example/selfhosted/02-table-grammar.txt +6 -0
  41. package/example/selfhosted/codegen-meta.ts +1489 -0
  42. package/example/selfhosted/codegen-table.ts +589 -0
  43. package/example/selfhosted/example.ts +39 -0
  44. package/example/sql/grammar.txt +50 -0
  45. package/example/sql/table.txt +238 -0
  46. package/package.json +3 -3
  47. package/src/cli.ts +1 -1
  48. package/src/generator.ts +52 -34
  49. package/src/index.ts +3 -2
  50. package/src/meta/common.ts +74 -0
  51. package/src/{grammarParser.ts → meta/handwritten.ts} +17 -21
  52. package/src/meta/selfhosted.ts +272 -0
  53. package/src/meta/states.ts +1489 -0
  54. package/src/parser.ts +53 -19
  55. package/src/{tableParser.ts → table/handwritten.ts} +5 -5
  56. package/src/table/selfhosted.ts +67 -0
  57. package/src/table/states.ts +589 -0
  58. package/src/utils/Result.ts +1 -1
  59. package/src/utils/errorWindowBuilder.ts +1 -1
  60. package/tsconfig.build.json +30 -0
  61. package/tsconfig.json +6 -6
  62. package/dist/grammarParser.d.ts +0 -27
  63. package/dist/grammarParser.js.map +0 -1
  64. package/dist/tableParser.js.map +0 -1
@@ -0,0 +1,589 @@
1
+ export const states = [
2
+ {
3
+ "[L_BRACKET]": {
4
+ "type": "shift",
5
+ "value": 5
6
+ },
7
+ "[L_ANGLE]": {
8
+ "type": "shift",
9
+ "value": 6
10
+ },
11
+ "<PROGRAM>": {
12
+ "type": "goto",
13
+ "value": 1
14
+ },
15
+ "<STATES>": {
16
+ "type": "goto",
17
+ "value": 2
18
+ },
19
+ "<ITEMS>": {
20
+ "type": "goto",
21
+ "value": 3
22
+ },
23
+ "<ITEM>": {
24
+ "type": "goto",
25
+ "value": 4
26
+ }
27
+ },
28
+ {
29
+ "[EOF]": {
30
+ "type": "reduce",
31
+ "value": 0
32
+ }
33
+ },
34
+ {
35
+ "[EOF]": {
36
+ "type": "shift",
37
+ "value": 7
38
+ }
39
+ },
40
+ {
41
+ "[EOF]": {
42
+ "type": "reduce",
43
+ "value": 2
44
+ },
45
+ "[L_BRACKET]": {
46
+ "type": "shift",
47
+ "value": 5
48
+ },
49
+ "[L_ANGLE]": {
50
+ "type": "shift",
51
+ "value": 6
52
+ },
53
+ "<STATES>": {
54
+ "type": "goto",
55
+ "value": 8
56
+ },
57
+ "<ITEMS>": {
58
+ "type": "goto",
59
+ "value": 3
60
+ },
61
+ "<ITEM>": {
62
+ "type": "goto",
63
+ "value": 4
64
+ }
65
+ },
66
+ {
67
+ "[EOF]": {
68
+ "type": "reduce",
69
+ "value": 4
70
+ },
71
+ "[L_BRACKET]": {
72
+ "type": "reduce",
73
+ "value": 4
74
+ },
75
+ "[L_ANGLE]": {
76
+ "type": "reduce",
77
+ "value": 4
78
+ },
79
+ "[COMMA]": {
80
+ "type": "shift",
81
+ "value": 9
82
+ }
83
+ },
84
+ {
85
+ "[IDENTIFIER]": {
86
+ "type": "shift",
87
+ "value": 10
88
+ }
89
+ },
90
+ {
91
+ "[IDENTIFIER]": {
92
+ "type": "shift",
93
+ "value": 11
94
+ }
95
+ },
96
+ {
97
+ "[EOF]": {
98
+ "type": "reduce",
99
+ "value": 1
100
+ }
101
+ },
102
+ {
103
+ "[EOF]": {
104
+ "type": "reduce",
105
+ "value": 3
106
+ }
107
+ },
108
+ {
109
+ "[L_BRACKET]": {
110
+ "type": "shift",
111
+ "value": 5
112
+ },
113
+ "[L_ANGLE]": {
114
+ "type": "shift",
115
+ "value": 6
116
+ },
117
+ "<ITEMS>": {
118
+ "type": "goto",
119
+ "value": 12
120
+ },
121
+ "<ITEM>": {
122
+ "type": "goto",
123
+ "value": 13
124
+ }
125
+ },
126
+ {
127
+ "[R_BRACKET]": {
128
+ "type": "shift",
129
+ "value": 14
130
+ }
131
+ },
132
+ {
133
+ "[R_ANGLE]": {
134
+ "type": "shift",
135
+ "value": 15
136
+ }
137
+ },
138
+ {
139
+ "[EOF]": {
140
+ "type": "reduce",
141
+ "value": 5
142
+ },
143
+ "[L_BRACKET]": {
144
+ "type": "reduce",
145
+ "value": 5
146
+ },
147
+ "[L_ANGLE]": {
148
+ "type": "reduce",
149
+ "value": 5
150
+ }
151
+ },
152
+ {
153
+ "[EOF]": {
154
+ "type": "reduce",
155
+ "value": 4
156
+ },
157
+ "[L_BRACKET]": {
158
+ "type": "reduce",
159
+ "value": 4
160
+ },
161
+ "[L_ANGLE]": {
162
+ "type": "reduce",
163
+ "value": 4
164
+ },
165
+ "[COMMA]": {
166
+ "type": "shift",
167
+ "value": 16
168
+ }
169
+ },
170
+ {
171
+ "[EQUALS]": {
172
+ "type": "shift",
173
+ "value": 17
174
+ }
175
+ },
176
+ {
177
+ "[EQUALS]": {
178
+ "type": "shift",
179
+ "value": 18
180
+ }
181
+ },
182
+ {
183
+ "[L_BRACKET]": {
184
+ "type": "shift",
185
+ "value": 5
186
+ },
187
+ "[L_ANGLE]": {
188
+ "type": "shift",
189
+ "value": 6
190
+ },
191
+ "<ITEMS>": {
192
+ "type": "goto",
193
+ "value": 19
194
+ },
195
+ "<ITEM>": {
196
+ "type": "goto",
197
+ "value": 13
198
+ }
199
+ },
200
+ {
201
+ "[IDENTIFIER]": {
202
+ "type": "shift",
203
+ "value": 20
204
+ }
205
+ },
206
+ {
207
+ "[NUMBER]": {
208
+ "type": "shift",
209
+ "value": 21
210
+ }
211
+ },
212
+ {
213
+ "[EOF]": {
214
+ "type": "reduce",
215
+ "value": 5
216
+ },
217
+ "[L_BRACKET]": {
218
+ "type": "reduce",
219
+ "value": 5
220
+ },
221
+ "[L_ANGLE]": {
222
+ "type": "reduce",
223
+ "value": 5
224
+ }
225
+ },
226
+ {
227
+ "[EOF]": {
228
+ "type": "reduce",
229
+ "value": 6
230
+ },
231
+ "[L_BRACKET]": {
232
+ "type": "reduce",
233
+ "value": 6
234
+ },
235
+ "[L_ANGLE]": {
236
+ "type": "reduce",
237
+ "value": 6
238
+ },
239
+ "[COMMA]": {
240
+ "type": "reduce",
241
+ "value": 6
242
+ }
243
+ },
244
+ {
245
+ "[EOF]": {
246
+ "type": "reduce",
247
+ "value": 7
248
+ },
249
+ "[L_BRACKET]": {
250
+ "type": "reduce",
251
+ "value": 7
252
+ },
253
+ "[L_ANGLE]": {
254
+ "type": "reduce",
255
+ "value": 7
256
+ },
257
+ "[COMMA]": {
258
+ "type": "reduce",
259
+ "value": 7
260
+ }
261
+ }
262
+ ];
263
+ export const productions = [
264
+ {
265
+ "lhs": {
266
+ "column": 1,
267
+ "lexeme": "S",
268
+ "line": 1,
269
+ "type": 0
270
+ },
271
+ "identifier": "<S>",
272
+ "name": null,
273
+ "originalProductionIndex": 0,
274
+ "rhs": [
275
+ {
276
+ "type": "variable",
277
+ "token": {
278
+ "column": 6,
279
+ "lexeme": "PROGRAM",
280
+ "line": 1,
281
+ "type": 0
282
+ },
283
+ "identifier": "<PROGRAM>",
284
+ "name": null
285
+ }
286
+ ]
287
+ },
288
+ {
289
+ "lhs": {
290
+ "column": 1,
291
+ "lexeme": "PROGRAM",
292
+ "line": 2,
293
+ "type": 0
294
+ },
295
+ "identifier": "<PROGRAM>",
296
+ "name": "program",
297
+ "originalProductionIndex": 1,
298
+ "rhs": [
299
+ {
300
+ "type": "variable",
301
+ "token": {
302
+ "column": 21,
303
+ "lexeme": "STATES",
304
+ "line": 2,
305
+ "type": 0
306
+ },
307
+ "identifier": "<STATES>",
308
+ "name": "states"
309
+ },
310
+ {
311
+ "type": "terminal",
312
+ "token": {
313
+ "column": 38,
314
+ "lexeme": "EOF",
315
+ "line": 2,
316
+ "type": 0
317
+ },
318
+ "identifier": "[EOF]",
319
+ "name": null
320
+ }
321
+ ]
322
+ },
323
+ {
324
+ "lhs": {
325
+ "column": 1,
326
+ "lexeme": "STATES",
327
+ "line": 3,
328
+ "type": 0
329
+ },
330
+ "identifier": "<STATES>",
331
+ "name": "states",
332
+ "originalProductionIndex": 2,
333
+ "rhs": [
334
+ {
335
+ "type": "variable",
336
+ "token": {
337
+ "column": 19,
338
+ "lexeme": "ITEMS",
339
+ "line": 3,
340
+ "type": 0
341
+ },
342
+ "identifier": "<ITEMS>",
343
+ "name": "state"
344
+ }
345
+ ]
346
+ },
347
+ {
348
+ "lhs": {
349
+ "column": 1,
350
+ "lexeme": "STATES",
351
+ "line": 3,
352
+ "type": 0
353
+ },
354
+ "identifier": "<STATES>",
355
+ "name": "states",
356
+ "originalProductionIndex": 2,
357
+ "rhs": [
358
+ {
359
+ "type": "variable",
360
+ "token": {
361
+ "column": 19,
362
+ "lexeme": "ITEMS",
363
+ "line": 3,
364
+ "type": 0
365
+ },
366
+ "identifier": "<ITEMS>",
367
+ "name": "state"
368
+ },
369
+ {
370
+ "type": "variable",
371
+ "token": {
372
+ "column": 35,
373
+ "lexeme": "STATES",
374
+ "line": 3,
375
+ "type": 0
376
+ },
377
+ "identifier": "<STATES>",
378
+ "name": "rest"
379
+ }
380
+ ]
381
+ },
382
+ {
383
+ "lhs": {
384
+ "column": 1,
385
+ "lexeme": "ITEMS",
386
+ "line": 4,
387
+ "type": 0
388
+ },
389
+ "identifier": "<ITEMS>",
390
+ "name": "items",
391
+ "originalProductionIndex": 3,
392
+ "rhs": [
393
+ {
394
+ "type": "variable",
395
+ "token": {
396
+ "column": 17,
397
+ "lexeme": "ITEM",
398
+ "line": 4,
399
+ "type": 0
400
+ },
401
+ "identifier": "<ITEM>",
402
+ "name": "item"
403
+ }
404
+ ]
405
+ },
406
+ {
407
+ "lhs": {
408
+ "column": 1,
409
+ "lexeme": "ITEMS",
410
+ "line": 4,
411
+ "type": 0
412
+ },
413
+ "identifier": "<ITEMS>",
414
+ "name": "items",
415
+ "originalProductionIndex": 3,
416
+ "rhs": [
417
+ {
418
+ "type": "variable",
419
+ "token": {
420
+ "column": 17,
421
+ "lexeme": "ITEM",
422
+ "line": 4,
423
+ "type": 0
424
+ },
425
+ "identifier": "<ITEM>",
426
+ "name": "item"
427
+ },
428
+ {
429
+ "type": "terminal",
430
+ "token": {
431
+ "column": 31,
432
+ "lexeme": "COMMA",
433
+ "line": 4,
434
+ "type": 0
435
+ },
436
+ "identifier": "[COMMA]",
437
+ "name": null
438
+ },
439
+ {
440
+ "type": "variable",
441
+ "token": {
442
+ "column": 39,
443
+ "lexeme": "ITEMS",
444
+ "line": 4,
445
+ "type": 0
446
+ },
447
+ "identifier": "<ITEMS>",
448
+ "name": "rest"
449
+ }
450
+ ]
451
+ },
452
+ {
453
+ "lhs": {
454
+ "column": 1,
455
+ "lexeme": "ITEM",
456
+ "line": 5,
457
+ "type": 0
458
+ },
459
+ "identifier": "<ITEM>",
460
+ "name": "terminal",
461
+ "originalProductionIndex": 4,
462
+ "rhs": [
463
+ {
464
+ "type": "terminal",
465
+ "token": {
466
+ "column": 19,
467
+ "lexeme": "L_BRACKET",
468
+ "line": 5,
469
+ "type": 0
470
+ },
471
+ "identifier": "[L_BRACKET]",
472
+ "name": null
473
+ },
474
+ {
475
+ "type": "terminal",
476
+ "token": {
477
+ "column": 31,
478
+ "lexeme": "IDENTIFIER",
479
+ "line": 5,
480
+ "type": 0
481
+ },
482
+ "identifier": "[IDENTIFIER]",
483
+ "name": "name"
484
+ },
485
+ {
486
+ "type": "terminal",
487
+ "token": {
488
+ "column": 50,
489
+ "lexeme": "R_BRACKET",
490
+ "line": 5,
491
+ "type": 0
492
+ },
493
+ "identifier": "[R_BRACKET]",
494
+ "name": null
495
+ },
496
+ {
497
+ "type": "terminal",
498
+ "token": {
499
+ "column": 62,
500
+ "lexeme": "EQUALS",
501
+ "line": 5,
502
+ "type": 0
503
+ },
504
+ "identifier": "[EQUALS]",
505
+ "name": null
506
+ },
507
+ {
508
+ "type": "terminal",
509
+ "token": {
510
+ "column": 71,
511
+ "lexeme": "IDENTIFIER",
512
+ "line": 5,
513
+ "type": 0
514
+ },
515
+ "identifier": "[IDENTIFIER]",
516
+ "name": "action"
517
+ }
518
+ ]
519
+ },
520
+ {
521
+ "lhs": {
522
+ "column": 1,
523
+ "lexeme": "ITEM",
524
+ "line": 6,
525
+ "type": 0
526
+ },
527
+ "identifier": "<ITEM>",
528
+ "name": "variable",
529
+ "originalProductionIndex": 5,
530
+ "rhs": [
531
+ {
532
+ "type": "terminal",
533
+ "token": {
534
+ "column": 19,
535
+ "lexeme": "L_ANGLE",
536
+ "line": 6,
537
+ "type": 0
538
+ },
539
+ "identifier": "[L_ANGLE]",
540
+ "name": null
541
+ },
542
+ {
543
+ "type": "terminal",
544
+ "token": {
545
+ "column": 29,
546
+ "lexeme": "IDENTIFIER",
547
+ "line": 6,
548
+ "type": 0
549
+ },
550
+ "identifier": "[IDENTIFIER]",
551
+ "name": "name"
552
+ },
553
+ {
554
+ "type": "terminal",
555
+ "token": {
556
+ "column": 48,
557
+ "lexeme": "R_ANGLE",
558
+ "line": 6,
559
+ "type": 0
560
+ },
561
+ "identifier": "[R_ANGLE]",
562
+ "name": null
563
+ },
564
+ {
565
+ "type": "terminal",
566
+ "token": {
567
+ "column": 58,
568
+ "lexeme": "EQUALS",
569
+ "line": 6,
570
+ "type": 0
571
+ },
572
+ "identifier": "[EQUALS]",
573
+ "name": null
574
+ },
575
+ {
576
+ "type": "terminal",
577
+ "token": {
578
+ "column": 67,
579
+ "lexeme": "NUMBER",
580
+ "line": 6,
581
+ "type": 0
582
+ },
583
+ "identifier": "[NUMBER]",
584
+ "name": "state"
585
+ }
586
+ ]
587
+ }
588
+ ];
589
+ export const selfhosted = { states, productions };
@@ -1,3 +1,3 @@
1
- import { GrammarToken } from "src/grammarParser";
1
+ import { GrammarToken } from "../meta/common";
2
2
 
3
3
  export type Result<T> = { success: true; value: T } | { success: false; reason: string; token: GrammarToken };
@@ -1,4 +1,4 @@
1
- import type { GrammarToken } from "src/grammarParser";
1
+ import { GrammarToken } from "../meta/common";
2
2
 
3
3
  export const buildErrorWindow = (file: string, token: GrammarToken) => {
4
4
  const lines = file.split("\n");
@@ -0,0 +1,30 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "es2017",
4
+ "module": "nodenext",
5
+ "lib": ["dom", "es6", "es2023", "esnext.asynciterable"],
6
+ "skipLibCheck": true,
7
+ "sourceMap": true,
8
+ "outDir": "./dist",
9
+ "moduleResolution": "nodenext",
10
+ "removeComments": true,
11
+ "noImplicitAny": true,
12
+ "strict": true,
13
+ "strictNullChecks": true,
14
+ "strictFunctionTypes": true,
15
+ "noImplicitThis": true,
16
+ // "noUnusedLocals": true,
17
+ // "noUnusedParameters": true,
18
+ "noImplicitReturns": true,
19
+ "noFallthroughCasesInSwitch": true,
20
+ "allowSyntheticDefaultImports": true,
21
+ "esModuleInterop": true,
22
+ "emitDecoratorMetadata": true,
23
+ "experimentalDecorators": true,
24
+ "resolveJsonModule": true,
25
+ "declaration": true,
26
+ "types": ["node"]
27
+ },
28
+ "exclude": ["node_modules"],
29
+ "include": ["./src/**/*.ts"]
30
+ }
package/tsconfig.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "compilerOptions": {
3
3
  "target": "es2017",
4
- "module": "commonjs",
5
- "lib": ["dom", "es6", "es2021", "esnext.asynciterable"],
4
+ "module": "nodenext",
5
+ "lib": ["dom", "es6", "es2023", "esnext.asynciterable"],
6
6
  "skipLibCheck": true,
7
7
  "sourceMap": true,
8
8
  "outDir": "./dist",
9
- "moduleResolution": "node",
9
+ "moduleResolution": "nodenext",
10
10
  "removeComments": true,
11
11
  "noImplicitAny": true,
12
12
  "strict": true,
@@ -22,9 +22,9 @@
22
22
  "emitDecoratorMetadata": true,
23
23
  "experimentalDecorators": true,
24
24
  "resolveJsonModule": true,
25
- "baseUrl": ".",
26
- "declaration": true
25
+ "declaration": true,
26
+ "types": ["node"]
27
27
  },
28
28
  "exclude": ["node_modules"],
29
- "include": ["./src/**/*.ts"]
29
+ "include": ["./src/**/*.ts", "./example/**/*.ts"]
30
30
  }
@@ -1,27 +0,0 @@
1
- import { Slex, Token } from "@scinorandex/slex";
2
- import { Result } from "./utils/Result";
3
- export type Production = {
4
- lhs: GrammarToken;
5
- rhs: {
6
- type: "terminal" | "variable";
7
- token: GrammarToken;
8
- }[];
9
- };
10
- export type GrammarTokenMetadata = {};
11
- export declare enum GrammarTokenType {
12
- PRODUCTION_NAME = 0,
13
- TOKEN_NAME = 1,
14
- COLON = 2,
15
- SEMICOLON = 3,
16
- EOF = 4
17
- }
18
- export type GrammarToken = Token<GrammarTokenType, GrammarTokenMetadata>;
19
- export declare const grammarLexerGenerator: Slex<GrammarTokenType, GrammarTokenMetadata>;
20
- interface LexerInterface {
21
- peekNextToken(): GrammarToken;
22
- getNextToken(): GrammarToken;
23
- hasNextToken(): boolean;
24
- }
25
- export declare const tryBuildProductions: (lexer: LexerInterface | string) => Result<Production[]>;
26
- export declare const buildProductions: (lexer: LexerInterface | string) => Production[];
27
- export {};
@@ -1 +0,0 @@
1
- {"version":3,"file":"grammarParser.js","sourceRoot":"","sources":["../src/grammarParser.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tableParser.js","sourceRoot":"","sources":["../src/tableParser.ts"],"names":[],"mappings":"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"}