Skip to content

Commit c858569

Browse files
committed
Handle declare modifier for class fields
Fixes #797
1 parent c9c955a commit c858569

File tree

5 files changed

+46
-3
lines changed

5 files changed

+46
-3
lines changed

TypeScript.YAML-tmLanguage

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -978,7 +978,7 @@ repository:
978978

979979
access-modifier:
980980
name: storage.modifier.ts
981-
match: '{{startOfIdentifier}}(abstract|public|protected|private|readonly|static){{endOfIdentifier}}'
981+
match: '{{startOfIdentifier}}(abstract|public|protected|private|readonly|static|declare){{endOfIdentifier}}'
982982

983983
property-accessor:
984984
name: storage.type.property.ts

TypeScript.tmLanguage

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3115,7 +3115,7 @@
31153115
<key>name</key>
31163116
<string>storage.modifier.ts</string>
31173117
<key>match</key>
3118-
<string>(?&lt;![_$[:alnum:]])(?:(?&lt;=\.\.\.)|(?&lt;!\.))(abstract|public|protected|private|readonly|static)(?![_$[:alnum:]])(?:(?=\.\.\.)|(?!\.))</string>
3118+
<string>(?&lt;![_$[:alnum:]])(?:(?&lt;=\.\.\.)|(?&lt;!\.))(abstract|public|protected|private|readonly|static|declare)(?![_$[:alnum:]])(?:(?=\.\.\.)|(?!\.))</string>
31193119
</dict>
31203120
<key>property-accessor</key>
31213121
<dict>

TypeScriptReact.tmLanguage

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3137,7 +3137,7 @@
31373137
<key>name</key>
31383138
<string>storage.modifier.tsx</string>
31393139
<key>match</key>
3140-
<string>(?&lt;![_$[:alnum:]])(?:(?&lt;=\.\.\.)|(?&lt;!\.))(abstract|public|protected|private|readonly|static)(?![_$[:alnum:]])(?:(?=\.\.\.)|(?!\.))</string>
3140+
<string>(?&lt;![_$[:alnum:]])(?:(?&lt;=\.\.\.)|(?&lt;!\.))(abstract|public|protected|private|readonly|static|declare)(?![_$[:alnum:]])(?:(?=\.\.\.)|(?!\.))</string>
31413141
</dict>
31423142
<key>property-accessor</key>
31433143
<dict>

tests/baselines/Issue797.baseline.txt

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
original file
2+
-----------------------------------
3+
class Foo {
4+
declare baz: any;
5+
}
6+
-----------------------------------
7+
8+
Grammar: TypeScript.tmLanguage
9+
-----------------------------------
10+
>class Foo {
11+
^^^^^
12+
source.ts meta.class.ts storage.type.class.ts
13+
^
14+
source.ts meta.class.ts
15+
^^^
16+
source.ts meta.class.ts entity.name.type.class.ts
17+
^
18+
source.ts meta.class.ts
19+
^
20+
source.ts meta.class.ts punctuation.definition.block.ts
21+
> declare baz: any;
22+
^^^^
23+
source.ts meta.class.ts
24+
^^^^^^^
25+
source.ts meta.class.ts storage.modifier.ts
26+
^
27+
source.ts meta.class.ts meta.field.declaration.ts
28+
^^^
29+
source.ts meta.class.ts meta.field.declaration.ts meta.definition.property.ts variable.object.property.ts
30+
^
31+
source.ts meta.class.ts meta.field.declaration.ts meta.type.annotation.ts keyword.operator.type.annotation.ts
32+
^
33+
source.ts meta.class.ts meta.field.declaration.ts meta.type.annotation.ts
34+
^^^
35+
source.ts meta.class.ts meta.field.declaration.ts meta.type.annotation.ts support.type.primitive.ts
36+
^
37+
source.ts meta.class.ts punctuation.terminator.statement.ts
38+
>}
39+
^
40+
source.ts meta.class.ts punctuation.definition.block.ts

tests/cases/Issue797.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
class Foo {
2+
declare baz: any;
3+
}

0 commit comments

Comments
 (0)