blob: d162bbcb6c31bd910d7af03d7678100fba0bd8c3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
|
@ ProgramNode (location: (0...345))
├── locals: []
└── statements:
@ StatementsNode (location: (0...345))
└── body: (length: 47)
├── @ SymbolNode (location: (0...6))
│ ├── opening_loc: (0...2) = ":'"
│ ├── value_loc: (2...5) = "abc"
│ ├── closing_loc: (5...6) = "'"
│ └── unescaped: "abc"
├── @ InterpolatedSymbolNode (location: (8...17))
│ ├── opening_loc: (8...10) = ":\""
│ ├── parts: (length: 1)
│ │ └── @ EmbeddedStatementsNode (location: (10...16))
│ │ ├── opening_loc: (10...12) = "\#{"
│ │ ├── statements:
│ │ │ @ StatementsNode (location: (12...15))
│ │ │ └── body: (length: 1)
│ │ │ └── @ CallNode (location: (12...15))
│ │ │ ├── receiver: ∅
│ │ │ ├── call_operator_loc: ∅
│ │ │ ├── message_loc: (12...15) = "var"
│ │ │ ├── opening_loc: ∅
│ │ │ ├── arguments: ∅
│ │ │ ├── closing_loc: ∅
│ │ │ ├── block: ∅
│ │ │ ├── flags: variable_call
│ │ │ └── name: "var"
│ │ └── closing_loc: (15...16) = "}"
│ └── closing_loc: (16...17) = "\""
├── @ InterpolatedSymbolNode (location: (19...29))
│ ├── opening_loc: (19...21) = ":\""
│ ├── parts: (length: 2)
│ │ ├── @ StringNode (location: (21...24))
│ │ │ ├── flags: ∅
│ │ │ ├── opening_loc: ∅
│ │ │ ├── content_loc: (21...24) = "abc"
│ │ │ ├── closing_loc: ∅
│ │ │ └── unescaped: "abc"
│ │ └── @ EmbeddedStatementsNode (location: (24...28))
│ │ ├── opening_loc: (24...26) = "\#{"
│ │ ├── statements:
│ │ │ @ StatementsNode (location: (26...27))
│ │ │ └── body: (length: 1)
│ │ │ └── @ IntegerNode (location: (26...27))
│ │ │ └── flags: decimal
│ │ └── closing_loc: (27...28) = "}"
│ └── closing_loc: (28...29) = "\""
├── @ ArrayNode (location: (31...51))
│ ├── elements: (length: 4)
│ │ ├── @ SymbolNode (location: (32...35))
│ │ │ ├── opening_loc: (32...33) = ":"
│ │ │ ├── value_loc: (33...35) = "Υ"
│ │ │ ├── closing_loc: ∅
│ │ │ └── unescaped: "Υ"
│ │ ├── @ SymbolNode (location: (37...40))
│ │ │ ├── opening_loc: (37...38) = ":"
│ │ │ ├── value_loc: (38...40) = "ά"
│ │ │ ├── closing_loc: ∅
│ │ │ └── unescaped: "ά"
│ │ ├── @ SymbolNode (location: (42...45))
│ │ │ ├── opening_loc: (42...43) = ":"
│ │ │ ├── value_loc: (43...45) = "ŗ"
│ │ │ ├── closing_loc: ∅
│ │ │ └── unescaped: "ŗ"
│ │ └── @ SymbolNode (location: (47...50))
│ │ ├── opening_loc: (47...48) = ":"
│ │ ├── value_loc: (48...50) = "ρ"
│ │ ├── closing_loc: ∅
│ │ └── unescaped: "ρ"
│ ├── opening_loc: (31...32) = "["
│ └── closing_loc: (50...51) = "]"
├── @ SymbolNode (location: (53...56))
│ ├── opening_loc: (53...54) = ":"
│ ├── value_loc: (54...56) = "-@"
│ ├── closing_loc: ∅
│ └── unescaped: "-@"
├── @ SymbolNode (location: (58...60))
│ ├── opening_loc: (58...59) = ":"
│ ├── value_loc: (59...60) = "-"
│ ├── closing_loc: ∅
│ └── unescaped: "-"
├── @ SymbolNode (location: (62...64))
│ ├── opening_loc: (62...63) = ":"
│ ├── value_loc: (63...64) = "%"
│ ├── closing_loc: ∅
│ └── unescaped: "%"
├── @ SymbolNode (location: (66...68))
│ ├── opening_loc: (66...67) = ":"
│ ├── value_loc: (67...68) = "|"
│ ├── closing_loc: ∅
│ └── unescaped: "|"
├── @ SymbolNode (location: (70...73))
│ ├── opening_loc: (70...71) = ":"
│ ├── value_loc: (71...73) = "+@"
│ ├── closing_loc: ∅
│ └── unescaped: "+@"
├── @ SymbolNode (location: (75...77))
│ ├── opening_loc: (75...76) = ":"
│ ├── value_loc: (76...77) = "+"
│ ├── closing_loc: ∅
│ └── unescaped: "+"
├── @ SymbolNode (location: (79...81))
│ ├── opening_loc: (79...80) = ":"
│ ├── value_loc: (80...81) = "/"
│ ├── closing_loc: ∅
│ └── unescaped: "/"
├── @ SymbolNode (location: (83...86))
│ ├── opening_loc: (83...84) = ":"
│ ├── value_loc: (84...86) = "**"
│ ├── closing_loc: ∅
│ └── unescaped: "**"
├── @ SymbolNode (location: (88...90))
│ ├── opening_loc: (88...89) = ":"
│ ├── value_loc: (89...90) = "*"
│ ├── closing_loc: ∅
│ └── unescaped: "*"
├── @ SymbolNode (location: (92...95))
│ ├── opening_loc: (92...93) = ":"
│ ├── value_loc: (93...95) = "~@"
│ ├── closing_loc: ∅
│ └── unescaped: "~@"
├── @ ArrayNode (location: (97...113))
│ ├── elements: (length: 4)
│ │ ├── @ IntegerNode (location: (98...99))
│ │ │ └── flags: decimal
│ │ ├── @ FloatNode (location: (101...104))
│ │ ├── @ RationalNode (location: (106...108))
│ │ │ └── numeric:
│ │ │ @ IntegerNode (location: (106...107))
│ │ │ └── flags: decimal
│ │ └── @ ImaginaryNode (location: (110...112))
│ │ └── numeric:
│ │ @ IntegerNode (location: (110...111))
│ │ └── flags: decimal
│ ├── opening_loc: (97...98) = "["
│ └── closing_loc: (112...113) = "]"
├── @ SymbolNode (location: (115...117))
│ ├── opening_loc: (115...116) = ":"
│ ├── value_loc: (116...117) = "~"
│ ├── closing_loc: ∅
│ └── unescaped: "~"
├── @ SymbolNode (location: (119...121))
│ ├── opening_loc: (119...120) = ":"
│ ├── value_loc: (120...121) = "a"
│ ├── closing_loc: ∅
│ └── unescaped: "a"
├── @ ArrayNode (location: (123...132))
│ ├── elements: (length: 3)
│ │ ├── @ SymbolNode (location: (126...127))
│ │ │ ├── opening_loc: ∅
│ │ │ ├── value_loc: (126...127) = "a"
│ │ │ ├── closing_loc: ∅
│ │ │ └── unescaped: "a"
│ │ ├── @ SymbolNode (location: (128...129))
│ │ │ ├── opening_loc: ∅
│ │ │ ├── value_loc: (128...129) = "b"
│ │ │ ├── closing_loc: ∅
│ │ │ └── unescaped: "b"
│ │ └── @ SymbolNode (location: (130...131))
│ │ ├── opening_loc: ∅
│ │ ├── value_loc: (130...131) = "c"
│ │ ├── closing_loc: ∅
│ │ └── unescaped: "c"
│ ├── opening_loc: (123...126) = "%i["
│ └── closing_loc: (131...132) = "]"
├── @ ArrayNode (location: (134...158))
│ ├── elements: (length: 4)
│ │ ├── @ SymbolNode (location: (137...138))
│ │ │ ├── opening_loc: ∅
│ │ │ ├── value_loc: (137...138) = "a"
│ │ │ ├── closing_loc: ∅
│ │ │ └── unescaped: "a"
│ │ ├── @ SymbolNode (location: (139...144))
│ │ │ ├── opening_loc: ∅
│ │ │ ├── value_loc: (139...144) = "b\#{1}"
│ │ │ ├── closing_loc: ∅
│ │ │ └── unescaped: "b\#{1}"
│ │ ├── @ SymbolNode (location: (145...150))
│ │ │ ├── opening_loc: ∅
│ │ │ ├── value_loc: (145...150) = "\#{2}c"
│ │ │ ├── closing_loc: ∅
│ │ │ └── unescaped: "\#{2}c"
│ │ └── @ SymbolNode (location: (151...157))
│ │ ├── opening_loc: ∅
│ │ ├── value_loc: (151...157) = "d\#{3}f"
│ │ ├── closing_loc: ∅
│ │ └── unescaped: "d\#{3}f"
│ ├── opening_loc: (134...137) = "%i["
│ └── closing_loc: (157...158) = "]"
├── @ ArrayNode (location: (160...184))
│ ├── elements: (length: 4)
│ │ ├── @ SymbolNode (location: (163...164))
│ │ │ ├── opening_loc: ∅
│ │ │ ├── value_loc: (163...164) = "a"
│ │ │ ├── closing_loc: ∅
│ │ │ └── unescaped: "a"
│ │ ├── @ InterpolatedSymbolNode (location: (165...170))
│ │ │ ├── opening_loc: ∅
│ │ │ ├── parts: (length: 2)
│ │ │ │ ├── @ StringNode (location: (165...166))
│ │ │ │ │ ├── flags: ∅
│ │ │ │ │ ├── opening_loc: ∅
│ │ │ │ │ ├── content_loc: (165...166) = "b"
│ │ │ │ │ ├── closing_loc: ∅
│ │ │ │ │ └── unescaped: "b"
│ │ │ │ └── @ EmbeddedStatementsNode (location: (166...170))
│ │ │ │ ├── opening_loc: (166...168) = "\#{"
│ │ │ │ ├── statements:
│ │ │ │ │ @ StatementsNode (location: (168...169))
│ │ │ │ │ └── body: (length: 1)
│ │ │ │ │ └── @ IntegerNode (location: (168...169))
│ │ │ │ │ └── flags: decimal
│ │ │ │ └── closing_loc: (169...170) = "}"
│ │ │ └── closing_loc: ∅
│ │ ├── @ InterpolatedSymbolNode (location: (171...176))
│ │ │ ├── opening_loc: ∅
│ │ │ ├── parts: (length: 2)
│ │ │ │ ├── @ EmbeddedStatementsNode (location: (171...175))
│ │ │ │ │ ├── opening_loc: (171...173) = "\#{"
│ │ │ │ │ ├── statements:
│ │ │ │ │ │ @ StatementsNode (location: (173...174))
│ │ │ │ │ │ └── body: (length: 1)
│ │ │ │ │ │ └── @ IntegerNode (location: (173...174))
│ │ │ │ │ │ └── flags: decimal
│ │ │ │ │ └── closing_loc: (174...175) = "}"
│ │ │ │ └── @ StringNode (location: (175...176))
│ │ │ │ ├── flags: ∅
│ │ │ │ ├── opening_loc: ∅
│ │ │ │ ├── content_loc: (175...176) = "c"
│ │ │ │ ├── closing_loc: ∅
│ │ │ │ └── unescaped: "c"
│ │ │ └── closing_loc: ∅
│ │ └── @ InterpolatedSymbolNode (location: (177...183))
│ │ ├── opening_loc: ∅
│ │ ├── parts: (length: 3)
│ │ │ ├── @ StringNode (location: (177...178))
│ │ │ │ ├── flags: ∅
│ │ │ │ ├── opening_loc: ∅
│ │ │ │ ├── content_loc: (177...178) = "d"
│ │ │ │ ├── closing_loc: ∅
│ │ │ │ └── unescaped: "d"
│ │ │ ├── @ EmbeddedStatementsNode (location: (178...182))
│ │ │ │ ├── opening_loc: (178...180) = "\#{"
│ │ │ │ ├── statements:
│ │ │ │ │ @ StatementsNode (location: (180...181))
│ │ │ │ │ └── body: (length: 1)
│ │ │ │ │ └── @ IntegerNode (location: (180...181))
│ │ │ │ │ └── flags: decimal
│ │ │ │ └── closing_loc: (181...182) = "}"
│ │ │ └── @ StringNode (location: (182...183))
│ │ │ ├── flags: ∅
│ │ │ ├── opening_loc: ∅
│ │ │ ├── content_loc: (182...183) = "f"
│ │ │ ├── closing_loc: ∅
│ │ │ └── unescaped: "f"
│ │ └── closing_loc: ∅
│ ├── opening_loc: (160...163) = "%I["
│ └── closing_loc: (183...184) = "]"
├── @ SymbolNode (location: (186...190))
│ ├── opening_loc: (186...187) = ":"
│ ├── value_loc: (187...190) = "@@a"
│ ├── closing_loc: ∅
│ └── unescaped: "@@a"
├── @ SymbolNode (location: (192...197))
│ ├── opening_loc: (192...193) = ":"
│ ├── value_loc: (193...197) = "👍"
│ ├── closing_loc: ∅
│ └── unescaped: "👍"
├── @ ArrayNode (location: (199...206))
│ ├── elements: (length: 1)
│ │ └── @ SymbolNode (location: (202...205))
│ │ ├── opening_loc: ∅
│ │ ├── value_loc: (202...205) = "a\\b"
│ │ ├── closing_loc: ∅
│ │ └── unescaped: "a\\b"
│ ├── opening_loc: (199...202) = "%i["
│ └── closing_loc: (205...206) = "]"
├── @ SymbolNode (location: (208...211))
│ ├── opening_loc: (208...209) = ":"
│ ├── value_loc: (209...211) = "$a"
│ ├── closing_loc: ∅
│ └── unescaped: "$a"
├── @ SymbolNode (location: (213...216))
│ ├── opening_loc: (213...214) = ":"
│ ├── value_loc: (214...216) = "@a"
│ ├── closing_loc: ∅
│ └── unescaped: "@a"
├── @ SymbolNode (location: (218...221))
│ ├── opening_loc: (218...219) = ":"
│ ├── value_loc: (219...221) = "do"
│ ├── closing_loc: ∅
│ └── unescaped: "do"
├── @ SymbolNode (location: (223...225))
│ ├── opening_loc: (223...224) = ":"
│ ├── value_loc: (224...225) = "&"
│ ├── closing_loc: ∅
│ └── unescaped: "&"
├── @ SymbolNode (location: (227...229))
│ ├── opening_loc: (227...228) = ":"
│ ├── value_loc: (228...229) = "`"
│ ├── closing_loc: ∅
│ └── unescaped: "`"
├── @ SymbolNode (location: (231...234))
│ ├── opening_loc: (231...232) = ":"
│ ├── value_loc: (232...234) = "!@"
│ ├── closing_loc: ∅
│ └── unescaped: "!@"
├── @ SymbolNode (location: (236...239))
│ ├── opening_loc: (236...237) = ":"
│ ├── value_loc: (237...239) = "!~"
│ ├── closing_loc: ∅
│ └── unescaped: "!~"
├── @ SymbolNode (location: (241...243))
│ ├── opening_loc: (241...242) = ":"
│ ├── value_loc: (242...243) = "!"
│ ├── closing_loc: ∅
│ └── unescaped: "!"
├── @ SymbolNode (location: (245...248))
│ ├── opening_loc: (245...246) = ":"
│ ├── value_loc: (246...248) = "[]"
│ ├── closing_loc: ∅
│ └── unescaped: "[]"
├── @ SymbolNode (location: (250...254))
│ ├── opening_loc: (250...251) = ":"
│ ├── value_loc: (251...254) = "[]="
│ ├── closing_loc: ∅
│ └── unescaped: "[]="
├── @ SymbolNode (location: (256...258))
│ ├── opening_loc: (256...257) = ":"
│ ├── value_loc: (257...258) = "^"
│ ├── closing_loc: ∅
│ └── unescaped: "^"
├── @ SymbolNode (location: (260...263))
│ ├── opening_loc: (260...261) = ":"
│ ├── value_loc: (261...263) = "=="
│ ├── closing_loc: ∅
│ └── unescaped: "=="
├── @ SymbolNode (location: (265...269))
│ ├── opening_loc: (265...266) = ":"
│ ├── value_loc: (266...269) = "==="
│ ├── closing_loc: ∅
│ └── unescaped: "==="
├── @ SymbolNode (location: (271...274))
│ ├── opening_loc: (271...272) = ":"
│ ├── value_loc: (272...274) = "=~"
│ ├── closing_loc: ∅
│ └── unescaped: "=~"
├── @ SymbolNode (location: (276...279))
│ ├── opening_loc: (276...277) = ":"
│ ├── value_loc: (277...279) = ">="
│ ├── closing_loc: ∅
│ └── unescaped: ">="
├── @ SymbolNode (location: (281...284))
│ ├── opening_loc: (281...282) = ":"
│ ├── value_loc: (282...284) = ">>"
│ ├── closing_loc: ∅
│ └── unescaped: ">>"
├── @ SymbolNode (location: (286...288))
│ ├── opening_loc: (286...287) = ":"
│ ├── value_loc: (287...288) = ">"
│ ├── closing_loc: ∅
│ └── unescaped: ">"
├── @ SymbolNode (location: (290...294))
│ ├── opening_loc: (290...291) = ":"
│ ├── value_loc: (291...294) = "<=>"
│ ├── closing_loc: ∅
│ └── unescaped: "<=>"
├── @ SymbolNode (location: (296...299))
│ ├── opening_loc: (296...297) = ":"
│ ├── value_loc: (297...299) = "<="
│ ├── closing_loc: ∅
│ └── unescaped: "<="
├── @ SymbolNode (location: (301...304))
│ ├── opening_loc: (301...302) = ":"
│ ├── value_loc: (302...304) = "<<"
│ ├── closing_loc: ∅
│ └── unescaped: "<<"
├── @ SymbolNode (location: (306...308))
│ ├── opening_loc: (306...307) = ":"
│ ├── value_loc: (307...308) = "<"
│ ├── closing_loc: ∅
│ └── unescaped: "<"
├── @ SymbolNode (location: (310...319))
│ ├── opening_loc: (310...311) = ":"
│ ├── value_loc: (311...319) = "__LINE__"
│ ├── closing_loc: ∅
│ └── unescaped: "__LINE__"
├── @ SymbolNode (location: (321...330))
│ ├── opening_loc: (321...322) = ":"
│ ├── value_loc: (322...330) = "__FILE__"
│ ├── closing_loc: ∅
│ └── unescaped: "__FILE__"
└── @ SymbolNode (location: (332...345))
├── opening_loc: (332...333) = ":"
├── value_loc: (333...345) = "__ENCODING__"
├── closing_loc: ∅
└── unescaped: "__ENCODING__"
|