Skip to content

Commit 2e290b2

Browse files
committed
Add scope for type annotation operator ':'
1 parent 181cb4a commit 2e290b2

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+399
-331
lines changed

TypeScript.YAML-tmLanguage

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -684,7 +684,9 @@ repository:
684684

685685
return-type:
686686
name: meta.return.type.ts
687-
begin: '(?<=\))\s*:'
687+
begin: '(?<=\))\s*(:)'
688+
beginCaptures:
689+
'1': { name: keyword.operator.type.annotation.ts }
688690
end: (?<!:)((?=$)|(?=\{|;|//))
689691
patterns:
690692
- include: '#comment'
@@ -708,6 +710,8 @@ repository:
708710
type-annotation:
709711
name: meta.type.annotation.ts
710712
begin: ":"
713+
beginCaptures:
714+
'0': { name: keyword.operator.type.annotation.ts }
711715
end: (?=$|[,);\}\]]|//)|(?==[^>])|(?<=[\}>\]\)]|[_$[:alpha:]])\s*(?=\{)
712716
patterns:
713717
- include: '#comment'
@@ -1108,7 +1112,9 @@ repository:
11081112

11091113
arrow-return-type:
11101114
name: meta.return.type.arrow.ts
1111-
begin: '(?<=\))\s*:'
1115+
begin: '(?<=\))\s*(:)'
1116+
beginCaptures:
1117+
'1': { name: keyword.operator.type.annotation.ts }
11121118
end: (?<!:)((?=$)|(?==>|;|//))
11131119
patterns:
11141120
# TODO: handle the fn and constructor type specifically.

TypeScript.tmLanguage

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -248,7 +248,15 @@
248248
<key>arrow-return-type</key>
249249
<dict>
250250
<key>begin</key>
251-
<string>(?&lt;=\))\s*:</string>
251+
<string>(?&lt;=\))\s*(:)</string>
252+
<key>beginCaptures</key>
253+
<dict>
254+
<key>1</key>
255+
<dict>
256+
<key>name</key>
257+
<string>keyword.operator.type.annotation.ts</string>
258+
</dict>
259+
</dict>
252260
<key>end</key>
253261
<string>(?&lt;!:)((?=$)|(?==&gt;|;|//))</string>
254262
<key>name</key>
@@ -3244,7 +3252,15 @@
32443252
<key>return-type</key>
32453253
<dict>
32463254
<key>begin</key>
3247-
<string>(?&lt;=\))\s*:</string>
3255+
<string>(?&lt;=\))\s*(:)</string>
3256+
<key>beginCaptures</key>
3257+
<dict>
3258+
<key>1</key>
3259+
<dict>
3260+
<key>name</key>
3261+
<string>keyword.operator.type.annotation.ts</string>
3262+
</dict>
3263+
</dict>
32483264
<key>end</key>
32493265
<string>(?&lt;!:)((?=$)|(?=\{|;|//))</string>
32503266
<key>name</key>
@@ -3676,6 +3692,14 @@
36763692
<dict>
36773693
<key>begin</key>
36783694
<string>:</string>
3695+
<key>beginCaptures</key>
3696+
<dict>
3697+
<key>0</key>
3698+
<dict>
3699+
<key>name</key>
3700+
<string>keyword.operator.type.annotation.ts</string>
3701+
</dict>
3702+
</dict>
36793703
<key>end</key>
36803704
<string>(?=$|[,);\}\]]|//)|(?==[^&gt;])|(?&lt;=[\}&gt;\]\)]|[_$[:alpha:]])\s*(?=\{)</string>
36813705
<key>name</key>

TypeScriptReact.YAML-tmLanguage

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -688,7 +688,9 @@ repository:
688688

689689
return-type:
690690
name: meta.return.type.tsx
691-
begin: '(?<=\))\s*:'
691+
begin: '(?<=\))\s*(:)'
692+
beginCaptures:
693+
'1': { name: keyword.operator.type.annotation.tsx }
692694
end: (?<!:)((?=$)|(?=\{|;|//))
693695
patterns:
694696
- include: '#comment'
@@ -712,6 +714,8 @@ repository:
712714
type-annotation:
713715
name: meta.type.annotation.tsx
714716
begin: ":"
717+
beginCaptures:
718+
'0': { name: keyword.operator.type.annotation.tsx }
715719
end: (?=$|[,);\}\]]|//)|(?==[^>])|(?<=[\}>\]\)]|[_$[:alpha:]])\s*(?=\{)
716720
patterns:
717721
- include: '#comment'
@@ -1097,7 +1101,9 @@ repository:
10971101

10981102
arrow-return-type:
10991103
name: meta.return.type.arrow.tsx
1100-
begin: '(?<=\))\s*:'
1104+
begin: '(?<=\))\s*(:)'
1105+
beginCaptures:
1106+
'1': { name: keyword.operator.type.annotation.tsx }
11011107
end: (?<!:)((?=$)|(?==>|;|//))
11021108
patterns:
11031109
# TODO: handle the fn and constructor type specifically.

TypeScriptReact.tmLanguage

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -248,7 +248,15 @@
248248
<key>arrow-return-type</key>
249249
<dict>
250250
<key>begin</key>
251-
<string>(?&lt;=\))\s*:</string>
251+
<string>(?&lt;=\))\s*(:)</string>
252+
<key>beginCaptures</key>
253+
<dict>
254+
<key>1</key>
255+
<dict>
256+
<key>name</key>
257+
<string>keyword.operator.type.annotation.tsx</string>
258+
</dict>
259+
</dict>
252260
<key>end</key>
253261
<string>(?&lt;!:)((?=$)|(?==&gt;|;|//))</string>
254262
<key>name</key>
@@ -3630,7 +3638,15 @@
36303638
<key>return-type</key>
36313639
<dict>
36323640
<key>begin</key>
3633-
<string>(?&lt;=\))\s*:</string>
3641+
<string>(?&lt;=\))\s*(:)</string>
3642+
<key>beginCaptures</key>
3643+
<dict>
3644+
<key>1</key>
3645+
<dict>
3646+
<key>name</key>
3647+
<string>keyword.operator.type.annotation.tsx</string>
3648+
</dict>
3649+
</dict>
36343650
<key>end</key>
36353651
<string>(?&lt;!:)((?=$)|(?=\{|;|//))</string>
36363652
<key>name</key>
@@ -4066,6 +4082,14 @@
40664082
<dict>
40674083
<key>begin</key>
40684084
<string>:</string>
4085+
<key>beginCaptures</key>
4086+
<dict>
4087+
<key>0</key>
4088+
<dict>
4089+
<key>name</key>
4090+
<string>keyword.operator.type.annotation.tsx</string>
4091+
</dict>
4092+
</dict>
40694093
<key>end</key>
40704094
<string>(?=$|[,);\}\]]|//)|(?==[^&gt;])|(?&lt;=[\}&gt;\]\)]|[_$[:alpha:]])\s*(?=\{)</string>
40714095
<key>name</key>

tests/baselines/Abstracts.baseline.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ cow.makeSound();
4343
^^^
4444
source.ts meta.class.ts meta.field.declaration.ts variable.object.property.ts
4545
^
46-
source.ts meta.class.ts meta.field.declaration.ts meta.type.annotation.ts
46+
source.ts meta.class.ts meta.field.declaration.ts meta.type.annotation.ts keyword.operator.type.annotation.ts
4747
^
4848
source.ts meta.class.ts meta.field.declaration.ts meta.type.annotation.ts
4949
^^^^^^
@@ -107,7 +107,7 @@ cow.makeSound();
107107
^
108108
source.ts meta.class.ts meta.method.declaration.ts meta.parameters.ts punctuation.definition.parameters.end.ts
109109
^
110-
source.ts meta.class.ts meta.method.declaration.ts meta.return.type.ts
110+
source.ts meta.class.ts meta.method.declaration.ts meta.return.type.ts keyword.operator.type.annotation.ts
111111
^
112112
source.ts meta.class.ts meta.method.declaration.ts meta.return.type.ts
113113
^^^^^^

tests/baselines/ArrowFunctionInsideTypeAssertion.baseline.txt

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ function f(x: string | ((value: string) => number)) {
6363
^^^^^^^
6464
source.ts meta.var.expr.ts meta.var-single-variable.expr.ts meta.object-literal.ts meta.object.member.ts cast.expr.ts meta.type.function.ts meta.parameters.ts variable.parameter.ts
6565
^
66-
source.ts meta.var.expr.ts meta.var-single-variable.expr.ts meta.object-literal.ts meta.object.member.ts cast.expr.ts meta.type.function.ts meta.parameters.ts meta.type.annotation.ts
66+
source.ts meta.var.expr.ts meta.var-single-variable.expr.ts meta.object-literal.ts meta.object.member.ts cast.expr.ts meta.type.function.ts meta.parameters.ts meta.type.annotation.ts keyword.operator.type.annotation.ts
6767
^
6868
source.ts meta.var.expr.ts meta.var-single-variable.expr.ts meta.object-literal.ts meta.object.member.ts cast.expr.ts meta.type.function.ts meta.parameters.ts meta.type.annotation.ts
6969
^^^^^^^^^^^
@@ -75,7 +75,7 @@ function f(x: string | ((value: string) => number)) {
7575
^^^^^^^^^^^^
7676
source.ts meta.var.expr.ts meta.var-single-variable.expr.ts meta.object-literal.ts meta.object.member.ts cast.expr.ts meta.type.function.ts meta.parameters.ts variable.parameter.ts
7777
^
78-
source.ts meta.var.expr.ts meta.var-single-variable.expr.ts meta.object-literal.ts meta.object.member.ts cast.expr.ts meta.type.function.ts meta.parameters.ts meta.type.annotation.ts
78+
source.ts meta.var.expr.ts meta.var-single-variable.expr.ts meta.object-literal.ts meta.object.member.ts cast.expr.ts meta.type.function.ts meta.parameters.ts meta.type.annotation.ts keyword.operator.type.annotation.ts
7979
^
8080
source.ts meta.var.expr.ts meta.var-single-variable.expr.ts meta.object-literal.ts meta.object.member.ts cast.expr.ts meta.type.function.ts meta.parameters.ts meta.type.annotation.ts
8181
^^^^^^
@@ -110,7 +110,7 @@ function f(x: string | ((value: string) => number)) {
110110
^^^^^^^
111111
source.ts meta.var.expr.ts meta.var-single-variable.expr.ts meta.object-literal.ts meta.object.member.ts meta.arrow.ts meta.parameters.ts variable.parameter.ts
112112
^
113-
source.ts meta.var.expr.ts meta.var-single-variable.expr.ts meta.object-literal.ts meta.object.member.ts meta.arrow.ts meta.parameters.ts meta.type.annotation.ts
113+
source.ts meta.var.expr.ts meta.var-single-variable.expr.ts meta.object-literal.ts meta.object.member.ts meta.arrow.ts meta.parameters.ts meta.type.annotation.ts keyword.operator.type.annotation.ts
114114
^
115115
source.ts meta.var.expr.ts meta.var-single-variable.expr.ts meta.object-literal.ts meta.object.member.ts meta.arrow.ts meta.parameters.ts meta.type.annotation.ts
116116
^^^^^^^^^^^
@@ -122,7 +122,7 @@ function f(x: string | ((value: string) => number)) {
122122
^^^^^^^^^^^^
123123
source.ts meta.var.expr.ts meta.var-single-variable.expr.ts meta.object-literal.ts meta.object.member.ts meta.arrow.ts meta.parameters.ts variable.parameter.ts
124124
^
125-
source.ts meta.var.expr.ts meta.var-single-variable.expr.ts meta.object-literal.ts meta.object.member.ts meta.arrow.ts meta.parameters.ts meta.type.annotation.ts
125+
source.ts meta.var.expr.ts meta.var-single-variable.expr.ts meta.object-literal.ts meta.object.member.ts meta.arrow.ts meta.parameters.ts meta.type.annotation.ts keyword.operator.type.annotation.ts
126126
^
127127
source.ts meta.var.expr.ts meta.var-single-variable.expr.ts meta.object-literal.ts meta.object.member.ts meta.arrow.ts meta.parameters.ts meta.type.annotation.ts
128128
^^^^^^
@@ -211,7 +211,7 @@ function f(x: string | ((value: string) => number)) {
211211
^
212212
source.ts meta.function.ts meta.parameters.ts variable.parameter.ts
213213
^
214-
source.ts meta.function.ts meta.parameters.ts meta.type.annotation.ts
214+
source.ts meta.function.ts meta.parameters.ts meta.type.annotation.ts keyword.operator.type.annotation.ts
215215
^
216216
source.ts meta.function.ts meta.parameters.ts meta.type.annotation.ts
217217
^^^^^^
@@ -229,7 +229,7 @@ function f(x: string | ((value: string) => number)) {
229229
^^^^^
230230
source.ts meta.function.ts meta.parameters.ts meta.type.annotation.ts meta.type.paren.cover.ts meta.type.function.ts meta.parameters.ts variable.parameter.ts
231231
^
232-
source.ts meta.function.ts meta.parameters.ts meta.type.annotation.ts meta.type.paren.cover.ts meta.type.function.ts meta.parameters.ts meta.type.annotation.ts
232+
source.ts meta.function.ts meta.parameters.ts meta.type.annotation.ts meta.type.paren.cover.ts meta.type.function.ts meta.parameters.ts meta.type.annotation.ts keyword.operator.type.annotation.ts
233233
^
234234
source.ts meta.function.ts meta.parameters.ts meta.type.annotation.ts meta.type.paren.cover.ts meta.type.function.ts meta.parameters.ts meta.type.annotation.ts
235235
^^^^^^
@@ -328,7 +328,7 @@ function f(x: string | ((value: string) => number)) {
328328
^
329329
source.ts meta.function.ts meta.block.ts meta.block.ts meta.var.expr.ts meta.var-single-variable.expr.ts cast.expr.ts meta.type.function.ts meta.parameters.ts variable.parameter.ts
330330
^
331-
source.ts meta.function.ts meta.block.ts meta.block.ts meta.var.expr.ts meta.var-single-variable.expr.ts cast.expr.ts meta.type.function.ts meta.parameters.ts meta.type.annotation.ts
331+
source.ts meta.function.ts meta.block.ts meta.block.ts meta.var.expr.ts meta.var-single-variable.expr.ts cast.expr.ts meta.type.function.ts meta.parameters.ts meta.type.annotation.ts keyword.operator.type.annotation.ts
332332
^
333333
source.ts meta.function.ts meta.block.ts meta.block.ts meta.var.expr.ts meta.var-single-variable.expr.ts cast.expr.ts meta.type.function.ts meta.parameters.ts meta.type.annotation.ts
334334
^^^^^^

0 commit comments

Comments
 (0)