summaryrefslogtreecommitdiffstats
path: root/syntax/basic/function.vim
diff options
context:
space:
mode:
authorAdam Stankiewicz <sheerun@sher.pl>2020-11-18 20:33:42 +0100
committerAdam Stankiewicz <sheerun@sher.pl>2020-11-18 20:33:42 +0100
commitc228e993ad6a8b79db5a5a77aecfdbd8e92ea31f (patch)
treed446251a71a681285c17b5fb000b0d3b1090ef2c /syntax/basic/function.vim
parentda18fe6851e95e146016f7abd2f799056e074cd9 (diff)
downloadvim-polyglot-c228e993ad6a8b79db5a5a77aecfdbd8e92ea31f.tar.gz
vim-polyglot-c228e993ad6a8b79db5a5a77aecfdbd8e92ea31f.zip
Update
Diffstat (limited to 'syntax/basic/function.vim')
-rw-r--r--syntax/basic/function.vim16
1 files changed, 3 insertions, 13 deletions
diff --git a/syntax/basic/function.vim b/syntax/basic/function.vim
index e61d0275..aed182a7 100644
--- a/syntax/basic/function.vim
+++ b/syntax/basic/function.vim
@@ -22,27 +22,17 @@ syntax match typescriptFuncName contained /\K\k*/
\ nextgroup=@typescriptCallSignature
\ skipwhite
-" destructuring ({ a: ee }) =>
-syntax match typescriptArrowFuncDef contained /(\(\s*\({\_[^}]*}\|\k\+\)\(:\_[^)]\)\?,\?\)\+)\s*=>/
- \ contains=typescriptArrowFuncArg,typescriptArrowFunc
- \ nextgroup=@typescriptExpression,typescriptBlock
- \ skipwhite skipempty
-
-" matches `(a) =>` or `([a]) =>` or
-" `(
-" a) =>`
-syntax match typescriptArrowFuncDef contained /(\(\_s*[a-zA-Z\$_\[.]\_[^)]*\)*)\s*=>/
+syntax match typescriptArrowFuncDef contained /\K\k*\s*=>/
\ contains=typescriptArrowFuncArg,typescriptArrowFunc
\ nextgroup=@typescriptExpression,typescriptBlock
\ skipwhite skipempty
-syntax match typescriptArrowFuncDef contained /\K\k*\s*=>/
+syntax match typescriptArrowFuncDef contained /(\%(\_[^()]\+\|(\_[^()]*)\)*)\_s*=>/
\ contains=typescriptArrowFuncArg,typescriptArrowFunc
\ nextgroup=@typescriptExpression,typescriptBlock
\ skipwhite skipempty
-" TODO: optimize this pattern
-syntax region typescriptArrowFuncDef contained start=/(\_[^(^)]*):/ end=/=>/
+syntax region typescriptArrowFuncDef contained start=/(\%(\_[^()]\+\|(\_[^()]*)\)*):/ end=/=>/
\ contains=typescriptArrowFuncArg,typescriptArrowFunc,typescriptTypeAnnotation
\ nextgroup=@typescriptExpression,typescriptBlock
\ skipwhite skipempty keepend