grammar-well 2.0.0 → 2.0.1

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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "grammar-well",
3
3
  "type": "module",
4
- "version": "2.0.0",
4
+ "version": "2.0.1",
5
5
  "description": "Cross-platform Parser written in TypeScript",
6
6
  "scripts": {
7
7
  "prebuild": "tsc --build --clean && tsx scripts/prebuild.ts",
@@ -1,183 +0,0 @@
1
- declare class grammar {
2
- artifacts: {
3
- grammar: {
4
- rules: {
5
- _: {
6
- name: string;
7
- postprocess: ({ data }: {
8
- data: any;
9
- }) => any;
10
- symbols: string[];
11
- }[];
12
- _$RPT01x1: {
13
- name: string;
14
- postprocess: ({ data }: {
15
- data: any;
16
- }) => any;
17
- symbols: {
18
- token: string;
19
- }[];
20
- }[];
21
- __: {
22
- name: string;
23
- postprocess: ({ data }: {
24
- data: any;
25
- }) => any;
26
- symbols: string[];
27
- }[];
28
- __$RPT1Nx1: ({
29
- name: string;
30
- symbols: {
31
- token: string;
32
- }[];
33
- postprocess?: undefined;
34
- } | {
35
- name: string;
36
- postprocess: ({ data }: {
37
- data: any;
38
- }) => any;
39
- symbols: (string | {
40
- token: string;
41
- })[];
42
- })[];
43
- array: {
44
- name: string;
45
- postprocess: ({ data }: {
46
- data: any;
47
- }) => any[];
48
- symbols: (string | {
49
- literal: string;
50
- })[];
51
- }[];
52
- array$RPT0Nx1: ({
53
- name: string;
54
- symbols: any[];
55
- postprocess?: undefined;
56
- } | {
57
- name: string;
58
- postprocess: ({ data }: {
59
- data: any;
60
- }) => any;
61
- symbols: string[];
62
- })[];
63
- array$RPT0Nx1$SUBx1: {
64
- name: string;
65
- symbols: (string | {
66
- literal: string;
67
- })[];
68
- }[];
69
- json: {
70
- name: string;
71
- postprocess: ({ data }: {
72
- data: any;
73
- }) => any;
74
- symbols: string[];
75
- }[];
76
- json$SUBx1: {
77
- name: string;
78
- symbols: string[];
79
- }[];
80
- key: {
81
- name: string;
82
- postprocess: ({ data }: {
83
- data: any;
84
- }) => any;
85
- symbols: string[];
86
- }[];
87
- number: {
88
- name: string;
89
- postprocess: ({ data }: {
90
- data: any;
91
- }) => number;
92
- symbols: {
93
- token: string;
94
- }[];
95
- }[];
96
- object: {
97
- name: string;
98
- postprocess: ({ data }: {
99
- data: any;
100
- }) => {};
101
- symbols: (string | {
102
- literal: string;
103
- })[];
104
- }[];
105
- object$RPT0Nx1: ({
106
- name: string;
107
- symbols: any[];
108
- postprocess?: undefined;
109
- } | {
110
- name: string;
111
- postprocess: ({ data }: {
112
- data: any;
113
- }) => any;
114
- symbols: string[];
115
- })[];
116
- object$RPT0Nx1$SUBx1: {
117
- name: string;
118
- symbols: (string | {
119
- literal: string;
120
- })[];
121
- }[];
122
- pair: {
123
- name: string;
124
- postprocess: ({ data }: {
125
- data: any;
126
- }) => any[];
127
- symbols: (string | {
128
- literal: string;
129
- })[];
130
- }[];
131
- string: {
132
- name: string;
133
- postprocess: ({ data }: {
134
- data: any;
135
- }) => any;
136
- symbols: {
137
- token: string;
138
- }[];
139
- }[];
140
- value: ({
141
- name: string;
142
- postprocess: ({ data }: {
143
- data: any;
144
- }) => any;
145
- symbols: string[];
146
- } | {
147
- name: string;
148
- postprocess: ({ data }: {
149
- data: any;
150
- }) => any;
151
- symbols: {
152
- literal: string;
153
- }[];
154
- })[];
155
- };
156
- start: string;
157
- };
158
- lexer: {
159
- start: string;
160
- states: {
161
- json: {
162
- regex: RegExp;
163
- rules: ({
164
- tag: string[];
165
- when: RegExp;
166
- } | {
167
- tag: string[];
168
- when: string;
169
- })[];
170
- };
171
- whitespace: {
172
- regex: RegExp;
173
- rules: {
174
- tag: string[];
175
- when: RegExp;
176
- }[];
177
- };
178
- };
179
- };
180
- };
181
- constructor();
182
- }
183
- export default grammar;
@@ -1,124 +0,0 @@
1
- function extractPair(kv, output) {
2
- if (kv[0]) {
3
- output[kv[0]] = kv[1];
4
- }
5
- }
6
- function extractObject({ data }) {
7
- let output = {};
8
- extractPair(data[2], output);
9
- for (let i in data[3]) {
10
- extractPair(data[3][i][3], output);
11
- }
12
- return output;
13
- }
14
- function extractArray({ data }) {
15
- let output = [data[2]];
16
- for (let i in data[3]) {
17
- output.push(data[3][i][3]);
18
- }
19
- return output;
20
- }
21
- class grammar {
22
- artifacts = {
23
- grammar: {
24
- rules: {
25
- _: [
26
- { name: "_", postprocess: ({ data }) => { return (null); }, symbols: ["_$RPT01x1"] }
27
- ],
28
- _$RPT01x1: [
29
- { name: "_$RPT01x1", postprocess: ({ data }) => data[0], symbols: [{ token: "whitespace" }] },
30
- { name: "_$RPT01x1", postprocess: () => null, symbols: [] }
31
- ],
32
- __: [
33
- { name: "__", postprocess: ({ data }) => { return (null); }, symbols: ["__$RPT1Nx1"] }
34
- ],
35
- __$RPT1Nx1: [
36
- { name: "__$RPT1Nx1", symbols: [{ token: "whitespace" }] },
37
- { name: "__$RPT1Nx1", postprocess: ({ data }) => data[0].concat([data[1]]), symbols: ["__$RPT1Nx1", { token: "whitespace" }] }
38
- ],
39
- array: [
40
- { name: "array", postprocess: ({ data }) => { return ([]); }, symbols: [{ literal: "[" }, "_", { literal: "]" }] },
41
- { name: "array", postprocess: extractArray, symbols: [{ literal: "[" }, "_", "value", "array$RPT0Nx1", "_", { literal: "]" }] }
42
- ],
43
- array$RPT0Nx1: [
44
- { name: "array$RPT0Nx1", symbols: [] },
45
- { name: "array$RPT0Nx1", postprocess: ({ data }) => data[0].concat([data[1]]), symbols: ["array$RPT0Nx1", "array$RPT0Nx1$SUBx1"] }
46
- ],
47
- array$RPT0Nx1$SUBx1: [
48
- { name: "array$RPT0Nx1$SUBx1", symbols: ["_", { literal: "," }, "_", "value"] }
49
- ],
50
- json: [
51
- { name: "json", postprocess: ({ data }) => { return (data[1][0]); }, symbols: ["_", "json$SUBx1", "_"] }
52
- ],
53
- json$SUBx1: [
54
- { name: "json$SUBx1", symbols: ["object"] },
55
- { name: "json$SUBx1", symbols: ["array"] }
56
- ],
57
- key: [
58
- { name: "key", postprocess: ({ data }) => { return (data[0]); }, symbols: ["string"] }
59
- ],
60
- number: [
61
- { name: "number", postprocess: ({ data }) => { return (parseFloat(data[0].value)); }, symbols: [{ token: "number" }] }
62
- ],
63
- object: [
64
- { name: "object", postprocess: ({ data }) => { return ({}); }, symbols: [{ literal: "{" }, "_", { literal: "}" }] },
65
- { name: "object", postprocess: extractObject, symbols: [{ literal: "{" }, "_", "pair", "object$RPT0Nx1", "_", { literal: "}" }] }
66
- ],
67
- object$RPT0Nx1: [
68
- { name: "object$RPT0Nx1", symbols: [] },
69
- { name: "object$RPT0Nx1", postprocess: ({ data }) => data[0].concat([data[1]]), symbols: ["object$RPT0Nx1", "object$RPT0Nx1$SUBx1"] }
70
- ],
71
- object$RPT0Nx1$SUBx1: [
72
- { name: "object$RPT0Nx1$SUBx1", symbols: ["_", { literal: "," }, "_", "pair"] }
73
- ],
74
- pair: [
75
- { name: "pair", postprocess: ({ data }) => { return ([data[0], data[4]]); }, symbols: ["key", "_", { literal: ":" }, "_", "value"] }
76
- ],
77
- string: [
78
- { name: "string", postprocess: ({ data }) => { return (JSON.parse(data[0].value)); }, symbols: [{ token: "string" }] }
79
- ],
80
- value: [
81
- { name: "value", postprocess: ({ data }) => { return (data[0]); }, symbols: ["object"] },
82
- { name: "value", postprocess: ({ data }) => { return (data[0]); }, symbols: ["array"] },
83
- { name: "value", postprocess: ({ data }) => { return (data[0]); }, symbols: ["number"] },
84
- { name: "value", postprocess: ({ data }) => { return (data[0]); }, symbols: ["string"] },
85
- { name: "value", postprocess: ({ data }) => { return (true); }, symbols: [{ literal: "true" }] },
86
- { name: "value", postprocess: ({ data }) => { return (false); }, symbols: [{ literal: "false" }] },
87
- { name: "value", postprocess: ({ data }) => { return (null); }, symbols: [{ literal: "null" }] }
88
- ]
89
- },
90
- start: "json"
91
- },
92
- lexer: {
93
- start: "json",
94
- states: {
95
- json: {
96
- regex: /(?:(?:(\s+))|(?:(-?(?:[0-9]|[1-9][0-9]+)(?:\.[0-9]+)?(?:[eE][-+]?[0-9]+)?\b))|(?:(\"(?:\\[\"bfnrt\/\\]|\\u[a-fA-F0-9]{4}|[^\"\\])*\"))|(?:((?:\{)))|(?:((?:\})))|(?:((?:\[)))|(?:((?:\])))|(?:((?:,)))|(?:((?::)))|(?:((?:true)))|(?:((?:false)))|(?:((?:null))))/ym,
97
- rules: [
98
- { tag: ["whitespace"], when: /\s+/ },
99
- { tag: ["number"], when: /-?(?:[0-9]|[1-9][0-9]+)(?:\.[0-9]+)?(?:[eE][-+]?[0-9]+)?\b/ },
100
- { tag: ["string"], when: /\"(?:\\[\"bfnrt\/\\]|\\u[a-fA-F0-9]{4}|[^\"\\])*\"/ },
101
- { tag: ["{"], when: "{" },
102
- { tag: ["}"], when: "}" },
103
- { tag: ["["], when: "[" },
104
- { tag: ["]"], when: "]" },
105
- { tag: [","], when: "," },
106
- { tag: [":"], when: ":" },
107
- { tag: ["true"], when: "true" },
108
- { tag: ["false"], when: "false" },
109
- { tag: ["null"], when: "null" }
110
- ]
111
- },
112
- whitespace: {
113
- regex: /(?:(?:(\s+)))/ym,
114
- rules: [
115
- { tag: ["whitespace"], when: /\s+/ }
116
- ]
117
- }
118
- }
119
- }
120
- };
121
- constructor() { }
122
- }
123
- export default grammar;
124
- //# sourceMappingURL=json.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"json.js","sourceRoot":"","sources":["../../../src/generator/builtin/json.ts"],"names":[],"mappings":"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"}
@@ -1,61 +0,0 @@
1
- declare class grammar {
2
- artifacts: {
3
- grammar: {
4
- rules: {
5
- _: {
6
- name: string;
7
- postprocess: ({ data }: {
8
- data: any;
9
- }) => any;
10
- symbols: string[];
11
- }[];
12
- _$RPT01x1: {
13
- name: string;
14
- postprocess: ({ data }: {
15
- data: any;
16
- }) => any;
17
- symbols: {
18
- token: string;
19
- }[];
20
- }[];
21
- __: {
22
- name: string;
23
- postprocess: ({ data }: {
24
- data: any;
25
- }) => any;
26
- symbols: string[];
27
- }[];
28
- __$RPT1Nx1: ({
29
- name: string;
30
- symbols: {
31
- token: string;
32
- }[];
33
- postprocess?: undefined;
34
- } | {
35
- name: string;
36
- postprocess: ({ data }: {
37
- data: any;
38
- }) => any;
39
- symbols: (string | {
40
- token: string;
41
- })[];
42
- })[];
43
- };
44
- start: string;
45
- };
46
- lexer: {
47
- start: string;
48
- states: {
49
- whitespace: {
50
- regex: RegExp;
51
- rules: {
52
- tag: string[];
53
- when: RegExp;
54
- }[];
55
- };
56
- };
57
- };
58
- };
59
- constructor();
60
- }
61
- export default grammar;
@@ -1,37 +0,0 @@
1
- class grammar {
2
- artifacts = {
3
- grammar: {
4
- rules: {
5
- _: [
6
- { name: "_", postprocess: ({ data }) => { return (null); }, symbols: ["_$RPT01x1"] }
7
- ],
8
- _$RPT01x1: [
9
- { name: "_$RPT01x1", postprocess: ({ data }) => data[0], symbols: [{ token: "whitespace" }] },
10
- { name: "_$RPT01x1", postprocess: () => null, symbols: [] }
11
- ],
12
- __: [
13
- { name: "__", postprocess: ({ data }) => { return (null); }, symbols: ["__$RPT1Nx1"] }
14
- ],
15
- __$RPT1Nx1: [
16
- { name: "__$RPT1Nx1", symbols: [{ token: "whitespace" }] },
17
- { name: "__$RPT1Nx1", postprocess: ({ data }) => data[0].concat([data[1]]), symbols: ["__$RPT1Nx1", { token: "whitespace" }] }
18
- ]
19
- },
20
- start: "_"
21
- },
22
- lexer: {
23
- start: "whitespace",
24
- states: {
25
- whitespace: {
26
- regex: /(?:(?:(\s+)))/ym,
27
- rules: [
28
- { tag: ["whitespace"], when: /\s+/ }
29
- ]
30
- }
31
- }
32
- }
33
- };
34
- constructor() { }
35
- }
36
- export default grammar;
37
- //# sourceMappingURL=whitespace.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"whitespace.js","sourceRoot":"","sources":["../../../src/generator/builtin/whitespace.ts"],"names":[],"mappings":"AAMA,MAAM,OAAO;IACT,SAAS,GAAI;QACT,OAAO,EAAE;YACL,KAAK,EAAE;gBACH,CAAC,EAAE;oBACC,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,EAAC,IAAI,EAAC,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAE,WAAW,CAAE,EAAE;iBACvF;gBACD,SAAS,EAAE;oBACP,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,EAAC,IAAI,EAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAE,EAAE;oBAC7F,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAG,EAAE;iBAC/D;gBACD,EAAE,EAAE;oBACA,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,EAAC,IAAI,EAAC,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAE,YAAY,CAAE,EAAE;iBACzF;gBACD,UAAU,EAAE;oBACR,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,CAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAE,EAAE;oBAC5D,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,EAAC,IAAI,EAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAE,YAAY,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAE,EAAE;iBACjI;aACJ;YACD,KAAK,EAAE,GAAG;SACb;QACD,KAAK,EAAE;YACH,KAAK,EAAE,YAAY;YACnB,MAAM,EAAE;gBACJ,UAAU,EAAE;oBACR,KAAK,EAAE,iBAAiB;oBACxB,KAAK,EAAE;wBACH,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE;qBACvC;iBACJ;aACJ;SACJ;KACJ,CAAA;IACD,gBAAc,CAAC;CAClB;AAED,eAAe,OAAO,CAAC"}
@@ -1,2 +0,0 @@
1
- import { ImportResolverConstructor } from "../../typings/index.js";
2
- export declare const DefaultImportResolver: ImportResolverConstructor;
@@ -1,11 +0,0 @@
1
- let resolver;
2
- if (typeof process && process?.release?.name?.search(/node|io\.js/) >= 0) {
3
- const { FileSystemResolver } = await import("./filesystem.js");
4
- resolver = FileSystemResolver;
5
- }
6
- else {
7
- const { BrowserImportResolver } = await import("./browser.js");
8
- resolver = BrowserImportResolver;
9
- }
10
- export const DefaultImportResolver = resolver;
11
- //# sourceMappingURL=default.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"default.js","sourceRoot":"","sources":["../../../src/generator/import-resolvers/default.ts"],"names":[],"mappings":"AACA,IAAI,QAAQ,CAAC;AAEb,IAAI,OAAO,OAAO,IAAI,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;IACvE,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAC/D,QAAQ,GAAG,kBAAkB,CAAC;AAClC,CAAC;KAAM,CAAC;IACJ,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;IAC/D,QAAQ,GAAG,qBAAqB,CAAC;AACrC,CAAC;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,QAAqC,CAAC"}
@@ -1,15 +0,0 @@
1
- import { ParserAlgorithm, RuntimeGrammarProductionRule, RuntimeGrammarRuleSymbol, RuntimeLanguageDefinition, RuntimeLexerToken } from "../typings/index.js";
2
- declare const ParserRegistry: {
3
- [key: string]: ParserAlgorithm;
4
- };
5
- export declare function Parse(language: RuntimeLanguageDefinition, input: string, options?: ParserOptions, results?: 'full' | 'first'): any;
6
- export declare class ParserUtility {
7
- static SymbolMatchesToken(symbol: RuntimeGrammarRuleSymbol, token: RuntimeLexerToken): boolean;
8
- static SymbolIsTerminal(symbol: RuntimeGrammarRuleSymbol): boolean;
9
- static PostProcess(rule: RuntimeGrammarProductionRule, data: any, meta?: any): any;
10
- }
11
- interface ParserOptions {
12
- algorithm: (keyof typeof ParserRegistry) | ParserAlgorithm;
13
- parserOptions?: any;
14
- }
15
- export {};
@@ -1,58 +0,0 @@
1
- import { CharacterLexer } from "../lexers/character-lexer.js";
2
- import { StatefulLexer } from "../lexers/stateful-lexer.js";
3
- import { TokenBuffer } from "../lexers/token-buffer.js";
4
- import { CYK } from "./algorithms/cyk.js";
5
- import { Earley } from "./algorithms/earley.js";
6
- import { LRK } from "./algorithms/lrk/algorithm.js";
7
- const ParserRegistry = {
8
- earley: Earley,
9
- cyk: CYK,
10
- lr0: LRK
11
- };
12
- export function Parse(language, input, options = {
13
- algorithm: 'earley',
14
- parserOptions: {}
15
- }, results = 'first') {
16
- const tokenizer = GetTokenizer(language);
17
- tokenizer.feed(input);
18
- const algorithm = typeof options.algorithm == 'function' ? options.algorithm : ParserRegistry[options.algorithm];
19
- const result = algorithm({ ...language, tokens: tokenizer, utility: ParserUtility }, options.parserOptions);
20
- return results == 'full' ? result : result.results[0];
21
- }
22
- function GetTokenizer({ lexer }) {
23
- if (!lexer) {
24
- return new TokenBuffer(new CharacterLexer());
25
- }
26
- else if ("feed" in lexer && typeof lexer.feed == 'function') {
27
- return new TokenBuffer(lexer);
28
- }
29
- else if ('states' in lexer) {
30
- return new TokenBuffer(new StatefulLexer(lexer));
31
- }
32
- }
33
- export class ParserUtility {
34
- static SymbolMatchesToken(symbol, token) {
35
- if (typeof symbol === 'string')
36
- throw 'Attempted to match token against non-terminal';
37
- if (typeof symbol == 'function')
38
- return symbol(token);
39
- if (!symbol)
40
- return;
41
- if ("test" in symbol)
42
- return symbol.test(token.value);
43
- if ("token" in symbol)
44
- return symbol.token === token.type || token.tag?.has(symbol.token);
45
- if ("literal" in symbol)
46
- return symbol.literal === token.value;
47
- }
48
- static SymbolIsTerminal(symbol) {
49
- return typeof symbol != 'string';
50
- }
51
- static PostProcess(rule, data, meta) {
52
- if (rule.postprocess) {
53
- return rule.postprocess({ rule, data, meta });
54
- }
55
- return data;
56
- }
57
- }
58
- //# sourceMappingURL=parser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/parser/parser.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export declare function Formatter(source: string, version?: '1' | '2'): string;
@@ -1,12 +0,0 @@
1
- import V1Grammar from '../generator/grammars/v1';
2
- import V2Grammar from '../generator/grammars/v2';
3
- import { V2GrammarString } from "../generator/stringify/grammar/v2";
4
- import { Parse } from "../parser/parser";
5
- export function Formatter(source, version = '2') {
6
- const grammar = version.toString() == '1' ? V1Grammar : V2Grammar;
7
- const result = Parse(grammar(), source);
8
- const stringer = new V2GrammarString();
9
- stringer.append(result);
10
- return stringer.source;
11
- }
12
- //# sourceMappingURL=formatter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"formatter.js","sourceRoot":"","sources":["../../src/utility/formatter.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,0BAA0B,CAAC;AACjD,OAAO,SAAS,MAAM,0BAA0B,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,MAAM,UAAU,SAAS,CAAC,MAAc,EAAE,UAAqB,GAAG;IAC9D,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,EAAS,EAAE,MAAM,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;IACvC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACxB,OAAO,QAAQ,CAAC,MAAM,CAAC;AAC3B,CAAC"}
@@ -1 +0,0 @@
1
- export declare function MigrateV1toV2(content: string): string;
@@ -1,10 +0,0 @@
1
- import v1 from '../generator/grammars/v1';
2
- import { V2GrammarString } from "../generator/stringify/grammar/v2";
3
- import { Parser } from "../parser/parser";
4
- export function MigrateV1toV2(content) {
5
- const parser = new Parser(v1());
6
- const stringer = new V2GrammarString();
7
- stringer.append(parser.run(content).results[0]);
8
- return stringer.source;
9
- }
10
- //# sourceMappingURL=migrate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../src/utility/migrate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE1C,MAAM,UAAU,aAAa,CAAC,OAAe;IACzC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,EAAS,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;IACvC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAChD,OAAO,QAAQ,CAAC,MAAM,CAAC;AAE3B,CAAC"}