@@ -51,14 +51,17 @@ repository:
5151 begin : |-
5252 (?x)([_$[:alpha:]][_$[:alnum:]]*)(?=\s*
5353 (=\s*(
54- (async\s+) |
55- (function\s*[(<]) |
56- (function\s+) |
57- ([_$[:alpha:]][_$[:alnum:]]*\s*=>) |
58- ([(]\s*(([)]\s*:)|([_$[:alpha:]][_$[:alnum:]]*\s*:)|(\.\.\.) )) |
59- ([<]\s*[_$[:alpha:]][_$[:alnum:]]*((\s+extends\s*[^=>])|(\s*[,]))) |
60- ((<([^<>=]|=[^<]|\<([^=<>]|=[^<])+\>)+>\s*)?\(([^()]|\([^()]*\))*\)(\s*:\s*(.)*)?\s*=>))
61- ) |
54+ ((async\s+)?(
55+ (function\s*[(<]) |
56+ (function\s+) |
57+ ([_$[:alpha:]][_$[:alnum:]]*\s*=>)
58+ )) |
59+ ((async\s*)?(
60+ ([(]\s*(([)]\s*:)|([_$[:alpha:]][_$[:alnum:]]*\s*:)|(\.\.\.) )) |
61+ ([<]\s*[_$[:alpha:]][_$[:alnum:]]*((\s+extends\s*[^=>])|(\s*[,]))) |
62+ ((<([^<>=]|=[^<]|\<([^=<>]|=[^<])+\>)+>\s*)?\(([^()]|\([^()]*\))*\)(\s*:\s*(.)*)?\s*=>)
63+ ))
64+ )) |
6265 (:\s*(
6366 (<) |
6467 ([(]\s*(
@@ -68,8 +71,8 @@ repository:
6871 ([:,?=])|
6972 ([)]\s*=>)
7073 ))
71- )))
72- )
74+ ))
75+ ))
7376 )
7477 beginCaptures :
7578 ' 1 ' : { name: meta.definition.variable.ts entity.name.function.ts }
@@ -537,14 +540,17 @@ repository:
537540 match : |-
538541 (?x)([_$[:alpha:]][_$[:alnum:]]*)(?=(\?\s*)?\s*
539542 (=\s*(
540- (async\s+) |
541- (function\s*[(<]) |
542- (function\s+) |
543- ([_$[:alpha:]][_$[:alnum:]]*\s*=>) |
544- ([(]\s*(([)]\s*:)|([_$[:alpha:]][_$[:alnum:]]*\s*:)|(\.\.\.) )) |
545- ([<]\s*[_$[:alpha:]][_$[:alnum:]]*((\s+extends\s*[^=>])|(\s*[,]))) |
546- ((<([^<>=]|=[^<]|\<([^=<>]|=[^<])+\>)+>\s*)?\(([^()]|\([^()]*\))*\)(\s*:\s*(.)*)?\s*=>))
547- ) |
543+ ((async\s+)?(
544+ (function\s*[(<]) |
545+ (function\s+) |
546+ ([_$[:alpha:]][_$[:alnum:]]*\s*=>)
547+ )) |
548+ ((async\s*)?(
549+ ([(]\s*(([)]\s*:)|([_$[:alpha:]][_$[:alnum:]]*\s*:)|(\.\.\.) )) |
550+ ([<]\s*[_$[:alpha:]][_$[:alnum:]]*((\s+extends\s*[^=>])|(\s*[,]))) |
551+ ((<([^<>=]|=[^<]|\<([^=<>]|=[^<])+\>)+>\s*)?\(([^()]|\([^()]*\))*\)(\s*:\s*(.)*)?\s*=>)
552+ ))
553+ )) |
548554 (:\s*(
549555 (<) |
550556 ([(]\s*(
@@ -554,8 +560,8 @@ repository:
554560 ([:,?=])|
555561 ([)]\s*=>)
556562 ))
557- )))
558- )
563+ ))
564+ ))
559565 )
560566 - name : meta.definition.property.ts variable.object.property.ts
561567 match : ' [_$[:alpha:]][_$[:alnum:]]*'
@@ -725,14 +731,17 @@ repository:
725731 - match : |-
726732 (?x)(?:\s*\b(public|private|protected|readonly)\s+)?(\.\.\.)?\s*(?<!=|:)([_$[:alpha:]][_$[:alnum:]]*)\s*(\??)(?=\s*
727733 (=\s*(
728- (async\s+) |
729- (function\s*[(<]) |
730- (function\s+) |
731- ([_$[:alpha:]][_$[:alnum:]]*\s*=>) |
732- ([(]\s*(([)]\s*:)|([_$[:alpha:]][_$[:alnum:]]*\s*:)|(\.\.\.) )) |
733- ([<]\s*[_$[:alpha:]][_$[:alnum:]]*((\s+extends\s*[^=>])|(\s*[,]))) |
734- ((<([^<>=]|=[^<]|\<([^=<>]|=[^<])+\>)+>\s*)?\(([^()]|\([^()]*\))*\)(\s*:\s*(.)*)?\s*=>))
735- ) |
734+ ((async\s+)?(
735+ (function\s*[(<]) |
736+ (function\s+) |
737+ ([_$[:alpha:]][_$[:alnum:]]*\s*=>)
738+ )) |
739+ ((async\s*)?(
740+ ([(]\s*(([)]\s*:)|([_$[:alpha:]][_$[:alnum:]]*\s*:)|(\.\.\.) )) |
741+ ([<]\s*[_$[:alpha:]][_$[:alnum:]]*((\s+extends\s*[^=>])|(\s*[,]))) |
742+ ((<([^<>=]|=[^<]|\<([^=<>]|=[^<])+\>)+>\s*)?\(([^()]|\([^()]*\))*\)(\s*:\s*(.)*)?\s*=>)
743+ ))
744+ )) |
736745 (:\s*(
737746 (<) |
738747 ([(]\s*(
@@ -742,8 +751,8 @@ repository:
742751 ([:,?=])|
743752 ([)]\s*=>)
744753 ))
745- )))
746- )
754+ ))
755+ ))
747756 )
748757 captures:
749758 '1': { name: storage.modifier.ts }
@@ -1396,11 +1405,17 @@ repository:
13961405 # function and method assignment
13971406 - match : |-
13981407 (?x)(?:(\.)\s*)?([_$[:alpha:]][_$[:alnum:]]*)(?=\s*=\s*(
1399- (async\s+)|(function\s*[(<])|(function\s+)|
1400- ([_$[:alpha:]][_$[:alnum:]]*\s*=>)|
1401- ([(]\s*(([)]\s*:)|([_$[:alpha:]][_$[:alnum:]]*\s*:)|(\.\.\.) )) |
1402- ([<]\s*[_$[:alpha:]][_$[:alnum:]]*((\s+extends\s*[^=>])|(\s*[,]))) |
1403- ((<([^<>=]|=[^<]|\<([^=<>]|=[^<])+\>)+>\s*)?\(([^()]|\([^()]*\))*\)(\s*:\s*(.)*)?\s*=>)))
1408+ ((async\s+)?(
1409+ (function\s*[(<]) |
1410+ (function\s+) |
1411+ ([_$[:alpha:]][_$[:alnum:]]*\s*=>)
1412+ )) |
1413+ ((async\s*)?(
1414+ ([(]\s*(([)]\s*:)|([_$[:alpha:]][_$[:alnum:]]*\s*:)|(\.\.\.) )) |
1415+ ([<]\s*[_$[:alpha:]][_$[:alnum:]]*((\s+extends\s*[^=>])|(\s*[,]))) |
1416+ ((<([^<>=]|=[^<]|\<([^=<>]|=[^<])+\>)+>\s*)?\(([^()]|\([^()]*\))*\)(\s*:\s*(.)*)?\s*=>)
1417+ ))
1418+ ))
14041419 captures:
14051420 '1': { name: punctuation.accessor.ts }
14061421 '2': { name: entity.name.function.ts }
@@ -1515,11 +1530,17 @@ repository:
15151530 - name : meta.object.member.ts
15161531 begin : |-
15171532 (?x)(?:([_$[:alpha:]][_$[:alnum:]]*)\s*(:)(?=\s*(
1518- (async\s+)|(function\s*[(<])|(function\s+)|
1519- ([_$[:alpha:]][_$[:alnum:]]*\s*=>)|
1520- ([(]\s*(([)]\s*:)|([_$[:alpha:]][_$[:alnum:]]*\s*:)|(\.\.\.) )) |
1521- ([<]\s*[_$[:alpha:]][_$[:alnum:]]*((\s+extends\s*[^=>])|(\s*[,]))) |
1522- ((<([^<>=]|=[^<]|\<([^=<>]|=[^<])+\>)+>\s*)?\(([^()]|\([^()]*\))*\)(\s*:\s*(.)*)?\s*=>))))
1533+ ((async\s+)?(
1534+ (function\s*[(<]) |
1535+ (function\s+) |
1536+ ([_$[:alpha:]][_$[:alnum:]]*\s*=>)
1537+ )) |
1538+ ((async\s*)?(
1539+ ([(]\s*(([)]\s*:)|([_$[:alpha:]][_$[:alnum:]]*\s*:)|(\.\.\.) )) |
1540+ ([<]\s*[_$[:alpha:]][_$[:alnum:]]*((\s+extends\s*[^=>])|(\s*[,]))) |
1541+ ((<([^<>=]|=[^<]|\<([^=<>]|=[^<])+\>)+>\s*)?\(([^()]|\([^()]*\))*\)(\s*:\s*(.)*)?\s*=>)
1542+ ))
1543+ )))
15231544 beginCaptures :
15241545 ' 0 ' : { name: meta.object-literal.key.ts }
15251546 ' 1 ' : { name: entity.name.function.ts }
@@ -1613,7 +1634,7 @@ repository:
16131634 patterns :
16141635 # arrow with single parameter without parenthesis
16151636 - name : meta.arrow.ts
1616- match : (?:(?<!\.|\$)(\basync)\s* )?([_$[:alpha:]][_$[:alnum:]]*)\s*(?==>)
1637+ match : (?:(?<!\.|\$)(\basync)\s+ )?([_$[:alpha:]][_$[:alnum:]]*)\s*(?==>)
16171638 captures :
16181639 ' 1 ' : { name: storage.modifier.async.ts }
16191640 ' 2 ' : { name: variable.parameter.ts }
@@ -1622,8 +1643,8 @@ repository:
16221643 begin : >-
16231644 (?x)
16241645 (?:
1625- (?<!\.|\$)(\basync)(?=\s*[<(])
1626- ) |
1646+ (?<!\.|\$)(\basync)
1647+ )?
16271648 ((?<![})\]])\s*
16281649 (?=
16291650 # sure shot arrow functions even if => is on new line
0 commit comments