@willbooster/tree-sitter-c-sharp 12.0.0 → 14.0.0
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/README.md +3 -3
- package/grammar.js +209 -19
- package/package.json +3 -3
- package/src/node-types.json +36 -0
- package/tree-sitter-c_sharp.wasm +0 -0
- package/tree-sitter.json +2 -1
package/README.md
CHANGED
|
@@ -41,7 +41,7 @@ The contextual type names `nint` and `nuint` use `identifier` nodes.
|
|
|
41
41
|
|
|
42
42
|
The npm package ships `tree-sitter-c_sharp.wasm` for
|
|
43
43
|
[@willbooster/web-tree-sitter](https://www.npmjs.com/package/@willbooster/web-tree-sitter), which runs in Node.js, Bun,
|
|
44
|
-
browsers, and Cloudflare Workers. The parser uses WillBooster ABI 7 and loads only with that runtime. Use version
|
|
44
|
+
browsers, and Cloudflare Workers. The parser uses WillBooster ABI 7 and loads only with that runtime. Use version 10.0.2 or later within major version 10; upstream's runtime rejects it. Install the runtime alongside the grammar when using
|
|
45
45
|
the Wasm parser; it remains an optional peer for consumers that only use the grammar source or queries.
|
|
46
46
|
|
|
47
47
|
In Node.js and Bun, load it from the package:
|
|
@@ -89,11 +89,11 @@ Their external tokens and serialized scanner state must match.
|
|
|
89
89
|
|
|
90
90
|
In Rust, depend on the [crate](https://crates.io/crates/willbooster-tree-sitter-c-sharp) and on
|
|
91
91
|
[willbooster-tree-sitter](https://crates.io/crates/willbooster-tree-sitter), the runtime this package is tested and
|
|
92
|
-
fuzzed with. Use runtime
|
|
92
|
+
fuzzed with. Use runtime 10.0.2 or later within major version 10:
|
|
93
93
|
|
|
94
94
|
```toml
|
|
95
95
|
[dependencies]
|
|
96
|
-
tree-sitter = { package = "willbooster-tree-sitter", version = "
|
|
96
|
+
tree-sitter = { package = "willbooster-tree-sitter", version = "10.0.2" }
|
|
97
97
|
tree-sitter-c-sharp = { package = "willbooster-tree-sitter-c-sharp", version = "11" }
|
|
98
98
|
```
|
|
99
99
|
|
package/grammar.js
CHANGED
|
@@ -53,6 +53,48 @@ module.exports = grammar({
|
|
|
53
53
|
name: 'c_sharp',
|
|
54
54
|
|
|
55
55
|
conflicts: ($) => [
|
|
56
|
+
[$._simple_name, $._expression_simple_name, $._pattern_simple_identifier_name, $._ambiguous_cast_qualified_name],
|
|
57
|
+
[$._expression_simple_name, $._ambiguous_cast_qualified_name],
|
|
58
|
+
[$._simple_name, $._expression_simple_name, $._ambiguous_cast_qualified_name],
|
|
59
|
+
[$.parameter, $._expression_simple_name, $._ambiguous_cast_name],
|
|
60
|
+
[$.parameter, $._simple_name, $._expression_simple_name, $._ambiguous_cast_name],
|
|
61
|
+
[$._expression_simple_name, $._ambiguous_cast_name],
|
|
62
|
+
[$._simple_name, $._expression_simple_name, $._ambiguous_cast_name],
|
|
63
|
+
[$._simple_name, $.generic_name, $._expression_generic_name, $._pattern_simple_identifier_name],
|
|
64
|
+
[$._expression_simple_name, $.generic_name, $._expression_generic_name, $._pattern_simple_identifier_name],
|
|
65
|
+
[
|
|
66
|
+
$._simple_name,
|
|
67
|
+
$._expression_simple_name,
|
|
68
|
+
$.generic_name,
|
|
69
|
+
$._expression_generic_name,
|
|
70
|
+
$._pattern_simple_identifier_name,
|
|
71
|
+
],
|
|
72
|
+
[$._expression_simple_name, $._pattern_simple_identifier_name],
|
|
73
|
+
[$._simple_name, $._expression_simple_name, $._pattern_simple_identifier_name],
|
|
74
|
+
[$.generic_name, $._expression_generic_name, $._pattern_simple_identifier_name],
|
|
75
|
+
[$._simple_name, $.generic_name, $._expression_generic_name],
|
|
76
|
+
[$._expression_simple_name, $._expression_generic_name],
|
|
77
|
+
[$._simple_name, $._expression_simple_name, $.generic_name, $._expression_generic_name],
|
|
78
|
+
[$._expression_simple_name, $.subpattern],
|
|
79
|
+
[$._expression_simple_name, $.parameter],
|
|
80
|
+
[$._simple_name, $._expression_simple_name, $.parameter],
|
|
81
|
+
|
|
82
|
+
[$.type_argument_list, $._expression_type_argument_list],
|
|
83
|
+
[$._definite_expression_argument_type, $.type],
|
|
84
|
+
[$._definite_expression_pointer_type, $._pointer_base_type],
|
|
85
|
+
[$._name, $._nongeneric_expression_argument_type],
|
|
86
|
+
[$._name, $._other_expression_pointer_type],
|
|
87
|
+
[$._nongeneric_expression_argument_type, $.type],
|
|
88
|
+
[$._other_expression_pointer_type, $._pointer_base_type],
|
|
89
|
+
[$._simple_name, $._nongeneric_expression_argument_type],
|
|
90
|
+
[$._simple_name, $._nongeneric_expression_qualified_name],
|
|
91
|
+
[$._simple_name, $._other_expression_pointer_type],
|
|
92
|
+
[$.type_argument_list, $._method_expression_arguments],
|
|
93
|
+
[$._ambiguous_expression_arguments, $._method_expression_arguments],
|
|
94
|
+
[$._primary_no_conditional_access_expression, $._range_cast_type, $._definite_cast_name],
|
|
95
|
+
[$._name, $._primary_no_conditional_access_expression, $._range_cast_type, $._definite_cast_name],
|
|
96
|
+
[$._simple_name, $._expression_simple_name],
|
|
97
|
+
[$.generic_name, $._expression_simple_name, $._expression_generic_name],
|
|
56
98
|
[$.list_pattern],
|
|
57
99
|
[$._conditional_binding_receiver, $._binding_generic_suppression_expression],
|
|
58
100
|
[$._member_conditional_binding_receiver, $._member_binding_generic_suppression_expression],
|
|
@@ -90,20 +132,14 @@ module.exports = grammar({
|
|
|
90
132
|
[$._definite_cast_type, $._range_cast_type],
|
|
91
133
|
[$.type, $._definite_cast_type, $._range_cast_type],
|
|
92
134
|
[$._pattern_type, $._definite_cast_type, $._range_cast_type],
|
|
93
|
-
[$._definite_cast_name, $._range_cast_type],
|
|
94
|
-
[$._name, $._definite_cast_name, $._range_cast_type],
|
|
95
135
|
[$.array_rank_specifier, $._omitted_array_rank_specifier],
|
|
96
136
|
[$._pattern_parenthesized_expression, $.constant_pattern, $.expression],
|
|
97
137
|
[$._pattern_parenthesized_expression, $.constant_pattern],
|
|
98
|
-
[$._simple_name, $._pattern_simple_identifier_name, $._ambiguous_cast_qualified_name],
|
|
99
|
-
[$._simple_name, $._ambiguous_cast_qualified_name],
|
|
100
138
|
[$._simple_name, $._definite_cast_qualified_name],
|
|
101
139
|
[$.positional_pattern_clause, $._untyped_positional_pattern_clause],
|
|
102
140
|
[$._parenthesized_pattern_with_designation, $.subpattern],
|
|
103
141
|
[$._pattern_type, $._definite_cast_type],
|
|
104
142
|
[$.type, $._definite_cast_type],
|
|
105
|
-
[$.parameter, $._simple_name, $._ambiguous_cast_name],
|
|
106
|
-
[$._simple_name, $._ambiguous_cast_name],
|
|
107
143
|
[$._simple_name, $._definite_cast_name],
|
|
108
144
|
[$._name, $._definite_cast_name],
|
|
109
145
|
[$._object_initializer_expression, $.initializer_expression],
|
|
@@ -132,10 +168,7 @@ module.exports = grammar({
|
|
|
132
168
|
[$._pattern_type, $._pointer_base_type],
|
|
133
169
|
[$._pattern_member_access_expression, $._pattern_generic_member_expression],
|
|
134
170
|
[$._simple_name, $._pattern_simple_generic_name],
|
|
135
|
-
[$._simple_name, $.generic_name, $._pattern_simple_identifier_name],
|
|
136
171
|
[$._simple_name, $._pattern_simple_identifier_name],
|
|
137
|
-
[$.generic_name, $._pattern_simple_identifier_name],
|
|
138
|
-
[$._pattern_non_name_member_access_expression, $.member_access_expression],
|
|
139
172
|
[$._pattern_unary_expression, $._unary_expression],
|
|
140
173
|
[$._pattern_primary_expression, $._primary_expression],
|
|
141
174
|
[$._pattern_primary_expression, $._primary_no_conditional_access_expression],
|
|
@@ -181,7 +214,6 @@ module.exports = grammar({
|
|
|
181
214
|
[$.modifier, $._constructor_declaration_initializer, $._reserved_identifier],
|
|
182
215
|
[$._simple_name, $.generic_name],
|
|
183
216
|
[$._simple_name, $.type_parameter],
|
|
184
|
-
[$._simple_name, $.subpattern],
|
|
185
217
|
[$.tuple_element, $.type_pattern],
|
|
186
218
|
[$.type_pattern, $.declaration_pattern],
|
|
187
219
|
[$.tuple_element, $.using_variable_declarator],
|
|
@@ -194,7 +226,6 @@ module.exports = grammar({
|
|
|
194
226
|
[$.type, $._array_base_type, $.array_creation_expression],
|
|
195
227
|
[$.type, $.array_creation_expression],
|
|
196
228
|
[$.type, $._pointer_base_type],
|
|
197
|
-
[$.qualified_name, $.member_access_expression],
|
|
198
229
|
[$.qualified_name, $.explicit_interface_specifier],
|
|
199
230
|
[$._array_base_type, $.stackalloc_expression],
|
|
200
231
|
[$.constant_pattern, $._expression_statement_expression],
|
|
@@ -314,6 +345,8 @@ module.exports = grammar({
|
|
|
314
345
|
sym('_interpolation_format_colon'),
|
|
315
346
|
sym('_pragma_boundary'),
|
|
316
347
|
sym('_pragma_text'),
|
|
348
|
+
sym('_expression_generic_end'),
|
|
349
|
+
sym('_definite_expression_generic_end'),
|
|
317
350
|
],
|
|
318
351
|
|
|
319
352
|
extras: ($) => [
|
|
@@ -347,6 +380,7 @@ module.exports = grammar({
|
|
|
347
380
|
|
|
348
381
|
precedences: ($) => [
|
|
349
382
|
[$._anonymous_object_member_declarator, $._simple_name],
|
|
383
|
+
[$._anonymous_object_member_declarator, $._expression_simple_name],
|
|
350
384
|
[$.block, $.initializer_expression],
|
|
351
385
|
],
|
|
352
386
|
|
|
@@ -361,6 +395,11 @@ module.exports = grammar({
|
|
|
361
395
|
$._ambiguous_cast_type,
|
|
362
396
|
$._definite_cast_type,
|
|
363
397
|
$._range_cast_type,
|
|
398
|
+
$._definite_expression_type_argument,
|
|
399
|
+
$._ambiguous_expression_type_argument,
|
|
400
|
+
$._other_expression_type_argument,
|
|
401
|
+
$._nongeneric_expression_type_argument,
|
|
402
|
+
$._method_expression_type_argument,
|
|
364
403
|
$._is_pattern,
|
|
365
404
|
$._nonconstant_pattern,
|
|
366
405
|
],
|
|
@@ -579,7 +618,12 @@ module.exports = grammar({
|
|
|
579
618
|
)
|
|
580
619
|
),
|
|
581
620
|
|
|
582
|
-
type_parameter_list: ($) =>
|
|
621
|
+
type_parameter_list: ($) =>
|
|
622
|
+
seq(
|
|
623
|
+
'<',
|
|
624
|
+
commaSep1($.type_parameter),
|
|
625
|
+
choice('>', alias(sym('_expression_generic_end'), '>'), alias(sym('_definite_expression_generic_end'), '>'))
|
|
626
|
+
),
|
|
583
627
|
|
|
584
628
|
type_parameter: ($) => seq(repeat($._attribute_list), optional(choice('in', 'out')), field('name', $.identifier)),
|
|
585
629
|
|
|
@@ -980,7 +1024,149 @@ module.exports = grammar({
|
|
|
980
1024
|
|
|
981
1025
|
generic_name: ($) => prec.dynamic(1, seq($.identifier, $.type_argument_list)),
|
|
982
1026
|
|
|
983
|
-
type_argument_list: ($) =>
|
|
1027
|
+
type_argument_list: ($) =>
|
|
1028
|
+
seq(
|
|
1029
|
+
'<',
|
|
1030
|
+
choice(repeat(','), commaSep1($.type)),
|
|
1031
|
+
choice('>', alias(sym('_expression_generic_end'), '>'), alias(sym('_definite_expression_generic_end'), '>'))
|
|
1032
|
+
),
|
|
1033
|
+
|
|
1034
|
+
_expression_simple_name: ($) => choice($.identifier, alias($._expression_generic_name, $.generic_name)),
|
|
1035
|
+
|
|
1036
|
+
_expression_generic_name: ($) =>
|
|
1037
|
+
prec.dynamic(1, seq($.identifier, alias($._expression_type_argument_list, $.type_argument_list))),
|
|
1038
|
+
|
|
1039
|
+
_expression_type_argument_list: ($) =>
|
|
1040
|
+
seq(
|
|
1041
|
+
'<',
|
|
1042
|
+
choice(
|
|
1043
|
+
seq(choice(repeat(','), commaSep1($.type)), alias(sym('_expression_generic_end'), '>')),
|
|
1044
|
+
seq(repeat(','), alias(sym('_definite_expression_generic_end'), '>')),
|
|
1045
|
+
seq(
|
|
1046
|
+
repeat(seq(alias($._other_expression_type_argument, $.type), ',')),
|
|
1047
|
+
choice(
|
|
1048
|
+
alias($._definite_expression_type_argument, $.type),
|
|
1049
|
+
seq(alias($._ambiguous_expression_type_argument, $.type), ',', $.type)
|
|
1050
|
+
),
|
|
1051
|
+
repeat(seq(',', $.type)),
|
|
1052
|
+
alias(sym('_definite_expression_generic_end'), '>')
|
|
1053
|
+
)
|
|
1054
|
+
)
|
|
1055
|
+
),
|
|
1056
|
+
|
|
1057
|
+
_definite_expression_type_argument: ($) => $._definite_expression_argument_type,
|
|
1058
|
+
|
|
1059
|
+
_ambiguous_expression_type_argument: ($) => $._ambiguous_expression_argument_type,
|
|
1060
|
+
|
|
1061
|
+
_other_expression_type_argument: ($) => $._other_expression_argument_type,
|
|
1062
|
+
|
|
1063
|
+
_nongeneric_expression_type_argument: ($) => $._nongeneric_expression_argument_type,
|
|
1064
|
+
|
|
1065
|
+
_method_expression_type_argument: ($) => $._method_expression_argument_type,
|
|
1066
|
+
|
|
1067
|
+
_definite_expression_argument_type: ($) =>
|
|
1068
|
+
choice(
|
|
1069
|
+
$.predefined_type,
|
|
1070
|
+
$.nullable_type,
|
|
1071
|
+
$.function_pointer_type,
|
|
1072
|
+
alias($._omitted_cast_array_type, $.array_type),
|
|
1073
|
+
alias($._definite_expression_pointer_type, $.pointer_type)
|
|
1074
|
+
),
|
|
1075
|
+
|
|
1076
|
+
_definite_expression_pointer_type: ($) =>
|
|
1077
|
+
seq(
|
|
1078
|
+
field(
|
|
1079
|
+
'type',
|
|
1080
|
+
choice(
|
|
1081
|
+
$.predefined_type,
|
|
1082
|
+
$.nullable_type,
|
|
1083
|
+
$.function_pointer_type,
|
|
1084
|
+
alias($._definite_expression_pointer_type, $.pointer_type),
|
|
1085
|
+
alias($._method_expression_generic_name, $.generic_name),
|
|
1086
|
+
alias($._method_expression_qualified_name, $.qualified_name)
|
|
1087
|
+
)
|
|
1088
|
+
),
|
|
1089
|
+
'*'
|
|
1090
|
+
),
|
|
1091
|
+
|
|
1092
|
+
_ambiguous_expression_argument_type: ($) =>
|
|
1093
|
+
choice(
|
|
1094
|
+
alias($._ambiguous_expression_generic_name, $.generic_name),
|
|
1095
|
+
alias($._ambiguous_expression_qualified_name, $.qualified_name)
|
|
1096
|
+
),
|
|
1097
|
+
|
|
1098
|
+
_ambiguous_expression_generic_name: ($) =>
|
|
1099
|
+
prec.dynamic(1, seq($.identifier, alias($._ambiguous_expression_arguments, $.type_argument_list))),
|
|
1100
|
+
|
|
1101
|
+
_ambiguous_expression_arguments: ($) =>
|
|
1102
|
+
seq(
|
|
1103
|
+
'<',
|
|
1104
|
+
commaSep1(alias($._nongeneric_expression_type_argument, $.type)),
|
|
1105
|
+
choice('>', alias(sym('_expression_generic_end'), '>'), alias(sym('_definite_expression_generic_end'), '>'))
|
|
1106
|
+
),
|
|
1107
|
+
|
|
1108
|
+
_ambiguous_expression_qualified_name: ($) =>
|
|
1109
|
+
seq(field('qualifier', $._name), '.', field('name', alias($._ambiguous_expression_generic_name, $.generic_name))),
|
|
1110
|
+
|
|
1111
|
+
_other_expression_argument_type: ($) =>
|
|
1112
|
+
choice($._nongeneric_expression_argument_type, $._method_expression_argument_type),
|
|
1113
|
+
|
|
1114
|
+
_nongeneric_expression_argument_type: ($) =>
|
|
1115
|
+
choice(
|
|
1116
|
+
$.identifier,
|
|
1117
|
+
alias($._nongeneric_expression_qualified_name, $.qualified_name),
|
|
1118
|
+
$.alias_qualified_name,
|
|
1119
|
+
$.tuple_type,
|
|
1120
|
+
alias($._other_expression_pointer_type, $.pointer_type)
|
|
1121
|
+
),
|
|
1122
|
+
|
|
1123
|
+
_method_expression_argument_type: ($) =>
|
|
1124
|
+
choice(
|
|
1125
|
+
alias($._method_expression_generic_name, $.generic_name),
|
|
1126
|
+
alias($._method_expression_qualified_name, $.qualified_name)
|
|
1127
|
+
),
|
|
1128
|
+
|
|
1129
|
+
_nongeneric_expression_qualified_name: ($) => seq(field('qualifier', $._name), '.', field('name', $.identifier)),
|
|
1130
|
+
|
|
1131
|
+
_method_expression_generic_name: ($) =>
|
|
1132
|
+
prec.dynamic(1, seq($.identifier, alias($._method_expression_arguments, $.type_argument_list))),
|
|
1133
|
+
|
|
1134
|
+
_method_expression_arguments: ($) =>
|
|
1135
|
+
seq(
|
|
1136
|
+
'<',
|
|
1137
|
+
choice(
|
|
1138
|
+
repeat(','),
|
|
1139
|
+
seq(
|
|
1140
|
+
repeat(seq(alias($._nongeneric_expression_type_argument, $.type), ',')),
|
|
1141
|
+
choice(
|
|
1142
|
+
alias($._definite_expression_type_argument, $.type),
|
|
1143
|
+
alias($._ambiguous_expression_type_argument, $.type),
|
|
1144
|
+
alias($._method_expression_type_argument, $.type)
|
|
1145
|
+
),
|
|
1146
|
+
repeat(seq(',', $.type))
|
|
1147
|
+
)
|
|
1148
|
+
),
|
|
1149
|
+
choice('>', alias(sym('_expression_generic_end'), '>'), alias(sym('_definite_expression_generic_end'), '>'))
|
|
1150
|
+
),
|
|
1151
|
+
|
|
1152
|
+
_method_expression_qualified_name: ($) =>
|
|
1153
|
+
seq(field('qualifier', $._name), '.', field('name', alias($._method_expression_generic_name, $.generic_name))),
|
|
1154
|
+
|
|
1155
|
+
_other_expression_pointer_type: ($) =>
|
|
1156
|
+
seq(
|
|
1157
|
+
field(
|
|
1158
|
+
'type',
|
|
1159
|
+
choice(
|
|
1160
|
+
$.identifier,
|
|
1161
|
+
alias($._nongeneric_expression_qualified_name, $.qualified_name),
|
|
1162
|
+
$.alias_qualified_name,
|
|
1163
|
+
$.tuple_type,
|
|
1164
|
+
$._ambiguous_expression_argument_type,
|
|
1165
|
+
alias($._other_expression_pointer_type, $.pointer_type)
|
|
1166
|
+
)
|
|
1167
|
+
),
|
|
1168
|
+
'*'
|
|
1169
|
+
),
|
|
984
1170
|
|
|
985
1171
|
type: ($) => typeAlternatives($),
|
|
986
1172
|
|
|
@@ -1688,11 +1874,15 @@ module.exports = grammar({
|
|
|
1688
1874
|
),
|
|
1689
1875
|
|
|
1690
1876
|
_primary_no_conditional_access_expression: ($) =>
|
|
1691
|
-
primaryAtoms($, {
|
|
1877
|
+
primaryAtoms($, {
|
|
1878
|
+
name: choice($._expression_simple_name, $.alias_qualified_name),
|
|
1879
|
+
member: $.member_access_expression,
|
|
1880
|
+
collection: true,
|
|
1881
|
+
}),
|
|
1692
1882
|
|
|
1693
1883
|
_conditional_access_receiver: ($) =>
|
|
1694
1884
|
primaryAtoms($, {
|
|
1695
|
-
name: $.
|
|
1885
|
+
name: choice($._expression_simple_name, $.alias_qualified_name),
|
|
1696
1886
|
member: $.member_access_expression,
|
|
1697
1887
|
collection: true,
|
|
1698
1888
|
element: $.element_access_expression,
|
|
@@ -1705,7 +1895,7 @@ module.exports = grammar({
|
|
|
1705
1895
|
|
|
1706
1896
|
_definite_conditional_access_receiver: ($) =>
|
|
1707
1897
|
primaryAtoms($, {
|
|
1708
|
-
name: $.
|
|
1898
|
+
name: choice($._expression_simple_name, $.alias_qualified_name),
|
|
1709
1899
|
member: $.member_access_expression,
|
|
1710
1900
|
collection: true,
|
|
1711
1901
|
element: $.element_access_expression,
|
|
@@ -2206,7 +2396,7 @@ module.exports = grammar({
|
|
|
2206
2396
|
|
|
2207
2397
|
member_access_expression: ($) => memberAccessExpression($, choice($._postfix_receiver, $.predefined_type, $._name)),
|
|
2208
2398
|
|
|
2209
|
-
member_binding_expression: ($) => seq('.', field('name', $.
|
|
2399
|
+
member_binding_expression: ($) => seq('.', field('name', $._expression_simple_name)),
|
|
2210
2400
|
|
|
2211
2401
|
object_creation_expression: ($) =>
|
|
2212
2402
|
prec.right(
|
|
@@ -2916,13 +3106,13 @@ function conditionalDirective(command, $, ...content) {
|
|
|
2916
3106
|
}
|
|
2917
3107
|
|
|
2918
3108
|
/**
|
|
2919
|
-
* @param {import('@willbooster/web-tree-sitter/dsl').GrammarSymbols<'
|
|
3109
|
+
* @param {import('@willbooster/web-tree-sitter/dsl').GrammarSymbols<'_expression_simple_name'>} $
|
|
2920
3110
|
* @param {import('@willbooster/web-tree-sitter/dsl').Rule} receiver
|
|
2921
3111
|
* @param {import('@willbooster/web-tree-sitter/dsl').Rule} [name]
|
|
2922
3112
|
* @param {import('@willbooster/web-tree-sitter/dsl').RuleOrLiteral} [operator]
|
|
2923
3113
|
* @returns {import('@willbooster/web-tree-sitter/dsl').Rule}
|
|
2924
3114
|
*/
|
|
2925
|
-
function memberAccessExpression($, receiver, name = $.
|
|
3115
|
+
function memberAccessExpression($, receiver, name = $._expression_simple_name, operator = choice('.', '->')) {
|
|
2926
3116
|
return prec(PREC.DOT, seq(field('expression', receiver), operator, field('name', name)));
|
|
2927
3117
|
}
|
|
2928
3118
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@willbooster/tree-sitter-c-sharp",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "14.0.0",
|
|
4
4
|
"description": "C# grammar for tree-sitter",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"incremental",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"@willbooster/oxfmt-config": "1.2.2",
|
|
49
49
|
"@willbooster/oxlint-config": "1.4.8",
|
|
50
50
|
"@willbooster/wb": "22.26.2",
|
|
51
|
-
"@willbooster/web-tree-sitter": "
|
|
51
|
+
"@willbooster/web-tree-sitter": "10.0.2",
|
|
52
52
|
"conventional-changelog-conventionalcommits": "10.4.1",
|
|
53
53
|
"lefthook": "2.2.2",
|
|
54
54
|
"oxfmt": "0.73.0",
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
"wrangler": "4.149.0"
|
|
63
63
|
},
|
|
64
64
|
"peerDependencies": {
|
|
65
|
-
"@willbooster/web-tree-sitter": "^
|
|
65
|
+
"@willbooster/web-tree-sitter": "^10.0.2"
|
|
66
66
|
},
|
|
67
67
|
"peerDependenciesMeta": {
|
|
68
68
|
"@willbooster/web-tree-sitter": {
|
package/src/node-types.json
CHANGED
|
@@ -93,6 +93,10 @@
|
|
|
93
93
|
"type": "expression",
|
|
94
94
|
"named": true,
|
|
95
95
|
"subtypes": [
|
|
96
|
+
{
|
|
97
|
+
"type": "alias_qualified_name",
|
|
98
|
+
"named": true
|
|
99
|
+
},
|
|
96
100
|
{
|
|
97
101
|
"type": "anonymous_method_expression",
|
|
98
102
|
"named": true
|
|
@@ -970,6 +974,10 @@
|
|
|
970
974
|
"multiple": false,
|
|
971
975
|
"required": true,
|
|
972
976
|
"types": [
|
|
977
|
+
{
|
|
978
|
+
"type": "alias_qualified_name",
|
|
979
|
+
"named": true
|
|
980
|
+
},
|
|
973
981
|
{
|
|
974
982
|
"type": "anonymous_method_expression",
|
|
975
983
|
"named": true
|
|
@@ -1289,6 +1297,10 @@
|
|
|
1289
1297
|
"multiple": false,
|
|
1290
1298
|
"required": false,
|
|
1291
1299
|
"types": [
|
|
1300
|
+
{
|
|
1301
|
+
"type": "alias_qualified_name",
|
|
1302
|
+
"named": true
|
|
1303
|
+
},
|
|
1292
1304
|
{
|
|
1293
1305
|
"type": "anonymous_method_expression",
|
|
1294
1306
|
"named": true
|
|
@@ -1701,6 +1713,10 @@
|
|
|
1701
1713
|
"multiple": false,
|
|
1702
1714
|
"required": true,
|
|
1703
1715
|
"types": [
|
|
1716
|
+
{
|
|
1717
|
+
"type": "alias_qualified_name",
|
|
1718
|
+
"named": true
|
|
1719
|
+
},
|
|
1704
1720
|
{
|
|
1705
1721
|
"type": "anonymous_method_expression",
|
|
1706
1722
|
"named": true
|
|
@@ -2133,6 +2149,10 @@
|
|
|
2133
2149
|
"multiple": false,
|
|
2134
2150
|
"required": true,
|
|
2135
2151
|
"types": [
|
|
2152
|
+
{
|
|
2153
|
+
"type": "alias_qualified_name",
|
|
2154
|
+
"named": true
|
|
2155
|
+
},
|
|
2136
2156
|
{
|
|
2137
2157
|
"type": "anonymous_method_expression",
|
|
2138
2158
|
"named": true
|
|
@@ -2959,6 +2979,10 @@
|
|
|
2959
2979
|
"multiple": false,
|
|
2960
2980
|
"required": true,
|
|
2961
2981
|
"types": [
|
|
2982
|
+
{
|
|
2983
|
+
"type": "alias_qualified_name",
|
|
2984
|
+
"named": true
|
|
2985
|
+
},
|
|
2962
2986
|
{
|
|
2963
2987
|
"type": "anonymous_method_expression",
|
|
2964
2988
|
"named": true
|
|
@@ -3367,6 +3391,10 @@
|
|
|
3367
3391
|
"multiple": false,
|
|
3368
3392
|
"required": false,
|
|
3369
3393
|
"types": [
|
|
3394
|
+
{
|
|
3395
|
+
"type": "alias_qualified_name",
|
|
3396
|
+
"named": true
|
|
3397
|
+
},
|
|
3370
3398
|
{
|
|
3371
3399
|
"type": "anonymous_method_expression",
|
|
3372
3400
|
"named": true
|
|
@@ -5894,6 +5922,10 @@
|
|
|
5894
5922
|
"multiple": false,
|
|
5895
5923
|
"required": false,
|
|
5896
5924
|
"types": [
|
|
5925
|
+
{
|
|
5926
|
+
"type": "alias_qualified_name",
|
|
5927
|
+
"named": true
|
|
5928
|
+
},
|
|
5897
5929
|
{
|
|
5898
5930
|
"type": "anonymous_method_expression",
|
|
5899
5931
|
"named": true
|
|
@@ -6025,6 +6057,10 @@
|
|
|
6025
6057
|
"multiple": false,
|
|
6026
6058
|
"required": false,
|
|
6027
6059
|
"types": [
|
|
6060
|
+
{
|
|
6061
|
+
"type": "alias_qualified_name",
|
|
6062
|
+
"named": true
|
|
6063
|
+
},
|
|
6028
6064
|
{
|
|
6029
6065
|
"type": "anonymous_method_expression",
|
|
6030
6066
|
"named": true
|
package/tree-sitter-c_sharp.wasm
CHANGED
|
Binary file
|
package/tree-sitter.json
CHANGED
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
],
|
|
18
18
|
"injection-regex": "cs",
|
|
19
19
|
"external-files": [
|
|
20
|
+
"src/genericExpressions.h",
|
|
20
21
|
"src/identifierCharacters.h",
|
|
21
22
|
"src/nullableRank.h",
|
|
22
23
|
"src/nullableTypes.h",
|
|
@@ -29,7 +30,7 @@
|
|
|
29
30
|
}
|
|
30
31
|
],
|
|
31
32
|
"metadata": {
|
|
32
|
-
"version": "
|
|
33
|
+
"version": "14.0.0",
|
|
33
34
|
"license": "MIT",
|
|
34
35
|
"description": "C# grammar for tree-sitter",
|
|
35
36
|
"authors": [
|