circuitscript 0.0.29 → 0.0.32
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/dist/cjs/BaseVisitor.js +6 -1
- package/dist/cjs/antlr/CircuitScriptLexer.js +204 -200
- package/dist/cjs/antlr/CircuitScriptParser.js +1066 -1173
- package/dist/cjs/draw_symbols.js +330 -87
- package/dist/cjs/execute.js +41 -14
- package/dist/cjs/geometry.js +79 -18
- package/dist/cjs/globals.js +37 -6
- package/dist/cjs/helpers.js +75 -5
- package/dist/cjs/layout.js +107 -43
- package/dist/cjs/main.js +10 -4
- package/dist/cjs/objects/ClassComponent.js +2 -0
- package/dist/cjs/objects/ExecutionScope.js +1 -1
- package/dist/cjs/objects/Frame.js +2 -0
- package/dist/cjs/objects/Net.js +3 -2
- package/dist/cjs/objects/PinTypes.js +7 -1
- package/dist/cjs/objects/types.js +11 -1
- package/dist/cjs/regenerate-tests.js +64 -3
- package/dist/cjs/render.js +29 -21
- package/dist/cjs/sizing.js +4 -6
- package/dist/cjs/utils.js +29 -5
- package/dist/cjs/visitor.js +176 -10
- package/dist/esm/BaseVisitor.mjs +6 -1
- package/dist/esm/antlr/CircuitScriptLexer.mjs +204 -200
- package/dist/esm/antlr/CircuitScriptParser.mjs +1061 -1171
- package/dist/esm/antlr/CircuitScriptVisitor.mjs +3 -0
- package/dist/esm/draw_symbols.mjs +324 -85
- package/dist/esm/execute.mjs +42 -15
- package/dist/esm/geometry.mjs +79 -17
- package/dist/esm/globals.mjs +36 -5
- package/dist/esm/helpers.mjs +74 -5
- package/dist/esm/layout.mjs +110 -46
- package/dist/esm/main.mjs +11 -5
- package/dist/esm/objects/ClassComponent.mjs +6 -0
- package/dist/esm/objects/ExecutionScope.mjs +1 -1
- package/dist/esm/objects/Frame.mjs +2 -0
- package/dist/esm/objects/Net.mjs +3 -2
- package/dist/esm/objects/PinTypes.mjs +6 -0
- package/dist/esm/objects/types.mjs +14 -0
- package/dist/esm/regenerate-tests.mjs +64 -3
- package/dist/esm/render.mjs +30 -22
- package/dist/esm/sizing.mjs +3 -4
- package/dist/esm/utils.mjs +26 -4
- package/dist/esm/visitor.mjs +179 -13
- package/dist/types/antlr/CircuitScriptLexer.d.ts +42 -41
- package/dist/types/antlr/CircuitScriptParser.d.ts +144 -133
- package/dist/types/antlr/CircuitScriptVisitor.d.ts +6 -0
- package/dist/types/draw_symbols.d.ts +15 -2
- package/dist/types/execute.d.ts +5 -4
- package/dist/types/geometry.d.ts +4 -3
- package/dist/types/globals.d.ts +32 -3
- package/dist/types/helpers.d.ts +12 -0
- package/dist/types/layout.d.ts +8 -2
- package/dist/types/objects/ClassComponent.d.ts +8 -0
- package/dist/types/objects/Frame.d.ts +3 -1
- package/dist/types/objects/PinTypes.d.ts +1 -0
- package/dist/types/objects/Wire.d.ts +4 -2
- package/dist/types/objects/types.d.ts +8 -0
- package/dist/types/render.d.ts +5 -1
- package/dist/types/sizing.d.ts +0 -4
- package/dist/types/utils.d.ts +3 -0
- package/dist/types/visitor.d.ts +8 -1
- package/fonts/Arial.ttf +0 -0
- package/libs/lib.cst +58 -41
- package/package.json +5 -1
|
@@ -12,127 +12,131 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
12
12
|
static Create = 10;
|
|
13
13
|
static Component = 11;
|
|
14
14
|
static Graphic = 12;
|
|
15
|
-
static
|
|
16
|
-
static
|
|
17
|
-
static
|
|
18
|
-
static
|
|
19
|
-
static
|
|
20
|
-
static
|
|
21
|
-
static
|
|
22
|
-
static
|
|
23
|
-
static
|
|
24
|
-
static
|
|
25
|
-
static
|
|
26
|
-
static
|
|
27
|
-
static
|
|
28
|
-
static
|
|
29
|
-
static
|
|
30
|
-
static
|
|
31
|
-
static
|
|
32
|
-
static
|
|
33
|
-
static
|
|
34
|
-
static
|
|
35
|
-
static
|
|
36
|
-
static
|
|
37
|
-
static
|
|
38
|
-
static
|
|
39
|
-
static
|
|
40
|
-
static
|
|
41
|
-
static
|
|
42
|
-
static
|
|
43
|
-
static
|
|
44
|
-
static
|
|
45
|
-
static
|
|
46
|
-
static
|
|
47
|
-
static
|
|
48
|
-
static
|
|
49
|
-
static
|
|
50
|
-
static
|
|
51
|
-
static
|
|
52
|
-
static
|
|
53
|
-
static
|
|
54
|
-
static
|
|
55
|
-
static
|
|
56
|
-
static
|
|
57
|
-
static
|
|
15
|
+
static Module = 13;
|
|
16
|
+
static Wire = 14;
|
|
17
|
+
static Pin = 15;
|
|
18
|
+
static Add = 16;
|
|
19
|
+
static At = 17;
|
|
20
|
+
static To = 18;
|
|
21
|
+
static Point = 19;
|
|
22
|
+
static Join = 20;
|
|
23
|
+
static Parallel = 21;
|
|
24
|
+
static Return = 22;
|
|
25
|
+
static Define = 23;
|
|
26
|
+
static Import = 24;
|
|
27
|
+
static If = 25;
|
|
28
|
+
static Else = 26;
|
|
29
|
+
static Not = 27;
|
|
30
|
+
static Frame = 28;
|
|
31
|
+
static Equals = 29;
|
|
32
|
+
static NotEquals = 30;
|
|
33
|
+
static GreaterThan = 31;
|
|
34
|
+
static GreatOrEqualThan = 32;
|
|
35
|
+
static LessThan = 33;
|
|
36
|
+
static LessOrEqualThan = 34;
|
|
37
|
+
static LogicalAnd = 35;
|
|
38
|
+
static LogicalOr = 36;
|
|
39
|
+
static Addition = 37;
|
|
40
|
+
static Minus = 38;
|
|
41
|
+
static Divide = 39;
|
|
42
|
+
static Multiply = 40;
|
|
43
|
+
static OPEN_PAREN = 41;
|
|
44
|
+
static CLOSE_PAREN = 42;
|
|
45
|
+
static NOT_CONNECTED = 43;
|
|
46
|
+
static BOOLEAN_VALUE = 44;
|
|
47
|
+
static ID = 45;
|
|
48
|
+
static INTEGER_VALUE = 46;
|
|
49
|
+
static DECIMAL_VALUE = 47;
|
|
50
|
+
static NUMERIC_VALUE = 48;
|
|
51
|
+
static STRING_VALUE = 49;
|
|
52
|
+
static PERCENTAGE_VALUE = 50;
|
|
53
|
+
static ALPHA_NUMERIC = 51;
|
|
54
|
+
static WS = 52;
|
|
55
|
+
static NEWLINE = 53;
|
|
56
|
+
static COMMENT = 54;
|
|
57
|
+
static INDENT = 55;
|
|
58
|
+
static DEDENT = 56;
|
|
58
59
|
static RULE_script = 0;
|
|
59
60
|
static RULE_expression = 1;
|
|
60
|
-
static
|
|
61
|
-
static
|
|
62
|
-
static
|
|
63
|
-
static
|
|
64
|
-
static
|
|
65
|
-
static
|
|
66
|
-
static
|
|
67
|
-
static
|
|
68
|
-
static
|
|
69
|
-
static
|
|
70
|
-
static
|
|
71
|
-
static
|
|
72
|
-
static
|
|
73
|
-
static
|
|
74
|
-
static
|
|
75
|
-
static
|
|
76
|
-
static
|
|
77
|
-
static
|
|
78
|
-
static
|
|
79
|
-
static
|
|
80
|
-
static
|
|
81
|
-
static
|
|
82
|
-
static
|
|
83
|
-
static
|
|
84
|
-
static
|
|
85
|
-
static
|
|
86
|
-
static
|
|
87
|
-
static
|
|
88
|
-
static
|
|
89
|
-
static
|
|
90
|
-
static
|
|
91
|
-
static
|
|
92
|
-
static
|
|
93
|
-
static
|
|
94
|
-
static
|
|
95
|
-
static
|
|
96
|
-
static
|
|
97
|
-
static
|
|
98
|
-
static
|
|
99
|
-
static
|
|
100
|
-
static
|
|
101
|
-
static
|
|
102
|
-
static
|
|
103
|
-
static
|
|
104
|
-
static
|
|
105
|
-
static
|
|
106
|
-
static
|
|
107
|
-
static
|
|
108
|
-
static
|
|
109
|
-
static
|
|
110
|
-
static
|
|
111
|
-
static
|
|
112
|
-
static
|
|
113
|
-
static
|
|
61
|
+
static RULE_expressions_block = 2;
|
|
62
|
+
static RULE_path_blocks = 3;
|
|
63
|
+
static RULE_path_block_inner = 4;
|
|
64
|
+
static RULE_property_set_expr2 = 5;
|
|
65
|
+
static RULE_assignment_expr2 = 6;
|
|
66
|
+
static RULE_pin_select_expr = 7;
|
|
67
|
+
static RULE_component_modifier_expr = 8;
|
|
68
|
+
static RULE_data_expr_with_assignment = 9;
|
|
69
|
+
static RULE_add_component_expr = 10;
|
|
70
|
+
static RULE_component_select_expr = 11;
|
|
71
|
+
static RULE_pin_select_expr2 = 12;
|
|
72
|
+
static RULE_at_component_expr = 13;
|
|
73
|
+
static RULE_to_component_expr = 14;
|
|
74
|
+
static RULE_at_to_multiple_expr = 15;
|
|
75
|
+
static RULE_at_to_multiple_line_expr = 16;
|
|
76
|
+
static RULE_at_to_multiple_line_expr_to_pin = 17;
|
|
77
|
+
static RULE_at_block = 18;
|
|
78
|
+
static RULE_at_block_expressions = 19;
|
|
79
|
+
static RULE_at_block_pin_expr = 20;
|
|
80
|
+
static RULE_at_block_pin_expression_simple = 21;
|
|
81
|
+
static RULE_at_block_pin_expression_complex = 22;
|
|
82
|
+
static RULE_break_keyword = 23;
|
|
83
|
+
static RULE_assignment_expr = 24;
|
|
84
|
+
static RULE_keyword_assignment_expr = 25;
|
|
85
|
+
static RULE_parameters = 26;
|
|
86
|
+
static RULE_property_set_expr = 27;
|
|
87
|
+
static RULE_double_dot_property_set_expr = 28;
|
|
88
|
+
static RULE_data_expr = 29;
|
|
89
|
+
static RULE_binary_operator = 30;
|
|
90
|
+
static RULE_unary_operator = 31;
|
|
91
|
+
static RULE_value_expr = 32;
|
|
92
|
+
static RULE_function_def_expr = 33;
|
|
93
|
+
static RULE_function_expr = 34;
|
|
94
|
+
static RULE_function_args_expr = 35;
|
|
95
|
+
static RULE_atom_expr = 36;
|
|
96
|
+
static RULE_trailer_expr = 37;
|
|
97
|
+
static RULE_function_call_expr = 38;
|
|
98
|
+
static RULE_net_namespace_expr = 39;
|
|
99
|
+
static RULE_function_return_expr = 40;
|
|
100
|
+
static RULE_property_block_expr = 41;
|
|
101
|
+
static RULE_create_component_expr = 42;
|
|
102
|
+
static RULE_create_graphic_expr = 43;
|
|
103
|
+
static RULE_create_module_expr = 44;
|
|
104
|
+
static RULE_nested_properties_inner = 45;
|
|
105
|
+
static RULE_graphic_expr = 46;
|
|
106
|
+
static RULE_property_expr = 47;
|
|
107
|
+
static RULE_property_key_expr = 48;
|
|
108
|
+
static RULE_property_value_expr = 49;
|
|
109
|
+
static RULE_blank_expr = 50;
|
|
110
|
+
static RULE_wire_atom_expr = 51;
|
|
111
|
+
static RULE_wire_expr = 52;
|
|
112
|
+
static RULE_point_expr = 53;
|
|
113
|
+
static RULE_import_expr = 54;
|
|
114
|
+
static RULE_frame_expr = 55;
|
|
115
|
+
static RULE_if_expr = 56;
|
|
116
|
+
static RULE_if_inner_expr = 57;
|
|
117
|
+
static RULE_else_expr = 58;
|
|
114
118
|
static literalNames = [
|
|
115
119
|
null, "':'", "','", "'='", "'..'", "'.'", "'['", "']'", "'break'",
|
|
116
|
-
"'branch'", "'create'", "'component'", "'graphic'", "'
|
|
117
|
-
"'
|
|
118
|
-
"'
|
|
119
|
-
"'
|
|
120
|
-
"'/'", "'*'", "'('", "')'"
|
|
120
|
+
"'branch'", "'create'", "'component'", "'graphic'", "'module'",
|
|
121
|
+
"'wire'", "'pin'", "'add'", "'at'", "'to'", "'point'", "'join'",
|
|
122
|
+
"'parallel'", "'return'", "'def'", "'import'", "'if'", "'else'",
|
|
123
|
+
"'!'", "'frame'", "'=='", "'!='", "'>'", "'>='", "'<'", "'<='",
|
|
124
|
+
"'&&'", "'||'", "'+'", "'-'", "'/'", "'*'", "'('", "')'"
|
|
121
125
|
];
|
|
122
126
|
static symbolicNames = [
|
|
123
127
|
null, null, null, null, null, null, null, null, "Break", "Branch",
|
|
124
|
-
"Create", "Component", "Graphic", "
|
|
125
|
-
"Point", "Join", "Parallel", "Return", "Define", "Import",
|
|
126
|
-
"Else", "Not", "Frame", "Equals", "NotEquals", "GreaterThan",
|
|
127
|
-
"
|
|
128
|
-
"
|
|
129
|
-
"
|
|
130
|
-
"
|
|
131
|
-
"COMMENT", "INDENT", "DEDENT"
|
|
128
|
+
"Create", "Component", "Graphic", "Module", "Wire", "Pin", "Add",
|
|
129
|
+
"At", "To", "Point", "Join", "Parallel", "Return", "Define", "Import",
|
|
130
|
+
"If", "Else", "Not", "Frame", "Equals", "NotEquals", "GreaterThan",
|
|
131
|
+
"GreatOrEqualThan", "LessThan", "LessOrEqualThan", "LogicalAnd",
|
|
132
|
+
"LogicalOr", "Addition", "Minus", "Divide", "Multiply", "OPEN_PAREN",
|
|
133
|
+
"CLOSE_PAREN", "NOT_CONNECTED", "BOOLEAN_VALUE", "ID", "INTEGER_VALUE",
|
|
134
|
+
"DECIMAL_VALUE", "NUMERIC_VALUE", "STRING_VALUE", "PERCENTAGE_VALUE",
|
|
135
|
+
"ALPHA_NUMERIC", "WS", "NEWLINE", "COMMENT", "INDENT", "DEDENT"
|
|
132
136
|
];
|
|
133
137
|
static ruleNames = [
|
|
134
|
-
"script", "expression", "
|
|
135
|
-
"assignment_expr2", "pin_select_expr", "component_modifier_expr",
|
|
138
|
+
"script", "expression", "expressions_block", "path_blocks", "path_block_inner",
|
|
139
|
+
"property_set_expr2", "assignment_expr2", "pin_select_expr", "component_modifier_expr",
|
|
136
140
|
"data_expr_with_assignment", "add_component_expr", "component_select_expr",
|
|
137
141
|
"pin_select_expr2", "at_component_expr", "to_component_expr", "at_to_multiple_expr",
|
|
138
142
|
"at_to_multiple_line_expr", "at_to_multiple_line_expr_to_pin", "at_block",
|
|
@@ -142,10 +146,11 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
142
146
|
"data_expr", "binary_operator", "unary_operator", "value_expr",
|
|
143
147
|
"function_def_expr", "function_expr", "function_args_expr", "atom_expr",
|
|
144
148
|
"trailer_expr", "function_call_expr", "net_namespace_expr", "function_return_expr",
|
|
145
|
-
"
|
|
146
|
-
"
|
|
147
|
-
"
|
|
148
|
-
"
|
|
149
|
+
"property_block_expr", "create_component_expr", "create_graphic_expr",
|
|
150
|
+
"create_module_expr", "nested_properties_inner", "graphic_expr",
|
|
151
|
+
"property_expr", "property_key_expr", "property_value_expr", "blank_expr",
|
|
152
|
+
"wire_atom_expr", "wire_expr", "point_expr", "import_expr", "frame_expr",
|
|
153
|
+
"if_expr", "if_inner_expr", "else_expr",
|
|
149
154
|
];
|
|
150
155
|
get grammarFileName() { return "CircuitScript.g4"; }
|
|
151
156
|
get literalNames() { return CircuitScriptParser.literalNames; }
|
|
@@ -166,12 +171,12 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
166
171
|
try {
|
|
167
172
|
this.enterOuterAlt(localContext, 1);
|
|
168
173
|
{
|
|
169
|
-
this.state =
|
|
174
|
+
this.state = 120;
|
|
170
175
|
this.errorHandler.sync(this);
|
|
171
176
|
_la = this.tokenStream.LA(1);
|
|
172
177
|
do {
|
|
173
178
|
{
|
|
174
|
-
this.state =
|
|
179
|
+
this.state = 120;
|
|
175
180
|
this.errorHandler.sync(this);
|
|
176
181
|
switch (this.tokenStream.LA(1)) {
|
|
177
182
|
case CircuitScriptParser.T__3:
|
|
@@ -192,13 +197,13 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
192
197
|
case CircuitScriptParser.Divide:
|
|
193
198
|
case CircuitScriptParser.ID:
|
|
194
199
|
{
|
|
195
|
-
this.state =
|
|
200
|
+
this.state = 118;
|
|
196
201
|
this.expression();
|
|
197
202
|
}
|
|
198
203
|
break;
|
|
199
204
|
case CircuitScriptParser.NEWLINE:
|
|
200
205
|
{
|
|
201
|
-
this.state =
|
|
206
|
+
this.state = 119;
|
|
202
207
|
this.match(CircuitScriptParser.NEWLINE);
|
|
203
208
|
}
|
|
204
209
|
break;
|
|
@@ -206,11 +211,11 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
206
211
|
throw new antlr.NoViableAltException(this);
|
|
207
212
|
}
|
|
208
213
|
}
|
|
209
|
-
this.state =
|
|
214
|
+
this.state = 122;
|
|
210
215
|
this.errorHandler.sync(this);
|
|
211
216
|
_la = this.tokenStream.LA(1);
|
|
212
|
-
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
213
|
-
this.state =
|
|
217
|
+
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 331301648) !== 0) || ((((_la - 37)) & ~0x1F) === 0 && ((1 << (_la - 37)) & 65797) !== 0));
|
|
218
|
+
this.state = 124;
|
|
214
219
|
this.match(CircuitScriptParser.EOF);
|
|
215
220
|
}
|
|
216
221
|
}
|
|
@@ -232,132 +237,132 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
232
237
|
let localContext = new ExpressionContext(this.context, this.state);
|
|
233
238
|
this.enterRule(localContext, 2, CircuitScriptParser.RULE_expression);
|
|
234
239
|
try {
|
|
235
|
-
this.state =
|
|
240
|
+
this.state = 144;
|
|
236
241
|
this.errorHandler.sync(this);
|
|
237
242
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 2, this.context)) {
|
|
238
243
|
case 1:
|
|
239
244
|
this.enterOuterAlt(localContext, 1);
|
|
240
245
|
{
|
|
241
|
-
this.state =
|
|
246
|
+
this.state = 126;
|
|
242
247
|
this.add_component_expr();
|
|
243
248
|
}
|
|
244
249
|
break;
|
|
245
250
|
case 2:
|
|
246
251
|
this.enterOuterAlt(localContext, 2);
|
|
247
252
|
{
|
|
248
|
-
this.state =
|
|
253
|
+
this.state = 127;
|
|
249
254
|
this.to_component_expr();
|
|
250
255
|
}
|
|
251
256
|
break;
|
|
252
257
|
case 3:
|
|
253
258
|
this.enterOuterAlt(localContext, 3);
|
|
254
259
|
{
|
|
255
|
-
this.state =
|
|
260
|
+
this.state = 128;
|
|
256
261
|
this.at_component_expr();
|
|
257
262
|
}
|
|
258
263
|
break;
|
|
259
264
|
case 4:
|
|
260
265
|
this.enterOuterAlt(localContext, 4);
|
|
261
266
|
{
|
|
262
|
-
this.state =
|
|
267
|
+
this.state = 129;
|
|
263
268
|
this.assignment_expr();
|
|
264
269
|
}
|
|
265
270
|
break;
|
|
266
271
|
case 5:
|
|
267
272
|
this.enterOuterAlt(localContext, 5);
|
|
268
273
|
{
|
|
269
|
-
this.state =
|
|
274
|
+
this.state = 130;
|
|
270
275
|
this.property_set_expr();
|
|
271
276
|
}
|
|
272
277
|
break;
|
|
273
278
|
case 6:
|
|
274
279
|
this.enterOuterAlt(localContext, 6);
|
|
275
280
|
{
|
|
276
|
-
this.state =
|
|
281
|
+
this.state = 131;
|
|
277
282
|
this.property_set_expr2();
|
|
278
283
|
}
|
|
279
284
|
break;
|
|
280
285
|
case 7:
|
|
281
286
|
this.enterOuterAlt(localContext, 7);
|
|
282
287
|
{
|
|
283
|
-
this.state =
|
|
288
|
+
this.state = 132;
|
|
284
289
|
this.double_dot_property_set_expr();
|
|
285
290
|
}
|
|
286
291
|
break;
|
|
287
292
|
case 8:
|
|
288
293
|
this.enterOuterAlt(localContext, 8);
|
|
289
294
|
{
|
|
290
|
-
this.state =
|
|
295
|
+
this.state = 133;
|
|
291
296
|
this.break_keyword();
|
|
292
297
|
}
|
|
293
298
|
break;
|
|
294
299
|
case 9:
|
|
295
300
|
this.enterOuterAlt(localContext, 9);
|
|
296
301
|
{
|
|
297
|
-
this.state =
|
|
302
|
+
this.state = 134;
|
|
298
303
|
this.function_def_expr();
|
|
299
304
|
}
|
|
300
305
|
break;
|
|
301
306
|
case 10:
|
|
302
307
|
this.enterOuterAlt(localContext, 10);
|
|
303
308
|
{
|
|
304
|
-
this.state =
|
|
309
|
+
this.state = 135;
|
|
305
310
|
this.function_call_expr();
|
|
306
311
|
}
|
|
307
312
|
break;
|
|
308
313
|
case 11:
|
|
309
314
|
this.enterOuterAlt(localContext, 11);
|
|
310
315
|
{
|
|
311
|
-
this.state =
|
|
316
|
+
this.state = 136;
|
|
312
317
|
this.wire_expr();
|
|
313
318
|
}
|
|
314
319
|
break;
|
|
315
320
|
case 12:
|
|
316
321
|
this.enterOuterAlt(localContext, 12);
|
|
317
322
|
{
|
|
318
|
-
this.state =
|
|
323
|
+
this.state = 137;
|
|
319
324
|
this.import_expr();
|
|
320
325
|
}
|
|
321
326
|
break;
|
|
322
327
|
case 13:
|
|
323
328
|
this.enterOuterAlt(localContext, 13);
|
|
324
329
|
{
|
|
325
|
-
this.state =
|
|
330
|
+
this.state = 138;
|
|
326
331
|
this.frame_expr();
|
|
327
332
|
}
|
|
328
333
|
break;
|
|
329
334
|
case 14:
|
|
330
335
|
this.enterOuterAlt(localContext, 14);
|
|
331
336
|
{
|
|
332
|
-
this.state =
|
|
337
|
+
this.state = 139;
|
|
333
338
|
this.atom_expr();
|
|
334
339
|
}
|
|
335
340
|
break;
|
|
336
341
|
case 15:
|
|
337
342
|
this.enterOuterAlt(localContext, 15);
|
|
338
343
|
{
|
|
339
|
-
this.state =
|
|
344
|
+
this.state = 140;
|
|
340
345
|
this.at_block();
|
|
341
346
|
}
|
|
342
347
|
break;
|
|
343
348
|
case 16:
|
|
344
349
|
this.enterOuterAlt(localContext, 16);
|
|
345
350
|
{
|
|
346
|
-
this.state =
|
|
351
|
+
this.state = 141;
|
|
347
352
|
this.path_blocks();
|
|
348
353
|
}
|
|
349
354
|
break;
|
|
350
355
|
case 17:
|
|
351
356
|
this.enterOuterAlt(localContext, 17);
|
|
352
357
|
{
|
|
353
|
-
this.state =
|
|
358
|
+
this.state = 142;
|
|
354
359
|
this.point_expr();
|
|
355
360
|
}
|
|
356
361
|
break;
|
|
357
362
|
case 18:
|
|
358
363
|
this.enterOuterAlt(localContext, 18);
|
|
359
364
|
{
|
|
360
|
-
this.state =
|
|
365
|
+
this.state = 143;
|
|
361
366
|
this.if_expr();
|
|
362
367
|
}
|
|
363
368
|
break;
|
|
@@ -377,14 +382,87 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
377
382
|
}
|
|
378
383
|
return localContext;
|
|
379
384
|
}
|
|
385
|
+
expressions_block() {
|
|
386
|
+
let localContext = new Expressions_blockContext(this.context, this.state);
|
|
387
|
+
this.enterRule(localContext, 4, CircuitScriptParser.RULE_expressions_block);
|
|
388
|
+
let _la;
|
|
389
|
+
try {
|
|
390
|
+
this.enterOuterAlt(localContext, 1);
|
|
391
|
+
{
|
|
392
|
+
this.state = 146;
|
|
393
|
+
this.match(CircuitScriptParser.NEWLINE);
|
|
394
|
+
this.state = 147;
|
|
395
|
+
this.match(CircuitScriptParser.INDENT);
|
|
396
|
+
this.state = 150;
|
|
397
|
+
this.errorHandler.sync(this);
|
|
398
|
+
_la = this.tokenStream.LA(1);
|
|
399
|
+
do {
|
|
400
|
+
{
|
|
401
|
+
this.state = 150;
|
|
402
|
+
this.errorHandler.sync(this);
|
|
403
|
+
switch (this.tokenStream.LA(1)) {
|
|
404
|
+
case CircuitScriptParser.NEWLINE:
|
|
405
|
+
{
|
|
406
|
+
this.state = 148;
|
|
407
|
+
this.match(CircuitScriptParser.NEWLINE);
|
|
408
|
+
}
|
|
409
|
+
break;
|
|
410
|
+
case CircuitScriptParser.T__3:
|
|
411
|
+
case CircuitScriptParser.Break:
|
|
412
|
+
case CircuitScriptParser.Branch:
|
|
413
|
+
case CircuitScriptParser.Wire:
|
|
414
|
+
case CircuitScriptParser.Add:
|
|
415
|
+
case CircuitScriptParser.At:
|
|
416
|
+
case CircuitScriptParser.To:
|
|
417
|
+
case CircuitScriptParser.Point:
|
|
418
|
+
case CircuitScriptParser.Join:
|
|
419
|
+
case CircuitScriptParser.Parallel:
|
|
420
|
+
case CircuitScriptParser.Define:
|
|
421
|
+
case CircuitScriptParser.Import:
|
|
422
|
+
case CircuitScriptParser.If:
|
|
423
|
+
case CircuitScriptParser.Frame:
|
|
424
|
+
case CircuitScriptParser.Addition:
|
|
425
|
+
case CircuitScriptParser.Divide:
|
|
426
|
+
case CircuitScriptParser.ID:
|
|
427
|
+
{
|
|
428
|
+
this.state = 149;
|
|
429
|
+
this.expression();
|
|
430
|
+
}
|
|
431
|
+
break;
|
|
432
|
+
default:
|
|
433
|
+
throw new antlr.NoViableAltException(this);
|
|
434
|
+
}
|
|
435
|
+
}
|
|
436
|
+
this.state = 152;
|
|
437
|
+
this.errorHandler.sync(this);
|
|
438
|
+
_la = this.tokenStream.LA(1);
|
|
439
|
+
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 331301648) !== 0) || ((((_la - 37)) & ~0x1F) === 0 && ((1 << (_la - 37)) & 65797) !== 0));
|
|
440
|
+
this.state = 154;
|
|
441
|
+
this.match(CircuitScriptParser.DEDENT);
|
|
442
|
+
}
|
|
443
|
+
}
|
|
444
|
+
catch (re) {
|
|
445
|
+
if (re instanceof antlr.RecognitionException) {
|
|
446
|
+
this.errorHandler.reportError(this, re);
|
|
447
|
+
this.errorHandler.recover(this, re);
|
|
448
|
+
}
|
|
449
|
+
else {
|
|
450
|
+
throw re;
|
|
451
|
+
}
|
|
452
|
+
}
|
|
453
|
+
finally {
|
|
454
|
+
this.exitRule();
|
|
455
|
+
}
|
|
456
|
+
return localContext;
|
|
457
|
+
}
|
|
380
458
|
path_blocks() {
|
|
381
459
|
let localContext = new Path_blocksContext(this.context, this.state);
|
|
382
|
-
this.enterRule(localContext,
|
|
460
|
+
this.enterRule(localContext, 6, CircuitScriptParser.RULE_path_blocks);
|
|
383
461
|
try {
|
|
384
462
|
let alternative;
|
|
385
463
|
this.enterOuterAlt(localContext, 1);
|
|
386
464
|
{
|
|
387
|
-
this.state =
|
|
465
|
+
this.state = 157;
|
|
388
466
|
this.errorHandler.sync(this);
|
|
389
467
|
alternative = 1;
|
|
390
468
|
do {
|
|
@@ -392,7 +470,7 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
392
470
|
case 1:
|
|
393
471
|
{
|
|
394
472
|
{
|
|
395
|
-
this.state =
|
|
473
|
+
this.state = 156;
|
|
396
474
|
this.path_block_inner();
|
|
397
475
|
}
|
|
398
476
|
}
|
|
@@ -400,9 +478,9 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
400
478
|
default:
|
|
401
479
|
throw new antlr.NoViableAltException(this);
|
|
402
480
|
}
|
|
403
|
-
this.state =
|
|
481
|
+
this.state = 159;
|
|
404
482
|
this.errorHandler.sync(this);
|
|
405
|
-
alternative = this.interpreter.adaptivePredict(this.tokenStream,
|
|
483
|
+
alternative = this.interpreter.adaptivePredict(this.tokenStream, 5, this.context);
|
|
406
484
|
} while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER);
|
|
407
485
|
}
|
|
408
486
|
}
|
|
@@ -422,72 +500,24 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
422
500
|
}
|
|
423
501
|
path_block_inner() {
|
|
424
502
|
let localContext = new Path_block_innerContext(this.context, this.state);
|
|
425
|
-
this.enterRule(localContext,
|
|
503
|
+
this.enterRule(localContext, 8, CircuitScriptParser.RULE_path_block_inner);
|
|
426
504
|
let _la;
|
|
427
505
|
try {
|
|
428
506
|
this.enterOuterAlt(localContext, 1);
|
|
429
507
|
{
|
|
430
|
-
this.state =
|
|
508
|
+
this.state = 161;
|
|
431
509
|
_la = this.tokenStream.LA(1);
|
|
432
|
-
if (!((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
510
|
+
if (!((((_la) & ~0x1F) === 0 && ((1 << _la) & 3670528) !== 0))) {
|
|
433
511
|
this.errorHandler.recoverInline(this);
|
|
434
512
|
}
|
|
435
513
|
else {
|
|
436
514
|
this.errorHandler.reportMatch(this);
|
|
437
515
|
this.consume();
|
|
438
516
|
}
|
|
439
|
-
this.state =
|
|
517
|
+
this.state = 162;
|
|
440
518
|
this.match(CircuitScriptParser.T__0);
|
|
441
|
-
this.state =
|
|
442
|
-
this.
|
|
443
|
-
this.state = 148;
|
|
444
|
-
this.match(CircuitScriptParser.INDENT);
|
|
445
|
-
this.state = 151;
|
|
446
|
-
this.errorHandler.sync(this);
|
|
447
|
-
_la = this.tokenStream.LA(1);
|
|
448
|
-
do {
|
|
449
|
-
{
|
|
450
|
-
this.state = 151;
|
|
451
|
-
this.errorHandler.sync(this);
|
|
452
|
-
switch (this.tokenStream.LA(1)) {
|
|
453
|
-
case CircuitScriptParser.NEWLINE:
|
|
454
|
-
{
|
|
455
|
-
this.state = 149;
|
|
456
|
-
this.match(CircuitScriptParser.NEWLINE);
|
|
457
|
-
}
|
|
458
|
-
break;
|
|
459
|
-
case CircuitScriptParser.T__3:
|
|
460
|
-
case CircuitScriptParser.Break:
|
|
461
|
-
case CircuitScriptParser.Branch:
|
|
462
|
-
case CircuitScriptParser.Wire:
|
|
463
|
-
case CircuitScriptParser.Add:
|
|
464
|
-
case CircuitScriptParser.At:
|
|
465
|
-
case CircuitScriptParser.To:
|
|
466
|
-
case CircuitScriptParser.Point:
|
|
467
|
-
case CircuitScriptParser.Join:
|
|
468
|
-
case CircuitScriptParser.Parallel:
|
|
469
|
-
case CircuitScriptParser.Define:
|
|
470
|
-
case CircuitScriptParser.Import:
|
|
471
|
-
case CircuitScriptParser.If:
|
|
472
|
-
case CircuitScriptParser.Frame:
|
|
473
|
-
case CircuitScriptParser.Addition:
|
|
474
|
-
case CircuitScriptParser.Divide:
|
|
475
|
-
case CircuitScriptParser.ID:
|
|
476
|
-
{
|
|
477
|
-
this.state = 150;
|
|
478
|
-
this.expression();
|
|
479
|
-
}
|
|
480
|
-
break;
|
|
481
|
-
default:
|
|
482
|
-
throw new antlr.NoViableAltException(this);
|
|
483
|
-
}
|
|
484
|
-
}
|
|
485
|
-
this.state = 153;
|
|
486
|
-
this.errorHandler.sync(this);
|
|
487
|
-
_la = this.tokenStream.LA(1);
|
|
488
|
-
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 165651216) !== 0) || ((((_la - 36)) & ~0x1F) === 0 && ((1 << (_la - 36)) & 65797) !== 0));
|
|
489
|
-
this.state = 155;
|
|
490
|
-
this.match(CircuitScriptParser.DEDENT);
|
|
519
|
+
this.state = 163;
|
|
520
|
+
this.expressions_block();
|
|
491
521
|
}
|
|
492
522
|
}
|
|
493
523
|
catch (re) {
|
|
@@ -506,37 +536,37 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
506
536
|
}
|
|
507
537
|
property_set_expr2() {
|
|
508
538
|
let localContext = new Property_set_expr2Context(this.context, this.state);
|
|
509
|
-
this.enterRule(localContext,
|
|
539
|
+
this.enterRule(localContext, 10, CircuitScriptParser.RULE_property_set_expr2);
|
|
510
540
|
let _la;
|
|
511
541
|
try {
|
|
512
542
|
this.enterOuterAlt(localContext, 1);
|
|
513
543
|
{
|
|
514
|
-
this.state =
|
|
544
|
+
this.state = 165;
|
|
515
545
|
this.atom_expr();
|
|
516
|
-
this.state =
|
|
546
|
+
this.state = 166;
|
|
517
547
|
this.match(CircuitScriptParser.T__0);
|
|
518
|
-
this.state =
|
|
548
|
+
this.state = 167;
|
|
519
549
|
this.match(CircuitScriptParser.NEWLINE);
|
|
520
|
-
this.state =
|
|
550
|
+
this.state = 168;
|
|
521
551
|
this.match(CircuitScriptParser.INDENT);
|
|
522
|
-
this.state =
|
|
552
|
+
this.state = 171;
|
|
523
553
|
this.errorHandler.sync(this);
|
|
524
554
|
_la = this.tokenStream.LA(1);
|
|
525
555
|
do {
|
|
526
556
|
{
|
|
527
|
-
this.state =
|
|
557
|
+
this.state = 171;
|
|
528
558
|
this.errorHandler.sync(this);
|
|
529
559
|
switch (this.tokenStream.LA(1)) {
|
|
530
560
|
case CircuitScriptParser.NEWLINE:
|
|
531
561
|
{
|
|
532
|
-
this.state =
|
|
562
|
+
this.state = 169;
|
|
533
563
|
this.match(CircuitScriptParser.NEWLINE);
|
|
534
564
|
}
|
|
535
565
|
break;
|
|
536
566
|
case CircuitScriptParser.ID:
|
|
537
567
|
case CircuitScriptParser.INTEGER_VALUE:
|
|
538
568
|
{
|
|
539
|
-
this.state =
|
|
569
|
+
this.state = 170;
|
|
540
570
|
this.assignment_expr2();
|
|
541
571
|
}
|
|
542
572
|
break;
|
|
@@ -544,11 +574,11 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
544
574
|
throw new antlr.NoViableAltException(this);
|
|
545
575
|
}
|
|
546
576
|
}
|
|
547
|
-
this.state =
|
|
577
|
+
this.state = 173;
|
|
548
578
|
this.errorHandler.sync(this);
|
|
549
579
|
_la = this.tokenStream.LA(1);
|
|
550
|
-
} while (((((_la -
|
|
551
|
-
this.state =
|
|
580
|
+
} while (((((_la - 45)) & ~0x1F) === 0 && ((1 << (_la - 45)) & 259) !== 0));
|
|
581
|
+
this.state = 175;
|
|
552
582
|
this.match(CircuitScriptParser.DEDENT);
|
|
553
583
|
}
|
|
554
584
|
}
|
|
@@ -568,23 +598,23 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
568
598
|
}
|
|
569
599
|
assignment_expr2() {
|
|
570
600
|
let localContext = new Assignment_expr2Context(this.context, this.state);
|
|
571
|
-
this.enterRule(localContext,
|
|
601
|
+
this.enterRule(localContext, 12, CircuitScriptParser.RULE_assignment_expr2);
|
|
572
602
|
let _la;
|
|
573
603
|
try {
|
|
574
604
|
this.enterOuterAlt(localContext, 1);
|
|
575
605
|
{
|
|
576
|
-
this.state =
|
|
606
|
+
this.state = 177;
|
|
577
607
|
_la = this.tokenStream.LA(1);
|
|
578
|
-
if (!(_la ===
|
|
608
|
+
if (!(_la === 45 || _la === 46)) {
|
|
579
609
|
this.errorHandler.recoverInline(this);
|
|
580
610
|
}
|
|
581
611
|
else {
|
|
582
612
|
this.errorHandler.reportMatch(this);
|
|
583
613
|
this.consume();
|
|
584
614
|
}
|
|
585
|
-
this.state =
|
|
615
|
+
this.state = 178;
|
|
586
616
|
this.match(CircuitScriptParser.T__0);
|
|
587
|
-
this.state =
|
|
617
|
+
this.state = 179;
|
|
588
618
|
this.value_expr();
|
|
589
619
|
}
|
|
590
620
|
}
|
|
@@ -604,16 +634,16 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
604
634
|
}
|
|
605
635
|
pin_select_expr() {
|
|
606
636
|
let localContext = new Pin_select_exprContext(this.context, this.state);
|
|
607
|
-
this.enterRule(localContext,
|
|
637
|
+
this.enterRule(localContext, 14, CircuitScriptParser.RULE_pin_select_expr);
|
|
608
638
|
let _la;
|
|
609
639
|
try {
|
|
610
640
|
this.enterOuterAlt(localContext, 1);
|
|
611
641
|
{
|
|
612
|
-
this.state =
|
|
642
|
+
this.state = 181;
|
|
613
643
|
this.match(CircuitScriptParser.Pin);
|
|
614
|
-
this.state =
|
|
644
|
+
this.state = 182;
|
|
615
645
|
_la = this.tokenStream.LA(1);
|
|
616
|
-
if (!(_la ===
|
|
646
|
+
if (!(_la === 46 || _la === 49)) {
|
|
617
647
|
this.errorHandler.recoverInline(this);
|
|
618
648
|
}
|
|
619
649
|
else {
|
|
@@ -638,15 +668,15 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
638
668
|
}
|
|
639
669
|
component_modifier_expr() {
|
|
640
670
|
let localContext = new Component_modifier_exprContext(this.context, this.state);
|
|
641
|
-
this.enterRule(localContext,
|
|
671
|
+
this.enterRule(localContext, 16, CircuitScriptParser.RULE_component_modifier_expr);
|
|
642
672
|
try {
|
|
643
673
|
this.enterOuterAlt(localContext, 1);
|
|
644
674
|
{
|
|
645
|
-
this.state =
|
|
675
|
+
this.state = 184;
|
|
646
676
|
this.match(CircuitScriptParser.ID);
|
|
647
|
-
this.state =
|
|
677
|
+
this.state = 185;
|
|
648
678
|
this.match(CircuitScriptParser.T__0);
|
|
649
|
-
this.state =
|
|
679
|
+
this.state = 188;
|
|
650
680
|
this.errorHandler.sync(this);
|
|
651
681
|
switch (this.tokenStream.LA(1)) {
|
|
652
682
|
case CircuitScriptParser.T__5:
|
|
@@ -658,13 +688,13 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
658
688
|
case CircuitScriptParser.STRING_VALUE:
|
|
659
689
|
case CircuitScriptParser.PERCENTAGE_VALUE:
|
|
660
690
|
{
|
|
661
|
-
this.state =
|
|
691
|
+
this.state = 186;
|
|
662
692
|
this.value_expr();
|
|
663
693
|
}
|
|
664
694
|
break;
|
|
665
695
|
case CircuitScriptParser.ID:
|
|
666
696
|
{
|
|
667
|
-
this.state =
|
|
697
|
+
this.state = 187;
|
|
668
698
|
this.match(CircuitScriptParser.ID);
|
|
669
699
|
}
|
|
670
700
|
break;
|
|
@@ -689,50 +719,50 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
689
719
|
}
|
|
690
720
|
data_expr_with_assignment() {
|
|
691
721
|
let localContext = new Data_expr_with_assignmentContext(this.context, this.state);
|
|
692
|
-
this.enterRule(localContext,
|
|
722
|
+
this.enterRule(localContext, 18, CircuitScriptParser.RULE_data_expr_with_assignment);
|
|
693
723
|
let _la;
|
|
694
724
|
try {
|
|
695
725
|
let alternative;
|
|
696
726
|
this.enterOuterAlt(localContext, 1);
|
|
697
727
|
{
|
|
698
|
-
this.state =
|
|
728
|
+
this.state = 192;
|
|
699
729
|
this.errorHandler.sync(this);
|
|
700
730
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 9, this.context)) {
|
|
701
731
|
case 1:
|
|
702
732
|
{
|
|
703
|
-
this.state =
|
|
733
|
+
this.state = 190;
|
|
704
734
|
this.data_expr(0);
|
|
705
735
|
}
|
|
706
736
|
break;
|
|
707
737
|
case 2:
|
|
708
738
|
{
|
|
709
|
-
this.state =
|
|
739
|
+
this.state = 191;
|
|
710
740
|
this.assignment_expr();
|
|
711
741
|
}
|
|
712
742
|
break;
|
|
713
743
|
}
|
|
714
|
-
this.state =
|
|
744
|
+
this.state = 197;
|
|
715
745
|
this.errorHandler.sync(this);
|
|
716
746
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 10, this.context);
|
|
717
747
|
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
|
|
718
748
|
if (alternative === 1) {
|
|
719
749
|
{
|
|
720
750
|
{
|
|
721
|
-
this.state =
|
|
751
|
+
this.state = 194;
|
|
722
752
|
this.component_modifier_expr();
|
|
723
753
|
}
|
|
724
754
|
}
|
|
725
755
|
}
|
|
726
|
-
this.state =
|
|
756
|
+
this.state = 199;
|
|
727
757
|
this.errorHandler.sync(this);
|
|
728
758
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 10, this.context);
|
|
729
759
|
}
|
|
730
|
-
this.state =
|
|
760
|
+
this.state = 201;
|
|
731
761
|
this.errorHandler.sync(this);
|
|
732
762
|
_la = this.tokenStream.LA(1);
|
|
733
|
-
if (_la ===
|
|
763
|
+
if (_la === 15) {
|
|
734
764
|
{
|
|
735
|
-
this.state =
|
|
765
|
+
this.state = 200;
|
|
736
766
|
this.pin_select_expr();
|
|
737
767
|
}
|
|
738
768
|
}
|
|
@@ -754,13 +784,13 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
754
784
|
}
|
|
755
785
|
add_component_expr() {
|
|
756
786
|
let localContext = new Add_component_exprContext(this.context, this.state);
|
|
757
|
-
this.enterRule(localContext,
|
|
787
|
+
this.enterRule(localContext, 20, CircuitScriptParser.RULE_add_component_expr);
|
|
758
788
|
try {
|
|
759
789
|
this.enterOuterAlt(localContext, 1);
|
|
760
790
|
{
|
|
761
|
-
this.state =
|
|
791
|
+
this.state = 203;
|
|
762
792
|
this.match(CircuitScriptParser.Add);
|
|
763
|
-
this.state =
|
|
793
|
+
this.state = 204;
|
|
764
794
|
this.data_expr_with_assignment();
|
|
765
795
|
}
|
|
766
796
|
}
|
|
@@ -780,9 +810,9 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
780
810
|
}
|
|
781
811
|
component_select_expr() {
|
|
782
812
|
let localContext = new Component_select_exprContext(this.context, this.state);
|
|
783
|
-
this.enterRule(localContext,
|
|
813
|
+
this.enterRule(localContext, 22, CircuitScriptParser.RULE_component_select_expr);
|
|
784
814
|
try {
|
|
785
|
-
this.state =
|
|
815
|
+
this.state = 208;
|
|
786
816
|
this.errorHandler.sync(this);
|
|
787
817
|
switch (this.tokenStream.LA(1)) {
|
|
788
818
|
case CircuitScriptParser.T__5:
|
|
@@ -801,14 +831,14 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
801
831
|
case CircuitScriptParser.PERCENTAGE_VALUE:
|
|
802
832
|
this.enterOuterAlt(localContext, 1);
|
|
803
833
|
{
|
|
804
|
-
this.state =
|
|
834
|
+
this.state = 206;
|
|
805
835
|
this.data_expr_with_assignment();
|
|
806
836
|
}
|
|
807
837
|
break;
|
|
808
838
|
case CircuitScriptParser.Pin:
|
|
809
839
|
this.enterOuterAlt(localContext, 2);
|
|
810
840
|
{
|
|
811
|
-
this.state =
|
|
841
|
+
this.state = 207;
|
|
812
842
|
this.pin_select_expr();
|
|
813
843
|
}
|
|
814
844
|
break;
|
|
@@ -832,14 +862,14 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
832
862
|
}
|
|
833
863
|
pin_select_expr2() {
|
|
834
864
|
let localContext = new Pin_select_expr2Context(this.context, this.state);
|
|
835
|
-
this.enterRule(localContext,
|
|
865
|
+
this.enterRule(localContext, 24, CircuitScriptParser.RULE_pin_select_expr2);
|
|
836
866
|
let _la;
|
|
837
867
|
try {
|
|
838
868
|
this.enterOuterAlt(localContext, 1);
|
|
839
869
|
{
|
|
840
|
-
this.state =
|
|
870
|
+
this.state = 210;
|
|
841
871
|
_la = this.tokenStream.LA(1);
|
|
842
|
-
if (!(_la ===
|
|
872
|
+
if (!(_la === 46 || _la === 49)) {
|
|
843
873
|
this.errorHandler.recoverInline(this);
|
|
844
874
|
}
|
|
845
875
|
else {
|
|
@@ -864,13 +894,13 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
864
894
|
}
|
|
865
895
|
at_component_expr() {
|
|
866
896
|
let localContext = new At_component_exprContext(this.context, this.state);
|
|
867
|
-
this.enterRule(localContext,
|
|
897
|
+
this.enterRule(localContext, 26, CircuitScriptParser.RULE_at_component_expr);
|
|
868
898
|
try {
|
|
869
899
|
this.enterOuterAlt(localContext, 1);
|
|
870
900
|
{
|
|
871
|
-
this.state =
|
|
901
|
+
this.state = 212;
|
|
872
902
|
this.match(CircuitScriptParser.At);
|
|
873
|
-
this.state =
|
|
903
|
+
this.state = 215;
|
|
874
904
|
this.errorHandler.sync(this);
|
|
875
905
|
switch (this.tokenStream.LA(1)) {
|
|
876
906
|
case CircuitScriptParser.T__5:
|
|
@@ -889,13 +919,13 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
889
919
|
case CircuitScriptParser.STRING_VALUE:
|
|
890
920
|
case CircuitScriptParser.PERCENTAGE_VALUE:
|
|
891
921
|
{
|
|
892
|
-
this.state =
|
|
922
|
+
this.state = 213;
|
|
893
923
|
this.component_select_expr();
|
|
894
924
|
}
|
|
895
925
|
break;
|
|
896
926
|
case CircuitScriptParser.Point:
|
|
897
927
|
{
|
|
898
|
-
this.state =
|
|
928
|
+
this.state = 214;
|
|
899
929
|
this.match(CircuitScriptParser.Point);
|
|
900
930
|
}
|
|
901
931
|
break;
|
|
@@ -920,14 +950,14 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
920
950
|
}
|
|
921
951
|
to_component_expr() {
|
|
922
952
|
let localContext = new To_component_exprContext(this.context, this.state);
|
|
923
|
-
this.enterRule(localContext,
|
|
953
|
+
this.enterRule(localContext, 28, CircuitScriptParser.RULE_to_component_expr);
|
|
924
954
|
let _la;
|
|
925
955
|
try {
|
|
926
956
|
this.enterOuterAlt(localContext, 1);
|
|
927
957
|
{
|
|
928
|
-
this.state =
|
|
958
|
+
this.state = 217;
|
|
929
959
|
this.match(CircuitScriptParser.To);
|
|
930
|
-
this.state =
|
|
960
|
+
this.state = 227;
|
|
931
961
|
this.errorHandler.sync(this);
|
|
932
962
|
switch (this.tokenStream.LA(1)) {
|
|
933
963
|
case CircuitScriptParser.T__5:
|
|
@@ -947,21 +977,21 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
947
977
|
case CircuitScriptParser.PERCENTAGE_VALUE:
|
|
948
978
|
{
|
|
949
979
|
{
|
|
950
|
-
this.state =
|
|
980
|
+
this.state = 218;
|
|
951
981
|
this.component_select_expr();
|
|
952
|
-
this.state =
|
|
982
|
+
this.state = 223;
|
|
953
983
|
this.errorHandler.sync(this);
|
|
954
984
|
_la = this.tokenStream.LA(1);
|
|
955
985
|
while (_la === 2) {
|
|
956
986
|
{
|
|
957
987
|
{
|
|
958
|
-
this.state =
|
|
988
|
+
this.state = 219;
|
|
959
989
|
this.match(CircuitScriptParser.T__1);
|
|
960
|
-
this.state =
|
|
990
|
+
this.state = 220;
|
|
961
991
|
this.component_select_expr();
|
|
962
992
|
}
|
|
963
993
|
}
|
|
964
|
-
this.state =
|
|
994
|
+
this.state = 225;
|
|
965
995
|
this.errorHandler.sync(this);
|
|
966
996
|
_la = this.tokenStream.LA(1);
|
|
967
997
|
}
|
|
@@ -970,7 +1000,7 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
970
1000
|
break;
|
|
971
1001
|
case CircuitScriptParser.Point:
|
|
972
1002
|
{
|
|
973
|
-
this.state =
|
|
1003
|
+
this.state = 226;
|
|
974
1004
|
this.match(CircuitScriptParser.Point);
|
|
975
1005
|
}
|
|
976
1006
|
break;
|
|
@@ -995,59 +1025,59 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
995
1025
|
}
|
|
996
1026
|
at_to_multiple_expr() {
|
|
997
1027
|
let localContext = new At_to_multiple_exprContext(this.context, this.state);
|
|
998
|
-
this.enterRule(localContext,
|
|
1028
|
+
this.enterRule(localContext, 30, CircuitScriptParser.RULE_at_to_multiple_expr);
|
|
999
1029
|
let _la;
|
|
1000
1030
|
try {
|
|
1001
1031
|
this.enterOuterAlt(localContext, 1);
|
|
1002
1032
|
{
|
|
1003
|
-
this.state =
|
|
1033
|
+
this.state = 229;
|
|
1004
1034
|
this.match(CircuitScriptParser.At);
|
|
1005
|
-
this.state =
|
|
1035
|
+
this.state = 230;
|
|
1006
1036
|
this.component_select_expr();
|
|
1007
|
-
this.state =
|
|
1037
|
+
this.state = 231;
|
|
1008
1038
|
this.match(CircuitScriptParser.To);
|
|
1009
|
-
this.state =
|
|
1039
|
+
this.state = 232;
|
|
1010
1040
|
this.component_select_expr();
|
|
1011
|
-
this.state =
|
|
1041
|
+
this.state = 237;
|
|
1012
1042
|
this.errorHandler.sync(this);
|
|
1013
1043
|
_la = this.tokenStream.LA(1);
|
|
1014
1044
|
while (_la === 2) {
|
|
1015
1045
|
{
|
|
1016
1046
|
{
|
|
1017
|
-
this.state =
|
|
1047
|
+
this.state = 233;
|
|
1018
1048
|
this.match(CircuitScriptParser.T__1);
|
|
1019
|
-
this.state =
|
|
1049
|
+
this.state = 234;
|
|
1020
1050
|
this.component_select_expr();
|
|
1021
1051
|
}
|
|
1022
1052
|
}
|
|
1023
|
-
this.state =
|
|
1053
|
+
this.state = 239;
|
|
1024
1054
|
this.errorHandler.sync(this);
|
|
1025
1055
|
_la = this.tokenStream.LA(1);
|
|
1026
1056
|
}
|
|
1027
|
-
this.state =
|
|
1057
|
+
this.state = 240;
|
|
1028
1058
|
this.match(CircuitScriptParser.T__0);
|
|
1029
|
-
this.state =
|
|
1059
|
+
this.state = 241;
|
|
1030
1060
|
this.match(CircuitScriptParser.NEWLINE);
|
|
1031
|
-
this.state =
|
|
1061
|
+
this.state = 242;
|
|
1032
1062
|
this.match(CircuitScriptParser.INDENT);
|
|
1033
|
-
this.state =
|
|
1063
|
+
this.state = 245;
|
|
1034
1064
|
this.errorHandler.sync(this);
|
|
1035
1065
|
_la = this.tokenStream.LA(1);
|
|
1036
1066
|
do {
|
|
1037
1067
|
{
|
|
1038
|
-
this.state =
|
|
1068
|
+
this.state = 245;
|
|
1039
1069
|
this.errorHandler.sync(this);
|
|
1040
1070
|
switch (this.tokenStream.LA(1)) {
|
|
1041
1071
|
case CircuitScriptParser.NEWLINE:
|
|
1042
1072
|
{
|
|
1043
|
-
this.state =
|
|
1073
|
+
this.state = 243;
|
|
1044
1074
|
this.match(CircuitScriptParser.NEWLINE);
|
|
1045
1075
|
}
|
|
1046
1076
|
break;
|
|
1047
1077
|
case CircuitScriptParser.INTEGER_VALUE:
|
|
1048
1078
|
case CircuitScriptParser.STRING_VALUE:
|
|
1049
1079
|
{
|
|
1050
|
-
this.state =
|
|
1080
|
+
this.state = 244;
|
|
1051
1081
|
this.at_to_multiple_line_expr();
|
|
1052
1082
|
}
|
|
1053
1083
|
break;
|
|
@@ -1055,11 +1085,11 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1055
1085
|
throw new antlr.NoViableAltException(this);
|
|
1056
1086
|
}
|
|
1057
1087
|
}
|
|
1058
|
-
this.state =
|
|
1088
|
+
this.state = 247;
|
|
1059
1089
|
this.errorHandler.sync(this);
|
|
1060
1090
|
_la = this.tokenStream.LA(1);
|
|
1061
|
-
} while (((((_la -
|
|
1062
|
-
this.state =
|
|
1091
|
+
} while (((((_la - 46)) & ~0x1F) === 0 && ((1 << (_la - 46)) & 137) !== 0));
|
|
1092
|
+
this.state = 249;
|
|
1063
1093
|
this.match(CircuitScriptParser.DEDENT);
|
|
1064
1094
|
}
|
|
1065
1095
|
}
|
|
@@ -1079,30 +1109,30 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1079
1109
|
}
|
|
1080
1110
|
at_to_multiple_line_expr() {
|
|
1081
1111
|
let localContext = new At_to_multiple_line_exprContext(this.context, this.state);
|
|
1082
|
-
this.enterRule(localContext,
|
|
1112
|
+
this.enterRule(localContext, 32, CircuitScriptParser.RULE_at_to_multiple_line_expr);
|
|
1083
1113
|
let _la;
|
|
1084
1114
|
try {
|
|
1085
1115
|
this.enterOuterAlt(localContext, 1);
|
|
1086
1116
|
{
|
|
1087
|
-
this.state =
|
|
1117
|
+
this.state = 251;
|
|
1088
1118
|
this.pin_select_expr2();
|
|
1089
|
-
this.state =
|
|
1119
|
+
this.state = 252;
|
|
1090
1120
|
this.match(CircuitScriptParser.T__0);
|
|
1091
|
-
this.state =
|
|
1121
|
+
this.state = 253;
|
|
1092
1122
|
this.at_to_multiple_line_expr_to_pin();
|
|
1093
|
-
this.state =
|
|
1123
|
+
this.state = 258;
|
|
1094
1124
|
this.errorHandler.sync(this);
|
|
1095
1125
|
_la = this.tokenStream.LA(1);
|
|
1096
1126
|
while (_la === 2) {
|
|
1097
1127
|
{
|
|
1098
1128
|
{
|
|
1099
|
-
this.state =
|
|
1129
|
+
this.state = 254;
|
|
1100
1130
|
this.match(CircuitScriptParser.T__1);
|
|
1101
|
-
this.state =
|
|
1131
|
+
this.state = 255;
|
|
1102
1132
|
this.at_to_multiple_line_expr_to_pin();
|
|
1103
1133
|
}
|
|
1104
1134
|
}
|
|
1105
|
-
this.state =
|
|
1135
|
+
this.state = 260;
|
|
1106
1136
|
this.errorHandler.sync(this);
|
|
1107
1137
|
_la = this.tokenStream.LA(1);
|
|
1108
1138
|
}
|
|
@@ -1124,14 +1154,14 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1124
1154
|
}
|
|
1125
1155
|
at_to_multiple_line_expr_to_pin() {
|
|
1126
1156
|
let localContext = new At_to_multiple_line_expr_to_pinContext(this.context, this.state);
|
|
1127
|
-
this.enterRule(localContext,
|
|
1157
|
+
this.enterRule(localContext, 34, CircuitScriptParser.RULE_at_to_multiple_line_expr_to_pin);
|
|
1128
1158
|
let _la;
|
|
1129
1159
|
try {
|
|
1130
1160
|
this.enterOuterAlt(localContext, 1);
|
|
1131
1161
|
{
|
|
1132
|
-
this.state =
|
|
1162
|
+
this.state = 261;
|
|
1133
1163
|
_la = this.tokenStream.LA(1);
|
|
1134
|
-
if (!(_la ===
|
|
1164
|
+
if (!(_la === 43 || _la === 46)) {
|
|
1135
1165
|
this.errorHandler.recoverInline(this);
|
|
1136
1166
|
}
|
|
1137
1167
|
else {
|
|
@@ -1156,30 +1186,30 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1156
1186
|
}
|
|
1157
1187
|
at_block() {
|
|
1158
1188
|
let localContext = new At_blockContext(this.context, this.state);
|
|
1159
|
-
this.enterRule(localContext,
|
|
1189
|
+
this.enterRule(localContext, 36, CircuitScriptParser.RULE_at_block);
|
|
1160
1190
|
let _la;
|
|
1161
1191
|
try {
|
|
1162
1192
|
this.enterOuterAlt(localContext, 1);
|
|
1163
1193
|
{
|
|
1164
|
-
this.state =
|
|
1194
|
+
this.state = 263;
|
|
1165
1195
|
this.at_component_expr();
|
|
1166
|
-
this.state =
|
|
1196
|
+
this.state = 264;
|
|
1167
1197
|
this.match(CircuitScriptParser.T__0);
|
|
1168
|
-
this.state =
|
|
1198
|
+
this.state = 265;
|
|
1169
1199
|
this.match(CircuitScriptParser.NEWLINE);
|
|
1170
|
-
this.state =
|
|
1200
|
+
this.state = 266;
|
|
1171
1201
|
this.match(CircuitScriptParser.INDENT);
|
|
1172
|
-
this.state =
|
|
1202
|
+
this.state = 269;
|
|
1173
1203
|
this.errorHandler.sync(this);
|
|
1174
1204
|
_la = this.tokenStream.LA(1);
|
|
1175
1205
|
do {
|
|
1176
1206
|
{
|
|
1177
|
-
this.state =
|
|
1207
|
+
this.state = 269;
|
|
1178
1208
|
this.errorHandler.sync(this);
|
|
1179
1209
|
switch (this.tokenStream.LA(1)) {
|
|
1180
1210
|
case CircuitScriptParser.NEWLINE:
|
|
1181
1211
|
{
|
|
1182
|
-
this.state =
|
|
1212
|
+
this.state = 267;
|
|
1183
1213
|
this.match(CircuitScriptParser.NEWLINE);
|
|
1184
1214
|
}
|
|
1185
1215
|
break;
|
|
@@ -1203,7 +1233,7 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1203
1233
|
case CircuitScriptParser.INTEGER_VALUE:
|
|
1204
1234
|
case CircuitScriptParser.STRING_VALUE:
|
|
1205
1235
|
{
|
|
1206
|
-
this.state =
|
|
1236
|
+
this.state = 268;
|
|
1207
1237
|
this.at_block_expressions();
|
|
1208
1238
|
}
|
|
1209
1239
|
break;
|
|
@@ -1211,11 +1241,11 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1211
1241
|
throw new antlr.NoViableAltException(this);
|
|
1212
1242
|
}
|
|
1213
1243
|
}
|
|
1214
|
-
this.state =
|
|
1244
|
+
this.state = 271;
|
|
1215
1245
|
this.errorHandler.sync(this);
|
|
1216
1246
|
_la = this.tokenStream.LA(1);
|
|
1217
|
-
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
1218
|
-
this.state =
|
|
1247
|
+
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 331301648) !== 0) || ((((_la - 37)) & ~0x1F) === 0 && ((1 << (_la - 37)) & 70405) !== 0));
|
|
1248
|
+
this.state = 273;
|
|
1219
1249
|
this.match(CircuitScriptParser.DEDENT);
|
|
1220
1250
|
}
|
|
1221
1251
|
}
|
|
@@ -1235,9 +1265,9 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1235
1265
|
}
|
|
1236
1266
|
at_block_expressions() {
|
|
1237
1267
|
let localContext = new At_block_expressionsContext(this.context, this.state);
|
|
1238
|
-
this.enterRule(localContext,
|
|
1268
|
+
this.enterRule(localContext, 38, CircuitScriptParser.RULE_at_block_expressions);
|
|
1239
1269
|
try {
|
|
1240
|
-
this.state =
|
|
1270
|
+
this.state = 277;
|
|
1241
1271
|
this.errorHandler.sync(this);
|
|
1242
1272
|
switch (this.tokenStream.LA(1)) {
|
|
1243
1273
|
case CircuitScriptParser.T__3:
|
|
@@ -1259,7 +1289,7 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1259
1289
|
case CircuitScriptParser.ID:
|
|
1260
1290
|
this.enterOuterAlt(localContext, 1);
|
|
1261
1291
|
{
|
|
1262
|
-
this.state =
|
|
1292
|
+
this.state = 275;
|
|
1263
1293
|
this.expression();
|
|
1264
1294
|
}
|
|
1265
1295
|
break;
|
|
@@ -1267,7 +1297,7 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1267
1297
|
case CircuitScriptParser.STRING_VALUE:
|
|
1268
1298
|
this.enterOuterAlt(localContext, 2);
|
|
1269
1299
|
{
|
|
1270
|
-
this.state =
|
|
1300
|
+
this.state = 276;
|
|
1271
1301
|
this.at_block_pin_expr();
|
|
1272
1302
|
}
|
|
1273
1303
|
break;
|
|
@@ -1291,15 +1321,15 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1291
1321
|
}
|
|
1292
1322
|
at_block_pin_expr() {
|
|
1293
1323
|
let localContext = new At_block_pin_exprContext(this.context, this.state);
|
|
1294
|
-
this.enterRule(localContext,
|
|
1324
|
+
this.enterRule(localContext, 40, CircuitScriptParser.RULE_at_block_pin_expr);
|
|
1295
1325
|
try {
|
|
1296
1326
|
this.enterOuterAlt(localContext, 1);
|
|
1297
1327
|
{
|
|
1298
|
-
this.state =
|
|
1328
|
+
this.state = 279;
|
|
1299
1329
|
this.pin_select_expr2();
|
|
1300
|
-
this.state =
|
|
1330
|
+
this.state = 280;
|
|
1301
1331
|
this.match(CircuitScriptParser.T__0);
|
|
1302
|
-
this.state =
|
|
1332
|
+
this.state = 283;
|
|
1303
1333
|
this.errorHandler.sync(this);
|
|
1304
1334
|
switch (this.tokenStream.LA(1)) {
|
|
1305
1335
|
case CircuitScriptParser.T__3:
|
|
@@ -1321,13 +1351,13 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1321
1351
|
case CircuitScriptParser.NOT_CONNECTED:
|
|
1322
1352
|
case CircuitScriptParser.ID:
|
|
1323
1353
|
{
|
|
1324
|
-
this.state =
|
|
1354
|
+
this.state = 281;
|
|
1325
1355
|
this.at_block_pin_expression_simple();
|
|
1326
1356
|
}
|
|
1327
1357
|
break;
|
|
1328
1358
|
case CircuitScriptParser.NEWLINE:
|
|
1329
1359
|
{
|
|
1330
|
-
this.state =
|
|
1360
|
+
this.state = 282;
|
|
1331
1361
|
this.at_block_pin_expression_complex();
|
|
1332
1362
|
}
|
|
1333
1363
|
break;
|
|
@@ -1352,11 +1382,11 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1352
1382
|
}
|
|
1353
1383
|
at_block_pin_expression_simple() {
|
|
1354
1384
|
let localContext = new At_block_pin_expression_simpleContext(this.context, this.state);
|
|
1355
|
-
this.enterRule(localContext,
|
|
1385
|
+
this.enterRule(localContext, 42, CircuitScriptParser.RULE_at_block_pin_expression_simple);
|
|
1356
1386
|
try {
|
|
1357
1387
|
this.enterOuterAlt(localContext, 1);
|
|
1358
1388
|
{
|
|
1359
|
-
this.state =
|
|
1389
|
+
this.state = 287;
|
|
1360
1390
|
this.errorHandler.sync(this);
|
|
1361
1391
|
switch (this.tokenStream.LA(1)) {
|
|
1362
1392
|
case CircuitScriptParser.T__3:
|
|
@@ -1377,13 +1407,13 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1377
1407
|
case CircuitScriptParser.Divide:
|
|
1378
1408
|
case CircuitScriptParser.ID:
|
|
1379
1409
|
{
|
|
1380
|
-
this.state =
|
|
1410
|
+
this.state = 285;
|
|
1381
1411
|
this.expression();
|
|
1382
1412
|
}
|
|
1383
1413
|
break;
|
|
1384
1414
|
case CircuitScriptParser.NOT_CONNECTED:
|
|
1385
1415
|
{
|
|
1386
|
-
this.state =
|
|
1416
|
+
this.state = 286;
|
|
1387
1417
|
this.match(CircuitScriptParser.NOT_CONNECTED);
|
|
1388
1418
|
}
|
|
1389
1419
|
break;
|
|
@@ -1408,61 +1438,12 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1408
1438
|
}
|
|
1409
1439
|
at_block_pin_expression_complex() {
|
|
1410
1440
|
let localContext = new At_block_pin_expression_complexContext(this.context, this.state);
|
|
1411
|
-
this.enterRule(localContext,
|
|
1412
|
-
let _la;
|
|
1441
|
+
this.enterRule(localContext, 44, CircuitScriptParser.RULE_at_block_pin_expression_complex);
|
|
1413
1442
|
try {
|
|
1414
1443
|
this.enterOuterAlt(localContext, 1);
|
|
1415
1444
|
{
|
|
1416
|
-
this.state = 281;
|
|
1417
|
-
this.match(CircuitScriptParser.NEWLINE);
|
|
1418
|
-
this.state = 282;
|
|
1419
|
-
this.match(CircuitScriptParser.INDENT);
|
|
1420
|
-
this.state = 285;
|
|
1421
|
-
this.errorHandler.sync(this);
|
|
1422
|
-
_la = this.tokenStream.LA(1);
|
|
1423
|
-
do {
|
|
1424
|
-
{
|
|
1425
|
-
this.state = 285;
|
|
1426
|
-
this.errorHandler.sync(this);
|
|
1427
|
-
switch (this.tokenStream.LA(1)) {
|
|
1428
|
-
case CircuitScriptParser.NEWLINE:
|
|
1429
|
-
{
|
|
1430
|
-
this.state = 283;
|
|
1431
|
-
this.match(CircuitScriptParser.NEWLINE);
|
|
1432
|
-
}
|
|
1433
|
-
break;
|
|
1434
|
-
case CircuitScriptParser.T__3:
|
|
1435
|
-
case CircuitScriptParser.Break:
|
|
1436
|
-
case CircuitScriptParser.Branch:
|
|
1437
|
-
case CircuitScriptParser.Wire:
|
|
1438
|
-
case CircuitScriptParser.Add:
|
|
1439
|
-
case CircuitScriptParser.At:
|
|
1440
|
-
case CircuitScriptParser.To:
|
|
1441
|
-
case CircuitScriptParser.Point:
|
|
1442
|
-
case CircuitScriptParser.Join:
|
|
1443
|
-
case CircuitScriptParser.Parallel:
|
|
1444
|
-
case CircuitScriptParser.Define:
|
|
1445
|
-
case CircuitScriptParser.Import:
|
|
1446
|
-
case CircuitScriptParser.If:
|
|
1447
|
-
case CircuitScriptParser.Frame:
|
|
1448
|
-
case CircuitScriptParser.Addition:
|
|
1449
|
-
case CircuitScriptParser.Divide:
|
|
1450
|
-
case CircuitScriptParser.ID:
|
|
1451
|
-
{
|
|
1452
|
-
this.state = 284;
|
|
1453
|
-
this.expression();
|
|
1454
|
-
}
|
|
1455
|
-
break;
|
|
1456
|
-
default:
|
|
1457
|
-
throw new antlr.NoViableAltException(this);
|
|
1458
|
-
}
|
|
1459
|
-
}
|
|
1460
|
-
this.state = 287;
|
|
1461
|
-
this.errorHandler.sync(this);
|
|
1462
|
-
_la = this.tokenStream.LA(1);
|
|
1463
|
-
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 165651216) !== 0) || ((((_la - 36)) & ~0x1F) === 0 && ((1 << (_la - 36)) & 65797) !== 0));
|
|
1464
1445
|
this.state = 289;
|
|
1465
|
-
this.
|
|
1446
|
+
this.expressions_block();
|
|
1466
1447
|
}
|
|
1467
1448
|
}
|
|
1468
1449
|
catch (re) {
|
|
@@ -1481,7 +1462,7 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1481
1462
|
}
|
|
1482
1463
|
break_keyword() {
|
|
1483
1464
|
let localContext = new Break_keywordContext(this.context, this.state);
|
|
1484
|
-
this.enterRule(localContext,
|
|
1465
|
+
this.enterRule(localContext, 46, CircuitScriptParser.RULE_break_keyword);
|
|
1485
1466
|
try {
|
|
1486
1467
|
this.enterOuterAlt(localContext, 1);
|
|
1487
1468
|
{
|
|
@@ -1505,7 +1486,7 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1505
1486
|
}
|
|
1506
1487
|
assignment_expr() {
|
|
1507
1488
|
let localContext = new Assignment_exprContext(this.context, this.state);
|
|
1508
|
-
this.enterRule(localContext,
|
|
1489
|
+
this.enterRule(localContext, 48, CircuitScriptParser.RULE_assignment_expr);
|
|
1509
1490
|
try {
|
|
1510
1491
|
this.enterOuterAlt(localContext, 1);
|
|
1511
1492
|
{
|
|
@@ -1533,7 +1514,7 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1533
1514
|
}
|
|
1534
1515
|
keyword_assignment_expr() {
|
|
1535
1516
|
let localContext = new Keyword_assignment_exprContext(this.context, this.state);
|
|
1536
|
-
this.enterRule(localContext,
|
|
1517
|
+
this.enterRule(localContext, 50, CircuitScriptParser.RULE_keyword_assignment_expr);
|
|
1537
1518
|
try {
|
|
1538
1519
|
this.enterOuterAlt(localContext, 1);
|
|
1539
1520
|
{
|
|
@@ -1561,13 +1542,13 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1561
1542
|
}
|
|
1562
1543
|
parameters() {
|
|
1563
1544
|
let localContext = new ParametersContext(this.context, this.state);
|
|
1564
|
-
this.enterRule(localContext,
|
|
1545
|
+
this.enterRule(localContext, 52, CircuitScriptParser.RULE_parameters);
|
|
1565
1546
|
let _la;
|
|
1566
1547
|
try {
|
|
1567
1548
|
let alternative;
|
|
1568
1549
|
this.state = 324;
|
|
1569
1550
|
this.errorHandler.sync(this);
|
|
1570
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
1551
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 28, this.context)) {
|
|
1571
1552
|
case 1:
|
|
1572
1553
|
this.enterOuterAlt(localContext, 1);
|
|
1573
1554
|
{
|
|
@@ -1576,7 +1557,7 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1576
1557
|
this.data_expr(0);
|
|
1577
1558
|
this.state = 306;
|
|
1578
1559
|
this.errorHandler.sync(this);
|
|
1579
|
-
alternative = this.interpreter.adaptivePredict(this.tokenStream,
|
|
1560
|
+
alternative = this.interpreter.adaptivePredict(this.tokenStream, 25, this.context);
|
|
1580
1561
|
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
|
|
1581
1562
|
if (alternative === 1) {
|
|
1582
1563
|
{
|
|
@@ -1590,7 +1571,7 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1590
1571
|
}
|
|
1591
1572
|
this.state = 308;
|
|
1592
1573
|
this.errorHandler.sync(this);
|
|
1593
|
-
alternative = this.interpreter.adaptivePredict(this.tokenStream,
|
|
1574
|
+
alternative = this.interpreter.adaptivePredict(this.tokenStream, 25, this.context);
|
|
1594
1575
|
}
|
|
1595
1576
|
this.state = 313;
|
|
1596
1577
|
this.errorHandler.sync(this);
|
|
@@ -1654,7 +1635,7 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1654
1635
|
}
|
|
1655
1636
|
property_set_expr() {
|
|
1656
1637
|
let localContext = new Property_set_exprContext(this.context, this.state);
|
|
1657
|
-
this.enterRule(localContext,
|
|
1638
|
+
this.enterRule(localContext, 54, CircuitScriptParser.RULE_property_set_expr);
|
|
1658
1639
|
try {
|
|
1659
1640
|
this.enterOuterAlt(localContext, 1);
|
|
1660
1641
|
{
|
|
@@ -1682,7 +1663,7 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1682
1663
|
}
|
|
1683
1664
|
double_dot_property_set_expr() {
|
|
1684
1665
|
let localContext = new Double_dot_property_set_exprContext(this.context, this.state);
|
|
1685
|
-
this.enterRule(localContext,
|
|
1666
|
+
this.enterRule(localContext, 56, CircuitScriptParser.RULE_double_dot_property_set_expr);
|
|
1686
1667
|
try {
|
|
1687
1668
|
this.enterOuterAlt(localContext, 1);
|
|
1688
1669
|
{
|
|
@@ -1718,16 +1699,16 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1718
1699
|
let parentState = this.state;
|
|
1719
1700
|
let localContext = new Data_exprContext(this.context, parentState);
|
|
1720
1701
|
let previousContext = localContext;
|
|
1721
|
-
let _startState =
|
|
1722
|
-
this.enterRecursionRule(localContext,
|
|
1702
|
+
let _startState = 58;
|
|
1703
|
+
this.enterRecursionRule(localContext, 58, CircuitScriptParser.RULE_data_expr, _p);
|
|
1723
1704
|
let _la;
|
|
1724
1705
|
try {
|
|
1725
1706
|
let alternative;
|
|
1726
1707
|
this.enterOuterAlt(localContext, 1);
|
|
1727
1708
|
{
|
|
1728
|
-
this.state =
|
|
1709
|
+
this.state = 351;
|
|
1729
1710
|
this.errorHandler.sync(this);
|
|
1730
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
1711
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 30, this.context)) {
|
|
1731
1712
|
case 1:
|
|
1732
1713
|
{
|
|
1733
1714
|
localContext = new RoundedBracketsExprContext(localContext);
|
|
@@ -1781,7 +1762,7 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1781
1762
|
this.state = 344;
|
|
1782
1763
|
this.unary_operator();
|
|
1783
1764
|
this.state = 345;
|
|
1784
|
-
this.data_expr(
|
|
1765
|
+
this.data_expr(9);
|
|
1785
1766
|
}
|
|
1786
1767
|
break;
|
|
1787
1768
|
case 4:
|
|
@@ -1804,18 +1785,27 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1804
1785
|
break;
|
|
1805
1786
|
case 6:
|
|
1806
1787
|
{
|
|
1807
|
-
localContext = new
|
|
1788
|
+
localContext = new DataExprContext(localContext);
|
|
1808
1789
|
this.context = localContext;
|
|
1809
1790
|
previousContext = localContext;
|
|
1810
1791
|
this.state = 349;
|
|
1792
|
+
this.create_module_expr();
|
|
1793
|
+
}
|
|
1794
|
+
break;
|
|
1795
|
+
case 7:
|
|
1796
|
+
{
|
|
1797
|
+
localContext = new FunctionCallExprContext(localContext);
|
|
1798
|
+
this.context = localContext;
|
|
1799
|
+
previousContext = localContext;
|
|
1800
|
+
this.state = 350;
|
|
1811
1801
|
this.function_call_expr();
|
|
1812
1802
|
}
|
|
1813
1803
|
break;
|
|
1814
1804
|
}
|
|
1815
1805
|
this.context.stop = this.tokenStream.LT(-1);
|
|
1816
|
-
this.state =
|
|
1806
|
+
this.state = 368;
|
|
1817
1807
|
this.errorHandler.sync(this);
|
|
1818
|
-
alternative = this.interpreter.adaptivePredict(this.tokenStream,
|
|
1808
|
+
alternative = this.interpreter.adaptivePredict(this.tokenStream, 32, this.context);
|
|
1819
1809
|
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
|
|
1820
1810
|
if (alternative === 1) {
|
|
1821
1811
|
if (this.parseListeners != null) {
|
|
@@ -1823,92 +1813,92 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1823
1813
|
}
|
|
1824
1814
|
previousContext = localContext;
|
|
1825
1815
|
{
|
|
1826
|
-
this.state =
|
|
1816
|
+
this.state = 366;
|
|
1827
1817
|
this.errorHandler.sync(this);
|
|
1828
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
1818
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 31, this.context)) {
|
|
1829
1819
|
case 1:
|
|
1830
1820
|
{
|
|
1831
1821
|
localContext = new MultiplyExprContext(new Data_exprContext(parentContext, parentState));
|
|
1832
1822
|
this.pushNewRecursionContext(localContext, _startState, CircuitScriptParser.RULE_data_expr);
|
|
1833
|
-
this.state = 352;
|
|
1834
|
-
if (!(this.precpred(this.context, 7))) {
|
|
1835
|
-
throw this.createFailedPredicateException("this.precpred(this.context, 7)");
|
|
1836
|
-
}
|
|
1837
1823
|
this.state = 353;
|
|
1824
|
+
if (!(this.precpred(this.context, 8))) {
|
|
1825
|
+
throw this.createFailedPredicateException("this.precpred(this.context, 8)");
|
|
1826
|
+
}
|
|
1827
|
+
this.state = 354;
|
|
1838
1828
|
_la = this.tokenStream.LA(1);
|
|
1839
|
-
if (!(_la ===
|
|
1829
|
+
if (!(_la === 39 || _la === 40)) {
|
|
1840
1830
|
this.errorHandler.recoverInline(this);
|
|
1841
1831
|
}
|
|
1842
1832
|
else {
|
|
1843
1833
|
this.errorHandler.reportMatch(this);
|
|
1844
1834
|
this.consume();
|
|
1845
1835
|
}
|
|
1846
|
-
this.state =
|
|
1847
|
-
this.data_expr(
|
|
1836
|
+
this.state = 355;
|
|
1837
|
+
this.data_expr(9);
|
|
1848
1838
|
}
|
|
1849
1839
|
break;
|
|
1850
1840
|
case 2:
|
|
1851
1841
|
{
|
|
1852
1842
|
localContext = new AdditionExprContext(new Data_exprContext(parentContext, parentState));
|
|
1853
1843
|
this.pushNewRecursionContext(localContext, _startState, CircuitScriptParser.RULE_data_expr);
|
|
1854
|
-
this.state = 355;
|
|
1855
|
-
if (!(this.precpred(this.context, 6))) {
|
|
1856
|
-
throw this.createFailedPredicateException("this.precpred(this.context, 6)");
|
|
1857
|
-
}
|
|
1858
1844
|
this.state = 356;
|
|
1845
|
+
if (!(this.precpred(this.context, 7))) {
|
|
1846
|
+
throw this.createFailedPredicateException("this.precpred(this.context, 7)");
|
|
1847
|
+
}
|
|
1848
|
+
this.state = 357;
|
|
1859
1849
|
_la = this.tokenStream.LA(1);
|
|
1860
|
-
if (!(_la ===
|
|
1850
|
+
if (!(_la === 37 || _la === 38)) {
|
|
1861
1851
|
this.errorHandler.recoverInline(this);
|
|
1862
1852
|
}
|
|
1863
1853
|
else {
|
|
1864
1854
|
this.errorHandler.reportMatch(this);
|
|
1865
1855
|
this.consume();
|
|
1866
1856
|
}
|
|
1867
|
-
this.state =
|
|
1868
|
-
this.data_expr(
|
|
1857
|
+
this.state = 358;
|
|
1858
|
+
this.data_expr(8);
|
|
1869
1859
|
}
|
|
1870
1860
|
break;
|
|
1871
1861
|
case 3:
|
|
1872
1862
|
{
|
|
1873
1863
|
localContext = new BinaryOperatorExprContext(new Data_exprContext(parentContext, parentState));
|
|
1874
1864
|
this.pushNewRecursionContext(localContext, _startState, CircuitScriptParser.RULE_data_expr);
|
|
1875
|
-
this.state = 358;
|
|
1876
|
-
if (!(this.precpred(this.context, 5))) {
|
|
1877
|
-
throw this.createFailedPredicateException("this.precpred(this.context, 5)");
|
|
1878
|
-
}
|
|
1879
1865
|
this.state = 359;
|
|
1880
|
-
this.
|
|
1866
|
+
if (!(this.precpred(this.context, 6))) {
|
|
1867
|
+
throw this.createFailedPredicateException("this.precpred(this.context, 6)");
|
|
1868
|
+
}
|
|
1881
1869
|
this.state = 360;
|
|
1882
|
-
this.
|
|
1870
|
+
this.binary_operator();
|
|
1871
|
+
this.state = 361;
|
|
1872
|
+
this.data_expr(7);
|
|
1883
1873
|
}
|
|
1884
1874
|
break;
|
|
1885
1875
|
case 4:
|
|
1886
1876
|
{
|
|
1887
1877
|
localContext = new LogicalOperatorExprContext(new Data_exprContext(parentContext, parentState));
|
|
1888
1878
|
this.pushNewRecursionContext(localContext, _startState, CircuitScriptParser.RULE_data_expr);
|
|
1889
|
-
this.state = 362;
|
|
1890
|
-
if (!(this.precpred(this.context, 4))) {
|
|
1891
|
-
throw this.createFailedPredicateException("this.precpred(this.context, 4)");
|
|
1892
|
-
}
|
|
1893
1879
|
this.state = 363;
|
|
1894
|
-
|
|
1895
|
-
|
|
1896
|
-
|
|
1880
|
+
if (!(this.precpred(this.context, 5))) {
|
|
1881
|
+
throw this.createFailedPredicateException("this.precpred(this.context, 5)");
|
|
1882
|
+
}
|
|
1883
|
+
this.state = 364;
|
|
1884
|
+
_la = this.tokenStream.LA(1);
|
|
1885
|
+
if (!(_la === 35 || _la === 36)) {
|
|
1886
|
+
this.errorHandler.recoverInline(this);
|
|
1897
1887
|
}
|
|
1898
1888
|
else {
|
|
1899
1889
|
this.errorHandler.reportMatch(this);
|
|
1900
1890
|
this.consume();
|
|
1901
1891
|
}
|
|
1902
|
-
this.state =
|
|
1903
|
-
this.data_expr(
|
|
1892
|
+
this.state = 365;
|
|
1893
|
+
this.data_expr(6);
|
|
1904
1894
|
}
|
|
1905
1895
|
break;
|
|
1906
1896
|
}
|
|
1907
1897
|
}
|
|
1908
1898
|
}
|
|
1909
|
-
this.state =
|
|
1899
|
+
this.state = 370;
|
|
1910
1900
|
this.errorHandler.sync(this);
|
|
1911
|
-
alternative = this.interpreter.adaptivePredict(this.tokenStream,
|
|
1901
|
+
alternative = this.interpreter.adaptivePredict(this.tokenStream, 32, this.context);
|
|
1912
1902
|
}
|
|
1913
1903
|
}
|
|
1914
1904
|
}
|
|
@@ -1928,14 +1918,14 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1928
1918
|
}
|
|
1929
1919
|
binary_operator() {
|
|
1930
1920
|
let localContext = new Binary_operatorContext(this.context, this.state);
|
|
1931
|
-
this.enterRule(localContext,
|
|
1921
|
+
this.enterRule(localContext, 60, CircuitScriptParser.RULE_binary_operator);
|
|
1932
1922
|
let _la;
|
|
1933
1923
|
try {
|
|
1934
1924
|
this.enterOuterAlt(localContext, 1);
|
|
1935
1925
|
{
|
|
1936
|
-
this.state =
|
|
1926
|
+
this.state = 371;
|
|
1937
1927
|
_la = this.tokenStream.LA(1);
|
|
1938
|
-
if (!(((((_la -
|
|
1928
|
+
if (!(((((_la - 29)) & ~0x1F) === 0 && ((1 << (_la - 29)) & 63) !== 0))) {
|
|
1939
1929
|
this.errorHandler.recoverInline(this);
|
|
1940
1930
|
}
|
|
1941
1931
|
else {
|
|
@@ -1960,14 +1950,14 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1960
1950
|
}
|
|
1961
1951
|
unary_operator() {
|
|
1962
1952
|
let localContext = new Unary_operatorContext(this.context, this.state);
|
|
1963
|
-
this.enterRule(localContext,
|
|
1953
|
+
this.enterRule(localContext, 62, CircuitScriptParser.RULE_unary_operator);
|
|
1964
1954
|
let _la;
|
|
1965
1955
|
try {
|
|
1966
1956
|
this.enterOuterAlt(localContext, 1);
|
|
1967
1957
|
{
|
|
1968
|
-
this.state =
|
|
1958
|
+
this.state = 373;
|
|
1969
1959
|
_la = this.tokenStream.LA(1);
|
|
1970
|
-
if (!(_la ===
|
|
1960
|
+
if (!(_la === 27 || _la === 38)) {
|
|
1971
1961
|
this.errorHandler.recoverInline(this);
|
|
1972
1962
|
}
|
|
1973
1963
|
else {
|
|
@@ -1992,10 +1982,10 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
1992
1982
|
}
|
|
1993
1983
|
value_expr() {
|
|
1994
1984
|
let localContext = new Value_exprContext(this.context, this.state);
|
|
1995
|
-
this.enterRule(localContext,
|
|
1985
|
+
this.enterRule(localContext, 64, CircuitScriptParser.RULE_value_expr);
|
|
1996
1986
|
let _la;
|
|
1997
1987
|
try {
|
|
1998
|
-
this.state =
|
|
1988
|
+
this.state = 380;
|
|
1999
1989
|
this.errorHandler.sync(this);
|
|
2000
1990
|
switch (this.tokenStream.LA(1)) {
|
|
2001
1991
|
case CircuitScriptParser.Minus:
|
|
@@ -2008,18 +1998,18 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2008
1998
|
this.enterOuterAlt(localContext, 1);
|
|
2009
1999
|
{
|
|
2010
2000
|
{
|
|
2011
|
-
this.state =
|
|
2001
|
+
this.state = 376;
|
|
2012
2002
|
this.errorHandler.sync(this);
|
|
2013
2003
|
_la = this.tokenStream.LA(1);
|
|
2014
|
-
if (_la ===
|
|
2004
|
+
if (_la === 38) {
|
|
2015
2005
|
{
|
|
2016
|
-
this.state =
|
|
2006
|
+
this.state = 375;
|
|
2017
2007
|
this.match(CircuitScriptParser.Minus);
|
|
2018
2008
|
}
|
|
2019
2009
|
}
|
|
2020
|
-
this.state =
|
|
2010
|
+
this.state = 378;
|
|
2021
2011
|
_la = this.tokenStream.LA(1);
|
|
2022
|
-
if (!(((((_la -
|
|
2012
|
+
if (!(((((_la - 44)) & ~0x1F) === 0 && ((1 << (_la - 44)) & 125) !== 0))) {
|
|
2023
2013
|
this.errorHandler.recoverInline(this);
|
|
2024
2014
|
}
|
|
2025
2015
|
else {
|
|
@@ -2032,7 +2022,7 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2032
2022
|
case CircuitScriptParser.T__5:
|
|
2033
2023
|
this.enterOuterAlt(localContext, 2);
|
|
2034
2024
|
{
|
|
2035
|
-
this.state =
|
|
2025
|
+
this.state = 379;
|
|
2036
2026
|
this.blank_expr();
|
|
2037
2027
|
}
|
|
2038
2028
|
break;
|
|
@@ -2056,45 +2046,45 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2056
2046
|
}
|
|
2057
2047
|
function_def_expr() {
|
|
2058
2048
|
let localContext = new Function_def_exprContext(this.context, this.state);
|
|
2059
|
-
this.enterRule(localContext,
|
|
2049
|
+
this.enterRule(localContext, 66, CircuitScriptParser.RULE_function_def_expr);
|
|
2060
2050
|
let _la;
|
|
2061
2051
|
try {
|
|
2062
2052
|
this.enterOuterAlt(localContext, 1);
|
|
2063
2053
|
{
|
|
2064
|
-
this.state = 381;
|
|
2065
|
-
this.match(CircuitScriptParser.Define);
|
|
2066
2054
|
this.state = 382;
|
|
2067
|
-
this.match(CircuitScriptParser.
|
|
2055
|
+
this.match(CircuitScriptParser.Define);
|
|
2068
2056
|
this.state = 383;
|
|
2057
|
+
this.match(CircuitScriptParser.ID);
|
|
2058
|
+
this.state = 384;
|
|
2069
2059
|
this.match(CircuitScriptParser.OPEN_PAREN);
|
|
2070
|
-
this.state =
|
|
2060
|
+
this.state = 386;
|
|
2071
2061
|
this.errorHandler.sync(this);
|
|
2072
2062
|
_la = this.tokenStream.LA(1);
|
|
2073
|
-
if (_la ===
|
|
2063
|
+
if (_la === 45) {
|
|
2074
2064
|
{
|
|
2075
|
-
this.state =
|
|
2065
|
+
this.state = 385;
|
|
2076
2066
|
this.function_args_expr();
|
|
2077
2067
|
}
|
|
2078
2068
|
}
|
|
2079
|
-
this.state = 387;
|
|
2080
|
-
this.match(CircuitScriptParser.CLOSE_PAREN);
|
|
2081
2069
|
this.state = 388;
|
|
2082
|
-
this.match(CircuitScriptParser.
|
|
2070
|
+
this.match(CircuitScriptParser.CLOSE_PAREN);
|
|
2083
2071
|
this.state = 389;
|
|
2084
|
-
this.match(CircuitScriptParser.
|
|
2072
|
+
this.match(CircuitScriptParser.T__0);
|
|
2085
2073
|
this.state = 390;
|
|
2074
|
+
this.match(CircuitScriptParser.NEWLINE);
|
|
2075
|
+
this.state = 391;
|
|
2086
2076
|
this.match(CircuitScriptParser.INDENT);
|
|
2087
|
-
this.state =
|
|
2077
|
+
this.state = 394;
|
|
2088
2078
|
this.errorHandler.sync(this);
|
|
2089
2079
|
_la = this.tokenStream.LA(1);
|
|
2090
2080
|
do {
|
|
2091
2081
|
{
|
|
2092
|
-
this.state =
|
|
2082
|
+
this.state = 394;
|
|
2093
2083
|
this.errorHandler.sync(this);
|
|
2094
2084
|
switch (this.tokenStream.LA(1)) {
|
|
2095
2085
|
case CircuitScriptParser.NEWLINE:
|
|
2096
2086
|
{
|
|
2097
|
-
this.state =
|
|
2087
|
+
this.state = 392;
|
|
2098
2088
|
this.match(CircuitScriptParser.NEWLINE);
|
|
2099
2089
|
}
|
|
2100
2090
|
break;
|
|
@@ -2117,7 +2107,7 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2117
2107
|
case CircuitScriptParser.Divide:
|
|
2118
2108
|
case CircuitScriptParser.ID:
|
|
2119
2109
|
{
|
|
2120
|
-
this.state =
|
|
2110
|
+
this.state = 393;
|
|
2121
2111
|
this.function_expr();
|
|
2122
2112
|
}
|
|
2123
2113
|
break;
|
|
@@ -2125,11 +2115,11 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2125
2115
|
throw new antlr.NoViableAltException(this);
|
|
2126
2116
|
}
|
|
2127
2117
|
}
|
|
2128
|
-
this.state =
|
|
2118
|
+
this.state = 396;
|
|
2129
2119
|
this.errorHandler.sync(this);
|
|
2130
2120
|
_la = this.tokenStream.LA(1);
|
|
2131
|
-
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
2132
|
-
this.state =
|
|
2121
|
+
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 335495952) !== 0) || ((((_la - 37)) & ~0x1F) === 0 && ((1 << (_la - 37)) & 65797) !== 0));
|
|
2122
|
+
this.state = 398;
|
|
2133
2123
|
this.match(CircuitScriptParser.DEDENT);
|
|
2134
2124
|
}
|
|
2135
2125
|
}
|
|
@@ -2149,9 +2139,9 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2149
2139
|
}
|
|
2150
2140
|
function_expr() {
|
|
2151
2141
|
let localContext = new Function_exprContext(this.context, this.state);
|
|
2152
|
-
this.enterRule(localContext,
|
|
2142
|
+
this.enterRule(localContext, 68, CircuitScriptParser.RULE_function_expr);
|
|
2153
2143
|
try {
|
|
2154
|
-
this.state =
|
|
2144
|
+
this.state = 402;
|
|
2155
2145
|
this.errorHandler.sync(this);
|
|
2156
2146
|
switch (this.tokenStream.LA(1)) {
|
|
2157
2147
|
case CircuitScriptParser.T__3:
|
|
@@ -2173,14 +2163,14 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2173
2163
|
case CircuitScriptParser.ID:
|
|
2174
2164
|
this.enterOuterAlt(localContext, 1);
|
|
2175
2165
|
{
|
|
2176
|
-
this.state =
|
|
2166
|
+
this.state = 400;
|
|
2177
2167
|
this.expression();
|
|
2178
2168
|
}
|
|
2179
2169
|
break;
|
|
2180
2170
|
case CircuitScriptParser.Return:
|
|
2181
2171
|
this.enterOuterAlt(localContext, 2);
|
|
2182
2172
|
{
|
|
2183
|
-
this.state =
|
|
2173
|
+
this.state = 401;
|
|
2184
2174
|
this.function_return_expr();
|
|
2185
2175
|
}
|
|
2186
2176
|
break;
|
|
@@ -2204,53 +2194,53 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2204
2194
|
}
|
|
2205
2195
|
function_args_expr() {
|
|
2206
2196
|
let localContext = new Function_args_exprContext(this.context, this.state);
|
|
2207
|
-
this.enterRule(localContext,
|
|
2197
|
+
this.enterRule(localContext, 70, CircuitScriptParser.RULE_function_args_expr);
|
|
2208
2198
|
let _la;
|
|
2209
2199
|
try {
|
|
2210
2200
|
let alternative;
|
|
2211
|
-
this.state =
|
|
2201
|
+
this.state = 433;
|
|
2212
2202
|
this.errorHandler.sync(this);
|
|
2213
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
2203
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 42, this.context)) {
|
|
2214
2204
|
case 1:
|
|
2215
2205
|
this.enterOuterAlt(localContext, 1);
|
|
2216
2206
|
{
|
|
2217
|
-
this.state =
|
|
2207
|
+
this.state = 404;
|
|
2218
2208
|
this.match(CircuitScriptParser.ID);
|
|
2219
|
-
this.state =
|
|
2209
|
+
this.state = 409;
|
|
2220
2210
|
this.errorHandler.sync(this);
|
|
2221
|
-
alternative = this.interpreter.adaptivePredict(this.tokenStream,
|
|
2211
|
+
alternative = this.interpreter.adaptivePredict(this.tokenStream, 39, this.context);
|
|
2222
2212
|
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
|
|
2223
2213
|
if (alternative === 1) {
|
|
2224
2214
|
{
|
|
2225
2215
|
{
|
|
2226
|
-
this.state = 404;
|
|
2227
|
-
this.match(CircuitScriptParser.T__1);
|
|
2228
2216
|
this.state = 405;
|
|
2217
|
+
this.match(CircuitScriptParser.T__1);
|
|
2218
|
+
this.state = 406;
|
|
2229
2219
|
this.match(CircuitScriptParser.ID);
|
|
2230
2220
|
}
|
|
2231
2221
|
}
|
|
2232
2222
|
}
|
|
2233
|
-
this.state =
|
|
2223
|
+
this.state = 411;
|
|
2234
2224
|
this.errorHandler.sync(this);
|
|
2235
|
-
alternative = this.interpreter.adaptivePredict(this.tokenStream,
|
|
2225
|
+
alternative = this.interpreter.adaptivePredict(this.tokenStream, 39, this.context);
|
|
2236
2226
|
}
|
|
2237
|
-
this.state =
|
|
2227
|
+
this.state = 418;
|
|
2238
2228
|
this.errorHandler.sync(this);
|
|
2239
2229
|
_la = this.tokenStream.LA(1);
|
|
2240
2230
|
while (_la === 2) {
|
|
2241
2231
|
{
|
|
2242
2232
|
{
|
|
2243
|
-
this.state = 411;
|
|
2244
|
-
this.match(CircuitScriptParser.T__1);
|
|
2245
2233
|
this.state = 412;
|
|
2246
|
-
this.match(CircuitScriptParser.
|
|
2234
|
+
this.match(CircuitScriptParser.T__1);
|
|
2247
2235
|
this.state = 413;
|
|
2248
|
-
this.match(CircuitScriptParser.
|
|
2236
|
+
this.match(CircuitScriptParser.ID);
|
|
2249
2237
|
this.state = 414;
|
|
2238
|
+
this.match(CircuitScriptParser.T__2);
|
|
2239
|
+
this.state = 415;
|
|
2250
2240
|
this.value_expr();
|
|
2251
2241
|
}
|
|
2252
2242
|
}
|
|
2253
|
-
this.state =
|
|
2243
|
+
this.state = 420;
|
|
2254
2244
|
this.errorHandler.sync(this);
|
|
2255
2245
|
_la = this.tokenStream.LA(1);
|
|
2256
2246
|
}
|
|
@@ -2259,29 +2249,29 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2259
2249
|
case 2:
|
|
2260
2250
|
this.enterOuterAlt(localContext, 2);
|
|
2261
2251
|
{
|
|
2262
|
-
this.state = 420;
|
|
2263
|
-
this.match(CircuitScriptParser.ID);
|
|
2264
2252
|
this.state = 421;
|
|
2265
|
-
this.match(CircuitScriptParser.
|
|
2253
|
+
this.match(CircuitScriptParser.ID);
|
|
2266
2254
|
this.state = 422;
|
|
2255
|
+
this.match(CircuitScriptParser.T__2);
|
|
2256
|
+
this.state = 423;
|
|
2267
2257
|
this.value_expr();
|
|
2268
|
-
this.state =
|
|
2258
|
+
this.state = 430;
|
|
2269
2259
|
this.errorHandler.sync(this);
|
|
2270
2260
|
_la = this.tokenStream.LA(1);
|
|
2271
2261
|
while (_la === 2) {
|
|
2272
2262
|
{
|
|
2273
2263
|
{
|
|
2274
|
-
this.state = 423;
|
|
2275
|
-
this.match(CircuitScriptParser.T__1);
|
|
2276
2264
|
this.state = 424;
|
|
2277
|
-
this.match(CircuitScriptParser.
|
|
2265
|
+
this.match(CircuitScriptParser.T__1);
|
|
2278
2266
|
this.state = 425;
|
|
2279
|
-
this.match(CircuitScriptParser.
|
|
2267
|
+
this.match(CircuitScriptParser.ID);
|
|
2280
2268
|
this.state = 426;
|
|
2269
|
+
this.match(CircuitScriptParser.T__2);
|
|
2270
|
+
this.state = 427;
|
|
2281
2271
|
this.value_expr();
|
|
2282
2272
|
}
|
|
2283
2273
|
}
|
|
2284
|
-
this.state =
|
|
2274
|
+
this.state = 432;
|
|
2285
2275
|
this.errorHandler.sync(this);
|
|
2286
2276
|
_la = this.tokenStream.LA(1);
|
|
2287
2277
|
}
|
|
@@ -2305,30 +2295,30 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2305
2295
|
}
|
|
2306
2296
|
atom_expr() {
|
|
2307
2297
|
let localContext = new Atom_exprContext(this.context, this.state);
|
|
2308
|
-
this.enterRule(localContext,
|
|
2298
|
+
this.enterRule(localContext, 72, CircuitScriptParser.RULE_atom_expr);
|
|
2309
2299
|
try {
|
|
2310
2300
|
let alternative;
|
|
2311
2301
|
this.enterOuterAlt(localContext, 1);
|
|
2312
2302
|
{
|
|
2313
|
-
this.state =
|
|
2303
|
+
this.state = 435;
|
|
2314
2304
|
this.match(CircuitScriptParser.ID);
|
|
2315
|
-
this.state =
|
|
2305
|
+
this.state = 440;
|
|
2316
2306
|
this.errorHandler.sync(this);
|
|
2317
|
-
alternative = this.interpreter.adaptivePredict(this.tokenStream,
|
|
2307
|
+
alternative = this.interpreter.adaptivePredict(this.tokenStream, 43, this.context);
|
|
2318
2308
|
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
|
|
2319
2309
|
if (alternative === 1) {
|
|
2320
2310
|
{
|
|
2321
2311
|
{
|
|
2322
|
-
this.state = 435;
|
|
2323
|
-
this.match(CircuitScriptParser.T__4);
|
|
2324
2312
|
this.state = 436;
|
|
2313
|
+
this.match(CircuitScriptParser.T__4);
|
|
2314
|
+
this.state = 437;
|
|
2325
2315
|
this.match(CircuitScriptParser.ID);
|
|
2326
2316
|
}
|
|
2327
2317
|
}
|
|
2328
2318
|
}
|
|
2329
|
-
this.state =
|
|
2319
|
+
this.state = 442;
|
|
2330
2320
|
this.errorHandler.sync(this);
|
|
2331
|
-
alternative = this.interpreter.adaptivePredict(this.tokenStream,
|
|
2321
|
+
alternative = this.interpreter.adaptivePredict(this.tokenStream, 43, this.context);
|
|
2332
2322
|
}
|
|
2333
2323
|
}
|
|
2334
2324
|
}
|
|
@@ -2348,36 +2338,36 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2348
2338
|
}
|
|
2349
2339
|
trailer_expr() {
|
|
2350
2340
|
let localContext = new Trailer_exprContext(this.context, this.state);
|
|
2351
|
-
this.enterRule(localContext,
|
|
2341
|
+
this.enterRule(localContext, 74, CircuitScriptParser.RULE_trailer_expr);
|
|
2352
2342
|
let _la;
|
|
2353
2343
|
try {
|
|
2354
|
-
this.state =
|
|
2344
|
+
this.state = 450;
|
|
2355
2345
|
this.errorHandler.sync(this);
|
|
2356
2346
|
switch (this.tokenStream.LA(1)) {
|
|
2357
2347
|
case CircuitScriptParser.OPEN_PAREN:
|
|
2358
2348
|
this.enterOuterAlt(localContext, 1);
|
|
2359
2349
|
{
|
|
2360
|
-
this.state =
|
|
2350
|
+
this.state = 443;
|
|
2361
2351
|
this.match(CircuitScriptParser.OPEN_PAREN);
|
|
2362
|
-
this.state =
|
|
2352
|
+
this.state = 445;
|
|
2363
2353
|
this.errorHandler.sync(this);
|
|
2364
2354
|
_la = this.tokenStream.LA(1);
|
|
2365
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
2355
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 134218816) !== 0) || ((((_la - 37)) & ~0x1F) === 0 && ((1 << (_la - 37)) & 16279) !== 0)) {
|
|
2366
2356
|
{
|
|
2367
|
-
this.state =
|
|
2357
|
+
this.state = 444;
|
|
2368
2358
|
this.parameters();
|
|
2369
2359
|
}
|
|
2370
2360
|
}
|
|
2371
|
-
this.state =
|
|
2361
|
+
this.state = 447;
|
|
2372
2362
|
this.match(CircuitScriptParser.CLOSE_PAREN);
|
|
2373
2363
|
}
|
|
2374
2364
|
break;
|
|
2375
2365
|
case CircuitScriptParser.T__4:
|
|
2376
2366
|
this.enterOuterAlt(localContext, 2);
|
|
2377
2367
|
{
|
|
2378
|
-
this.state = 447;
|
|
2379
|
-
this.match(CircuitScriptParser.T__4);
|
|
2380
2368
|
this.state = 448;
|
|
2369
|
+
this.match(CircuitScriptParser.T__4);
|
|
2370
|
+
this.state = 449;
|
|
2381
2371
|
this.match(CircuitScriptParser.ID);
|
|
2382
2372
|
}
|
|
2383
2373
|
break;
|
|
@@ -2401,24 +2391,24 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2401
2391
|
}
|
|
2402
2392
|
function_call_expr() {
|
|
2403
2393
|
let localContext = new Function_call_exprContext(this.context, this.state);
|
|
2404
|
-
this.enterRule(localContext,
|
|
2394
|
+
this.enterRule(localContext, 76, CircuitScriptParser.RULE_function_call_expr);
|
|
2405
2395
|
let _la;
|
|
2406
2396
|
try {
|
|
2407
2397
|
let alternative;
|
|
2408
2398
|
this.enterOuterAlt(localContext, 1);
|
|
2409
2399
|
{
|
|
2410
|
-
this.state =
|
|
2400
|
+
this.state = 453;
|
|
2411
2401
|
this.errorHandler.sync(this);
|
|
2412
2402
|
_la = this.tokenStream.LA(1);
|
|
2413
|
-
if (_la ===
|
|
2403
|
+
if (_la === 37 || _la === 39) {
|
|
2414
2404
|
{
|
|
2415
|
-
this.state =
|
|
2405
|
+
this.state = 452;
|
|
2416
2406
|
this.net_namespace_expr();
|
|
2417
2407
|
}
|
|
2418
2408
|
}
|
|
2419
|
-
this.state =
|
|
2409
|
+
this.state = 455;
|
|
2420
2410
|
this.match(CircuitScriptParser.ID);
|
|
2421
|
-
this.state =
|
|
2411
|
+
this.state = 457;
|
|
2422
2412
|
this.errorHandler.sync(this);
|
|
2423
2413
|
alternative = 1;
|
|
2424
2414
|
do {
|
|
@@ -2426,7 +2416,7 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2426
2416
|
case 1:
|
|
2427
2417
|
{
|
|
2428
2418
|
{
|
|
2429
|
-
this.state =
|
|
2419
|
+
this.state = 456;
|
|
2430
2420
|
this.trailer_expr();
|
|
2431
2421
|
}
|
|
2432
2422
|
}
|
|
@@ -2434,9 +2424,9 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2434
2424
|
default:
|
|
2435
2425
|
throw new antlr.NoViableAltException(this);
|
|
2436
2426
|
}
|
|
2437
|
-
this.state =
|
|
2427
|
+
this.state = 459;
|
|
2438
2428
|
this.errorHandler.sync(this);
|
|
2439
|
-
alternative = this.interpreter.adaptivePredict(this.tokenStream,
|
|
2429
|
+
alternative = this.interpreter.adaptivePredict(this.tokenStream, 47, this.context);
|
|
2440
2430
|
} while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER);
|
|
2441
2431
|
}
|
|
2442
2432
|
}
|
|
@@ -2456,28 +2446,28 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2456
2446
|
}
|
|
2457
2447
|
net_namespace_expr() {
|
|
2458
2448
|
let localContext = new Net_namespace_exprContext(this.context, this.state);
|
|
2459
|
-
this.enterRule(localContext,
|
|
2449
|
+
this.enterRule(localContext, 78, CircuitScriptParser.RULE_net_namespace_expr);
|
|
2460
2450
|
let _la;
|
|
2461
2451
|
try {
|
|
2462
2452
|
this.enterOuterAlt(localContext, 1);
|
|
2463
2453
|
{
|
|
2464
|
-
this.state =
|
|
2454
|
+
this.state = 462;
|
|
2465
2455
|
this.errorHandler.sync(this);
|
|
2466
2456
|
_la = this.tokenStream.LA(1);
|
|
2467
|
-
if (_la ===
|
|
2457
|
+
if (_la === 37) {
|
|
2468
2458
|
{
|
|
2469
|
-
this.state =
|
|
2459
|
+
this.state = 461;
|
|
2470
2460
|
this.match(CircuitScriptParser.Addition);
|
|
2471
2461
|
}
|
|
2472
2462
|
}
|
|
2473
|
-
this.state =
|
|
2463
|
+
this.state = 464;
|
|
2474
2464
|
this.match(CircuitScriptParser.Divide);
|
|
2475
|
-
this.state =
|
|
2465
|
+
this.state = 466;
|
|
2476
2466
|
this.errorHandler.sync(this);
|
|
2477
|
-
switch (this.interpreter.adaptivePredict(this.tokenStream,
|
|
2467
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 49, this.context)) {
|
|
2478
2468
|
case 1:
|
|
2479
2469
|
{
|
|
2480
|
-
this.state =
|
|
2470
|
+
this.state = 465;
|
|
2481
2471
|
this.data_expr(0);
|
|
2482
2472
|
}
|
|
2483
2473
|
break;
|
|
@@ -2500,13 +2490,13 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2500
2490
|
}
|
|
2501
2491
|
function_return_expr() {
|
|
2502
2492
|
let localContext = new Function_return_exprContext(this.context, this.state);
|
|
2503
|
-
this.enterRule(localContext,
|
|
2493
|
+
this.enterRule(localContext, 80, CircuitScriptParser.RULE_function_return_expr);
|
|
2504
2494
|
try {
|
|
2505
2495
|
this.enterOuterAlt(localContext, 1);
|
|
2506
2496
|
{
|
|
2507
|
-
this.state = 467;
|
|
2508
|
-
this.match(CircuitScriptParser.Return);
|
|
2509
2497
|
this.state = 468;
|
|
2498
|
+
this.match(CircuitScriptParser.Return);
|
|
2499
|
+
this.state = 469;
|
|
2510
2500
|
this.data_expr(0);
|
|
2511
2501
|
}
|
|
2512
2502
|
}
|
|
@@ -2524,34 +2514,62 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2524
2514
|
}
|
|
2525
2515
|
return localContext;
|
|
2526
2516
|
}
|
|
2517
|
+
property_block_expr() {
|
|
2518
|
+
let localContext = new Property_block_exprContext(this.context, this.state);
|
|
2519
|
+
this.enterRule(localContext, 82, CircuitScriptParser.RULE_property_block_expr);
|
|
2520
|
+
try {
|
|
2521
|
+
this.enterOuterAlt(localContext, 1);
|
|
2522
|
+
{
|
|
2523
|
+
this.state = 471;
|
|
2524
|
+
this.property_key_expr();
|
|
2525
|
+
this.state = 472;
|
|
2526
|
+
this.match(CircuitScriptParser.T__0);
|
|
2527
|
+
this.state = 473;
|
|
2528
|
+
this.expressions_block();
|
|
2529
|
+
}
|
|
2530
|
+
}
|
|
2531
|
+
catch (re) {
|
|
2532
|
+
if (re instanceof antlr.RecognitionException) {
|
|
2533
|
+
this.errorHandler.reportError(this, re);
|
|
2534
|
+
this.errorHandler.recover(this, re);
|
|
2535
|
+
}
|
|
2536
|
+
else {
|
|
2537
|
+
throw re;
|
|
2538
|
+
}
|
|
2539
|
+
}
|
|
2540
|
+
finally {
|
|
2541
|
+
this.exitRule();
|
|
2542
|
+
}
|
|
2543
|
+
return localContext;
|
|
2544
|
+
}
|
|
2527
2545
|
create_component_expr() {
|
|
2528
2546
|
let localContext = new Create_component_exprContext(this.context, this.state);
|
|
2529
|
-
this.enterRule(localContext,
|
|
2547
|
+
this.enterRule(localContext, 84, CircuitScriptParser.RULE_create_component_expr);
|
|
2530
2548
|
let _la;
|
|
2531
2549
|
try {
|
|
2532
2550
|
this.enterOuterAlt(localContext, 1);
|
|
2533
2551
|
{
|
|
2534
|
-
this.state =
|
|
2552
|
+
this.state = 475;
|
|
2535
2553
|
this.match(CircuitScriptParser.Create);
|
|
2536
|
-
this.state =
|
|
2554
|
+
this.state = 476;
|
|
2537
2555
|
this.match(CircuitScriptParser.Component);
|
|
2538
|
-
this.state =
|
|
2556
|
+
this.state = 477;
|
|
2539
2557
|
this.match(CircuitScriptParser.T__0);
|
|
2540
|
-
this.state =
|
|
2558
|
+
this.state = 478;
|
|
2541
2559
|
this.match(CircuitScriptParser.NEWLINE);
|
|
2542
|
-
this.state =
|
|
2560
|
+
this.state = 479;
|
|
2543
2561
|
this.match(CircuitScriptParser.INDENT);
|
|
2544
|
-
this.state =
|
|
2562
|
+
this.state = 482;
|
|
2545
2563
|
this.errorHandler.sync(this);
|
|
2546
2564
|
_la = this.tokenStream.LA(1);
|
|
2547
2565
|
do {
|
|
2548
2566
|
{
|
|
2549
|
-
this.state =
|
|
2567
|
+
this.state = 482;
|
|
2550
2568
|
this.errorHandler.sync(this);
|
|
2551
2569
|
switch (this.tokenStream.LA(1)) {
|
|
2552
2570
|
case CircuitScriptParser.NEWLINE:
|
|
2553
2571
|
{
|
|
2554
|
-
this.state =
|
|
2572
|
+
this.state = 480;
|
|
2555
2573
|
this.match(CircuitScriptParser.NEWLINE);
|
|
2556
2574
|
}
|
|
2557
2575
|
break;
|
|
@@ -2559,7 +2577,7 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2559
2577
|
case CircuitScriptParser.INTEGER_VALUE:
|
|
2560
2578
|
case CircuitScriptParser.STRING_VALUE:
|
|
2561
2579
|
{
|
|
2562
|
-
this.state =
|
|
2580
|
+
this.state = 481;
|
|
2563
2581
|
this.property_expr();
|
|
2564
2582
|
}
|
|
2565
2583
|
break;
|
|
@@ -2567,11 +2585,11 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2567
2585
|
throw new antlr.NoViableAltException(this);
|
|
2568
2586
|
}
|
|
2569
2587
|
}
|
|
2570
|
-
this.state =
|
|
2588
|
+
this.state = 484;
|
|
2571
2589
|
this.errorHandler.sync(this);
|
|
2572
2590
|
_la = this.tokenStream.LA(1);
|
|
2573
|
-
} while (((((_la -
|
|
2574
|
-
this.state =
|
|
2591
|
+
} while (((((_la - 45)) & ~0x1F) === 0 && ((1 << (_la - 45)) & 275) !== 0));
|
|
2592
|
+
this.state = 486;
|
|
2575
2593
|
this.match(CircuitScriptParser.DEDENT);
|
|
2576
2594
|
}
|
|
2577
2595
|
}
|
|
@@ -2591,39 +2609,39 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2591
2609
|
}
|
|
2592
2610
|
create_graphic_expr() {
|
|
2593
2611
|
let localContext = new Create_graphic_exprContext(this.context, this.state);
|
|
2594
|
-
this.enterRule(localContext,
|
|
2612
|
+
this.enterRule(localContext, 86, CircuitScriptParser.RULE_create_graphic_expr);
|
|
2595
2613
|
let _la;
|
|
2596
2614
|
try {
|
|
2597
2615
|
this.enterOuterAlt(localContext, 1);
|
|
2598
2616
|
{
|
|
2599
|
-
this.state =
|
|
2617
|
+
this.state = 488;
|
|
2600
2618
|
this.match(CircuitScriptParser.Create);
|
|
2601
|
-
this.state =
|
|
2619
|
+
this.state = 489;
|
|
2602
2620
|
this.match(CircuitScriptParser.Graphic);
|
|
2603
|
-
this.state =
|
|
2621
|
+
this.state = 490;
|
|
2604
2622
|
this.match(CircuitScriptParser.T__0);
|
|
2605
|
-
this.state =
|
|
2623
|
+
this.state = 491;
|
|
2606
2624
|
this.match(CircuitScriptParser.NEWLINE);
|
|
2607
|
-
this.state =
|
|
2625
|
+
this.state = 492;
|
|
2608
2626
|
this.match(CircuitScriptParser.INDENT);
|
|
2609
|
-
this.state =
|
|
2627
|
+
this.state = 495;
|
|
2610
2628
|
this.errorHandler.sync(this);
|
|
2611
2629
|
_la = this.tokenStream.LA(1);
|
|
2612
2630
|
do {
|
|
2613
2631
|
{
|
|
2614
|
-
this.state =
|
|
2632
|
+
this.state = 495;
|
|
2615
2633
|
this.errorHandler.sync(this);
|
|
2616
2634
|
switch (this.tokenStream.LA(1)) {
|
|
2617
2635
|
case CircuitScriptParser.NEWLINE:
|
|
2618
2636
|
{
|
|
2619
|
-
this.state =
|
|
2637
|
+
this.state = 493;
|
|
2620
2638
|
this.match(CircuitScriptParser.NEWLINE);
|
|
2621
2639
|
}
|
|
2622
2640
|
break;
|
|
2623
2641
|
case CircuitScriptParser.Pin:
|
|
2624
2642
|
case CircuitScriptParser.ID:
|
|
2625
2643
|
{
|
|
2626
|
-
this.state =
|
|
2644
|
+
this.state = 494;
|
|
2627
2645
|
this.graphic_expr();
|
|
2628
2646
|
}
|
|
2629
2647
|
break;
|
|
@@ -2631,11 +2649,78 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2631
2649
|
throw new antlr.NoViableAltException(this);
|
|
2632
2650
|
}
|
|
2633
2651
|
}
|
|
2634
|
-
this.state =
|
|
2652
|
+
this.state = 497;
|
|
2653
|
+
this.errorHandler.sync(this);
|
|
2654
|
+
_la = this.tokenStream.LA(1);
|
|
2655
|
+
} while (_la === 15 || _la === 45 || _la === 53);
|
|
2656
|
+
this.state = 499;
|
|
2657
|
+
this.match(CircuitScriptParser.DEDENT);
|
|
2658
|
+
}
|
|
2659
|
+
}
|
|
2660
|
+
catch (re) {
|
|
2661
|
+
if (re instanceof antlr.RecognitionException) {
|
|
2662
|
+
this.errorHandler.reportError(this, re);
|
|
2663
|
+
this.errorHandler.recover(this, re);
|
|
2664
|
+
}
|
|
2665
|
+
else {
|
|
2666
|
+
throw re;
|
|
2667
|
+
}
|
|
2668
|
+
}
|
|
2669
|
+
finally {
|
|
2670
|
+
this.exitRule();
|
|
2671
|
+
}
|
|
2672
|
+
return localContext;
|
|
2673
|
+
}
|
|
2674
|
+
create_module_expr() {
|
|
2675
|
+
let localContext = new Create_module_exprContext(this.context, this.state);
|
|
2676
|
+
this.enterRule(localContext, 88, CircuitScriptParser.RULE_create_module_expr);
|
|
2677
|
+
let _la;
|
|
2678
|
+
try {
|
|
2679
|
+
this.enterOuterAlt(localContext, 1);
|
|
2680
|
+
{
|
|
2681
|
+
this.state = 501;
|
|
2682
|
+
this.match(CircuitScriptParser.Create);
|
|
2683
|
+
this.state = 502;
|
|
2684
|
+
this.match(CircuitScriptParser.Module);
|
|
2685
|
+
this.state = 503;
|
|
2686
|
+
this.match(CircuitScriptParser.T__0);
|
|
2687
|
+
this.state = 504;
|
|
2688
|
+
this.match(CircuitScriptParser.NEWLINE);
|
|
2689
|
+
this.state = 505;
|
|
2690
|
+
this.match(CircuitScriptParser.INDENT);
|
|
2691
|
+
this.state = 509;
|
|
2692
|
+
this.errorHandler.sync(this);
|
|
2693
|
+
_la = this.tokenStream.LA(1);
|
|
2694
|
+
do {
|
|
2695
|
+
{
|
|
2696
|
+
this.state = 509;
|
|
2697
|
+
this.errorHandler.sync(this);
|
|
2698
|
+
switch (this.interpreter.adaptivePredict(this.tokenStream, 54, this.context)) {
|
|
2699
|
+
case 1:
|
|
2700
|
+
{
|
|
2701
|
+
this.state = 506;
|
|
2702
|
+
this.match(CircuitScriptParser.NEWLINE);
|
|
2703
|
+
}
|
|
2704
|
+
break;
|
|
2705
|
+
case 2:
|
|
2706
|
+
{
|
|
2707
|
+
this.state = 507;
|
|
2708
|
+
this.property_expr();
|
|
2709
|
+
}
|
|
2710
|
+
break;
|
|
2711
|
+
case 3:
|
|
2712
|
+
{
|
|
2713
|
+
this.state = 508;
|
|
2714
|
+
this.property_block_expr();
|
|
2715
|
+
}
|
|
2716
|
+
break;
|
|
2717
|
+
}
|
|
2718
|
+
}
|
|
2719
|
+
this.state = 511;
|
|
2635
2720
|
this.errorHandler.sync(this);
|
|
2636
2721
|
_la = this.tokenStream.LA(1);
|
|
2637
|
-
} while (_la
|
|
2638
|
-
this.state =
|
|
2722
|
+
} while (((((_la - 45)) & ~0x1F) === 0 && ((1 << (_la - 45)) & 275) !== 0));
|
|
2723
|
+
this.state = 513;
|
|
2639
2724
|
this.match(CircuitScriptParser.DEDENT);
|
|
2640
2725
|
}
|
|
2641
2726
|
}
|
|
@@ -2655,27 +2740,27 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2655
2740
|
}
|
|
2656
2741
|
nested_properties_inner() {
|
|
2657
2742
|
let localContext = new Nested_properties_innerContext(this.context, this.state);
|
|
2658
|
-
this.enterRule(localContext,
|
|
2743
|
+
this.enterRule(localContext, 90, CircuitScriptParser.RULE_nested_properties_inner);
|
|
2659
2744
|
let _la;
|
|
2660
2745
|
try {
|
|
2661
2746
|
this.enterOuterAlt(localContext, 1);
|
|
2662
2747
|
{
|
|
2663
2748
|
{
|
|
2664
|
-
this.state =
|
|
2749
|
+
this.state = 515;
|
|
2665
2750
|
this.match(CircuitScriptParser.NEWLINE);
|
|
2666
|
-
this.state =
|
|
2751
|
+
this.state = 516;
|
|
2667
2752
|
this.match(CircuitScriptParser.INDENT);
|
|
2668
|
-
this.state =
|
|
2753
|
+
this.state = 519;
|
|
2669
2754
|
this.errorHandler.sync(this);
|
|
2670
2755
|
_la = this.tokenStream.LA(1);
|
|
2671
2756
|
do {
|
|
2672
2757
|
{
|
|
2673
|
-
this.state =
|
|
2758
|
+
this.state = 519;
|
|
2674
2759
|
this.errorHandler.sync(this);
|
|
2675
2760
|
switch (this.tokenStream.LA(1)) {
|
|
2676
2761
|
case CircuitScriptParser.NEWLINE:
|
|
2677
2762
|
{
|
|
2678
|
-
this.state =
|
|
2763
|
+
this.state = 517;
|
|
2679
2764
|
this.match(CircuitScriptParser.NEWLINE);
|
|
2680
2765
|
}
|
|
2681
2766
|
break;
|
|
@@ -2683,7 +2768,7 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2683
2768
|
case CircuitScriptParser.INTEGER_VALUE:
|
|
2684
2769
|
case CircuitScriptParser.STRING_VALUE:
|
|
2685
2770
|
{
|
|
2686
|
-
this.state =
|
|
2771
|
+
this.state = 518;
|
|
2687
2772
|
this.property_expr();
|
|
2688
2773
|
}
|
|
2689
2774
|
break;
|
|
@@ -2691,11 +2776,11 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2691
2776
|
throw new antlr.NoViableAltException(this);
|
|
2692
2777
|
}
|
|
2693
2778
|
}
|
|
2694
|
-
this.state =
|
|
2779
|
+
this.state = 521;
|
|
2695
2780
|
this.errorHandler.sync(this);
|
|
2696
2781
|
_la = this.tokenStream.LA(1);
|
|
2697
|
-
} while (((((_la -
|
|
2698
|
-
this.state =
|
|
2782
|
+
} while (((((_la - 45)) & ~0x1F) === 0 && ((1 << (_la - 45)) & 275) !== 0));
|
|
2783
|
+
this.state = 523;
|
|
2699
2784
|
this.match(CircuitScriptParser.DEDENT);
|
|
2700
2785
|
}
|
|
2701
2786
|
}
|
|
@@ -2716,52 +2801,52 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2716
2801
|
}
|
|
2717
2802
|
graphic_expr() {
|
|
2718
2803
|
let localContext = new Graphic_exprContext(this.context, this.state);
|
|
2719
|
-
this.enterRule(localContext,
|
|
2804
|
+
this.enterRule(localContext, 92, CircuitScriptParser.RULE_graphic_expr);
|
|
2720
2805
|
let _la;
|
|
2721
2806
|
try {
|
|
2722
2807
|
this.enterOuterAlt(localContext, 1);
|
|
2723
2808
|
{
|
|
2724
|
-
this.state =
|
|
2809
|
+
this.state = 525;
|
|
2725
2810
|
localContext._command = this.tokenStream.LT(1);
|
|
2726
2811
|
_la = this.tokenStream.LA(1);
|
|
2727
|
-
if (!(_la ===
|
|
2812
|
+
if (!(_la === 15 || _la === 45)) {
|
|
2728
2813
|
localContext._command = this.errorHandler.recoverInline(this);
|
|
2729
2814
|
}
|
|
2730
2815
|
else {
|
|
2731
2816
|
this.errorHandler.reportMatch(this);
|
|
2732
2817
|
this.consume();
|
|
2733
2818
|
}
|
|
2734
|
-
this.state =
|
|
2819
|
+
this.state = 527;
|
|
2735
2820
|
this.errorHandler.sync(this);
|
|
2736
2821
|
_la = this.tokenStream.LA(1);
|
|
2737
2822
|
if (_la === 1) {
|
|
2738
2823
|
{
|
|
2739
|
-
this.state =
|
|
2824
|
+
this.state = 526;
|
|
2740
2825
|
this.match(CircuitScriptParser.T__0);
|
|
2741
2826
|
}
|
|
2742
2827
|
}
|
|
2743
|
-
this.state =
|
|
2828
|
+
this.state = 535;
|
|
2744
2829
|
this.errorHandler.sync(this);
|
|
2745
2830
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 59, this.context)) {
|
|
2746
2831
|
case 1:
|
|
2747
2832
|
{
|
|
2748
|
-
this.state =
|
|
2833
|
+
this.state = 529;
|
|
2749
2834
|
this.parameters();
|
|
2750
2835
|
}
|
|
2751
2836
|
break;
|
|
2752
2837
|
case 2:
|
|
2753
2838
|
{
|
|
2754
|
-
this.state =
|
|
2839
|
+
this.state = 530;
|
|
2755
2840
|
this.match(CircuitScriptParser.OPEN_PAREN);
|
|
2756
|
-
this.state =
|
|
2841
|
+
this.state = 531;
|
|
2757
2842
|
this.parameters();
|
|
2758
|
-
this.state =
|
|
2843
|
+
this.state = 532;
|
|
2759
2844
|
this.match(CircuitScriptParser.CLOSE_PAREN);
|
|
2760
2845
|
}
|
|
2761
2846
|
break;
|
|
2762
2847
|
case 3:
|
|
2763
2848
|
{
|
|
2764
|
-
this.state =
|
|
2849
|
+
this.state = 534;
|
|
2765
2850
|
this.nested_properties_inner();
|
|
2766
2851
|
}
|
|
2767
2852
|
break;
|
|
@@ -2784,15 +2869,15 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2784
2869
|
}
|
|
2785
2870
|
property_expr() {
|
|
2786
2871
|
let localContext = new Property_exprContext(this.context, this.state);
|
|
2787
|
-
this.enterRule(localContext,
|
|
2872
|
+
this.enterRule(localContext, 94, CircuitScriptParser.RULE_property_expr);
|
|
2788
2873
|
try {
|
|
2789
2874
|
this.enterOuterAlt(localContext, 1);
|
|
2790
2875
|
{
|
|
2791
|
-
this.state =
|
|
2876
|
+
this.state = 537;
|
|
2792
2877
|
this.property_key_expr();
|
|
2793
|
-
this.state =
|
|
2878
|
+
this.state = 538;
|
|
2794
2879
|
this.match(CircuitScriptParser.T__0);
|
|
2795
|
-
this.state =
|
|
2880
|
+
this.state = 539;
|
|
2796
2881
|
this.property_value_expr();
|
|
2797
2882
|
}
|
|
2798
2883
|
}
|
|
@@ -2812,14 +2897,14 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2812
2897
|
}
|
|
2813
2898
|
property_key_expr() {
|
|
2814
2899
|
let localContext = new Property_key_exprContext(this.context, this.state);
|
|
2815
|
-
this.enterRule(localContext,
|
|
2900
|
+
this.enterRule(localContext, 96, CircuitScriptParser.RULE_property_key_expr);
|
|
2816
2901
|
let _la;
|
|
2817
2902
|
try {
|
|
2818
2903
|
this.enterOuterAlt(localContext, 1);
|
|
2819
2904
|
{
|
|
2820
|
-
this.state =
|
|
2905
|
+
this.state = 541;
|
|
2821
2906
|
_la = this.tokenStream.LA(1);
|
|
2822
|
-
if (!(((((_la -
|
|
2907
|
+
if (!(((((_la - 45)) & ~0x1F) === 0 && ((1 << (_la - 45)) & 19) !== 0))) {
|
|
2823
2908
|
this.errorHandler.recoverInline(this);
|
|
2824
2909
|
}
|
|
2825
2910
|
else {
|
|
@@ -2844,17 +2929,17 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2844
2929
|
}
|
|
2845
2930
|
property_value_expr() {
|
|
2846
2931
|
let localContext = new Property_value_exprContext(this.context, this.state);
|
|
2847
|
-
this.enterRule(localContext,
|
|
2932
|
+
this.enterRule(localContext, 98, CircuitScriptParser.RULE_property_value_expr);
|
|
2848
2933
|
let _la;
|
|
2849
2934
|
try {
|
|
2850
|
-
this.state =
|
|
2935
|
+
this.state = 552;
|
|
2851
2936
|
this.errorHandler.sync(this);
|
|
2852
2937
|
switch (this.tokenStream.LA(1)) {
|
|
2853
2938
|
case CircuitScriptParser.NEWLINE:
|
|
2854
2939
|
localContext = new Nested_propertiesContext(localContext);
|
|
2855
2940
|
this.enterOuterAlt(localContext, 1);
|
|
2856
2941
|
{
|
|
2857
|
-
this.state =
|
|
2942
|
+
this.state = 543;
|
|
2858
2943
|
this.nested_properties_inner();
|
|
2859
2944
|
}
|
|
2860
2945
|
break;
|
|
@@ -2875,21 +2960,21 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2875
2960
|
localContext = new Single_line_propertyContext(localContext);
|
|
2876
2961
|
this.enterOuterAlt(localContext, 2);
|
|
2877
2962
|
{
|
|
2878
|
-
this.state =
|
|
2963
|
+
this.state = 544;
|
|
2879
2964
|
this.data_expr(0);
|
|
2880
|
-
this.state =
|
|
2965
|
+
this.state = 549;
|
|
2881
2966
|
this.errorHandler.sync(this);
|
|
2882
2967
|
_la = this.tokenStream.LA(1);
|
|
2883
2968
|
while (_la === 2) {
|
|
2884
2969
|
{
|
|
2885
2970
|
{
|
|
2886
|
-
this.state =
|
|
2971
|
+
this.state = 545;
|
|
2887
2972
|
this.match(CircuitScriptParser.T__1);
|
|
2888
|
-
this.state =
|
|
2973
|
+
this.state = 546;
|
|
2889
2974
|
this.data_expr(0);
|
|
2890
2975
|
}
|
|
2891
2976
|
}
|
|
2892
|
-
this.state =
|
|
2977
|
+
this.state = 551;
|
|
2893
2978
|
this.errorHandler.sync(this);
|
|
2894
2979
|
_la = this.tokenStream.LA(1);
|
|
2895
2980
|
}
|
|
@@ -2915,15 +3000,15 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2915
3000
|
}
|
|
2916
3001
|
blank_expr() {
|
|
2917
3002
|
let localContext = new Blank_exprContext(this.context, this.state);
|
|
2918
|
-
this.enterRule(localContext,
|
|
3003
|
+
this.enterRule(localContext, 100, CircuitScriptParser.RULE_blank_expr);
|
|
2919
3004
|
try {
|
|
2920
3005
|
this.enterOuterAlt(localContext, 1);
|
|
2921
3006
|
{
|
|
2922
|
-
this.state =
|
|
3007
|
+
this.state = 554;
|
|
2923
3008
|
this.match(CircuitScriptParser.T__5);
|
|
2924
|
-
this.state =
|
|
3009
|
+
this.state = 555;
|
|
2925
3010
|
this.match(CircuitScriptParser.INTEGER_VALUE);
|
|
2926
|
-
this.state =
|
|
3011
|
+
this.state = 556;
|
|
2927
3012
|
this.match(CircuitScriptParser.T__6);
|
|
2928
3013
|
}
|
|
2929
3014
|
}
|
|
@@ -2943,29 +3028,29 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2943
3028
|
}
|
|
2944
3029
|
wire_atom_expr() {
|
|
2945
3030
|
let localContext = new Wire_atom_exprContext(this.context, this.state);
|
|
2946
|
-
this.enterRule(localContext,
|
|
3031
|
+
this.enterRule(localContext, 102, CircuitScriptParser.RULE_wire_atom_expr);
|
|
2947
3032
|
try {
|
|
2948
|
-
this.state =
|
|
3033
|
+
this.state = 564;
|
|
2949
3034
|
this.errorHandler.sync(this);
|
|
2950
3035
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 63, this.context)) {
|
|
2951
3036
|
case 1:
|
|
2952
3037
|
localContext = new Wire_expr_direction_valueContext(localContext);
|
|
2953
3038
|
this.enterOuterAlt(localContext, 1);
|
|
2954
3039
|
{
|
|
2955
|
-
this.state =
|
|
3040
|
+
this.state = 558;
|
|
2956
3041
|
this.match(CircuitScriptParser.ID);
|
|
2957
|
-
this.state =
|
|
3042
|
+
this.state = 561;
|
|
2958
3043
|
this.errorHandler.sync(this);
|
|
2959
3044
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 62, this.context)) {
|
|
2960
3045
|
case 1:
|
|
2961
3046
|
{
|
|
2962
|
-
this.state =
|
|
3047
|
+
this.state = 559;
|
|
2963
3048
|
this.match(CircuitScriptParser.INTEGER_VALUE);
|
|
2964
3049
|
}
|
|
2965
3050
|
break;
|
|
2966
3051
|
case 2:
|
|
2967
3052
|
{
|
|
2968
|
-
this.state =
|
|
3053
|
+
this.state = 560;
|
|
2969
3054
|
this.data_expr(0);
|
|
2970
3055
|
}
|
|
2971
3056
|
break;
|
|
@@ -2976,7 +3061,7 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2976
3061
|
localContext = new Wire_expr_direction_onlyContext(localContext);
|
|
2977
3062
|
this.enterOuterAlt(localContext, 2);
|
|
2978
3063
|
{
|
|
2979
|
-
this.state =
|
|
3064
|
+
this.state = 563;
|
|
2980
3065
|
this.match(CircuitScriptParser.ID);
|
|
2981
3066
|
}
|
|
2982
3067
|
break;
|
|
@@ -2998,26 +3083,26 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
2998
3083
|
}
|
|
2999
3084
|
wire_expr() {
|
|
3000
3085
|
let localContext = new Wire_exprContext(this.context, this.state);
|
|
3001
|
-
this.enterRule(localContext,
|
|
3086
|
+
this.enterRule(localContext, 104, CircuitScriptParser.RULE_wire_expr);
|
|
3002
3087
|
try {
|
|
3003
3088
|
let alternative;
|
|
3004
3089
|
this.enterOuterAlt(localContext, 1);
|
|
3005
3090
|
{
|
|
3006
|
-
this.state =
|
|
3091
|
+
this.state = 566;
|
|
3007
3092
|
this.match(CircuitScriptParser.Wire);
|
|
3008
|
-
this.state =
|
|
3093
|
+
this.state = 570;
|
|
3009
3094
|
this.errorHandler.sync(this);
|
|
3010
3095
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 64, this.context);
|
|
3011
3096
|
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
|
|
3012
3097
|
if (alternative === 1) {
|
|
3013
3098
|
{
|
|
3014
3099
|
{
|
|
3015
|
-
this.state =
|
|
3100
|
+
this.state = 567;
|
|
3016
3101
|
this.wire_atom_expr();
|
|
3017
3102
|
}
|
|
3018
3103
|
}
|
|
3019
3104
|
}
|
|
3020
|
-
this.state =
|
|
3105
|
+
this.state = 572;
|
|
3021
3106
|
this.errorHandler.sync(this);
|
|
3022
3107
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 64, this.context);
|
|
3023
3108
|
}
|
|
@@ -3039,13 +3124,13 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
3039
3124
|
}
|
|
3040
3125
|
point_expr() {
|
|
3041
3126
|
let localContext = new Point_exprContext(this.context, this.state);
|
|
3042
|
-
this.enterRule(localContext,
|
|
3127
|
+
this.enterRule(localContext, 106, CircuitScriptParser.RULE_point_expr);
|
|
3043
3128
|
try {
|
|
3044
3129
|
this.enterOuterAlt(localContext, 1);
|
|
3045
3130
|
{
|
|
3046
|
-
this.state =
|
|
3131
|
+
this.state = 573;
|
|
3047
3132
|
this.match(CircuitScriptParser.Point);
|
|
3048
|
-
this.state =
|
|
3133
|
+
this.state = 574;
|
|
3049
3134
|
this.match(CircuitScriptParser.ID);
|
|
3050
3135
|
}
|
|
3051
3136
|
}
|
|
@@ -3065,13 +3150,13 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
3065
3150
|
}
|
|
3066
3151
|
import_expr() {
|
|
3067
3152
|
let localContext = new Import_exprContext(this.context, this.state);
|
|
3068
|
-
this.enterRule(localContext,
|
|
3153
|
+
this.enterRule(localContext, 108, CircuitScriptParser.RULE_import_expr);
|
|
3069
3154
|
try {
|
|
3070
3155
|
this.enterOuterAlt(localContext, 1);
|
|
3071
3156
|
{
|
|
3072
|
-
this.state =
|
|
3157
|
+
this.state = 576;
|
|
3073
3158
|
this.match(CircuitScriptParser.Import);
|
|
3074
|
-
this.state =
|
|
3159
|
+
this.state = 577;
|
|
3075
3160
|
this.match(CircuitScriptParser.ID);
|
|
3076
3161
|
}
|
|
3077
3162
|
}
|
|
@@ -3091,65 +3176,16 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
3091
3176
|
}
|
|
3092
3177
|
frame_expr() {
|
|
3093
3178
|
let localContext = new Frame_exprContext(this.context, this.state);
|
|
3094
|
-
this.enterRule(localContext,
|
|
3095
|
-
let _la;
|
|
3179
|
+
this.enterRule(localContext, 110, CircuitScriptParser.RULE_frame_expr);
|
|
3096
3180
|
try {
|
|
3097
3181
|
this.enterOuterAlt(localContext, 1);
|
|
3098
3182
|
{
|
|
3099
|
-
this.state =
|
|
3183
|
+
this.state = 579;
|
|
3100
3184
|
this.match(CircuitScriptParser.Frame);
|
|
3101
|
-
this.state =
|
|
3185
|
+
this.state = 580;
|
|
3102
3186
|
this.match(CircuitScriptParser.T__0);
|
|
3103
|
-
this.state =
|
|
3104
|
-
this.
|
|
3105
|
-
this.state = 563;
|
|
3106
|
-
this.match(CircuitScriptParser.INDENT);
|
|
3107
|
-
this.state = 566;
|
|
3108
|
-
this.errorHandler.sync(this);
|
|
3109
|
-
_la = this.tokenStream.LA(1);
|
|
3110
|
-
do {
|
|
3111
|
-
{
|
|
3112
|
-
this.state = 566;
|
|
3113
|
-
this.errorHandler.sync(this);
|
|
3114
|
-
switch (this.tokenStream.LA(1)) {
|
|
3115
|
-
case CircuitScriptParser.NEWLINE:
|
|
3116
|
-
{
|
|
3117
|
-
this.state = 564;
|
|
3118
|
-
this.match(CircuitScriptParser.NEWLINE);
|
|
3119
|
-
}
|
|
3120
|
-
break;
|
|
3121
|
-
case CircuitScriptParser.T__3:
|
|
3122
|
-
case CircuitScriptParser.Break:
|
|
3123
|
-
case CircuitScriptParser.Branch:
|
|
3124
|
-
case CircuitScriptParser.Wire:
|
|
3125
|
-
case CircuitScriptParser.Add:
|
|
3126
|
-
case CircuitScriptParser.At:
|
|
3127
|
-
case CircuitScriptParser.To:
|
|
3128
|
-
case CircuitScriptParser.Point:
|
|
3129
|
-
case CircuitScriptParser.Join:
|
|
3130
|
-
case CircuitScriptParser.Parallel:
|
|
3131
|
-
case CircuitScriptParser.Define:
|
|
3132
|
-
case CircuitScriptParser.Import:
|
|
3133
|
-
case CircuitScriptParser.If:
|
|
3134
|
-
case CircuitScriptParser.Frame:
|
|
3135
|
-
case CircuitScriptParser.Addition:
|
|
3136
|
-
case CircuitScriptParser.Divide:
|
|
3137
|
-
case CircuitScriptParser.ID:
|
|
3138
|
-
{
|
|
3139
|
-
this.state = 565;
|
|
3140
|
-
this.expression();
|
|
3141
|
-
}
|
|
3142
|
-
break;
|
|
3143
|
-
default:
|
|
3144
|
-
throw new antlr.NoViableAltException(this);
|
|
3145
|
-
}
|
|
3146
|
-
}
|
|
3147
|
-
this.state = 568;
|
|
3148
|
-
this.errorHandler.sync(this);
|
|
3149
|
-
_la = this.tokenStream.LA(1);
|
|
3150
|
-
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 165651216) !== 0) || ((((_la - 36)) & ~0x1F) === 0 && ((1 << (_la - 36)) & 65797) !== 0));
|
|
3151
|
-
this.state = 570;
|
|
3152
|
-
this.match(CircuitScriptParser.DEDENT);
|
|
3187
|
+
this.state = 581;
|
|
3188
|
+
this.expressions_block();
|
|
3153
3189
|
}
|
|
3154
3190
|
}
|
|
3155
3191
|
catch (re) {
|
|
@@ -3168,90 +3204,42 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
3168
3204
|
}
|
|
3169
3205
|
if_expr() {
|
|
3170
3206
|
let localContext = new If_exprContext(this.context, this.state);
|
|
3171
|
-
this.enterRule(localContext,
|
|
3207
|
+
this.enterRule(localContext, 112, CircuitScriptParser.RULE_if_expr);
|
|
3172
3208
|
let _la;
|
|
3173
3209
|
try {
|
|
3174
3210
|
let alternative;
|
|
3175
3211
|
this.enterOuterAlt(localContext, 1);
|
|
3176
3212
|
{
|
|
3177
|
-
this.state =
|
|
3213
|
+
this.state = 583;
|
|
3178
3214
|
this.match(CircuitScriptParser.If);
|
|
3179
|
-
this.state =
|
|
3215
|
+
this.state = 584;
|
|
3180
3216
|
this.data_expr(0);
|
|
3181
|
-
this.state =
|
|
3217
|
+
this.state = 585;
|
|
3182
3218
|
this.match(CircuitScriptParser.T__0);
|
|
3183
|
-
this.state =
|
|
3184
|
-
this.
|
|
3185
|
-
this.state =
|
|
3186
|
-
this.match(CircuitScriptParser.INDENT);
|
|
3187
|
-
this.state = 579;
|
|
3188
|
-
this.errorHandler.sync(this);
|
|
3189
|
-
_la = this.tokenStream.LA(1);
|
|
3190
|
-
do {
|
|
3191
|
-
{
|
|
3192
|
-
this.state = 579;
|
|
3193
|
-
this.errorHandler.sync(this);
|
|
3194
|
-
switch (this.tokenStream.LA(1)) {
|
|
3195
|
-
case CircuitScriptParser.NEWLINE:
|
|
3196
|
-
{
|
|
3197
|
-
this.state = 577;
|
|
3198
|
-
this.match(CircuitScriptParser.NEWLINE);
|
|
3199
|
-
}
|
|
3200
|
-
break;
|
|
3201
|
-
case CircuitScriptParser.T__3:
|
|
3202
|
-
case CircuitScriptParser.Break:
|
|
3203
|
-
case CircuitScriptParser.Branch:
|
|
3204
|
-
case CircuitScriptParser.Wire:
|
|
3205
|
-
case CircuitScriptParser.Add:
|
|
3206
|
-
case CircuitScriptParser.At:
|
|
3207
|
-
case CircuitScriptParser.To:
|
|
3208
|
-
case CircuitScriptParser.Point:
|
|
3209
|
-
case CircuitScriptParser.Join:
|
|
3210
|
-
case CircuitScriptParser.Parallel:
|
|
3211
|
-
case CircuitScriptParser.Define:
|
|
3212
|
-
case CircuitScriptParser.Import:
|
|
3213
|
-
case CircuitScriptParser.If:
|
|
3214
|
-
case CircuitScriptParser.Frame:
|
|
3215
|
-
case CircuitScriptParser.Addition:
|
|
3216
|
-
case CircuitScriptParser.Divide:
|
|
3217
|
-
case CircuitScriptParser.ID:
|
|
3218
|
-
{
|
|
3219
|
-
this.state = 578;
|
|
3220
|
-
this.expression();
|
|
3221
|
-
}
|
|
3222
|
-
break;
|
|
3223
|
-
default:
|
|
3224
|
-
throw new antlr.NoViableAltException(this);
|
|
3225
|
-
}
|
|
3226
|
-
}
|
|
3227
|
-
this.state = 581;
|
|
3228
|
-
this.errorHandler.sync(this);
|
|
3229
|
-
_la = this.tokenStream.LA(1);
|
|
3230
|
-
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 165651216) !== 0) || ((((_la - 36)) & ~0x1F) === 0 && ((1 << (_la - 36)) & 65797) !== 0));
|
|
3231
|
-
this.state = 583;
|
|
3232
|
-
this.match(CircuitScriptParser.DEDENT);
|
|
3233
|
-
this.state = 587;
|
|
3219
|
+
this.state = 586;
|
|
3220
|
+
this.expressions_block();
|
|
3221
|
+
this.state = 590;
|
|
3234
3222
|
this.errorHandler.sync(this);
|
|
3235
|
-
alternative = this.interpreter.adaptivePredict(this.tokenStream,
|
|
3223
|
+
alternative = this.interpreter.adaptivePredict(this.tokenStream, 65, this.context);
|
|
3236
3224
|
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
|
|
3237
3225
|
if (alternative === 1) {
|
|
3238
3226
|
{
|
|
3239
3227
|
{
|
|
3240
|
-
this.state =
|
|
3228
|
+
this.state = 587;
|
|
3241
3229
|
this.if_inner_expr();
|
|
3242
3230
|
}
|
|
3243
3231
|
}
|
|
3244
3232
|
}
|
|
3245
|
-
this.state =
|
|
3233
|
+
this.state = 592;
|
|
3246
3234
|
this.errorHandler.sync(this);
|
|
3247
|
-
alternative = this.interpreter.adaptivePredict(this.tokenStream,
|
|
3235
|
+
alternative = this.interpreter.adaptivePredict(this.tokenStream, 65, this.context);
|
|
3248
3236
|
}
|
|
3249
|
-
this.state =
|
|
3237
|
+
this.state = 594;
|
|
3250
3238
|
this.errorHandler.sync(this);
|
|
3251
3239
|
_la = this.tokenStream.LA(1);
|
|
3252
|
-
if (_la ===
|
|
3240
|
+
if (_la === 26) {
|
|
3253
3241
|
{
|
|
3254
|
-
this.state =
|
|
3242
|
+
this.state = 593;
|
|
3255
3243
|
this.else_expr();
|
|
3256
3244
|
}
|
|
3257
3245
|
}
|
|
@@ -3273,69 +3261,20 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
3273
3261
|
}
|
|
3274
3262
|
if_inner_expr() {
|
|
3275
3263
|
let localContext = new If_inner_exprContext(this.context, this.state);
|
|
3276
|
-
this.enterRule(localContext,
|
|
3277
|
-
let _la;
|
|
3264
|
+
this.enterRule(localContext, 114, CircuitScriptParser.RULE_if_inner_expr);
|
|
3278
3265
|
try {
|
|
3279
3266
|
this.enterOuterAlt(localContext, 1);
|
|
3280
3267
|
{
|
|
3281
|
-
this.state = 593;
|
|
3282
|
-
this.match(CircuitScriptParser.Else);
|
|
3283
|
-
this.state = 594;
|
|
3284
|
-
this.match(CircuitScriptParser.If);
|
|
3285
|
-
this.state = 595;
|
|
3286
|
-
this.data_expr(0);
|
|
3287
3268
|
this.state = 596;
|
|
3288
|
-
this.match(CircuitScriptParser.
|
|
3289
|
-
this.state = 597;
|
|
3290
|
-
this.match(CircuitScriptParser.
|
|
3291
|
-
this.state = 598;
|
|
3292
|
-
this.
|
|
3293
|
-
this.state =
|
|
3294
|
-
this.
|
|
3295
|
-
|
|
3296
|
-
|
|
3297
|
-
{
|
|
3298
|
-
this.state = 601;
|
|
3299
|
-
this.errorHandler.sync(this);
|
|
3300
|
-
switch (this.tokenStream.LA(1)) {
|
|
3301
|
-
case CircuitScriptParser.NEWLINE:
|
|
3302
|
-
{
|
|
3303
|
-
this.state = 599;
|
|
3304
|
-
this.match(CircuitScriptParser.NEWLINE);
|
|
3305
|
-
}
|
|
3306
|
-
break;
|
|
3307
|
-
case CircuitScriptParser.T__3:
|
|
3308
|
-
case CircuitScriptParser.Break:
|
|
3309
|
-
case CircuitScriptParser.Branch:
|
|
3310
|
-
case CircuitScriptParser.Wire:
|
|
3311
|
-
case CircuitScriptParser.Add:
|
|
3312
|
-
case CircuitScriptParser.At:
|
|
3313
|
-
case CircuitScriptParser.To:
|
|
3314
|
-
case CircuitScriptParser.Point:
|
|
3315
|
-
case CircuitScriptParser.Join:
|
|
3316
|
-
case CircuitScriptParser.Parallel:
|
|
3317
|
-
case CircuitScriptParser.Define:
|
|
3318
|
-
case CircuitScriptParser.Import:
|
|
3319
|
-
case CircuitScriptParser.If:
|
|
3320
|
-
case CircuitScriptParser.Frame:
|
|
3321
|
-
case CircuitScriptParser.Addition:
|
|
3322
|
-
case CircuitScriptParser.Divide:
|
|
3323
|
-
case CircuitScriptParser.ID:
|
|
3324
|
-
{
|
|
3325
|
-
this.state = 600;
|
|
3326
|
-
this.expression();
|
|
3327
|
-
}
|
|
3328
|
-
break;
|
|
3329
|
-
default:
|
|
3330
|
-
throw new antlr.NoViableAltException(this);
|
|
3331
|
-
}
|
|
3332
|
-
}
|
|
3333
|
-
this.state = 603;
|
|
3334
|
-
this.errorHandler.sync(this);
|
|
3335
|
-
_la = this.tokenStream.LA(1);
|
|
3336
|
-
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 165651216) !== 0) || ((((_la - 36)) & ~0x1F) === 0 && ((1 << (_la - 36)) & 65797) !== 0));
|
|
3337
|
-
this.state = 605;
|
|
3338
|
-
this.match(CircuitScriptParser.DEDENT);
|
|
3269
|
+
this.match(CircuitScriptParser.Else);
|
|
3270
|
+
this.state = 597;
|
|
3271
|
+
this.match(CircuitScriptParser.If);
|
|
3272
|
+
this.state = 598;
|
|
3273
|
+
this.data_expr(0);
|
|
3274
|
+
this.state = 599;
|
|
3275
|
+
this.match(CircuitScriptParser.T__0);
|
|
3276
|
+
this.state = 600;
|
|
3277
|
+
this.expressions_block();
|
|
3339
3278
|
}
|
|
3340
3279
|
}
|
|
3341
3280
|
catch (re) {
|
|
@@ -3354,65 +3293,16 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
3354
3293
|
}
|
|
3355
3294
|
else_expr() {
|
|
3356
3295
|
let localContext = new Else_exprContext(this.context, this.state);
|
|
3357
|
-
this.enterRule(localContext,
|
|
3358
|
-
let _la;
|
|
3296
|
+
this.enterRule(localContext, 116, CircuitScriptParser.RULE_else_expr);
|
|
3359
3297
|
try {
|
|
3360
3298
|
this.enterOuterAlt(localContext, 1);
|
|
3361
3299
|
{
|
|
3362
|
-
this.state =
|
|
3300
|
+
this.state = 602;
|
|
3363
3301
|
this.match(CircuitScriptParser.Else);
|
|
3364
|
-
this.state =
|
|
3302
|
+
this.state = 603;
|
|
3365
3303
|
this.match(CircuitScriptParser.T__0);
|
|
3366
|
-
this.state =
|
|
3367
|
-
this.
|
|
3368
|
-
this.state = 610;
|
|
3369
|
-
this.match(CircuitScriptParser.INDENT);
|
|
3370
|
-
this.state = 613;
|
|
3371
|
-
this.errorHandler.sync(this);
|
|
3372
|
-
_la = this.tokenStream.LA(1);
|
|
3373
|
-
do {
|
|
3374
|
-
{
|
|
3375
|
-
this.state = 613;
|
|
3376
|
-
this.errorHandler.sync(this);
|
|
3377
|
-
switch (this.tokenStream.LA(1)) {
|
|
3378
|
-
case CircuitScriptParser.NEWLINE:
|
|
3379
|
-
{
|
|
3380
|
-
this.state = 611;
|
|
3381
|
-
this.match(CircuitScriptParser.NEWLINE);
|
|
3382
|
-
}
|
|
3383
|
-
break;
|
|
3384
|
-
case CircuitScriptParser.T__3:
|
|
3385
|
-
case CircuitScriptParser.Break:
|
|
3386
|
-
case CircuitScriptParser.Branch:
|
|
3387
|
-
case CircuitScriptParser.Wire:
|
|
3388
|
-
case CircuitScriptParser.Add:
|
|
3389
|
-
case CircuitScriptParser.At:
|
|
3390
|
-
case CircuitScriptParser.To:
|
|
3391
|
-
case CircuitScriptParser.Point:
|
|
3392
|
-
case CircuitScriptParser.Join:
|
|
3393
|
-
case CircuitScriptParser.Parallel:
|
|
3394
|
-
case CircuitScriptParser.Define:
|
|
3395
|
-
case CircuitScriptParser.Import:
|
|
3396
|
-
case CircuitScriptParser.If:
|
|
3397
|
-
case CircuitScriptParser.Frame:
|
|
3398
|
-
case CircuitScriptParser.Addition:
|
|
3399
|
-
case CircuitScriptParser.Divide:
|
|
3400
|
-
case CircuitScriptParser.ID:
|
|
3401
|
-
{
|
|
3402
|
-
this.state = 612;
|
|
3403
|
-
this.expression();
|
|
3404
|
-
}
|
|
3405
|
-
break;
|
|
3406
|
-
default:
|
|
3407
|
-
throw new antlr.NoViableAltException(this);
|
|
3408
|
-
}
|
|
3409
|
-
}
|
|
3410
|
-
this.state = 615;
|
|
3411
|
-
this.errorHandler.sync(this);
|
|
3412
|
-
_la = this.tokenStream.LA(1);
|
|
3413
|
-
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 165651216) !== 0) || ((((_la - 36)) & ~0x1F) === 0 && ((1 << (_la - 36)) & 65797) !== 0));
|
|
3414
|
-
this.state = 617;
|
|
3415
|
-
this.match(CircuitScriptParser.DEDENT);
|
|
3304
|
+
this.state = 604;
|
|
3305
|
+
this.expressions_block();
|
|
3416
3306
|
}
|
|
3417
3307
|
}
|
|
3418
3308
|
catch (re) {
|
|
@@ -3431,7 +3321,7 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
3431
3321
|
}
|
|
3432
3322
|
sempred(localContext, ruleIndex, predIndex) {
|
|
3433
3323
|
switch (ruleIndex) {
|
|
3434
|
-
case
|
|
3324
|
+
case 29:
|
|
3435
3325
|
return this.data_expr_sempred(localContext, predIndex);
|
|
3436
3326
|
}
|
|
3437
3327
|
return true;
|
|
@@ -3439,18 +3329,18 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
3439
3329
|
data_expr_sempred(localContext, predIndex) {
|
|
3440
3330
|
switch (predIndex) {
|
|
3441
3331
|
case 0:
|
|
3442
|
-
return this.precpred(this.context,
|
|
3332
|
+
return this.precpred(this.context, 8);
|
|
3443
3333
|
case 1:
|
|
3444
|
-
return this.precpred(this.context,
|
|
3334
|
+
return this.precpred(this.context, 7);
|
|
3445
3335
|
case 2:
|
|
3446
|
-
return this.precpred(this.context,
|
|
3336
|
+
return this.precpred(this.context, 6);
|
|
3447
3337
|
case 3:
|
|
3448
|
-
return this.precpred(this.context,
|
|
3338
|
+
return this.precpred(this.context, 5);
|
|
3449
3339
|
}
|
|
3450
3340
|
return true;
|
|
3451
3341
|
}
|
|
3452
3342
|
static _serializedATN = [
|
|
3453
|
-
4, 1,
|
|
3343
|
+
4, 1, 56, 607, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2, 4, 7, 4, 2, 5, 7, 5, 2, 6, 7,
|
|
3454
3344
|
6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 2, 10, 7, 10, 2, 11, 7, 11, 2, 12, 7, 12, 2, 13, 7, 13,
|
|
3455
3345
|
2, 14, 7, 14, 2, 15, 7, 15, 2, 16, 7, 16, 2, 17, 7, 17, 2, 18, 7, 18, 2, 19, 7, 19, 2, 20,
|
|
3456
3346
|
7, 20, 2, 21, 7, 21, 2, 22, 7, 22, 2, 23, 7, 23, 2, 24, 7, 24, 2, 25, 7, 25, 2, 26, 7, 26,
|
|
@@ -3458,227 +3348,220 @@ export class CircuitScriptParser extends antlr.Parser {
|
|
|
3458
3348
|
7, 33, 2, 34, 7, 34, 2, 35, 7, 35, 2, 36, 7, 36, 2, 37, 7, 37, 2, 38, 7, 38, 2, 39, 7, 39,
|
|
3459
3349
|
2, 40, 7, 40, 2, 41, 7, 41, 2, 42, 7, 42, 2, 43, 7, 43, 2, 44, 7, 44, 2, 45, 7, 45, 2, 46,
|
|
3460
3350
|
7, 46, 2, 47, 7, 47, 2, 48, 7, 48, 2, 49, 7, 49, 2, 50, 7, 50, 2, 51, 7, 51, 2, 52, 7, 52,
|
|
3461
|
-
2, 53, 7, 53, 2, 54, 7, 54, 2, 55, 7, 55,
|
|
3462
|
-
1, 0,
|
|
3463
|
-
1, 1, 1, 1, 1, 1, 1, 1,
|
|
3464
|
-
|
|
3465
|
-
|
|
3466
|
-
|
|
3467
|
-
8,
|
|
3468
|
-
3,
|
|
3469
|
-
13, 1, 13,
|
|
3470
|
-
14,
|
|
3471
|
-
|
|
3472
|
-
15,
|
|
3473
|
-
16,
|
|
3474
|
-
|
|
3475
|
-
1, 20, 1, 20,
|
|
3476
|
-
|
|
3477
|
-
|
|
3478
|
-
|
|
3479
|
-
|
|
3480
|
-
1,
|
|
3481
|
-
1,
|
|
3482
|
-
|
|
3483
|
-
|
|
3484
|
-
|
|
3485
|
-
|
|
3486
|
-
|
|
3487
|
-
|
|
3488
|
-
|
|
3489
|
-
|
|
3490
|
-
|
|
3491
|
-
|
|
3492
|
-
|
|
3493
|
-
|
|
3494
|
-
|
|
3495
|
-
|
|
3496
|
-
|
|
3497
|
-
1,
|
|
3498
|
-
|
|
3499
|
-
|
|
3500
|
-
|
|
3501
|
-
52,
|
|
3502
|
-
|
|
3503
|
-
|
|
3504
|
-
|
|
3505
|
-
|
|
3506
|
-
|
|
3507
|
-
|
|
3508
|
-
|
|
3509
|
-
|
|
3510
|
-
0,
|
|
3511
|
-
|
|
3512
|
-
|
|
3513
|
-
0, 0, 0,
|
|
3514
|
-
|
|
3515
|
-
|
|
3516
|
-
1, 0, 0, 0,
|
|
3517
|
-
0, 0,
|
|
3518
|
-
|
|
3519
|
-
1, 0, 0, 0,
|
|
3520
|
-
0, 0,
|
|
3521
|
-
|
|
3522
|
-
|
|
3523
|
-
0,
|
|
3524
|
-
0,
|
|
3525
|
-
0,
|
|
3526
|
-
|
|
3527
|
-
0,
|
|
3528
|
-
3,
|
|
3529
|
-
|
|
3530
|
-
|
|
3531
|
-
|
|
3532
|
-
0,
|
|
3533
|
-
0,
|
|
3534
|
-
0,
|
|
3535
|
-
0,
|
|
3536
|
-
|
|
3537
|
-
|
|
3538
|
-
|
|
3539
|
-
|
|
3540
|
-
|
|
3541
|
-
|
|
3542
|
-
|
|
3543
|
-
|
|
3544
|
-
|
|
3545
|
-
|
|
3546
|
-
|
|
3547
|
-
|
|
3548
|
-
|
|
3549
|
-
|
|
3550
|
-
|
|
3551
|
-
|
|
3552
|
-
|
|
3553
|
-
|
|
3554
|
-
|
|
3555
|
-
|
|
3556
|
-
|
|
3557
|
-
|
|
3558
|
-
|
|
3559
|
-
|
|
3560
|
-
|
|
3561
|
-
|
|
3562
|
-
|
|
3563
|
-
0, 0,
|
|
3564
|
-
|
|
3565
|
-
1, 0, 0, 0,
|
|
3566
|
-
|
|
3567
|
-
|
|
3568
|
-
|
|
3569
|
-
|
|
3570
|
-
|
|
3571
|
-
|
|
3572
|
-
1, 0, 0, 0,
|
|
3573
|
-
|
|
3574
|
-
1, 0, 0, 0,
|
|
3575
|
-
3,
|
|
3576
|
-
|
|
3577
|
-
|
|
3578
|
-
|
|
3579
|
-
|
|
3580
|
-
|
|
3581
|
-
|
|
3582
|
-
|
|
3583
|
-
|
|
3584
|
-
|
|
3585
|
-
|
|
3586
|
-
|
|
3587
|
-
|
|
3588
|
-
|
|
3589
|
-
|
|
3590
|
-
|
|
3591
|
-
|
|
3592
|
-
0,
|
|
3593
|
-
0, 0,
|
|
3594
|
-
|
|
3595
|
-
1, 0, 0, 0,
|
|
3596
|
-
|
|
3597
|
-
|
|
3598
|
-
|
|
3599
|
-
0,
|
|
3600
|
-
|
|
3601
|
-
|
|
3602
|
-
|
|
3603
|
-
|
|
3604
|
-
0,
|
|
3605
|
-
0, 0,
|
|
3606
|
-
|
|
3607
|
-
|
|
3608
|
-
|
|
3609
|
-
1, 0, 0, 0,
|
|
3610
|
-
5,
|
|
3611
|
-
|
|
3612
|
-
|
|
3613
|
-
|
|
3614
|
-
|
|
3615
|
-
|
|
3616
|
-
|
|
3617
|
-
|
|
3618
|
-
|
|
3619
|
-
|
|
3620
|
-
|
|
3621
|
-
|
|
3622
|
-
|
|
3623
|
-
|
|
3624
|
-
|
|
3625
|
-
|
|
3626
|
-
1, 0, 0, 0,
|
|
3627
|
-
1, 0, 0, 0,
|
|
3628
|
-
|
|
3629
|
-
|
|
3630
|
-
1, 0, 0, 0,
|
|
3631
|
-
1, 0, 0, 0,
|
|
3632
|
-
1, 0, 0, 0,
|
|
3633
|
-
|
|
3634
|
-
|
|
3635
|
-
|
|
3636
|
-
|
|
3637
|
-
|
|
3638
|
-
|
|
3639
|
-
|
|
3640
|
-
|
|
3641
|
-
|
|
3642
|
-
|
|
3643
|
-
|
|
3644
|
-
|
|
3645
|
-
|
|
3646
|
-
|
|
3647
|
-
1, 0, 0, 0,
|
|
3648
|
-
|
|
3649
|
-
|
|
3650
|
-
|
|
3651
|
-
|
|
3652
|
-
|
|
3653
|
-
5,
|
|
3654
|
-
|
|
3655
|
-
1, 0, 0, 0,
|
|
3656
|
-
|
|
3657
|
-
|
|
3658
|
-
0, 0, 0,
|
|
3659
|
-
|
|
3660
|
-
|
|
3661
|
-
|
|
3662
|
-
|
|
3663
|
-
|
|
3664
|
-
|
|
3665
|
-
1, 0, 0, 0,
|
|
3666
|
-
1, 0, 0, 0,
|
|
3667
|
-
|
|
3668
|
-
|
|
3669
|
-
|
|
3670
|
-
|
|
3671
|
-
|
|
3672
|
-
|
|
3673
|
-
|
|
3674
|
-
|
|
3675
|
-
1, 0, 613, 611, 1, 0, 0, 0, 613, 612, 1, 0, 0, 0, 614, 615, 1, 0, 0, 0, 615, 613, 1, 0,
|
|
3676
|
-
0, 0, 615, 616, 1, 0, 0, 0, 616, 617, 1, 0, 0, 0, 617, 618, 5, 55, 0, 0, 618, 111, 1, 0,
|
|
3677
|
-
0, 0, 75, 114, 116, 138, 143, 151, 153, 163, 165, 180, 184, 189, 193, 200, 207, 215,
|
|
3678
|
-
219, 229, 237, 239, 250, 261, 263, 269, 275, 279, 285, 287, 306, 313, 321, 324,
|
|
3679
|
-
342, 350, 365, 367, 375, 379, 385, 393, 395, 401, 408, 417, 429, 432, 439, 444,
|
|
3680
|
-
449, 452, 458, 461, 465, 477, 479, 490, 492, 500, 502, 508, 516, 530, 533, 542,
|
|
3681
|
-
545, 551, 566, 568, 579, 581, 587, 591, 601, 603, 613, 615
|
|
3351
|
+
2, 53, 7, 53, 2, 54, 7, 54, 2, 55, 7, 55, 2, 56, 7, 56, 2, 57, 7, 57, 2, 58, 7, 58, 1, 0,
|
|
3352
|
+
1, 0, 4, 0, 121, 8, 0, 11, 0, 12, 0, 122, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
3353
|
+
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 145, 8, 1, 1, 2, 1,
|
|
3354
|
+
2, 1, 2, 1, 2, 4, 2, 151, 8, 2, 11, 2, 12, 2, 152, 1, 2, 1, 2, 1, 3, 4, 3, 158, 8, 3, 11, 3,
|
|
3355
|
+
12, 3, 159, 1, 4, 1, 4, 1, 4, 1, 4, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 1, 5, 4, 5, 172, 8, 5, 11,
|
|
3356
|
+
5, 12, 5, 173, 1, 5, 1, 5, 1, 6, 1, 6, 1, 6, 1, 6, 1, 7, 1, 7, 1, 7, 1, 8, 1, 8, 1, 8, 1, 8, 3,
|
|
3357
|
+
8, 189, 8, 8, 1, 9, 1, 9, 3, 9, 193, 8, 9, 1, 9, 5, 9, 196, 8, 9, 10, 9, 12, 9, 199, 9, 9,
|
|
3358
|
+
1, 9, 3, 9, 202, 8, 9, 1, 10, 1, 10, 1, 10, 1, 11, 1, 11, 3, 11, 209, 8, 11, 1, 12, 1, 12,
|
|
3359
|
+
1, 13, 1, 13, 1, 13, 3, 13, 216, 8, 13, 1, 14, 1, 14, 1, 14, 1, 14, 5, 14, 222, 8, 14, 10,
|
|
3360
|
+
14, 12, 14, 225, 9, 14, 1, 14, 3, 14, 228, 8, 14, 1, 15, 1, 15, 1, 15, 1, 15, 1, 15, 1,
|
|
3361
|
+
15, 5, 15, 236, 8, 15, 10, 15, 12, 15, 239, 9, 15, 1, 15, 1, 15, 1, 15, 1, 15, 1, 15, 4,
|
|
3362
|
+
15, 246, 8, 15, 11, 15, 12, 15, 247, 1, 15, 1, 15, 1, 16, 1, 16, 1, 16, 1, 16, 1, 16, 5,
|
|
3363
|
+
16, 257, 8, 16, 10, 16, 12, 16, 260, 9, 16, 1, 17, 1, 17, 1, 18, 1, 18, 1, 18, 1, 18, 1,
|
|
3364
|
+
18, 1, 18, 4, 18, 270, 8, 18, 11, 18, 12, 18, 271, 1, 18, 1, 18, 1, 19, 1, 19, 3, 19, 278,
|
|
3365
|
+
8, 19, 1, 20, 1, 20, 1, 20, 1, 20, 3, 20, 284, 8, 20, 1, 21, 1, 21, 3, 21, 288, 8, 21, 1,
|
|
3366
|
+
22, 1, 22, 1, 23, 1, 23, 1, 24, 1, 24, 1, 24, 1, 24, 1, 25, 1, 25, 1, 25, 1, 25, 1, 26, 1,
|
|
3367
|
+
26, 1, 26, 5, 26, 305, 8, 26, 10, 26, 12, 26, 308, 9, 26, 1, 26, 1, 26, 5, 26, 312, 8,
|
|
3368
|
+
26, 10, 26, 12, 26, 315, 9, 26, 1, 26, 1, 26, 1, 26, 5, 26, 320, 8, 26, 10, 26, 12, 26,
|
|
3369
|
+
323, 9, 26, 3, 26, 325, 8, 26, 1, 27, 1, 27, 1, 27, 1, 27, 1, 28, 1, 28, 1, 28, 1, 28, 1,
|
|
3370
|
+
28, 1, 29, 1, 29, 1, 29, 1, 29, 1, 29, 1, 29, 1, 29, 3, 29, 343, 8, 29, 1, 29, 1, 29, 1,
|
|
3371
|
+
29, 1, 29, 1, 29, 1, 29, 1, 29, 3, 29, 352, 8, 29, 1, 29, 1, 29, 1, 29, 1, 29, 1, 29, 1,
|
|
3372
|
+
29, 1, 29, 1, 29, 1, 29, 1, 29, 1, 29, 1, 29, 1, 29, 5, 29, 367, 8, 29, 10, 29, 12, 29,
|
|
3373
|
+
370, 9, 29, 1, 30, 1, 30, 1, 31, 1, 31, 1, 32, 3, 32, 377, 8, 32, 1, 32, 1, 32, 3, 32, 381,
|
|
3374
|
+
8, 32, 1, 33, 1, 33, 1, 33, 1, 33, 3, 33, 387, 8, 33, 1, 33, 1, 33, 1, 33, 1, 33, 1, 33,
|
|
3375
|
+
1, 33, 4, 33, 395, 8, 33, 11, 33, 12, 33, 396, 1, 33, 1, 33, 1, 34, 1, 34, 3, 34, 403,
|
|
3376
|
+
8, 34, 1, 35, 1, 35, 1, 35, 5, 35, 408, 8, 35, 10, 35, 12, 35, 411, 9, 35, 1, 35, 1, 35,
|
|
3377
|
+
1, 35, 1, 35, 5, 35, 417, 8, 35, 10, 35, 12, 35, 420, 9, 35, 1, 35, 1, 35, 1, 35, 1, 35,
|
|
3378
|
+
1, 35, 1, 35, 1, 35, 5, 35, 429, 8, 35, 10, 35, 12, 35, 432, 9, 35, 3, 35, 434, 8, 35,
|
|
3379
|
+
1, 36, 1, 36, 1, 36, 5, 36, 439, 8, 36, 10, 36, 12, 36, 442, 9, 36, 1, 37, 1, 37, 3, 37,
|
|
3380
|
+
446, 8, 37, 1, 37, 1, 37, 1, 37, 3, 37, 451, 8, 37, 1, 38, 3, 38, 454, 8, 38, 1, 38, 1,
|
|
3381
|
+
38, 4, 38, 458, 8, 38, 11, 38, 12, 38, 459, 1, 39, 3, 39, 463, 8, 39, 1, 39, 1, 39, 3,
|
|
3382
|
+
39, 467, 8, 39, 1, 40, 1, 40, 1, 40, 1, 41, 1, 41, 1, 41, 1, 41, 1, 42, 1, 42, 1, 42, 1,
|
|
3383
|
+
42, 1, 42, 1, 42, 1, 42, 4, 42, 483, 8, 42, 11, 42, 12, 42, 484, 1, 42, 1, 42, 1, 43, 1,
|
|
3384
|
+
43, 1, 43, 1, 43, 1, 43, 1, 43, 1, 43, 4, 43, 496, 8, 43, 11, 43, 12, 43, 497, 1, 43, 1,
|
|
3385
|
+
43, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 4, 44, 510, 8, 44, 11, 44, 12,
|
|
3386
|
+
44, 511, 1, 44, 1, 44, 1, 45, 1, 45, 1, 45, 1, 45, 4, 45, 520, 8, 45, 11, 45, 12, 45, 521,
|
|
3387
|
+
1, 45, 1, 45, 1, 46, 1, 46, 3, 46, 528, 8, 46, 1, 46, 1, 46, 1, 46, 1, 46, 1, 46, 1, 46,
|
|
3388
|
+
3, 46, 536, 8, 46, 1, 47, 1, 47, 1, 47, 1, 47, 1, 48, 1, 48, 1, 49, 1, 49, 1, 49, 1, 49,
|
|
3389
|
+
5, 49, 548, 8, 49, 10, 49, 12, 49, 551, 9, 49, 3, 49, 553, 8, 49, 1, 50, 1, 50, 1, 50,
|
|
3390
|
+
1, 50, 1, 51, 1, 51, 1, 51, 3, 51, 562, 8, 51, 1, 51, 3, 51, 565, 8, 51, 1, 52, 1, 52, 5,
|
|
3391
|
+
52, 569, 8, 52, 10, 52, 12, 52, 572, 9, 52, 1, 53, 1, 53, 1, 53, 1, 54, 1, 54, 1, 54, 1,
|
|
3392
|
+
55, 1, 55, 1, 55, 1, 55, 1, 56, 1, 56, 1, 56, 1, 56, 1, 56, 5, 56, 589, 8, 56, 10, 56, 12,
|
|
3393
|
+
56, 592, 9, 56, 1, 56, 3, 56, 595, 8, 56, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 57, 1, 58,
|
|
3394
|
+
1, 58, 1, 58, 1, 58, 1, 58, 0, 1, 58, 59, 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24,
|
|
3395
|
+
26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68,
|
|
3396
|
+
70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98, 100, 102, 104, 106, 108,
|
|
3397
|
+
110, 112, 114, 116, 0, 12, 2, 0, 9, 9, 19, 21, 1, 0, 45, 46, 2, 0, 46, 46, 49, 49, 2, 0,
|
|
3398
|
+
43, 43, 46, 46, 1, 0, 39, 40, 1, 0, 37, 38, 1, 0, 35, 36, 1, 0, 29, 34, 2, 0, 27, 27, 38,
|
|
3399
|
+
38, 2, 0, 44, 44, 46, 50, 2, 0, 15, 15, 45, 45, 2, 0, 45, 46, 49, 49, 639, 0, 120, 1, 0,
|
|
3400
|
+
0, 0, 2, 144, 1, 0, 0, 0, 4, 146, 1, 0, 0, 0, 6, 157, 1, 0, 0, 0, 8, 161, 1, 0, 0, 0, 10, 165,
|
|
3401
|
+
1, 0, 0, 0, 12, 177, 1, 0, 0, 0, 14, 181, 1, 0, 0, 0, 16, 184, 1, 0, 0, 0, 18, 192, 1, 0,
|
|
3402
|
+
0, 0, 20, 203, 1, 0, 0, 0, 22, 208, 1, 0, 0, 0, 24, 210, 1, 0, 0, 0, 26, 212, 1, 0, 0, 0,
|
|
3403
|
+
28, 217, 1, 0, 0, 0, 30, 229, 1, 0, 0, 0, 32, 251, 1, 0, 0, 0, 34, 261, 1, 0, 0, 0, 36, 263,
|
|
3404
|
+
1, 0, 0, 0, 38, 277, 1, 0, 0, 0, 40, 279, 1, 0, 0, 0, 42, 287, 1, 0, 0, 0, 44, 289, 1, 0,
|
|
3405
|
+
0, 0, 46, 291, 1, 0, 0, 0, 48, 293, 1, 0, 0, 0, 50, 297, 1, 0, 0, 0, 52, 324, 1, 0, 0, 0,
|
|
3406
|
+
54, 326, 1, 0, 0, 0, 56, 330, 1, 0, 0, 0, 58, 351, 1, 0, 0, 0, 60, 371, 1, 0, 0, 0, 62, 373,
|
|
3407
|
+
1, 0, 0, 0, 64, 380, 1, 0, 0, 0, 66, 382, 1, 0, 0, 0, 68, 402, 1, 0, 0, 0, 70, 433, 1, 0,
|
|
3408
|
+
0, 0, 72, 435, 1, 0, 0, 0, 74, 450, 1, 0, 0, 0, 76, 453, 1, 0, 0, 0, 78, 462, 1, 0, 0, 0,
|
|
3409
|
+
80, 468, 1, 0, 0, 0, 82, 471, 1, 0, 0, 0, 84, 475, 1, 0, 0, 0, 86, 488, 1, 0, 0, 0, 88, 501,
|
|
3410
|
+
1, 0, 0, 0, 90, 515, 1, 0, 0, 0, 92, 525, 1, 0, 0, 0, 94, 537, 1, 0, 0, 0, 96, 541, 1, 0,
|
|
3411
|
+
0, 0, 98, 552, 1, 0, 0, 0, 100, 554, 1, 0, 0, 0, 102, 564, 1, 0, 0, 0, 104, 566, 1, 0, 0,
|
|
3412
|
+
0, 106, 573, 1, 0, 0, 0, 108, 576, 1, 0, 0, 0, 110, 579, 1, 0, 0, 0, 112, 583, 1, 0, 0,
|
|
3413
|
+
0, 114, 596, 1, 0, 0, 0, 116, 602, 1, 0, 0, 0, 118, 121, 3, 2, 1, 0, 119, 121, 5, 53, 0,
|
|
3414
|
+
0, 120, 118, 1, 0, 0, 0, 120, 119, 1, 0, 0, 0, 121, 122, 1, 0, 0, 0, 122, 120, 1, 0, 0,
|
|
3415
|
+
0, 122, 123, 1, 0, 0, 0, 123, 124, 1, 0, 0, 0, 124, 125, 5, 0, 0, 1, 125, 1, 1, 0, 0, 0,
|
|
3416
|
+
126, 145, 3, 20, 10, 0, 127, 145, 3, 28, 14, 0, 128, 145, 3, 26, 13, 0, 129, 145, 3,
|
|
3417
|
+
48, 24, 0, 130, 145, 3, 54, 27, 0, 131, 145, 3, 10, 5, 0, 132, 145, 3, 56, 28, 0, 133,
|
|
3418
|
+
145, 3, 46, 23, 0, 134, 145, 3, 66, 33, 0, 135, 145, 3, 76, 38, 0, 136, 145, 3, 104,
|
|
3419
|
+
52, 0, 137, 145, 3, 108, 54, 0, 138, 145, 3, 110, 55, 0, 139, 145, 3, 72, 36, 0, 140,
|
|
3420
|
+
145, 3, 36, 18, 0, 141, 145, 3, 6, 3, 0, 142, 145, 3, 106, 53, 0, 143, 145, 3, 112, 56,
|
|
3421
|
+
0, 144, 126, 1, 0, 0, 0, 144, 127, 1, 0, 0, 0, 144, 128, 1, 0, 0, 0, 144, 129, 1, 0, 0,
|
|
3422
|
+
0, 144, 130, 1, 0, 0, 0, 144, 131, 1, 0, 0, 0, 144, 132, 1, 0, 0, 0, 144, 133, 1, 0, 0,
|
|
3423
|
+
0, 144, 134, 1, 0, 0, 0, 144, 135, 1, 0, 0, 0, 144, 136, 1, 0, 0, 0, 144, 137, 1, 0, 0,
|
|
3424
|
+
0, 144, 138, 1, 0, 0, 0, 144, 139, 1, 0, 0, 0, 144, 140, 1, 0, 0, 0, 144, 141, 1, 0, 0,
|
|
3425
|
+
0, 144, 142, 1, 0, 0, 0, 144, 143, 1, 0, 0, 0, 145, 3, 1, 0, 0, 0, 146, 147, 5, 53, 0, 0,
|
|
3426
|
+
147, 150, 5, 55, 0, 0, 148, 151, 5, 53, 0, 0, 149, 151, 3, 2, 1, 0, 150, 148, 1, 0, 0,
|
|
3427
|
+
0, 150, 149, 1, 0, 0, 0, 151, 152, 1, 0, 0, 0, 152, 150, 1, 0, 0, 0, 152, 153, 1, 0, 0,
|
|
3428
|
+
0, 153, 154, 1, 0, 0, 0, 154, 155, 5, 56, 0, 0, 155, 5, 1, 0, 0, 0, 156, 158, 3, 8, 4, 0,
|
|
3429
|
+
157, 156, 1, 0, 0, 0, 158, 159, 1, 0, 0, 0, 159, 157, 1, 0, 0, 0, 159, 160, 1, 0, 0, 0,
|
|
3430
|
+
160, 7, 1, 0, 0, 0, 161, 162, 7, 0, 0, 0, 162, 163, 5, 1, 0, 0, 163, 164, 3, 4, 2, 0, 164,
|
|
3431
|
+
9, 1, 0, 0, 0, 165, 166, 3, 72, 36, 0, 166, 167, 5, 1, 0, 0, 167, 168, 5, 53, 0, 0, 168,
|
|
3432
|
+
171, 5, 55, 0, 0, 169, 172, 5, 53, 0, 0, 170, 172, 3, 12, 6, 0, 171, 169, 1, 0, 0, 0, 171,
|
|
3433
|
+
170, 1, 0, 0, 0, 172, 173, 1, 0, 0, 0, 173, 171, 1, 0, 0, 0, 173, 174, 1, 0, 0, 0, 174,
|
|
3434
|
+
175, 1, 0, 0, 0, 175, 176, 5, 56, 0, 0, 176, 11, 1, 0, 0, 0, 177, 178, 7, 1, 0, 0, 178,
|
|
3435
|
+
179, 5, 1, 0, 0, 179, 180, 3, 64, 32, 0, 180, 13, 1, 0, 0, 0, 181, 182, 5, 15, 0, 0, 182,
|
|
3436
|
+
183, 7, 2, 0, 0, 183, 15, 1, 0, 0, 0, 184, 185, 5, 45, 0, 0, 185, 188, 5, 1, 0, 0, 186,
|
|
3437
|
+
189, 3, 64, 32, 0, 187, 189, 5, 45, 0, 0, 188, 186, 1, 0, 0, 0, 188, 187, 1, 0, 0, 0, 189,
|
|
3438
|
+
17, 1, 0, 0, 0, 190, 193, 3, 58, 29, 0, 191, 193, 3, 48, 24, 0, 192, 190, 1, 0, 0, 0, 192,
|
|
3439
|
+
191, 1, 0, 0, 0, 193, 197, 1, 0, 0, 0, 194, 196, 3, 16, 8, 0, 195, 194, 1, 0, 0, 0, 196,
|
|
3440
|
+
199, 1, 0, 0, 0, 197, 195, 1, 0, 0, 0, 197, 198, 1, 0, 0, 0, 198, 201, 1, 0, 0, 0, 199,
|
|
3441
|
+
197, 1, 0, 0, 0, 200, 202, 3, 14, 7, 0, 201, 200, 1, 0, 0, 0, 201, 202, 1, 0, 0, 0, 202,
|
|
3442
|
+
19, 1, 0, 0, 0, 203, 204, 5, 16, 0, 0, 204, 205, 3, 18, 9, 0, 205, 21, 1, 0, 0, 0, 206,
|
|
3443
|
+
209, 3, 18, 9, 0, 207, 209, 3, 14, 7, 0, 208, 206, 1, 0, 0, 0, 208, 207, 1, 0, 0, 0, 209,
|
|
3444
|
+
23, 1, 0, 0, 0, 210, 211, 7, 2, 0, 0, 211, 25, 1, 0, 0, 0, 212, 215, 5, 17, 0, 0, 213, 216,
|
|
3445
|
+
3, 22, 11, 0, 214, 216, 5, 19, 0, 0, 215, 213, 1, 0, 0, 0, 215, 214, 1, 0, 0, 0, 216, 27,
|
|
3446
|
+
1, 0, 0, 0, 217, 227, 5, 18, 0, 0, 218, 223, 3, 22, 11, 0, 219, 220, 5, 2, 0, 0, 220, 222,
|
|
3447
|
+
3, 22, 11, 0, 221, 219, 1, 0, 0, 0, 222, 225, 1, 0, 0, 0, 223, 221, 1, 0, 0, 0, 223, 224,
|
|
3448
|
+
1, 0, 0, 0, 224, 228, 1, 0, 0, 0, 225, 223, 1, 0, 0, 0, 226, 228, 5, 19, 0, 0, 227, 218,
|
|
3449
|
+
1, 0, 0, 0, 227, 226, 1, 0, 0, 0, 228, 29, 1, 0, 0, 0, 229, 230, 5, 17, 0, 0, 230, 231,
|
|
3450
|
+
3, 22, 11, 0, 231, 232, 5, 18, 0, 0, 232, 237, 3, 22, 11, 0, 233, 234, 5, 2, 0, 0, 234,
|
|
3451
|
+
236, 3, 22, 11, 0, 235, 233, 1, 0, 0, 0, 236, 239, 1, 0, 0, 0, 237, 235, 1, 0, 0, 0, 237,
|
|
3452
|
+
238, 1, 0, 0, 0, 238, 240, 1, 0, 0, 0, 239, 237, 1, 0, 0, 0, 240, 241, 5, 1, 0, 0, 241,
|
|
3453
|
+
242, 5, 53, 0, 0, 242, 245, 5, 55, 0, 0, 243, 246, 5, 53, 0, 0, 244, 246, 3, 32, 16, 0,
|
|
3454
|
+
245, 243, 1, 0, 0, 0, 245, 244, 1, 0, 0, 0, 246, 247, 1, 0, 0, 0, 247, 245, 1, 0, 0, 0,
|
|
3455
|
+
247, 248, 1, 0, 0, 0, 248, 249, 1, 0, 0, 0, 249, 250, 5, 56, 0, 0, 250, 31, 1, 0, 0, 0,
|
|
3456
|
+
251, 252, 3, 24, 12, 0, 252, 253, 5, 1, 0, 0, 253, 258, 3, 34, 17, 0, 254, 255, 5, 2,
|
|
3457
|
+
0, 0, 255, 257, 3, 34, 17, 0, 256, 254, 1, 0, 0, 0, 257, 260, 1, 0, 0, 0, 258, 256, 1,
|
|
3458
|
+
0, 0, 0, 258, 259, 1, 0, 0, 0, 259, 33, 1, 0, 0, 0, 260, 258, 1, 0, 0, 0, 261, 262, 7, 3,
|
|
3459
|
+
0, 0, 262, 35, 1, 0, 0, 0, 263, 264, 3, 26, 13, 0, 264, 265, 5, 1, 0, 0, 265, 266, 5, 53,
|
|
3460
|
+
0, 0, 266, 269, 5, 55, 0, 0, 267, 270, 5, 53, 0, 0, 268, 270, 3, 38, 19, 0, 269, 267,
|
|
3461
|
+
1, 0, 0, 0, 269, 268, 1, 0, 0, 0, 270, 271, 1, 0, 0, 0, 271, 269, 1, 0, 0, 0, 271, 272,
|
|
3462
|
+
1, 0, 0, 0, 272, 273, 1, 0, 0, 0, 273, 274, 5, 56, 0, 0, 274, 37, 1, 0, 0, 0, 275, 278,
|
|
3463
|
+
3, 2, 1, 0, 276, 278, 3, 40, 20, 0, 277, 275, 1, 0, 0, 0, 277, 276, 1, 0, 0, 0, 278, 39,
|
|
3464
|
+
1, 0, 0, 0, 279, 280, 3, 24, 12, 0, 280, 283, 5, 1, 0, 0, 281, 284, 3, 42, 21, 0, 282,
|
|
3465
|
+
284, 3, 44, 22, 0, 283, 281, 1, 0, 0, 0, 283, 282, 1, 0, 0, 0, 284, 41, 1, 0, 0, 0, 285,
|
|
3466
|
+
288, 3, 2, 1, 0, 286, 288, 5, 43, 0, 0, 287, 285, 1, 0, 0, 0, 287, 286, 1, 0, 0, 0, 288,
|
|
3467
|
+
43, 1, 0, 0, 0, 289, 290, 3, 4, 2, 0, 290, 45, 1, 0, 0, 0, 291, 292, 5, 8, 0, 0, 292, 47,
|
|
3468
|
+
1, 0, 0, 0, 293, 294, 3, 72, 36, 0, 294, 295, 5, 3, 0, 0, 295, 296, 3, 58, 29, 0, 296,
|
|
3469
|
+
49, 1, 0, 0, 0, 297, 298, 5, 45, 0, 0, 298, 299, 5, 3, 0, 0, 299, 300, 3, 58, 29, 0, 300,
|
|
3470
|
+
51, 1, 0, 0, 0, 301, 306, 3, 58, 29, 0, 302, 303, 5, 2, 0, 0, 303, 305, 3, 58, 29, 0, 304,
|
|
3471
|
+
302, 1, 0, 0, 0, 305, 308, 1, 0, 0, 0, 306, 304, 1, 0, 0, 0, 306, 307, 1, 0, 0, 0, 307,
|
|
3472
|
+
313, 1, 0, 0, 0, 308, 306, 1, 0, 0, 0, 309, 310, 5, 2, 0, 0, 310, 312, 3, 50, 25, 0, 311,
|
|
3473
|
+
309, 1, 0, 0, 0, 312, 315, 1, 0, 0, 0, 313, 311, 1, 0, 0, 0, 313, 314, 1, 0, 0, 0, 314,
|
|
3474
|
+
325, 1, 0, 0, 0, 315, 313, 1, 0, 0, 0, 316, 321, 3, 50, 25, 0, 317, 318, 5, 2, 0, 0, 318,
|
|
3475
|
+
320, 3, 50, 25, 0, 319, 317, 1, 0, 0, 0, 320, 323, 1, 0, 0, 0, 321, 319, 1, 0, 0, 0, 321,
|
|
3476
|
+
322, 1, 0, 0, 0, 322, 325, 1, 0, 0, 0, 323, 321, 1, 0, 0, 0, 324, 301, 1, 0, 0, 0, 324,
|
|
3477
|
+
316, 1, 0, 0, 0, 325, 53, 1, 0, 0, 0, 326, 327, 3, 72, 36, 0, 327, 328, 5, 3, 0, 0, 328,
|
|
3478
|
+
329, 3, 58, 29, 0, 329, 55, 1, 0, 0, 0, 330, 331, 5, 4, 0, 0, 331, 332, 5, 45, 0, 0, 332,
|
|
3479
|
+
333, 5, 3, 0, 0, 333, 334, 3, 58, 29, 0, 334, 57, 1, 0, 0, 0, 335, 336, 6, 29, -1, 0, 336,
|
|
3480
|
+
337, 5, 41, 0, 0, 337, 338, 3, 58, 29, 0, 338, 339, 5, 42, 0, 0, 339, 352, 1, 0, 0, 0,
|
|
3481
|
+
340, 343, 3, 64, 32, 0, 341, 343, 3, 72, 36, 0, 342, 340, 1, 0, 0, 0, 342, 341, 1, 0,
|
|
3482
|
+
0, 0, 343, 352, 1, 0, 0, 0, 344, 345, 3, 62, 31, 0, 345, 346, 3, 58, 29, 9, 346, 352,
|
|
3483
|
+
1, 0, 0, 0, 347, 352, 3, 84, 42, 0, 348, 352, 3, 86, 43, 0, 349, 352, 3, 88, 44, 0, 350,
|
|
3484
|
+
352, 3, 76, 38, 0, 351, 335, 1, 0, 0, 0, 351, 342, 1, 0, 0, 0, 351, 344, 1, 0, 0, 0, 351,
|
|
3485
|
+
347, 1, 0, 0, 0, 351, 348, 1, 0, 0, 0, 351, 349, 1, 0, 0, 0, 351, 350, 1, 0, 0, 0, 352,
|
|
3486
|
+
368, 1, 0, 0, 0, 353, 354, 10, 8, 0, 0, 354, 355, 7, 4, 0, 0, 355, 367, 3, 58, 29, 9, 356,
|
|
3487
|
+
357, 10, 7, 0, 0, 357, 358, 7, 5, 0, 0, 358, 367, 3, 58, 29, 8, 359, 360, 10, 6, 0, 0,
|
|
3488
|
+
360, 361, 3, 60, 30, 0, 361, 362, 3, 58, 29, 7, 362, 367, 1, 0, 0, 0, 363, 364, 10, 5,
|
|
3489
|
+
0, 0, 364, 365, 7, 6, 0, 0, 365, 367, 3, 58, 29, 6, 366, 353, 1, 0, 0, 0, 366, 356, 1,
|
|
3490
|
+
0, 0, 0, 366, 359, 1, 0, 0, 0, 366, 363, 1, 0, 0, 0, 367, 370, 1, 0, 0, 0, 368, 366, 1,
|
|
3491
|
+
0, 0, 0, 368, 369, 1, 0, 0, 0, 369, 59, 1, 0, 0, 0, 370, 368, 1, 0, 0, 0, 371, 372, 7, 7,
|
|
3492
|
+
0, 0, 372, 61, 1, 0, 0, 0, 373, 374, 7, 8, 0, 0, 374, 63, 1, 0, 0, 0, 375, 377, 5, 38, 0,
|
|
3493
|
+
0, 376, 375, 1, 0, 0, 0, 376, 377, 1, 0, 0, 0, 377, 378, 1, 0, 0, 0, 378, 381, 7, 9, 0,
|
|
3494
|
+
0, 379, 381, 3, 100, 50, 0, 380, 376, 1, 0, 0, 0, 380, 379, 1, 0, 0, 0, 381, 65, 1, 0,
|
|
3495
|
+
0, 0, 382, 383, 5, 23, 0, 0, 383, 384, 5, 45, 0, 0, 384, 386, 5, 41, 0, 0, 385, 387, 3,
|
|
3496
|
+
70, 35, 0, 386, 385, 1, 0, 0, 0, 386, 387, 1, 0, 0, 0, 387, 388, 1, 0, 0, 0, 388, 389,
|
|
3497
|
+
5, 42, 0, 0, 389, 390, 5, 1, 0, 0, 390, 391, 5, 53, 0, 0, 391, 394, 5, 55, 0, 0, 392, 395,
|
|
3498
|
+
5, 53, 0, 0, 393, 395, 3, 68, 34, 0, 394, 392, 1, 0, 0, 0, 394, 393, 1, 0, 0, 0, 395, 396,
|
|
3499
|
+
1, 0, 0, 0, 396, 394, 1, 0, 0, 0, 396, 397, 1, 0, 0, 0, 397, 398, 1, 0, 0, 0, 398, 399,
|
|
3500
|
+
5, 56, 0, 0, 399, 67, 1, 0, 0, 0, 400, 403, 3, 2, 1, 0, 401, 403, 3, 80, 40, 0, 402, 400,
|
|
3501
|
+
1, 0, 0, 0, 402, 401, 1, 0, 0, 0, 403, 69, 1, 0, 0, 0, 404, 409, 5, 45, 0, 0, 405, 406,
|
|
3502
|
+
5, 2, 0, 0, 406, 408, 5, 45, 0, 0, 407, 405, 1, 0, 0, 0, 408, 411, 1, 0, 0, 0, 409, 407,
|
|
3503
|
+
1, 0, 0, 0, 409, 410, 1, 0, 0, 0, 410, 418, 1, 0, 0, 0, 411, 409, 1, 0, 0, 0, 412, 413,
|
|
3504
|
+
5, 2, 0, 0, 413, 414, 5, 45, 0, 0, 414, 415, 5, 3, 0, 0, 415, 417, 3, 64, 32, 0, 416, 412,
|
|
3505
|
+
1, 0, 0, 0, 417, 420, 1, 0, 0, 0, 418, 416, 1, 0, 0, 0, 418, 419, 1, 0, 0, 0, 419, 434,
|
|
3506
|
+
1, 0, 0, 0, 420, 418, 1, 0, 0, 0, 421, 422, 5, 45, 0, 0, 422, 423, 5, 3, 0, 0, 423, 430,
|
|
3507
|
+
3, 64, 32, 0, 424, 425, 5, 2, 0, 0, 425, 426, 5, 45, 0, 0, 426, 427, 5, 3, 0, 0, 427, 429,
|
|
3508
|
+
3, 64, 32, 0, 428, 424, 1, 0, 0, 0, 429, 432, 1, 0, 0, 0, 430, 428, 1, 0, 0, 0, 430, 431,
|
|
3509
|
+
1, 0, 0, 0, 431, 434, 1, 0, 0, 0, 432, 430, 1, 0, 0, 0, 433, 404, 1, 0, 0, 0, 433, 421,
|
|
3510
|
+
1, 0, 0, 0, 434, 71, 1, 0, 0, 0, 435, 440, 5, 45, 0, 0, 436, 437, 5, 5, 0, 0, 437, 439,
|
|
3511
|
+
5, 45, 0, 0, 438, 436, 1, 0, 0, 0, 439, 442, 1, 0, 0, 0, 440, 438, 1, 0, 0, 0, 440, 441,
|
|
3512
|
+
1, 0, 0, 0, 441, 73, 1, 0, 0, 0, 442, 440, 1, 0, 0, 0, 443, 445, 5, 41, 0, 0, 444, 446,
|
|
3513
|
+
3, 52, 26, 0, 445, 444, 1, 0, 0, 0, 445, 446, 1, 0, 0, 0, 446, 447, 1, 0, 0, 0, 447, 451,
|
|
3514
|
+
5, 42, 0, 0, 448, 449, 5, 5, 0, 0, 449, 451, 5, 45, 0, 0, 450, 443, 1, 0, 0, 0, 450, 448,
|
|
3515
|
+
1, 0, 0, 0, 451, 75, 1, 0, 0, 0, 452, 454, 3, 78, 39, 0, 453, 452, 1, 0, 0, 0, 453, 454,
|
|
3516
|
+
1, 0, 0, 0, 454, 455, 1, 0, 0, 0, 455, 457, 5, 45, 0, 0, 456, 458, 3, 74, 37, 0, 457, 456,
|
|
3517
|
+
1, 0, 0, 0, 458, 459, 1, 0, 0, 0, 459, 457, 1, 0, 0, 0, 459, 460, 1, 0, 0, 0, 460, 77, 1,
|
|
3518
|
+
0, 0, 0, 461, 463, 5, 37, 0, 0, 462, 461, 1, 0, 0, 0, 462, 463, 1, 0, 0, 0, 463, 464, 1,
|
|
3519
|
+
0, 0, 0, 464, 466, 5, 39, 0, 0, 465, 467, 3, 58, 29, 0, 466, 465, 1, 0, 0, 0, 466, 467,
|
|
3520
|
+
1, 0, 0, 0, 467, 79, 1, 0, 0, 0, 468, 469, 5, 22, 0, 0, 469, 470, 3, 58, 29, 0, 470, 81,
|
|
3521
|
+
1, 0, 0, 0, 471, 472, 3, 96, 48, 0, 472, 473, 5, 1, 0, 0, 473, 474, 3, 4, 2, 0, 474, 83,
|
|
3522
|
+
1, 0, 0, 0, 475, 476, 5, 10, 0, 0, 476, 477, 5, 11, 0, 0, 477, 478, 5, 1, 0, 0, 478, 479,
|
|
3523
|
+
5, 53, 0, 0, 479, 482, 5, 55, 0, 0, 480, 483, 5, 53, 0, 0, 481, 483, 3, 94, 47, 0, 482,
|
|
3524
|
+
480, 1, 0, 0, 0, 482, 481, 1, 0, 0, 0, 483, 484, 1, 0, 0, 0, 484, 482, 1, 0, 0, 0, 484,
|
|
3525
|
+
485, 1, 0, 0, 0, 485, 486, 1, 0, 0, 0, 486, 487, 5, 56, 0, 0, 487, 85, 1, 0, 0, 0, 488,
|
|
3526
|
+
489, 5, 10, 0, 0, 489, 490, 5, 12, 0, 0, 490, 491, 5, 1, 0, 0, 491, 492, 5, 53, 0, 0, 492,
|
|
3527
|
+
495, 5, 55, 0, 0, 493, 496, 5, 53, 0, 0, 494, 496, 3, 92, 46, 0, 495, 493, 1, 0, 0, 0,
|
|
3528
|
+
495, 494, 1, 0, 0, 0, 496, 497, 1, 0, 0, 0, 497, 495, 1, 0, 0, 0, 497, 498, 1, 0, 0, 0,
|
|
3529
|
+
498, 499, 1, 0, 0, 0, 499, 500, 5, 56, 0, 0, 500, 87, 1, 0, 0, 0, 501, 502, 5, 10, 0, 0,
|
|
3530
|
+
502, 503, 5, 13, 0, 0, 503, 504, 5, 1, 0, 0, 504, 505, 5, 53, 0, 0, 505, 509, 5, 55, 0,
|
|
3531
|
+
0, 506, 510, 5, 53, 0, 0, 507, 510, 3, 94, 47, 0, 508, 510, 3, 82, 41, 0, 509, 506, 1,
|
|
3532
|
+
0, 0, 0, 509, 507, 1, 0, 0, 0, 509, 508, 1, 0, 0, 0, 510, 511, 1, 0, 0, 0, 511, 509, 1,
|
|
3533
|
+
0, 0, 0, 511, 512, 1, 0, 0, 0, 512, 513, 1, 0, 0, 0, 513, 514, 5, 56, 0, 0, 514, 89, 1,
|
|
3534
|
+
0, 0, 0, 515, 516, 5, 53, 0, 0, 516, 519, 5, 55, 0, 0, 517, 520, 5, 53, 0, 0, 518, 520,
|
|
3535
|
+
3, 94, 47, 0, 519, 517, 1, 0, 0, 0, 519, 518, 1, 0, 0, 0, 520, 521, 1, 0, 0, 0, 521, 519,
|
|
3536
|
+
1, 0, 0, 0, 521, 522, 1, 0, 0, 0, 522, 523, 1, 0, 0, 0, 523, 524, 5, 56, 0, 0, 524, 91,
|
|
3537
|
+
1, 0, 0, 0, 525, 527, 7, 10, 0, 0, 526, 528, 5, 1, 0, 0, 527, 526, 1, 0, 0, 0, 527, 528,
|
|
3538
|
+
1, 0, 0, 0, 528, 535, 1, 0, 0, 0, 529, 536, 3, 52, 26, 0, 530, 531, 5, 41, 0, 0, 531, 532,
|
|
3539
|
+
3, 52, 26, 0, 532, 533, 5, 42, 0, 0, 533, 536, 1, 0, 0, 0, 534, 536, 3, 90, 45, 0, 535,
|
|
3540
|
+
529, 1, 0, 0, 0, 535, 530, 1, 0, 0, 0, 535, 534, 1, 0, 0, 0, 536, 93, 1, 0, 0, 0, 537, 538,
|
|
3541
|
+
3, 96, 48, 0, 538, 539, 5, 1, 0, 0, 539, 540, 3, 98, 49, 0, 540, 95, 1, 0, 0, 0, 541, 542,
|
|
3542
|
+
7, 11, 0, 0, 542, 97, 1, 0, 0, 0, 543, 553, 3, 90, 45, 0, 544, 549, 3, 58, 29, 0, 545,
|
|
3543
|
+
546, 5, 2, 0, 0, 546, 548, 3, 58, 29, 0, 547, 545, 1, 0, 0, 0, 548, 551, 1, 0, 0, 0, 549,
|
|
3544
|
+
547, 1, 0, 0, 0, 549, 550, 1, 0, 0, 0, 550, 553, 1, 0, 0, 0, 551, 549, 1, 0, 0, 0, 552,
|
|
3545
|
+
543, 1, 0, 0, 0, 552, 544, 1, 0, 0, 0, 553, 99, 1, 0, 0, 0, 554, 555, 5, 6, 0, 0, 555, 556,
|
|
3546
|
+
5, 46, 0, 0, 556, 557, 5, 7, 0, 0, 557, 101, 1, 0, 0, 0, 558, 561, 5, 45, 0, 0, 559, 562,
|
|
3547
|
+
5, 46, 0, 0, 560, 562, 3, 58, 29, 0, 561, 559, 1, 0, 0, 0, 561, 560, 1, 0, 0, 0, 562, 565,
|
|
3548
|
+
1, 0, 0, 0, 563, 565, 5, 45, 0, 0, 564, 558, 1, 0, 0, 0, 564, 563, 1, 0, 0, 0, 565, 103,
|
|
3549
|
+
1, 0, 0, 0, 566, 570, 5, 14, 0, 0, 567, 569, 3, 102, 51, 0, 568, 567, 1, 0, 0, 0, 569,
|
|
3550
|
+
572, 1, 0, 0, 0, 570, 568, 1, 0, 0, 0, 570, 571, 1, 0, 0, 0, 571, 105, 1, 0, 0, 0, 572,
|
|
3551
|
+
570, 1, 0, 0, 0, 573, 574, 5, 19, 0, 0, 574, 575, 5, 45, 0, 0, 575, 107, 1, 0, 0, 0, 576,
|
|
3552
|
+
577, 5, 24, 0, 0, 577, 578, 5, 45, 0, 0, 578, 109, 1, 0, 0, 0, 579, 580, 5, 28, 0, 0, 580,
|
|
3553
|
+
581, 5, 1, 0, 0, 581, 582, 3, 4, 2, 0, 582, 111, 1, 0, 0, 0, 583, 584, 5, 25, 0, 0, 584,
|
|
3554
|
+
585, 3, 58, 29, 0, 585, 586, 5, 1, 0, 0, 586, 590, 3, 4, 2, 0, 587, 589, 3, 114, 57, 0,
|
|
3555
|
+
588, 587, 1, 0, 0, 0, 589, 592, 1, 0, 0, 0, 590, 588, 1, 0, 0, 0, 590, 591, 1, 0, 0, 0,
|
|
3556
|
+
591, 594, 1, 0, 0, 0, 592, 590, 1, 0, 0, 0, 593, 595, 3, 116, 58, 0, 594, 593, 1, 0, 0,
|
|
3557
|
+
0, 594, 595, 1, 0, 0, 0, 595, 113, 1, 0, 0, 0, 596, 597, 5, 26, 0, 0, 597, 598, 5, 25,
|
|
3558
|
+
0, 0, 598, 599, 3, 58, 29, 0, 599, 600, 5, 1, 0, 0, 600, 601, 3, 4, 2, 0, 601, 115, 1,
|
|
3559
|
+
0, 0, 0, 602, 603, 5, 26, 0, 0, 603, 604, 5, 1, 0, 0, 604, 605, 3, 4, 2, 0, 605, 117, 1,
|
|
3560
|
+
0, 0, 0, 67, 120, 122, 144, 150, 152, 159, 171, 173, 188, 192, 197, 201, 208, 215,
|
|
3561
|
+
223, 227, 237, 245, 247, 258, 269, 271, 277, 283, 287, 306, 313, 321, 324, 342,
|
|
3562
|
+
351, 366, 368, 376, 380, 386, 394, 396, 402, 409, 418, 430, 433, 440, 445, 450,
|
|
3563
|
+
453, 459, 462, 466, 482, 484, 495, 497, 509, 511, 519, 521, 527, 535, 549, 552,
|
|
3564
|
+
561, 564, 570, 590, 594
|
|
3682
3565
|
];
|
|
3683
3566
|
static __ATN;
|
|
3684
3567
|
static get _ATN() {
|
|
@@ -3796,6 +3679,42 @@ export class ExpressionContext extends antlr.ParserRuleContext {
|
|
|
3796
3679
|
}
|
|
3797
3680
|
}
|
|
3798
3681
|
}
|
|
3682
|
+
export class Expressions_blockContext extends antlr.ParserRuleContext {
|
|
3683
|
+
constructor(parent, invokingState) {
|
|
3684
|
+
super(parent, invokingState);
|
|
3685
|
+
}
|
|
3686
|
+
NEWLINE(i) {
|
|
3687
|
+
if (i === undefined) {
|
|
3688
|
+
return this.getTokens(CircuitScriptParser.NEWLINE);
|
|
3689
|
+
}
|
|
3690
|
+
else {
|
|
3691
|
+
return this.getToken(CircuitScriptParser.NEWLINE, i);
|
|
3692
|
+
}
|
|
3693
|
+
}
|
|
3694
|
+
INDENT() {
|
|
3695
|
+
return this.getToken(CircuitScriptParser.INDENT, 0);
|
|
3696
|
+
}
|
|
3697
|
+
DEDENT() {
|
|
3698
|
+
return this.getToken(CircuitScriptParser.DEDENT, 0);
|
|
3699
|
+
}
|
|
3700
|
+
expression(i) {
|
|
3701
|
+
if (i === undefined) {
|
|
3702
|
+
return this.getRuleContexts(ExpressionContext);
|
|
3703
|
+
}
|
|
3704
|
+
return this.getRuleContext(i, ExpressionContext);
|
|
3705
|
+
}
|
|
3706
|
+
get ruleIndex() {
|
|
3707
|
+
return CircuitScriptParser.RULE_expressions_block;
|
|
3708
|
+
}
|
|
3709
|
+
accept(visitor) {
|
|
3710
|
+
if (visitor.visitExpressions_block) {
|
|
3711
|
+
return visitor.visitExpressions_block(this);
|
|
3712
|
+
}
|
|
3713
|
+
else {
|
|
3714
|
+
return visitor.visitChildren(this);
|
|
3715
|
+
}
|
|
3716
|
+
}
|
|
3717
|
+
}
|
|
3799
3718
|
export class Path_blocksContext extends antlr.ParserRuleContext {
|
|
3800
3719
|
constructor(parent, invokingState) {
|
|
3801
3720
|
super(parent, invokingState);
|
|
@@ -3822,19 +3741,8 @@ export class Path_block_innerContext extends antlr.ParserRuleContext {
|
|
|
3822
3741
|
constructor(parent, invokingState) {
|
|
3823
3742
|
super(parent, invokingState);
|
|
3824
3743
|
}
|
|
3825
|
-
|
|
3826
|
-
|
|
3827
|
-
return this.getTokens(CircuitScriptParser.NEWLINE);
|
|
3828
|
-
}
|
|
3829
|
-
else {
|
|
3830
|
-
return this.getToken(CircuitScriptParser.NEWLINE, i);
|
|
3831
|
-
}
|
|
3832
|
-
}
|
|
3833
|
-
INDENT() {
|
|
3834
|
-
return this.getToken(CircuitScriptParser.INDENT, 0);
|
|
3835
|
-
}
|
|
3836
|
-
DEDENT() {
|
|
3837
|
-
return this.getToken(CircuitScriptParser.DEDENT, 0);
|
|
3744
|
+
expressions_block() {
|
|
3745
|
+
return this.getRuleContext(0, Expressions_blockContext);
|
|
3838
3746
|
}
|
|
3839
3747
|
Branch() {
|
|
3840
3748
|
return this.getToken(CircuitScriptParser.Branch, 0);
|
|
@@ -3848,12 +3756,6 @@ export class Path_block_innerContext extends antlr.ParserRuleContext {
|
|
|
3848
3756
|
Point() {
|
|
3849
3757
|
return this.getToken(CircuitScriptParser.Point, 0);
|
|
3850
3758
|
}
|
|
3851
|
-
expression(i) {
|
|
3852
|
-
if (i === undefined) {
|
|
3853
|
-
return this.getRuleContexts(ExpressionContext);
|
|
3854
|
-
}
|
|
3855
|
-
return this.getRuleContext(i, ExpressionContext);
|
|
3856
|
-
}
|
|
3857
3759
|
get ruleIndex() {
|
|
3858
3760
|
return CircuitScriptParser.RULE_path_block_inner;
|
|
3859
3761
|
}
|
|
@@ -4339,25 +4241,8 @@ export class At_block_pin_expression_complexContext extends antlr.ParserRuleCont
|
|
|
4339
4241
|
constructor(parent, invokingState) {
|
|
4340
4242
|
super(parent, invokingState);
|
|
4341
4243
|
}
|
|
4342
|
-
|
|
4343
|
-
|
|
4344
|
-
return this.getTokens(CircuitScriptParser.NEWLINE);
|
|
4345
|
-
}
|
|
4346
|
-
else {
|
|
4347
|
-
return this.getToken(CircuitScriptParser.NEWLINE, i);
|
|
4348
|
-
}
|
|
4349
|
-
}
|
|
4350
|
-
INDENT() {
|
|
4351
|
-
return this.getToken(CircuitScriptParser.INDENT, 0);
|
|
4352
|
-
}
|
|
4353
|
-
DEDENT() {
|
|
4354
|
-
return this.getToken(CircuitScriptParser.DEDENT, 0);
|
|
4355
|
-
}
|
|
4356
|
-
expression(i) {
|
|
4357
|
-
if (i === undefined) {
|
|
4358
|
-
return this.getRuleContexts(ExpressionContext);
|
|
4359
|
-
}
|
|
4360
|
-
return this.getRuleContext(i, ExpressionContext);
|
|
4244
|
+
expressions_block() {
|
|
4245
|
+
return this.getRuleContext(0, Expressions_blockContext);
|
|
4361
4246
|
}
|
|
4362
4247
|
get ruleIndex() {
|
|
4363
4248
|
return CircuitScriptParser.RULE_at_block_pin_expression_complex;
|
|
@@ -4623,6 +4508,9 @@ export class DataExprContext extends Data_exprContext {
|
|
|
4623
4508
|
create_graphic_expr() {
|
|
4624
4509
|
return this.getRuleContext(0, Create_graphic_exprContext);
|
|
4625
4510
|
}
|
|
4511
|
+
create_module_expr() {
|
|
4512
|
+
return this.getRuleContext(0, Create_module_exprContext);
|
|
4513
|
+
}
|
|
4626
4514
|
accept(visitor) {
|
|
4627
4515
|
if (visitor.visitDataExpr) {
|
|
4628
4516
|
return visitor.visitDataExpr(this);
|
|
@@ -5044,6 +4932,28 @@ export class Function_return_exprContext extends antlr.ParserRuleContext {
|
|
|
5044
4932
|
}
|
|
5045
4933
|
}
|
|
5046
4934
|
}
|
|
4935
|
+
export class Property_block_exprContext extends antlr.ParserRuleContext {
|
|
4936
|
+
constructor(parent, invokingState) {
|
|
4937
|
+
super(parent, invokingState);
|
|
4938
|
+
}
|
|
4939
|
+
property_key_expr() {
|
|
4940
|
+
return this.getRuleContext(0, Property_key_exprContext);
|
|
4941
|
+
}
|
|
4942
|
+
expressions_block() {
|
|
4943
|
+
return this.getRuleContext(0, Expressions_blockContext);
|
|
4944
|
+
}
|
|
4945
|
+
get ruleIndex() {
|
|
4946
|
+
return CircuitScriptParser.RULE_property_block_expr;
|
|
4947
|
+
}
|
|
4948
|
+
accept(visitor) {
|
|
4949
|
+
if (visitor.visitProperty_block_expr) {
|
|
4950
|
+
return visitor.visitProperty_block_expr(this);
|
|
4951
|
+
}
|
|
4952
|
+
else {
|
|
4953
|
+
return visitor.visitChildren(this);
|
|
4954
|
+
}
|
|
4955
|
+
}
|
|
4956
|
+
}
|
|
5047
4957
|
export class Create_component_exprContext extends antlr.ParserRuleContext {
|
|
5048
4958
|
constructor(parent, invokingState) {
|
|
5049
4959
|
super(parent, invokingState);
|
|
@@ -5128,6 +5038,54 @@ export class Create_graphic_exprContext extends antlr.ParserRuleContext {
|
|
|
5128
5038
|
}
|
|
5129
5039
|
}
|
|
5130
5040
|
}
|
|
5041
|
+
export class Create_module_exprContext extends antlr.ParserRuleContext {
|
|
5042
|
+
constructor(parent, invokingState) {
|
|
5043
|
+
super(parent, invokingState);
|
|
5044
|
+
}
|
|
5045
|
+
Create() {
|
|
5046
|
+
return this.getToken(CircuitScriptParser.Create, 0);
|
|
5047
|
+
}
|
|
5048
|
+
Module() {
|
|
5049
|
+
return this.getToken(CircuitScriptParser.Module, 0);
|
|
5050
|
+
}
|
|
5051
|
+
NEWLINE(i) {
|
|
5052
|
+
if (i === undefined) {
|
|
5053
|
+
return this.getTokens(CircuitScriptParser.NEWLINE);
|
|
5054
|
+
}
|
|
5055
|
+
else {
|
|
5056
|
+
return this.getToken(CircuitScriptParser.NEWLINE, i);
|
|
5057
|
+
}
|
|
5058
|
+
}
|
|
5059
|
+
INDENT() {
|
|
5060
|
+
return this.getToken(CircuitScriptParser.INDENT, 0);
|
|
5061
|
+
}
|
|
5062
|
+
DEDENT() {
|
|
5063
|
+
return this.getToken(CircuitScriptParser.DEDENT, 0);
|
|
5064
|
+
}
|
|
5065
|
+
property_expr(i) {
|
|
5066
|
+
if (i === undefined) {
|
|
5067
|
+
return this.getRuleContexts(Property_exprContext);
|
|
5068
|
+
}
|
|
5069
|
+
return this.getRuleContext(i, Property_exprContext);
|
|
5070
|
+
}
|
|
5071
|
+
property_block_expr(i) {
|
|
5072
|
+
if (i === undefined) {
|
|
5073
|
+
return this.getRuleContexts(Property_block_exprContext);
|
|
5074
|
+
}
|
|
5075
|
+
return this.getRuleContext(i, Property_block_exprContext);
|
|
5076
|
+
}
|
|
5077
|
+
get ruleIndex() {
|
|
5078
|
+
return CircuitScriptParser.RULE_create_module_expr;
|
|
5079
|
+
}
|
|
5080
|
+
accept(visitor) {
|
|
5081
|
+
if (visitor.visitCreate_module_expr) {
|
|
5082
|
+
return visitor.visitCreate_module_expr(this);
|
|
5083
|
+
}
|
|
5084
|
+
else {
|
|
5085
|
+
return visitor.visitChildren(this);
|
|
5086
|
+
}
|
|
5087
|
+
}
|
|
5088
|
+
}
|
|
5131
5089
|
export class Nested_properties_innerContext extends antlr.ParserRuleContext {
|
|
5132
5090
|
constructor(parent, invokingState) {
|
|
5133
5091
|
super(parent, invokingState);
|
|
@@ -5440,25 +5398,8 @@ export class Frame_exprContext extends antlr.ParserRuleContext {
|
|
|
5440
5398
|
Frame() {
|
|
5441
5399
|
return this.getToken(CircuitScriptParser.Frame, 0);
|
|
5442
5400
|
}
|
|
5443
|
-
|
|
5444
|
-
|
|
5445
|
-
return this.getTokens(CircuitScriptParser.NEWLINE);
|
|
5446
|
-
}
|
|
5447
|
-
else {
|
|
5448
|
-
return this.getToken(CircuitScriptParser.NEWLINE, i);
|
|
5449
|
-
}
|
|
5450
|
-
}
|
|
5451
|
-
INDENT() {
|
|
5452
|
-
return this.getToken(CircuitScriptParser.INDENT, 0);
|
|
5453
|
-
}
|
|
5454
|
-
DEDENT() {
|
|
5455
|
-
return this.getToken(CircuitScriptParser.DEDENT, 0);
|
|
5456
|
-
}
|
|
5457
|
-
expression(i) {
|
|
5458
|
-
if (i === undefined) {
|
|
5459
|
-
return this.getRuleContexts(ExpressionContext);
|
|
5460
|
-
}
|
|
5461
|
-
return this.getRuleContext(i, ExpressionContext);
|
|
5401
|
+
expressions_block() {
|
|
5402
|
+
return this.getRuleContext(0, Expressions_blockContext);
|
|
5462
5403
|
}
|
|
5463
5404
|
get ruleIndex() {
|
|
5464
5405
|
return CircuitScriptParser.RULE_frame_expr;
|
|
@@ -5482,25 +5423,8 @@ export class If_exprContext extends antlr.ParserRuleContext {
|
|
|
5482
5423
|
data_expr() {
|
|
5483
5424
|
return this.getRuleContext(0, Data_exprContext);
|
|
5484
5425
|
}
|
|
5485
|
-
|
|
5486
|
-
|
|
5487
|
-
return this.getTokens(CircuitScriptParser.NEWLINE);
|
|
5488
|
-
}
|
|
5489
|
-
else {
|
|
5490
|
-
return this.getToken(CircuitScriptParser.NEWLINE, i);
|
|
5491
|
-
}
|
|
5492
|
-
}
|
|
5493
|
-
INDENT() {
|
|
5494
|
-
return this.getToken(CircuitScriptParser.INDENT, 0);
|
|
5495
|
-
}
|
|
5496
|
-
DEDENT() {
|
|
5497
|
-
return this.getToken(CircuitScriptParser.DEDENT, 0);
|
|
5498
|
-
}
|
|
5499
|
-
expression(i) {
|
|
5500
|
-
if (i === undefined) {
|
|
5501
|
-
return this.getRuleContexts(ExpressionContext);
|
|
5502
|
-
}
|
|
5503
|
-
return this.getRuleContext(i, ExpressionContext);
|
|
5426
|
+
expressions_block() {
|
|
5427
|
+
return this.getRuleContext(0, Expressions_blockContext);
|
|
5504
5428
|
}
|
|
5505
5429
|
if_inner_expr(i) {
|
|
5506
5430
|
if (i === undefined) {
|
|
@@ -5536,25 +5460,8 @@ export class If_inner_exprContext extends antlr.ParserRuleContext {
|
|
|
5536
5460
|
data_expr() {
|
|
5537
5461
|
return this.getRuleContext(0, Data_exprContext);
|
|
5538
5462
|
}
|
|
5539
|
-
|
|
5540
|
-
|
|
5541
|
-
return this.getTokens(CircuitScriptParser.NEWLINE);
|
|
5542
|
-
}
|
|
5543
|
-
else {
|
|
5544
|
-
return this.getToken(CircuitScriptParser.NEWLINE, i);
|
|
5545
|
-
}
|
|
5546
|
-
}
|
|
5547
|
-
INDENT() {
|
|
5548
|
-
return this.getToken(CircuitScriptParser.INDENT, 0);
|
|
5549
|
-
}
|
|
5550
|
-
DEDENT() {
|
|
5551
|
-
return this.getToken(CircuitScriptParser.DEDENT, 0);
|
|
5552
|
-
}
|
|
5553
|
-
expression(i) {
|
|
5554
|
-
if (i === undefined) {
|
|
5555
|
-
return this.getRuleContexts(ExpressionContext);
|
|
5556
|
-
}
|
|
5557
|
-
return this.getRuleContext(i, ExpressionContext);
|
|
5463
|
+
expressions_block() {
|
|
5464
|
+
return this.getRuleContext(0, Expressions_blockContext);
|
|
5558
5465
|
}
|
|
5559
5466
|
get ruleIndex() {
|
|
5560
5467
|
return CircuitScriptParser.RULE_if_inner_expr;
|
|
@@ -5575,25 +5482,8 @@ export class Else_exprContext extends antlr.ParserRuleContext {
|
|
|
5575
5482
|
Else() {
|
|
5576
5483
|
return this.getToken(CircuitScriptParser.Else, 0);
|
|
5577
5484
|
}
|
|
5578
|
-
|
|
5579
|
-
|
|
5580
|
-
return this.getTokens(CircuitScriptParser.NEWLINE);
|
|
5581
|
-
}
|
|
5582
|
-
else {
|
|
5583
|
-
return this.getToken(CircuitScriptParser.NEWLINE, i);
|
|
5584
|
-
}
|
|
5585
|
-
}
|
|
5586
|
-
INDENT() {
|
|
5587
|
-
return this.getToken(CircuitScriptParser.INDENT, 0);
|
|
5588
|
-
}
|
|
5589
|
-
DEDENT() {
|
|
5590
|
-
return this.getToken(CircuitScriptParser.DEDENT, 0);
|
|
5591
|
-
}
|
|
5592
|
-
expression(i) {
|
|
5593
|
-
if (i === undefined) {
|
|
5594
|
-
return this.getRuleContexts(ExpressionContext);
|
|
5595
|
-
}
|
|
5596
|
-
return this.getRuleContext(i, ExpressionContext);
|
|
5485
|
+
expressions_block() {
|
|
5486
|
+
return this.getRuleContext(0, Expressions_blockContext);
|
|
5597
5487
|
}
|
|
5598
5488
|
get ruleIndex() {
|
|
5599
5489
|
return CircuitScriptParser.RULE_else_expr;
|