@algosail/tree-sitter 0.1.6 → 0.1.8
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/grammar.js +7 -59
- package/package.json +5 -2
- package/src/grammar.json +8 -185
- package/src/node-types.json +7 -169
- package/src/parser.c +1468 -2352
- package/tree-sitter-sail.wasm +0 -0
package/grammar.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
/// <reference types="tree-sitter-cli/dsl" />
|
|
2
2
|
// @ts-check
|
|
3
3
|
|
|
4
|
+
const { builtinWords } = require('@algosail/builtins')
|
|
5
|
+
|
|
4
6
|
module.exports = grammar({
|
|
5
7
|
name: 'sail',
|
|
6
8
|
|
|
@@ -12,8 +14,6 @@ module.exports = grammar({
|
|
|
12
14
|
// top-level construct. Cannot be resolved by LALR(1).
|
|
13
15
|
[$.group],
|
|
14
16
|
[$.tag],
|
|
15
|
-
[$.map],
|
|
16
|
-
[$.field],
|
|
17
17
|
|
|
18
18
|
// After word_def + sig + optional(doc), a comment is ambiguous:
|
|
19
19
|
// it could be the doc field OR an _expr in the body.
|
|
@@ -22,7 +22,7 @@ module.exports = grammar({
|
|
|
22
22
|
|
|
23
23
|
rules: {
|
|
24
24
|
source_file: ($) => repeat($._top_level),
|
|
25
|
-
_top_level: ($) => choice($.comment, $.import, $.group, $.
|
|
25
|
+
_top_level: ($) => choice($.comment, $.import, $.group, $.word),
|
|
26
26
|
|
|
27
27
|
// ~Module
|
|
28
28
|
module_def: ($) => /\+[A-Z][a-zA-Z0-9_]*/,
|
|
@@ -40,14 +40,6 @@ module.exports = grammar({
|
|
|
40
40
|
tag_pattern: ($) => /\_[A-Z][a-zA-Z0-9_]*/,
|
|
41
41
|
// _
|
|
42
42
|
default_pattern: ($) => token('_'),
|
|
43
|
-
// $Map
|
|
44
|
-
map_def: ($) => /\$[A-Z][a-zA-Z0-9_]*/,
|
|
45
|
-
// $Map
|
|
46
|
-
map_ref: ($) => /\$[A-Z][a-zA-Z0-9_]*/,
|
|
47
|
-
// .field
|
|
48
|
-
field_def: ($) => /\.[a-z][a-zA-Z0-9_]*/,
|
|
49
|
-
// $Map.field
|
|
50
|
-
field_ref: ($) => /\$[A-Z][a-zA-Z0-9_]*\.[a-z][a-zA-Z0-9_]*/,
|
|
51
43
|
// @word
|
|
52
44
|
word_def: ($) => /@[a-z][a-zA-Z0-9_]*/,
|
|
53
45
|
// /word
|
|
@@ -59,10 +51,6 @@ module.exports = grammar({
|
|
|
59
51
|
module_tag_ref: ($) => /~[A-Z][a-zA-Z0-9_]*#[A-Z][a-zA-Z0-9_]*/,
|
|
60
52
|
// ~Module#Tag
|
|
61
53
|
module_tag_pattern: ($) => /~[A-Z][a-zA-Z0-9_]*\_[A-Z][a-zA-Z0-9_]*/,
|
|
62
|
-
// ~Module$Map
|
|
63
|
-
module_map_ref: ($) => /~[A-Z][a-zA-Z0-9_]*\$[A-Z][a-zA-Z0-9_]*/,
|
|
64
|
-
// ~Module$Map.field
|
|
65
|
-
module_field_ref: ($) => /~[A-Z][a-zA-Z0-9_]*\$[A-Z][a-zA-Z0-9_]*\.[a-z][a-zA-Z0-9_]*/,
|
|
66
54
|
// ~Module/word
|
|
67
55
|
module_word_ref: ($) => /~[A-Z][a-zA-Z0-9_]*\/[a-z][a-zA-Z0-9_]*/,
|
|
68
56
|
|
|
@@ -70,8 +58,6 @@ module.exports = grammar({
|
|
|
70
58
|
type: ($) => /[A-Z][a-zA-Z0-9_]*/,
|
|
71
59
|
// Lowercase type variable: a, b, elem, etc.
|
|
72
60
|
type_var: ($) => /[a-z][a-zA-Z0-9_]*/,
|
|
73
|
-
// Lowercase type variable: a, b, elem, etc.
|
|
74
|
-
spread: ($) => /\.\.[a-z][a-zA-Z0-9_]*/,
|
|
75
61
|
|
|
76
62
|
// +Effect
|
|
77
63
|
effect_add: ($) => /\+[A-Z][a-zA-Z0-9_]*/,
|
|
@@ -92,6 +78,7 @@ module.exports = grammar({
|
|
|
92
78
|
// when there is a tie. Structural characters ( ) [ ] are excluded because
|
|
93
79
|
// they are needed by the parser to delimit blocks and comments.
|
|
94
80
|
raw_value: ($) => token(prec(-1, /[^\s\[\]()']+/)),
|
|
81
|
+
raw_ref: ($) => token('*'),
|
|
95
82
|
|
|
96
83
|
// Comment / doc block: ( any text )
|
|
97
84
|
// comment_content is recursive: it can contain plain text and/or nested
|
|
@@ -121,17 +108,7 @@ module.exports = grammar({
|
|
|
121
108
|
group_type: ($) =>
|
|
122
109
|
seq(field('group', choice($.group_ref, $.module_group_ref)), optional($._generic)),
|
|
123
110
|
_generic: ($) => seq('{', field('params', repeat($._generic_content)), '}'),
|
|
124
|
-
_generic_content: ($) => choice($.type, $.group_type
|
|
125
|
-
|
|
126
|
-
// Map definition: %Name (.field Type)*
|
|
127
|
-
map: ($) => seq(field('def', $.map_def), optional(field('doc', $.comment)), repeat($.field)),
|
|
128
|
-
field: ($) =>
|
|
129
|
-
seq(
|
|
130
|
-
field('key', $.field_def),
|
|
131
|
-
field('type', $._field_types),
|
|
132
|
-
optional(field('doc', $.comment)),
|
|
133
|
-
),
|
|
134
|
-
_field_types: ($) => choice($.type, $.group_type, $.map_ref, $.module_map_ref),
|
|
111
|
+
_generic_content: ($) => choice($.type, $.group_type),
|
|
135
112
|
|
|
136
113
|
// Word definition: @name ( sig ) expr*
|
|
137
114
|
// Signature is required per the spec ("Word definition must have a signature").
|
|
@@ -155,14 +132,12 @@ module.exports = grammar({
|
|
|
155
132
|
choice(
|
|
156
133
|
$.effect_add,
|
|
157
134
|
$.effect_remove,
|
|
158
|
-
$.
|
|
135
|
+
$.raw_ref,
|
|
159
136
|
$.type,
|
|
160
137
|
$.type_var,
|
|
161
138
|
$.sig_list,
|
|
162
139
|
$.sig_quotation,
|
|
163
140
|
$.group_type,
|
|
164
|
-
$.map_ref,
|
|
165
|
-
$.module_map_ref,
|
|
166
141
|
),
|
|
167
142
|
|
|
168
143
|
// [ Type Type ... ] — list / tuple type in a signature
|
|
@@ -184,8 +159,6 @@ module.exports = grammar({
|
|
|
184
159
|
$.tag_pattern,
|
|
185
160
|
$.module_tag_pattern,
|
|
186
161
|
$.default_pattern,
|
|
187
|
-
$.field_ref,
|
|
188
|
-
$.module_field_ref,
|
|
189
162
|
$.slot_write,
|
|
190
163
|
$.slot_read,
|
|
191
164
|
$.raw_string,
|
|
@@ -197,31 +170,6 @@ module.exports = grammar({
|
|
|
197
170
|
|
|
198
171
|
// All-caps stack-manipulation and control-flow builtins.
|
|
199
172
|
// Listed as a single token() so they take priority over $.identifier.
|
|
200
|
-
builtin_word: ($) =>
|
|
201
|
-
token(
|
|
202
|
-
choice(
|
|
203
|
-
'DUP',
|
|
204
|
-
'SWAP',
|
|
205
|
-
'DROP',
|
|
206
|
-
'OVER',
|
|
207
|
-
'ROT',
|
|
208
|
-
'ROTR',
|
|
209
|
-
'NIP',
|
|
210
|
-
'TUCK',
|
|
211
|
-
'DUP2',
|
|
212
|
-
'DROP2',
|
|
213
|
-
'SWAP2',
|
|
214
|
-
'CALL',
|
|
215
|
-
'MATCH',
|
|
216
|
-
'COMPOSE',
|
|
217
|
-
'IF',
|
|
218
|
-
'MAP',
|
|
219
|
-
'GETL',
|
|
220
|
-
'SETL',
|
|
221
|
-
'UPDL',
|
|
222
|
-
'APP',
|
|
223
|
-
'ERROR',
|
|
224
|
-
),
|
|
225
|
-
),
|
|
173
|
+
builtin_word: ($) => token(choice(...Object.keys(builtinWords))),
|
|
226
174
|
},
|
|
227
175
|
})
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@algosail/tree-sitter",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.8",
|
|
4
4
|
"description": "Tree-sitter grammar for the Sail language",
|
|
5
5
|
"main": "bindings/node",
|
|
6
6
|
"types": "bindings/node",
|
|
@@ -39,5 +39,8 @@
|
|
|
39
39
|
"queries/*",
|
|
40
40
|
"src/**",
|
|
41
41
|
"*.wasm"
|
|
42
|
-
]
|
|
42
|
+
],
|
|
43
|
+
"dependencies": {
|
|
44
|
+
"@algosail/builtins": "^0.0.1"
|
|
45
|
+
}
|
|
43
46
|
}
|
package/src/grammar.json
CHANGED
|
@@ -24,10 +24,6 @@
|
|
|
24
24
|
"type": "SYMBOL",
|
|
25
25
|
"name": "group"
|
|
26
26
|
},
|
|
27
|
-
{
|
|
28
|
-
"type": "SYMBOL",
|
|
29
|
-
"name": "map"
|
|
30
|
-
},
|
|
31
27
|
{
|
|
32
28
|
"type": "SYMBOL",
|
|
33
29
|
"name": "word"
|
|
@@ -69,22 +65,6 @@
|
|
|
69
65
|
"value": "_"
|
|
70
66
|
}
|
|
71
67
|
},
|
|
72
|
-
"map_def": {
|
|
73
|
-
"type": "PATTERN",
|
|
74
|
-
"value": "\\$[A-Z][a-zA-Z0-9_]*"
|
|
75
|
-
},
|
|
76
|
-
"map_ref": {
|
|
77
|
-
"type": "PATTERN",
|
|
78
|
-
"value": "\\$[A-Z][a-zA-Z0-9_]*"
|
|
79
|
-
},
|
|
80
|
-
"field_def": {
|
|
81
|
-
"type": "PATTERN",
|
|
82
|
-
"value": "\\.[a-z][a-zA-Z0-9_]*"
|
|
83
|
-
},
|
|
84
|
-
"field_ref": {
|
|
85
|
-
"type": "PATTERN",
|
|
86
|
-
"value": "\\$[A-Z][a-zA-Z0-9_]*\\.[a-z][a-zA-Z0-9_]*"
|
|
87
|
-
},
|
|
88
68
|
"word_def": {
|
|
89
69
|
"type": "PATTERN",
|
|
90
70
|
"value": "@[a-z][a-zA-Z0-9_]*"
|
|
@@ -105,14 +85,6 @@
|
|
|
105
85
|
"type": "PATTERN",
|
|
106
86
|
"value": "~[A-Z][a-zA-Z0-9_]*\\_[A-Z][a-zA-Z0-9_]*"
|
|
107
87
|
},
|
|
108
|
-
"module_map_ref": {
|
|
109
|
-
"type": "PATTERN",
|
|
110
|
-
"value": "~[A-Z][a-zA-Z0-9_]*\\$[A-Z][a-zA-Z0-9_]*"
|
|
111
|
-
},
|
|
112
|
-
"module_field_ref": {
|
|
113
|
-
"type": "PATTERN",
|
|
114
|
-
"value": "~[A-Z][a-zA-Z0-9_]*\\$[A-Z][a-zA-Z0-9_]*\\.[a-z][a-zA-Z0-9_]*"
|
|
115
|
-
},
|
|
116
88
|
"module_word_ref": {
|
|
117
89
|
"type": "PATTERN",
|
|
118
90
|
"value": "~[A-Z][a-zA-Z0-9_]*\\/[a-z][a-zA-Z0-9_]*"
|
|
@@ -125,10 +97,6 @@
|
|
|
125
97
|
"type": "PATTERN",
|
|
126
98
|
"value": "[a-z][a-zA-Z0-9_]*"
|
|
127
99
|
},
|
|
128
|
-
"spread": {
|
|
129
|
-
"type": "PATTERN",
|
|
130
|
-
"value": "\\.\\.[a-z][a-zA-Z0-9_]*"
|
|
131
|
-
},
|
|
132
100
|
"effect_add": {
|
|
133
101
|
"type": "PATTERN",
|
|
134
102
|
"value": "\\+[A-Z][a-zA-Z0-9_]*"
|
|
@@ -160,6 +128,13 @@
|
|
|
160
128
|
}
|
|
161
129
|
}
|
|
162
130
|
},
|
|
131
|
+
"raw_ref": {
|
|
132
|
+
"type": "TOKEN",
|
|
133
|
+
"content": {
|
|
134
|
+
"type": "STRING",
|
|
135
|
+
"value": "*"
|
|
136
|
+
}
|
|
137
|
+
},
|
|
163
138
|
"comment": {
|
|
164
139
|
"type": "SEQ",
|
|
165
140
|
"members": [
|
|
@@ -382,108 +357,6 @@
|
|
|
382
357
|
{
|
|
383
358
|
"type": "SYMBOL",
|
|
384
359
|
"name": "group_type"
|
|
385
|
-
},
|
|
386
|
-
{
|
|
387
|
-
"type": "SYMBOL",
|
|
388
|
-
"name": "map_ref"
|
|
389
|
-
},
|
|
390
|
-
{
|
|
391
|
-
"type": "SYMBOL",
|
|
392
|
-
"name": "module_map_ref"
|
|
393
|
-
}
|
|
394
|
-
]
|
|
395
|
-
},
|
|
396
|
-
"map": {
|
|
397
|
-
"type": "SEQ",
|
|
398
|
-
"members": [
|
|
399
|
-
{
|
|
400
|
-
"type": "FIELD",
|
|
401
|
-
"name": "def",
|
|
402
|
-
"content": {
|
|
403
|
-
"type": "SYMBOL",
|
|
404
|
-
"name": "map_def"
|
|
405
|
-
}
|
|
406
|
-
},
|
|
407
|
-
{
|
|
408
|
-
"type": "CHOICE",
|
|
409
|
-
"members": [
|
|
410
|
-
{
|
|
411
|
-
"type": "FIELD",
|
|
412
|
-
"name": "doc",
|
|
413
|
-
"content": {
|
|
414
|
-
"type": "SYMBOL",
|
|
415
|
-
"name": "comment"
|
|
416
|
-
}
|
|
417
|
-
},
|
|
418
|
-
{
|
|
419
|
-
"type": "BLANK"
|
|
420
|
-
}
|
|
421
|
-
]
|
|
422
|
-
},
|
|
423
|
-
{
|
|
424
|
-
"type": "REPEAT",
|
|
425
|
-
"content": {
|
|
426
|
-
"type": "SYMBOL",
|
|
427
|
-
"name": "field"
|
|
428
|
-
}
|
|
429
|
-
}
|
|
430
|
-
]
|
|
431
|
-
},
|
|
432
|
-
"field": {
|
|
433
|
-
"type": "SEQ",
|
|
434
|
-
"members": [
|
|
435
|
-
{
|
|
436
|
-
"type": "FIELD",
|
|
437
|
-
"name": "key",
|
|
438
|
-
"content": {
|
|
439
|
-
"type": "SYMBOL",
|
|
440
|
-
"name": "field_def"
|
|
441
|
-
}
|
|
442
|
-
},
|
|
443
|
-
{
|
|
444
|
-
"type": "FIELD",
|
|
445
|
-
"name": "type",
|
|
446
|
-
"content": {
|
|
447
|
-
"type": "SYMBOL",
|
|
448
|
-
"name": "_field_types"
|
|
449
|
-
}
|
|
450
|
-
},
|
|
451
|
-
{
|
|
452
|
-
"type": "CHOICE",
|
|
453
|
-
"members": [
|
|
454
|
-
{
|
|
455
|
-
"type": "FIELD",
|
|
456
|
-
"name": "doc",
|
|
457
|
-
"content": {
|
|
458
|
-
"type": "SYMBOL",
|
|
459
|
-
"name": "comment"
|
|
460
|
-
}
|
|
461
|
-
},
|
|
462
|
-
{
|
|
463
|
-
"type": "BLANK"
|
|
464
|
-
}
|
|
465
|
-
]
|
|
466
|
-
}
|
|
467
|
-
]
|
|
468
|
-
},
|
|
469
|
-
"_field_types": {
|
|
470
|
-
"type": "CHOICE",
|
|
471
|
-
"members": [
|
|
472
|
-
{
|
|
473
|
-
"type": "SYMBOL",
|
|
474
|
-
"name": "type"
|
|
475
|
-
},
|
|
476
|
-
{
|
|
477
|
-
"type": "SYMBOL",
|
|
478
|
-
"name": "group_type"
|
|
479
|
-
},
|
|
480
|
-
{
|
|
481
|
-
"type": "SYMBOL",
|
|
482
|
-
"name": "map_ref"
|
|
483
|
-
},
|
|
484
|
-
{
|
|
485
|
-
"type": "SYMBOL",
|
|
486
|
-
"name": "module_map_ref"
|
|
487
360
|
}
|
|
488
361
|
]
|
|
489
362
|
},
|
|
@@ -590,7 +463,7 @@
|
|
|
590
463
|
},
|
|
591
464
|
{
|
|
592
465
|
"type": "SYMBOL",
|
|
593
|
-
"name": "
|
|
466
|
+
"name": "raw_ref"
|
|
594
467
|
},
|
|
595
468
|
{
|
|
596
469
|
"type": "SYMBOL",
|
|
@@ -611,14 +484,6 @@
|
|
|
611
484
|
{
|
|
612
485
|
"type": "SYMBOL",
|
|
613
486
|
"name": "group_type"
|
|
614
|
-
},
|
|
615
|
-
{
|
|
616
|
-
"type": "SYMBOL",
|
|
617
|
-
"name": "map_ref"
|
|
618
|
-
},
|
|
619
|
-
{
|
|
620
|
-
"type": "SYMBOL",
|
|
621
|
-
"name": "module_map_ref"
|
|
622
487
|
}
|
|
623
488
|
]
|
|
624
489
|
},
|
|
@@ -716,14 +581,6 @@
|
|
|
716
581
|
"type": "SYMBOL",
|
|
717
582
|
"name": "default_pattern"
|
|
718
583
|
},
|
|
719
|
-
{
|
|
720
|
-
"type": "SYMBOL",
|
|
721
|
-
"name": "field_ref"
|
|
722
|
-
},
|
|
723
|
-
{
|
|
724
|
-
"type": "SYMBOL",
|
|
725
|
-
"name": "module_field_ref"
|
|
726
|
-
},
|
|
727
584
|
{
|
|
728
585
|
"type": "SYMBOL",
|
|
729
586
|
"name": "slot_write"
|
|
@@ -822,34 +679,6 @@
|
|
|
822
679
|
{
|
|
823
680
|
"type": "STRING",
|
|
824
681
|
"value": "COMPOSE"
|
|
825
|
-
},
|
|
826
|
-
{
|
|
827
|
-
"type": "STRING",
|
|
828
|
-
"value": "IF"
|
|
829
|
-
},
|
|
830
|
-
{
|
|
831
|
-
"type": "STRING",
|
|
832
|
-
"value": "MAP"
|
|
833
|
-
},
|
|
834
|
-
{
|
|
835
|
-
"type": "STRING",
|
|
836
|
-
"value": "GETL"
|
|
837
|
-
},
|
|
838
|
-
{
|
|
839
|
-
"type": "STRING",
|
|
840
|
-
"value": "SETL"
|
|
841
|
-
},
|
|
842
|
-
{
|
|
843
|
-
"type": "STRING",
|
|
844
|
-
"value": "UPDL"
|
|
845
|
-
},
|
|
846
|
-
{
|
|
847
|
-
"type": "STRING",
|
|
848
|
-
"value": "APP"
|
|
849
|
-
},
|
|
850
|
-
{
|
|
851
|
-
"type": "STRING",
|
|
852
|
-
"value": "ERROR"
|
|
853
682
|
}
|
|
854
683
|
]
|
|
855
684
|
}
|
|
@@ -868,12 +697,6 @@
|
|
|
868
697
|
[
|
|
869
698
|
"tag"
|
|
870
699
|
],
|
|
871
|
-
[
|
|
872
|
-
"map"
|
|
873
|
-
],
|
|
874
|
-
[
|
|
875
|
-
"field"
|
|
876
|
-
],
|
|
877
700
|
[
|
|
878
701
|
"word",
|
|
879
702
|
"_expr"
|
package/src/node-types.json
CHANGED
|
@@ -34,54 +34,6 @@
|
|
|
34
34
|
"named": true,
|
|
35
35
|
"fields": {}
|
|
36
36
|
},
|
|
37
|
-
{
|
|
38
|
-
"type": "field",
|
|
39
|
-
"named": true,
|
|
40
|
-
"fields": {
|
|
41
|
-
"doc": {
|
|
42
|
-
"multiple": false,
|
|
43
|
-
"required": false,
|
|
44
|
-
"types": [
|
|
45
|
-
{
|
|
46
|
-
"type": "comment",
|
|
47
|
-
"named": true
|
|
48
|
-
}
|
|
49
|
-
]
|
|
50
|
-
},
|
|
51
|
-
"key": {
|
|
52
|
-
"multiple": false,
|
|
53
|
-
"required": true,
|
|
54
|
-
"types": [
|
|
55
|
-
{
|
|
56
|
-
"type": "field_def",
|
|
57
|
-
"named": true
|
|
58
|
-
}
|
|
59
|
-
]
|
|
60
|
-
},
|
|
61
|
-
"type": {
|
|
62
|
-
"multiple": false,
|
|
63
|
-
"required": true,
|
|
64
|
-
"types": [
|
|
65
|
-
{
|
|
66
|
-
"type": "group_type",
|
|
67
|
-
"named": true
|
|
68
|
-
},
|
|
69
|
-
{
|
|
70
|
-
"type": "map_ref",
|
|
71
|
-
"named": true
|
|
72
|
-
},
|
|
73
|
-
{
|
|
74
|
-
"type": "module_map_ref",
|
|
75
|
-
"named": true
|
|
76
|
-
},
|
|
77
|
-
{
|
|
78
|
-
"type": "type",
|
|
79
|
-
"named": true
|
|
80
|
-
}
|
|
81
|
-
]
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
},
|
|
85
37
|
{
|
|
86
38
|
"type": "group",
|
|
87
39
|
"named": true,
|
|
@@ -158,14 +110,6 @@
|
|
|
158
110
|
"type": "group_type",
|
|
159
111
|
"named": true
|
|
160
112
|
},
|
|
161
|
-
{
|
|
162
|
-
"type": "map_ref",
|
|
163
|
-
"named": true
|
|
164
|
-
},
|
|
165
|
-
{
|
|
166
|
-
"type": "module_map_ref",
|
|
167
|
-
"named": true
|
|
168
|
-
},
|
|
169
113
|
{
|
|
170
114
|
"type": "type",
|
|
171
115
|
"named": true
|
|
@@ -200,52 +144,6 @@
|
|
|
200
144
|
}
|
|
201
145
|
}
|
|
202
146
|
},
|
|
203
|
-
{
|
|
204
|
-
"type": "map",
|
|
205
|
-
"named": true,
|
|
206
|
-
"fields": {
|
|
207
|
-
"def": {
|
|
208
|
-
"multiple": false,
|
|
209
|
-
"required": true,
|
|
210
|
-
"types": [
|
|
211
|
-
{
|
|
212
|
-
"type": "map_def",
|
|
213
|
-
"named": true
|
|
214
|
-
}
|
|
215
|
-
]
|
|
216
|
-
},
|
|
217
|
-
"doc": {
|
|
218
|
-
"multiple": false,
|
|
219
|
-
"required": false,
|
|
220
|
-
"types": [
|
|
221
|
-
{
|
|
222
|
-
"type": "comment",
|
|
223
|
-
"named": true
|
|
224
|
-
}
|
|
225
|
-
]
|
|
226
|
-
}
|
|
227
|
-
},
|
|
228
|
-
"children": {
|
|
229
|
-
"multiple": true,
|
|
230
|
-
"required": false,
|
|
231
|
-
"types": [
|
|
232
|
-
{
|
|
233
|
-
"type": "field",
|
|
234
|
-
"named": true
|
|
235
|
-
}
|
|
236
|
-
]
|
|
237
|
-
}
|
|
238
|
-
},
|
|
239
|
-
{
|
|
240
|
-
"type": "map_def",
|
|
241
|
-
"named": true,
|
|
242
|
-
"fields": {}
|
|
243
|
-
},
|
|
244
|
-
{
|
|
245
|
-
"type": "map_ref",
|
|
246
|
-
"named": true,
|
|
247
|
-
"fields": {}
|
|
248
|
-
},
|
|
249
147
|
{
|
|
250
148
|
"type": "module_def",
|
|
251
149
|
"named": true,
|
|
@@ -271,14 +169,6 @@
|
|
|
271
169
|
"type": "default_pattern",
|
|
272
170
|
"named": true
|
|
273
171
|
},
|
|
274
|
-
{
|
|
275
|
-
"type": "field_ref",
|
|
276
|
-
"named": true
|
|
277
|
-
},
|
|
278
|
-
{
|
|
279
|
-
"type": "module_field_ref",
|
|
280
|
-
"named": true
|
|
281
|
-
},
|
|
282
172
|
{
|
|
283
173
|
"type": "module_tag_pattern",
|
|
284
174
|
"named": true
|
|
@@ -347,11 +237,7 @@
|
|
|
347
237
|
"named": true
|
|
348
238
|
},
|
|
349
239
|
{
|
|
350
|
-
"type": "
|
|
351
|
-
"named": true
|
|
352
|
-
},
|
|
353
|
-
{
|
|
354
|
-
"type": "module_map_ref",
|
|
240
|
+
"type": "raw_ref",
|
|
355
241
|
"named": true
|
|
356
242
|
},
|
|
357
243
|
{
|
|
@@ -362,10 +248,6 @@
|
|
|
362
248
|
"type": "sig_quotation",
|
|
363
249
|
"named": true
|
|
364
250
|
},
|
|
365
|
-
{
|
|
366
|
-
"type": "spread",
|
|
367
|
-
"named": true
|
|
368
|
-
},
|
|
369
251
|
{
|
|
370
252
|
"type": "type",
|
|
371
253
|
"named": true
|
|
@@ -398,11 +280,7 @@
|
|
|
398
280
|
"named": true
|
|
399
281
|
},
|
|
400
282
|
{
|
|
401
|
-
"type": "
|
|
402
|
-
"named": true
|
|
403
|
-
},
|
|
404
|
-
{
|
|
405
|
-
"type": "module_map_ref",
|
|
283
|
+
"type": "raw_ref",
|
|
406
284
|
"named": true
|
|
407
285
|
},
|
|
408
286
|
{
|
|
@@ -417,10 +295,6 @@
|
|
|
417
295
|
"type": "sig_quotation",
|
|
418
296
|
"named": true
|
|
419
297
|
},
|
|
420
|
-
{
|
|
421
|
-
"type": "spread",
|
|
422
|
-
"named": true
|
|
423
|
-
},
|
|
424
298
|
{
|
|
425
299
|
"type": "type",
|
|
426
300
|
"named": true
|
|
@@ -453,11 +327,7 @@
|
|
|
453
327
|
"named": true
|
|
454
328
|
},
|
|
455
329
|
{
|
|
456
|
-
"type": "
|
|
457
|
-
"named": true
|
|
458
|
-
},
|
|
459
|
-
{
|
|
460
|
-
"type": "module_map_ref",
|
|
330
|
+
"type": "raw_ref",
|
|
461
331
|
"named": true
|
|
462
332
|
},
|
|
463
333
|
{
|
|
@@ -472,10 +342,6 @@
|
|
|
472
342
|
"type": "sig_quotation",
|
|
473
343
|
"named": true
|
|
474
344
|
},
|
|
475
|
-
{
|
|
476
|
-
"type": "spread",
|
|
477
|
-
"named": true
|
|
478
|
-
},
|
|
479
345
|
{
|
|
480
346
|
"type": "type",
|
|
481
347
|
"named": true
|
|
@@ -508,10 +374,6 @@
|
|
|
508
374
|
"type": "import",
|
|
509
375
|
"named": true
|
|
510
376
|
},
|
|
511
|
-
{
|
|
512
|
-
"type": "map",
|
|
513
|
-
"named": true
|
|
514
|
-
},
|
|
515
377
|
{
|
|
516
378
|
"type": "word",
|
|
517
379
|
"named": true
|
|
@@ -585,14 +447,6 @@
|
|
|
585
447
|
"type": "default_pattern",
|
|
586
448
|
"named": true
|
|
587
449
|
},
|
|
588
|
-
{
|
|
589
|
-
"type": "field_ref",
|
|
590
|
-
"named": true
|
|
591
|
-
},
|
|
592
|
-
{
|
|
593
|
-
"type": "module_field_ref",
|
|
594
|
-
"named": true
|
|
595
|
-
},
|
|
596
450
|
{
|
|
597
451
|
"type": "module_tag_pattern",
|
|
598
452
|
"named": true
|
|
@@ -699,26 +553,10 @@
|
|
|
699
553
|
"type": "effect_remove",
|
|
700
554
|
"named": true
|
|
701
555
|
},
|
|
702
|
-
{
|
|
703
|
-
"type": "field_def",
|
|
704
|
-
"named": true
|
|
705
|
-
},
|
|
706
|
-
{
|
|
707
|
-
"type": "field_ref",
|
|
708
|
-
"named": true
|
|
709
|
-
},
|
|
710
|
-
{
|
|
711
|
-
"type": "module_field_ref",
|
|
712
|
-
"named": true
|
|
713
|
-
},
|
|
714
556
|
{
|
|
715
557
|
"type": "module_group_ref",
|
|
716
558
|
"named": true
|
|
717
559
|
},
|
|
718
|
-
{
|
|
719
|
-
"type": "module_map_ref",
|
|
720
|
-
"named": true
|
|
721
|
-
},
|
|
722
560
|
{
|
|
723
561
|
"type": "module_tag_pattern",
|
|
724
562
|
"named": true
|
|
@@ -735,6 +573,10 @@
|
|
|
735
573
|
"type": "path",
|
|
736
574
|
"named": true
|
|
737
575
|
},
|
|
576
|
+
{
|
|
577
|
+
"type": "raw_ref",
|
|
578
|
+
"named": true
|
|
579
|
+
},
|
|
738
580
|
{
|
|
739
581
|
"type": "raw_string",
|
|
740
582
|
"named": true
|
|
@@ -755,10 +597,6 @@
|
|
|
755
597
|
"type": "slot_write",
|
|
756
598
|
"named": true
|
|
757
599
|
},
|
|
758
|
-
{
|
|
759
|
-
"type": "spread",
|
|
760
|
-
"named": true
|
|
761
|
-
},
|
|
762
600
|
{
|
|
763
601
|
"type": "tag_pattern",
|
|
764
602
|
"named": true
|