Skip to content

Commit 4a62029

Browse files
committed
Rest in binding pattern
1 parent 858d33f commit 4a62029

File tree

5 files changed

+374
-8
lines changed

5 files changed

+374
-8
lines changed

TypeScript.YAML-tmLanguage

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -509,18 +509,20 @@ repository:
509509
destructuring-parameter:
510510
patterns:
511511
- name: meta.parameter.object-binding-pattern.ts
512-
begin: (?<!=|:)\s*(\{)
512+
begin: (?<!=|:)\s*(?:(\.\.\.)\s*)?(\{)
513513
beginCaptures:
514-
'1': { name: punctuation.definition.binding-pattern.object.ts }
514+
'1': { name: keyword.operator.rest.ts }
515+
'2': { name: punctuation.definition.binding-pattern.object.ts }
515516
end: \}
516517
endCaptures:
517518
'0': { name: punctuation.definition.binding-pattern.object.ts }
518519
patterns:
519520
- include: '#parameter-object-binding-element'
520521
- name: meta.paramter.array-binding-pattern.ts
521-
begin: (?<!=|:)\s*(\[)
522+
begin: (?<!=|:)\s*(?:(\.\.\.)\s*)?(\[)
522523
beginCaptures:
523-
'1': { name: punctuation.definition.binding-pattern.array.ts }
524+
'1': { name: keyword.operator.rest.ts }
525+
'2': { name: punctuation.definition.binding-pattern.array.ts }
524526
end: \]
525527
endCaptures:
526528
'0': { name: punctuation.definition.binding-pattern.array.ts }

TypeScript.tmLanguage

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1511,10 +1511,15 @@
15111511
<key>name</key>
15121512
<string>meta.parameter.object-binding-pattern.ts</string>
15131513
<key>begin</key>
1514-
<string>(?&lt;!=|:)\s*(\{)</string>
1514+
<string>(?&lt;!=|:)\s*(?:(\.\.\.)\s*)?(\{)</string>
15151515
<key>beginCaptures</key>
15161516
<dict>
15171517
<key>1</key>
1518+
<dict>
1519+
<key>name</key>
1520+
<string>keyword.operator.rest.ts</string>
1521+
</dict>
1522+
<key>2</key>
15181523
<dict>
15191524
<key>name</key>
15201525
<string>punctuation.definition.binding-pattern.object.ts</string>
@@ -1542,10 +1547,15 @@
15421547
<key>name</key>
15431548
<string>meta.paramter.array-binding-pattern.ts</string>
15441549
<key>begin</key>
1545-
<string>(?&lt;!=|:)\s*(\[)</string>
1550+
<string>(?&lt;!=|:)\s*(?:(\.\.\.)\s*)?(\[)</string>
15461551
<key>beginCaptures</key>
15471552
<dict>
15481553
<key>1</key>
1554+
<dict>
1555+
<key>name</key>
1556+
<string>keyword.operator.rest.ts</string>
1557+
</dict>
1558+
<key>2</key>
15491559
<dict>
15501560
<key>name</key>
15511561
<string>punctuation.definition.binding-pattern.array.ts</string>

TypeScriptReact.tmLanguage

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1515,10 +1515,15 @@
15151515
<key>name</key>
15161516
<string>meta.parameter.object-binding-pattern.tsx</string>
15171517
<key>begin</key>
1518-
<string>(?&lt;!=|:)\s*(\{)</string>
1518+
<string>(?&lt;!=|:)\s*(?:(\.\.\.)\s*)?(\{)</string>
15191519
<key>beginCaptures</key>
15201520
<dict>
15211521
<key>1</key>
1522+
<dict>
1523+
<key>name</key>
1524+
<string>keyword.operator.rest.tsx</string>
1525+
</dict>
1526+
<key>2</key>
15221527
<dict>
15231528
<key>name</key>
15241529
<string>punctuation.definition.binding-pattern.object.tsx</string>
@@ -1546,10 +1551,15 @@
15461551
<key>name</key>
15471552
<string>meta.paramter.array-binding-pattern.tsx</string>
15481553
<key>begin</key>
1549-
<string>(?&lt;!=|:)\s*(\[)</string>
1554+
<string>(?&lt;!=|:)\s*(?:(\.\.\.)\s*)?(\[)</string>
15501555
<key>beginCaptures</key>
15511556
<dict>
15521557
<key>1</key>
1558+
<dict>
1559+
<key>name</key>
1560+
<string>keyword.operator.rest.tsx</string>
1561+
</dict>
1562+
<key>2</key>
15531563
<dict>
15541564
<key>name</key>
15551565
<string>punctuation.definition.binding-pattern.array.tsx</string>

0 commit comments

Comments
 (0)