yapp 5.1.322 → 5.1.324

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 (84) hide show
  1. package/lib/colours.js +114 -0
  2. package/lib/constants.js +46 -0
  3. package/lib/customEventTypes.js +13 -0
  4. package/lib/defaults.js +42 -0
  5. package/lib/div/gutter.js +73 -0
  6. package/lib/div/lineNumbers.js +62 -0
  7. package/lib/div/pretty.js +78 -0
  8. package/lib/div/syntax.js +101 -0
  9. package/lib/example/constants.js +13 -0
  10. package/lib/example/view/div/sizeable/left.js +30 -0
  11. package/lib/example/view/div/sizeable/middle.js +30 -0
  12. package/lib/example/view/div/sizeable/right.js +30 -0
  13. package/lib/example/view/div/sizeable/top.js +30 -0
  14. package/lib/example/view/input.js +27 -0
  15. package/lib/example/view/javascript.js +51 -0
  16. package/lib/example/view/json.js +38 -0
  17. package/lib/example/view/plainText.js +27 -0
  18. package/lib/example/view/subHeading.js +29 -0
  19. package/lib/example/view/textarea/bnf.js +39 -0
  20. package/lib/example/view/textarea/lexicalEntries.js +39 -0
  21. package/lib/example/view/textarea/parseTree.js +46 -0
  22. package/lib/example/view/textarea/tokens.js +59 -0
  23. package/lib/example/view/textarea.js +31 -0
  24. package/lib/example/view/xml.js +42 -0
  25. package/lib/example/view.js +107 -0
  26. package/lib/example/yapp.js +25 -0
  27. package/lib/example.js +39 -0
  28. package/lib/index.js +55 -0
  29. package/lib/languages.js +30 -0
  30. package/lib/lexer/javascript.js +55 -0
  31. package/lib/lexer/json.js +46 -0
  32. package/lib/lexer/plainText.js +37 -0
  33. package/lib/lexer/xml.js +43 -0
  34. package/lib/mixins/style.js +72 -0
  35. package/lib/parser/javascript.js +289 -0
  36. package/lib/parser/json.js +44 -0
  37. package/lib/parser/plainText.js +28 -0
  38. package/lib/parser/xml.js +68 -0
  39. package/lib/plugin/javascript.js +31 -0
  40. package/lib/plugin/json.js +31 -0
  41. package/lib/plugin/plainText.js +31 -0
  42. package/lib/plugin/xml.js +31 -0
  43. package/lib/plugin.js +58 -0
  44. package/lib/prettyPrinter.js +102 -0
  45. package/lib/processor/javascript.js +82 -0
  46. package/lib/processor/json.js +35 -0
  47. package/lib/processor/plainText.js +26 -0
  48. package/lib/processor/xml.js +50 -0
  49. package/lib/processor.js +67 -0
  50. package/lib/renderYappStyles.js +27 -0
  51. package/lib/richTextarea.js +86 -0
  52. package/lib/scheme/colour.js +55 -0
  53. package/lib/scheme/syntax/default.js +31 -0
  54. package/lib/scheme/syntax/javaScript.js +31 -0
  55. package/lib/scheme/syntax/json.js +14 -0
  56. package/lib/scheme/syntax/xml.js +23 -0
  57. package/lib/style/firaCode.js +29 -0
  58. package/lib/style/syntax/default.js +44 -0
  59. package/lib/style/syntax/javaScript.js +25 -0
  60. package/lib/style/syntax/json.js +19 -0
  61. package/lib/style/syntax/xml.js +21 -0
  62. package/lib/style/syntax.js +33 -0
  63. package/lib/style/yapp.js +81 -0
  64. package/lib/styles.js +22 -0
  65. package/lib/token/significant/argument.js +20 -0
  66. package/lib/token/significant/attribute.js +20 -0
  67. package/lib/token/significant/comment.js +20 -0
  68. package/lib/token/significant/error.js +20 -0
  69. package/lib/token/significant/jsx/attributeName.js +20 -0
  70. package/lib/token/significant/jsx/tagName.js +20 -0
  71. package/lib/token/significant/name.js +20 -0
  72. package/lib/token/significant/string.js +20 -0
  73. package/lib/token/significant/variable.js +20 -0
  74. package/lib/tokenTypes.js +46 -0
  75. package/lib/utilities/configuration.js +22 -0
  76. package/lib/utilities/content.js +43 -0
  77. package/lib/utilities/css.js +24 -0
  78. package/lib/utilities/element.js +33 -0
  79. package/lib/utilities/plugin.js +48 -0
  80. package/lib/utilities/rules.js +34 -0
  81. package/lib/utilities/scrollbar.js +35 -0
  82. package/lib/utilities/tokens.js +22 -0
  83. package/lib/yapp.js +142 -0
  84. package/package.json +6 -6
