@codingame/monaco-vscode-api 1.78.5 → 1.78.6-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (617) hide show
  1. package/README.md +2 -1
  2. package/dist/api.js +5 -4
  3. package/dist/assets/activityaction.css +228 -0
  4. package/dist/assets/activitybarpart.css +65 -0
  5. package/dist/assets/basepanelpart.css +221 -0
  6. package/dist/assets/callHierarchy.css +62 -0
  7. package/dist/assets/{sidebysideeditor.css → compositepart.css} +10 -2
  8. package/dist/assets/debugViewlet.css +336 -0
  9. package/dist/assets/explorerviewlet.css +129 -0
  10. package/dist/assets/hover.css +127 -0
  11. package/dist/assets/menubar.css +111 -0
  12. package/dist/assets/menubarControl.css +61 -0
  13. package/dist/assets/part.css +109 -0
  14. package/dist/assets/repl.css +145 -0
  15. package/dist/assets/sidebarpart.css +61 -0
  16. package/dist/assets/tunnelView.css +107 -0
  17. package/dist/assets/typeHierarchy.css +62 -0
  18. package/dist/assets/views.css +297 -0
  19. package/dist/default-extensions/bat.js +5 -4
  20. package/dist/default-extensions/clojure.js +4 -3
  21. package/dist/default-extensions/coffeescript.js +5 -4
  22. package/dist/default-extensions/cpp.js +10 -9
  23. package/dist/default-extensions/csharp.js +5 -4
  24. package/dist/default-extensions/css.js +4 -3
  25. package/dist/default-extensions/dart.js +4 -3
  26. package/dist/default-extensions/diff.js +4 -3
  27. package/dist/default-extensions/docker.js +4 -3
  28. package/dist/default-extensions/fsharp.js +5 -4
  29. package/dist/default-extensions/go.js +4 -3
  30. package/dist/default-extensions/groovy.js +5 -4
  31. package/dist/default-extensions/handlebars.js +4 -3
  32. package/dist/default-extensions/hlsl.js +4 -3
  33. package/dist/default-extensions/html.js +6 -5
  34. package/dist/default-extensions/ini.js +5 -4
  35. package/dist/default-extensions/java.js +5 -4
  36. package/dist/default-extensions/javascript.js +8 -7
  37. package/dist/default-extensions/json.js +5 -4
  38. package/dist/default-extensions/julia.js +4 -3
  39. package/dist/default-extensions/latex.js +10 -9
  40. package/dist/default-extensions/less.js +4 -3
  41. package/dist/default-extensions/log.js +3 -2
  42. package/dist/default-extensions/lua.js +4 -3
  43. package/dist/default-extensions/make.js +4 -3
  44. package/dist/default-extensions/markdown-basics.js +5 -4
  45. package/dist/default-extensions/objective-c.js +5 -4
  46. package/dist/default-extensions/perl.js +6 -5
  47. package/dist/default-extensions/php.js +6 -5
  48. package/dist/default-extensions/powershell.js +4 -3
  49. package/dist/default-extensions/pug.js +4 -3
  50. package/dist/default-extensions/python.js +5 -4
  51. package/dist/default-extensions/r.js +4 -3
  52. package/dist/default-extensions/razor.js +4 -3
  53. package/dist/default-extensions/references-view.js +8 -0
  54. package/dist/default-extensions/ruby.js +4 -3
  55. package/dist/default-extensions/rust.js +4 -3
  56. package/dist/default-extensions/scss.js +5 -4
  57. package/dist/default-extensions/shaderlab.js +4 -3
  58. package/dist/default-extensions/shellscript.js +4 -3
  59. package/dist/default-extensions/sql.js +4 -3
  60. package/dist/default-extensions/swift.js +5 -4
  61. package/dist/default-extensions/theme-abyss.js +3 -2
  62. package/dist/default-extensions/theme-defaults.js +31 -10
  63. package/dist/default-extensions/theme-kimbie-dark.js +3 -2
  64. package/dist/default-extensions/theme-monokai-dimmed.js +3 -2
  65. package/dist/default-extensions/theme-monokai.js +3 -2
  66. package/dist/default-extensions/theme-quietlight.js +3 -2
  67. package/dist/default-extensions/theme-red.js +3 -2
  68. package/dist/default-extensions/theme-seti.js +5 -2
  69. package/dist/default-extensions/theme-solarized-dark.js +3 -2
  70. package/dist/default-extensions/theme-solarized-light.js +3 -2
  71. package/dist/default-extensions/theme-tomorrow-night-blue.js +3 -2
  72. package/dist/default-extensions/typescript-basics.js +8 -7
  73. package/dist/default-extensions/vb.js +5 -4
  74. package/dist/default-extensions/xml.js +6 -5
  75. package/dist/default-extensions/yaml.js +4 -3
  76. package/dist/extension-tools-40a69515.js +27412 -0
  77. package/dist/extensions.d.ts +18 -2
  78. package/dist/extensions.js +99 -4
  79. package/dist/node_modules/tslib/tslib.es6.js +2 -2
  80. package/dist/override/vs/workbench/contrib/files/browser/views/openEditorsView.js +2 -0
  81. package/dist/rollup-extension-directory-plugin.d.ts +5 -2
  82. package/dist/rollup-extension-directory-plugin.js +74 -46
  83. package/dist/rollup-vsix-plugin.d.ts +4 -2
  84. package/dist/rollup-vsix-plugin.js +57 -19
  85. package/dist/service-override/configuration.js +16 -4
  86. package/dist/service-override/files.d.ts +90 -3
  87. package/dist/service-override/files.js +37 -15
  88. package/dist/service-override/layout.js +80 -6
  89. package/dist/service-override/modelEditor.js +3 -1
  90. package/dist/service-override/views.d.ts +6641 -0
  91. package/dist/service-override/views.js +177 -0
  92. package/dist/services.d.ts +25 -1
  93. package/dist/services.js +3 -0
  94. package/dist/vscode/vs/base/browser/ui/menu/menubar.js +831 -0
  95. package/dist/vscode/vs/base/browser/ui/splitview/paneview.js +151 -2
  96. package/dist/vscode/vs/base/browser/ui/tree/treeDefaults.js +14 -0
  97. package/dist/vscode/vs/editor/common/services/treeViewsDnd.js +17 -0
  98. package/dist/vscode/vs/editor/common/services/treeViewsDndService.js +3 -0
  99. package/dist/vscode/vs/platform/backup/common/backup.js +7 -0
  100. package/dist/vscode/vs/platform/configuration/common/configurationRegistry.js +10 -0
  101. package/dist/vscode/vs/platform/credentials/common/credentials.js +3 -0
  102. package/dist/vscode/vs/platform/extensionManagement/common/extensionManagement.js +1 -2
  103. package/dist/vscode/vs/platform/extensionManagement/common/extensionManagementUtil.js +4 -1
  104. package/dist/vscode/vs/platform/extensionManagement/common/extensionStorage.js +174 -0
  105. package/dist/vscode/vs/platform/extensionManagement/common/implicitActivationEvents.js +1 -1
  106. package/dist/vscode/vs/platform/files/common/fileService.js +3 -3
  107. package/dist/vscode/vs/platform/files/common/files.js +28 -0
  108. package/dist/vscode/vs/platform/files/common/inMemoryFilesystemProvider.js +1 -1
  109. package/dist/vscode/vs/platform/languagePacks/common/languagePacks.js +3 -0
  110. package/dist/vscode/vs/platform/remote/common/remoteAuthorityResolver.js +3 -1
  111. package/dist/vscode/vs/platform/storage/common/storage.js +332 -0
  112. package/dist/vscode/vs/platform/telemetry/common/telemetryUtils.js +1 -1
  113. package/dist/vscode/vs/platform/tunnel/common/tunnel.js +29 -1
  114. package/dist/vscode/vs/platform/update/common/update.js +3 -0
  115. package/dist/vscode/vs/platform/window/common/window.js +33 -0
  116. package/dist/vscode/vs/platform/workspaces/common/workspaces.js +1 -1
  117. package/dist/vscode/vs/workbench/api/browser/mainThreadDebugService.js +1 -1
  118. package/dist/vscode/vs/workbench/api/browser/mainThreadDiagnostics.js +1 -1
  119. package/dist/vscode/vs/workbench/api/browser/mainThreadDocuments.js +4 -4
  120. package/dist/vscode/vs/workbench/api/browser/mainThreadDocumentsAndEditors.js +1 -1
  121. package/dist/vscode/vs/workbench/api/browser/mainThreadFileSystem.js +1 -1
  122. package/dist/vscode/vs/workbench/api/browser/mainThreadLocalization.js +33 -0
  123. package/dist/vscode/vs/workbench/api/browser/mainThreadQuickOpen.js +1 -1
  124. package/dist/vscode/vs/workbench/api/browser/mainThreadStorage.js +69 -0
  125. package/dist/vscode/vs/workbench/api/browser/mainThreadTreeViews.js +298 -0
  126. package/dist/vscode/vs/workbench/api/browser/viewsExtensionPoint.js +699 -0
  127. package/dist/vscode/vs/workbench/api/common/cache.js +1 -1
  128. package/dist/vscode/vs/workbench/api/common/configurationExtensionPoint.js +1 -1
  129. package/dist/vscode/vs/workbench/api/common/extHostApiDeprecationService.js +1 -1
  130. package/dist/vscode/vs/workbench/api/common/extHostCommands.js +2 -2
  131. package/dist/vscode/vs/workbench/api/common/extHostDebugService.js +2 -2
  132. package/dist/vscode/vs/workbench/api/common/extHostDecorations.js +1 -1
  133. package/dist/vscode/vs/workbench/api/common/extHostDiagnostics.js +3 -3
  134. package/dist/vscode/vs/workbench/api/common/extHostDocumentsAndEditors.js +3 -3
  135. package/dist/vscode/vs/workbench/api/common/extHostExtensionActivator.js +1 -1
  136. package/dist/vscode/vs/workbench/api/common/extHostExtensionService.js +5 -5
  137. package/dist/vscode/vs/workbench/api/common/extHostFileSystem.js +1 -1
  138. package/dist/vscode/vs/workbench/api/common/extHostFileSystemInfo.js +1 -1
  139. package/dist/vscode/vs/workbench/api/common/extHostLanguages.js +1 -1
  140. package/dist/vscode/vs/workbench/api/common/extHostLocalizationService.js +1 -1
  141. package/dist/vscode/vs/workbench/api/common/extHostQuickOpen.js +2 -2
  142. package/dist/vscode/vs/workbench/api/common/extHostTextEditor.js +1 -1
  143. package/dist/vscode/vs/workbench/api/common/extHostTreeViews.js +823 -0
  144. package/dist/vscode/vs/workbench/api/common/extHostTypeConverters.js +17 -4
  145. package/dist/vscode/vs/workbench/api/common/extHostTypes.js +21 -5
  146. package/dist/vscode/vs/workbench/api/common/extHostVariableResolverService.js +3 -3
  147. package/dist/vscode/vs/workbench/api/common/extHostWorkspace.js +1 -1
  148. package/dist/vscode/vs/workbench/browser/actions/layoutActions.js +4 -887
  149. package/dist/vscode/vs/workbench/browser/actions/listCommands.js +602 -0
  150. package/dist/vscode/vs/workbench/browser/actions/windowActions.js +271 -0
  151. package/dist/vscode/vs/workbench/browser/actions/workspaceActions.js +250 -0
  152. package/dist/vscode/vs/workbench/browser/actions/workspaceCommands.js +6 -0
  153. package/dist/vscode/vs/workbench/browser/composite.js +49 -1
  154. package/dist/vscode/vs/workbench/browser/dnd.js +429 -0
  155. package/dist/vscode/vs/workbench/browser/labels.js +426 -0
  156. package/dist/vscode/vs/workbench/browser/panecomposite.js +158 -0
  157. package/dist/vscode/vs/workbench/browser/part.js +84 -0
  158. package/dist/vscode/vs/workbench/browser/parts/activitybar/activitybarActions.js +575 -0
  159. package/dist/vscode/vs/workbench/browser/parts/activitybar/activitybarPart.js +784 -0
  160. package/dist/vscode/vs/workbench/browser/parts/compositeBar.js +687 -0
  161. package/dist/vscode/vs/workbench/browser/parts/compositeBarActions.js +578 -0
  162. package/dist/vscode/vs/workbench/browser/parts/compositePart.js +319 -0
  163. package/dist/vscode/vs/workbench/browser/parts/editor/editor.contribution.js +6 -795
  164. package/dist/vscode/vs/workbench/browser/parts/editor/editorActions.js +110 -1487
  165. package/dist/vscode/vs/workbench/browser/parts/editor/editorCommands.js +4 -1121
  166. package/dist/vscode/vs/workbench/browser/parts/editor/editorQuickAccess.js +1 -1
  167. package/dist/vscode/vs/workbench/browser/parts/panel/panelActions.js +41 -82
  168. package/dist/vscode/vs/workbench/browser/parts/panel/panelPart.js +753 -0
  169. package/dist/vscode/vs/workbench/browser/parts/sidebar/sidebarPart.js +217 -0
  170. package/dist/vscode/vs/workbench/browser/parts/titlebar/menubarControl.js +600 -0
  171. package/dist/vscode/vs/workbench/browser/parts/views/checkbox.js +80 -0
  172. package/dist/vscode/vs/workbench/browser/parts/views/treeView.js +1486 -0
  173. package/dist/vscode/vs/workbench/browser/parts/views/viewFilter.js +181 -0
  174. package/dist/vscode/vs/workbench/browser/parts/views/viewPane.js +50 -2
  175. package/dist/vscode/vs/workbench/browser/parts/views/viewPaneContainer.js +1020 -0
  176. package/dist/vscode/vs/workbench/browser/parts/views/viewsService.js +562 -0
  177. package/dist/vscode/vs/workbench/browser/parts/views/viewsViewlet.js +109 -0
  178. package/dist/vscode/vs/workbench/browser/quickaccess.js +2 -4
  179. package/dist/vscode/vs/workbench/common/activity.js +3 -0
  180. package/dist/vscode/vs/workbench/common/contextkeys.js +19 -26
  181. package/dist/vscode/vs/workbench/common/editor.js +2 -48
  182. package/dist/vscode/vs/workbench/common/resources.js +3 -3
  183. package/dist/vscode/vs/workbench/common/theme.js +25 -25
  184. package/dist/vscode/vs/workbench/common/views.js +276 -1
  185. package/dist/vscode/vs/workbench/contrib/bulkEdit/browser/bulkCellEdits.js +62 -1
  186. package/dist/vscode/vs/workbench/contrib/bulkEdit/browser/bulkEditService.js +305 -0
  187. package/dist/vscode/vs/workbench/contrib/bulkEdit/browser/bulkFileEdits.js +378 -0
  188. package/dist/vscode/vs/workbench/contrib/bulkEdit/browser/bulkTextEdits.js +257 -0
  189. package/dist/vscode/vs/workbench/contrib/callHierarchy/browser/callHierarchy.contribution.js +259 -0
  190. package/dist/vscode/vs/workbench/contrib/callHierarchy/browser/callHierarchyPeek.js +337 -0
  191. package/dist/vscode/vs/workbench/contrib/callHierarchy/browser/callHierarchyTree.js +119 -0
  192. package/dist/vscode/vs/workbench/contrib/debug/browser/baseDebugView.js +8 -2
  193. package/dist/vscode/vs/workbench/contrib/debug/browser/breakpointsView.js +585 -8
  194. package/dist/vscode/vs/workbench/contrib/debug/browser/callStackView.js +954 -0
  195. package/dist/vscode/vs/workbench/contrib/debug/browser/debug.contribution.js +151 -145
  196. package/dist/vscode/vs/workbench/contrib/debug/browser/debugANSIHandling.js +345 -0
  197. package/dist/vscode/vs/workbench/contrib/debug/browser/debugAdapterManager.js +1 -1
  198. package/dist/vscode/vs/workbench/contrib/debug/browser/debugCommands.js +79 -3
  199. package/dist/vscode/vs/workbench/contrib/debug/browser/debugConfigurationManager.js +1 -1
  200. package/dist/vscode/vs/workbench/contrib/debug/browser/debugEditorActions.js +522 -0
  201. package/dist/vscode/vs/workbench/contrib/debug/browser/debugEditorContribution.js +5 -5
  202. package/dist/vscode/vs/workbench/contrib/debug/browser/debugIcons.js +28 -1
  203. package/dist/vscode/vs/workbench/contrib/debug/browser/debugSession.js +2 -2
  204. package/dist/vscode/vs/workbench/contrib/debug/browser/debugToolBar.js +1 -1
  205. package/dist/vscode/vs/workbench/contrib/debug/browser/debugViewlet.js +166 -0
  206. package/dist/vscode/vs/workbench/contrib/debug/browser/linkDetector.js +10 -10
  207. package/dist/vscode/vs/workbench/contrib/debug/browser/loadedScriptsView.js +629 -0
  208. package/dist/vscode/vs/workbench/contrib/debug/browser/repl.js +908 -0
  209. package/dist/vscode/vs/workbench/contrib/debug/browser/replFilter.js +46 -0
  210. package/dist/vscode/vs/workbench/contrib/debug/browser/replViewer.js +330 -0
  211. package/dist/vscode/vs/workbench/contrib/debug/browser/variablesView.js +295 -10
  212. package/dist/vscode/vs/workbench/contrib/debug/browser/watchExpressionsView.js +411 -0
  213. package/dist/vscode/vs/workbench/contrib/debug/browser/welcomeView.js +85 -0
  214. package/dist/vscode/vs/workbench/contrib/debug/common/debug.js +98 -1
  215. package/dist/vscode/vs/workbench/contrib/debug/common/debugModel.js +13 -4
  216. package/dist/vscode/vs/workbench/contrib/debug/common/debugUtils.js +1 -1
  217. package/dist/vscode/vs/workbench/contrib/debug/common/replModel.js +51 -1
  218. package/dist/vscode/vs/workbench/contrib/externalUriOpener/common/externalUriOpenerService.js +3 -0
  219. package/dist/vscode/vs/workbench/contrib/files/browser/explorerViewlet.js +254 -0
  220. package/dist/vscode/vs/workbench/contrib/files/browser/fileActions.contribution.js +207 -0
  221. package/dist/vscode/vs/workbench/contrib/files/browser/fileActions.js +1119 -0
  222. package/dist/vscode/vs/workbench/contrib/files/browser/fileCommands.js +594 -0
  223. package/dist/vscode/vs/workbench/contrib/files/browser/fileConstants.js +26 -0
  224. package/dist/vscode/vs/workbench/contrib/files/browser/fileImportExport.js +708 -0
  225. package/dist/vscode/vs/workbench/contrib/files/browser/files.contribution.js +368 -3
  226. package/dist/vscode/vs/workbench/contrib/files/browser/files.js +88 -1
  227. package/dist/vscode/vs/workbench/contrib/files/browser/views/emptyView.js +88 -0
  228. package/dist/vscode/vs/workbench/contrib/files/browser/views/explorerDecorationsProvider.js +73 -0
  229. package/dist/vscode/vs/workbench/contrib/files/browser/views/explorerView.js +793 -0
  230. package/dist/vscode/vs/workbench/contrib/files/browser/views/explorerViewer.js +1209 -0
  231. package/dist/vscode/vs/workbench/contrib/files/common/explorerFileNestingTrie.js +1 -1
  232. package/dist/vscode/vs/workbench/contrib/files/common/files.js +194 -3
  233. package/dist/vscode/vs/workbench/contrib/notebook/browser/notebookBrowser.js +27 -0
  234. package/dist/vscode/vs/workbench/contrib/notebook/common/notebookCommon.js +79 -1
  235. package/dist/vscode/vs/workbench/contrib/notebook/common/notebookEditorInput.js +249 -0
  236. package/dist/vscode/vs/workbench/contrib/notebook/common/notebookEditorModelResolverService.js +3 -0
  237. package/dist/vscode/vs/workbench/contrib/notebook/common/notebookService.js +10 -0
  238. package/dist/vscode/vs/workbench/contrib/remote/browser/remoteExplorer.js +186 -0
  239. package/dist/vscode/vs/workbench/contrib/remote/browser/remoteIcons.js +23 -0
  240. package/dist/vscode/vs/workbench/contrib/remote/browser/tunnelView.js +1636 -0
  241. package/dist/vscode/vs/workbench/contrib/scm/common/scm.js +2 -0
  242. package/dist/vscode/vs/workbench/contrib/snippets/browser/snippetsFile.js +1 -1
  243. package/dist/vscode/vs/workbench/contrib/snippets/browser/snippetsService.js +5 -3
  244. package/dist/vscode/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +167 -0
  245. package/dist/vscode/vs/workbench/contrib/testing/common/testItemCollection.js +1 -1
  246. package/dist/vscode/vs/workbench/contrib/typeHierarchy/browser/typeHierarchy.contribution.js +244 -0
  247. package/dist/vscode/vs/workbench/contrib/typeHierarchy/browser/typeHierarchyPeek.js +332 -0
  248. package/dist/vscode/vs/workbench/contrib/typeHierarchy/browser/typeHierarchyTree.js +117 -0
  249. package/dist/vscode/vs/workbench/contrib/webview/browser/webview.js +41 -0
  250. package/dist/vscode/vs/workbench/contrib/webview/browser/webviewWindowDragMonitor.js +20 -0
  251. package/dist/vscode/vs/workbench/contrib/webviewView/browser/webviewViewPane.js +231 -0
  252. package/dist/vscode/vs/workbench/contrib/webviewView/browser/webviewViewService.js +3 -0
  253. package/dist/vscode/vs/workbench/services/actions/common/menusExtensionPoint.js +179 -1
  254. package/dist/vscode/vs/workbench/services/activity/browser/activityService.js +94 -0
  255. package/dist/vscode/vs/workbench/services/activity/common/activity.js +15 -1
  256. package/dist/vscode/vs/workbench/services/authentication/browser/authenticationService.js +35 -0
  257. package/dist/vscode/vs/workbench/services/authentication/common/authentication.js +3 -0
  258. package/dist/vscode/vs/workbench/services/configuration/browser/configurationService.js +1 -1
  259. package/dist/vscode/vs/workbench/services/configurationResolver/browser/baseConfigurationResolverService.js +1 -1
  260. package/dist/vscode/vs/workbench/services/configurationResolver/common/variableResolver.js +14 -14
  261. package/dist/vscode/vs/workbench/services/extensions/common/extensionDescriptionRegistry.js +13 -13
  262. package/dist/vscode/vs/workbench/services/extensions/common/extensionStorageMigration.js +56 -0
  263. package/dist/vscode/vs/workbench/services/extensions/common/extensionsRegistry.js +3 -3
  264. package/dist/vscode/vs/workbench/services/hover/browser/hover.js +3 -0
  265. package/dist/vscode/vs/workbench/services/hover/browser/hoverService.js +149 -0
  266. package/dist/vscode/vs/workbench/services/hover/browser/hoverWidget.js +514 -0
  267. package/dist/vscode/vs/workbench/services/keybinding/browser/keybindingService.js +3 -3
  268. package/dist/vscode/vs/workbench/services/keybinding/browser/unboundCommands.js +1 -1
  269. package/dist/vscode/vs/workbench/services/languageDetection/common/languageDetectionWorkerService.js +1 -2
  270. package/dist/vscode/vs/workbench/services/output/common/output.js +1 -1
  271. package/dist/vscode/vs/workbench/services/preferences/common/preferencesModels.js +1 -1
  272. package/dist/vscode/vs/workbench/services/remote/common/remoteExplorerService.js +764 -0
  273. package/dist/vscode/vs/workbench/services/search/common/ignoreFile.js +102 -0
  274. package/dist/vscode/vs/workbench/services/search/common/queryBuilder.js +7 -7
  275. package/dist/vscode/vs/workbench/services/search/common/search.js +2 -2
  276. package/dist/vscode/vs/workbench/services/search/common/searchService.js +7 -7
  277. package/dist/vscode/vs/workbench/services/textMate/browser/textMateTokenizationFeatureImpl.js +2 -2
  278. package/dist/vscode/vs/workbench/services/textMate/browser/workerHost/textMateWorkerHost.js +1 -1
  279. package/dist/vscode/vs/workbench/services/textMate/common/TMGrammarFactory.js +1 -1
  280. package/dist/vscode/vs/workbench/services/textfile/common/textFileEditorModelManager.js +4 -4
  281. package/dist/vscode/vs/workbench/services/textmodelResolver/common/textModelResolverService.js +3 -3
  282. package/dist/vscode/vs/workbench/services/themes/browser/fileIconThemeData.js +2 -2
  283. package/dist/vscode/vs/workbench/services/themes/browser/productIconThemeData.js +2 -2
  284. package/dist/vscode/vs/workbench/services/themes/browser/workbenchThemeService.js +1 -1
  285. package/dist/vscode/vs/workbench/services/views/browser/treeViewsService.js +3 -0
  286. package/dist/vscode/vs/workbench/services/views/browser/viewDescriptorService.js +688 -0
  287. package/dist/vscode/vs/workbench/services/views/common/treeViewsService.js +20 -0
  288. package/dist/vscode/vs/workbench/services/views/common/viewContainerModel.js +613 -0
  289. package/dist/vscode/vs/workbench/services/workingCopy/common/workingCopyBackupService.js +11 -7
  290. package/dist/vscode/vs/workbench/services/workingCopy/common/workingCopyService.js +1 -1
  291. package/dist/vscode-default-extensions/bat/language-configuration.json.extensionResource.js +2 -0
  292. package/dist/vscode-default-extensions/bat/snippets/batchfile.code-snippets.extensionResource.js +2 -0
  293. package/dist/vscode-default-extensions/bat/syntaxes/batchfile.tmLanguage.json.extensionResource.js +2 -0
  294. package/dist/vscode-default-extensions/clojure/language-configuration.json.extensionResource.js +2 -0
  295. package/dist/vscode-default-extensions/clojure/syntaxes/clojure.tmLanguage.json.extensionResource.js +2 -0
  296. package/dist/vscode-default-extensions/coffeescript/language-configuration.json.extensionResource.js +2 -0
  297. package/dist/vscode-default-extensions/coffeescript/snippets/coffeescript.code-snippets.extensionResource.js +2 -0
  298. package/dist/vscode-default-extensions/coffeescript/syntaxes/coffeescript.tmLanguage.json.extensionResource.js +2 -0
  299. package/dist/vscode-default-extensions/cpp/language-configuration.json.extensionResource.js +2 -0
  300. package/dist/vscode-default-extensions/cpp/snippets/c.code-snippets.extensionResource.js +2 -0
  301. package/dist/vscode-default-extensions/cpp/snippets/cpp.code-snippets.extensionResource.js +2 -0
  302. package/dist/vscode-default-extensions/cpp/syntaxes/c.tmLanguage.json.extensionResource.js +2 -0
  303. package/dist/vscode-default-extensions/cpp/syntaxes/cpp.embedded.macro.tmLanguage.json.extensionResource.js +2 -0
  304. package/dist/vscode-default-extensions/cpp/syntaxes/cpp.tmLanguage.json.extensionResource.js +2 -0
  305. package/dist/vscode-default-extensions/cpp/syntaxes/cuda-cpp.tmLanguage.json.extensionResource.js +2 -0
  306. package/dist/vscode-default-extensions/cpp/syntaxes/{platform.tmLanguage.json.js → platform.tmLanguage.json.extensionResource.js} +2 -2
  307. package/dist/vscode-default-extensions/csharp/language-configuration.json.extensionResource.js +2 -0
  308. package/dist/vscode-default-extensions/csharp/snippets/csharp.code-snippets.extensionResource.js +2 -0
  309. package/dist/vscode-default-extensions/csharp/syntaxes/csharp.tmLanguage.json.extensionResource.js +2 -0
  310. package/dist/vscode-default-extensions/css/language-configuration.json.extensionResource.js +2 -0
  311. package/dist/vscode-default-extensions/css/syntaxes/css.tmLanguage.json.extensionResource.js +2 -0
  312. package/dist/vscode-default-extensions/dart/language-configuration.json.extensionResource.js +2 -0
  313. package/dist/vscode-default-extensions/dart/syntaxes/dart.tmLanguage.json.extensionResource.js +2 -0
  314. package/dist/vscode-default-extensions/diff/language-configuration.json.extensionResource.js +2 -0
  315. package/dist/vscode-default-extensions/diff/syntaxes/diff.tmLanguage.json.extensionResource.js +2 -0
  316. package/dist/vscode-default-extensions/docker/language-configuration.json.extensionResource.js +2 -0
  317. package/dist/vscode-default-extensions/docker/syntaxes/docker.tmLanguage.json.extensionResource.js +2 -0
  318. package/dist/vscode-default-extensions/fsharp/language-configuration.json.extensionResource.js +2 -0
  319. package/dist/vscode-default-extensions/fsharp/snippets/fsharp.code-snippets.extensionResource.js +2 -0
  320. package/dist/vscode-default-extensions/fsharp/syntaxes/fsharp.tmLanguage.json.extensionResource.js +2 -0
  321. package/dist/vscode-default-extensions/go/language-configuration.json.extensionResource.js +2 -0
  322. package/dist/vscode-default-extensions/go/syntaxes/go.tmLanguage.json.extensionResource.js +2 -0
  323. package/dist/vscode-default-extensions/groovy/language-configuration.json.extensionResource.js +2 -0
  324. package/dist/vscode-default-extensions/groovy/snippets/groovy.code-snippets.extensionResource.js +2 -0
  325. package/dist/vscode-default-extensions/groovy/syntaxes/groovy.tmLanguage.json.extensionResource.js +2 -0
  326. package/dist/vscode-default-extensions/handlebars/language-configuration.json.extensionResource.js +2 -0
  327. package/dist/vscode-default-extensions/handlebars/syntaxes/Handlebars.tmLanguage.json.extensionResource.js +2 -0
  328. package/dist/vscode-default-extensions/hlsl/language-configuration.json.extensionResource.js +2 -0
  329. package/dist/vscode-default-extensions/hlsl/syntaxes/hlsl.tmLanguage.json.extensionResource.js +2 -0
  330. package/dist/vscode-default-extensions/html/language-configuration.json.extensionResource.js +2 -0
  331. package/dist/vscode-default-extensions/html/snippets/html.code-snippets.extensionResource.js +2 -0
  332. package/dist/vscode-default-extensions/html/syntaxes/html-derivative.tmLanguage.json.extensionResource.js +2 -0
  333. package/dist/vscode-default-extensions/html/syntaxes/html.tmLanguage.json.extensionResource.js +2 -0
  334. package/dist/vscode-default-extensions/ini/ini.language-configuration.json.extensionResource.js +2 -0
  335. package/dist/vscode-default-extensions/ini/properties.language-configuration.json.extensionResource.js +2 -0
  336. package/dist/vscode-default-extensions/ini/syntaxes/ini.tmLanguage.json.extensionResource.js +2 -0
  337. package/dist/vscode-default-extensions/java/language-configuration.json.extensionResource.js +2 -0
  338. package/dist/vscode-default-extensions/java/snippets/java.code-snippets.extensionResource.js +2 -0
  339. package/dist/vscode-default-extensions/java/syntaxes/java.tmLanguage.json.extensionResource.js +2 -0
  340. package/dist/vscode-default-extensions/javascript/javascript-language-configuration.json.extensionResource.js +2 -0
  341. package/dist/vscode-default-extensions/javascript/snippets/javascript.code-snippets.extensionResource.js +2 -0
  342. package/dist/vscode-default-extensions/javascript/syntaxes/JavaScript.tmLanguage.json.extensionResource.js +2 -0
  343. package/dist/vscode-default-extensions/javascript/syntaxes/JavaScriptReact.tmLanguage.json.extensionResource.js +2 -0
  344. package/dist/vscode-default-extensions/javascript/syntaxes/Regular Expressions (JavaScript).tmLanguage.extensionResource.js +2 -0
  345. package/dist/vscode-default-extensions/javascript/tags-language-configuration.json.extensionResource.js +2 -0
  346. package/dist/vscode-default-extensions/json/language-configuration.json.extensionResource.js +2 -0
  347. package/dist/vscode-default-extensions/json/syntaxes/JSON.tmLanguage.json.extensionResource.js +2 -0
  348. package/dist/vscode-default-extensions/json/syntaxes/JSONC.tmLanguage.json.extensionResource.js +2 -0
  349. package/dist/vscode-default-extensions/julia/language-configuration.json.extensionResource.js +2 -0
  350. package/dist/vscode-default-extensions/julia/syntaxes/julia.tmLanguage.json.extensionResource.js +2 -0
  351. package/dist/vscode-default-extensions/latex/latex-cpp-embedded-language-configuration.json.extensionResource.js +2 -0
  352. package/dist/vscode-default-extensions/latex/latex-language-configuration.json.extensionResource.js +2 -0
  353. package/dist/vscode-default-extensions/latex/markdown-latex-combined-language-configuration.json.extensionResource.js +2 -0
  354. package/dist/vscode-default-extensions/latex/syntaxes/Bibtex.tmLanguage.json.extensionResource.js +2 -0
  355. package/dist/vscode-default-extensions/latex/syntaxes/LaTeX.tmLanguage.json.extensionResource.js +2 -0
  356. package/dist/vscode-default-extensions/latex/syntaxes/TeX.tmLanguage.json.extensionResource.js +2 -0
  357. package/dist/vscode-default-extensions/latex/syntaxes/cpp-grammar-bailout.tmLanguage.json.extensionResource.js +2 -0
  358. package/dist/vscode-default-extensions/latex/syntaxes/markdown-latex-combined.tmLanguage.json.extensionResource.js +2 -0
  359. package/dist/vscode-default-extensions/less/language-configuration.json.extensionResource.js +2 -0
  360. package/dist/vscode-default-extensions/less/syntaxes/less.tmLanguage.json.extensionResource.js +2 -0
  361. package/dist/vscode-default-extensions/log/syntaxes/log.tmLanguage.json.extensionResource.js +2 -0
  362. package/dist/vscode-default-extensions/lua/language-configuration.json.extensionResource.js +2 -0
  363. package/dist/vscode-default-extensions/lua/syntaxes/lua.tmLanguage.json.extensionResource.js +2 -0
  364. package/dist/vscode-default-extensions/make/language-configuration.json.extensionResource.js +2 -0
  365. package/dist/vscode-default-extensions/make/syntaxes/make.tmLanguage.json.extensionResource.js +2 -0
  366. package/dist/vscode-default-extensions/markdown-basics/language-configuration.json.extensionResource.js +2 -0
  367. package/dist/vscode-default-extensions/markdown-basics/snippets/markdown.code-snippets.extensionResource.js +2 -0
  368. package/dist/vscode-default-extensions/markdown-basics/syntaxes/markdown.tmLanguage.json.extensionResource.js +2 -0
  369. package/dist/vscode-default-extensions/objective-c/language-configuration.json.extensionResource.js +2 -0
  370. package/dist/vscode-default-extensions/objective-c/syntaxes/objective-c.tmLanguage.json.extensionResource.js +2 -0
  371. package/dist/vscode-default-extensions/objective-c/syntaxes/objective-c__.tmLanguage.json.extensionResource.js +2 -0
  372. package/dist/vscode-default-extensions/perl/perl.language-configuration.json.extensionResource.js +2 -0
  373. package/dist/vscode-default-extensions/perl/perl6.language-configuration.json.extensionResource.js +2 -0
  374. package/dist/vscode-default-extensions/perl/syntaxes/perl.tmLanguage.json.extensionResource.js +2 -0
  375. package/dist/vscode-default-extensions/perl/syntaxes/perl6.tmLanguage.json.extensionResource.js +2 -0
  376. package/dist/vscode-default-extensions/php/language-configuration.json.extensionResource.js +2 -0
  377. package/dist/vscode-default-extensions/php/snippets/php.code-snippets.extensionResource.js +2 -0
  378. package/dist/vscode-default-extensions/php/syntaxes/html.tmLanguage.json.extensionResource.js +2 -0
  379. package/dist/vscode-default-extensions/php/syntaxes/php.tmLanguage.json.extensionResource.js +2 -0
  380. package/dist/vscode-default-extensions/powershell/language-configuration.json.extensionResource.js +2 -0
  381. package/dist/vscode-default-extensions/powershell/syntaxes/powershell.tmLanguage.json.extensionResource.js +2 -0
  382. package/dist/vscode-default-extensions/pug/language-configuration.json.extensionResource.js +2 -0
  383. package/dist/vscode-default-extensions/pug/syntaxes/pug.tmLanguage.json.extensionResource.js +2 -0
  384. package/dist/vscode-default-extensions/python/language-configuration.json.extensionResource.js +2 -0
  385. package/dist/vscode-default-extensions/python/syntaxes/MagicPython.tmLanguage.json.extensionResource.js +2 -0
  386. package/dist/vscode-default-extensions/python/syntaxes/MagicRegExp.tmLanguage.json.extensionResource.js +2 -0
  387. package/dist/vscode-default-extensions/r/language-configuration.json.extensionResource.js +2 -0
  388. package/dist/vscode-default-extensions/r/syntaxes/r.tmLanguage.json.extensionResource.js +2 -0
  389. package/dist/vscode-default-extensions/razor/language-configuration.json.extensionResource.js +2 -0
  390. package/dist/vscode-default-extensions/razor/syntaxes/cshtml.tmLanguage.json.extensionResource.js +2 -0
  391. package/dist/vscode-default-extensions/references-view/dist/extension.js.extensionResource.js +2 -0
  392. package/dist/vscode-default-extensions/references-view/package.json.js +2 -0
  393. package/dist/vscode-default-extensions/ruby/language-configuration.json.extensionResource.js +2 -0
  394. package/dist/vscode-default-extensions/ruby/syntaxes/ruby.tmLanguage.json.extensionResource.js +2 -0
  395. package/dist/vscode-default-extensions/rust/language-configuration.json.extensionResource.js +2 -0
  396. package/dist/vscode-default-extensions/rust/syntaxes/rust.tmLanguage.json.extensionResource.js +2 -0
  397. package/dist/vscode-default-extensions/scss/language-configuration.json.extensionResource.js +2 -0
  398. package/dist/vscode-default-extensions/scss/syntaxes/sassdoc.tmLanguage.json.extensionResource.js +2 -0
  399. package/dist/vscode-default-extensions/scss/syntaxes/scss.tmLanguage.json.extensionResource.js +2 -0
  400. package/dist/vscode-default-extensions/shaderlab/language-configuration.json.extensionResource.js +2 -0
  401. package/dist/vscode-default-extensions/shaderlab/syntaxes/shaderlab.tmLanguage.json.extensionResource.js +2 -0
  402. package/dist/vscode-default-extensions/shellscript/language-configuration.json.extensionResource.js +2 -0
  403. package/dist/vscode-default-extensions/shellscript/syntaxes/shell-unix-bash.tmLanguage.json.extensionResource.js +2 -0
  404. package/dist/vscode-default-extensions/sql/language-configuration.json.extensionResource.js +2 -0
  405. package/dist/vscode-default-extensions/sql/syntaxes/sql.tmLanguage.json.extensionResource.js +2 -0
  406. package/dist/vscode-default-extensions/swift/language-configuration.json.extensionResource.js +2 -0
  407. package/dist/vscode-default-extensions/swift/snippets/swift.code-snippets.extensionResource.js +2 -0
  408. package/dist/vscode-default-extensions/swift/syntaxes/swift.tmLanguage.json.extensionResource.js +2 -0
  409. package/dist/vscode-default-extensions/theme-abyss/themes/abyss-color-theme.json.extensionResource.js +2 -0
  410. package/dist/vscode-default-extensions/theme-defaults/fileicons/images/document-dark.svg.extensionResource.js +2 -0
  411. package/dist/vscode-default-extensions/theme-defaults/fileicons/images/document-light.svg.extensionResource.js +2 -0
  412. package/dist/vscode-default-extensions/theme-defaults/fileicons/images/folder-dark.svg.extensionResource.js +2 -0
  413. package/dist/vscode-default-extensions/theme-defaults/fileicons/images/folder-light.svg.extensionResource.js +2 -0
  414. package/dist/vscode-default-extensions/theme-defaults/fileicons/images/folder-open-dark.svg.extensionResource.js +2 -0
  415. package/dist/vscode-default-extensions/theme-defaults/fileicons/images/folder-open-light.svg.extensionResource.js +2 -0
  416. package/dist/vscode-default-extensions/theme-defaults/fileicons/images/root-folder-dark.svg.extensionResource.js +2 -0
  417. package/dist/vscode-default-extensions/theme-defaults/fileicons/images/root-folder-light.svg.extensionResource.js +2 -0
  418. package/dist/vscode-default-extensions/theme-defaults/fileicons/images/root-folder-open-dark.svg.extensionResource.js +2 -0
  419. package/dist/vscode-default-extensions/theme-defaults/fileicons/images/root-folder-open-light.svg.extensionResource.js +2 -0
  420. package/dist/vscode-default-extensions/theme-defaults/fileicons/vs_minimal-icon-theme.json.extensionResource.js +2 -0
  421. package/dist/vscode-default-extensions/theme-defaults/themes/dark_plus.json.extensionResource.js +2 -0
  422. package/dist/vscode-default-extensions/theme-defaults/themes/dark_plus_experimental.json.extensionResource.js +2 -0
  423. package/dist/vscode-default-extensions/theme-defaults/themes/dark_vs.json.extensionResource.js +2 -0
  424. package/dist/vscode-default-extensions/theme-defaults/themes/hc_black.json.extensionResource.js +2 -0
  425. package/dist/vscode-default-extensions/theme-defaults/themes/hc_light.json.extensionResource.js +2 -0
  426. package/dist/vscode-default-extensions/theme-defaults/themes/light_plus.json.extensionResource.js +2 -0
  427. package/dist/vscode-default-extensions/theme-defaults/themes/light_plus_experimental.json.extensionResource.js +2 -0
  428. package/dist/vscode-default-extensions/theme-defaults/themes/light_vs.json.extensionResource.js +2 -0
  429. package/dist/vscode-default-extensions/theme-kimbie-dark/themes/kimbie-dark-color-theme.json.extensionResource.js +2 -0
  430. package/dist/vscode-default-extensions/theme-monokai/themes/monokai-color-theme.json.extensionResource.js +2 -0
  431. package/dist/vscode-default-extensions/theme-monokai-dimmed/themes/dimmed-monokai-color-theme.json.extensionResource.js +2 -0
  432. package/dist/vscode-default-extensions/theme-quietlight/themes/quietlight-color-theme.json.extensionResource.js +2 -0
  433. package/dist/vscode-default-extensions/theme-red/themes/Red-color-theme.json.extensionResource.js +2 -0
  434. package/dist/vscode-default-extensions/theme-seti/icons/seti.woff.extensionResource.js +2 -0
  435. package/dist/vscode-default-extensions/theme-seti/icons/vs-seti-icon-theme.json.extensionResource.js +2 -0
  436. package/dist/vscode-default-extensions/theme-solarized-dark/themes/solarized-dark-color-theme.json.extensionResource.js +2 -0
  437. package/dist/vscode-default-extensions/theme-solarized-light/themes/solarized-light-color-theme.json.extensionResource.js +2 -0
  438. package/dist/vscode-default-extensions/theme-tomorrow-night-blue/themes/tomorrow-night-blue-color-theme.json.extensionResource.js +2 -0
  439. package/dist/vscode-default-extensions/typescript-basics/language-configuration.json.extensionResource.js +2 -0
  440. package/dist/vscode-default-extensions/typescript-basics/snippets/typescript.code-snippets.extensionResource.js +2 -0
  441. package/dist/vscode-default-extensions/typescript-basics/syntaxes/TypeScript.tmLanguage.json.extensionResource.js +2 -0
  442. package/dist/vscode-default-extensions/typescript-basics/syntaxes/TypeScriptReact.tmLanguage.json.extensionResource.js +2 -0
  443. package/dist/vscode-default-extensions/typescript-basics/syntaxes/jsdoc.js.injection.tmLanguage.json.extensionResource.js +2 -0
  444. package/dist/vscode-default-extensions/typescript-basics/syntaxes/jsdoc.ts.injection.tmLanguage.json.extensionResource.js +2 -0
  445. package/dist/vscode-default-extensions/vb/language-configuration.json.extensionResource.js +2 -0
  446. package/dist/vscode-default-extensions/vb/snippets/vb.code-snippets.extensionResource.js +2 -0
  447. package/dist/vscode-default-extensions/vb/syntaxes/asp-vb-net.tmlanguage.json.extensionResource.js +2 -0
  448. package/dist/vscode-default-extensions/xml/syntaxes/xml.tmLanguage.json.extensionResource.js +2 -0
  449. package/dist/vscode-default-extensions/xml/syntaxes/xsl.tmLanguage.json.extensionResource.js +2 -0
  450. package/dist/vscode-default-extensions/xml/xml.language-configuration.json.extensionResource.js +2 -0
  451. package/dist/vscode-default-extensions/xml/xsl.language-configuration.json.extensionResource.js +2 -0
  452. package/dist/vscode-default-extensions/yaml/language-configuration.json.extensionResource.js +2 -0
  453. package/dist/vscode-default-extensions/yaml/syntaxes/yaml.tmLanguage.json.extensionResource.js +2 -0
  454. package/dist/vscode-services/extHost.js +28 -5
  455. package/dist/vscode-services/l10n.js +26 -0
  456. package/dist/vscode-services/missing-services.js +60 -9
  457. package/dist/vscode-services/window.js +23 -5
  458. package/monaco-editor-treemending.patch +818 -818
  459. package/package.json +12 -1
  460. package/dist/assets/editorstatus.css +0 -51
  461. package/dist/default-extensions/typescript-language-features.js +0 -6
  462. package/dist/extension-tools-b68a64de.js +0 -1024
  463. package/dist/vscode/vs/workbench/browser/parts/editor/editorPane.js +0 -242
  464. package/dist/vscode/vs/workbench/browser/parts/editor/editorStatus.js +0 -460
  465. package/dist/vscode/vs/workbench/browser/parts/editor/editorWithViewState.js +0 -139
  466. package/dist/vscode/vs/workbench/browser/parts/editor/sideBySideEditor.js +0 -387
  467. package/dist/vscode/vs/workbench/browser/parts/editor/textDiffEditor.js +0 -289
  468. package/dist/vscode-default-extensions/bat/language-configuration.json.js +0 -2
  469. package/dist/vscode-default-extensions/bat/snippets/batchfile.code-snippets.js +0 -2
  470. package/dist/vscode-default-extensions/bat/syntaxes/batchfile.tmLanguage.json.js +0 -2
  471. package/dist/vscode-default-extensions/clojure/language-configuration.json.js +0 -2
  472. package/dist/vscode-default-extensions/clojure/syntaxes/clojure.tmLanguage.json.js +0 -2
  473. package/dist/vscode-default-extensions/coffeescript/language-configuration.json.js +0 -2
  474. package/dist/vscode-default-extensions/coffeescript/snippets/coffeescript.code-snippets.js +0 -2
  475. package/dist/vscode-default-extensions/coffeescript/syntaxes/coffeescript.tmLanguage.json.js +0 -2
  476. package/dist/vscode-default-extensions/cpp/language-configuration.json.js +0 -2
  477. package/dist/vscode-default-extensions/cpp/snippets/c.code-snippets.js +0 -2
  478. package/dist/vscode-default-extensions/cpp/snippets/cpp.code-snippets.js +0 -2
  479. package/dist/vscode-default-extensions/cpp/syntaxes/c.tmLanguage.json.js +0 -2
  480. package/dist/vscode-default-extensions/cpp/syntaxes/cpp.embedded.macro.tmLanguage.json.js +0 -2
  481. package/dist/vscode-default-extensions/cpp/syntaxes/cpp.tmLanguage.json.js +0 -2
  482. package/dist/vscode-default-extensions/cpp/syntaxes/cuda-cpp.tmLanguage.json.js +0 -2
  483. package/dist/vscode-default-extensions/csharp/language-configuration.json.js +0 -2
  484. package/dist/vscode-default-extensions/csharp/snippets/csharp.code-snippets.js +0 -2
  485. package/dist/vscode-default-extensions/csharp/syntaxes/csharp.tmLanguage.json.js +0 -2
  486. package/dist/vscode-default-extensions/css/language-configuration.json.js +0 -2
  487. package/dist/vscode-default-extensions/css/syntaxes/css.tmLanguage.json.js +0 -2
  488. package/dist/vscode-default-extensions/dart/language-configuration.json.js +0 -2
  489. package/dist/vscode-default-extensions/dart/syntaxes/dart.tmLanguage.json.js +0 -2
  490. package/dist/vscode-default-extensions/diff/language-configuration.json.js +0 -2
  491. package/dist/vscode-default-extensions/diff/syntaxes/diff.tmLanguage.json.js +0 -2
  492. package/dist/vscode-default-extensions/docker/language-configuration.json.js +0 -2
  493. package/dist/vscode-default-extensions/docker/syntaxes/docker.tmLanguage.json.js +0 -2
  494. package/dist/vscode-default-extensions/fsharp/language-configuration.json.js +0 -2
  495. package/dist/vscode-default-extensions/fsharp/snippets/fsharp.code-snippets.js +0 -2
  496. package/dist/vscode-default-extensions/fsharp/syntaxes/fsharp.tmLanguage.json.js +0 -2
  497. package/dist/vscode-default-extensions/go/language-configuration.json.js +0 -2
  498. package/dist/vscode-default-extensions/go/syntaxes/go.tmLanguage.json.js +0 -2
  499. package/dist/vscode-default-extensions/groovy/language-configuration.json.js +0 -2
  500. package/dist/vscode-default-extensions/groovy/snippets/groovy.code-snippets.js +0 -2
  501. package/dist/vscode-default-extensions/groovy/syntaxes/groovy.tmLanguage.json.js +0 -2
  502. package/dist/vscode-default-extensions/handlebars/language-configuration.json.js +0 -2
  503. package/dist/vscode-default-extensions/handlebars/syntaxes/Handlebars.tmLanguage.json.js +0 -2
  504. package/dist/vscode-default-extensions/hlsl/language-configuration.json.js +0 -2
  505. package/dist/vscode-default-extensions/hlsl/syntaxes/hlsl.tmLanguage.json.js +0 -2
  506. package/dist/vscode-default-extensions/html/language-configuration.json.js +0 -2
  507. package/dist/vscode-default-extensions/html/snippets/html.code-snippets.js +0 -2
  508. package/dist/vscode-default-extensions/html/syntaxes/html-derivative.tmLanguage.json.js +0 -2
  509. package/dist/vscode-default-extensions/html/syntaxes/html.tmLanguage.json.js +0 -2
  510. package/dist/vscode-default-extensions/ini/ini.language-configuration.json.js +0 -2
  511. package/dist/vscode-default-extensions/ini/properties.language-configuration.json.js +0 -2
  512. package/dist/vscode-default-extensions/ini/syntaxes/ini.tmLanguage.json.js +0 -2
  513. package/dist/vscode-default-extensions/java/language-configuration.json.js +0 -2
  514. package/dist/vscode-default-extensions/java/snippets/java.code-snippets.js +0 -2
  515. package/dist/vscode-default-extensions/java/syntaxes/java.tmLanguage.json.js +0 -2
  516. package/dist/vscode-default-extensions/javascript/javascript-language-configuration.json.js +0 -2
  517. package/dist/vscode-default-extensions/javascript/snippets/javascript.code-snippets.js +0 -2
  518. package/dist/vscode-default-extensions/javascript/syntaxes/JavaScript.tmLanguage.json.js +0 -2
  519. package/dist/vscode-default-extensions/javascript/syntaxes/JavaScriptReact.tmLanguage.json.js +0 -2
  520. package/dist/vscode-default-extensions/javascript/syntaxes/Regular Expressions (JavaScript).tmLanguage.js +0 -2
  521. package/dist/vscode-default-extensions/javascript/tags-language-configuration.json.js +0 -2
  522. package/dist/vscode-default-extensions/json/language-configuration.json.js +0 -2
  523. package/dist/vscode-default-extensions/json/syntaxes/JSON.tmLanguage.json.js +0 -2
  524. package/dist/vscode-default-extensions/json/syntaxes/JSONC.tmLanguage.json.js +0 -2
  525. package/dist/vscode-default-extensions/julia/language-configuration.json.js +0 -2
  526. package/dist/vscode-default-extensions/julia/syntaxes/julia.tmLanguage.json.js +0 -2
  527. package/dist/vscode-default-extensions/latex/latex-cpp-embedded-language-configuration.json.js +0 -2
  528. package/dist/vscode-default-extensions/latex/latex-language-configuration.json.js +0 -2
  529. package/dist/vscode-default-extensions/latex/markdown-latex-combined-language-configuration.json.js +0 -2
  530. package/dist/vscode-default-extensions/latex/syntaxes/Bibtex.tmLanguage.json.js +0 -2
  531. package/dist/vscode-default-extensions/latex/syntaxes/LaTeX.tmLanguage.json.js +0 -2
  532. package/dist/vscode-default-extensions/latex/syntaxes/TeX.tmLanguage.json.js +0 -2
  533. package/dist/vscode-default-extensions/latex/syntaxes/cpp-grammar-bailout.tmLanguage.json.js +0 -2
  534. package/dist/vscode-default-extensions/latex/syntaxes/markdown-latex-combined.tmLanguage.json.js +0 -2
  535. package/dist/vscode-default-extensions/less/language-configuration.json.js +0 -2
  536. package/dist/vscode-default-extensions/less/syntaxes/less.tmLanguage.json.js +0 -2
  537. package/dist/vscode-default-extensions/log/syntaxes/log.tmLanguage.json.js +0 -2
  538. package/dist/vscode-default-extensions/lua/language-configuration.json.js +0 -2
  539. package/dist/vscode-default-extensions/lua/syntaxes/lua.tmLanguage.json.js +0 -2
  540. package/dist/vscode-default-extensions/make/language-configuration.json.js +0 -2
  541. package/dist/vscode-default-extensions/make/syntaxes/make.tmLanguage.json.js +0 -2
  542. package/dist/vscode-default-extensions/markdown-basics/language-configuration.json.js +0 -2
  543. package/dist/vscode-default-extensions/markdown-basics/snippets/markdown.code-snippets.js +0 -2
  544. package/dist/vscode-default-extensions/markdown-basics/syntaxes/markdown.tmLanguage.json.js +0 -2
  545. package/dist/vscode-default-extensions/objective-c/language-configuration.json.js +0 -2
  546. package/dist/vscode-default-extensions/objective-c/syntaxes/objective-c.tmLanguage.json.js +0 -2
  547. package/dist/vscode-default-extensions/objective-c/syntaxes/objective-c__.tmLanguage.json.js +0 -2
  548. package/dist/vscode-default-extensions/perl/perl.language-configuration.json.js +0 -2
  549. package/dist/vscode-default-extensions/perl/perl6.language-configuration.json.js +0 -2
  550. package/dist/vscode-default-extensions/perl/syntaxes/perl.tmLanguage.json.js +0 -2
  551. package/dist/vscode-default-extensions/perl/syntaxes/perl6.tmLanguage.json.js +0 -2
  552. package/dist/vscode-default-extensions/php/language-configuration.json.js +0 -2
  553. package/dist/vscode-default-extensions/php/snippets/php.code-snippets.js +0 -2
  554. package/dist/vscode-default-extensions/php/syntaxes/html.tmLanguage.json.js +0 -2
  555. package/dist/vscode-default-extensions/php/syntaxes/php.tmLanguage.json.js +0 -2
  556. package/dist/vscode-default-extensions/powershell/language-configuration.json.js +0 -2
  557. package/dist/vscode-default-extensions/powershell/syntaxes/powershell.tmLanguage.json.js +0 -2
  558. package/dist/vscode-default-extensions/pug/language-configuration.json.js +0 -2
  559. package/dist/vscode-default-extensions/pug/syntaxes/pug.tmLanguage.json.js +0 -2
  560. package/dist/vscode-default-extensions/python/language-configuration.json.js +0 -2
  561. package/dist/vscode-default-extensions/python/syntaxes/MagicPython.tmLanguage.json.js +0 -2
  562. package/dist/vscode-default-extensions/python/syntaxes/MagicRegExp.tmLanguage.json.js +0 -2
  563. package/dist/vscode-default-extensions/r/language-configuration.json.js +0 -2
  564. package/dist/vscode-default-extensions/r/syntaxes/r.tmLanguage.json.js +0 -2
  565. package/dist/vscode-default-extensions/razor/language-configuration.json.js +0 -2
  566. package/dist/vscode-default-extensions/razor/syntaxes/cshtml.tmLanguage.json.js +0 -2
  567. package/dist/vscode-default-extensions/ruby/language-configuration.json.js +0 -2
  568. package/dist/vscode-default-extensions/ruby/syntaxes/ruby.tmLanguage.json.js +0 -2
  569. package/dist/vscode-default-extensions/rust/language-configuration.json.js +0 -2
  570. package/dist/vscode-default-extensions/rust/syntaxes/rust.tmLanguage.json.js +0 -2
  571. package/dist/vscode-default-extensions/scss/language-configuration.json.js +0 -2
  572. package/dist/vscode-default-extensions/scss/syntaxes/sassdoc.tmLanguage.json.js +0 -2
  573. package/dist/vscode-default-extensions/scss/syntaxes/scss.tmLanguage.json.js +0 -2
  574. package/dist/vscode-default-extensions/shaderlab/language-configuration.json.js +0 -2
  575. package/dist/vscode-default-extensions/shaderlab/syntaxes/shaderlab.tmLanguage.json.js +0 -2
  576. package/dist/vscode-default-extensions/shellscript/language-configuration.json.js +0 -2
  577. package/dist/vscode-default-extensions/shellscript/syntaxes/shell-unix-bash.tmLanguage.json.js +0 -2
  578. package/dist/vscode-default-extensions/sql/language-configuration.json.js +0 -2
  579. package/dist/vscode-default-extensions/sql/syntaxes/sql.tmLanguage.json.js +0 -2
  580. package/dist/vscode-default-extensions/swift/language-configuration.json.js +0 -2
  581. package/dist/vscode-default-extensions/swift/snippets/swift.code-snippets.js +0 -2
  582. package/dist/vscode-default-extensions/swift/syntaxes/swift.tmLanguage.json.js +0 -2
  583. package/dist/vscode-default-extensions/theme-abyss/themes/abyss-color-theme.json.js +0 -2
  584. package/dist/vscode-default-extensions/theme-defaults/fileicons/vs_minimal-icon-theme.json.js +0 -2
  585. package/dist/vscode-default-extensions/theme-defaults/themes/dark_plus.json.js +0 -2
  586. package/dist/vscode-default-extensions/theme-defaults/themes/dark_plus_experimental.json.js +0 -2
  587. package/dist/vscode-default-extensions/theme-defaults/themes/dark_vs.json.js +0 -2
  588. package/dist/vscode-default-extensions/theme-defaults/themes/hc_black.json.js +0 -2
  589. package/dist/vscode-default-extensions/theme-defaults/themes/hc_light.json.js +0 -2
  590. package/dist/vscode-default-extensions/theme-defaults/themes/light_plus.json.js +0 -2
  591. package/dist/vscode-default-extensions/theme-defaults/themes/light_plus_experimental.json.js +0 -2
  592. package/dist/vscode-default-extensions/theme-defaults/themes/light_vs.json.js +0 -2
  593. package/dist/vscode-default-extensions/theme-kimbie-dark/themes/kimbie-dark-color-theme.json.js +0 -2
  594. package/dist/vscode-default-extensions/theme-monokai/themes/monokai-color-theme.json.js +0 -2
  595. package/dist/vscode-default-extensions/theme-monokai-dimmed/themes/dimmed-monokai-color-theme.json.js +0 -2
  596. package/dist/vscode-default-extensions/theme-quietlight/themes/quietlight-color-theme.json.js +0 -2
  597. package/dist/vscode-default-extensions/theme-red/themes/Red-color-theme.json.js +0 -2
  598. package/dist/vscode-default-extensions/theme-seti/icons/vs-seti-icon-theme.json.js +0 -2
  599. package/dist/vscode-default-extensions/theme-solarized-dark/themes/solarized-dark-color-theme.json.js +0 -2
  600. package/dist/vscode-default-extensions/theme-solarized-light/themes/solarized-light-color-theme.json.js +0 -2
  601. package/dist/vscode-default-extensions/theme-tomorrow-night-blue/themes/tomorrow-night-blue-color-theme.json.js +0 -2
  602. package/dist/vscode-default-extensions/typescript-basics/language-configuration.json.js +0 -2
  603. package/dist/vscode-default-extensions/typescript-basics/snippets/typescript.code-snippets.js +0 -2
  604. package/dist/vscode-default-extensions/typescript-basics/syntaxes/TypeScript.tmLanguage.json.js +0 -2
  605. package/dist/vscode-default-extensions/typescript-basics/syntaxes/TypeScriptReact.tmLanguage.json.js +0 -2
  606. package/dist/vscode-default-extensions/typescript-basics/syntaxes/jsdoc.js.injection.tmLanguage.json.js +0 -2
  607. package/dist/vscode-default-extensions/typescript-basics/syntaxes/jsdoc.ts.injection.tmLanguage.json.js +0 -2
  608. package/dist/vscode-default-extensions/typescript-language-features/package.json.js +0 -2
  609. package/dist/vscode-default-extensions/vb/language-configuration.json.js +0 -2
  610. package/dist/vscode-default-extensions/vb/snippets/vb.code-snippets.js +0 -2
  611. package/dist/vscode-default-extensions/vb/syntaxes/asp-vb-net.tmlanguage.json.js +0 -2
  612. package/dist/vscode-default-extensions/xml/syntaxes/xml.tmLanguage.json.js +0 -2
  613. package/dist/vscode-default-extensions/xml/syntaxes/xsl.tmLanguage.json.js +0 -2
  614. package/dist/vscode-default-extensions/xml/xml.language-configuration.json.js +0 -2
  615. package/dist/vscode-default-extensions/xml/xsl.language-configuration.json.js +0 -2
  616. package/dist/vscode-default-extensions/yaml/language-configuration.json.js +0 -2
  617. package/dist/vscode-default-extensions/yaml/syntaxes/yaml.tmLanguage.json.js +0 -2