@@ -0,0 +1,289 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return JavaScriptParser;
9
+ }
10
+ });
11
+ const _occamparsers = require("occam-parsers");
12
+ const _occamgrammarutilities = require("occam-grammar-utilities");
13
+ const { rulesFromBNF, parserFromRules } = _occamparsers.parserUtilities;
14
+ const bnf = `
15
+
16
+ javaScript ::= preamble? ( statement | function | class | error )* ;
17
+
18
+
19
+ preamble ::= "\\"use strict\\";" ;
20
+
21
+
22
+ statement ::= statementBody... ";"
23
+
24
+ | "{" ( statement | function )* "}"
25
+
26
+ | "if" "(" expression... ")" statement ( "else" statement )?
27
+
28
+ | "for" ( ( "(" initialiser ( ";" expression )? ( ";" expression )? ")" statement )
29
+
30
+ | ( "(" variable "in" expression... ")" statement )
31
+
32
+ | ( "await"? "(" variable "of" expression... ")" statement ) )
33
+
34
+ | "do" statement "while" "(" expression... ")"
35
+
36
+ | "while" "(" expression... ")" statement
37
+
38
+ | "switch" "(" expression... ")" "{" case* defaultCase? "}"
39
+
40
+ | try ( ( catch* finally ) | catch+ )
41
+
42
+ ;
43
+
44
+
45
+ class ::= ( "export" "default"? )? "class" name classBody
46
+
47
+ | "export" "default" "class" classBody
48
+
49
+ ;
50
+
51
+
52
+ function ::= ( "export" "default"? )? "async"? "function" name functionBody
53
+
54
+ | "export" "default" "async"? "function" functionBody
55
+
56
+ ;
57
+
58
+
59
+ statementBody ::= "import" ( [string-literal]
60
+
61
+ | ( name "from" [string-literal] )
62
+
63
+ | ( "{" names "}" "from" [string-literal] )
64
+
65
+ | ( "*" "as" name "from" [string-literal] ) )
66
+
67
+ | "export" ( ( "{" names "}" ( "from" [string-literal] )? )
68
+
69
+ | ( "const" "{" fields "}" "=" expression )
70
+
71
+ | ( "{" "default" "}" "from" [string-literal] )
72
+
73
+ | ( "*" ( "as" name )? "from" [string-literal] ) )
74
+
75
+ | "export"? ( ( "var" var ( "," var )* )
76
+
77
+ | ( "let" let ( "," let )* )
78
+
79
+ | ( "const" const ( "," const )* ) )
80
+
81
+ | ( "export" "default" )? expression
82
+
83
+ | "return" ( ( "(" expression ")" ) | expression? )
84
+
85
+ | "throw" expression
86
+
87
+ | "delete" expression
88
+
89
+ | "break"
90
+
91
+ | "continue"
92
+
93
+ | "debugger"
94
+
95
+ ;
96
+
97
+
98
+ functionBody ::= "(" arguments? ")" "{" ( statement | function )* "}" ;
99
+
100
+
101
+ classBody ::= ( "extends" name )? "{" ( classConstructor | classMethod | classField )* "}" ;
102
+
103
+
104
+ classConstructor ::= "constructor" functionBody ;
105
+
106
+
107
+ classMethod ::= "static"? name functionBody ;
108
+
109
+
110
+ classField ::= "static"? name "=" expression... ";" ;
111
+
112
+
113
+ var ::= variable ( "=" expression )? | destructure "=" expression ;
114
+
115
+
116
+ let ::= variable ( "=" expression )? | destructure "=" expression ;
117
+
118
+
119
+ const ::= ( variable | destructure ) "=" expression ;
120
+
121
+
122
+ try ::= "try" "{" statement+ "}" ;
123
+
124
+
125
+ catch ::= "catch" "(" [identifier] ")" "{" statement+ "}" ;
126
+
127
+
128
+ finally ::= "finally" "{" statement+ "}" ;
129
+
130
+
131
+ case ::= "case" expression ":" statement ( "break" ";" )? ;
132
+
133
+
134
+ defaultCase ::= "default" ":" statement ( "break" ";" )? ;
135
+
136
+
137
+ initialiser ::= expression | "var" var ( "," var )* | "let" let ( "," let )* ;
138
+
139
+
140
+ destructure ::= "[" variable ( "=" expression )? ( "," variable ( "=" expression )? )* "]"
141
+
142
+ | "{" variable ( "=" expression )? ( "," variable ( "=" expression )? )* "}"
143
+
144
+ ;
145
+
146
+
147
+ expression ::= jsx
148
+
149
+ | json
150
+
151
+ | arrowFunction
152
+
153
+ | templateLiteral
154
+
155
+ | anonymousFunction
156
+
157
+ | "(" expression ")"
158
+
159
+ | "{" ( property ( "," property )* )? "}"
160
+
161
+ | "[" ( expression ( "," expression )* ","? )? "]"
162
+
163
+ | "typeof" ( expression | ( "(" expression ")") )
164
+
165
+ | "void" ( expression | ( "(" expression ")") )
166
+
167
+ | "new" name<NO_WHITESPACE>"(" expressions? ")"
168
+
169
+ | [operator]<NO_WHITESPACE>expression
170
+
171
+ | expression<NO_WHITESPACE>( ( "."<NO_WHITESPACE>name )
172
+
173
+ | ( "[" expressions "]" )
174
+
175
+ | ( "(" expressions? ")" )
176
+
177
+ | templateLiteral
178
+
179
+ | [operator] )
180
+
181
+ | expression ( ( [operator] expression )
182
+
183
+ | ( "?" expression ":" expression )
184
+
185
+ | ( "instanceof" expression )
186
+
187
+ | ( "in" expression ) )
188
+
189
+ | [number]
190
+
191
+ | variable
192
+
193
+ | primitive
194
+
195
+ | importMeta
196
+
197
+ | [string-literal]
198
+
199
+ | "super" | "this" | "true" | "false" | "null" | "undefined"
200
+
201
+ ;
202
+
203
+
204
+ jsx ::= jsxCompleteTag | jsxStartTag ( jsx | ( "{" expression? "}" ) | string )* jsxEndTag ;
205
+
206
+
207
+ jsxCompleteTag ::= "<"<NO_WHITESPACE>name jsxAttribute* "/>" ;
208
+
209
+
210
+ jsxStartTag ::= "<"<NO_WHITESPACE>name jsxAttribute* ">" ;
211
+
212
+
213
+ jsxEndTag ::= "</"<NO_WHITESPACE>name ">" ;
214
+
215
+
216
+ jsxAttribute ::= name ( <NO_WHITESPACE>"=" ( ( <NO_WHITESPACE>[string-literal] ) | ( <NO_WHITESPACE>"{" expression "}" ) ) )? ;
217
+
218
+
219
+ json ::= jsonArray | jsonObject ;
220
+
221
+
222
+ jsonArray ::= "[" ( jsonElement ( "," jsonElement )* )? "]" ;
223
+
224
+
225
+ jsonObject ::= "{" ( [string-literal] ":" jsonElement ( "," [string-literal] ":" jsonElement )* )? "}" ;
226
+
227
+
228
+ jsonElement ::= json | [string-literal] | [number] | "true" | "false" | "null" ;
229
+
230
+
231
+ arrowFunction ::= "(" arguments? ")" "=>" ( expression | ( "{" statement* "}" ) ) ;
232
+
233
+
234
+ templateLiteral ::= "\`" ( ( "\${" expression? "}" ) | string )* "\`" ;
235
+
236
+
237
+ string ::= ( [number] | [special] | [operator]| [keyword] | [identifier] | [string-literal] | [unassigned] )+ ;
238
+
239
+
240
+ property ::= ( ( ( name | [string-literal] ) ":" expression ) | variable ) ;
241
+
242
+
243
+ importMeta ::= "import"<NO_WHITESPACE>"."<NO_WHITESPACE>"meta" ;
244
+
245
+
246
+ expressions ::= expression ( "," expression )* ;
247
+
248
+
249
+ arguments ::= spreadArgument | ( argument ( "," argument )* ( "," spreadArgument )? ) ;
250
+
251
+
252
+ fields ::= name ( ":" name )? ( "," name ( ":" name )? )* ;
253
+
254
+
255
+ names ::= name ( "as" name )? ( "," name ( "as" name )? )* ;
256
+
257
+
258
+ spreadArgument ::= "..."<NO_WHITESPACE>variable ;
259
+
260
+
261
+ argument ::= variable ( "=" expression )? ;
262
+
263
+
264
+ variable ::= [identifier] ;
265
+
266
+
267
+ label ::= [identifier] ;
268
+
269
+
270
+ name ::= [identifier] ;
271
+
272
+
273
+ error. ::= . ;
274
+
275
+ `;
276
+ let rules = rulesFromBNF(bnf);
277
+ rules = (0, _occamgrammarutilities.eliminateLeftRecursion)(rules); ///
278
+ class JavaScriptParser extends _occamparsers.CommonParser {
279
+ static bnf = bnf;
280
+ static fromNothing() {
281
+ return parserFromRules(JavaScriptParser, rules);
282
+ }
283
+ static fromRules(rules) {
284
+ rules = (0, _occamgrammarutilities.eliminateLeftRecursion)(rules); ///
285
+ return _occamparsers.CommonParser.fromRules(JavaScriptParser, rules);
286
+ }
287
+ }
288
+
289
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wYXJzZXIvamF2YXNjcmlwdC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgQ29tbW9uUGFyc2VyIH0gZnJvbSBcIm9jY2FtLXBhcnNlcnNcIjtcbmltcG9ydCB7IHBhcnNlclV0aWxpdGllcyB9IGZyb20gXCJvY2NhbS1wYXJzZXJzXCI7XG5pbXBvcnQgeyBlbGltaW5hdGVMZWZ0UmVjdXJzaW9uIH0gZnJvbSBcIm9jY2FtLWdyYW1tYXItdXRpbGl0aWVzXCI7XG5cbmNvbnN0IHsgcnVsZXNGcm9tQk5GLCBwYXJzZXJGcm9tUnVsZXMgfSA9IHBhcnNlclV0aWxpdGllcztcblxuY29uc3QgYm5mID0gYFxuXG4gIGphdmFTY3JpcHQgICAgICAgIDo6PSAgcHJlYW1ibGU/ICggc3RhdGVtZW50IHwgZnVuY3Rpb24gfCBjbGFzcyB8IGVycm9yICkqIDtcblxuXG4gIHByZWFtYmxlICAgICAgICAgIDo6PSAgXCJcXFxcXCJ1c2Ugc3RyaWN0XFxcXFwiO1wiIDtcblxuXG4gIHN0YXRlbWVudCAgICAgICAgIDo6PSAgc3RhdGVtZW50Qm9keS4uLiBcIjtcIlxuICBcbiAgICAgICAgICAgICAgICAgICAgICB8ICBcIntcIiAoIHN0YXRlbWVudCB8IGZ1bmN0aW9uICkqIFwifVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICB8ICBcImlmXCIgXCIoXCIgZXhwcmVzc2lvbi4uLiBcIilcIiBzdGF0ZW1lbnQgKCBcImVsc2VcIiBzdGF0ZW1lbnQgKT9cbiAgXG4gICAgICAgICAgICAgICAgICAgICAgfCAgXCJmb3JcIiAoICggXCIoXCIgaW5pdGlhbGlzZXIgKCBcIjtcIiBleHByZXNzaW9uICk/ICggXCI7XCIgZXhwcmVzc2lvbiApPyBcIilcIiBzdGF0ZW1lbnQgKVxuICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICggXCIoXCIgdmFyaWFibGUgXCJpblwiIGV4cHJlc3Npb24uLi4gXCIpXCIgc3RhdGVtZW50IClcbiAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAoIFwiYXdhaXRcIj8gXCIoXCIgdmFyaWFibGUgXCJvZlwiIGV4cHJlc3Npb24uLi4gXCIpXCIgc3RhdGVtZW50ICkgKVxuICBcbiAgICAgICAgICAgICAgICAgICAgICB8ICBcImRvXCIgc3RhdGVtZW50IFwid2hpbGVcIiBcIihcIiBleHByZXNzaW9uLi4uIFwiKVwiXG4gIFxuICAgICAgICAgICAgICAgICAgICAgIHwgIFwid2hpbGVcIiBcIihcIiBleHByZXNzaW9uLi4uIFwiKVwiIHN0YXRlbWVudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgfCAgXCJzd2l0Y2hcIiBcIihcIiBleHByZXNzaW9uLi4uIFwiKVwiIFwie1wiIGNhc2UqIGRlZmF1bHRDYXNlPyBcIn1cIlxuICBcbiAgICAgICAgICAgICAgICAgICAgICB8ICB0cnkgKCAoIGNhdGNoKiBmaW5hbGx5ICkgfCBjYXRjaCsgKVxuICBcbiAgICAgICAgICAgICAgICAgICAgICA7XG5cblxuICBjbGFzcyAgICAgICAgICAgICA6Oj0gICggXCJleHBvcnRcIiBcImRlZmF1bHRcIj8gKT8gXCJjbGFzc1wiIG5hbWUgY2xhc3NCb2R5XG4gIFxuICAgICAgICAgICAgICAgICAgICAgIHwgIFwiZXhwb3J0XCIgXCJkZWZhdWx0XCIgXCJjbGFzc1wiIGNsYXNzQm9keVxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgIDtcblxuXG4gIGZ1bmN0aW9uICAgICAgICAgIDo6PSAgKCBcImV4cG9ydFwiIFwiZGVmYXVsdFwiPyApPyBcImFzeW5jXCI/IFwiZnVuY3Rpb25cIiBuYW1lIGZ1bmN0aW9uQm9keSBcbiAgXG4gICAgICAgICAgICAgICAgICAgICAgfCAgXCJleHBvcnRcIiBcImRlZmF1bHRcIiBcImFzeW5jXCI/IFwiZnVuY3Rpb25cIiBmdW5jdGlvbkJvZHlcbiAgXG4gICAgICAgICAgICAgICAgICAgICAgO1xuXG5cbiAgc3RhdGVtZW50Qm9keSAgICAgOjo9ICBcImltcG9ydFwiICggW3N0cmluZy1saXRlcmFsXVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAoIG5hbWUgXCJmcm9tXCIgW3N0cmluZy1saXRlcmFsXSApXG4gIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgKCBcIntcIiBuYW1lcyBcIn1cIiBcImZyb21cIiBbc3RyaW5nLWxpdGVyYWxdIClcbiAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAoIFwiKlwiIFwiYXNcIiBuYW1lIFwiZnJvbVwiIFtzdHJpbmctbGl0ZXJhbF0gKSApXG4gIFxuICAgICAgICAgICAgICAgICAgICAgIHwgIFwiZXhwb3J0XCIgKCAoIFwie1wiIG5hbWVzIFwifVwiICggXCJmcm9tXCIgW3N0cmluZy1saXRlcmFsXSApPyApXG4gIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgKCBcImNvbnN0XCIgXCJ7XCIgZmllbGRzIFwifVwiIFwiPVwiIGV4cHJlc3Npb24gKVxuICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICggXCJ7XCIgXCJkZWZhdWx0XCIgXCJ9XCIgXCJmcm9tXCIgW3N0cmluZy1saXRlcmFsXSApXG4gIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgKCBcIipcIiAoIFwiYXNcIiBuYW1lICk/IFwiZnJvbVwiIFtzdHJpbmctbGl0ZXJhbF0gKSApXG4gIFxuICAgICAgICAgICAgICAgICAgICAgIHwgIFwiZXhwb3J0XCI/ICggKCBcInZhclwiIHZhciAoIFwiLFwiIHZhciApKiApXG4gIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICggXCJsZXRcIiBsZXQgKCBcIixcIiBsZXQgKSogKVxuICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAoIFwiY29uc3RcIiBjb25zdCAoIFwiLFwiIGNvbnN0ICkqICkgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgIHwgICggXCJleHBvcnRcIiBcImRlZmF1bHRcIiApPyBleHByZXNzaW9uXG4gIFxuICAgICAgICAgICAgICAgICAgICAgIHwgIFwicmV0dXJuXCIgKCAoIFwiKFwiIGV4cHJlc3Npb24gXCIpXCIgKSB8IGV4cHJlc3Npb24/IClcbiAgXG4gICAgICAgICAgICAgICAgICAgICAgfCAgXCJ0aHJvd1wiIGV4cHJlc3Npb25cbiAgXG4gICAgICAgICAgICAgICAgICAgICAgfCAgXCJkZWxldGVcIiBleHByZXNzaW9uXG4gIFxuICAgICAgICAgICAgICAgICAgICAgIHwgIFwiYnJlYWtcIlxuICBcbiAgICAgICAgICAgICAgICAgICAgICB8ICBcImNvbnRpbnVlXCJcbiAgXG4gICAgICAgICAgICAgICAgICAgICAgfCAgXCJkZWJ1Z2dlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICA7XG5cblxuICBmdW5jdGlvbkJvZHkgICAgICA6Oj0gIFwiKFwiIGFyZ3VtZW50cz8gXCIpXCIgXCJ7XCIgKCBzdGF0ZW1lbnQgfCBmdW5jdGlvbiApKiBcIn1cIiA7XG5cblxuICBjbGFzc0JvZHkgICAgICAgICA6Oj0gICggXCJleHRlbmRzXCIgbmFtZSApPyBcIntcIiAoIGNsYXNzQ29uc3RydWN0b3IgfCBjbGFzc01ldGhvZCB8IGNsYXNzRmllbGQgKSogXCJ9XCIgO1xuXG5cbiAgY2xhc3NDb25zdHJ1Y3RvciAgOjo9ICBcImNvbnN0cnVjdG9yXCIgZnVuY3Rpb25Cb2R5IDtcblxuXG4gIGNsYXNzTWV0aG9kICAgICAgIDo6PSAgXCJzdGF0aWNcIj8gbmFtZSBmdW5jdGlvbkJvZHkgO1xuXG5cbiAgY2xhc3NGaWVsZCAgICAgICAgOjo9ICBcInN0YXRpY1wiPyBuYW1lIFwiPVwiIGV4cHJlc3Npb24uLi4gXCI7XCIgO1xuXG5cbiAgdmFyICAgICAgICAgICAgICAgOjo9ICB2YXJpYWJsZSAoIFwiPVwiIGV4cHJlc3Npb24gKT8gfCBkZXN0cnVjdHVyZSBcIj1cIiBleHByZXNzaW9uIDtcblxuXG4gIGxldCAgICAgICAgICAgICAgIDo6PSAgdmFyaWFibGUgKCBcIj1cIiBleHByZXNzaW9uICk/IHwgZGVzdHJ1Y3R1cmUgXCI9XCIgZXhwcmVzc2lvbiA7XG5cblxuICBjb25zdCAgICAgICAgICAgICA6Oj0gICggdmFyaWFibGUgfCBkZXN0cnVjdHVyZSApIFwiPVwiIGV4cHJlc3Npb24gO1xuXG5cbiAgdHJ5ICAgICAgICAgICAgICAgOjo9ICBcInRyeVwiIFwie1wiIHN0YXRlbWVudCsgXCJ9XCIgO1xuXG5cbiAgY2F0Y2ggICAgICAgICAgICAgOjo9ICBcImNhdGNoXCIgXCIoXCIgW2lkZW50aWZpZXJdIFwiKVwiIFwie1wiIHN0YXRlbWVudCsgXCJ9XCIgO1xuXG5cbiAgZmluYWxseSAgICAgICAgICAgOjo9ICBcImZpbmFsbHlcIiBcIntcIiBzdGF0ZW1lbnQrIFwifVwiIDtcblxuXG4gIGNhc2UgICAgICAgICAgICAgIDo6PSAgXCJjYXNlXCIgZXhwcmVzc2lvbiBcIjpcIiBzdGF0ZW1lbnQgKCBcImJyZWFrXCIgXCI7XCIgKT8gO1xuXG5cbiAgZGVmYXVsdENhc2UgICAgICAgOjo9ICBcImRlZmF1bHRcIiBcIjpcIiBzdGF0ZW1lbnQgKCBcImJyZWFrXCIgXCI7XCIgKT8gO1xuXG5cbiAgaW5pdGlhbGlzZXIgICAgICAgOjo9ICBleHByZXNzaW9uIHwgXCJ2YXJcIiB2YXIgKCBcIixcIiB2YXIgKSogfCBcImxldFwiIGxldCAoIFwiLFwiIGxldCApKiA7XG5cblxuICBkZXN0cnVjdHVyZSAgICAgICA6Oj0gIFwiW1wiIHZhcmlhYmxlICggXCI9XCIgZXhwcmVzc2lvbiApPyAoIFwiLFwiIHZhcmlhYmxlICggXCI9XCIgZXhwcmVzc2lvbiApPyApKiBcIl1cIlxuXG4gICAgICAgICAgICAgICAgICAgICAgfCAgXCJ7XCIgdmFyaWFibGUgKCBcIj1cIiBleHByZXNzaW9uICk/ICggXCIsXCIgdmFyaWFibGUgKCBcIj1cIiBleHByZXNzaW9uICk/ICkqIFwifVwiXG4gIFxuICAgICAgICAgICAgICAgICAgICAgIDtcblxuXG4gIGV4cHJlc3Npb24gICAgICAgIDo6PSAganN4XG5cbiAgICAgICAgICAgICAgICAgICAgICB8ICBqc29uXG4gIFxuICAgICAgICAgICAgICAgICAgICAgIHwgIGFycm93RnVuY3Rpb25cbiAgXG4gICAgICAgICAgICAgICAgICAgICAgfCAgdGVtcGxhdGVMaXRlcmFsXG4gIFxuICAgICAgICAgICAgICAgICAgICAgIHwgIGFub255bW91c0Z1bmN0aW9uXG4gIFxuICAgICAgICAgICAgICAgICAgICAgIHwgIFwiKFwiIGV4cHJlc3Npb24gXCIpXCJcbiAgXG4gICAgICAgICAgICAgICAgICAgICAgfCAgXCJ7XCIgKCBwcm9wZXJ0eSAoIFwiLFwiIHByb3BlcnR5ICkqICk/IFwifVwiXG4gIFxuICAgICAgICAgICAgICAgICAgICAgIHwgIFwiW1wiICggZXhwcmVzc2lvbiAoIFwiLFwiIGV4cHJlc3Npb24gKSogXCIsXCI/ICk/IFwiXVwiXG4gIFxuICAgICAgICAgICAgICAgICAgICAgIHwgIFwidHlwZW9mXCIgKCBleHByZXNzaW9uIHwgKCBcIihcIiBleHByZXNzaW9uIFwiKVwiKSApXG4gIFxuICAgICAgICAgICAgICAgICAgICAgIHwgIFwidm9pZFwiICggZXhwcmVzc2lvbiB8ICggXCIoXCIgZXhwcmVzc2lvbiBcIilcIikgKVxuICBcbiAgICAgICAgICAgICAgICAgICAgICB8ICBcIm5ld1wiIG5hbWU8Tk9fV0hJVEVTUEFDRT5cIihcIiBleHByZXNzaW9ucz8gXCIpXCJcbiAgXG4gICAgICAgICAgICAgICAgICAgICAgfCAgW29wZXJhdG9yXTxOT19XSElURVNQQUNFPmV4cHJlc3Npb25cbiAgXG4gICAgICAgICAgICAgICAgICAgICAgfCAgZXhwcmVzc2lvbjxOT19XSElURVNQQUNFPiggKCBcIi5cIjxOT19XSElURVNQQUNFPm5hbWUgKVxuICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAoIFwiW1wiIGV4cHJlc3Npb25zIFwiXVwiIClcbiAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgKCBcIihcIiBleHByZXNzaW9ucz8gXCIpXCIgKVxuICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCB0ZW1wbGF0ZUxpdGVyYWxcbiAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgW29wZXJhdG9yXSApXG4gIFxuICAgICAgICAgICAgICAgICAgICAgIHwgIGV4cHJlc3Npb24gKCAoIFtvcGVyYXRvcl0gZXhwcmVzc2lvbiApXG4gIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAoIFwiP1wiIGV4cHJlc3Npb24gXCI6XCIgZXhwcmVzc2lvbiApXG4gIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAoIFwiaW5zdGFuY2VvZlwiIGV4cHJlc3Npb24gKVxuICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgKCBcImluXCIgZXhwcmVzc2lvbiApIClcbiAgXG4gICAgICAgICAgICAgICAgICAgICAgfCAgW251bWJlcl1cbiAgXG4gICAgICAgICAgICAgICAgICAgICAgfCAgdmFyaWFibGVcbiAgXG4gICAgICAgICAgICAgICAgICAgICAgfCAgcHJpbWl0aXZlXG4gIFxuICAgICAgICAgICAgICAgICAgICAgIHwgIGltcG9ydE1ldGFcbiAgXG4gICAgICAgICAgICAgICAgICAgICAgfCAgW3N0cmluZy1saXRlcmFsXVxuICBcbiAgICAgICAgICAgICAgICAgICAgICB8ICBcInN1cGVyXCIgfCBcInRoaXNcIiB8IFwidHJ1ZVwiIHwgXCJmYWxzZVwiIHwgXCJudWxsXCIgfCBcInVuZGVmaW5lZFwiXG4gIFxuICAgICAgICAgICAgICAgICAgICAgIDtcblxuXG4gIGpzeCAgICAgICAgICAgICAgIDo6PSAganN4Q29tcGxldGVUYWcgfCBqc3hTdGFydFRhZyAoIGpzeCB8ICggXCJ7XCIgZXhwcmVzc2lvbj8gXCJ9XCIgKSB8IHN0cmluZyApKiBqc3hFbmRUYWcgO1xuXG5cbiAganN4Q29tcGxldGVUYWcgICAgOjo9ICBcIjxcIjxOT19XSElURVNQQUNFPm5hbWUganN4QXR0cmlidXRlKiBcIi8+XCIgO1xuXG5cbiAganN4U3RhcnRUYWcgICAgICAgOjo9ICBcIjxcIjxOT19XSElURVNQQUNFPm5hbWUganN4QXR0cmlidXRlKiBcIj5cIiA7XG5cblxuICBqc3hFbmRUYWcgICAgICAgICA6Oj0gIFwiPC9cIjxOT19XSElURVNQQUNFPm5hbWUgXCI+XCIgO1xuXG5cbiAganN4QXR0cmlidXRlICAgICAgOjo9ICBuYW1lICggPE5PX1dISVRFU1BBQ0U+XCI9XCIgKCAoIDxOT19XSElURVNQQUNFPltzdHJpbmctbGl0ZXJhbF0gKSB8ICggPE5PX1dISVRFU1BBQ0U+XCJ7XCIgZXhwcmVzc2lvbiBcIn1cIiApICkgKT8gO1xuXG5cbiAganNvbiAgICAgICAgICAgICAgOjo9ICBqc29uQXJyYXkgfCBqc29uT2JqZWN0IDtcblxuXG4gIGpzb25BcnJheSAgICAgICAgIDo6PSAgXCJbXCIgKCBqc29uRWxlbWVudCAoIFwiLFwiIGpzb25FbGVtZW50ICkqICk/IFwiXVwiIDtcblxuXG4gIGpzb25PYmplY3QgICAgICAgIDo6PSAgXCJ7XCIgKCBbc3RyaW5nLWxpdGVyYWxdIFwiOlwiIGpzb25FbGVtZW50ICggXCIsXCIgW3N0cmluZy1saXRlcmFsXSBcIjpcIiBqc29uRWxlbWVudCApKiApPyBcIn1cIiA7XG5cblxuICBqc29uRWxlbWVudCAgICAgICA6Oj0gIGpzb24gfCBbc3RyaW5nLWxpdGVyYWxdIHwgW251bWJlcl0gfCBcInRydWVcIiB8IFwiZmFsc2VcIiB8IFwibnVsbFwiIDtcblxuXG4gIGFycm93RnVuY3Rpb24gICAgIDo6PSAgXCIoXCIgYXJndW1lbnRzPyBcIilcIiBcIj0+XCIgKCBleHByZXNzaW9uIHwgKCBcIntcIiBzdGF0ZW1lbnQqIFwifVwiICkgKSA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5cbiAgdGVtcGxhdGVMaXRlcmFsICAgOjo9ICBcIlxcYFwiICggKCBcIlxcJHtcIiBleHByZXNzaW9uPyBcIn1cIiApIHwgc3RyaW5nICkqIFwiXFxgXCIgO1xuXG5cbiAgc3RyaW5nICAgICAgICAgICAgOjo9ICAoIFtudW1iZXJdIHwgW3NwZWNpYWxdIHwgW29wZXJhdG9yXXwgW2tleXdvcmRdIHwgW2lkZW50aWZpZXJdIHwgW3N0cmluZy1saXRlcmFsXSB8IFt1bmFzc2lnbmVkXSApKyA7XG5cblxuICBwcm9wZXJ0eSAgICAgICAgICA6Oj0gICggKCAoIG5hbWUgfCBbc3RyaW5nLWxpdGVyYWxdICkgXCI6XCIgZXhwcmVzc2lvbiApIHwgdmFyaWFibGUgKSA7XG5cblxuICBpbXBvcnRNZXRhICAgICAgICA6Oj0gIFwiaW1wb3J0XCI8Tk9fV0hJVEVTUEFDRT5cIi5cIjxOT19XSElURVNQQUNFPlwibWV0YVwiIDtcblxuXG4gIGV4cHJlc3Npb25zICAgICAgIDo6PSAgZXhwcmVzc2lvbiAoIFwiLFwiIGV4cHJlc3Npb24gKSogO1xuXG5cbiAgYXJndW1lbnRzICAgICAgICAgOjo9ICBzcHJlYWRBcmd1bWVudCB8ICggYXJndW1lbnQgKCBcIixcIiBhcmd1bWVudCApKiAoIFwiLFwiIHNwcmVhZEFyZ3VtZW50ICk/ICkgO1xuXG5cbiAgZmllbGRzICAgICAgICAgICAgOjo9ICBuYW1lICggXCI6XCIgbmFtZSApPyAoIFwiLFwiIG5hbWUgKCBcIjpcIiBuYW1lICk/ICkqIDtcblxuXG4gIG5hbWVzICAgICAgICAgICAgIDo6PSAgbmFtZSAoIFwiYXNcIiBuYW1lICk/ICggXCIsXCIgbmFtZSAoIFwiYXNcIiBuYW1lICk/ICkqIDtcblxuXG4gIHNwcmVhZEFyZ3VtZW50ICAgIDo6PSAgXCIuLi5cIjxOT19XSElURVNQQUNFPnZhcmlhYmxlIDtcblxuICBcbiAgYXJndW1lbnQgICAgICAgICAgOjo9ICB2YXJpYWJsZSAoIFwiPVwiIGV4cHJlc3Npb24gKT8gO1xuXG5cbiAgdmFyaWFibGUgICAgICAgICAgOjo9ICBbaWRlbnRpZmllcl0gO1xuXG5cbiAgbGFiZWwgICAgICAgICAgICAgOjo9ICBbaWRlbnRpZmllcl0gO1xuXG5cbiAgbmFtZSAgICAgICAgICAgICAgOjo9ICBbaWRlbnRpZmllcl0gO1xuXG5cbiAgZXJyb3IuICAgICAgICAgICAgOjo9ICAuIDtcbiAgICBcbmA7XG5cbmxldCBydWxlcyA9IHJ1bGVzRnJvbUJORihibmYpO1xuXG5ydWxlcyA9IGVsaW1pbmF0ZUxlZnRSZWN1cnNpb24ocnVsZXMpOyAgLy8vXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEphdmFTY3JpcHRQYXJzZXIgZXh0ZW5kcyBDb21tb25QYXJzZXIge1xuICBzdGF0aWMgYm5mID0gYm5mO1xuXG4gIHN0YXRpYyBmcm9tTm90aGluZygpIHsgcmV0dXJuIHBhcnNlckZyb21SdWxlcyhKYXZhU2NyaXB0UGFyc2VyLCBydWxlcyk7IH1cblxuICBzdGF0aWMgZnJvbVJ1bGVzKHJ1bGVzKSB7XG4gICAgcnVsZXMgPSBlbGltaW5hdGVMZWZ0UmVjdXJzaW9uKHJ1bGVzKTsgIC8vL1xuXG4gICAgcmV0dXJuIENvbW1vblBhcnNlci5mcm9tUnVsZXMoSmF2YVNjcmlwdFBhcnNlciwgcnVsZXMpOyB9XG59XG4iXSwibmFtZXMiOlsiSmF2YVNjcmlwdFBhcnNlciIsInJ1bGVzRnJvbUJORiIsInBhcnNlckZyb21SdWxlcyIsInBhcnNlclV0aWxpdGllcyIsImJuZiIsInJ1bGVzIiwiZWxpbWluYXRlTGVmdFJlY3Vyc2lvbiIsIkNvbW1vblBhcnNlciIsImZyb21Ob3RoaW5nIiwiZnJvbVJ1bGVzIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFtUkE7OztlQUFxQkE7Ozs4QkFqUlE7dUNBRVU7QUFFdkMsTUFBTSxFQUFFQyxZQUFZLEVBQUVDLGVBQWUsRUFBRSxHQUFHQyw2QkFBZTtBQUV6RCxNQUFNQyxNQUFNLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXFRYixDQUFDO0FBRUQsSUFBSUMsUUFBUUosYUFBYUc7QUFFekJDLFFBQVFDLElBQUFBLDZDQUFzQixFQUFDRCxRQUFTLEdBQUc7QUFFNUIsTUFBTUwseUJBQXlCTywwQkFBWTtJQUN4RCxPQUFPSCxNQUFNQSxJQUFJO0lBRWpCLE9BQU9JLGNBQWM7UUFBRSxPQUFPTixnQkFBZ0JGLGtCQUFrQks7SUFBUTtJQUV4RSxPQUFPSSxVQUFVSixLQUFLLEVBQUU7UUFDdEJBLFFBQVFDLElBQUFBLDZDQUFzQixFQUFDRCxRQUFTLEdBQUc7UUFFM0MsT0FBT0UsMEJBQVksQ0FBQ0UsU0FBUyxDQUFDVCxrQkFBa0JLO0lBQVE7QUFDNUQifQ==
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return JSONParser;
9
+ }
10
+ });
11
+ const _occamparsers = require("occam-parsers");
12
+ const { rulesFromBNF, parserFromRules } = _occamparsers.parserUtilities;
13
+ const bnf = `
14
+
15
+ json ::= element error*
16
+
17
+ | error+
18
+
19
+ ;
20
+
21
+
22
+ element ::= array | object | [string-literal] | [number] | "true" | "false" | "null" ;
23
+
24
+
25
+ object ::= "{" ( [string-literal] ":" element ( "," [string-literal] ":" element )* )? "}" ;
26
+
27
+
28
+ array ::= "[" ( element ( "," element )* )? "]" ;
29
+
30
+
31
+ error. ::= . ;
32
+
33
+ `, rules = rulesFromBNF(bnf);
34
+ class JSONParser extends _occamparsers.CommonParser {
35
+ static bnf = bnf;
36
+ static fromNothing() {
37
+ return parserFromRules(JSONParser, rules);
38
+ }
39
+ static fromRules(rules) {
40
+ return _occamparsers.CommonParser.fromRules(JSONParser, rules);
41
+ }
42
+ }
43
+
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wYXJzZXIvanNvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgQ29tbW9uUGFyc2VyIH0gZnJvbSBcIm9jY2FtLXBhcnNlcnNcIjtcbmltcG9ydCB7IHBhcnNlclV0aWxpdGllcyB9IGZyb20gXCJvY2NhbS1wYXJzZXJzXCI7XG5cbmNvbnN0IHsgcnVsZXNGcm9tQk5GLCBwYXJzZXJGcm9tUnVsZXMgfSA9IHBhcnNlclV0aWxpdGllcztcblxuY29uc3QgYm5mID0gYFxuXG4gIGpzb24gICAgIDo6PSAgZWxlbWVudCBlcnJvciogXG4gIFxuICAgICAgICAgICAgIHwgIGVycm9yKyBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICA7XG5cblxuICBlbGVtZW50ICA6Oj0gIGFycmF5IHwgb2JqZWN0IHwgW3N0cmluZy1saXRlcmFsXSB8IFtudW1iZXJdIHwgXCJ0cnVlXCIgfCBcImZhbHNlXCIgfCBcIm51bGxcIiA7XG5cblxuICBvYmplY3QgICA6Oj0gIFwie1wiICggW3N0cmluZy1saXRlcmFsXSBcIjpcIiBlbGVtZW50ICggXCIsXCIgW3N0cmluZy1saXRlcmFsXSBcIjpcIiBlbGVtZW50ICkqICk/IFwifVwiIDtcblxuICBcbiAgYXJyYXkgICAgOjo9ICBcIltcIiAoIGVsZW1lbnQgKCBcIixcIiBlbGVtZW50ICkqICk/IFwiXVwiIDtcblxuXG4gIGVycm9yLiAgIDo6PSAgLiA7XG5cbiAgICAgIGAsXG4gICAgICBydWxlcyA9IHJ1bGVzRnJvbUJORihibmYpO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBKU09OUGFyc2VyIGV4dGVuZHMgQ29tbW9uUGFyc2VyIHtcbiAgc3RhdGljIGJuZiA9IGJuZjtcblxuICBzdGF0aWMgZnJvbU5vdGhpbmcoKSB7IHJldHVybiBwYXJzZXJGcm9tUnVsZXMoSlNPTlBhcnNlciwgcnVsZXMpOyB9XG5cbiAgc3RhdGljIGZyb21SdWxlcyhydWxlcykgeyByZXR1cm4gQ29tbW9uUGFyc2VyLmZyb21SdWxlcyhKU09OUGFyc2VyLCBydWxlcyk7IH1cbn1cbiJdLCJuYW1lcyI6WyJKU09OUGFyc2VyIiwicnVsZXNGcm9tQk5GIiwicGFyc2VyRnJvbVJ1bGVzIiwicGFyc2VyVXRpbGl0aWVzIiwiYm5mIiwicnVsZXMiLCJDb21tb25QYXJzZXIiLCJmcm9tTm90aGluZyIsImZyb21SdWxlcyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBOEJBOzs7ZUFBcUJBOzs7OEJBNUJRO0FBRzdCLE1BQU0sRUFBRUMsWUFBWSxFQUFFQyxlQUFlLEVBQUUsR0FBR0MsNkJBQWU7QUFFekQsTUFBTUMsTUFBTSxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQW9CUCxDQUFDLEVBQ0RDLFFBQVFKLGFBQWFHO0FBRVosTUFBTUosbUJBQW1CTSwwQkFBWTtJQUNsRCxPQUFPRixNQUFNQSxJQUFJO0lBRWpCLE9BQU9HLGNBQWM7UUFBRSxPQUFPTCxnQkFBZ0JGLFlBQVlLO0lBQVE7SUFFbEUsT0FBT0csVUFBVUgsS0FBSyxFQUFFO1FBQUUsT0FBT0MsMEJBQVksQ0FBQ0UsU0FBUyxDQUFDUixZQUFZSztJQUFRO0FBQzlFIn0=
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return PlainTextParser;
9
+ }
10
+ });
11
+ const _occamparsers = require("occam-parsers");
12
+ const { rulesFromBNF, parserFromRules } = _occamparsers.parserUtilities;
13
+ const bnf = `
14
+
15
+ plainText ::= .+ ;
16
+
17
+ `, rules = rulesFromBNF(bnf);
18
+ class PlainTextParser extends _occamparsers.CommonParser {
19
+ static bnf = bnf;
20
+ static fromNothing() {
21
+ return parserFromRules(PlainTextParser, rules);
22
+ }
23
+ static fromRules(rules) {
24
+ return _occamparsers.CommonParser.fromRules(PlainTextParser, rules);
25
+ }
26
+ }
27
+
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wYXJzZXIvcGxhaW5UZXh0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBDb21tb25QYXJzZXIgfSBmcm9tIFwib2NjYW0tcGFyc2Vyc1wiO1xuaW1wb3J0IHsgcGFyc2VyVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLXBhcnNlcnNcIjtcblxuY29uc3QgeyBydWxlc0Zyb21CTkYsIHBhcnNlckZyb21SdWxlcyB9ID0gcGFyc2VyVXRpbGl0aWVzO1xuXG5jb25zdCBibmYgPSBgXG5cbiAgcGxhaW5UZXh0ICA6Oj0gIC4rIDtcblxuICAgICAgYCxcbiAgICAgIHJ1bGVzID0gcnVsZXNGcm9tQk5GKGJuZik7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFBsYWluVGV4dFBhcnNlciBleHRlbmRzIENvbW1vblBhcnNlciB7XG4gIHN0YXRpYyBibmYgPSBibmY7XG5cbiAgc3RhdGljIGZyb21Ob3RoaW5nKCkgeyByZXR1cm4gcGFyc2VyRnJvbVJ1bGVzKFBsYWluVGV4dFBhcnNlciwgcnVsZXMpOyB9XG5cbiAgc3RhdGljIGZyb21SdWxlcyhydWxlcykgeyByZXR1cm4gQ29tbW9uUGFyc2VyLmZyb21SdWxlcyhQbGFpblRleHRQYXJzZXIsIHJ1bGVzKTsgfVxufVxuIl0sIm5hbWVzIjpbIlBsYWluVGV4dFBhcnNlciIsInJ1bGVzRnJvbUJORiIsInBhcnNlckZyb21SdWxlcyIsInBhcnNlclV0aWxpdGllcyIsImJuZiIsInJ1bGVzIiwiQ29tbW9uUGFyc2VyIiwiZnJvbU5vdGhpbmciLCJmcm9tUnVsZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWNBOzs7ZUFBcUJBOzs7OEJBWlE7QUFHN0IsTUFBTSxFQUFFQyxZQUFZLEVBQUVDLGVBQWUsRUFBRSxHQUFHQyw2QkFBZTtBQUV6RCxNQUFNQyxNQUFNLENBQUM7Ozs7TUFJUCxDQUFDLEVBQ0RDLFFBQVFKLGFBQWFHO0FBRVosTUFBTUosd0JBQXdCTSwwQkFBWTtJQUN2RCxPQUFPRixNQUFNQSxJQUFJO0lBRWpCLE9BQU9HLGNBQWM7UUFBRSxPQUFPTCxnQkFBZ0JGLGlCQUFpQks7SUFBUTtJQUV2RSxPQUFPRyxVQUFVSCxLQUFLLEVBQUU7UUFBRSxPQUFPQywwQkFBWSxDQUFDRSxTQUFTLENBQUNSLGlCQUFpQks7SUFBUTtBQUNuRiJ9
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return XMLParser;
9
+ }
10
+ });
11
+ const _occamparsers = require("occam-parsers");
12
+ const { rulesFromBNF, parserFromRules } = _occamparsers.parserUtilities;
13
+ const bnf = `
14
+
15
+ xml ::= declaration? comment* ( simpleElement | complexElement ) comment* error*
16
+
17
+ | error+
18
+
19
+ ;
20
+
21
+
22
+ declaration ::= "<?"<NO_WHITESPACE>"xml" attribute* "?>" ;
23
+
24
+
25
+ element ::= comment | simpleElement | complexElement ;
26
+
27
+
28
+ comment ::= "<!--" text* "-->" ;
29
+
30
+
31
+ simpleElement ::= completeTag ;
32
+
33
+
34
+ complexElement ::= startTag ( element | text )* endTag ;
35
+
36
+
37
+ completeTag ::= "<"<NO_WHITESPACE>name attribute* "/>" ;
38
+
39
+
40
+ startTag ::= "<"<NO_WHITESPACE>name attribute* ">" ;
41
+
42
+
43
+ endTag ::= "</"<NO_WHITESPACE>name ">" ;
44
+
45
+
46
+ attribute ::= [identifier]<NO_WHITESPACE>"="<NO_WHITESPACE>[string-literal] ;
47
+
48
+
49
+ text ::= ( [identifier] | [string-literal] | [unassigned] )+ ;
50
+
51
+
52
+ name ::= [identifier] ;
53
+
54
+
55
+ error. ::= . ;
56
+
57
+ `, rules = rulesFromBNF(bnf);
58
+ class XMLParser extends _occamparsers.CommonParser {
59
+ static bnf = bnf;
60
+ static fromNothing() {
61
+ return parserFromRules(XMLParser, rules);
62
+ }
63
+ static fromRules(rules) {
64
+ return _occamparsers.CommonParser.fromRules(XMLParser, rules);
65
+ }
66
+ }
67
+
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wYXJzZXIveG1sLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBDb21tb25QYXJzZXIgfSBmcm9tIFwib2NjYW0tcGFyc2Vyc1wiO1xuaW1wb3J0IHsgcGFyc2VyVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLXBhcnNlcnNcIjtcblxuY29uc3QgeyBydWxlc0Zyb21CTkYsIHBhcnNlckZyb21SdWxlcyB9ID0gcGFyc2VyVXRpbGl0aWVzO1xuXG5jb25zdCBibmYgPSBgXG5cbiAgeG1sICAgICAgICAgICAgIDo6PSAgZGVjbGFyYXRpb24/IGNvbW1lbnQqICggc2ltcGxlRWxlbWVudCB8IGNvbXBsZXhFbGVtZW50ICkgY29tbWVudCogZXJyb3IqXG4gIFxuICAgICAgICAgICAgICAgICAgICB8ICBlcnJvcitcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgO1xuXG5cbiAgZGVjbGFyYXRpb24gICAgIDo6PSAgXCI8P1wiPE5PX1dISVRFU1BBQ0U+XCJ4bWxcIiBhdHRyaWJ1dGUqIFwiPz5cIiA7XG5cblxuICBlbGVtZW50ICAgICAgICAgOjo9ICBjb21tZW50IHwgc2ltcGxlRWxlbWVudCB8IGNvbXBsZXhFbGVtZW50IDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgY29tbWVudCAgICAgICAgIDo6PSAgXCI8IS0tXCIgdGV4dCogXCItLT5cIiA7XG5cblxuICBzaW1wbGVFbGVtZW50ICAgOjo9ICBjb21wbGV0ZVRhZyA7XG5cblxuICBjb21wbGV4RWxlbWVudCAgOjo9ICBzdGFydFRhZyAoIGVsZW1lbnQgfCB0ZXh0ICkqIGVuZFRhZyA7XG5cblxuICBjb21wbGV0ZVRhZyAgICAgOjo9ICBcIjxcIjxOT19XSElURVNQQUNFPm5hbWUgYXR0cmlidXRlKiBcIi8+XCIgO1xuXG5cbiAgc3RhcnRUYWcgICAgICAgIDo6PSAgXCI8XCI8Tk9fV0hJVEVTUEFDRT5uYW1lIGF0dHJpYnV0ZSogXCI+XCIgO1xuXG5cbiAgZW5kVGFnICAgICAgICAgIDo6PSAgXCI8L1wiPE5PX1dISVRFU1BBQ0U+bmFtZSBcIj5cIiA7XG4gIFxuXG4gIGF0dHJpYnV0ZSAgICAgICA6Oj0gIFtpZGVudGlmaWVyXTxOT19XSElURVNQQUNFPlwiPVwiPE5PX1dISVRFU1BBQ0U+W3N0cmluZy1saXRlcmFsXSA7XG5cblxuICB0ZXh0ICAgICAgICAgICAgOjo9ICAoIFtpZGVudGlmaWVyXSB8IFtzdHJpbmctbGl0ZXJhbF0gfCBbdW5hc3NpZ25lZF0gKSsgO1xuICBcbiAgXG4gIG5hbWUgICAgICAgICAgICA6Oj0gIFtpZGVudGlmaWVyXSA7XG5cblxuICBlcnJvci4gICAgICAgICAgOjo9ICAuIDtcblxuICAgICAgYCxcbiAgICAgIHJ1bGVzID0gcnVsZXNGcm9tQk5GKGJuZik7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFhNTFBhcnNlciBleHRlbmRzIENvbW1vblBhcnNlciB7XG4gIHN0YXRpYyBibmYgPSBibmY7XG5cbiAgc3RhdGljIGZyb21Ob3RoaW5nKCkgeyByZXR1cm4gcGFyc2VyRnJvbVJ1bGVzKFhNTFBhcnNlciwgcnVsZXMpOyB9XG5cbiAgc3RhdGljIGZyb21SdWxlcyhydWxlcykgeyByZXR1cm4gQ29tbW9uUGFyc2VyLmZyb21SdWxlcyhYTUxQYXJzZXIsIHJ1bGVzKTsgfVxufVxuIl0sIm5hbWVzIjpbIlhNTFBhcnNlciIsInJ1bGVzRnJvbUJORiIsInBhcnNlckZyb21SdWxlcyIsInBhcnNlclV0aWxpdGllcyIsImJuZiIsInJ1bGVzIiwiQ29tbW9uUGFyc2VyIiwiZnJvbU5vdGhpbmciLCJmcm9tUnVsZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQXNEQTs7O2VBQXFCQTs7OzhCQXBEUTtBQUc3QixNQUFNLEVBQUVDLFlBQVksRUFBRUMsZUFBZSxFQUFFLEdBQUdDLDZCQUFlO0FBRXpELE1BQU1DLE1BQU0sQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7TUE0Q1AsQ0FBQyxFQUNEQyxRQUFRSixhQUFhRztBQUVaLE1BQU1KLGtCQUFrQk0sMEJBQVk7SUFDakQsT0FBT0YsTUFBTUEsSUFBSTtJQUVqQixPQUFPRyxjQUFjO1FBQUUsT0FBT0wsZ0JBQWdCRixXQUFXSztJQUFRO0lBRWpFLE9BQU9HLFVBQVVILEtBQUssRUFBRTtRQUFFLE9BQU9DLDBCQUFZLENBQUNFLFNBQVMsQ0FBQ1IsV0FBV0s7SUFBUTtBQUM3RSJ9
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return JavaScriptPlugin;
9
+ }
10
+ });
11
+ const _plugin = /*#__PURE__*/ _interop_require_default(require("../plugin"));
12
+ const _javascript = /*#__PURE__*/ _interop_require_default(require("../lexer/javascript"));
13
+ const _javascript1 = /*#__PURE__*/ _interop_require_default(require("../parser/javascript"));
14
+ const _javascript2 = /*#__PURE__*/ _interop_require_default(require("../processor/javascript"));
15
+ const _languages = require("../languages");
16
+ function _interop_require_default(obj) {
17
+ return obj && obj.__esModule ? obj : {
18
+ default: obj
19
+ };
20
+ }
21
+ class JavaScriptPlugin extends _plugin.default {
22
+ static language = _languages.JAVASCRIPT_LANGUAGE;
23
+ static Lexer = _javascript.default;
24
+ static Parser = _javascript1.default;
25
+ static Processor = _javascript2.default;
26
+ static fromNothing() {
27
+ return _plugin.default.fromNothing(JavaScriptPlugin);
28
+ }
29
+ }
30
+
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wbHVnaW4vamF2YXNjcmlwdC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFBsdWdpbiBmcm9tIFwiLi4vcGx1Z2luXCI7XG5pbXBvcnQgSmF2YVNjcmlwdExleGVyIGZyb20gXCIuLi9sZXhlci9qYXZhc2NyaXB0XCI7XG5pbXBvcnQgSmF2YVNjcmlwdFBhcnNlciBmcm9tIFwiLi4vcGFyc2VyL2phdmFzY3JpcHRcIjtcbmltcG9ydCBKYXZhU2NyaXB0UHJvY2Vzc29yIGZyb20gXCIuLi9wcm9jZXNzb3IvamF2YXNjcmlwdFwiO1xuXG5pbXBvcnQgeyBKQVZBU0NSSVBUX0xBTkdVQUdFIH0gZnJvbSBcIi4uL2xhbmd1YWdlc1wiXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEphdmFTY3JpcHRQbHVnaW4gZXh0ZW5kcyBQbHVnaW4ge1xuICBzdGF0aWMgbGFuZ3VhZ2UgPSBKQVZBU0NSSVBUX0xBTkdVQUdFO1xuXG4gIHN0YXRpYyBMZXhlciA9IEphdmFTY3JpcHRMZXhlcjtcblxuICBzdGF0aWMgUGFyc2VyID0gSmF2YVNjcmlwdFBhcnNlcjtcblxuICBzdGF0aWMgUHJvY2Vzc29yID0gSmF2YVNjcmlwdFByb2Nlc3NvcjtcblxuICBzdGF0aWMgZnJvbU5vdGhpbmcoKSB7IHJldHVybiBQbHVnaW4uZnJvbU5vdGhpbmcoSmF2YVNjcmlwdFBsdWdpbik7IH1cbn1cbiJdLCJuYW1lcyI6WyJKYXZhU2NyaXB0UGx1Z2luIiwiUGx1Z2luIiwibGFuZ3VhZ2UiLCJKQVZBU0NSSVBUX0xBTkdVQUdFIiwiTGV4ZXIiLCJKYXZhU2NyaXB0TGV4ZXIiLCJQYXJzZXIiLCJKYXZhU2NyaXB0UGFyc2VyIiwiUHJvY2Vzc29yIiwiSmF2YVNjcmlwdFByb2Nlc3NvciIsImZyb21Ob3RoaW5nIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFTQTs7O2VBQXFCQTs7OytEQVBGO21FQUNTO29FQUNDO29FQUNHOzJCQUVJOzs7Ozs7QUFFckIsTUFBTUEseUJBQXlCQyxlQUFNO0lBQ2xELE9BQU9DLFdBQVdDLDhCQUFtQixDQUFDO0lBRXRDLE9BQU9DLFFBQVFDLG1CQUFlLENBQUM7SUFFL0IsT0FBT0MsU0FBU0Msb0JBQWdCLENBQUM7SUFFakMsT0FBT0MsWUFBWUMsb0JBQW1CLENBQUM7SUFFdkMsT0FBT0MsY0FBYztRQUFFLE9BQU9ULGVBQU0sQ0FBQ1MsV0FBVyxDQUFDVjtJQUFtQjtBQUN0RSJ9
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return JSONPlugin;
9
+ }
10
+ });
11
+ const _plugin = /*#__PURE__*/ _interop_require_default(require("../plugin"));
12
+ const _json = /*#__PURE__*/ _interop_require_default(require("../lexer/json"));
13
+ const _json1 = /*#__PURE__*/ _interop_require_default(require("../parser/json"));
14
+ const _json2 = /*#__PURE__*/ _interop_require_default(require("../processor/json"));
15
+ const _languages = require("../languages");
16
+ function _interop_require_default(obj) {
17
+ return obj && obj.__esModule ? obj : {
18
+ default: obj
19
+ };
20
+ }
21
+ class JSONPlugin extends _plugin.default {
22
+ static language = _languages.JSON_LANGUAGE;
23
+ static Lexer = _json.default;
24
+ static Parser = _json1.default;
25
+ static Processor = _json2.default;
26
+ static fromNothing() {
27
+ return _plugin.default.fromNothing(JSONPlugin);
28
+ }
29
+ }
30
+
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wbHVnaW4vanNvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFBsdWdpbiBmcm9tIFwiLi4vcGx1Z2luXCI7XG5pbXBvcnQgSlNPTkxleGVyIGZyb20gXCIuLi9sZXhlci9qc29uXCI7XG5pbXBvcnQgSlNPTlBhcnNlciBmcm9tIFwiLi4vcGFyc2VyL2pzb25cIjtcbmltcG9ydCBKU09OUHJvY2Vzc29yIGZyb20gXCIuLi9wcm9jZXNzb3IvanNvblwiO1xuXG5pbXBvcnQgeyBKU09OX0xBTkdVQUdFIH0gZnJvbSBcIi4uL2xhbmd1YWdlc1wiXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEpTT05QbHVnaW4gZXh0ZW5kcyBQbHVnaW4ge1xuICBzdGF0aWMgbGFuZ3VhZ2UgPSBKU09OX0xBTkdVQUdFO1xuXG4gIHN0YXRpYyBMZXhlciA9IEpTT05MZXhlcjtcblxuICBzdGF0aWMgUGFyc2VyID0gSlNPTlBhcnNlcjtcblxuICBzdGF0aWMgUHJvY2Vzc29yID0gSlNPTlByb2Nlc3NvcjtcblxuICBzdGF0aWMgZnJvbU5vdGhpbmcoKSB7IHJldHVybiBQbHVnaW4uZnJvbU5vdGhpbmcoSlNPTlBsdWdpbik7IH1cbn1cbiJdLCJuYW1lcyI6WyJKU09OUGx1Z2luIiwiUGx1Z2luIiwibGFuZ3VhZ2UiLCJKU09OX0xBTkdVQUdFIiwiTGV4ZXIiLCJKU09OTGV4ZXIiLCJQYXJzZXIiLCJKU09OUGFyc2VyIiwiUHJvY2Vzc29yIiwiSlNPTlByb2Nlc3NvciIsImZyb21Ob3RoaW5nIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFTQTs7O2VBQXFCQTs7OytEQVBGOzZEQUNHOzhEQUNDOzhEQUNHOzJCQUVJOzs7Ozs7QUFFZixNQUFNQSxtQkFBbUJDLGVBQU07SUFDNUMsT0FBT0MsV0FBV0Msd0JBQWEsQ0FBQztJQUVoQyxPQUFPQyxRQUFRQyxhQUFTLENBQUM7SUFFekIsT0FBT0MsU0FBU0MsY0FBVSxDQUFDO0lBRTNCLE9BQU9DLFlBQVlDLGNBQWEsQ0FBQztJQUVqQyxPQUFPQyxjQUFjO1FBQUUsT0FBT1QsZUFBTSxDQUFDUyxXQUFXLENBQUNWO0lBQWE7QUFDaEUifQ==
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return PlainTextPlugin;
9
+ }
10
+ });
11
+ const _plugin = /*#__PURE__*/ _interop_require_default(require("../plugin"));
12
+ const _plainText = /*#__PURE__*/ _interop_require_default(require("../lexer/plainText"));
13
+ const _plainText1 = /*#__PURE__*/ _interop_require_default(require("../parser/plainText"));
14
+ const _plainText2 = /*#__PURE__*/ _interop_require_default(require("../processor/plainText"));
15
+ const _languages = require("../languages");
16
+ function _interop_require_default(obj) {
17
+ return obj && obj.__esModule ? obj : {
18
+ default: obj
19
+ };
20
+ }
21
+ class PlainTextPlugin extends _plugin.default {
22
+ static language = _languages.PLAIN_TEXT_LANGUAGE;
23
+ static Lexer = _plainText.default;
24
+ static Parser = _plainText1.default;
25
+ static Processor = _plainText2.default;
26
+ static fromNothing() {
27
+ return _plugin.default.fromNothing(PlainTextPlugin);
28
+ }
29
+ }
30
+
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wbHVnaW4vcGxhaW5UZXh0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgUGx1Z2luIGZyb20gXCIuLi9wbHVnaW5cIjtcbmltcG9ydCBQbGFpblRleHRMZXhlciBmcm9tIFwiLi4vbGV4ZXIvcGxhaW5UZXh0XCI7XG5pbXBvcnQgUGxhaW5UZXh0UGFyc2VyIGZyb20gXCIuLi9wYXJzZXIvcGxhaW5UZXh0XCI7XG5pbXBvcnQgUGxhaW5UZXh0UHJvY2Vzc29yIGZyb20gXCIuLi9wcm9jZXNzb3IvcGxhaW5UZXh0XCI7XG5cbmltcG9ydCB7IFBMQUlOX1RFWFRfTEFOR1VBR0UgfSBmcm9tIFwiLi4vbGFuZ3VhZ2VzXCJcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUGxhaW5UZXh0UGx1Z2luIGV4dGVuZHMgUGx1Z2luIHtcbiAgc3RhdGljIGxhbmd1YWdlID0gUExBSU5fVEVYVF9MQU5HVUFHRTtcblxuICBzdGF0aWMgTGV4ZXIgPSBQbGFpblRleHRMZXhlcjtcblxuICBzdGF0aWMgUGFyc2VyID0gUGxhaW5UZXh0UGFyc2VyO1xuXG4gIHN0YXRpYyBQcm9jZXNzb3IgPSBQbGFpblRleHRQcm9jZXNzb3I7XG5cbiAgc3RhdGljIGZyb21Ob3RoaW5nKCkgeyByZXR1cm4gUGx1Z2luLmZyb21Ob3RoaW5nKFBsYWluVGV4dFBsdWdpbik7IH1cbn1cbiJdLCJuYW1lcyI6WyJQbGFpblRleHRQbHVnaW4iLCJQbHVnaW4iLCJsYW5ndWFnZSIsIlBMQUlOX1RFWFRfTEFOR1VBR0UiLCJMZXhlciIsIlBsYWluVGV4dExleGVyIiwiUGFyc2VyIiwiUGxhaW5UZXh0UGFyc2VyIiwiUHJvY2Vzc29yIiwiUGxhaW5UZXh0UHJvY2Vzc29yIiwiZnJvbU5vdGhpbmciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVNBOzs7ZUFBcUJBOzs7K0RBUEY7a0VBQ1E7bUVBQ0M7bUVBQ0c7MkJBRUs7Ozs7OztBQUVyQixNQUFNQSx3QkFBd0JDLGVBQU07SUFDakQsT0FBT0MsV0FBV0MsOEJBQW1CLENBQUM7SUFFdEMsT0FBT0MsUUFBUUMsa0JBQWMsQ0FBQztJQUU5QixPQUFPQyxTQUFTQyxtQkFBZSxDQUFDO0lBRWhDLE9BQU9DLFlBQVlDLG1CQUFrQixDQUFDO0lBRXRDLE9BQU9DLGNBQWM7UUFBRSxPQUFPVCxlQUFNLENBQUNTLFdBQVcsQ0FBQ1Y7SUFBa0I7QUFDckUifQ==
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return XMLPlugin;
9
+ }
10
+ });
11
+ const _plugin = /*#__PURE__*/ _interop_require_default(require("../plugin"));
12
+ const _xml = /*#__PURE__*/ _interop_require_default(require("../lexer/xml"));
13
+ const _xml1 = /*#__PURE__*/ _interop_require_default(require("../parser/xml"));
14
+ const _xml2 = /*#__PURE__*/ _interop_require_default(require("../processor/xml"));
15
+ const _languages = require("../languages");
16
+ function _interop_require_default(obj) {
17
+ return obj && obj.__esModule ? obj : {
18
+ default: obj
19
+ };
20
+ }
21
+ class XMLPlugin extends _plugin.default {
22
+ static language = _languages.XML_LANGUAGE;
23
+ static Lexer = _xml.default;
24
+ static Parser = _xml1.default;
25
+ static Processor = _xml2.default;
26
+ static fromNothing() {
27
+ return _plugin.default.fromNothing(XMLPlugin);
28
+ }
29
+ }
30
+
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wbHVnaW4veG1sLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgUGx1Z2luIGZyb20gXCIuLi9wbHVnaW5cIjtcbmltcG9ydCBYTUxMZXhlciBmcm9tIFwiLi4vbGV4ZXIveG1sXCI7XG5pbXBvcnQgWE1MUGFyc2VyIGZyb20gXCIuLi9wYXJzZXIveG1sXCI7XG5pbXBvcnQgWE1MUHJvY2Vzc29yIGZyb20gXCIuLi9wcm9jZXNzb3IveG1sXCI7XG5cbmltcG9ydCB7IFhNTF9MQU5HVUFHRSB9IGZyb20gXCIuLi9sYW5ndWFnZXNcIlxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBYTUxQbHVnaW4gZXh0ZW5kcyBQbHVnaW4ge1xuICBzdGF0aWMgbGFuZ3VhZ2UgPSBYTUxfTEFOR1VBR0U7XG5cbiAgc3RhdGljIExleGVyID0gWE1MTGV4ZXI7XG5cbiAgc3RhdGljIFBhcnNlciA9IFhNTFBhcnNlcjtcblxuICBzdGF0aWMgUHJvY2Vzc29yID0gWE1MUHJvY2Vzc29yO1xuXG4gIHN0YXRpYyBmcm9tTm90aGluZygpIHsgcmV0dXJuIFBsdWdpbi5mcm9tTm90aGluZyhYTUxQbHVnaW4pOyB9XG59XG4iXSwibmFtZXMiOlsiWE1MUGx1Z2luIiwiUGx1Z2luIiwibGFuZ3VhZ2UiLCJYTUxfTEFOR1VBR0UiLCJMZXhlciIsIlhNTExleGVyIiwiUGFyc2VyIiwiWE1MUGFyc2VyIiwiUHJvY2Vzc29yIiwiWE1MUHJvY2Vzc29yIiwiZnJvbU5vdGhpbmciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVNBOzs7ZUFBcUJBOzs7K0RBUEY7NERBQ0U7NkRBQ0M7NkRBQ0c7MkJBRUk7Ozs7OztBQUVkLE1BQU1BLGtCQUFrQkMsZUFBTTtJQUMzQyxPQUFPQyxXQUFXQyx1QkFBWSxDQUFDO0lBRS9CLE9BQU9DLFFBQVFDLFlBQVEsQ0FBQztJQUV4QixPQUFPQyxTQUFTQyxhQUFTLENBQUM7SUFFMUIsT0FBT0MsWUFBWUMsYUFBWSxDQUFDO0lBRWhDLE9BQU9DLGNBQWM7UUFBRSxPQUFPVCxlQUFNLENBQUNTLFdBQVcsQ0FBQ1Y7SUFBWTtBQUMvRCJ9
package/lib/plugin.js ADDED
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return Plugin;
9
+ }
10
+ });
11
+ class Plugin {
12
+ constructor(lexer, parser, processor, tokens, node){
13
+ this.lexer = lexer;
14
+ this.parser = parser;
15
+ this.processor = processor;
16
+ this.tokens = tokens;
17
+ this.node = node;
18
+ }
19
+ getLexer() {
20
+ return this.lexer;
21
+ }
22
+ getParser() {
23
+ return this.parser;
24
+ }
25
+ getProcessor() {
26
+ return this.processor;
27
+ }
28
+ getTokens() {
29
+ return this.tokens;
30
+ }
31
+ getNode() {
32
+ return this.node;
33
+ }
34
+ getLanguage() {
35
+ const { language } = this.constructor;
36
+ return language;
37
+ }
38
+ setLexer(lexer) {
39
+ this.lexer = lexer;
40
+ }
41
+ setParser(parser) {
42
+ this.parser = parser;
43
+ }
44
+ setProcessor(processor) {
45
+ this.processor = processor;
46
+ }
47
+ update(content) {
48
+ this.tokens = this.lexer.tokenise(content);
49
+ this.node = this.parser.parse(this.tokens);
50
+ this.processor.process(this.tokens, this.node);
51
+ }
52
+ static fromNothing(Class) {
53
+ const { Lexer, Parser, Processor } = Class, lexer = Lexer.fromNothing(), parser = Parser.fromNothing(), processor = Processor.fromNothing(), tokens = null, node = null, plugin = new Class(lexer, parser, processor, tokens, node);
54
+ return plugin;
55
+ }
56
+ }
57
+
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9wbHVnaW4uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFBsdWdpbiB7XG4gIGNvbnN0cnVjdG9yKGxleGVyLCBwYXJzZXIsIHByb2Nlc3NvciwgdG9rZW5zLCBub2RlKSB7XG4gICAgdGhpcy5sZXhlciA9IGxleGVyO1xuICAgIHRoaXMucGFyc2VyID0gcGFyc2VyO1xuICAgIHRoaXMucHJvY2Vzc29yID0gcHJvY2Vzc29yO1xuICAgIHRoaXMudG9rZW5zID0gdG9rZW5zO1xuICAgIHRoaXMubm9kZSA9IG5vZGU7XG4gIH1cblxuICBnZXRMZXhlcigpIHtcbiAgICByZXR1cm4gdGhpcy5sZXhlcjtcbiAgfVxuXG4gIGdldFBhcnNlcigpIHtcbiAgICByZXR1cm4gdGhpcy5wYXJzZXI7XG4gIH1cblxuICBnZXRQcm9jZXNzb3IoKSB7XG4gICAgcmV0dXJuIHRoaXMucHJvY2Vzc29yO1xuICB9XG5cbiAgZ2V0VG9rZW5zKCkge1xuICAgIHJldHVybiB0aGlzLnRva2VucztcbiAgfVxuXG4gIGdldE5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubm9kZTtcbiAgfVxuXG4gIGdldExhbmd1YWdlKCkge1xuICAgIGNvbnN0IHsgbGFuZ3VhZ2UgfSA9IHRoaXMuY29uc3RydWN0b3I7XG5cbiAgICByZXR1cm4gbGFuZ3VhZ2U7XG4gIH1cblxuICBzZXRMZXhlcihsZXhlcikge1xuICAgIHRoaXMubGV4ZXIgPSBsZXhlcjtcbiAgfVxuXG4gIHNldFBhcnNlcihwYXJzZXIpIHtcbiAgICB0aGlzLnBhcnNlciA9IHBhcnNlcjtcbiAgfVxuXG4gIHNldFByb2Nlc3Nvcihwcm9jZXNzb3IpIHtcbiAgICB0aGlzLnByb2Nlc3NvciA9IHByb2Nlc3NvcjtcbiAgfVxuXG4gIHVwZGF0ZShjb250ZW50KSB7XG4gICAgdGhpcy50b2tlbnMgPSB0aGlzLmxleGVyLnRva2VuaXNlKGNvbnRlbnQpO1xuXG4gICAgdGhpcy5ub2RlID0gdGhpcy5wYXJzZXIucGFyc2UodGhpcy50b2tlbnMpO1xuXG4gICAgdGhpcy5wcm9jZXNzb3IucHJvY2Vzcyh0aGlzLnRva2VucywgdGhpcy5ub2RlKTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tTm90aGluZyhDbGFzcykge1xuICAgIGNvbnN0IHsgTGV4ZXIsIFBhcnNlciwgUHJvY2Vzc29yIH0gPSBDbGFzcyxcbiAgICAgICAgICBsZXhlciA9IExleGVyLmZyb21Ob3RoaW5nKCksXG4gICAgICAgICAgcGFyc2VyID0gUGFyc2VyLmZyb21Ob3RoaW5nKCksXG4gICAgICAgICAgcHJvY2Vzc29yID0gUHJvY2Vzc29yLmZyb21Ob3RoaW5nKCksXG4gICAgICAgICAgdG9rZW5zID0gbnVsbCxcbiAgICAgICAgICBub2RlID0gbnVsbCxcbiAgICAgICAgICBwbHVnaW4gPSBuZXcgQ2xhc3MobGV4ZXIsIHBhcnNlciwgcHJvY2Vzc29yLCB0b2tlbnMsIG5vZGUpO1xuXG4gICAgcmV0dXJuIHBsdWdpbjtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIlBsdWdpbiIsImxleGVyIiwicGFyc2VyIiwicHJvY2Vzc29yIiwidG9rZW5zIiwibm9kZSIsImdldExleGVyIiwiZ2V0UGFyc2VyIiwiZ2V0UHJvY2Vzc29yIiwiZ2V0VG9rZW5zIiwiZ2V0Tm9kZSIsImdldExhbmd1YWdlIiwibGFuZ3VhZ2UiLCJzZXRMZXhlciIsInNldFBhcnNlciIsInNldFByb2Nlc3NvciIsInVwZGF0ZSIsImNvbnRlbnQiLCJ0b2tlbmlzZSIsInBhcnNlIiwicHJvY2VzcyIsImZyb21Ob3RoaW5nIiwiQ2xhc3MiLCJMZXhlciIsIlBhcnNlciIsIlByb2Nlc3NvciIsInBsdWdpbiJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBRUE7OztlQUFxQkE7OztBQUFOLE1BQU1BO0lBQ25CLFlBQVlDLEtBQUssRUFBRUMsTUFBTSxFQUFFQyxTQUFTLEVBQUVDLE1BQU0sRUFBRUMsSUFBSSxDQUFFO1FBQ2xELElBQUksQ0FBQ0osS0FBSyxHQUFHQTtRQUNiLElBQUksQ0FBQ0MsTUFBTSxHQUFHQTtRQUNkLElBQUksQ0FBQ0MsU0FBUyxHQUFHQTtRQUNqQixJQUFJLENBQUNDLE1BQU0sR0FBR0E7UUFDZCxJQUFJLENBQUNDLElBQUksR0FBR0E7SUFDZDtJQUVBQyxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUNMLEtBQUs7SUFDbkI7SUFFQU0sWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDTCxNQUFNO0lBQ3BCO0lBRUFNLGVBQWU7UUFDYixPQUFPLElBQUksQ0FBQ0wsU0FBUztJQUN2QjtJQUVBTSxZQUFZO1FBQ1YsT0FBTyxJQUFJLENBQUNMLE1BQU07SUFDcEI7SUFFQU0sVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDTCxJQUFJO0lBQ2xCO0lBRUFNLGNBQWM7UUFDWixNQUFNLEVBQUVDLFFBQVEsRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXO1FBRXJDLE9BQU9BO0lBQ1Q7SUFFQUMsU0FBU1osS0FBSyxFQUFFO1FBQ2QsSUFBSSxDQUFDQSxLQUFLLEdBQUdBO0lBQ2Y7SUFFQWEsVUFBVVosTUFBTSxFQUFFO1FBQ2hCLElBQUksQ0FBQ0EsTUFBTSxHQUFHQTtJQUNoQjtJQUVBYSxhQUFhWixTQUFTLEVBQUU7UUFDdEIsSUFBSSxDQUFDQSxTQUFTLEdBQUdBO0lBQ25CO0lBRUFhLE9BQU9DLE9BQU8sRUFBRTtRQUNkLElBQUksQ0FBQ2IsTUFBTSxHQUFHLElBQUksQ0FBQ0gsS0FBSyxDQUFDaUIsUUFBUSxDQUFDRDtRQUVsQyxJQUFJLENBQUNaLElBQUksR0FBRyxJQUFJLENBQUNILE1BQU0sQ0FBQ2lCLEtBQUssQ0FBQyxJQUFJLENBQUNmLE1BQU07UUFFekMsSUFBSSxDQUFDRCxTQUFTLENBQUNpQixPQUFPLENBQUMsSUFBSSxDQUFDaEIsTUFBTSxFQUFFLElBQUksQ0FBQ0MsSUFBSTtJQUMvQztJQUVBLE9BQU9nQixZQUFZQyxLQUFLLEVBQUU7UUFDeEIsTUFBTSxFQUFFQyxLQUFLLEVBQUVDLE1BQU0sRUFBRUMsU0FBUyxFQUFFLEdBQUdILE9BQy9CckIsUUFBUXNCLE1BQU1GLFdBQVcsSUFDekJuQixTQUFTc0IsT0FBT0gsV0FBVyxJQUMzQmxCLFlBQVlzQixVQUFVSixXQUFXLElBQ2pDakIsU0FBUyxNQUNUQyxPQUFPLE1BQ1BxQixTQUFTLElBQUlKLE1BQU1yQixPQUFPQyxRQUFRQyxXQUFXQyxRQUFRQztRQUUzRCxPQUFPcUI7SUFDVDtBQUNGIn0=