@@ -1,2 +0,0 @@
1
- var languageConfiguration = "{\n\t\"comments\": {\n\t\t\"lineComment\": \"--\",\n\t\t\"blockComment\": [ \"/*\", \"*/\" ]\n\t},\n\t\"brackets\": [\n\t\t[\"{\", \"}\"],\n\t\t[\"[\", \"]\"],\n\t\t[\"(\", \")\"]\n\t],\n\t\"autoClosingPairs\": [\n\t\t[\"{\", \"}\"],\n\t\t[\"[\", \"]\"],\n\t\t[\"(\", \")\"],\n\t\t{ \"open\": \"\\\"\", \"close\": \"\\\"\", \"notIn\": [\"string\"] },\n\t\t{ \"open\": \"N'\", \"close\": \"'\", \"notIn\": [\"string\", \"comment\"] },\n\t\t{ \"open\": \"'\", \"close\": \"'\", \"notIn\": [\"string\", \"comment\"] }\n\t],\n\t\"surroundingPairs\": [\n\t\t[\"{\", \"}\"],\n\t\t[\"[\", \"]\"],\n\t\t[\"(\", \")\"],\n\t\t[\"\\\"\", \"\\\"\"],\n\t\t[\"'\", \"'\"],\n\t\t[\"`\", \"`\"]\n\t],\n\t\"folding\": {\n\t\t\"markers\": {\n\t\t\t\"start\": \"^\\\\s*--\\\\s*#region\\\\b\",\n\t\t\t\"end\": \"^\\\\s*--\\\\s*#endregion\\\\b\"\n\t\t}\n\t},\n\n\t// enhancedBrackets:[\n\t// \t{ openTrigger: 'n', open: /begin$/i, closeComplete: 'end', matchCase: true },\n\t// \t{ openTrigger: 'e', open: /case$/i, closeComplete: 'end', matchCase: true },\n\t// \t{ openTrigger: 'n', open: /when$/i, closeComplete: 'then', matchCase: true }\n\t// ],\n\t// noindentBrackets: '()',\n}\n";
2
- export { languageConfiguration as default };
@@ -1,2 +0,0 @@
1
- var sql_tmLanguage = "{\n\t\"information_for_contributors\": [\n\t\t\"This file has been converted from https://github.com/microsoft/vscode-mssql/blob/master/syntaxes/SQL.plist\",\n\t\t\"If you want to provide a fix or improvement, please create a pull request against the original repository.\",\n\t\t\"Once accepted there, we are happy to receive an update request.\"\n\t],\n\t\"version\": \"https://github.com/microsoft/vscode-mssql/commit/3929516cce0a570e91ee1be74b09ed886cb360f4\",\n\t\"name\": \"SQL\",\n\t\"scopeName\": \"source.sql\",\n\t\"patterns\": [\n\t\t{\n\t\t\t\"match\": \"((?<!@)@)\\\\b(\\\\w+)\\\\b\",\n\t\t\t\"name\": \"text.variable\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(\\\\[)[^\\\\]]*(\\\\])\",\n\t\t\t\"name\": \"text.bracketed\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#comments\"\n\t\t},\n\t\t{\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"keyword.other.create.sql\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"keyword.other.sql\"\n\t\t\t\t},\n\t\t\t\t\"5\": {\n\t\t\t\t\t\"name\": \"entity.name.function.sql\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"match\": \"(?i:^\\\\s*(create(?:\\\\s+or\\\\s+replace)?)\\\\s+(aggregate|conversion|database|domain|function|group|(unique\\\\s+)?index|language|operator class|operator|rule|schema|sequence|table|tablespace|trigger|type|user|view)\\\\s+)(['\\\"`]?)(\\\\w+)\\\\4\",\n\t\t\t\"name\": \"meta.create.sql\"\n\t\t},\n\t\t{\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"keyword.other.create.sql\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"keyword.other.sql\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"match\": \"(?i:^\\\\s*(drop)\\\\s+(aggregate|conversion|database|domain|function|group|index|language|operator class|operator|rule|schema|sequence|table|tablespace|trigger|type|user|view))\",\n\t\t\t\"name\": \"meta.drop.sql\"\n\t\t},\n\t\t{\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"keyword.other.create.sql\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"keyword.other.table.sql\"\n\t\t\t\t},\n\t\t\t\t\"3\": {\n\t\t\t\t\t\"name\": \"entity.name.function.sql\"\n\t\t\t\t},\n\t\t\t\t\"4\": {\n\t\t\t\t\t\"name\": \"keyword.other.cascade.sql\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"match\": \"(?i:\\\\s*(drop)\\\\s+(table)\\\\s+(\\\\w+)(\\\\s+cascade)?\\\\b)\",\n\t\t\t\"name\": \"meta.drop.sql\"\n\t\t},\n\t\t{\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"keyword.other.create.sql\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"keyword.other.table.sql\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"match\": \"(?i:^\\\\s*(alter)\\\\s+(aggregate|conversion|database|domain|function|group|index|language|operator class|operator|proc(edure)?|rule|schema|sequence|table|tablespace|trigger|type|user|view)\\\\s+)\",\n\t\t\t\"name\": \"meta.alter.sql\"\n\t\t},\n\t\t{\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"storage.type.sql\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"storage.type.sql\"\n\t\t\t\t},\n\t\t\t\t\"3\": {\n\t\t\t\t\t\"name\": \"constant.numeric.sql\"\n\t\t\t\t},\n\t\t\t\t\"4\": {\n\t\t\t\t\t\"name\": \"storage.type.sql\"\n\t\t\t\t},\n\t\t\t\t\"5\": {\n\t\t\t\t\t\"name\": \"constant.numeric.sql\"\n\t\t\t\t},\n\t\t\t\t\"6\": {\n\t\t\t\t\t\"name\": \"storage.type.sql\"\n\t\t\t\t},\n\t\t\t\t\"7\": {\n\t\t\t\t\t\"name\": \"constant.numeric.sql\"\n\t\t\t\t},\n\t\t\t\t\"8\": {\n\t\t\t\t\t\"name\": \"constant.numeric.sql\"\n\t\t\t\t},\n\t\t\t\t\"9\": {\n\t\t\t\t\t\"name\": \"storage.type.sql\"\n\t\t\t\t},\n\t\t\t\t\"10\": {\n\t\t\t\t\t\"name\": \"constant.numeric.sql\"\n\t\t\t\t},\n\t\t\t\t\"11\": {\n\t\t\t\t\t\"name\": \"storage.type.sql\"\n\t\t\t\t},\n\t\t\t\t\"12\": {\n\t\t\t\t\t\"name\": \"storage.type.sql\"\n\t\t\t\t},\n\t\t\t\t\"13\": {\n\t\t\t\t\t\"name\": \"storage.type.sql\"\n\t\t\t\t},\n\t\t\t\t\"14\": {\n\t\t\t\t\t\"name\": \"constant.numeric.sql\"\n\t\t\t\t},\n\t\t\t\t\"15\": {\n\t\t\t\t\t\"name\": \"storage.type.sql\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"match\": \"(?xi)\\n\\n\\t\\t\\t\\t# normal stuff, capture 1\\n\\t\\t\\t\\t \\\\b(bigint|bigserial|bit|boolean|box|bytea|cidr|circle|date|double\\\\sprecision|inet|int|integer|line|lseg|macaddr|money|oid|path|point|polygon|real|serial|smallint|sysdate|text)\\\\b\\n\\n\\t\\t\\t\\t# numeric suffix, capture 2 + 3i\\n\\t\\t\\t\\t|\\\\b(bit\\\\svarying|character\\\\s(?:varying)?|tinyint|var\\\\schar|float|interval)\\\\((\\\\d+)\\\\)\\n\\n\\t\\t\\t\\t# optional numeric suffix, capture 4 + 5i\\n\\t\\t\\t\\t|\\\\b(char|number|varchar\\\\d?)\\\\b(?:\\\\((\\\\d+)\\\\))?\\n\\n\\t\\t\\t\\t# special case, capture 6 + 7i + 8i\\n\\t\\t\\t\\t|\\\\b(numeric|decimal)\\\\b(?:\\\\((\\\\d+),(\\\\d+)\\\\))?\\n\\n\\t\\t\\t\\t# special case, captures 9, 10i, 11\\n\\t\\t\\t\\t|\\\\b(times?)\\\\b(?:\\\\((\\\\d+)\\\\))?(\\\\swith(?:out)?\\\\stime\\\\szone\\\\b)?\\n\\n\\t\\t\\t\\t# special case, captures 12, 13, 14i, 15\\n\\t\\t\\t\\t|\\\\b(timestamp)(?:(s|tz))?\\\\b(?:\\\\((\\\\d+)\\\\))?(\\\\s(with|without)\\\\stime\\\\szone\\\\b)?\\n\\n\\t\\t\\t\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i:\\\\b((?:primary|foreign)\\\\s+key|references|on\\\\sdelete(\\\\s+cascade)?|nocheck|check|constraint|collate|default)\\\\b)\",\n\t\t\t\"name\": \"storage.modifier.sql\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\b\\\\d+\\\\b\",\n\t\t\t\"name\": \"constant.numeric.sql\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i:\\\\b(select(\\\\s+(all|distinct))?|insert\\\\s+(ignore\\\\s+)?into|update|delete|from|set|where|group\\\\s+by|or|like|and|union(\\\\s+all)?|having|order\\\\s+by|limit|cross\\\\s+join|join|straight_join|(inner|(left|right|full)(\\\\s+outer)?)\\\\s+join|natural(\\\\s+(inner|(left|right|full)(\\\\s+outer)?))?\\\\s+join)\\\\b)\",\n\t\t\t\"name\": \"keyword.other.DML.sql\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i:\\\\b(on|off|((is\\\\s+)?not\\\\s+)?null)\\\\b)\",\n\t\t\t\"name\": \"keyword.other.DDL.create.II.sql\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i:\\\\bvalues\\\\b)\",\n\t\t\t\"name\": \"keyword.other.DML.II.sql\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i:\\\\b(begin(\\\\s+work)?|start\\\\s+transaction|commit(\\\\s+work)?|rollback(\\\\s+work)?)\\\\b)\",\n\t\t\t\"name\": \"keyword.other.LUW.sql\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i:\\\\b(grant(\\\\swith\\\\sgrant\\\\soption)?|revoke)\\\\b)\",\n\t\t\t\"name\": \"keyword.other.authorization.sql\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i:\\\\bin\\\\b)\",\n\t\t\t\"name\": \"keyword.other.data-integrity.sql\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i:^\\\\s*(comment\\\\s+on\\\\s+(table|column|aggregate|constraint|database|domain|function|index|operator|rule|schema|sequence|trigger|type|view))\\\\s+.*?\\\\s+(is)\\\\s+)\",\n\t\t\t\"name\": \"keyword.other.object-comments.sql\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\bAS\\\\b\",\n\t\t\t\"name\": \"keyword.other.alias.sql\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(DESC|ASC)\\\\b\",\n\t\t\t\"name\": \"keyword.other.order.sql\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\*\",\n\t\t\t\"name\": \"keyword.operator.star.sql\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"[!<>]?=|<>|<|>\",\n\t\t\t\"name\": \"keyword.operator.comparison.sql\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"-|\\\\+|/\",\n\t\t\t\"name\": \"keyword.operator.math.sql\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\|\\\\|\",\n\t\t\t\"name\": \"keyword.operator.concatenator.sql\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(approx_count_distinct|approx_percentile_cont|approx_percentile_disc|avg|checksum_agg|count|count_big|group|grouping|grouping_id|max|min|sum|stdev|stdevp|var|varp)\\\\b\\\\s*\\\\(\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.aggregate.sql\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(cume_dist|first_value|lag|last_value|lead|percent_rank|percentile_cont|percentile_disc)\\\\b\\\\s*\\\\(\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.analytic.sql\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(bit_count|get_bit|left_shift|right_shift|set_bit)\\\\b\\\\s*\\\\(\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.bitmanipulation.sql\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(cast|convert|parse|try_cast|try_convert|try_parse)\\\\b\\\\s*\\\\(\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.conversion.sql\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(collationproperty|tertiary_weights)\\\\b\\\\s*\\\\(\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.collation.sql\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(asymkey_id|asymkeyproperty|certproperty|cert_id|crypt_gen_random|decryptbyasymkey|decryptbycert|decryptbykey|decryptbykeyautoasymkey|decryptbykeyautocert|decryptbypassphrase|encryptbyasymkey|encryptbycert|encryptbykey|encryptbypassphrase|hashbytes|is_objectsigned|key_guid|key_id|key_name|signbyasymkey|signbycert|symkeyproperty|verifysignedbycert|verifysignedbyasymkey)\\\\b\\\\s*\\\\(\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.cryptographic.sql\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(cursor_status)\\\\b\\\\s*\\\\(\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.cursor.sql\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(sysdatetime|sysdatetimeoffset|sysutcdatetime|current_time(stamp)?|getdate|getutcdate|datename|datepart|day|month|year|datefromparts|datetime2fromparts|datetimefromparts|datetimeoffsetfromparts|smalldatetimefromparts|timefromparts|datediff|dateadd|datetrunc|eomonth|switchoffset|todatetimeoffset|isdate|date_bucket)\\\\b\\\\s*\\\\(\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.datetime.sql\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(datalength|ident_current|ident_incr|ident_seed|identity|sql_variant_property)\\\\b\\\\s*\\\\(\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.datatype.sql\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(coalesce|nullif)\\\\b\\\\s*\\\\(\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.expression.sql\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?<!@)@@(?i)\\\\b(cursor_rows|connections|cpu_busy|datefirst|dbts|error|fetch_status|identity|idle|io_busy|langid|language|lock_timeout|max_connections|max_precision|nestlevel|options|packet_errors|pack_received|pack_sent|procid|remserver|rowcount|servername|servicename|spid|textsize|timeticks|total_errors|total_read|total_write|trancount|version)\\\\b\\\\s*\\\\(\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.globalvar.sql\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(json|isjson|json_object|json_array|json_value|json_query|json_modify|json_path_exists)\\\\b\\\\s*\\\\(\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.json.sql\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(choose|iif|greatest|least)\\\\b\\\\s*\\\\(\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.logical.sql\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(abs|acos|asin|atan|atn2|ceiling|cos|cot|degrees|exp|floor|log|log10|pi|power|radians|rand|round|sign|sin|sqrt|square|tan)\\\\b\\\\s*\\\\(\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.mathematical.sql\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(app_name|applock_mode|applock_test|assemblyproperty|col_length|col_name|columnproperty|database_principal_id|databasepropertyex|db_id|db_name|file_id|file_idex|file_name|filegroup_id|filegroup_name|filegroupproperty|fileproperty|fulltextcatalogproperty|fulltextserviceproperty|index_col|indexkey_property|indexproperty|object_definition|object_id|object_name|object_schema_name|objectproperty|objectpropertyex|original_db_name|parsename|schema_id|schema_name|scope_identity|serverproperty|stats_date|type_id|type_name|typeproperty)\\\\b\\\\s*\\\\(\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.metadata.sql\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(rank|dense_rank|ntile|row_number)\\\\b\\\\s*\\\\(\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.ranking.sql\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(generate_series|opendatasource|openjson|openrowset|openquery|openxml|predict|string_split)\\\\b\\\\s*\\\\(\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.rowset.sql\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(certencoded|certprivatekey|current_user|database_principal_id|has_perms_by_name|is_member|is_rolemember|is_srvrolemember|original_login|permissions|pwdcompare|pwdencrypt|schema_id|schema_name|session_user|suser_id|suser_sid|suser_sname|system_user|suser_name|user_id|user_name)\\\\b\\\\s*\\\\(\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.security.sql\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(ascii|char|charindex|concat|difference|format|left|len|lower|ltrim|nchar|nodes|patindex|quotename|replace|replicate|reverse|right|rtrim|soundex|space|str|string_agg|string_escape|string_split|stuff|substring|translate|trim|unicode|upper)\\\\b\\\\s*\\\\(\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.string.sql\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(binary_checksum|checksum|compress|connectionproperty|context_info|current_request_id|current_transaction_id|decompress|error_line|error_message|error_number|error_procedure|error_severity|error_state|formatmessage|get_filestream_transaction_context|getansinull|host_id|host_name|isnull|isnumeric|min_active_rowversion|newid|newsequentialid|rowcount_big|session_context|session_id|xact_state)\\\\b\\\\s*\\\\(\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.system.sql\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(patindex|textptr|textvalid)\\\\b\\\\s*\\\\(\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.textimage.sql\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"constant.other.database-name.sql\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"constant.other.table-name.sql\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"match\": \"(\\\\w+?)\\\\.(\\\\w+)\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#strings\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#regexps\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\b(?i)(abort|abort_after_wait|absent|absolute|accent_sensitivity|acceptable_cursopt|acp|action|activation|add|address|admin|aes_128|aes_192|aes_256|affinity|after|aggregate|algorithm|all_constraints|all_errormsgs|all_indexes|all_levels|all_results|allow_connections|allow_dup_row|allow_encrypted_value_modifications|allow_page_locks|allow_row_locks|allow_snapshot_isolation|alter|altercolumn|always|anonymous|ansi_defaults|ansi_null_default|ansi_null_dflt_off|ansi_null_dflt_on|ansi_nulls|ansi_padding|ansi_warnings|appdomain|append|application|apply|arithabort|arithignore|array|assembly|asymmetric|asynchronous_commit|at|atan2|atomic|attach|attach_force_rebuild_log|attach_rebuild_log|audit|auth_realm|authentication|auto|auto_cleanup|auto_close|auto_create_statistics|auto_drop|auto_shrink|auto_update_statistics|auto_update_statistics_async|automated_backup_preference|automatic|autopilot|availability|availability_mode|backup|backup_priority|base64|basic|batches|batchsize|before|between|bigint|binary|binding|bit|block|blockers|blocksize|bmk|both|break|broker|broker_instance|bucket_count|buffer|buffercount|bulk_logged|by|call|caller|card|case|catalog|catch|cert|certificate|change_retention|change_tracking|change_tracking_context|changes|char|character|character_set|check_expiration|check_policy|checkconstraints|checkindex|checkpoint|checksum|cleanup_policy|clear|clear_port|close|clustered|codepage|collection|column_encryption_key|column_master_key|columnstore|columnstore_archive|colv_80_to_100|colv_100_to_80|commit_differential_base|committed|compatibility_level|compress_all_row_groups|compression|compression_delay|concat_null_yields_null|concatenate|configuration|connect|continue|continue_after_error|contract|contract_name|control|conversation|conversation_group_id|conversation_handle|copy|copy_only|count_rows|counter|create(\\\\\\\\s+or\\\\\\\\s+alter)?|credential|cross|cryptographic|cryptographic_provider|cube|cursor|cursor_close_on_commit|cursor_default|data|data_compression|data_flush_interval_seconds|data_mirroring|data_purity|data_source|database|database_name|database_snapshot|datafiletype|date_correlation_optimization|date|datefirst|dateformat|date_format|datetime|datetime2|datetimeoffset|day(s)?|db_chaining|dbid|dbidexec|dbo_only|deadlock_priority|deallocate|dec|decimal|declare|decrypt|decrypt_a|decryption|default_database|default_language|default_logon_domain|default_schema|definition|delay|delayed_durability|delimitedtext|density_vector|dependent|des|description|desired_state|desx|differential|digest|disable|disable_broker|disable_def_cnst_chk|disabled|disk|distinct|distributed|distribution|drop|drop_existing|dts_buffers|dump|durability|dynamic|edition|elements|else|emergency|empty|enable|enable_broker|enabled|encoding|encrypted|encrypted_value|encryption|encryption_type|end|endpoint|endpoint_url|enhancedintegrity|entry|error_broker_conversations|errorfile|estimateonly|event|except|exec|executable|execute|exists|expand|expiredate|expiry_date|explicit|external|external_access|failover|failover_mode|failure_condition_level|fast|fast_forward|fastfirstrow|federated_service_account|fetch|field_terminator|fieldterminator|file|filelistonly|filegroup|filename|filestream|filestream_log|filestream_on|filetable|file_format|filter|first_row|fips_flagger|fire_triggers|first|firstrow|float|flush_interval_seconds|fmtonly|following|force|force_failover_allow_data_loss|force_service_allow_data_loss|forced|forceplan|formatfile|format_options|format_type|formsof|forward_only|free_cursors|free_exec_context|fullscan|fulltext|fulltextall|fulltextkey|function|generated|get|geography|geometry|global|go|goto|governor|guid|hadoop|hardening|hash|hashed|header_limit|headeronly|health_check_timeout|hidden|hierarchyid|histogram|histogram_steps|hits_cursors|hits_exec_context|hour(s)?|http|identity|identity_value|if|ifnull|ignore|ignore_constraints|ignore_dup_key|ignore_dup_row|ignore_triggers|image|immediate|implicit_transactions|include|include_null_values|index|inflectional|init|initiator|insensitive|insert|instead|int|integer|integrated|intersect|intermediate|interval_length_minutes|into|inuse_cursors|inuse_exec_context|io|is|isabout|iso_week|isolation|job_tracker_location|json|keep|keep_nulls|keep_replication|keepdefaults|keepfixed|keepidentity|keepnulls|kerberos|key|key_path|key_source|key_store_provider_name|keyset|kill|kilobytes_per_batch|labelonly|langid|language|last|lastrow|leading|legacy_cardinality_estimation|length|level|lifetime|lineage_80_to_100|lineage_100_to_80|listener_ip|listener_port|load|loadhistory|lob_compaction|local|local_service_name|locate|location|lock_escalation|lock_timeout|lockres|log|login|login_type|loop|manual|mark_in_use_for_removal|masked|master|matched|max_queue_readers|max_duration|max_outstanding_io_per_volume|maxdop|maxerrors|maxlength|maxtransfersize|max_plans_per_query|max_storage_size_mb|mediadescription|medianame|mediapassword|memogroup|memory_optimized|merge|message|message_forward_size|message_forwarding|microsecond|millisecond|minute(s)?|mirror_address|misses_cursors|misses_exec_context|mixed|modify|money|month|move|multi_user|must_change|name|namespace|nanosecond|native|native_compilation|nchar|ncharacter|never|new_account|new_broker|newname|next|no|no_browsetable|no_checksum|no_compression|no_infomsgs|no_triggers|no_truncate|nocount|noexec|noexpand|noformat|noinit|nolock|nonatomic|nonclustered|nondurable|none|norecompute|norecovery|noreset|norewind|noskip|not|notification|nounload|now|nowait|ntext|ntlm|nulls|numeric|numeric_roundabort|nvarchar|object|objid|oem|offline|old_account|online|operation_mode|open|openjson|optimistic|option|orc|out|outer|output|over|override|owner|ownership|pad_index|page|page_checksum|page_verify|pagecount|paglock|param|parameter_sniffing|parameter_type_expansion|parameterization|parquet|parseonly|partial|partition|partner|password|path|pause|percentage|permission_set|persisted|period|physical_only|plan_forcing_mode|policy|pool|population|ports|preceding|precision|predicate|presume_abort|primary|primary_role|print|prior|priority |priority_level|private|proc(edure)?|procedure_name|profile|provider|quarter|query_capture_mode|query_governor_cost_limit|query_optimizer_hotfixes|query_store|queue|quoted_identifier|raiserror|range|raw|rcfile|rc2|rc4|rc4_128|rdbms|read_committed_snapshot|read|read_only|read_write|readcommitted|readcommittedlock|readonly|readpast|readuncommitted|readwrite|real|rebuild|receive|recmodel_70backcomp|recompile|reconfigure|recovery|recursive|recursive_triggers|redo_queue|reject_sample_value|reject_type|reject_value|relative|remote|remote_data_archive|remote_proc_transactions|remote_service_name|remove|removed_cursors|removed_exec_context|reorganize|repeat|repeatable|repeatableread|replace|replica|replicated|replnick_100_to_80|replnickarray_80_to_100|replnickarray_100_to_80|required|required_cursopt|resample|reset|resource|resource_manager_location|respect|restart|restore|restricted_user|resume|retaindays|retention|return|revert|rewind|rewindonly|returns|robust|role|rollup|root|round_robin|route|row|rowdump|rowguidcol|rowlock|row_terminator|rows|rows_per_batch|rowsets_only|rowterminator|rowversion|rsa_1024|rsa_2048|rsa_3072|rsa_4096|rsa_512|safe|safety|sample|save|scalar|schema|schemabinding|scoped|scroll|scroll_locks|sddl|second|secexpr|secondary|secondary_only|secondary_role|secret|security|securityaudit|selective|self|send|sent|sequence|serde_method|serializable|server|service|service_broker|service_name|service_objective|session_timeout|session|sessions|seterror|setopts|sets|shard_map_manager|shard_map_name|sharded|shared_memory|show_statistics|showplan_all|showplan_text|showplan_xml|showplan_xml_with_recompile|shrinkdb|shutdown|sid|signature|simple|single_blob|single_clob|single_nclob|single_user|singleton|site|size_based_cleanup_mode|skip|smalldatetime|smallint|smallmoney|snapshot|snapshot_import|snapshotrestorephase|soap|softnuma|sort_in_tempdb|sorted_data|sorted_data_reorg|spatial|sql|sql_bigint|sql_binary|sql_bit|sql_char|sql_date|sql_decimal|sql_double|sql_float|sql_guid|sql_handle|sql_longvarbinary|sql_longvarchar|sql_numeric|sql_real|sql_smallint|sql_time|sql_timestamp|sql_tinyint|sql_tsi_day|sql_tsi_frac_second|sql_tsi_hour|sql_tsi_minute|sql_tsi_month|sql_tsi_quarter|sql_tsi_second|sql_tsi_week|sql_tsi_year|sql_type_date|sql_type_time|sql_type_timestamp|sql_varbinary|sql_varchar|sql_variant|sql_wchar|sql_wlongvarchar|ssl|ssl_port|standard|standby|start|start_date|started|stat_header|state|statement|static|statistics|statistics_incremental|statistics_norecompute|statistics_only|statman|stats|stats_stream|status|stop|stop_on_error|stopat|stopatmark|stopbeforemark|stoplist|stopped|string_delimiter|subject|supplemental_logging|supported|suspend|symmetric|synchronous_commit|synonym|sysname|system|system_time|system_versioning|table|tableresults|tablock|tablockx|take|tape|target|target_index|target_partition|tcp|temporal_history_retention|text|textimage_on|then|thesaurus|throw|time|timeout|timestamp|tinyint|to|top|torn_page_detection|track_columns_updated|trailing|tran|transaction|transfer|triple_des|triple_des_3key|truncate|trustworthy|try|tsql|type|type_desc|type_warning|tzoffset|uid|unbounded|uncommitted|unique|uniqueidentifier|unlimited|unload|unlock|unsafe|updlock|url|use|useplan|useroptions|use_type_default|using|utcdatetime|valid_xml|validation|value|values|varbinary|varchar|verbose|verifyonly|version|view_metadata|virtual_device|visiblity|wait_at_low_priority|waitfor|webmethod|week|weekday|weight|well_formed_xml|when|while|widechar|widechar_ansi|widenative|window|windows|with|within|within group|witness|without|without_array_wrapper|workload|wsdl|xact_abort|xlock|xml|xmlschema|xquery|xsinil|year|zone)\\\\b\",\n\t\t\t\"name\": \"keyword.other.sql\"\n\t\t},\n\t\t{\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.section.scope.begin.sql\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"punctuation.section.scope.end.sql\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"comment\": \"Allow for special ↩ behavior\",\n\t\t\t\"match\": \"(\\\\()(\\\\))\",\n\t\t\t\"name\": \"meta.block.sql\"\n\t\t}\n\t],\n\t\"repository\": {\n\t\t\"comments\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(^[ \\\\t]+)?(?=--)\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.whitespace.comment.leading.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?!\\\\G)\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"--\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.sql\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"\\\\n\",\n\t\t\t\t\t\t\t\"name\": \"comment.line.double-dash.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(^[ \\\\t]+)?(?=#)\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.whitespace.comment.leading.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?!\\\\G)\",\n\t\t\t\t\t\"patterns\": []\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"/\\\\*\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\*/\",\n\t\t\t\t\t\"name\": \"comment.block.c\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"regexps\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"/(?=\\\\S.*/)\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"/\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.end.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"string.regexp.sql\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#string_interpolation\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"\\\\\\\\/\",\n\t\t\t\t\t\t\t\"name\": \"constant.character.escape.slash.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"%r\\\\{\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"comment\": \"We should probably handle nested bracket pairs!?! -- Allan\",\n\t\t\t\t\t\"end\": \"\\\\}\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.end.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"string.regexp.modr.sql\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#string_interpolation\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"string_escape\": {\n\t\t\t\"match\": \"\\\\\\\\.\",\n\t\t\t\"name\": \"constant.character.escape.sql\"\n\t\t},\n\t\t\"string_interpolation\": {\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.sql\"\n\t\t\t\t},\n\t\t\t\t\"3\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.end.sql\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"match\": \"(#\\\\{)([^\\\\}]*)(\\\\})\",\n\t\t\t\"name\": \"string.interpolated.sql\"\n\t\t},\n\t\t\"strings\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.sql\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.end.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"comment\": \"this is faster than the next begin/end rule since sub-pattern will match till end-of-line and SQL files tend to have very long lines.\",\n\t\t\t\t\t\"match\": \"(N)?(')[^']*(')\",\n\t\t\t\t\t\"name\": \"string.quoted.single.sql\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"'\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"'\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.end.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"string.quoted.single.sql\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#string_escape\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.sql\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.end.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"comment\": \"this is faster than the next begin/end rule since sub-pattern will match till end-of-line and SQL files tend to have very long lines.\",\n\t\t\t\t\t\"match\": \"(`)[^`\\\\\\\\]*(`)\",\n\t\t\t\t\t\"name\": \"string.quoted.other.backtick.sql\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"`\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"`\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.end.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"string.quoted.other.backtick.sql\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#string_escape\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.sql\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.end.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"comment\": \"this is faster than the next begin/end rule since sub-pattern will match till end-of-line and SQL files tend to have very long lines.\",\n\t\t\t\t\t\"match\": \"(\\\")[^\\\"#]*(\\\")\",\n\t\t\t\t\t\"name\": \"string.quoted.double.sql\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"\\\"\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\"\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.end.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"string.quoted.double.sql\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#string_interpolation\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"%\\\\{\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\}\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.end.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"string.other.quoted.brackets.sql\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#string_interpolation\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t}\n}";
2
- export { sql_tmLanguage as default };
@@ -1,2 +0,0 @@
1
- var languageConfiguration = "{\n\t\"comments\": {\n\t\t\"lineComment\": \"//\",\n\t\t\"blockComment\": [ \"/*\", \"*/\" ]\n\t},\n\t\"brackets\": [\n\t\t[\"{\", \"}\"],\n\t\t[\"[\", \"]\"],\n\t\t[\"(\", \")\"]\n\t],\n\t\"autoClosingPairs\": [\n\t\t[\"{\", \"}\"],\n\t\t[\"[\", \"]\"],\n\t\t[\"(\", \")\"],\n\t\t{ \"open\": \"\\\"\", \"close\": \"\\\"\", \"notIn\": [\"string\"] },\n\t\t{ \"open\": \"'\", \"close\": \"'\", \"notIn\": [\"string\"] },\n\t\t{ \"open\": \"`\", \"close\": \"`\", \"notIn\": [\"string\"] }\n\t],\n\t\"surroundingPairs\": [\n\t\t[\"{\", \"}\"],\n\t\t[\"[\", \"]\"],\n\t\t[\"(\", \")\"],\n\t\t[\"\\\"\", \"\\\"\"],\n\t\t[\"'\", \"'\"],\n\t\t[\"`\", \"`\"]\n\t]\n}\n";
2
- export { languageConfiguration as default };
@@ -1,2 +0,0 @@
1
- var swift = "{\n\t\"print\": {\n\t\t\"prefix\": \"print\",\n\t\t\"body\": \"print(\\\"$1\\\")\\n$0\",\n\t\t\"description\": \"print(\\\"...\\\")\"\n\t},\n\t\"print value\": {\n\t\t\"prefix\": \"printv\",\n\t\t\"body\": \"print(\\\"\\\\($1)\\\")\\n$0\",\n\t\t\"description\": \"print(\\\"\\\\(...)\\\")\"\n\t},\n\t\"while\": {\n\t\t\"prefix\": \"while\",\n\t\t\"body\": [\n\t\t\t\"while ${1:condition} {\",\n\t\t\t\"\\t$0\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"while statement\"\n\t},\n\t\"repeat-while\": {\n\t\t\"prefix\": \"repeat\",\n\t\t\"body\": [\n\t\t\t\"repeat {\",\n\t\t\t\"\\t$0\",\n\t\t\t\"} while ${1:condition}\"\n\t\t],\n\t\t\"description\": \"repeat-while statement\"\n\t},\n\t\"for\": {\n\t\t\"prefix\": \"for\",\n\t\t\"body\": [\n\t\t\t\"for ${1:item} in ${2:collection} {\",\n\t\t\t\"\\t$0\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"for-in statement\"\n\t},\n\t\"if\": {\n\t\t\"prefix\": \"if\",\n\t\t\"body\": [\n\t\t\t\"if ${1:condition} {\",\n\t\t\t\"\\t$0\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"if statement\"\n\t},\n\t\"else if\": {\n\t\t\"prefix\": \"elif\",\n\t\t\"body\": [\n\t\t\t\"else if ${1:condition} {\",\n\t\t\t\"\\t$0\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"else clause with a nested if statement\"\n\t},\n\t\"else\": {\n\t\t\"prefix\": \"else\",\n\t\t\"body\": [\n\t\t\t\"else {\",\n\t\t\t\"\\t$0\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"else clause\"\n\t},\n\t\"if let\": {\n\t\t\"prefix\": \"iflet\",\n\t\t\"body\": [\n\t\t\t\"if let ${1:value} = ${2:optional} {\",\n\t\t\t\"\\t$0\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"if statement with optional binding\"\n\t},\n\t\"guard\": {\n\t\t\"prefix\": \"guard\",\n\t\t\"body\": [\n\t\t\t\"guard ${1:condition} else {\",\n\t\t\t\"\\t$0\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"guard statement\"\n\t},\n\t\"guard let\": {\n\t\t\"prefix\": \"guardlet\",\n\t\t\"body\": [\n\t\t\t\"guard let ${1:value} = ${2:optional} else {\",\n\t\t\t\"\\t$0\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"guard statement with optional binding\"\n\t},\n\t\"switch\": {\n\t\t\"prefix\": \"switch\",\n\t\t\"body\": [\n\t\t\t\"switch ${1:value} {\",\n\t\t\t\"case ${2:pattern}:\",\n\t\t\t\"\\t$0\",\n\t\t\t\"default:\",\n\t\t\t\"\\t\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"switch statement\"\n\t},\n\t\"do\": {\n\t\t\"prefix\": \"do\",\n\t\t\"body\": [\n\t\t\t\"do {\",\n\t\t\t\"\\t$0\",\n\t\t\t\"} catch ${1:error} {\",\n\t\t\t\"\\t$2\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"do statement\"\n\t},\n\t\"func\": {\n\t\t\"prefix\": \"func\",\n\t\t\"body\": [\n\t\t\t\"func ${1:name}(${2:parameters}) -> ${3:Type} {\",\n\t\t\t\"\\t$0\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"function declaration\"\n\t},\n\t\"struct\": {\n\t\t\"prefix\": \"struct\",\n\t\t\"body\": [\n\t\t\t\"struct ${1:Name} {\",\n\t\t\t\"\",\n\t\t\t\"\\t$0\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"struct declaration\"\n\t},\n\t\"enum\": {\n\t\t\"prefix\": \"enum\",\n\t\t\"body\": [\n\t\t\t\"enum ${1:Name} {\",\n\t\t\t\"\",\n\t\t\t\"\\tcase $0\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"enum declaration\"\n\t},\n\t\"class\": {\n\t\t\"prefix\": \"class\",\n\t\t\"body\": [\n\t\t\t\"class ${1:Name} {\",\n\t\t\t\"\",\n\t\t\t\"\\t$0\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"class declaration\"\n\t},\n\t\"protocol\": {\n\t\t\"prefix\": \"protocol\",\n\t\t\"body\": [\n\t\t\t\"protocol ${1:Name} {\",\n\t\t\t\"\",\n\t\t\t\"\\t$0\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"protocol declaration\"\n\t},\n\t\"extension\": {\n\t\t\"prefix\": \"extension\",\n\t\t\"body\": [\n\t\t\t\"extension ${1:Type} {\",\n\t\t\t\"\",\n\t\t\t\"\\t$0\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"extension declaration\"\n\t}\n}\n";
2
- export { swift as default };
@@ -1,2 +0,0 @@
1
- var swift_tmLanguage = "{\n\t\"information_for_contributors\": [\n\t\t\"This file has been converted from https://github.com/textmate/swift.tmbundle/blob/master/Syntaxes/Swift.tmLanguage\",\n\t\t\"If you want to provide a fix or improvement, please create a pull request against the original repository.\",\n\t\t\"Once accepted there, we are happy to receive an update request.\"\n\t],\n\t\"version\": \"https://github.com/textmate/swift.tmbundle/commit/7a35637eb70aef3114b091c4ff6fbf6a2faa881b\",\n\t\"name\": \"Swift\",\n\t\"scopeName\": \"source.swift\",\n\t\"comment\": \"See swift.tmbundle/grammar-test.swift for test cases.\",\n\t\"patterns\": [\n\t\t{\n\t\t\t\"include\": \"#root\"\n\t\t}\n\t],\n\t\"repository\": {\n\t\t\"async-throws\": {\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"invalid.illegal.await-must-precede-throws.swift\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"keyword.control.exception.swift\"\n\t\t\t\t},\n\t\t\t\t\"3\": {\n\t\t\t\t\t\"name\": \"keyword.control.async.swift\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"match\": \"\\\\b(?:(throws\\\\s+async|rethrows\\\\s+async)|(throws|rethrows)|(async))\\\\b\"\n\t\t},\n\t\t\"attributes\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"((@)available)(\\\\()\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.attribute.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.attribute.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.begin.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.end.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.attribute.available.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.other.platform.os.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"constant.numeric.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"match\": \"\\\\b(swift|(?:iOS|macOS|OSX|watchOS|tvOS|UIKitForMac)(?:ApplicationExtension)?)\\\\b(?:\\\\s+([0-9]+(?:\\\\.[0-9]+)*\\\\b))?\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"\\\\b(introduced|deprecated|obsoleted)\\\\s*(:)\\\\s*\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.other.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.separator.key-value.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"(?!\\\\G)\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\b[0-9]+(?:\\\\.[0-9]+)*\\\\b\",\n\t\t\t\t\t\t\t\t\t\"name\": \"constant.numeric.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"\\\\b(message|renamed)\\\\s*(:)\\\\s*(?=\\\")\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.other.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.separator.key-value.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"(?!\\\\G)\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#literals\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.other.platform.all.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.other.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.character-not-allowed-here.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"match\": \"(?:(\\\\*)|\\\\b(deprecated|unavailable|noasync)\\\\b)\\\\s*(.*?)(?=[,)])\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"((@)objc)(\\\\()\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.attribute.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.attribute.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.begin.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.end.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.attribute.objc.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.missing-colon-after-selector-piece.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"match\": \"\\\\w*(?::(?:\\\\w*:)*(\\\\w*))?\",\n\t\t\t\t\t\t\t\"name\": \"entity.name.function.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(@)(?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>)\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.attribute.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.attribute.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"comment\": \"any other attribute\",\n\t\t\t\t\t\"end\": \"(?!\\\\G\\\\()\",\n\t\t\t\t\t\"name\": \"meta.attribute.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"\\\\(\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.begin.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"\\\\)\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.end.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"name\": \"meta.arguments.attribute.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#expressions\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"builtin-functions\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"comment\": \"Member functions in the standard library in Swift 3 which may be used with trailing closures and no parentheses\",\n\t\t\t\t\t\"match\": \"(?<=\\\\.)(?:s(?:ort(?:ed)?|plit)|contains|index|partition|f(?:i(?:lter|rst)|orEach|latMap)|with(?:MutableCharacters|CString|U(?:nsafe(?:Mutable(?:BufferPointer|Pointer(?:s|To(?:Header|Elements)))|BufferPointer)|TF8Buffer))|m(?:in|a(?:p|x)))(?=\\\\s*[({])\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"comment\": \"Member functions in the standard library in Swift 3\",\n\t\t\t\t\t\"match\": \"(?<=\\\\.)(?:s(?:ymmetricDifference|t(?:oreBytes|arts|ride)|ortInPlace|u(?:ccessor|ffix|btract(?:ing|InPlace|WithOverflow)?)|quareRoot|amePosition)|h(?:oldsUnique(?:Reference|OrPinnedReference)|as(?:Suffix|Prefix))|ne(?:gate(?:d)?|xt)|c(?:o(?:untByEnumerating|py(?:Bytes)?)|lamp(?:ed)?|reate)|t(?:o(?:IntMax|Opaque|UIntMax)|ake(?:RetainedValue|UnretainedValue)|r(?:uncatingRemainder|a(?:nscodedLength|ilSurrogate)))|i(?:s(?:MutableAndUniquelyReferenced(?:OrPinned)?|S(?:trictSu(?:perset(?:Of)?|bset(?:Of)?)|u(?:perset(?:Of)?|bset(?:Of)?))|Continuation|T(?:otallyOrdered|railSurrogate)|Disjoint(?:With)?|Unique(?:Reference|lyReferenced(?:OrPinned)?)|Equal|Le(?:ss(?:ThanOrEqualTo)?|adSurrogate))|n(?:sert(?:ContentsOf)?|tersect(?:ion|InPlace)?|itialize(?:Memory|From)?|dex(?:Of|ForKey)))|o(?:verlaps|bjectAt)|d(?:i(?:stance(?:To)?|vide(?:d|WithOverflow)?)|e(?:s(?:cendant|troy)|code(?:CString)?|initialize|alloc(?:ate(?:Capacity)?)?)|rop(?:First|Last))|u(?:n(?:ion(?:InPlace)?|derestimateCount|wrappedOrError)|p(?:date(?:Value)?|percased))|join(?:ed|WithSeparator)|p(?:op(?:First|Last)|ass(?:Retained|Unretained)|re(?:decessor|fix))|e(?:scape(?:d)?|n(?:code|umerate(?:d)?)|lementsEqual|xclusiveOr(?:InPlace)?)|f(?:orm(?:Remainder|S(?:ymmetricDifference|quareRoot)|TruncatingRemainder|In(?:tersection|dex)|Union)|latten|rom(?:CString(?:RepairingIllFormedUTF8)?|Opaque))|w(?:i(?:thMemoryRebound|dth)|rite(?:To)?)|l(?:o(?:wercased|ad)|e(?:adSurrogate|xicographical(?:Compare|lyPrecedes)))|a(?:ss(?:ign(?:BackwardFrom|From)?|umingMemoryBound)|d(?:d(?:ing(?:Product)?|Product|WithOverflow)?|vanced(?:By)?)|utorelease|ppend(?:ContentsOf)?|lloc(?:ate)?|bs)|r(?:ound(?:ed)?|e(?:serveCapacity|tain|duce|place(?:Range|Subrange)?|verse(?:d)?|quest(?:NativeBuffer|UniqueMutableBackingBuffer)|lease|m(?:ove(?:Range|Subrange|Value(?:ForKey)?|First|Last|A(?:tIndex|ll))?|ainder(?:WithOverflow)?)))|ge(?:nerate|t(?:Objects|Element))|m(?:in(?:imum(?:Magnitude)?|Element)|ove(?:Initialize(?:Memory|BackwardFrom|From)?|Assign(?:From)?)?|ultipl(?:y(?:WithOverflow)?|ied)|easure|a(?:ke(?:Iterator|Description)|x(?:imum(?:Magnitude)?|Element)))|bindMemory)(?=\\\\s*\\\\()\",\n\t\t\t\t\t\"name\": \"support.function.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"comment\": \"Member functions in the standard library in Swift 2 only\",\n\t\t\t\t\t\"match\": \"(?<=\\\\.)(?:s(?:uperclassMirror|amePositionIn|tartsWith)|nextObject|c(?:haracterAtIndex|o(?:untByEnumeratingWithState|pyWithZone)|ustom(?:Mirror|PlaygroundQuickLook))|is(?:EmptyInput|ASCII)|object(?:Enumerator|ForKey|AtIndex)|join|put|keyEnumerator|withUnsafeMutablePointerToValue|length|getMirror|m(?:oveInitializeAssignFrom|ember))(?=\\\\s*\\\\()\",\n\t\t\t\t\t\"name\": \"support.function.swift\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"builtin-global-functions\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"\\\\b(type)(\\\\()\\\\s*(of)(:)\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"support.function.dynamic-type.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.begin.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"support.variable.parameter.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.argument-label.begin.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.end.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#expressions\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"comment\": \"Global functions available in Swift 3 which may be used with trailing closures and no parentheses\",\n\t\t\t\t\t\"match\": \"\\\\b(?:anyGenerator|autoreleasepool)(?=\\\\s*[({])\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"comment\": \"Global functions available in Swift 3\",\n\t\t\t\t\t\"match\": \"\\\\b(?:s(?:tride(?:of(?:Value)?)?|izeof(?:Value)?|equence|wap)|numericCast|transcode|is(?:UniquelyReferenced(?:NonObjC)?|KnownUniquelyReferenced)|zip|d(?:ump|ebugPrint)|unsafe(?:BitCast|Downcast|Unwrap|Address(?:Of)?)|pr(?:int|econdition(?:Failure)?)|fatalError|with(?:Unsafe(?:MutablePointer|Pointer)|ExtendedLifetime|VaList)|a(?:ssert(?:ionFailure)?|lignof(?:Value)?|bs)|re(?:peatElement|adLine)|getVaList|m(?:in|ax))(?=\\\\s*\\\\()\",\n\t\t\t\t\t\"name\": \"support.function.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"comment\": \"Global functions available in Swift 2 only\",\n\t\t\t\t\t\"match\": \"\\\\b(?:s(?:ort|uffix|pli(?:ce|t))|insert|overlaps|d(?:istance|rop(?:First|Last))|join|prefix|extend|withUnsafe(?:MutablePointers|Pointers)|lazy|advance|re(?:flect|move(?:Range|Last|A(?:tIndex|ll))))(?=\\\\s*\\\\()\",\n\t\t\t\t\t\"name\": \"support.function.swift\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"builtin-properties\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"comment\": \"The simpler (?<=\\\\bProcess\\\\.|\\\\bCommandLine\\\\.) breaks VS Code / Atom, see https://github.com/textmate/swift.tmbundle/issues/29\",\n\t\t\t\t\t\"match\": \"(?<=^Process\\\\.|\\\\WProcess\\\\.|^CommandLine\\\\.|\\\\WCommandLine\\\\.)(arguments|argc|unsafeArgv)\",\n\t\t\t\t\t\"name\": \"support.variable.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"comment\": \"Properties in the standard library in Swift 3\",\n\t\t\t\t\t\"match\": \"(?<=\\\\.)(?:s(?:t(?:artIndex|ri(?:ngValue|de))|i(?:ze|gn(?:BitIndex|ificand(?:Bit(?:Count|Pattern)|Width)?|alingNaN)?)|u(?:perclassMirror|mmary|bscriptBaseAddress))|h(?:eader|as(?:hValue|PointerRepresentation))|n(?:ulTerminatedUTF8|ext(?:Down|Up)|a(?:n|tiveOwner))|c(?:haracters|ount(?:TrailingZeros)?|ustom(?:Mirror|PlaygroundQuickLook)|apacity)|i(?:s(?:S(?:ign(?:Minus|aling(?:NaN)?)|ubnormal)|N(?:ormal|aN)|Canonical|Infinite|Zero|Empty|Finite|ASCII)|n(?:dices|finity)|dentity)|owner|de(?:scription|bugDescription)|u(?:n(?:safelyUnwrapped|icodeScalar(?:s)?|derestimatedCount)|tf(?:16|8(?:Start|C(?:String|odeUnitCount))?)|intValue|ppercaseString|lp(?:OfOne)?)|p(?:i|ointee)|e(?:ndIndex|lements|xponent(?:Bit(?:Count|Pattern))?)|value(?:s)?|keys|quietNaN|f(?:irst(?:ElementAddress(?:IfContiguous)?)?|loatingPointClass)|l(?:ittleEndian|owercaseString|eastNo(?:nzeroMagnitude|rmalMagnitude)|a(?:st|zy))|a(?:l(?:ignment|l(?:ocatedElementCount|Zeros))|rray(?:PropertyIsNativeTypeChecked)?)|ra(?:dix|wValue)|greatestFiniteMagnitude|m(?:in|emory|ax)|b(?:yteS(?:ize|wapped)|i(?:nade|tPattern|gEndian)|uffer|ase(?:Address)?))\\\\b\",\n\t\t\t\t\t\"name\": \"support.variable.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"comment\": \"Properties in the standard library in Swift 2 only\",\n\t\t\t\t\t\"match\": \"(?<=\\\\.)(?:boolValue|disposition|end|objectIdentifier|quickLookObject|start|valueType)\\\\b\",\n\t\t\t\t\t\"name\": \"support.variable.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"comment\": \"Enum cases in the standard library - note that there is some overlap between these and the properties\",\n\t\t\t\t\t\"match\": \"(?<=\\\\.)(?:s(?:calarValue|i(?:ze|gnalingNaN)|o(?:und|me)|uppressed|prite|et)|n(?:one|egative(?:Subnormal|Normal|Infinity|Zero))|c(?:ol(?:or|lection)|ustomized)|t(?:o(?:NearestOr(?:Even|AwayFromZero)|wardZero)|uple|ext)|i(?:nt|mage)|optional|d(?:ictionary|o(?:uble|wn))|u(?:Int|p|rl)|p(?:o(?:sitive(?:Subnormal|Normal|Infinity|Zero)|int)|lus)|e(?:rror|mptyInput)|view|quietNaN|float|a(?:ttributedString|wayFromZero)|r(?:ectangle|ange)|generated|minus|b(?:ool|ezierPath))\\\\b\",\n\t\t\t\t\t\"name\": \"support.variable.swift\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"builtin-types\": {\n\t\t\t\"comment\": \"Types provided in the standard library\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#builtin-class-type\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#builtin-enum-type\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#builtin-protocol-type\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#builtin-struct-type\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#builtin-typealias\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\bAny\\\\b\",\n\t\t\t\t\t\"name\": \"support.type.any.swift\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"repository\": {\n\t\t\t\t\"builtin-class-type\": {\n\t\t\t\t\t\"comment\": \"Builtin class types\",\n\t\t\t\t\t\"match\": \"\\\\b(Managed(Buffer|ProtoBuffer)|NonObjectiveCBase|AnyGenerator)\\\\b\",\n\t\t\t\t\t\"name\": \"support.class.swift\"\n\t\t\t\t},\n\t\t\t\t\"builtin-enum-type\": {\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"CommandLine is an enum, but it acts like a constant\",\n\t\t\t\t\t\t\t\"match\": \"\\\\b(?:CommandLine|Process(?=\\\\.))\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"support.constant.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"The return type of a function that never returns\",\n\t\t\t\t\t\t\t\"match\": \"\\\\bNever\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"support.constant.never.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"Enum types in the standard library in Swift 3\",\n\t\t\t\t\t\t\t\"match\": \"\\\\b(?:ImplicitlyUnwrappedOptional|Representation|MemoryLayout|FloatingPointClassification|SetIndexRepresentation|SetIteratorRepresentation|FloatingPointRoundingRule|UnicodeDecodingResult|Optional|DictionaryIndexRepresentation|AncestorRepresentation|DisplayStyle|PlaygroundQuickLook|Never|FloatingPointSign|Bit|DictionaryIteratorRepresentation)\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"support.type.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"Enum types in the standard library in Swift 2 only\",\n\t\t\t\t\t\t\t\"match\": \"\\\\b(?:MirrorDisposition|QuickLookObject)\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"support.type.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"builtin-protocol-type\": {\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"Protocols in the standard library in Swift 3\",\n\t\t\t\t\t\t\t\"match\": \"\\\\b(?:Ra(?:n(?:domAccess(?:Collection|Indexable)|geReplaceable(?:Collection|Indexable))|wRepresentable)|M(?:irrorPath|utable(?:Collection|Indexable))|Bi(?:naryFloatingPoint|twiseOperations|directional(?:Collection|Indexable))|S(?:tr(?:ideable|eamable)|igned(?:Number|Integer)|e(?:tAlgebra|quence))|Hashable|C(?:o(?:llection|mparable)|ustom(?:Reflectable|StringConvertible|DebugStringConvertible|PlaygroundQuickLookable|LeafReflectable)|VarArg)|TextOutputStream|I(?:n(?:teger(?:Arithmetic)?|dexable(?:Base)?)|teratorProtocol)|OptionSet|Un(?:signedInteger|icodeCodec)|E(?:quatable|rror|xpressibleBy(?:BooleanLiteral|String(?:Interpolation|Literal)|NilLiteral|IntegerLiteral|DictionaryLiteral|UnicodeScalarLiteral|ExtendedGraphemeClusterLiteral|FloatLiteral|ArrayLiteral))|FloatingPoint|L(?:osslessStringConvertible|azy(?:SequenceProtocol|CollectionProtocol))|A(?:nyObject|bsoluteValuable))\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"support.type.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"Protocols in the standard library in Swift 2 only\",\n\t\t\t\t\t\t\t\"match\": \"\\\\b(?:Ran(?:domAccessIndexType|geReplaceableCollectionType)|GeneratorType|M(?:irror(?:Type|PathType)|utable(?:Sliceable|CollectionType))|B(?:i(?:twiseOperationsType|directionalIndexType)|oolean(?:Type|LiteralConvertible))|S(?:tring(?:InterpolationConvertible|LiteralConvertible)|i(?:nkType|gned(?:NumberType|IntegerType))|e(?:tAlgebraType|quenceType)|liceable)|NilLiteralConvertible|C(?:ollectionType|VarArgType)|Inte(?:rvalType|ger(?:Type|LiteralConvertible|ArithmeticType))|O(?:utputStreamType|ptionSetType)|DictionaryLiteralConvertible|Un(?:signedIntegerType|icode(?:ScalarLiteralConvertible|CodecType))|E(?:rrorType|xten(?:sibleCollectionType|dedGraphemeClusterLiteralConvertible))|F(?:orwardIndexType|loat(?:ingPointType|LiteralConvertible))|A(?:nyCollectionType|rrayLiteralConvertible))\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"support.type.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"builtin-struct-type\": {\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"Structs in the standard library in Swift 3\",\n\t\t\t\t\t\t\t\"match\": \"\\\\b(?:R(?:e(?:peat(?:ed)?|versed(?:RandomAccess(?:Collection|Index)|Collection|Index))|an(?:domAccessSlice|ge(?:Replaceable(?:RandomAccessSlice|BidirectionalSlice|Slice)|Generator)?))|Generator(?:Sequence|OfOne)|M(?:irror|utable(?:Ran(?:domAccessSlice|geReplaceable(?:RandomAccessSlice|BidirectionalSlice|Slice))|BidirectionalSlice|Slice)|anagedBufferPointer)|B(?:idirectionalSlice|ool)|S(?:t(?:aticString|ri(?:ng|deT(?:hrough(?:Generator|Iterator)?|o(?:Generator|Iterator)?)))|et(?:I(?:ndex|terator))?|lice)|HalfOpenInterval|C(?:haracter(?:View)?|o(?:ntiguousArray|untable(?:Range|ClosedRange)|llectionOfOne)|OpaquePointer|losed(?:Range(?:I(?:ndex|terator))?|Interval)|VaListPointer)|I(?:n(?:t(?:16|8|32|64)?|d(?:ices|ex(?:ing(?:Generator|Iterator))?))|terator(?:Sequence|OverOne)?)|Zip2(?:Sequence|Iterator)|O(?:paquePointer|bjectIdentifier)|D(?:ictionary(?:I(?:ndex|terator)|Literal)?|ouble|efault(?:RandomAccessIndices|BidirectionalIndices|Indices))|U(?:n(?:safe(?:RawPointer|Mutable(?:RawPointer|BufferPointer|Pointer)|BufferPointer(?:Generator|Iterator)?|Pointer)|icodeScalar(?:View)?|foldSequence|managed)|TF(?:16(?:View)?|8(?:View)?|32)|Int(?:16|8|32|64)?)|Join(?:Generator|ed(?:Sequence|Iterator))|PermutationGenerator|E(?:numerate(?:Generator|Sequence|d(?:Sequence|Iterator))|mpty(?:Generator|Collection|Iterator))|Fl(?:oat(?:80)?|atten(?:Generator|BidirectionalCollection(?:Index)?|Sequence|Collection(?:Index)?|Iterator))|L(?:egacyChildren|azy(?:RandomAccessCollection|Map(?:RandomAccessCollection|Generator|BidirectionalCollection|Sequence|Collection|Iterator)|BidirectionalCollection|Sequence|Collection|Filter(?:Generator|BidirectionalCollection|Sequence|Collection|I(?:ndex|terator))))|A(?:ny(?:RandomAccessCollection|Generator|BidirectionalCollection|Sequence|Hashable|Collection|I(?:ndex|terator))|utoreleasingUnsafeMutablePointer|rray(?:Slice)?))\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"support.type.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"Structs in the standard library in Swift 2 only\",\n\t\t\t\t\t\t\t\"match\": \"\\\\b(?:R(?:everse(?:RandomAccess(?:Collection|Index)|Collection|Index)|awByte)|Map(?:Generator|Sequence|Collection)|S(?:inkOf|etGenerator)|Zip2Generator|DictionaryGenerator|Filter(?:Generator|Sequence|Collection(?:Index)?)|LazyForwardCollection|Any(?:RandomAccessIndex|BidirectionalIndex|Forward(?:Collection|Index)))\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"support.type.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"builtin-typealias\": {\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"Typealiases in the standard library in Swift 3\",\n\t\t\t\t\t\t\t\"match\": \"\\\\b(?:Raw(?:Significand|Exponent|Value)|B(?:ooleanLiteralType|uffer|ase)|S(?:t(?:orage|r(?:i(?:ngLiteralType|de)|eam(?:1|2)))|ubSequence)|NativeBuffer|C(?:hild(?:ren)?|Bool|S(?:hort|ignedChar)|odeUnit|Char(?:16|32)?|Int|Double|Unsigned(?:Short|Char|Int|Long(?:Long)?)|Float|WideChar|Long(?:Long)?)|I(?:n(?:t(?:Max|egerLiteralType)|d(?:ices|ex(?:Distance)?))|terator)|Distance|U(?:n(?:icodeScalar(?:Type|Index|View|LiteralType)|foldFirstSequence)|TF(?:16(?:Index|View)|8Index)|IntMax)|E(?:lement(?:s)?|x(?:tendedGraphemeCluster(?:Type|LiteralType)|ponent))|V(?:oid|alue)|Key|Float(?:32|LiteralType|64)|AnyClass)\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"support.type.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"Typealiases in the standard library in Swift 2 only\",\n\t\t\t\t\t\t\t\"match\": \"\\\\b(?:Generator|PlaygroundQuickLook|UWord|Word)\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"support.type.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t\"code-block\": {\n\t\t\t\"begin\": \"\\\\{\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.section.scope.begin.swift\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"\\\\}\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.section.scope.end.swift\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"comments\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"match\": \"\\\\A^(#!).*$\\\\n?\",\n\t\t\t\t\t\"name\": \"comment.line.number-sign.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"/\\\\*\\\\*(?!/)\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.begin.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\*/\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.end.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"comment.block.documentation.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#nested\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"/\\\\*:\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.begin.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\*/\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.end.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"comment.block.documentation.playground.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#nested\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"/\\\\*\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.begin.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\*/\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.end.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"comment.block.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#nested\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\*/\",\n\t\t\t\t\t\"name\": \"invalid.illegal.unexpected-end-of-block-comment.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(^[ \\\\t]+)?(?=//)\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.whitespace.comment.leading.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?!\\\\G)\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"///\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"^\",\n\t\t\t\t\t\t\t\"name\": \"comment.line.triple-slash.documentation.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"//:\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"^\",\n\t\t\t\t\t\t\t\"name\": \"comment.line.double-slash.documentation.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"//\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"^\",\n\t\t\t\t\t\t\t\"name\": \"comment.line.double-slash.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"repository\": {\n\t\t\t\t\"nested\": {\n\t\t\t\t\t\"begin\": \"/\\\\*\",\n\t\t\t\t\t\"end\": \"\\\\*/\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#nested\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t\"compiler-control\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"^\\\\s*(#)(if|elseif)\\\\s+(false)\\\\b.*?(?=$|//|/\\\\*)\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"meta.preprocessor.conditional.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.preprocessor.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.control.preprocessor.conditional.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"constant.language.boolean.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"contentName\": \"comment.block.preprocessor.swift\",\n\t\t\t\t\t\"end\": \"(?=^\\\\s*(#(elseif|else|endif)\\\\b))\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"^\\\\s*(#)(if|elseif)\\\\s+\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.preprocessor.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.control.preprocessor.conditional.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?=\\\\s*(?://|/\\\\*))|$\",\n\t\t\t\t\t\"name\": \"meta.preprocessor.conditional.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"(&&|\\\\|\\\\|)\",\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.logical.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"\\\\b(true|false)\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"constant.language.boolean.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.other.condition.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.begin.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"support.constant.platform.architecture.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.end.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"match\": \"\\\\b(arch)\\\\s*(\\\\()\\\\s*(?:(arm|arm64|powerpc64|powerpc64le|i386|x86_64|s390x)|\\\\w+)\\\\s*(\\\\))\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.other.condition.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.begin.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"support.constant.platform.os.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.end.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"match\": \"\\\\b(os)\\\\s*(\\\\()\\\\s*(?:(macOS|OSX|iOS|tvOS|watchOS|Android|Linux|FreeBSD|Windows|PS4)|\\\\w+)\\\\s*(\\\\))\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.other.condition.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.begin.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"entity.name.type.module.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.end.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"match\": \"\\\\b(canImport)\\\\s*(\\\\()([\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*)(\\\\))\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"\\\\b(targetEnvironment)\\\\s*(\\\\()\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.other.condition.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.begin.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"(\\\\))|$\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.end.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\b(simulator|UIKitForMac)\\\\b\",\n\t\t\t\t\t\t\t\t\t\"name\": \"support.constant.platform.environment.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"\\\\b(swift|compiler)\\\\s*(\\\\()\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.other.condition.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.begin.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"(\\\\))|$\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.end.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \">=|<\",\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.comparison.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\b[0-9]+(?:\\\\.[0-9]+)*\\\\b\",\n\t\t\t\t\t\t\t\t\t\"name\": \"constant.numeric.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.preprocessor.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.control.preprocessor.conditional.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\S+\",\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.character-not-allowed-here.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"match\": \"^\\\\s*(#)(else|endif)(.*?)(?=$|//|/\\\\*)\",\n\t\t\t\t\t\"name\": \"meta.preprocessor.conditional.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.preprocessor.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.control.preprocessor.sourcelocation.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.begin.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"5\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"begin\": \"(file)\\\\s*(:)\\\\s*(?=\\\")\",\n\t\t\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"support.variable.parameter.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.separator.key-value.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"end\": \"(?!\\\\G)\",\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"include\": \"#literals\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"support.variable.parameter.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.separator.key-value.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"constant.numeric.integer.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"match\": \"(line)\\\\s*(:)\\\\s*([0-9]+)\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \",\",\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.separator.parameters.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\S+\",\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.character-not-allowed-here.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"6\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.begin.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"7\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\S+\",\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.character-not-allowed-here.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"match\": \"^\\\\s*(#)(sourceLocation)((\\\\()([^)]*)(\\\\)))(.*?)(?=$|//|/\\\\*)\",\n\t\t\t\t\t\"name\": \"meta.preprocessor.sourcelocation.swift\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"declarations\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#function\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#function-initializer\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#typed-variable-declaration\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#import\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#operator\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#precedencegroup\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#protocol\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#type\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#extension\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#typealias\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"repository\": {\n\t\t\t\t\"available-types\": {\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#builtin-types\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#attributes\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"\\\\basync\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"keyword.control.async.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"\\\\b(?:throws|rethrows)\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"keyword.control.exception.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"\\\\bsome\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.type.opaque.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"\\\\bany\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.type.existential.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"\\\\b(?:inout|isolated)\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"\\\\bSelf\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"variable.language.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.type.function.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"match\": \"(?<![/=\\\\-+!*%<>&|\\\\^~.])(->)(?![/=\\\\-+!*%<>&|\\\\^~.])\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.type.composition.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"comment\": \"Swift 3: A & B\",\n\t\t\t\t\t\t\t\"match\": \"(?<![/=\\\\-+!*%<>&|\\\\^~.])(&)(?![/=\\\\-+!*%<>&|\\\\^~.])\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"[?!]\",\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.type.optional.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"\\\\.\\\\.\\\\.\",\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.function.variadic-parameter.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"Swift 2: protocol<A, B>\",\n\t\t\t\t\t\t\t\"match\": \"\\\\bprotocol\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.type.composition.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"(?<=\\\\.)(?:Protocol|Type)\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.type.metatype.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#tuple-type\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#collection-type\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#generic-argument-clause\"\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"repository\": {\n\t\t\t\t\t\t\"collection-type\": {\n\t\t\t\t\t\t\t\"begin\": \"\\\\[\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.section.collection-type.begin.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"comment\": \"array and dictionary types [Value] and [Key: Value]\",\n\t\t\t\t\t\t\t\"end\": \"\\\\]|(?=[>){}])\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.section.collection-type.end.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#available-types\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"begin\": \":\",\n\t\t\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.separator.key-value.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"end\": \"(?=\\\\]|[>){}])\",\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \":\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.extra-colon-in-dictionary-type.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"include\": \"#available-types\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"tuple-type\": {\n\t\t\t\t\t\t\t\"begin\": \"\\\\(\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.section.tuple-type.begin.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"\\\\)|(?=[>\\\\]{}])\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.section.tuple-type.end.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#available-types\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"extension\": {\n\t\t\t\t\t\"begin\": \"\\\\b(extension)\\\\s+((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"storage.type.$1.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"entity.name.type.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#available-types\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?<=\\\\})\",\n\t\t\t\t\t\"name\": \"meta.definition.type.$1.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"SE-0143: Conditional Conformances\",\n\t\t\t\t\t\t\t\"include\": \"#generic-where-clause\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#inheritance-clause\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"\\\\{\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.type.begin.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"\\\\}\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.type.end.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"name\": \"meta.definition.type.body.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"function\": {\n\t\t\t\t\t\"begin\": \"(?x)\\n\\t\\t\\t\\t\\t\\t\\\\b\\n\\t\\t\\t\\t\\t\\t(?:(nonisolated)\\\\s+)?\\n\\t\\t\\t\\t\\t\\t(func)\\n\\t\\t\\t\\t\\t\\t\\\\s+\\n\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t(?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>)\\n\\t\\t\\t\\t\\t\\t | (?:\\n\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t(?<oph>\\t\\t\\t\\t\\t\\t\\t\\t# operator-head\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t[/=\\\\-+!*%<>&|^~?]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A1}-\\\\x{00A7}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A9}\\\\x{00AB}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00AC}\\\\x{00AE}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2030}-\\\\x{203E}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2041}-\\\\x{2053}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2055}-\\\\x{205E}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2190}-\\\\x{23FF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2500}-\\\\x{2775}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2794}-\\\\x{2BFF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2E00}-\\\\x{2E7F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3001}-\\\\x{3003}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3008}-\\\\x{3030}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\\\g<oph>\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | (?<opc>\\t\\t\\t\\t\\t\\t\\t\\t# operator-character\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t[\\\\x{0300}-\\\\x{036F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{1DC0}-\\\\x{1DFF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{20D0}-\\\\x{20FF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE00}-\\\\x{FE0F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE20}-\\\\x{FE2F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{E0100}-\\\\x{E01EF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t)*\\n\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t | ( \\\\. ( \\\\g<oph> | \\\\g<opc> | \\\\. )+ )\\t\\t\\t# Dot operators\\n\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\\\s*\\n\\t\\t\\t\\t\\t\\t(?=\\\\(|<)\\n\\t\\t\\t\\t\\t\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"storage.type.function.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"entity.name.function.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"5\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?<=\\\\})|$(?# functions in protocol declarations or generated interfaces have no body)\",\n\t\t\t\t\t\"name\": \"meta.definition.function.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#generic-parameter-clause\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#parameter-clause\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#function-result\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#async-throws\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"Swift 3: generic constraints after the parameters and return type\",\n\t\t\t\t\t\t\t\"include\": \"#generic-where-clause\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"(\\\\{)\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.section.function.begin.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"(\\\\})\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.section.function.end.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"name\": \"meta.definition.function.body.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"function-initializer\": {\n\t\t\t\t\t\"begin\": \"(?<!\\\\.)\\\\b(init[?!]*(?# only one is valid, but we want the in⇥ snippet to produce something that looks good))\\\\s*(?=\\\\(|<)\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"storage.type.function.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"(?<=[?!])[?!]+\",\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.character-not-allowed-here.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?<=\\\\})|$\",\n\t\t\t\t\t\"name\": \"meta.definition.function.initializer.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#generic-parameter-clause\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#parameter-clause\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#async-throws\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"Swift 3: generic constraints after the parameters and return type\",\n\t\t\t\t\t\t\t\"include\": \"#generic-where-clause\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"(\\\\{)\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.section.function.begin.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"(\\\\})\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.section.function.end.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"name\": \"meta.definition.function.body.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"function-result\": {\n\t\t\t\t\t\"begin\": \"(?<![/=\\\\-+!*%<>&|\\\\^~.])(->)(?![/=\\\\-+!*%<>&|\\\\^~.])\\\\s*\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.function-result.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?!\\\\G)(?=\\\\{|\\\\bwhere\\\\b|;)|$\",\n\t\t\t\t\t\"name\": \"meta.function-result.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#available-types\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"generic-argument-clause\": {\n\t\t\t\t\t\"begin\": \"<\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.generic-argument-clause.begin.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \">|(?=[)\\\\]{}])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.generic-argument-clause.end.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.generic-argument-clause.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#available-types\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"generic-parameter-clause\": {\n\t\t\t\t\t\"begin\": \"<\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.generic-parameter-clause.begin.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \">|(?=[^\\\\w\\\\d:<>\\\\s,=&`])(?# characters besides these are never valid in a generic param list -- even if it's not really a valid clause, we should stop trying to parse it if we see one of them.)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.generic-parameter-clause.end.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.generic-parameter-clause.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"Swift 2: constraints inside the generic param list\",\n\t\t\t\t\t\t\t\"include\": \"#generic-where-clause\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"variable.language.generic-parameter.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"match\": \"\\\\b((?!\\\\d)\\\\w[\\\\w\\\\d]*)\\\\b\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \",\",\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.generic-parameters.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"(:)\\\\s*\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.separator.generic-parameter-constraint.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"(?=[,>]|(?!\\\\G)\\\\bwhere\\\\b)\",\n\t\t\t\t\t\t\t\"name\": \"meta.generic-parameter-constraint.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"begin\": \"\\\\G\",\n\t\t\t\t\t\t\t\t\t\"end\": \"(?=[,>]|(?!\\\\G)\\\\bwhere\\\\b)\",\n\t\t\t\t\t\t\t\t\t\"name\": \"entity.other.inherited-class.swift\",\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"include\": \"#type-identifier\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"generic-where-clause\": {\n\t\t\t\t\t\"begin\": \"\\\\b(where)\\\\b\\\\s*\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.other.generic-constraint-introducer.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?!\\\\G)$|(?=[>{};\\\\n]|//|/\\\\*)\",\n\t\t\t\t\t\"name\": \"meta.generic-where-clause.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#requirement-list\"\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"repository\": {\n\t\t\t\t\t\t\"requirement-list\": {\n\t\t\t\t\t\t\t\"begin\": \"\\\\G|,\\\\s*\",\n\t\t\t\t\t\t\t\"end\": \"(?=[,>{};\\\\n]|//|/\\\\*)\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#constraint\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#available-types\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"begin\": \"(?<![/=\\\\-+!*%<>&|\\\\^~.])(==)(?![/=\\\\-+!*%<>&|\\\\^~.])\",\n\t\t\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.generic-constraint.same-type.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"end\": \"(?=\\\\s*[,>{};\\\\n]|//|/\\\\*)\",\n\t\t\t\t\t\t\t\t\t\"name\": \"meta.generic-where-clause.same-type-requirement.swift\",\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"include\": \"#available-types\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"begin\": \"(?<![/=\\\\-+!*%<>&|\\\\^~.])(:)(?![/=\\\\-+!*%<>&|\\\\^~.])\",\n\t\t\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.generic-constraint.conforms-to.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"end\": \"(?=\\\\s*[,>{};\\\\n]|//|/\\\\*)\",\n\t\t\t\t\t\t\t\t\t\"name\": \"meta.generic-where-clause.conformance-requirement.swift\",\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"begin\": \"\\\\G\\\\s*\",\n\t\t\t\t\t\t\t\t\t\t\t\"contentName\": \"entity.other.inherited-class.swift\",\n\t\t\t\t\t\t\t\t\t\t\t\"end\": \"(?=\\\\s*[,>{};\\\\n]|//|/\\\\*)\",\n\t\t\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"include\": \"#available-types\"\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"import\": {\n\t\t\t\t\t\"begin\": \"(?<!\\\\.)\\\\b(import)\\\\s+\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.control.import.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(;)|$\\\\n?|(?=//|/\\\\*)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.terminator.statement.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.import.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"\\\\G(?!;|$|//|/\\\\*)(?:(typealias|struct|class|actor|enum|protocol|var|func)\\\\s+)?\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"storage.modifier.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"(?=;|$|//|/\\\\*)\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"match\": \"(?x)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(?<=\\\\G|\\\\.)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\",\n\t\t\t\t\t\t\t\t\t\"name\": \"entity.name.type.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"(?x)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(?<=\\\\G|\\\\.)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\\\$[0-9]+\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\",\n\t\t\t\t\t\t\t\t\t\"name\": \"entity.name.type.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"match\": \"\\\\.\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.dot-not-allowed-here.swift\"\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"match\": \"(?x)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(?<=\\\\G|\\\\.)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(?:\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(?<oph>\\t\\t\\t\\t\\t\\t\\t\\t# operator-head\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t[/=\\\\-+!*%<>&|^~?]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A1}-\\\\x{00A7}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A9}\\\\x{00AB}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00AC}\\\\x{00AE}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2030}-\\\\x{203E}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2041}-\\\\x{2053}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2055}-\\\\x{205E}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2190}-\\\\x{23FF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2500}-\\\\x{2775}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2794}-\\\\x{2BFF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2E00}-\\\\x{2E7F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3001}-\\\\x{3003}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3008}-\\\\x{3030}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\\\g<oph>\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | (?<opc>\\t\\t\\t\\t\\t\\t\\t\\t# operator-character\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t[\\\\x{0300}-\\\\x{036F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{1DC0}-\\\\x{1DFF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{20D0}-\\\\x{20FF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE00}-\\\\x{FE0F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE20}-\\\\x{FE2F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{E0100}-\\\\x{E01EF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t)*\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | ( \\\\. ( \\\\g<oph> | \\\\g<opc> | \\\\. )+ )\\t\\t\\t# Dot operators\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(?=\\\\.|;|$|//|/\\\\*|\\\\s)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\",\n\t\t\t\t\t\t\t\t\t\"name\": \"entity.name.type.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\.\",\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.separator.import.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"begin\": \"(?!\\\\s*(;|$|//|/\\\\*))\",\n\t\t\t\t\t\t\t\t\t\"end\": \"(?=\\\\s*(;|$|//|/\\\\*))\",\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.character-not-allowed-here.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"inheritance-clause\": {\n\t\t\t\t\t\"begin\": \"(:)(?=\\\\s*\\\\{)|(:)\\\\s*\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.empty-inheritance-clause.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.inheritance-clause.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?!\\\\G)$|(?=[={}]|(?!\\\\G)\\\\bwhere\\\\b)\",\n\t\t\t\t\t\"name\": \"meta.inheritance-clause.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"\\\\bclass\\\\b\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"storage.type.class.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"(?=[={}]|(?!\\\\G)\\\\bwhere\\\\b)\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#more-types\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"\\\\G\",\n\t\t\t\t\t\t\t\"end\": \"(?!\\\\G)$|(?=[={}]|(?!\\\\G)\\\\bwhere\\\\b)\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#inherited-type\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#more-types\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"repository\": {\n\t\t\t\t\t\t\"inherited-type\": {\n\t\t\t\t\t\t\t\"begin\": \"(?=[`\\\\p{L}_])\",\n\t\t\t\t\t\t\t\"end\": \"(?!\\\\G)\",\n\t\t\t\t\t\t\t\"name\": \"entity.other.inherited-class.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#type-identifier\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"more-types\": {\n\t\t\t\t\t\t\t\"begin\": \",\\\\s*\",\n\t\t\t\t\t\t\t\"end\": \"(?!\\\\G)(?!//|/\\\\*)|(?=[,={}]|(?!\\\\G)\\\\bwhere\\\\b)\",\n\t\t\t\t\t\t\t\"name\": \"meta.inheritance-list.more-types\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#inherited-type\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#more-types\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"operator\": {\n\t\t\t\t\t\"begin\": \"(?x)\\n\\t\\t\\t\\t\\t\\t(?:\\n\\t\\t\\t\\t\\t\\t\\t\\\\b(prefix|infix|postfix)\\n\\t\\t\\t\\t\\t\\t\\t\\\\s+\\n\\t\\t\\t\\t\\t\\t)?\\n\\t\\t\\t\\t\\t\\t\\\\b\\n\\t\\t\\t\\t\\t\\t(operator)\\n\\t\\t\\t\\t\\t\\t\\\\s+\\n\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t(?<oph>\\t\\t\\t\\t\\t\\t\\t\\t\\t# operator-head\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t[/=\\\\-+!*%<>&|^~?]\\n\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A1}-\\\\x{00A7}]\\n\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A9}\\\\x{00AB}]\\n\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00AC}\\\\x{00AE}]\\n\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]\\n\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]\\n\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2030}-\\\\x{203E}]\\n\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2041}-\\\\x{2053}]\\n\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2055}-\\\\x{205E}]\\n\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2190}-\\\\x{23FF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2500}-\\\\x{2775}]\\n\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2794}-\\\\x{2BFF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2E00}-\\\\x{2E7F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3001}-\\\\x{3003}]\\n\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3008}-\\\\x{3030}]\\n\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\\\g<oph>\\n\\t\\t\\t\\t\\t\\t\\t\\t | \\\\.\\t\\t\\t\\t\\t\\t\\t\\t\\t# Invalid dot\\n\\t\\t\\t\\t\\t\\t\\t\\t | (?<opc>\\t\\t\\t\\t\\t\\t\\t\\t# operator-character\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t[\\\\x{0300}-\\\\x{036F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{1DC0}-\\\\x{1DFF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{20D0}-\\\\x{20FF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE00}-\\\\x{FE0F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE20}-\\\\x{FE2F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{E0100}-\\\\x{E01EF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t)*+\\n\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t | ( \\\\. ( \\\\g<oph> | \\\\g<opc> | \\\\. )++ )\\t\\t\\t# Dot operators\\n\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\\\s*\\n\\t\\t\\t\\t\\t\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"storage.type.function.operator.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"entity.name.function.operator.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\.\",\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.dot-not-allowed-here.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(;)|$\\\\n?|(?=//|/\\\\*)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.terminator.statement.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.definition.operator.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#swift2\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#swift3\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"((?!$|;|//|/\\\\*)\\\\S)+\",\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.character-not-allowed-here.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"repository\": {\n\t\t\t\t\t\t\"swift2\": {\n\t\t\t\t\t\t\t\"begin\": \"\\\\G(\\\\{)\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.operator.begin.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"(\\\\})\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.operator.end.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"storage.modifier.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.other.operator.associativity.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\b(associativity)\\\\s+(left|right)\\\\b\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"storage.modifier.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"constant.numeric.integer.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\b(precedence)\\\\s+([0-9]+)\\\\b\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"storage.modifier.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\b(assignment)\\\\b\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"swift3\": {\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"entity.other.inherited-class.swift\",\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"include\": \"#types-precedencegroup\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"match\": \"\\\\G(:)\\\\s*((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"parameter-clause\": {\n\t\t\t\t\t\"begin\": \"(\\\\()\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.begin.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(\\\\))(?:\\\\s*(async)\\\\b)?\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.end.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.control.async.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.parameter-clause.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#parameter-list\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"parameter-list\": {\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"entity.name.function.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"variable.parameter.function.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"5\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"6\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"comment\": \"External parameter labels are considered part of the function name\",\n\t\t\t\t\t\t\t\"match\": \"((?<q1>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q1>))\\\\s+((?<q2>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q2>))(?=\\\\s*:)\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"variable.parameter.function.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"entity.name.function.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"comment\": \"If no external label is given, the name is both the external label and the internal variable name\",\n\t\t\t\t\t\t\t\"match\": \"(((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>)))(?=\\\\s*:)\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \":\\\\s*(?!\\\\s)\",\n\t\t\t\t\t\t\t\"end\": \"(?=[,)])\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#available-types\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \":\",\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.extra-colon-in-parameter-list.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"begin\": \"=\",\n\t\t\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.assignment.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"comment\": \"a parameter's default value\",\n\t\t\t\t\t\t\t\t\t\"end\": \"(?=[,)])\",\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"include\": \"#expressions\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"precedencegroup\": {\n\t\t\t\t\t\"begin\": \"\\\\b(precedencegroup)\\\\s+((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\\\\s*(?=\\\\{)\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"storage.type.precedencegroup.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"entity.name.type.precedencegroup.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?!\\\\G)\",\n\t\t\t\t\t\"name\": \"meta.definition.precedencegroup.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"\\\\{\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.precedencegroup.begin.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"\\\\}\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.precedencegroup.end.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"storage.modifier.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"entity.other.inherited-class.swift\",\n\t\t\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"include\": \"#types-precedencegroup\"\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\b(higherThan|lowerThan)\\\\s*:\\\\s*((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"storage.modifier.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.other.operator.associativity.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\b(associativity)\\\\b(?:\\\\s*:\\\\s*(right|left|none)\\\\b)?\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"storage.modifier.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"constant.language.boolean.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\b(assignment)\\\\b(?:\\\\s*:\\\\s*(true|false)\\\\b)?\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"protocol\": {\n\t\t\t\t\t\"begin\": \"\\\\b(protocol)\\\\s+((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"storage.type.$1.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"entity.name.type.$1.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?<=\\\\})\",\n\t\t\t\t\t\"name\": \"meta.definition.type.protocol.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#inheritance-clause\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"SE-0142: Permit where clauses to constrain associated types\",\n\t\t\t\t\t\t\t\"include\": \"#generic-where-clause\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"\\\\{\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.type.begin.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"\\\\}\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.type.end.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"name\": \"meta.definition.type.body.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#protocol-method\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#protocol-initializer\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#associated-type\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"repository\": {\n\t\t\t\t\t\t\"associated-type\": {\n\t\t\t\t\t\t\t\"begin\": \"\\\\b(associatedtype)\\\\s+((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\\\\s*\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.other.declaration-specifier.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"variable.language.associatedtype.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"(?!\\\\G)$|(?=[;}]|$)\",\n\t\t\t\t\t\t\t\"name\": \"meta.definition.associatedtype.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#inheritance-clause\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"comment\": \"SE-0142: Permit where clauses to constrain associated types\",\n\t\t\t\t\t\t\t\t\t\"include\": \"#generic-where-clause\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#typealias-assignment\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"protocol-initializer\": {\n\t\t\t\t\t\t\t\"begin\": \"(?<!\\\\.)\\\\b(init[?!]*(?# only one is valid, but we want the in⇥ snippet to produce something that looks good))\\\\s*(?=\\\\(|<)\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"storage.type.function.swift\",\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \"(?<=[?!])[?!]+\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.character-not-allowed-here.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"$|(?=;|//|/\\\\*|\\\\})\",\n\t\t\t\t\t\t\t\"name\": \"meta.definition.function.initializer.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#generic-parameter-clause\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#parameter-clause\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#async-throws\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"comment\": \"Swift 3: generic constraints after the parameters and return type\",\n\t\t\t\t\t\t\t\t\t\"include\": \"#generic-where-clause\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"begin\": \"\\\\{\",\n\t\t\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.section.function.begin.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"end\": \"\\\\}\",\n\t\t\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.section.function.end.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.function-body-not-allowed-in-protocol.swift\",\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"protocol-method\": {\n\t\t\t\t\t\t\t\"begin\": \"(?x)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\\\b\\n\\t\\t\\t\\t\\t\\t\\t\\t(func)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\\\s+\\n\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t(?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>)\\n\\t\\t \\t\\t\\t\\t\\t\\t | (?:\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t(?<oph>\\t\\t\\t\\t\\t\\t\\t\\t# operator-head\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t[/=\\\\-+!*%<>&|^~?]\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A1}-\\\\x{00A7}]\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A9}\\\\x{00AB}]\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00AC}\\\\x{00AE}]\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2030}-\\\\x{203E}]\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2041}-\\\\x{2053}]\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2055}-\\\\x{205E}]\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2190}-\\\\x{23FF}]\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2500}-\\\\x{2775}]\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2794}-\\\\x{2BFF}]\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2E00}-\\\\x{2E7F}]\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3001}-\\\\x{3003}]\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3008}-\\\\x{3030}]\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\\\g<oph>\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t | (?<opc>\\t\\t\\t\\t\\t\\t\\t\\t# operator-character\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t[\\\\x{0300}-\\\\x{036F}]\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{1DC0}-\\\\x{1DFF}]\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{20D0}-\\\\x{20FF}]\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE00}-\\\\x{FE0F}]\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE20}-\\\\x{FE2F}]\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{E0100}-\\\\x{E01EF}]\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t\\t)*\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t | ( \\\\. ( \\\\g<oph> | \\\\g<opc> | \\\\. )+ )\\t\\t\\t# Dot operators\\n\\t\\t \\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t \\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\\\s*\\n\\t\\t\\t\\t\\t\\t\\t\\t(?=\\\\(|<)\\n\\t\\t\\t\\t\\t\\t\\t\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"storage.type.function.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"entity.name.function.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"$|(?=;|//|/\\\\*|\\\\})\",\n\t\t\t\t\t\t\t\"name\": \"meta.definition.function.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#generic-parameter-clause\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#parameter-clause\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#function-result\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#async-throws\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"comment\": \"Swift 3: generic constraints after the parameters and return type\",\n\t\t\t\t\t\t\t\t\t\"include\": \"#generic-where-clause\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"begin\": \"\\\\{\",\n\t\t\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.section.function.begin.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"end\": \"\\\\}\",\n\t\t\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.section.function.end.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.function-body-not-allowed-in-protocol.swift\",\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": {\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"\\\\b(class(?!\\\\s+(?:func|var|let)\\\\b)|struct|actor)\\\\s+((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"storage.type.$1.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"entity.name.type.$1.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"(?<=\\\\})\",\n\t\t\t\t\t\t\t\"name\": \"meta.definition.type.$1.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#generic-parameter-clause\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"comment\": \"Swift 3: generic constraints after the generic param list\",\n\t\t\t\t\t\t\t\t\t\"include\": \"#generic-where-clause\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#inheritance-clause\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"begin\": \"\\\\{\",\n\t\t\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.type.begin.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"end\": \"\\\\}\",\n\t\t\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.type.end.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"name\": \"meta.definition.type.body.swift\",\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#type-enum\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"type-enum\": {\n\t\t\t\t\t\"begin\": \"\\\\b(enum)\\\\s+((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"storage.type.$1.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"entity.name.type.$1.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?<=\\\\})\",\n\t\t\t\t\t\"name\": \"meta.definition.type.$1.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#generic-parameter-clause\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"Swift 3: generic constraints after the generic param list\",\n\t\t\t\t\t\t\t\"include\": \"#generic-where-clause\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#inheritance-clause\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"\\\\{\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.type.begin.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"\\\\}\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.type.end.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"name\": \"meta.definition.type.body.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#enum-case-clause\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"repository\": {\n\t\t\t\t\t\t\"associated-values\": {\n\t\t\t\t\t\t\t\"begin\": \"\\\\G\\\\(\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.begin.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"\\\\)\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.end.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"begin\": \"(?x)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(?:(_)|((?<q1>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*\\\\k<q1>))\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\\\s+\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t(((?<q2>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*\\\\k<q2>))\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\\\s*(:)\",\n\t\t\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"entity.name.function.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.distinct-labels-not-allowed.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"5\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"variable.parameter.function.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"7\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.separator.argument-label.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"end\": \"(?=[,)\\\\]])\",\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"include\": \"#available-types\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"begin\": \"(((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*\\\\k<q>))\\\\s*(:)\",\n\t\t\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"entity.name.function.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"variable.parameter.function.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.separator.argument-label.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"end\": \"(?=[,)\\\\]])\",\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"include\": \"#available-types\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"begin\": \"(?![,)\\\\]])(?=\\\\S)\",\n\t\t\t\t\t\t\t\t\t\"comment\": \"an element without a label (i.e. anything else)\",\n\t\t\t\t\t\t\t\t\t\"end\": \"(?=[,)\\\\]])\",\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"include\": \"#available-types\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \":\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.extra-colon-in-parameter-list.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"enum-case\": {\n\t\t\t\t\t\t\t\"begin\": \"(?x)((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\\\\s*\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"constant.other.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"(?<=\\\\))|(?![=(])\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#associated-values\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#raw-value-assignment\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"enum-case-clause\": {\n\t\t\t\t\t\t\t\"begin\": \"\\\\b(case)\\\\b\\\\s*\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"storage.type.enum.case.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"(?=[;}])|(?!\\\\G)(?!//|/\\\\*)(?=[^\\\\s,])\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#enum-case\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#more-cases\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"more-cases\": {\n\t\t\t\t\t\t\t\"begin\": \",\\\\s*\",\n\t\t\t\t\t\t\t\"end\": \"(?!\\\\G)(?!//|/\\\\*)(?=[;}]|[^\\\\s,])\",\n\t\t\t\t\t\t\t\"name\": \"meta.enum-case.more-cases\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#enum-case\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#more-cases\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"raw-value-assignment\": {\n\t\t\t\t\t\t\t\"begin\": \"(=)\\\\s*\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.assignment.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"(?!\\\\G)\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#literals\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type-identifier\": {\n\t\t\t\t\t\"begin\": \"((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\\\\s*\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"meta.type-name.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#builtin-types\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?!<)\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"(?=<)\",\n\t\t\t\t\t\t\t\"end\": \"(?!\\\\G)\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#generic-argument-clause\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"typealias\": {\n\t\t\t\t\t\"begin\": \"\\\\b(typealias)\\\\s+((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\\\\s*\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.other.declaration-specifier.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"entity.name.type.typealias.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?!\\\\G)$|(?=;|//|/\\\\*|$)\",\n\t\t\t\t\t\"name\": \"meta.definition.typealias.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"\\\\G(?=<)\",\n\t\t\t\t\t\t\t\"end\": \"(?!\\\\G)\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#generic-parameter-clause\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#typealias-assignment\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"typealias-assignment\": {\n\t\t\t\t\t\"begin\": \"(=)\\\\s*\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.assignment.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?!\\\\G)$|(?=;|//|/\\\\*|$)\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#available-types\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"typed-variable-declaration\": {\n\t\t\t\t\t\"begin\": \"(?x)\\n\\t\\t\\t\\t\\t\\t\\\\b(?:(async)\\\\s+)?(let|var)\\\\b\\\\s+\\n\\t\\t\\t\\t\\t\\t(?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>)\\\\s*\\n\\t\\t\\t\\t\\t\\t:\\n\\t\\t\\t\\t\\t\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.control.async.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.other.declaration-specifier.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?=$|[={])\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#available-types\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"types-precedencegroup\": {\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"Precedence groups in the standard library\",\n\t\t\t\t\t\t\t\"match\": \"\\\\b(?:BitwiseShift|Assignment|RangeFormation|Casting|Addition|NilCoalescing|Comparison|LogicalConjunction|LogicalDisjunction|Default|Ternary|Multiplication|FunctionArrow)Precedence\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"support.type.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t\"expressions\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#code-block\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#attributes\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#closure-parameter\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#literals\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#operators\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#builtin-types\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#builtin-functions\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#builtin-global-functions\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#builtin-properties\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#compound-name\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#keywords\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#function-call-expression\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#subscript-expression\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#parenthesized-expression\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#member-reference\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#availability-condition\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\b_\\\\b\",\n\t\t\t\t\t\"name\": \"support.variable.discard-value.swift\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"repository\": {\n\t\t\t\t\"availability-condition\": {\n\t\t\t\t\t\"begin\": \"\\\\B(#(?:un)?available)(\\\\()\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"support.function.availability-condition.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.begin.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.end.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.other.platform.os.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"constant.numeric.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"match\": \"\\\\s*\\\\b((?:iOS|macOS|OSX|watchOS|tvOS|UIKitForMac)(?:ApplicationExtension)?)\\\\b(?:\\\\s+([0-9]+(?:\\\\.[0-9]+)*\\\\b))\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.other.platform.all.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.character-not-allowed-here.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"match\": \"(\\\\*)\\\\s*(.*?)(?=[,)])\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"[^\\\\s,)]+\",\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.character-not-allowed-here.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"closure-parameter\": {\n\t\t\t\t\t\"match\": \"\\\\$[0-9]+\",\n\t\t\t\t\t\"name\": \"variable.language.closure-parameter.swift\"\n\t\t\t\t},\n\t\t\t\t\"compound-name\": {\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"entity.name.function.compound-name.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.entity.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.entity.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.entity.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.entity.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"match\": \"(?<q>`?)(?!_:)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>):\",\n\t\t\t\t\t\t\t\t\t\"name\": \"entity.name.function.compound-name.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"comment\": \"a reference to a function with disambiguating argument labels, such as foo(_:), foo(bar:), etc.\",\n\t\t\t\t\t\"match\": \"(?x)\\n\\t\\t\\t\\t\\t\\t((?<q1>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q1>)) \\t\\t# function name\\n\\t\\t\\t\\t\\t\\t\\\\(\\n\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t((?<q2>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q2>)) \\t# argument label\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t:\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t# colon\\n\\t\\t\\t\\t\\t\\t\\t\\t)+\\n\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\\\)\\n\\t\\t\\t\\t\\t\"\n\t\t\t\t},\n\t\t\t\t\"expression-element-list\": {\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\\\\s*(:)\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"support.function.any-method.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.separator.argument-label.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"comment\": \"an element with a label\",\n\t\t\t\t\t\t\t\"end\": \"(?=[,)\\\\]])\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#expressions\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"(?![,)\\\\]])(?=\\\\S)\",\n\t\t\t\t\t\t\t\"comment\": \"an element without a label (i.e. anything else)\",\n\t\t\t\t\t\t\t\"end\": \"(?=[,)\\\\]])\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#expressions\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"function-call-expression\": {\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\\\\s*(\\\\()\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"support.function.any-method.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.begin.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"comment\": \"foo(args) -- a call whose callee is a highlightable name\",\n\t\t\t\t\t\t\t\"end\": \"\\\\)\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.end.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"name\": \"meta.function-call.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#expression-element-list\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"(?<=[`\\\\])}>\\\\p{L}_\\\\p{N}\\\\p{M}])\\\\s*(\\\\()\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.begin.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"comment\": \"[Int](args) -- a call whose callee is a more complicated expression\",\n\t\t\t\t\t\t\t\"end\": \"\\\\)\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.end.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"name\": \"meta.function-call.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#expression-element-list\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"member-reference\": {\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"variable.other.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.identifier.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"match\": \"(?<=\\\\.)((?<q>`?)[\\\\p{L}_][\\\\p{L}_\\\\p{N}\\\\p{M}]*(\\\\k<q>))\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"parenthesized-expression\": {\n\t\t\t\t\t\"begin\": \"\\\\(\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.tuple.begin.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"comment\": \"correctly matching closure expressions is too hard (depends on trailing \\\"in\\\") so we just tack on some basics to the end of parenthesized-expression\",\n\t\t\t\t\t\"end\": \"(\\\\))\\\\s*((?:\\\\b(?:async|throws|rethrows)\\\\s)*)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.tuple.end.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\brethrows\\\\b\",\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.rethrows-only-allowed-on-function-declarations.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#async-throws\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#expression-element-list\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"subscript-expression\": {\n\t\t\t\t\t\"begin\": \"(?<=[`\\\\p{L}_\\\\p{N}\\\\p{M}])\\\\s*(\\\\[)\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.begin.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\]\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.end.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.subscript-expression.swift\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#expression-element-list\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t\"keywords\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?<!\\\\.)\\\\b(?:if|else|guard|where|switch|case|default|fallthrough)\\\\b\",\n\t\t\t\t\t\"name\": \"keyword.control.branch.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?<!\\\\.)\\\\b(?:continue|break|fallthrough|return)\\\\b\",\n\t\t\t\t\t\"name\": \"keyword.control.transfer.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?<!\\\\.)\\\\b(?:while|for|in)\\\\b\",\n\t\t\t\t\t\"name\": \"keyword.control.loop.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.control.loop.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.whitespace.trailing.repeat.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"comment\": \"extra scopes for repeat-while snippet\",\n\t\t\t\t\t\"match\": \"(?<!\\\\.)\\\\b(repeat)\\\\b(\\\\s*)\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?<!\\\\.)\\\\bdefer\\\\b\",\n\t\t\t\t\t\"name\": \"keyword.control.defer.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.try-must-precede-await.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.control.await.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"match\": \"(?<!\\\\.)\\\\b(?:(await\\\\s+try)|(await)\\\\b)\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?<!\\\\.)\\\\b(?:catch|throws?|rethrows|try)\\\\b|\\\\btry[?!]\\\\B\",\n\t\t\t\t\t\"name\": \"keyword.control.exception.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.control.exception.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.whitespace.trailing.do.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"comment\": \"extra scopes for do-catch snippet\",\n\t\t\t\t\t\"match\": \"(?<!\\\\.)\\\\b(do)\\\\b(\\\\s*)\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.control.async.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.other.declaration-specifier.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"match\": \"(?<!\\\\.)\\\\b(?:(?:(async)|(nonisolated))\\\\s+)?(let|var)\\\\b\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?<!\\\\.)\\\\b(?:associatedtype|operator|typealias)\\\\b\",\n\t\t\t\t\t\"name\": \"keyword.other.declaration-specifier.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?<!\\\\.)\\\\b(class|enum|extension|precedencegroup|protocol|struct|actor)\\\\b\",\n\t\t\t\t\t\"name\": \"storage.type.$1.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?<!\\\\.)\\\\b(?:inout|static|final|lazy|mutating|nonmutating|optional|indirect|required|override|dynamic|convenience|infix|prefix|postfix)\\\\b\",\n\t\t\t\t\t\"name\": \"storage.modifier.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\binit[?!]|\\\\binit\\\\b|(?<!\\\\.)\\\\b(?:func|deinit|subscript|didSet|get|set|willSet)\\\\b\",\n\t\t\t\t\t\"name\": \"storage.type.function.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?<!\\\\.)\\\\b(?:fileprivate|private|internal|public|open)\\\\b\",\n\t\t\t\t\t\"name\": \"keyword.other.declaration-specifier.accessibility.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"comment\": \"matches weak, unowned, unowned(safe), unowned(unsafe)\",\n\t\t\t\t\t\"match\": \"(?<!\\\\.)\\\\bunowned\\\\((?:safe|unsafe)\\\\)|(?<!\\\\.)\\\\b(?:weak|unowned)\\\\b\",\n\t\t\t\t\t\"name\": \"keyword.other.capture-specifier.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.type.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.type.metatype.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"match\": \"(?<=\\\\.)(?:(dynamicType|self)|(Protocol|Type))\\\\b\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?<!\\\\.)\\\\b(?:super|self|Self)\\\\b\",\n\t\t\t\t\t\"name\": \"variable.language.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\B(?:#file|#filePath|#fileID|#line|#column|#function|#dsohandle)\\\\b|\\\\b(?:__FILE__|__LINE__|__COLUMN__|__FUNCTION__|__DSO_HANDLE__)\\\\b\",\n\t\t\t\t\t\"name\": \"support.variable.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?<!\\\\.)\\\\bimport\\\\b\",\n\t\t\t\t\t\"name\": \"keyword.control.import.swift\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"literals\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#boolean\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#numeric\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#string\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\bnil\\\\b\",\n\t\t\t\t\t\"name\": \"constant.language.nil.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"comment\": \"object \\\"literals\\\" used in playgrounds\",\n\t\t\t\t\t\"match\": \"\\\\B#(colorLiteral|imageLiteral|fileLiteral)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.object-literal.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\B#keyPath\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.key-path.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"\\\\B(#selector)(\\\\()(?:\\\\s*(getter|setter)\\\\s*(:))?\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"support.function.selector-reference.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.begin.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"support.variable.parameter.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.argument-label.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.end.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#expressions\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"repository\": {\n\t\t\t\t\"boolean\": {\n\t\t\t\t\t\"match\": \"\\\\b(true|false)\\\\b\",\n\t\t\t\t\t\"name\": \"constant.language.boolean.swift\"\n\t\t\t\t},\n\t\t\t\t\"numeric\": {\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"0.1, -4_2.5, 6.022e23, 10E-5\",\n\t\t\t\t\t\t\t\"match\": \"(\\\\B\\\\-|\\\\b)(?<![\\\\[\\\\](){}\\\\p{L}_\\\\p{N}\\\\p{M}]\\\\.)[0-9][0-9_]*(?=\\\\.[0-9]|[eE])(?:\\\\.[0-9][0-9_]*)?(?:[eE][-+]?[0-9][0-9_]*)?\\\\b(?!\\\\.[0-9])\",\n\t\t\t\t\t\t\t\"name\": \"constant.numeric.float.decimal.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"-0x1.ap2_3, 0x31p-4\",\n\t\t\t\t\t\t\t\"match\": \"(\\\\B\\\\-|\\\\b)(?<![\\\\[\\\\](){}\\\\p{L}_\\\\p{N}\\\\p{M}]\\\\.)(0x[0-9a-fA-F][0-9a-fA-F_]*)(?:\\\\.[0-9a-fA-F][0-9a-fA-F_]*)?[pP][-+]?[0-9][0-9_]*\\\\b(?!\\\\.[0-9])\",\n\t\t\t\t\t\t\t\"name\": \"constant.numeric.float.hexadecimal.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"0x1p, 0x1p_2, 0x1.5pa, 0x1.1p+1f, 0x1pz\",\n\t\t\t\t\t\t\t\"match\": \"(\\\\B\\\\-|\\\\b)(?<![\\\\[\\\\](){}\\\\p{L}_\\\\p{N}\\\\p{M}]\\\\.)(0x[0-9a-fA-F][0-9a-fA-F_]*)(?:\\\\.[0-9a-fA-F][0-9a-fA-F_]*)?(?:[pP][-+]?\\\\w*)\\\\b(?!\\\\.[0-9])\",\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.numeric.float.invalid-exponent.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"0x1.5w (note that 0x1.f may be a valid expression)\",\n\t\t\t\t\t\t\t\"match\": \"(\\\\B\\\\-|\\\\b)(?<![\\\\[\\\\](){}\\\\p{L}_\\\\p{N}\\\\p{M}]\\\\.)(0x[0-9a-fA-F][0-9a-fA-F_]*)\\\\.[0-9][\\\\w.]*\",\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.numeric.float.missing-exponent.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"-.5, .2f (note that 1.-.5 may be a valid expression)\",\n\t\t\t\t\t\t\t\"match\": \"(?<=\\\\s|^)\\\\-?\\\\.[0-9][\\\\w.]*\",\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.numeric.float.missing-leading-zero.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"0b_0_1, 0x_1p+3q\",\n\t\t\t\t\t\t\t\"match\": \"(\\\\B\\\\-|\\\\b)0[box]_[0-9a-fA-F_]*(?:[pPeE][+-]?\\\\w+)?[\\\\w.]+\",\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.numeric.leading-underscore.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"tuple positional member: not really a numeric literal, but not invalid\",\n\t\t\t\t\t\t\t\"match\": \"(?<=[\\\\[\\\\](){}\\\\p{L}_\\\\p{N}\\\\p{M}]\\\\.)[0-9]+\\\\b\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"0b010, 0b1_0\",\n\t\t\t\t\t\t\t\"match\": \"(\\\\B\\\\-|\\\\b)(?<![\\\\[\\\\](){}\\\\p{L}_\\\\p{N}\\\\p{M}]\\\\.)0b[01][01_]*\\\\b(?!\\\\.[0-9])\",\n\t\t\t\t\t\t\t\"name\": \"constant.numeric.integer.binary.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"0o1, 0o7_3\",\n\t\t\t\t\t\t\t\"match\": \"(\\\\B\\\\-|\\\\b)(?<![\\\\[\\\\](){}\\\\p{L}_\\\\p{N}\\\\p{M}]\\\\.)0o[0-7][0-7_]*\\\\b(?!\\\\.[0-9])\",\n\t\t\t\t\t\t\t\"name\": \"constant.numeric.integer.octal.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"02, 3_456\",\n\t\t\t\t\t\t\t\"match\": \"(\\\\B\\\\-|\\\\b)(?<![\\\\[\\\\](){}\\\\p{L}_\\\\p{N}\\\\p{M}]\\\\.)[0-9][0-9_]*\\\\b(?!\\\\.[0-9])\",\n\t\t\t\t\t\t\t\"name\": \"constant.numeric.integer.decimal.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"comment\": \"0x4, 0xF_7\",\n\t\t\t\t\t\t\t\"match\": \"(\\\\B\\\\-|\\\\b)(?<![\\\\[\\\\](){}\\\\p{L}_\\\\p{N}\\\\p{M}]\\\\.)0x[0-9a-fA-F][0-9a-fA-F_]*\\\\b(?!\\\\.[0-9])\",\n\t\t\t\t\t\t\t\"name\": \"constant.numeric.integer.hexadecimal.swift\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"(\\\\B\\\\-|\\\\b)[0-9][\\\\w.]*\",\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.numeric.other.swift\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"string\": {\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"\\\"\\\"\\\"\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"comment\": \"SE-0168: Multi-Line String Literals\",\n\t\t\t\t\t\t\t\"end\": \"\\\"\\\"\\\"(#*)\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.end.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.extra-closing-delimiter.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"name\": \"string.quoted.double.block.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\G.+(?=\\\"\\\"\\\")|\\\\G.+\",\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.content-after-opening-delimiter.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\\\\\\\\\s*\\\\n\",\n\t\t\t\t\t\t\t\t\t\"name\": \"constant.character.escape.newline.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#string-guts\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"comment\": \"Allow \\\\(\\\"\\\"\\\"...\\\"\\\"\\\") to appear inside a block string\",\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\S((?!\\\\\\\\\\\\().)*(?=\\\"\\\"\\\")\",\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.content-before-closing-delimiter.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"#\\\"\\\"\\\"\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"\\\"\\\"\\\"#(#*)\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.end.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.extra-closing-delimiter.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"name\": \"string.quoted.double.block.raw.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\G.+(?=\\\"\\\"\\\")|\\\\G.+\",\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.content-after-opening-delimiter.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\\\\\#\\\\s*\\\\n\",\n\t\t\t\t\t\t\t\t\t\"name\": \"constant.character.escape.newline.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#raw-string-guts\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"comment\": \"Allow \\\\(\\\"\\\"\\\"...\\\"\\\"\\\") to appear inside a block string\",\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\S((?!\\\\\\\\#\\\\().)*(?=\\\"\\\"\\\")\",\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.content-before-closing-delimiter.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"(##+)\\\"\\\"\\\"\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"\\\"\\\"\\\"\\\\1(#*)\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.end.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.extra-closing-delimiter.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"name\": \"string.quoted.double.block.raw.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\G.+(?=\\\"\\\"\\\")|\\\\G.+\",\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.content-after-opening-delimiter.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"\\\"\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"\\\"(#*)\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.end.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.extra-closing-delimiter.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"name\": \"string.quoted.double.single-line.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\r|\\\\n\",\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.returns-not-allowed.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#string-guts\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"(##+)\\\"\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.raw.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"comment\": \"SE-0168: raw string literals (more than one #, grammar limitations prevent us from supporting escapes)\",\n\t\t\t\t\t\t\t\"end\": \"\\\"\\\\1(#*)\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.end.raw.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.extra-closing-delimiter.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"name\": \"string.quoted.double.single-line.raw.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\r|\\\\n\",\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.returns-not-allowed.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"#\\\"\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.raw.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"comment\": \"SE-0168: raw string literals (one #, escapes supported)\",\n\t\t\t\t\t\t\t\"end\": \"\\\"#(#*)\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.end.raw.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.extra-closing-delimiter.swift\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"name\": \"string.quoted.double.single-line.raw.swift\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\r|\\\\n\",\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.returns-not-allowed.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#raw-string-guts\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"repository\": {\n\t\t\t\t\t\t\"raw-string-guts\": {\n\t\t\t\t\t\t\t\"comment\": \"the same as #string-guts but with # in escapes\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\\\\\#[0\\\\\\\\tnr\\\"']\",\n\t\t\t\t\t\t\t\t\t\"name\": \"constant.character.escape.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\\\\\#u\\\\{[0-9a-fA-F]{1,8}\\\\}\",\n\t\t\t\t\t\t\t\t\t\"name\": \"constant.character.escape.unicode.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"begin\": \"\\\\\\\\#\\\\(\",\n\t\t\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.begin.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"contentName\": \"source.swift\",\n\t\t\t\t\t\t\t\t\t\"end\": \"(\\\\))\",\n\t\t\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.end.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"source.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"name\": \"meta.embedded.line.swift\",\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"begin\": \"\\\\(\",\n\t\t\t\t\t\t\t\t\t\t\t\"comment\": \"Nested parens\",\n\t\t\t\t\t\t\t\t\t\t\t\"end\": \"\\\\)\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\\\\\#.\",\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.escape-not-recognized\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"string-guts\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\\\\\[0\\\\\\\\tnr\\\"']\",\n\t\t\t\t\t\t\t\t\t\"name\": \"constant.character.escape.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\\\\\u\\\\{[0-9a-fA-F]{1,8}\\\\}\",\n\t\t\t\t\t\t\t\t\t\"name\": \"constant.character.escape.unicode.swift\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"begin\": \"\\\\\\\\\\\\(\",\n\t\t\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.begin.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"contentName\": \"source.swift\",\n\t\t\t\t\t\t\t\t\t\"end\": \"(\\\\))\",\n\t\t\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.end.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"source.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"name\": \"meta.embedded.line.swift\",\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"begin\": \"\\\\(\",\n\t\t\t\t\t\t\t\t\t\t\t\"comment\": \"Nested parens\",\n\t\t\t\t\t\t\t\t\t\t\t\"end\": \"\\\\)\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\\\\\.\",\n\t\t\t\t\t\t\t\t\t\"name\": \"invalid.illegal.escape-not-recognized\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t\"operators\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"comment\": \"Type casting\",\n\t\t\t\t\t\"match\": \"\\\\b(is\\\\b|as([!?]\\\\B|\\\\b))\",\n\t\t\t\t\t\"name\": \"keyword.operator.type-casting.swift\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?x)\\n\\t\\t\\t\\t\\t\\t(?=\\n\\t\\t\\t\\t\\t\\t\\t(?<oph>\\t\\t\\t\\t\\t\\t\\t\\t# operator-head\\n\\t\\t\\t\\t\\t\\t\\t\\t[/=\\\\-+!*%<>&|^~?]\\n\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A1}-\\\\x{00A7}]\\n\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A9}\\\\x{00AB}]\\n\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00AC}\\\\x{00AE}]\\n\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]\\n\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]\\n\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2030}-\\\\x{203E}]\\n\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2041}-\\\\x{2053}]\\n\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2055}-\\\\x{205E}]\\n\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2190}-\\\\x{23FF}]\\n\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2500}-\\\\x{2775}]\\n\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2794}-\\\\x{2BFF}]\\n\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2E00}-\\\\x{2E7F}]\\n\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3001}-\\\\x{3003}]\\n\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3008}-\\\\x{3030}]\\n\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t | \\\\.\\n\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\\\g<oph>\\t\\t\\t\\t\\t\\t\\t# operator-head\\n\\t\\t\\t\\t\\t\\t\\t | \\\\.\\n\\t\\t\\t\\t\\t\\t\\t | [\\\\x{0300}-\\\\x{036F}]\\t\\t\\t\\t# operator-character\\n\\t\\t\\t\\t\\t\\t\\t | [\\\\x{1DC0}-\\\\x{1DFF}]\\n\\t\\t\\t\\t\\t\\t\\t | [\\\\x{20D0}-\\\\x{20FF}]\\n\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE00}-\\\\x{FE0F}]\\n\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE20}-\\\\x{FE2F}]\\n\\t\\t\\t\\t\\t\\t\\t | [\\\\x{E0100}-\\\\x{E01EF}]\\n\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\",\n\t\t\t\t\t\"comment\": \"This rule helps us speed up the matching.\",\n\t\t\t\t\t\"end\": \"(?!\\\\G)\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \"\\\\G(\\\\+\\\\+|\\\\-\\\\-)$\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.increment-or-decrement.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \"\\\\G(\\\\+|\\\\-)$\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.arithmetic.unary.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \"\\\\G!$\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.logical.not.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \"\\\\G~$\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.bitwise.not.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \".+\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.custom.prefix.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"comment\": \"Prefix unary operator\",\n\t\t\t\t\t\t\t\"match\": \"(?x)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\\\G\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t# Matching from the beginning ensures\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t# that we start with operator-head\\n\\t\\t\\t\\t\\t\\t\\t\\t(?<=^|[\\\\s(\\\\[{,;:])\\n\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t(?!(//|/\\\\*|\\\\*/))\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t[/=\\\\-+!*%<>&|^~?]\\t\\t\\t\\t# operator-head\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A1}-\\\\x{00A7}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A9}\\\\x{00AB}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00AC}\\\\x{00AE}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2030}-\\\\x{203E}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2041}-\\\\x{2053}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2055}-\\\\x{205E}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2190}-\\\\x{23FF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2500}-\\\\x{2775}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2794}-\\\\x{2BFF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2E00}-\\\\x{2E7F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3001}-\\\\x{3003}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3008}-\\\\x{3030}]\\n\\t\\t\\t\\t\\t\\t\\t\\t \\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{0300}-\\\\x{036F}]\\t\\t\\t\\t# operator-character\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{1DC0}-\\\\x{1DFF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{20D0}-\\\\x{20FF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE00}-\\\\x{FE0F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE20}-\\\\x{FE2F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{E0100}-\\\\x{E01EF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t)++\\n\\t\\t\\t\\t\\t\\t\\t\\t(?![\\\\s)\\\\]},;:]|\\\\z)\\n\\t\\t\\t\\t\\t\\t\\t\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \"\\\\G(\\\\+\\\\+|\\\\-\\\\-)$\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.increment-or-decrement.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \"\\\\G!$\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.increment-or-decrement.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \".+\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.custom.postfix.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"comment\": \"Postfix unary operator\",\n\t\t\t\t\t\t\t\"match\": \"(?x)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\\\G\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t# Matching from the beginning ensures\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t# that we start with operator-head\\n\\t\\t\\t\\t\\t\\t\\t\\t(?<!^|[\\\\s(\\\\[{,;:])\\n\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t(?!(//|/\\\\*|\\\\*/))\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t[/=\\\\-+!*%<>&|^~?]\\t\\t\\t\\t# operator-head\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A1}-\\\\x{00A7}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A9}\\\\x{00AB}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00AC}\\\\x{00AE}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2030}-\\\\x{203E}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2041}-\\\\x{2053}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2055}-\\\\x{205E}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2190}-\\\\x{23FF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2500}-\\\\x{2775}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2794}-\\\\x{2BFF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2E00}-\\\\x{2E7F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3001}-\\\\x{3003}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3008}-\\\\x{3030}]\\n\\t\\t\\t\\t\\t\\t\\t\\t \\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{0300}-\\\\x{036F}]\\t\\t\\t\\t# operator-character\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{1DC0}-\\\\x{1DFF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{20D0}-\\\\x{20FF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE00}-\\\\x{FE0F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE20}-\\\\x{FE2F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{E0100}-\\\\x{E01EF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t)++\\n\\t\\t\\t\\t\\t\\t\\t\\t(?=[\\\\s)\\\\]},;:]|\\\\z)\\n\\t\\t\\t\\t\\t\\t\\t\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \"\\\\G=$\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.assignment.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \"\\\\G(\\\\+|\\\\-|\\\\*|/|%|<<|>>|&|\\\\^|\\\\||&&|\\\\|\\\\|)=$\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.assignment.compound.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \"\\\\G(\\\\+|\\\\-|\\\\*|/)$\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.arithmetic.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \"\\\\G&(\\\\+|\\\\-|\\\\*)$\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.arithmetic.overflow.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \"\\\\G%$\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.arithmetic.remainder.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \"\\\\G(==|!=|>|<|>=|<=|~=)$\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.comparison.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \"\\\\G\\\\?\\\\?$\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.coalescing.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \"\\\\G(&&|\\\\|\\\\|)$\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.logical.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \"\\\\G(&|\\\\||\\\\^|<<|>>)$\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.bitwise.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \"\\\\G(===|!==)$\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.bitwise.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \"\\\\G\\\\?$\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.ternary.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \".+\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.custom.infix.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"comment\": \"Infix operator\",\n\t\t\t\t\t\t\t\"match\": \"(?x)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\\\G\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t# Matching from the beginning ensures\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t# that we start with operator-head\\n\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t(?!(//|/\\\\*|\\\\*/))\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t[/=\\\\-+!*%<>&|^~?]\\t\\t\\t\\t# operator-head\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A1}-\\\\x{00A7}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A9}\\\\x{00AB}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00AC}\\\\x{00AE}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2030}-\\\\x{203E}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2041}-\\\\x{2053}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2055}-\\\\x{205E}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2190}-\\\\x{23FF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2500}-\\\\x{2775}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2794}-\\\\x{2BFF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2E00}-\\\\x{2E7F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3001}-\\\\x{3003}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3008}-\\\\x{3030}]\\n\\t\\t\\t\\t\\t\\t\\t\\t \\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{0300}-\\\\x{036F}]\\t\\t\\t\\t# operator-character\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{1DC0}-\\\\x{1DFF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{20D0}-\\\\x{20FF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE00}-\\\\x{FE0F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE20}-\\\\x{FE2F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{E0100}-\\\\x{E01EF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t)++\\n\\t\\t\\t\\t\\t\\t\\t\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \".+\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.custom.prefix.dot.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"comment\": \"Dot prefix unary operator\",\n\t\t\t\t\t\t\t\"match\": \"(?x)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\\\G\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t# Matching from the beginning ensures\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t# that we start with operator-head\\n\\t\\t\\t\\t\\t\\t\\t\\t(?<=^|[\\\\s(\\\\[{,;:])\\n\\t\\t\\t\\t\\t\\t\\t\\t\\\\.\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t# dot\\n\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t(?!(//|/\\\\*|\\\\*/))\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\\\.\\t\\t\\t\\t\\t\\t\\t\\t# dot\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [/=\\\\-+!*%<>&|^~?]\\t\\t\\t\\t# operator-head\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A1}-\\\\x{00A7}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A9}\\\\x{00AB}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00AC}\\\\x{00AE}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2030}-\\\\x{203E}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2041}-\\\\x{2053}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2055}-\\\\x{205E}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2190}-\\\\x{23FF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2500}-\\\\x{2775}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2794}-\\\\x{2BFF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2E00}-\\\\x{2E7F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3001}-\\\\x{3003}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3008}-\\\\x{3030}]\\n\\t\\t\\t\\t\\t\\t\\t\\t \\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{0300}-\\\\x{036F}]\\t\\t\\t\\t# operator-character\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{1DC0}-\\\\x{1DFF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{20D0}-\\\\x{20FF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE00}-\\\\x{FE0F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE20}-\\\\x{FE2F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{E0100}-\\\\x{E01EF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t)++\\n\\t\\t\\t\\t\\t\\t\\t\\t(?![\\\\s)\\\\]},;:]|\\\\z)\\n\\t\\t\\t\\t\\t\\t\\t\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \".+\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.custom.postfix.dot.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"comment\": \"Dot postfix unary operator\",\n\t\t\t\t\t\t\t\"match\": \"(?x)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\\\G\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t# Matching from the beginning ensures\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t# that we start with operator-head\\n\\t\\t\\t\\t\\t\\t\\t\\t(?<!^|[\\\\s(\\\\[{,;:])\\n\\t\\t\\t\\t\\t\\t\\t\\t\\\\.\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t# dot\\n\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t(?!(//|/\\\\*|\\\\*/))\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\\\.\\t\\t\\t\\t\\t\\t\\t\\t# dot\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [/=\\\\-+!*%<>&|^~?]\\t\\t\\t\\t# operator-head\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A1}-\\\\x{00A7}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A9}\\\\x{00AB}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00AC}\\\\x{00AE}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2030}-\\\\x{203E}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2041}-\\\\x{2053}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2055}-\\\\x{205E}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2190}-\\\\x{23FF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2500}-\\\\x{2775}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2794}-\\\\x{2BFF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2E00}-\\\\x{2E7F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3001}-\\\\x{3003}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3008}-\\\\x{3030}]\\n\\t\\t\\t\\t\\t\\t\\t\\t \\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{0300}-\\\\x{036F}]\\t\\t\\t\\t# operator-character\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{1DC0}-\\\\x{1DFF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{20D0}-\\\\x{20FF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE00}-\\\\x{FE0F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE20}-\\\\x{FE2F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{E0100}-\\\\x{E01EF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t)++\\n\\t\\t\\t\\t\\t\\t\\t\\t(?=[\\\\s)\\\\]},;:]|\\\\z)\\n\\t\\t\\t\\t\\t\\t\\t\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \"\\\\G\\\\.\\\\.[.<]$\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.range.swift\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \".+\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.custom.infix.dot.swift\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"comment\": \"Dot infix operator\",\n\t\t\t\t\t\t\t\"match\": \"(?x)\\n\\t\\t\\t\\t\\t\\t\\t\\t\\\\G\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t# Matching from the beginning ensures\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t# that we start with operator-head\\n\\t\\t\\t\\t\\t\\t\\t\\t\\\\.\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t# dot\\n\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t(?!(//|/\\\\*|\\\\*/))\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t(\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\\\.\\t\\t\\t\\t\\t\\t\\t\\t# dot\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [/=\\\\-+!*%<>&|^~?]\\t\\t\\t\\t# operator-head\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A1}-\\\\x{00A7}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00A9}\\\\x{00AB}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00AC}\\\\x{00AE}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{00B0}-\\\\x{00B1}\\\\x{00B6}\\\\x{00BB}\\\\x{00BF}\\\\x{00D7}\\\\x{00F7}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2016}-\\\\x{2017}\\\\x{2020}-\\\\x{2027}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2030}-\\\\x{203E}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2041}-\\\\x{2053}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2055}-\\\\x{205E}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2190}-\\\\x{23FF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2500}-\\\\x{2775}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2794}-\\\\x{2BFF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{2E00}-\\\\x{2E7F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3001}-\\\\x{3003}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{3008}-\\\\x{3030}]\\n\\t\\t\\t\\t\\t\\t\\t\\t \\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{0300}-\\\\x{036F}]\\t\\t\\t\\t# operator-character\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{1DC0}-\\\\x{1DFF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{20D0}-\\\\x{20FF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE00}-\\\\x{FE0F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{FE20}-\\\\x{FE2F}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t | [\\\\x{E0100}-\\\\x{E01EF}]\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t)\\n\\t\\t\\t\\t\\t\\t\\t\\t)++\\n\\t\\t\\t\\t\\t\\t\\t\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \":\",\n\t\t\t\t\t\"name\": \"keyword.operator.ternary.swift\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"root\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#compiler-control\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#declarations\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#expressions\"\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t}\n}";
2
- export { swift_tmLanguage as default };
@@ -1,2 +0,0 @@
1
- var abyssColorTheme = "{\n\t\"name\": \"Abyss\",\n\t\"tokenColors\": [\n\t\t{\n\t\t\t\"settings\": {\n\t\t\t\t\"foreground\": \"#6688cc\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"scope\": [\n\t\t\t\t\"meta.embedded\",\n\t\t\t\t\"source.groovy.embedded\",\n\t\t\t\t\"string meta.image.inline.markdown\"\n\t\t\t],\n\t\t\t\"settings\": {\n\t\t\t\t\"foreground\": \"#6688cc\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Comment\",\n\t\t\t\"scope\": \"comment\",\n\t\t\t\"settings\": {\n\t\t\t\t\"foreground\": \"#384887\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"String\",\n\t\t\t\"scope\": \"string\",\n\t\t\t\"settings\": {\n\t\t\t\t\"foreground\": \"#22aa44\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Number\",\n\t\t\t\"scope\": \"constant.numeric\",\n\t\t\t\"settings\": {\n\t\t\t\t\"foreground\": \"#f280d0\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Built-in constant\",\n\t\t\t\"scope\": \"constant.language\",\n\t\t\t\"settings\": {\n\t\t\t\t\"foreground\": \"#f280d0\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"User-defined constant\",\n\t\t\t\"scope\": [\n\t\t\t\t\"constant.character\",\n\t\t\t\t\"constant.other\"\n\t\t\t],\n\t\t\t\"settings\": {\n\t\t\t\t\"foreground\": \"#f280d0\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Variable\",\n\t\t\t\"scope\": \"variable\",\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Keyword\",\n\t\t\t\"scope\": \"keyword\",\n\t\t\t\"settings\": {\n\t\t\t\t\"foreground\": \"#225588\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Storage\",\n\t\t\t\"scope\": \"storage\",\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"\",\n\t\t\t\t\"foreground\": \"#225588\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Storage type\",\n\t\t\t\"scope\": \"storage.type\",\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"italic\",\n\t\t\t\t\"foreground\": \"#9966b8\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Class name\",\n\t\t\t\"scope\": [\n\t\t\t\t\"entity.name.class\",\n\t\t\t\t\"entity.name.type\",\n\t\t\t\t\"entity.name.namespace\",\n\t\t\t\t\"entity.name.scope-resolution\"\n\t\t\t],\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"underline\",\n\t\t\t\t\"foreground\": \"#ffeebb\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Inherited class\",\n\t\t\t\"scope\": \"entity.other.inherited-class\",\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"italic underline\",\n\t\t\t\t\"foreground\": \"#ddbb88\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Function name\",\n\t\t\t\"scope\": \"entity.name.function\",\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"\",\n\t\t\t\t\"foreground\": \"#ddbb88\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Function argument\",\n\t\t\t\"scope\": \"variable.parameter\",\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"italic\",\n\t\t\t\t\"foreground\": \"#2277ff\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Tag name\",\n\t\t\t\"scope\": \"entity.name.tag\",\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"\",\n\t\t\t\t\"foreground\": \"#225588\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Tag attribute\",\n\t\t\t\"scope\": \"entity.other.attribute-name\",\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"\",\n\t\t\t\t\"foreground\": \"#ddbb88\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Library function\",\n\t\t\t\"scope\": \"support.function\",\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"\",\n\t\t\t\t\"foreground\": \"#9966b8\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Library constant\",\n\t\t\t\"scope\": \"support.constant\",\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"\",\n\t\t\t\t\"foreground\": \"#9966b8\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Library class/type\",\n\t\t\t\"scope\": [\n\t\t\t\t\"support.type\",\n\t\t\t\t\"support.class\"\n\t\t\t],\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"italic\",\n\t\t\t\t\"foreground\": \"#9966b8\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Library variable\",\n\t\t\t\"scope\": \"support.other.variable\",\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Invalid\",\n\t\t\t\"scope\": \"invalid\",\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"\",\n\t\t\t\t\"foreground\": \"#A22D44\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Invalid deprecated\",\n\t\t\t\"scope\": \"invalid.deprecated\",\n\t\t\t\"settings\": {\n\t\t\t\t\"foreground\": \"#A22D44\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"diff: header\",\n\t\t\t\"scope\": [\n\t\t\t\t\"meta.diff\",\n\t\t\t\t\"meta.diff.header\"\n\t\t\t],\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"italic\",\n\t\t\t\t\"foreground\": \"#E0EDDD\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"diff: deleted\",\n\t\t\t\"scope\": \"markup.deleted\",\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"\",\n\t\t\t\t\"foreground\": \"#dc322f\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"diff: changed\",\n\t\t\t\"scope\": \"markup.changed\",\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"\",\n\t\t\t\t\"foreground\": \"#cb4b16\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"diff: inserted\",\n\t\t\t\"scope\": \"markup.inserted\",\n\t\t\t\"settings\": {\n\t\t\t\t\"foreground\": \"#219186\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Markup Quote\",\n\t\t\t\"scope\": \"markup.quote\",\n\t\t\t\"settings\": {\n\t\t\t\t\"foreground\": \"#22aa44\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Markup Styling\",\n\t\t\t\"scope\": [\n\t\t\t\t\"markup.bold\",\n\t\t\t\t\"markup.italic\"\n\t\t\t],\n\t\t\t\"settings\": {\n\t\t\t\t\"foreground\": \"#22aa44\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Markup: Strong\",\n\t\t\t\"scope\": \"markup.bold\",\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"bold\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Markup: Emphasis\",\n\t\t\t\"scope\": \"markup.italic\",\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"italic\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"scope\": \"markup.strikethrough\",\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"strikethrough\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Markup Inline\",\n\t\t\t\"scope\": \"markup.inline.raw\",\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"\",\n\t\t\t\t\"foreground\": \"#9966b8\"\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"name\": \"Markup Headings\",\n\t\t\t\"scope\": [\n\t\t\t\t\"markup.heading\",\n\t\t\t\t\"markup.heading.setext\"\n\t\t\t],\n\t\t\t\"settings\": {\n\t\t\t\t\"fontStyle\": \"bold\",\n\t\t\t\t\"foreground\": \"#6688cc\"\n\t\t\t}\n\t\t}\n\t],\n\t\"colors\": {\n\n\t\t\"editor.background\": \"#000c18\",\n\t\t\"editor.foreground\": \"#6688cc\",\n\n\t\t// Base\n\t\t// \"foreground\": \"\",\n\t\t\"focusBorder\": \"#596F99\",\n\t\t// \"contrastActiveBorder\": \"\",\n\t\t// \"contrastBorder\": \"\",\n\n\t\t// \"widget.shadow\": \"\",\n\n\t\t\"input.background\": \"#181f2f\",\n\t\t// \"input.border\": \"\",\n\t\t// \"input.foreground\": \"\",\n\t\t\"inputOption.activeBorder\": \"#1D4A87\",\n\t\t\"inputValidation.infoBorder\": \"#384078\",\n\t\t\"inputValidation.infoBackground\": \"#051336\",\n\t\t\"inputValidation.warningBackground\": \"#5B7E7A\",\n\t\t\"inputValidation.warningBorder\": \"#5B7E7A\",\n\t\t\"inputValidation.errorBackground\": \"#A22D44\",\n\t\t\"inputValidation.errorBorder\": \"#AB395B\",\n\n\t\t\"badge.background\": \"#0063a5\",\n\t\t\"progressBar.background\": \"#0063a5\",\n\n\t\t\"dropdown.background\": \"#181f2f\",\n\t\t// \"dropdown.foreground\": \"\",\n\t\t// \"dropdown.border\": \"\",\n\n\t\t\"button.background\": \"#2B3C5D\",\n\t\t// \"button.foreground\": \"\",\n\n\t\t\"list.activeSelectionBackground\": \"#08286b\",\n\t\t// \"list.activeSelectionForeground\": \"\",\n\t\t\"quickInputList.focusBackground\": \"#08286b\",\n\t\t\"list.hoverBackground\": \"#061940\",\n\t\t\"list.inactiveSelectionBackground\": \"#152037\",\n\t\t\"list.dropBackground\": \"#041D52\",\n\t\t\"list.highlightForeground\": \"#0063a5\",\n\n\t\t\"scrollbar.shadow\": \"#515E91AA\",\n\t\t\"scrollbarSlider.activeBackground\": \"#3B3F5188\",\n\t\t\"scrollbarSlider.background\": \"#1F2230AA\",\n\t\t\"scrollbarSlider.hoverBackground\": \"#3B3F5188\",\n\n\t\t// Editor\n\t\t\"editorWidget.background\": \"#262641\",\n\t\t\"editorCursor.foreground\": \"#ddbb88\",\n\t\t\"editorWhitespace.foreground\": \"#103050\",\n\t\t\"editor.lineHighlightBackground\": \"#082050\",\n\t\t\"editor.selectionBackground\": \"#770811\",\n\t\t\"editorIndentGuide.background\": \"#002952\",\n\t\t\"editorIndentGuide.activeBackground\": \"#204972\",\n\t\t\"editorHoverWidget.background\": \"#000c38\",\n\t\t\"editorHoverWidget.border\": \"#004c18\",\n\t\t\"editorLineNumber.foreground\": \"#406385\",\n\t\t\"editorLineNumber.activeForeground\": \"#80a2c2\",\n\t\t\"editorMarkerNavigation.background\": \"#060621\",\n\t\t\"editorMarkerNavigationError.background\": \"#AB395B\",\n\t\t\"editorMarkerNavigationWarning.background\": \"#5B7E7A\",\n\t\t\"editorLink.activeForeground\": \"#0063a5\",\n\t\t// \"editor.findMatchBackground\": \"\",\n\t\t\"editor.findMatchHighlightBackground\": \"#eeeeee44\",\n\t\t// \"editor.findRangeHighlightBackground\": \"\",\n\t\t// \"editor.hoverHighlightBackground\": \"\",\n\t\t// \"editor.inactiveSelectionBackground\": \"\",\n\t\t// \"editor.lineHighlightBorder\": \"\",\n\t\t// \"editor.rangeHighlightBackground\": \"\",\n\t\t// \"editor.selectionHighlightBackground\": \"\",\n\t\t// \"editor.wordHighlightBackground\": \"\",\n\t\t// \"editor.wordHighlightStrongBackground\": \"\",\n\n\t\t// Editor: Suggest Widget\n\t\t// \"editorSuggestWidget.background\": \"\",\n\t\t// \"editorSuggestWidget.border\": \"\",\n\t\t// \"editorSuggestWidget.foreground\": \"\",\n\t\t// \"editorSuggestWidget.highlightForeground\": \"\",\n\t\t// \"editorSuggestWidget.selectedBackground\": \"\",\n\n\t\t// Editor: Peek View\n\t\t\"peekViewResult.background\": \"#060621\",\n\t\t// \"peekViewResult.lineForeground\": \"\",\n\t\t// \"peekViewResult.selectionBackground\": \"\",\n\t\t// \"peekViewResult.selectionForeground\": \"\",\n\t\t\"peekViewEditor.background\": \"#10192c\",\n\t\t\"peekViewTitle.background\": \"#10192c\",\n\t\t\"peekView.border\": \"#2b2b4a\",\n\t\t\"peekViewEditor.matchHighlightBackground\": \"#eeeeee33\",\n\t\t// \"peekViewResult.fileForeground\": \"\",\n\t\t\"peekViewResult.matchHighlightBackground\": \"#eeeeee44\",\n\t\t// \"peekViewTitleLabel.foreground\": \"\",\n\t\t// \"peekViewTitleDescription.foreground\": \"\",\n\n\t\t// Ports\n\t\t\"ports.iconRunningProcessForeground\": \"#80a2c2\",\n\t\t// Editor: Diff\n\t\t\"diffEditor.insertedTextBackground\": \"#31958A55\",\n\t\t// \"diffEditor.insertedTextBorder\": \"\",\n\t\t\"diffEditor.removedTextBackground\": \"#892F4688\",\n\t\t// \"diffEditor.removedTextBorder\": \"\",\n\n\n\t\t// Editor: Minimap\n\t\t\"minimap.selectionHighlight\": \"#750000\",\n\n\t\t// Workbench: Title\n\t\t\"titleBar.activeBackground\": \"#10192c\",\n\t\t// \"titleBar.activeForeground\": \"\",\n\t\t// \"titleBar.inactiveBackground\": \"\",\n\t\t// \"titleBar.inactiveForeground\": \"\",\n\n\t\t// Workbench: Editors\n\t\t// \"editorGroupHeader.noTabsBackground\": \"\",\n\t\t\"editorGroup.border\": \"#2b2b4a\",\n\t\t\"editorGroup.dropBackground\": \"#25375daa\",\n\t\t\"editorGroupHeader.tabsBackground\": \"#1c1c2a\",\n\n\t\t// Workbench: Tabs\n\t\t\"tab.border\": \"#2b2b4a\",\n\t\t// \"tab.activeBackground\": \"\",\n\t\t\"tab.inactiveBackground\": \"#10192c\",\n\t\t// \"tab.activeForeground\": \"\",\n\t\t// \"tab.inactiveForeground\": \"\",\n\t\t\"tab.lastPinnedBorder\": \"#2b3c5d\",\n\n\t\t// Workbench: Activity Bar\n\t\t\"activityBar.background\": \"#051336\",\n\t\t// \"activityBar.foreground\": \"\",\n\t\t// \"activityBarBadge.background\": \"\",\n\t\t// \"activityBarBadge.foreground\": \"\",\n\t\t\"activityBarItem.profilesBackground\": \"#082877\",\n\n\t\t// Workbench: Panel\n\t\t// \"panel.background\": \"\",\n\t\t\"panel.border\": \"#2b2b4a\",\n\t\t// \"panelTitle.activeBorder\": \"\",\n\t\t// \"panelTitle.activeForeground\": \"\",\n\t\t// \"panelTitle.inactiveForeground\": \"\",\n\n\t\t// Workbench: Side Bar\n\t\t\"sideBar.background\": \"#060621\",\n\t\t// \"sideBarTitle.foreground\": \"\",\n\t\t\"sideBarSectionHeader.background\": \"#10192c\",\n\n\t\t// Workbench: Status Bar\n\t\t\"statusBar.background\": \"#10192c\",\n\t\t\"statusBar.noFolderBackground\": \"#10192c\",\n\t\t\"statusBar.debuggingBackground\": \"#10192c\",\n\t\t// \"statusBar.foreground\": \"\",\n\t\t\"statusBarItem.remoteBackground\": \"#0063a5\",\n\t\t\"statusBarItem.prominentBackground\": \"#0063a5\",\n\t\t\"statusBarItem.prominentHoverBackground\": \"#0063a5dd\",\n\t\t// \"statusBarItem.activeBackground\": \"\",\n\t\t// \"statusBarItem.hoverBackground\": \"\",\n\n\t\t// Workbench: Debug\n\t\t\"debugToolBar.background\": \"#051336\",\n\t\t\"debugExceptionWidget.background\": \"#051336\",\n\t\t\"debugExceptionWidget.border\": \"#AB395B\",\n\n\t\t// Workbench: Quick Open\n\t\t\"pickerGroup.border\": \"#596F99\",\n\t\t\"pickerGroup.foreground\": \"#596F99\",\n\n\t\t// Workbench: Extensions\n\t\t\"extensionButton.prominentBackground\": \"#5f8b3b\",\n\t\t\"extensionButton.prominentHoverBackground\": \"#5f8b3bbb\",\n\n\t\t// Workbench: Terminal\n\t\t\"terminal.ansiBlack\": \"#111111\",\n\t\t\"terminal.ansiRed\": \"#ff9da4\",\n\t\t\"terminal.ansiGreen\": \"#d1f1a9\",\n\t\t\"terminal.ansiYellow\": \"#ffeead\",\n\t\t\"terminal.ansiBlue\": \"#bbdaff\",\n\t\t\"terminal.ansiMagenta\": \"#ebbbff\",\n\t\t\"terminal.ansiCyan\": \"#99ffff\",\n\t\t\"terminal.ansiWhite\": \"#cccccc\",\n\t\t\"terminal.ansiBrightBlack\": \"#333333\",\n\t\t\"terminal.ansiBrightRed\": \"#ff7882\",\n\t\t\"terminal.ansiBrightGreen\": \"#b8f171\",\n\t\t\"terminal.ansiBrightYellow\": \"#ffe580\",\n\t\t\"terminal.ansiBrightBlue\": \"#80baff\",\n\t\t\"terminal.ansiBrightMagenta\": \"#d778ff\",\n\t\t\"terminal.ansiBrightCyan\": \"#78ffff\",\n\t\t\"terminal.ansiBrightWhite\": \"#ffffff\"\n\t},\n\t\"semanticHighlighting\": true\n}\n";
2
- export { abyssColorTheme as default };