@aquera/nile-elements 0.0.104 → 0.0.105

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 (249) hide show
  1. package/README.md +5 -0
  2. package/dist/apl-21d06901.cjs.js +2 -0
  3. package/dist/apl-21d06901.cjs.js.map +1 -0
  4. package/dist/apl-d16c7537.esm.js +1 -0
  5. package/dist/{asciidoc-e0d3b314.cjs.js → asciidoc-001fd7c1.cjs.js} +2 -2
  6. package/dist/{asciidoc-e0d3b314.cjs.js.map → asciidoc-001fd7c1.cjs.js.map} +1 -1
  7. package/dist/{asciidoc-6be99424.esm.js → asciidoc-0966d4dc.esm.js} +1 -1
  8. package/dist/{blade-3208a46d.esm.js → blade-11ab018c.esm.js} +1 -1
  9. package/dist/{blade-edfc0fdd.cjs.js → blade-8db809ca.cjs.js} +2 -2
  10. package/dist/blade-8db809ca.cjs.js.map +1 -0
  11. package/dist/c-8cfe7ebc.esm.js +1 -0
  12. package/dist/c-b1a3514f.cjs.js +2 -0
  13. package/dist/c-b1a3514f.cjs.js.map +1 -0
  14. package/dist/codeql-48a19368.cjs.js +2 -0
  15. package/dist/codeql-48a19368.cjs.js.map +1 -0
  16. package/dist/codeql-535d71a2.esm.js +1 -0
  17. package/dist/cpp-62f58e5c.cjs.js +2 -0
  18. package/dist/cpp-62f58e5c.cjs.js.map +1 -0
  19. package/dist/cpp-ee96ee92.esm.js +1 -0
  20. package/dist/crystal-4277175c.cjs.js +2 -0
  21. package/dist/crystal-4277175c.cjs.js.map +1 -0
  22. package/dist/crystal-c89e4ade.esm.js +1 -0
  23. package/dist/{csharp-fe9efa9d.cjs.js → csharp-36e7912d.cjs.js} +2 -2
  24. package/dist/csharp-36e7912d.cjs.js.map +1 -0
  25. package/dist/{csharp-2f739c17.esm.js → csharp-78bc1c6a.esm.js} +1 -1
  26. package/dist/dream-maker-19eb7025.esm.js +1 -0
  27. package/dist/dream-maker-8dcd65d8.cjs.js +2 -0
  28. package/dist/dream-maker-8dcd65d8.cjs.js.map +1 -0
  29. package/dist/elixir-971d0fb3.esm.js +1 -0
  30. package/dist/elixir-de3ce4da.cjs.js +2 -0
  31. package/dist/elixir-de3ce4da.cjs.js.map +1 -0
  32. package/dist/{elm-0c5dbed5.cjs.js → elm-53838edc.cjs.js} +2 -2
  33. package/dist/{elm-0c5dbed5.cjs.js.map → elm-53838edc.cjs.js.map} +1 -1
  34. package/dist/{elm-3dbc06e2.esm.js → elm-9874a65c.esm.js} +1 -1
  35. package/dist/emacs-lisp-acd28b05.esm.js +1 -0
  36. package/dist/emacs-lisp-cfcfbca4.cjs.js +2 -0
  37. package/dist/emacs-lisp-cfcfbca4.cjs.js.map +1 -0
  38. package/dist/{erb-c397c5b8.cjs.js → erb-a42121e2.cjs.js} +2 -2
  39. package/dist/{erb-c397c5b8.cjs.js.map → erb-a42121e2.cjs.js.map} +1 -1
  40. package/dist/{erb-3df2a1e4.esm.js → erb-f580df2b.esm.js} +1 -1
  41. package/dist/{fortran-fixed-form-5221c659.cjs.js → fortran-fixed-form-a480dd28.cjs.js} +2 -2
  42. package/dist/{fortran-fixed-form-5221c659.cjs.js.map → fortran-fixed-form-a480dd28.cjs.js.map} +1 -1
  43. package/dist/{fortran-fixed-form-de2fa930.esm.js → fortran-fixed-form-f1691b9f.esm.js} +1 -1
  44. package/dist/fortran-free-form-a777429e.esm.js +1 -0
  45. package/dist/fortran-free-form-ffdde287.cjs.js +2 -0
  46. package/dist/fortran-free-form-ffdde287.cjs.js.map +1 -0
  47. package/dist/{fsharp-f129bbeb.esm.js → fsharp-69c4fb5c.esm.js} +1 -1
  48. package/dist/{fsharp-09a5f785.cjs.js → fsharp-d59a3c1f.cjs.js} +2 -2
  49. package/dist/{fsharp-09a5f785.cjs.js.map → fsharp-d59a3c1f.cjs.js.map} +1 -1
  50. package/dist/{git-rebase-1f689746.cjs.js → git-rebase-7589e873.cjs.js} +2 -2
  51. package/dist/{git-rebase-1f689746.cjs.js.map → git-rebase-7589e873.cjs.js.map} +1 -1
  52. package/dist/{git-rebase-a3a21dac.esm.js → git-rebase-bb01fb7b.esm.js} +1 -1
  53. package/dist/{glsl-f391b342.esm.js → glsl-1493bfc0.esm.js} +1 -1
  54. package/dist/{glsl-018c76d4.cjs.js → glsl-c588b399.cjs.js} +2 -2
  55. package/dist/{glsl-018c76d4.cjs.js.map → glsl-c588b399.cjs.js.map} +1 -1
  56. package/dist/{go-09393d7b.cjs.js → go-a05e58ea.cjs.js} +2 -2
  57. package/dist/go-a05e58ea.cjs.js.map +1 -0
  58. package/dist/{go-327b8b08.esm.js → go-ecfc5b99.esm.js} +1 -1
  59. package/dist/haml-2253a1bd.cjs.js +2 -0
  60. package/dist/haml-2253a1bd.cjs.js.map +1 -0
  61. package/dist/haml-43d9b125.esm.js +1 -0
  62. package/dist/hcl-595d9f51.cjs.js +2 -0
  63. package/dist/hcl-595d9f51.cjs.js.map +1 -0
  64. package/dist/hcl-6a14c75f.esm.js +1 -0
  65. package/dist/hjson-c3c357d7.cjs.js +2 -0
  66. package/dist/hjson-c3c357d7.cjs.js.map +1 -0
  67. package/dist/hjson-d42502da.esm.js +1 -0
  68. package/dist/{http-c5198897.esm.js → http-05cedc24.esm.js} +1 -1
  69. package/dist/{http-4370aef9.cjs.js → http-6aabe313.cjs.js} +2 -2
  70. package/dist/{http-4370aef9.cjs.js.map → http-6aabe313.cjs.js.map} +1 -1
  71. package/dist/{julia-5e4ea542.cjs.js → julia-24e685eb.cjs.js} +2 -2
  72. package/dist/{julia-5e4ea542.cjs.js.map → julia-24e685eb.cjs.js.map} +1 -1
  73. package/dist/{julia-e630ba73.esm.js → julia-944cceb2.esm.js} +1 -1
  74. package/dist/{latex-1adfa940.cjs.js → latex-bbf47f0d.cjs.js} +2 -2
  75. package/dist/{latex-1adfa940.cjs.js.map → latex-bbf47f0d.cjs.js.map} +1 -1
  76. package/dist/{latex-edebd2cc.esm.js → latex-c78294e0.esm.js} +1 -1
  77. package/dist/liquid-5e828fc2.cjs.js +2 -0
  78. package/dist/liquid-5e828fc2.cjs.js.map +1 -0
  79. package/dist/liquid-c0372db6.esm.js +1 -0
  80. package/dist/{lua-125b4f95.esm.js → lua-1393b713.esm.js} +1 -1
  81. package/dist/{lua-1990ffc7.cjs.js → lua-2512266d.cjs.js} +2 -2
  82. package/dist/{lua-1990ffc7.cjs.js.map → lua-2512266d.cjs.js.map} +1 -1
  83. package/dist/{markdown-9f728eba.esm.js → markdown-09aa0843.esm.js} +1 -1
  84. package/dist/{markdown-844e62a0.cjs.js → markdown-3ee08af9.cjs.js} +2 -2
  85. package/dist/{markdown-844e62a0.cjs.js.map → markdown-3ee08af9.cjs.js.map} +1 -1
  86. package/dist/matlab-534739f2.cjs.js +2 -0
  87. package/dist/matlab-534739f2.cjs.js.map +1 -0
  88. package/dist/matlab-97eddcfd.esm.js +1 -0
  89. package/dist/{mdc-89c1812c.cjs.js → mdc-7262ea7f.cjs.js} +2 -2
  90. package/dist/{mdc-89c1812c.cjs.js.map → mdc-7262ea7f.cjs.js.map} +1 -1
  91. package/dist/{mdc-78460ad2.esm.js → mdc-a46ebf55.esm.js} +1 -1
  92. package/dist/{nginx-d4fde8c7.cjs.js → nginx-33da8d52.cjs.js} +2 -2
  93. package/dist/{nginx-d4fde8c7.cjs.js.map → nginx-33da8d52.cjs.js.map} +1 -1
  94. package/dist/{nginx-4e240995.esm.js → nginx-9eb574b4.esm.js} +1 -1
  95. package/dist/nile-chip/nile-chip.cjs.js +1 -1
  96. package/dist/nile-chip/nile-chip.cjs.js.map +1 -1
  97. package/dist/nile-chip/nile-chip.esm.js +1 -1
  98. package/dist/nile-dialog/nile-dialog.cjs.js +1 -1
  99. package/dist/nile-dialog/nile-dialog.cjs.js.map +1 -1
  100. package/dist/nile-dialog/nile-dialog.css.cjs.js +1 -1
  101. package/dist/nile-dialog/nile-dialog.css.cjs.js.map +1 -1
  102. package/dist/nile-dialog/nile-dialog.css.esm.js +18 -3
  103. package/dist/nile-dialog/nile-dialog.esm.js +6 -4
  104. package/dist/nile-highlighter/nile-highlighter.cjs.js +1 -1
  105. package/dist/nile-highlighter/nile-highlighter.esm.js +1 -1
  106. package/dist/nile-loader/nile-loader.cjs.js +1 -1
  107. package/dist/nile-loader/nile-loader.cjs.js.map +1 -1
  108. package/dist/nile-loader/nile-loader.esm.js +5 -6
  109. package/dist/nile-tab-group/nile-tab-group.cjs.js +1 -1
  110. package/dist/nile-tab-group/nile-tab-group.cjs.js.map +1 -1
  111. package/dist/nile-tab-group/nile-tab-group.esm.js +1 -1
  112. package/dist/{nim-2d3e58bd.esm.js → nim-19ded5b2.esm.js} +1 -1
  113. package/dist/{nim-68123944.cjs.js → nim-d17fab7b.cjs.js} +2 -2
  114. package/dist/{nim-68123944.cjs.js.map → nim-d17fab7b.cjs.js.map} +1 -1
  115. package/dist/php-61f68171.esm.js +1 -0
  116. package/dist/php-cc873410.cjs.js +2 -0
  117. package/dist/php-cc873410.cjs.js.map +1 -0
  118. package/dist/{racket-7b394aba.cjs.js → racket-0c9d5c0f.cjs.js} +2 -2
  119. package/dist/{racket-7b394aba.cjs.js.map → racket-0c9d5c0f.cjs.js.map} +1 -1
  120. package/dist/{racket-81dda9e5.esm.js → racket-55a31f6b.esm.js} +1 -1
  121. package/dist/{razor-1b5232cc.cjs.js → razor-a2425731.cjs.js} +2 -2
  122. package/dist/{razor-1b5232cc.cjs.js.map → razor-a2425731.cjs.js.map} +1 -1
  123. package/dist/{razor-d377d825.esm.js → razor-b33c609c.esm.js} +1 -1
  124. package/dist/{rst-7ca0bc88.cjs.js → rst-328f0cf1.cjs.js} +2 -2
  125. package/dist/{rst-7ca0bc88.cjs.js.map → rst-328f0cf1.cjs.js.map} +1 -1
  126. package/dist/{rst-0c779bb4.esm.js → rst-c0bca969.esm.js} +1 -1
  127. package/dist/{ruby-a3bdb75e.esm.js → ruby-0ae8b3e3.esm.js} +1 -1
  128. package/dist/{ruby-951187c3.cjs.js → ruby-82f6fde2.cjs.js} +2 -2
  129. package/dist/{ruby-951187c3.cjs.js.map → ruby-82f6fde2.cjs.js.map} +1 -1
  130. package/dist/{scala-f087204d.esm.js → scala-09ae48a2.esm.js} +1 -1
  131. package/dist/{scala-b2ea8aa7.cjs.js → scala-44c4b612.cjs.js} +2 -2
  132. package/dist/{scala-b2ea8aa7.cjs.js.map → scala-44c4b612.cjs.js.map} +1 -1
  133. package/dist/{shellscript-ac23285d.esm.js → shellscript-279f3c20.esm.js} +1 -1
  134. package/dist/{shellscript-cd92245f.cjs.js → shellscript-fbbc671d.cjs.js} +2 -2
  135. package/dist/{shellscript-cd92245f.cjs.js.map → shellscript-fbbc671d.cjs.js.map} +1 -1
  136. package/dist/{shellsession-396c6681.esm.js → shellsession-c6d86b76.esm.js} +1 -1
  137. package/dist/{shellsession-223fd590.cjs.js → shellsession-d64b6377.cjs.js} +2 -2
  138. package/dist/{shellsession-223fd590.cjs.js.map → shellsession-d64b6377.cjs.js.map} +1 -1
  139. package/dist/src/nile-chip/nile-chip.js +10 -7
  140. package/dist/src/nile-chip/nile-chip.js.map +1 -1
  141. package/dist/src/nile-dialog/nile-dialog.css.js +18 -3
  142. package/dist/src/nile-dialog/nile-dialog.css.js.map +1 -1
  143. package/dist/src/nile-dialog/nile-dialog.d.ts +1 -0
  144. package/dist/src/nile-dialog/nile-dialog.js +10 -2
  145. package/dist/src/nile-dialog/nile-dialog.js.map +1 -1
  146. package/dist/src/nile-loader/nile-loader.js +0 -1
  147. package/dist/src/nile-loader/nile-loader.js.map +1 -1
  148. package/dist/src/nile-tab-group/nile-tab-group.js +4 -1
  149. package/dist/src/nile-tab-group/nile-tab-group.js.map +1 -1
  150. package/dist/stata-149110fb.esm.js +1 -0
  151. package/dist/stata-b4a1937c.cjs.js +2 -0
  152. package/dist/stata-b4a1937c.cjs.js.map +1 -0
  153. package/dist/{svelte-70f34f63.esm.js → svelte-1048eb5a.esm.js} +1 -1
  154. package/dist/{svelte-fac37669.cjs.js → svelte-4fd29bd3.cjs.js} +2 -2
  155. package/dist/{svelte-fac37669.cjs.js.map → svelte-4fd29bd3.cjs.js.map} +1 -1
  156. package/dist/swift-502aad80.cjs.js +2 -0
  157. package/dist/{swift-73991d74.cjs.js.map → swift-502aad80.cjs.js.map} +1 -1
  158. package/dist/swift-c090b356.esm.js +1 -0
  159. package/dist/{templ-d3b439bb.esm.js → templ-628e79a2.esm.js} +1 -1
  160. package/dist/{templ-07af4f95.cjs.js → templ-d270ba1d.cjs.js} +2 -2
  161. package/dist/{templ-07af4f95.cjs.js.map → templ-d270ba1d.cjs.js.map} +1 -1
  162. package/dist/terraform-500d20b0.esm.js +1 -0
  163. package/dist/terraform-e5570e0d.cjs.js +2 -0
  164. package/dist/terraform-e5570e0d.cjs.js.map +1 -0
  165. package/dist/{ts-tags-dd626bee.esm.js → ts-tags-5da8755a.esm.js} +1 -1
  166. package/dist/{ts-tags-060f8b3f.cjs.js → ts-tags-df3e88d7.cjs.js} +2 -2
  167. package/dist/{ts-tags-060f8b3f.cjs.js.map → ts-tags-df3e88d7.cjs.js.map} +1 -1
  168. package/dist/tsconfig.tsbuildinfo +1 -1
  169. package/dist/twig-5bc34a9a.esm.js +1 -0
  170. package/dist/twig-af3abed5.cjs.js +2 -0
  171. package/dist/twig-af3abed5.cjs.js.map +1 -0
  172. package/dist/{vue-0bf65993.cjs.js → vue-09163277.cjs.js} +2 -2
  173. package/dist/{vue-0bf65993.cjs.js.map → vue-09163277.cjs.js.map} +1 -1
  174. package/dist/{vue-9a567043.esm.js → vue-dbfc25c6.esm.js} +1 -1
  175. package/dist/{vue-html-87c1aa08.cjs.js → vue-html-8d140150.cjs.js} +2 -2
  176. package/dist/{vue-html-87c1aa08.cjs.js.map → vue-html-8d140150.cjs.js.map} +1 -1
  177. package/dist/{vue-html-5432e63a.esm.js → vue-html-9284886a.esm.js} +1 -1
  178. package/dist/wasm-69304cd7.cjs.js +2 -0
  179. package/dist/{wasm-2b3accdb.cjs.js.map → wasm-69304cd7.cjs.js.map} +1 -1
  180. package/dist/{wasm-ec34668d.esm.js → wasm-aabb0cac.esm.js} +1 -1
  181. package/dist/{wikitext-bc11a136.cjs.js → wikitext-1ea78c25.cjs.js} +2 -2
  182. package/dist/{wikitext-bc11a136.cjs.js.map → wikitext-1ea78c25.cjs.js.map} +1 -1
  183. package/dist/{wikitext-0150fba4.esm.js → wikitext-3fe603e5.esm.js} +1 -1
  184. package/package.json +1 -1
  185. package/src/nile-chip/nile-chip.ts +13 -7
  186. package/src/nile-dialog/nile-dialog.css.ts +18 -3
  187. package/src/nile-dialog/nile-dialog.ts +8 -2
  188. package/src/nile-loader/nile-loader.ts +0 -1
  189. package/src/nile-tab-group/nile-tab-group.ts +2 -1
  190. package/dist/apl-41950f78.cjs.js +0 -2
  191. package/dist/apl-41950f78.cjs.js.map +0 -1
  192. package/dist/apl-c55a4361.esm.js +0 -1
  193. package/dist/blade-edfc0fdd.cjs.js.map +0 -1
  194. package/dist/c-3ee6456a.esm.js +0 -1
  195. package/dist/c-da3bb8a6.cjs.js +0 -2
  196. package/dist/c-da3bb8a6.cjs.js.map +0 -1
  197. package/dist/codeql-842eb6cf.esm.js +0 -1
  198. package/dist/codeql-d89527b8.cjs.js +0 -2
  199. package/dist/codeql-d89527b8.cjs.js.map +0 -1
  200. package/dist/cpp-08227984.esm.js +0 -1
  201. package/dist/cpp-cf2e9ff3.cjs.js +0 -2
  202. package/dist/cpp-cf2e9ff3.cjs.js.map +0 -1
  203. package/dist/crystal-38a7d086.cjs.js +0 -2
  204. package/dist/crystal-38a7d086.cjs.js.map +0 -1
  205. package/dist/crystal-39a9e1ea.esm.js +0 -1
  206. package/dist/csharp-fe9efa9d.cjs.js.map +0 -1
  207. package/dist/dream-maker-03e02970.cjs.js +0 -2
  208. package/dist/dream-maker-03e02970.cjs.js.map +0 -1
  209. package/dist/dream-maker-d074d317.esm.js +0 -1
  210. package/dist/elixir-677f91c1.cjs.js +0 -2
  211. package/dist/elixir-677f91c1.cjs.js.map +0 -1
  212. package/dist/elixir-e6f892c0.esm.js +0 -1
  213. package/dist/emacs-lisp-acc9d1bf.esm.js +0 -1
  214. package/dist/emacs-lisp-ba2192a6.cjs.js +0 -2
  215. package/dist/emacs-lisp-ba2192a6.cjs.js.map +0 -1
  216. package/dist/fortran-free-form-662642e8.cjs.js +0 -2
  217. package/dist/fortran-free-form-662642e8.cjs.js.map +0 -1
  218. package/dist/fortran-free-form-b8908a2e.esm.js +0 -1
  219. package/dist/go-09393d7b.cjs.js.map +0 -1
  220. package/dist/haml-44312b9e.cjs.js +0 -2
  221. package/dist/haml-44312b9e.cjs.js.map +0 -1
  222. package/dist/haml-ce8f521d.esm.js +0 -1
  223. package/dist/hcl-659b5ff4.esm.js +0 -1
  224. package/dist/hcl-93dee28c.cjs.js +0 -2
  225. package/dist/hcl-93dee28c.cjs.js.map +0 -1
  226. package/dist/hjson-e5dbb832.cjs.js +0 -2
  227. package/dist/hjson-e5dbb832.cjs.js.map +0 -1
  228. package/dist/hjson-ff155aeb.esm.js +0 -1
  229. package/dist/liquid-1369a009.cjs.js +0 -2
  230. package/dist/liquid-1369a009.cjs.js.map +0 -1
  231. package/dist/liquid-e48eb0ca.esm.js +0 -1
  232. package/dist/matlab-52886ffe.esm.js +0 -1
  233. package/dist/matlab-71a4c00e.cjs.js +0 -2
  234. package/dist/matlab-71a4c00e.cjs.js.map +0 -1
  235. package/dist/php-1beee6c8.esm.js +0 -1
  236. package/dist/php-580a8f27.cjs.js +0 -2
  237. package/dist/php-580a8f27.cjs.js.map +0 -1
  238. package/dist/stata-5d259eca.cjs.js +0 -2
  239. package/dist/stata-5d259eca.cjs.js.map +0 -1
  240. package/dist/stata-ce57a14a.esm.js +0 -1
  241. package/dist/swift-22135585.esm.js +0 -1
  242. package/dist/swift-73991d74.cjs.js +0 -2
  243. package/dist/terraform-5a5bfeae.esm.js +0 -1
  244. package/dist/terraform-73471876.cjs.js +0 -2
  245. package/dist/terraform-73471876.cjs.js.map +0 -1
  246. package/dist/twig-8f9f15f7.cjs.js +0 -2
  247. package/dist/twig-8f9f15f7.cjs.js.map +0 -1
  248. package/dist/twig-964ce7ee.esm.js +0 -1
  249. package/dist/wasm-2b3accdb.cjs.js +0 -2
@@ -1,2 +0,0 @@
1
- System.register([],function(_export,_context){"use strict";var e;return{setters:[],execute:function execute(){_export("default",e=[Object.freeze({displayName:"Swift",name:"swift",patterns:[{include:"#root"}],repository:{"async-throws":{captures:{1:{name:"invalid.illegal.await-must-precede-throws.swift"},2:{name:"storage.modifier.exception.swift"},3:{name:"storage.modifier.async.swift"}},match:"\\b(?:(throws\\s+async|rethrows\\s+async)|(throws|rethrows)|(async))\\b"},attributes:{patterns:[{begin:"((@)available)(\\()",beginCaptures:{1:{name:"storage.modifier.attribute.swift"},2:{name:"punctuation.definition.attribute.swift"},3:{name:"punctuation.definition.arguments.begin.swift"}},end:"\\)",endCaptures:{0:{name:"punctuation.definition.arguments.end.swift"}},name:"meta.attribute.available.swift",patterns:[{captures:{1:{name:"keyword.other.platform.os.swift"},2:{name:"constant.numeric.swift"}},match:"\\b(swift|(?:iOS|macOS|OSX|watchOS|tvOS|visionOS|UIKitForMac)(?:ApplicationExtension)?)\\b(?:\\s+(\\d+(?:\\.\\d+)*\\b))?"},{begin:"\\b(introduced|deprecated|obsoleted)\\s*(:)\\s*",beginCaptures:{1:{name:"keyword.other.swift"},2:{name:"punctuation.separator.key-value.swift"}},end:"(?!\\G)",patterns:[{match:"\\b\\d+(?:\\.\\d+)*\\b",name:"constant.numeric.swift"}]},{begin:'\\b(message|renamed)\\s*(:)\\s*(?=")',beginCaptures:{1:{name:"keyword.other.swift"},2:{name:"punctuation.separator.key-value.swift"}},end:"(?!\\G)",patterns:[{include:"#literals"}]},{captures:{1:{name:"keyword.other.platform.all.swift"},2:{name:"keyword.other.swift"},3:{name:"invalid.illegal.character-not-allowed-here.swift"}},match:"(?:(\\*)|\\b(deprecated|unavailable|noasync)\\b)\\s*(.*?)(?=[,)])"}]},{begin:"((@)objc)(\\()",beginCaptures:{1:{name:"storage.modifier.attribute.swift"},2:{name:"punctuation.definition.attribute.swift"},3:{name:"punctuation.definition.arguments.begin.swift"}},end:"\\)",endCaptures:{0:{name:"punctuation.definition.arguments.end.swift"}},name:"meta.attribute.objc.swift",patterns:[{captures:{1:{name:"invalid.illegal.missing-colon-after-selector-piece.swift"}},match:"\\w*(?::(?:\\w*:)*(\\w*))?",name:"entity.name.function.swift"}]},{begin:"(@)(?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>)",beginCaptures:{0:{name:"storage.modifier.attribute.swift"},1:{name:"punctuation.definition.attribute.swift"},2:{name:"punctuation.definition.identifier.swift"},3:{name:"punctuation.definition.identifier.swift"}},comment:"any other attribute",end:"(?!\\G\\()",name:"meta.attribute.swift",patterns:[{begin:"\\(",beginCaptures:{0:{name:"punctuation.definition.arguments.begin.swift"}},end:"\\)",endCaptures:{0:{name:"punctuation.definition.arguments.end.swift"}},name:"meta.arguments.attribute.swift",patterns:[{include:"#expressions"}]}]}]},"builtin-functions":{patterns:[{comment:"Member functions in the standard library in Swift 3 which may be used with trailing closures and no parentheses",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",name:"support.function.swift"},{comment:"Member functions in the standard library in Swift 3",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*\\()",name:"support.function.swift"},{comment:"Member functions in the standard library in Swift 2 only",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*\\()",name:"support.function.swift"}]},"builtin-global-functions":{patterns:[{begin:"\\b(type)(\\()\\s*(of)(:)",beginCaptures:{1:{name:"support.function.dynamic-type.swift"},2:{name:"punctuation.definition.arguments.begin.swift"},3:{name:"support.variable.parameter.swift"},4:{name:"punctuation.separator.argument-label.begin.swift"}},end:"\\)",endCaptures:{0:{name:"punctuation.definition.arguments.end.swift"}},patterns:[{include:"#expressions"}]},{comment:"Global functions available in Swift 3 which may be used with trailing closures and no parentheses",match:"\\b(?:anyGenerator|autoreleasepool)(?=\\s*[({])\\b",name:"support.function.swift"},{comment:"Global functions available in Swift 3",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*\\()",name:"support.function.swift"},{comment:"Global functions available in Swift 2 only",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*\\()",name:"support.function.swift"}]},"builtin-properties":{patterns:[{comment:"The simpler (?<=\\bProcess\\.|\\bCommandLine\\.) breaks VS Code / Atom, see https://github.com/textmate/swift.tmbundle/issues/29",match:"(?<=^Process\\.|\\WProcess\\.|^CommandLine\\.|\\WCommandLine\\.)(arguments|argc|unsafeArgv)",name:"support.variable.swift"},{comment:"Properties in the standard library in Swift 3",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",name:"support.variable.swift"},{comment:"Properties in the standard library in Swift 2 only",match:"(?<=\\.)(?:boolValue|disposition|end|objectIdentifier|quickLookObject|start|valueType)\\b",name:"support.variable.swift"},{comment:"Enum cases in the standard library - note that there is some overlap between these and the properties",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",name:"support.variable.swift"}]},"builtin-types":{comment:"Types provided in the standard library",patterns:[{include:"#builtin-types-builtin-class-type"},{include:"#builtin-types-builtin-enum-type"},{include:"#builtin-types-builtin-protocol-type"},{include:"#builtin-types-builtin-struct-type"},{include:"#builtin-types-builtin-typealias"},{match:"\\bAny\\b",name:"support.type.any.swift"}]},"builtin-types-builtin-class-type":{comment:"Builtin class types",match:"\\b(Managed(Buffer|ProtoBuffer)|NonObjectiveCBase|AnyGenerator)\\b",name:"support.class.swift"},"builtin-types-builtin-enum-type":{patterns:[{comment:"CommandLine is an enum, but it acts like a constant",match:"\\b(?:CommandLine|Process(?=\\.))\\b",name:"support.constant.swift"},{comment:"The return type of a function that never returns",match:"\\bNever\\b",name:"support.constant.never.swift"},{comment:"Enum types in the standard library in Swift 3",match:"\\b(?:ImplicitlyUnwrappedOptional|Representation|MemoryLayout|FloatingPointClassification|SetIndexRepresentation|SetIteratorRepresentation|FloatingPointRoundingRule|UnicodeDecodingResult|Optional|DictionaryIndexRepresentation|AncestorRepresentation|DisplayStyle|PlaygroundQuickLook|Never|FloatingPointSign|Bit|DictionaryIteratorRepresentation)\\b",name:"support.type.swift"},{comment:"Enum types in the standard library in Swift 2 only",match:"\\b(?:MirrorDisposition|QuickLookObject)\\b",name:"support.type.swift"}]},"builtin-types-builtin-protocol-type":{patterns:[{comment:"Protocols in the standard library in Swift 3",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",name:"support.type.swift"},{comment:"Protocols in the standard library in Swift 2 only",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",name:"support.type.swift"}]},"builtin-types-builtin-struct-type":{patterns:[{comment:"Structs in the standard library in Swift 3",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",name:"support.type.swift"},{comment:"Structs in the standard library in Swift 2 only",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",name:"support.type.swift"}]},"builtin-types-builtin-typealias":{patterns:[{comment:"Typealiases in the standard library in Swift 3",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",name:"support.type.swift"},{comment:"Typealiases in the standard library in Swift 2 only",match:"\\b(?:Generator|PlaygroundQuickLook|UWord|Word)\\b",name:"support.type.swift"}]},"code-block":{begin:"\\{",beginCaptures:{0:{name:"punctuation.section.scope.begin.swift"}},end:"\\}",endCaptures:{0:{name:"punctuation.section.scope.end.swift"}},patterns:[{include:"$self"}]},comments:{patterns:[{captures:{1:{name:"punctuation.definition.comment.swift"}},match:"\\A^(#!).*$\\n?",name:"comment.line.number-sign.swift"},{begin:"/\\*\\*(?!/)",beginCaptures:{0:{name:"punctuation.definition.comment.begin.swift"}},end:"\\*/",endCaptures:{0:{name:"punctuation.definition.comment.end.swift"}},name:"comment.block.documentation.swift",patterns:[{include:"#comments-nested"}]},{begin:"/\\*:",beginCaptures:{0:{name:"punctuation.definition.comment.begin.swift"}},end:"\\*/",endCaptures:{0:{name:"punctuation.definition.comment.end.swift"}},name:"comment.block.documentation.playground.swift",patterns:[{include:"#comments-nested"}]},{begin:"/\\*",beginCaptures:{0:{name:"punctuation.definition.comment.begin.swift"}},end:"\\*/",endCaptures:{0:{name:"punctuation.definition.comment.end.swift"}},name:"comment.block.swift",patterns:[{include:"#comments-nested"}]},{match:"\\*/",name:"invalid.illegal.unexpected-end-of-block-comment.swift"},{begin:"(^[ \\t]+)?(?=//)",beginCaptures:{1:{name:"punctuation.whitespace.comment.leading.swift"}},end:"(?!\\G)",patterns:[{begin:"///",beginCaptures:{0:{name:"punctuation.definition.comment.swift"}},end:"$",name:"comment.line.triple-slash.documentation.swift"},{begin:"//:",beginCaptures:{0:{name:"punctuation.definition.comment.swift"}},end:"$",name:"comment.line.double-slash.documentation.swift"},{begin:"//",beginCaptures:{0:{name:"punctuation.definition.comment.swift"}},end:"$",name:"comment.line.double-slash.swift"}]}]},"comments-nested":{begin:"/\\*",end:"\\*/",patterns:[{include:"#comments-nested"}]},"compiler-control":{patterns:[{begin:"^\\s*(#)(if|elseif)\\s+(false)\\b.*?(?=$|//|/\\*)",beginCaptures:{0:{name:"meta.preprocessor.conditional.swift"},1:{name:"punctuation.definition.preprocessor.swift"},2:{name:"keyword.control.import.preprocessor.conditional.swift"},3:{name:"constant.language.boolean.swift"}},contentName:"comment.block.preprocessor.swift",end:"(?=^\\s*(#(elseif|else|endif)\\b))"},{begin:"^\\s*(#)(if|elseif)\\s+",captures:{1:{name:"punctuation.definition.preprocessor.swift"},2:{name:"keyword.control.import.preprocessor.conditional.swift"}},end:"(?=\\s*(?://|/\\*))|$",name:"meta.preprocessor.conditional.swift",patterns:[{match:"(&&|\\|\\|)",name:"keyword.operator.logical.swift"},{match:"\\b(true|false)\\b",name:"constant.language.boolean.swift"},{captures:{1:{name:"keyword.other.condition.swift"},2:{name:"punctuation.definition.parameters.begin.swift"},3:{name:"support.constant.platform.architecture.swift"},4:{name:"punctuation.definition.parameters.end.swift"}},match:"\\b(arch)\\s*(\\()\\s*(?:(arm|arm64|powerpc64|powerpc64le|i386|x86_64|s390x)|\\w+)\\s*(\\))"},{captures:{1:{name:"keyword.other.condition.swift"},2:{name:"punctuation.definition.parameters.begin.swift"},3:{name:"support.constant.platform.os.swift"},4:{name:"punctuation.definition.parameters.end.swift"}},match:"\\b(os)\\s*(\\()\\s*(?:(macOS|OSX|iOS|tvOS|watchOS|visionOS|Android|Linux|FreeBSD|Windows|PS4)|\\w+)\\s*(\\))"},{captures:{1:{name:"keyword.other.condition.swift"},2:{name:"punctuation.definition.parameters.begin.swift"},3:{name:"entity.name.type.module.swift"},4:{name:"punctuation.definition.parameters.end.swift"}},match:"\\b(canImport)\\s*(\\()([\\p{L}_][\\p{L}_\\p{N}\\p{M}]*)(\\))"},{begin:"\\b(targetEnvironment)\\s*(\\()",beginCaptures:{1:{name:"keyword.other.condition.swift"},2:{name:"punctuation.definition.parameters.begin.swift"}},end:"(\\))|$",endCaptures:{1:{name:"punctuation.definition.parameters.end.swift"}},patterns:[{match:"\\b(simulator|UIKitForMac)\\b",name:"support.constant.platform.environment.swift"}]},{begin:"\\b(swift|compiler)\\s*(\\()",beginCaptures:{1:{name:"keyword.other.condition.swift"},2:{name:"punctuation.definition.parameters.begin.swift"}},end:"(\\))|$",endCaptures:{1:{name:"punctuation.definition.parameters.end.swift"}},patterns:[{match:">=|<",name:"keyword.operator.comparison.swift"},{match:"\\b\\d+(?:\\.\\d+)*\\b",name:"constant.numeric.swift"}]}]},{captures:{1:{name:"punctuation.definition.preprocessor.swift"},2:{name:"keyword.control.import.preprocessor.conditional.swift"},3:{patterns:[{match:"\\S+",name:"invalid.illegal.character-not-allowed-here.swift"}]}},match:"^\\s*(#)(else|endif)(.*?)(?=$|//|/\\*)",name:"meta.preprocessor.conditional.swift"},{captures:{1:{name:"punctuation.definition.preprocessor.swift"},2:{name:"keyword.control.import.preprocessor.sourcelocation.swift"},4:{name:"punctuation.definition.parameters.begin.swift"},5:{patterns:[{begin:'(file)\\s*(:)\\s*(?=")',beginCaptures:{1:{name:"support.variable.parameter.swift"},2:{name:"punctuation.separator.key-value.swift"}},end:"(?!\\G)",patterns:[{include:"#literals"}]},{captures:{1:{name:"support.variable.parameter.swift"},2:{name:"punctuation.separator.key-value.swift"},3:{name:"constant.numeric.integer.swift"}},match:"(line)\\s*(:)\\s*([0-9]+)"},{match:",",name:"punctuation.separator.parameters.swift"},{match:"\\S+",name:"invalid.illegal.character-not-allowed-here.swift"}]},6:{name:"punctuation.definition.parameters.begin.swift"},7:{patterns:[{match:"\\S+",name:"invalid.illegal.character-not-allowed-here.swift"}]}},match:"^\\s*(#)(sourceLocation)((\\()([^)]*)(\\)))(.*?)(?=$|//|/\\*)",name:"meta.preprocessor.sourcelocation.swift"}]},conditionals:{patterns:[{begin:"(?<!\\.)\\b(if|guard|switch|for)\\b",beginCaptures:{1:{patterns:[{include:"#keywords"}]}},end:"(?=\\{)",patterns:[{include:"#expressions-without-trailing-closures"}]},{begin:"(?<!\\.)\\b(while)\\b",beginCaptures:{1:{patterns:[{include:"#keywords"}]}},comment:"while can be the end of a repeat-while statement so doesn't necessarily have braces after it",end:"(?=\\{)|$",patterns:[{include:"#expressions-without-trailing-closures"}]}]},declarations:{patterns:[{include:"#declarations-function"},{include:"#declarations-function-initializer"},{include:"#declarations-function-subscript"},{include:"#declarations-typed-variable-declaration"},{include:"#declarations-import"},{include:"#declarations-operator"},{include:"#declarations-precedencegroup"},{include:"#declarations-protocol"},{include:"#declarations-type"},{include:"#declarations-extension"},{include:"#declarations-typealias"},{include:"#declarations-macro"}]},"declarations-available-types":{patterns:[{include:"#comments"},{include:"#builtin-types"},{include:"#attributes"},{match:"\\basync\\b",name:"storage.modifier.async.swift"},{match:"\\b(?:throws|rethrows)\\b",name:"storage.modifier.exception.swift"},{match:"\\bsome\\b",name:"keyword.other.operator.type.opaque.swift"},{match:"\\bany\\b",name:"keyword.other.operator.type.existential.swift"},{match:"\\b(?:repeat|each)\\b",name:"keyword.control.loop.swift"},{match:"\\b(?:inout|isolated|borrowing|consuming)\\b",name:"storage.modifier.swift"},{match:"\\bSelf\\b",name:"variable.language.swift"},{captures:{1:{name:"keyword.operator.type.function.swift"}},match:"(?<![/=\\-+!*%<>&|\\^~.])(->)(?![/=\\-+!*%<>&|\\^~.])"},{captures:{1:{name:"keyword.operator.type.composition.swift"}},comment:"Swift 3: A & B",match:"(?<![/=\\-+!*%<>&|\\^~.])(&)(?![/=\\-+!*%<>&|\\^~.])"},{match:"[?!]",name:"keyword.operator.type.optional.swift"},{match:"\\.\\.\\.",name:"keyword.operator.function.variadic-parameter.swift"},{comment:"Swift 2: protocol<A, B>",match:"\\bprotocol\\b",name:"keyword.other.type.composition.swift"},{match:"(?<=\\.)(?:Protocol|Type)\\b",name:"keyword.other.type.metatype.swift"},{include:"#declarations-available-types-tuple-type"},{include:"#declarations-available-types-collection-type"},{include:"#declarations-generic-argument-clause"}]},"declarations-available-types-collection-type":{begin:"\\[",beginCaptures:{0:{name:"punctuation.section.collection-type.begin.swift"}},comment:"array and dictionary types [Value] and [Key: Value]",end:"\\]|(?=[>){}])",endCaptures:{0:{name:"punctuation.section.collection-type.end.swift"}},patterns:[{include:"#declarations-available-types"},{begin:":",beginCaptures:{0:{name:"punctuation.separator.key-value.swift"}},end:"(?=\\]|[>){}])",patterns:[{match:":",name:"invalid.illegal.extra-colon-in-dictionary-type.swift"},{include:"#declarations-available-types"}]}]},"declarations-available-types-tuple-type":{begin:"\\(",beginCaptures:{0:{name:"punctuation.section.tuple-type.begin.swift"}},end:"\\)|(?=[>\\]{}])",endCaptures:{0:{name:"punctuation.section.tuple-type.end.swift"}},patterns:[{include:"#declarations-available-types"}]},"declarations-extension":{begin:"\\b(extension)\\s+((?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>))",beginCaptures:{1:{name:"storage.type.$1.swift"},2:{name:"entity.name.type.swift",patterns:[{include:"#declarations-available-types"}]},3:{name:"punctuation.definition.identifier.swift"},4:{name:"punctuation.definition.identifier.swift"}},end:"(?<=\\})",name:"meta.definition.type.$1.swift",patterns:[{include:"#comments"},{comment:"SE-0143: Conditional Conformances",include:"#declarations-generic-where-clause"},{include:"#declarations-inheritance-clause"},{begin:"\\{",beginCaptures:{0:{name:"punctuation.definition.type.begin.swift"}},end:"\\}",endCaptures:{0:{name:"punctuation.definition.type.end.swift"}},name:"meta.definition.type.body.swift",patterns:[{include:"$self"}]}]},"declarations-function":{begin:"\\b(func)\\s+((?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>)|(?:((?<oph>[/=\\-+!*%<>&|^~?]|[\\x{00A1}-\\x{00A7}]|[\\x{00A9}\\x{00AB}]|[\\x{00AC}\\x{00AE}]|[\\x{00B0}-\\x{00B1}\\x{00B6}\\x{00BB}\\x{00BF}\\x{00D7}\\x{00F7}]|[\\x{2016}-\\x{2017}\\x{2020}-\\x{2027}]|[\\x{2030}-\\x{203E}]|[\\x{2041}-\\x{2053}]|[\\x{2055}-\\x{205E}]|[\\x{2190}-\\x{23FF}]|[\\x{2500}-\\x{2775}]|[\\x{2794}-\\x{2BFF}]|[\\x{2E00}-\\x{2E7F}]|[\\x{3001}-\\x{3003}]|[\\x{3008}-\\x{3030}])(\\g<oph>|(?<opc>[\\x{0300}-\\x{036F}]|[\\x{1DC0}-\\x{1DFF}]|[\\x{20D0}-\\x{20FF}]|[\\x{FE00}-\\x{FE0F}]|[\\x{FE20}-\\x{FE2F}]|[\\x{E0100}-\\x{E01EF}]))*)|(\\.(\\g<oph>|\\g<opc>|\\.)+)))\\s*(?=\\(|<)",beginCaptures:{1:{name:"storage.type.function.swift"},2:{name:"entity.name.function.swift"},3:{name:"punctuation.definition.identifier.swift"},4:{name:"punctuation.definition.identifier.swift"}},end:"(?<=\\})|$",name:"meta.definition.function.swift",patterns:[{include:"#comments"},{include:"#declarations-generic-parameter-clause"},{include:"#declarations-parameter-clause"},{include:"#declarations-function-result"},{include:"#async-throws"},{comment:"Swift 3: generic constraints after the parameters and return type",include:"#declarations-generic-where-clause"},{begin:"(\\{)",beginCaptures:{1:{name:"punctuation.section.function.begin.swift"}},end:"(\\})",endCaptures:{1:{name:"punctuation.section.function.end.swift"}},name:"meta.definition.function.body.swift",patterns:[{include:"$self"}]}]},"declarations-function-initializer":{begin:"(?<!\\.)\\b(init[?!]*)\\s*(?=\\(|<)",beginCaptures:{1:{name:"storage.type.function.swift",patterns:[{match:"(?<=[?!])[?!]+",name:"invalid.illegal.character-not-allowed-here.swift"}]}},end:"(?<=\\})|$",name:"meta.definition.function.initializer.swift",patterns:[{include:"#comments"},{include:"#declarations-generic-parameter-clause"},{include:"#declarations-parameter-clause"},{include:"#async-throws"},{comment:"Swift 3: generic constraints after the parameters and return type",include:"#declarations-generic-where-clause"},{begin:"(\\{)",beginCaptures:{1:{name:"punctuation.section.function.begin.swift"}},end:"(\\})",endCaptures:{1:{name:"punctuation.section.function.end.swift"}},name:"meta.definition.function.body.swift",patterns:[{include:"$self"}]}]},"declarations-function-result":{begin:"(?<![/=\\-+!*%<>&|\\^~.])(->)(?![/=\\-+!*%<>&|\\^~.])\\s*",beginCaptures:{1:{name:"keyword.operator.function-result.swift"}},end:"(?!\\G)(?=\\{|\\bwhere\\b|;|=)|$",name:"meta.function-result.swift",patterns:[{include:"#declarations-available-types"}]},"declarations-function-subscript":{begin:"(?<!\\.)\\b(subscript)\\s*(?=\\(|<)",beginCaptures:{1:{name:"storage.type.function.swift"}},end:"(?<=\\})|$",name:"meta.definition.function.subscript.swift",patterns:[{include:"#comments"},{include:"#declarations-generic-parameter-clause"},{include:"#declarations-parameter-clause"},{include:"#declarations-function-result"},{include:"#async-throws"},{include:"#declarations-generic-where-clause"},{begin:"(\\{)",beginCaptures:{1:{name:"punctuation.section.function.begin.swift"}},end:"(\\})",endCaptures:{1:{name:"punctuation.section.function.end.swift"}},name:"meta.definition.function.body.swift",patterns:[{include:"$self"}]}]},"declarations-generic-argument-clause":{begin:"<",beginCaptures:{0:{name:"punctuation.separator.generic-argument-clause.begin.swift"}},end:">|(?=[)\\]{}])",endCaptures:{0:{name:"punctuation.separator.generic-argument-clause.end.swift"}},name:"meta.generic-argument-clause.swift",patterns:[{include:"#declarations-available-types"}]},"declarations-generic-parameter-clause":{begin:"<",beginCaptures:{0:{name:"punctuation.separator.generic-parameter-clause.begin.swift"}},end:">|(?=[^\\w\\d:<>\\s,=&`])",endCaptures:{0:{name:"punctuation.separator.generic-parameter-clause.end.swift"}},name:"meta.generic-parameter-clause.swift",patterns:[{include:"#comments"},{comment:"Swift 2: constraints inside the generic param list",include:"#declarations-generic-where-clause"},{match:"\\beach\\b",name:"keyword.control.loop.swift"},{captures:{1:{name:"variable.language.generic-parameter.swift"}},match:"\\b((?!\\d)\\w[\\w\\d]*)\\b"},{match:",",name:"punctuation.separator.generic-parameters.swift"},{begin:"(:)\\s*",beginCaptures:{1:{name:"punctuation.separator.generic-parameter-constraint.swift"}},end:"(?=[,>]|(?!\\G)\\bwhere\\b)",name:"meta.generic-parameter-constraint.swift",patterns:[{begin:"\\G",end:"(?=[,>]|(?!\\G)\\bwhere\\b)",name:"entity.other.inherited-class.swift",patterns:[{include:"#declarations-type-identifier"},{include:"#declarations-type-operators"}]}]}]},"declarations-generic-where-clause":{begin:"\\b(where)\\b\\s*",beginCaptures:{1:{name:"keyword.other.generic-constraint-introducer.swift"}},end:"(?!\\G)$|(?=[>{};\\n]|//|/\\*)",name:"meta.generic-where-clause.swift",patterns:[{include:"#comments"},{include:"#declarations-generic-where-clause-requirement-list"}]},"declarations-generic-where-clause-requirement-list":{begin:"\\G|,\\s*",end:"(?=[,>{};\\n]|//|/\\*)",patterns:[{include:"#comments"},{include:"#constraint"},{include:"#declarations-available-types"},{begin:"(?<![/=\\-+!*%<>&|\\^~.])(==)(?![/=\\-+!*%<>&|\\^~.])",beginCaptures:{1:{name:"keyword.operator.generic-constraint.same-type.swift"}},end:"(?=\\s*[,>{};\\n]|//|/\\*)",name:"meta.generic-where-clause.same-type-requirement.swift",patterns:[{include:"#declarations-available-types"}]},{begin:"(?<![/=\\-+!*%<>&|\\^~.])(:)(?![/=\\-+!*%<>&|\\^~.])",beginCaptures:{1:{name:"keyword.operator.generic-constraint.conforms-to.swift"}},end:"(?=\\s*[,>{};\\n]|//|/\\*)",name:"meta.generic-where-clause.conformance-requirement.swift",patterns:[{begin:"\\G\\s*",contentName:"entity.other.inherited-class.swift",end:"(?=\\s*[,>{};\\n]|//|/\\*)",patterns:[{include:"#declarations-available-types"}]}]}]},"declarations-import":{begin:"(?<!\\.)\\b(import)\\s+",beginCaptures:{1:{name:"keyword.control.import.swift"}},end:"(;)|$\\n?|(?=//|/\\*)",endCaptures:{1:{name:"punctuation.terminator.statement.swift"}},name:"meta.import.swift",patterns:[{begin:"\\G(?!;|$|//|/\\*)(?:(typealias|struct|class|actor|enum|protocol|var|func)\\s+)?",beginCaptures:{1:{name:"storage.modifier.swift"}},end:"(?=;|$|//|/\\*)",patterns:[{captures:{1:{name:"punctuation.definition.identifier.swift"},2:{name:"punctuation.definition.identifier.swift"}},match:"(?<=\\G|\\.)(?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>)",name:"entity.name.type.swift"},{match:"(?<=\\G|\\.)\\$\\d+",name:"entity.name.type.swift"},{captures:{1:{patterns:[{match:"\\.",name:"invalid.illegal.dot-not-allowed-here.swift"}]}},match:"(?<=\\G|\\.)(?:((?<oph>[/=\\-+!*%<>&|^~?]|[\\x{00A1}-\\x{00A7}]|[\\x{00A9}\\x{00AB}]|[\\x{00AC}\\x{00AE}]|[\\x{00B0}-\\x{00B1}\\x{00B6}\\x{00BB}\\x{00BF}\\x{00D7}\\x{00F7}]|[\\x{2016}-\\x{2017}\\x{2020}-\\x{2027}]|[\\x{2030}-\\x{203E}]|[\\x{2041}-\\x{2053}]|[\\x{2055}-\\x{205E}]|[\\x{2190}-\\x{23FF}]|[\\x{2500}-\\x{2775}]|[\\x{2794}-\\x{2BFF}]|[\\x{2E00}-\\x{2E7F}]|[\\x{3001}-\\x{3003}]|[\\x{3008}-\\x{3030}])(\\g<oph>|(?<opc>[\\x{0300}-\\x{036F}]|[\\x{1DC0}-\\x{1DFF}]|[\\x{20D0}-\\x{20FF}]|[\\x{FE00}-\\x{FE0F}]|[\\x{FE20}-\\x{FE2F}]|[\\x{E0100}-\\x{E01EF}]))*)|(\\.(\\g<oph>|\\g<opc>|\\.)+))(?=\\.|;|$|//|/\\*|\\s)",name:"entity.name.type.swift"},{match:"\\.",name:"punctuation.separator.import.swift"},{begin:"(?!\\s*(;|$|//|/\\*))",end:"(?=\\s*(;|$|//|/\\*))",name:"invalid.illegal.character-not-allowed-here.swift"}]}]},"declarations-inheritance-clause":{begin:"(:)(?=\\s*\\{)|(:)\\s*",beginCaptures:{1:{name:"invalid.illegal.empty-inheritance-clause.swift"},2:{name:"punctuation.separator.inheritance-clause.swift"}},end:"(?!\\G)$|(?=[={}]|(?!\\G)\\bwhere\\b)",name:"meta.inheritance-clause.swift",patterns:[{begin:"\\bclass\\b",beginCaptures:{0:{name:"storage.type.class.swift"}},end:"(?=[={}]|(?!\\G)\\bwhere\\b)",patterns:[{include:"#comments"},{include:"#declarations-inheritance-clause-more-types"}]},{begin:"\\G",end:"(?!\\G)$|(?=[={}]|(?!\\G)\\bwhere\\b)",patterns:[{include:"#comments"},{include:"#declarations-inheritance-clause-inherited-type"},{include:"#declarations-inheritance-clause-more-types"},{include:"#declarations-type-operators"}]}]},"declarations-inheritance-clause-inherited-type":{begin:"(?=[`\\p{L}_])",end:"(?!\\G)",name:"entity.other.inherited-class.swift",patterns:[{include:"#declarations-type-identifier"}]},"declarations-inheritance-clause-more-types":{begin:",\\s*",end:"(?!\\G)(?!//|/\\*)|(?=[,={}]|(?!\\G)\\bwhere\\b)",name:"meta.inheritance-list.more-types",patterns:[{include:"#comments"},{include:"#declarations-inheritance-clause-inherited-type"},{include:"#declarations-inheritance-clause-more-types"},{include:"#declarations-type-operators"}]},"declarations-macro":{begin:"\\b(macro)\\s+((?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>))\\s*(?=\\(|<|=)",beginCaptures:{1:{name:"storage.type.function.swift"},2:{name:"entity.name.function.swift"},3:{name:"punctuation.definition.identifier.swift"},4:{name:"punctuation.definition.identifier.swift"}},end:"$|(?=;|//|/\\*|\\}|=)",name:"meta.definition.macro.swift",patterns:[{include:"#comments"},{include:"#declarations-generic-parameter-clause"},{include:"#declarations-parameter-clause"},{include:"#declarations-function-result"},{include:"#async-throws"},{comment:"Swift 3: generic constraints after the parameters and return type",include:"#declarations-generic-where-clause"}]},"declarations-operator":{begin:"(?:\\b(prefix|infix|postfix)\\s+)?\\b(operator)\\s+(((?<oph>[/=\\-+!*%<>&|^~?]|[\\x{00A1}-\\x{00A7}]|[\\x{00A9}\\x{00AB}]|[\\x{00AC}\\x{00AE}]|[\\x{00B0}-\\x{00B1}\\x{00B6}\\x{00BB}\\x{00BF}\\x{00D7}\\x{00F7}]|[\\x{2016}-\\x{2017}\\x{2020}-\\x{2027}]|[\\x{2030}-\\x{203E}]|[\\x{2041}-\\x{2053}]|[\\x{2055}-\\x{205E}]|[\\x{2190}-\\x{23FF}]|[\\x{2500}-\\x{2775}]|[\\x{2794}-\\x{2BFF}]|[\\x{2E00}-\\x{2E7F}]|[\\x{3001}-\\x{3003}]|[\\x{3008}-\\x{3030}])(\\g<oph>|\\.|(?<opc>[\\x{0300}-\\x{036F}]|[\\x{1DC0}-\\x{1DFF}]|[\\x{20D0}-\\x{20FF}]|[\\x{FE00}-\\x{FE0F}]|[\\x{FE20}-\\x{FE2F}]|[\\x{E0100}-\\x{E01EF}]))*+)|(\\.(\\g<oph>|\\g<opc>|\\.)++))\\s*",beginCaptures:{1:{name:"storage.modifier.swift"},2:{name:"storage.type.function.operator.swift"},3:{name:"entity.name.function.operator.swift"},4:{comment:"workaround for https://github.com/microsoft/vscode-textmate/issues/140#issuecomment-1793610346",name:"entity.name.function.operator.swift",patterns:[{match:"\\.",name:"invalid.illegal.dot-not-allowed-here.swift"}]}},end:"(;)|$\\n?|(?=//|/\\*)",endCaptures:{1:{name:"punctuation.terminator.statement.swift"}},name:"meta.definition.operator.swift",patterns:[{include:"#declarations-operator-swift2"},{include:"#declarations-operator-swift3"},{match:"((?!$|;|//|/\\*)\\S)+",name:"invalid.illegal.character-not-allowed-here.swift"}]},"declarations-operator-swift2":{begin:"\\G(\\{)",beginCaptures:{1:{name:"punctuation.definition.operator.begin.swift"}},end:"(\\})",endCaptures:{1:{name:"punctuation.definition.operator.end.swift"}},patterns:[{include:"#comments"},{captures:{1:{name:"storage.modifier.swift"},2:{name:"keyword.other.operator.associativity.swift"}},match:"\\b(associativity)\\s+(left|right)\\b"},{captures:{1:{name:"storage.modifier.swift"},2:{name:"constant.numeric.integer.swift"}},match:"\\b(precedence)\\s+(\\d+)\\b"},{captures:{1:{name:"storage.modifier.swift"}},match:"\\b(assignment)\\b"}]},"declarations-operator-swift3":{captures:{2:{name:"entity.other.inherited-class.swift",patterns:[{include:"#declarations-types-precedencegroup"}]},3:{name:"punctuation.definition.identifier.swift"},4:{name:"punctuation.definition.identifier.swift"}},match:"\\G(:)\\s*((?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>))"},"declarations-parameter-clause":{begin:"(\\()",beginCaptures:{1:{name:"punctuation.definition.parameters.begin.swift"}},end:"(\\))(?:\\s*(async)\\b)?",endCaptures:{1:{name:"punctuation.definition.parameters.end.swift"},2:{name:"storage.modifier.async.swift"}},name:"meta.parameter-clause.swift",patterns:[{include:"#declarations-parameter-list"}]},"declarations-parameter-list":{patterns:[{captures:{1:{name:"entity.name.function.swift"},2:{name:"punctuation.definition.identifier.swift"},3:{name:"punctuation.definition.identifier.swift"},4:{name:"variable.parameter.function.swift"},5:{name:"punctuation.definition.identifier.swift"},6:{name:"punctuation.definition.identifier.swift"}},comment:"External parameter labels are considered part of the function name",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*:)"},{captures:{1:{name:"variable.parameter.function.swift"},2:{name:"entity.name.function.swift"},3:{name:"punctuation.definition.identifier.swift"},4:{name:"punctuation.definition.identifier.swift"}},comment:"If no external label is given, the name is both the external label and the internal variable name",match:"(((?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>)))(?=\\s*:)"},{begin:":\\s*(?!\\s)",end:"(?=[,)])",patterns:[{include:"#declarations-available-types"},{match:":",name:"invalid.illegal.extra-colon-in-parameter-list.swift"},{begin:"=",beginCaptures:{0:{name:"keyword.operator.assignment.swift"}},comment:"a parameter's default value",end:"(?=[,)])",patterns:[{include:"#expressions"}]}]}]},"declarations-precedencegroup":{begin:"\\b(precedencegroup)\\s+((?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>))\\s*(?=\\{)",beginCaptures:{1:{name:"storage.type.precedencegroup.swift"},2:{name:"entity.name.type.precedencegroup.swift"},3:{name:"punctuation.definition.identifier.swift"},4:{name:"punctuation.definition.identifier.swift"}},end:"(?!\\G)",name:"meta.definition.precedencegroup.swift",patterns:[{begin:"\\{",beginCaptures:{0:{name:"punctuation.definition.precedencegroup.begin.swift"}},end:"\\}",endCaptures:{0:{name:"punctuation.definition.precedencegroup.end.swift"}},patterns:[{include:"#comments"},{captures:{1:{name:"storage.modifier.swift"},2:{name:"entity.other.inherited-class.swift",patterns:[{include:"#declarations-types-precedencegroup"}]},3:{name:"punctuation.definition.identifier.swift"},4:{name:"punctuation.definition.identifier.swift"}},match:"\\b(higherThan|lowerThan)\\s*:\\s*((?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>))"},{captures:{1:{name:"storage.modifier.swift"},2:{name:"keyword.other.operator.associativity.swift"}},match:"\\b(associativity)\\b(?:\\s*:\\s*(right|left|none)\\b)?"},{captures:{1:{name:"storage.modifier.swift"},2:{name:"constant.language.boolean.swift"}},match:"\\b(assignment)\\b(?:\\s*:\\s*(true|false)\\b)?"}]}]},"declarations-protocol":{begin:"\\b(protocol)\\s+((?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>))",beginCaptures:{1:{name:"storage.type.$1.swift"},2:{name:"entity.name.type.$1.swift"},3:{name:"punctuation.definition.identifier.swift"},4:{name:"punctuation.definition.identifier.swift"}},end:"(?<=\\})",name:"meta.definition.type.protocol.swift",patterns:[{include:"#comments"},{include:"#declarations-inheritance-clause"},{comment:"SE-0142: Permit where clauses to constrain associated types",include:"#declarations-generic-where-clause"},{begin:"\\{",beginCaptures:{0:{name:"punctuation.definition.type.begin.swift"}},end:"\\}",endCaptures:{0:{name:"punctuation.definition.type.end.swift"}},name:"meta.definition.type.body.swift",patterns:[{include:"#declarations-protocol-protocol-method"},{include:"#declarations-protocol-protocol-initializer"},{include:"#declarations-protocol-associated-type"},{include:"$self"}]}]},"declarations-protocol-associated-type":{begin:"\\b(associatedtype)\\s+((?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>))\\s*",beginCaptures:{1:{name:"keyword.other.declaration-specifier.swift"},2:{name:"variable.language.associatedtype.swift"},3:{name:"punctuation.definition.identifier.swift"},4:{name:"punctuation.definition.identifier.swift"}},end:"(?!\\G)$|(?=[;}]|$)",name:"meta.definition.associatedtype.swift",patterns:[{include:"#declarations-inheritance-clause"},{comment:"SE-0142: Permit where clauses to constrain associated types",include:"#declarations-generic-where-clause"},{include:"#declarations-typealias-assignment"}]},"declarations-protocol-protocol-initializer":{begin:"(?<!\\.)\\b(init[?!]*)\\s*(?=\\(|<)",beginCaptures:{1:{name:"storage.type.function.swift",patterns:[{match:"(?<=[?!])[?!]+",name:"invalid.illegal.character-not-allowed-here.swift"}]}},end:"$|(?=;|//|/\\*|\\})",name:"meta.definition.function.initializer.swift",patterns:[{include:"#comments"},{include:"#declarations-generic-parameter-clause"},{include:"#declarations-parameter-clause"},{include:"#async-throws"},{comment:"Swift 3: generic constraints after the parameters and return type",include:"#declarations-generic-where-clause"},{begin:"\\{",beginCaptures:{0:{name:"punctuation.section.function.begin.swift"}},end:"\\}",endCaptures:{0:{name:"punctuation.section.function.end.swift"}},name:"invalid.illegal.function-body-not-allowed-in-protocol.swift",patterns:[{include:"$self"}]}]},"declarations-protocol-protocol-method":{begin:"\\b(func)\\s+((?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>)|(?:((?<oph>[/=\\-+!*%<>&|^~?]|[\\x{00A1}-\\x{00A7}]|[\\x{00A9}\\x{00AB}]|[\\x{00AC}\\x{00AE}]|[\\x{00B0}-\\x{00B1}\\x{00B6}\\x{00BB}\\x{00BF}\\x{00D7}\\x{00F7}]|[\\x{2016}-\\x{2017}\\x{2020}-\\x{2027}]|[\\x{2030}-\\x{203E}]|[\\x{2041}-\\x{2053}]|[\\x{2055}-\\x{205E}]|[\\x{2190}-\\x{23FF}]|[\\x{2500}-\\x{2775}]|[\\x{2794}-\\x{2BFF}]|[\\x{2E00}-\\x{2E7F}]|[\\x{3001}-\\x{3003}]|[\\x{3008}-\\x{3030}])(\\g<oph>|(?<opc>[\\x{0300}-\\x{036F}]|[\\x{1DC0}-\\x{1DFF}]|[\\x{20D0}-\\x{20FF}]|[\\x{FE00}-\\x{FE0F}]|[\\x{FE20}-\\x{FE2F}]|[\\x{E0100}-\\x{E01EF}]))*)|(\\.(\\g<oph>|\\g<opc>|\\.)+)))\\s*(?=\\(|<)",beginCaptures:{1:{name:"storage.type.function.swift"},2:{name:"entity.name.function.swift"},3:{name:"punctuation.definition.identifier.swift"},4:{name:"punctuation.definition.identifier.swift"}},end:"$|(?=;|//|/\\*|\\})",name:"meta.definition.function.swift",patterns:[{include:"#comments"},{include:"#declarations-generic-parameter-clause"},{include:"#declarations-parameter-clause"},{include:"#declarations-function-result"},{include:"#async-throws"},{comment:"Swift 3: generic constraints after the parameters and return type",include:"#declarations-generic-where-clause"},{begin:"\\{",beginCaptures:{0:{name:"punctuation.section.function.begin.swift"}},end:"\\}",endCaptures:{0:{name:"punctuation.section.function.end.swift"}},name:"invalid.illegal.function-body-not-allowed-in-protocol.swift",patterns:[{include:"$self"}]}]},"declarations-type":{patterns:[{begin:"\\b(class(?!\\s+(?:func|var|let)\\b)|struct|actor)\\b\\s*((?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>))",beginCaptures:{1:{name:"storage.type.$1.swift"},2:{name:"entity.name.type.$1.swift"},3:{name:"punctuation.definition.identifier.swift"},4:{name:"punctuation.definition.identifier.swift"}},end:"(?<=\\})",name:"meta.definition.type.$1.swift",patterns:[{include:"#comments"},{include:"#declarations-generic-parameter-clause"},{comment:"Swift 3: generic constraints after the generic param list",include:"#declarations-generic-where-clause"},{include:"#declarations-inheritance-clause"},{begin:"\\{",beginCaptures:{0:{name:"punctuation.definition.type.begin.swift"}},end:"\\}",endCaptures:{0:{name:"punctuation.definition.type.end.swift"}},name:"meta.definition.type.body.swift",patterns:[{include:"$self"}]}]},{include:"#declarations-type-enum"}]},"declarations-type-enum":{begin:"\\b(enum)\\s+((?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>))",beginCaptures:{1:{name:"storage.type.$1.swift"},2:{name:"entity.name.type.$1.swift"},3:{name:"punctuation.definition.identifier.swift"},4:{name:"punctuation.definition.identifier.swift"}},end:"(?<=\\})",name:"meta.definition.type.$1.swift",patterns:[{include:"#comments"},{include:"#declarations-generic-parameter-clause"},{comment:"Swift 3: generic constraints after the generic param list",include:"#declarations-generic-where-clause"},{include:"#declarations-inheritance-clause"},{begin:"\\{",beginCaptures:{0:{name:"punctuation.definition.type.begin.swift"}},end:"\\}",endCaptures:{0:{name:"punctuation.definition.type.end.swift"}},name:"meta.definition.type.body.swift",patterns:[{include:"#declarations-type-enum-enum-case-clause"},{include:"$self"}]}]},"declarations-type-enum-associated-values":{begin:"\\G\\(",beginCaptures:{0:{name:"punctuation.definition.parameters.begin.swift"}},end:"\\)",endCaptures:{0:{name:"punctuation.definition.parameters.end.swift"}},patterns:[{include:"#comments"},{begin:"(?:(_)|((?<q1>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*\\k<q1>))\\s+(((?<q2>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*\\k<q2>))\\s*(:)",beginCaptures:{1:{name:"entity.name.function.swift"},2:{name:"invalid.illegal.distinct-labels-not-allowed.swift"},5:{name:"variable.parameter.function.swift"},7:{name:"punctuation.separator.argument-label.swift"}},end:"(?=[,)\\]])",patterns:[{include:"#declarations-available-types"}]},{begin:"(((?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*\\k<q>))\\s*(:)",beginCaptures:{1:{name:"entity.name.function.swift"},2:{name:"variable.parameter.function.swift"},4:{name:"punctuation.separator.argument-label.swift"}},end:"(?=[,)\\]])",patterns:[{include:"#declarations-available-types"}]},{begin:"(?![,)\\]])(?=\\S)",comment:"an element without a label (i.e. anything else)",end:"(?=[,)\\]])",patterns:[{include:"#declarations-available-types"},{match:":",name:"invalid.illegal.extra-colon-in-parameter-list.swift"}]}]},"declarations-type-enum-enum-case":{begin:"((?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>))\\s*",beginCaptures:{1:{name:"variable.other.enummember.swift"}},end:"(?<=\\))|(?![=(])",patterns:[{include:"#comments"},{include:"#declarations-type-enum-associated-values"},{include:"#declarations-type-enum-raw-value-assignment"}]},"declarations-type-enum-enum-case-clause":{begin:"\\b(case)\\b\\s*",beginCaptures:{1:{name:"storage.type.enum.case.swift"}},end:"(?=[;}])|(?!\\G)(?!//|/\\*)(?=[^\\s,])",patterns:[{include:"#comments"},{include:"#declarations-type-enum-enum-case"},{include:"#declarations-type-enum-more-cases"}]},"declarations-type-enum-more-cases":{begin:",\\s*",end:"(?!\\G)(?!//|/\\*)(?=[;}]|[^\\s,])",name:"meta.enum-case.more-cases",patterns:[{include:"#comments"},{include:"#declarations-type-enum-enum-case"},{include:"#declarations-type-enum-more-cases"}]},"declarations-type-enum-raw-value-assignment":{begin:"(=)\\s*",beginCaptures:{1:{name:"keyword.operator.assignment.swift"}},end:"(?!\\G)",patterns:[{include:"#comments"},{include:"#literals"}]},"declarations-type-identifier":{begin:"((?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>))\\s*",beginCaptures:{1:{name:"meta.type-name.swift",patterns:[{include:"#builtin-types"}]},2:{name:"punctuation.definition.identifier.swift"},3:{name:"punctuation.definition.identifier.swift"}},end:"(?!<)",patterns:[{begin:"(?=<)",end:"(?!\\G)",patterns:[{include:"#declarations-generic-argument-clause"}]}]},"declarations-type-operators":{patterns:[{captures:{1:{name:"keyword.operator.type.composition.swift"}},comment:"Swift 3: A & B",match:"(?<![/=\\-+!*%<>&|\\^~.])(&)(?![/=\\-+!*%<>&|\\^~.])"},{captures:{1:{name:"keyword.operator.type.requirement-suppression.swift"}},comment:"SE-0390: Noncopyable structs and enums",match:"(?<![/=\\-+!*%<>&|\\^~.])(~)(?![/=\\-+!*%<>&|\\^~.])"}]},"declarations-typealias":{begin:"\\b(typealias)\\s+((?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>))\\s*",beginCaptures:{1:{name:"keyword.other.declaration-specifier.swift"},2:{name:"entity.name.type.typealias.swift"},3:{name:"punctuation.definition.identifier.swift"},4:{name:"punctuation.definition.identifier.swift"}},end:"(?!\\G)$|(?=;|//|/\\*|$)",name:"meta.definition.typealias.swift",patterns:[{begin:"\\G(?=<)",end:"(?!\\G)",patterns:[{include:"#declarations-generic-parameter-clause"}]},{include:"#declarations-typealias-assignment"}]},"declarations-typealias-assignment":{begin:"(=)\\s*",beginCaptures:{1:{name:"keyword.operator.assignment.swift"}},end:"(?!\\G)$|(?=;|//|/\\*|$)",patterns:[{include:"#declarations-available-types"}]},"declarations-typed-variable-declaration":{begin:"\\b(?:(async)\\s+)?(let|var)\\b\\s+(?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>)\\s*:",beginCaptures:{1:{name:"storage.modifier.async.swift"},2:{name:"keyword.other.declaration-specifier.swift"}},end:"(?=$|[={])",patterns:[{include:"#declarations-available-types"}]},"declarations-types-precedencegroup":{patterns:[{comment:"Precedence groups in the standard library",match:"\\b(?:BitwiseShift|Assignment|RangeFormation|Casting|Addition|NilCoalescing|Comparison|LogicalConjunction|LogicalDisjunction|Default|Ternary|Multiplication|FunctionArrow)Precedence\\b",name:"support.type.swift"}]},expressions:{comment:"trailing closures need to be parsed before other member references",patterns:[{include:"#expressions-without-trailing-closures-or-member-references"},{include:"#expressions-trailing-closure"},{include:"#member-reference"}]},"expressions-trailing-closure":{patterns:[{captures:{1:{name:"support.function.any-method.swift"},2:{name:"punctuation.definition.identifier.swift"},3:{name:"punctuation.definition.identifier.swift"}},comment:"foo { body } -- a call with a trailing closure and no argument clause",match:"(#?(?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>))(?=\\s*\\{)",name:"meta.function-call.trailing-closure-only.swift"},{captures:{1:{name:"support.function.any-method.trailing-closure-label.swift"},2:{name:"punctuation.definition.identifier.swift"},3:{name:"punctuation.definition.identifier.swift"},4:{name:"punctuation.separator.argument-label.swift"}},comment:"foo: { body } -- labeled-trailing-closure (SE-0279)",match:"((?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>))\\s*(:)(?=\\s*\\{)"}]},"expressions-without-trailing-closures":{patterns:[{include:"#expressions-without-trailing-closures-or-member-references"},{include:"#member-references"}]},"expressions-without-trailing-closures-or-member-references":{patterns:[{include:"#comments"},{include:"#code-block"},{include:"#attributes"},{include:"#expressions-without-trailing-closures-or-member-references-closure-parameter"},{include:"#literals"},{include:"#operators"},{include:"#builtin-types"},{include:"#builtin-functions"},{include:"#builtin-global-functions"},{include:"#builtin-properties"},{include:"#expressions-without-trailing-closures-or-member-references-compound-name"},{include:"#conditionals"},{include:"#keywords"},{include:"#expressions-without-trailing-closures-or-member-references-availability-condition"},{include:"#expressions-without-trailing-closures-or-member-references-function-or-macro-call-expression"},{include:"#expressions-without-trailing-closures-or-member-references-macro-expansion"},{include:"#expressions-without-trailing-closures-or-member-references-subscript-expression"},{include:"#expressions-without-trailing-closures-or-member-references-parenthesized-expression"},{match:"\\b_\\b",name:"support.variable.discard-value.swift"}]},"expressions-without-trailing-closures-or-member-references-availability-condition":{begin:"\\B(#(?:un)?available)(\\()",beginCaptures:{1:{name:"support.function.availability-condition.swift"},2:{name:"punctuation.definition.arguments.begin.swift"}},end:"\\)",endCaptures:{0:{name:"punctuation.definition.arguments.end.swift"}},patterns:[{captures:{1:{name:"keyword.other.platform.os.swift"},2:{name:"constant.numeric.swift"}},match:"\\s*\\b((?:iOS|macOS|OSX|watchOS|tvOS|visionOS|UIKitForMac)(?:ApplicationExtension)?)\\b(?:\\s+(\\d+(?:\\.\\d+)*\\b))"},{captures:{1:{name:"keyword.other.platform.all.swift"},2:{name:"invalid.illegal.character-not-allowed-here.swift"}},match:"(\\*)\\s*(.*?)(?=[,)])"},{match:"[^\\s,)]+",name:"invalid.illegal.character-not-allowed-here.swift"}]},"expressions-without-trailing-closures-or-member-references-closure-parameter":{match:"\\$\\d+",name:"variable.language.closure-parameter.swift"},"expressions-without-trailing-closures-or-member-references-compound-name":{captures:{1:{name:"entity.name.function.compound-name.swift"},2:{name:"punctuation.definition.entity.swift"},3:{name:"punctuation.definition.entity.swift"},4:{patterns:[{captures:{1:{name:"punctuation.definition.entity.swift"},2:{name:"punctuation.definition.entity.swift"}},match:"(?<q>`?)(?!_:)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>):",name:"entity.name.function.compound-name.swift"}]}},comment:"a reference to a function with disambiguating argument labels, such as foo(_:), foo(bar:), etc.",match:"((?<q1>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q1>))\\(((((?<q2>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q2>)):)+)\\)"},"expressions-without-trailing-closures-or-member-references-expression-element-list":{patterns:[{include:"#comments"},{begin:"((?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>))\\s*(:)",beginCaptures:{1:{name:"support.function.any-method.swift"},2:{name:"punctuation.definition.identifier.swift"},3:{name:"punctuation.definition.identifier.swift"},4:{name:"punctuation.separator.argument-label.swift"}},comment:"an element with a label",end:"(?=[,)\\]])",patterns:[{include:"#expressions"}]},{begin:"(?![,)\\]])(?=\\S)",comment:"an element without a label (i.e. anything else)",end:"(?=[,)\\]])",patterns:[{include:"#expressions"}]}]},"expressions-without-trailing-closures-or-member-references-function-or-macro-call-expression":{patterns:[{begin:"(#?(?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>))\\s*(\\()",beginCaptures:{1:{name:"support.function.any-method.swift"},2:{name:"punctuation.definition.identifier.swift"},3:{name:"punctuation.definition.identifier.swift"},4:{name:"punctuation.definition.arguments.begin.swift"}},comment:"foo(args) -- a call whose callee is a highlightable name",end:"\\)",endCaptures:{0:{name:"punctuation.definition.arguments.end.swift"}},name:"meta.function-call.swift",patterns:[{include:"#expressions-without-trailing-closures-or-member-references-expression-element-list"}]},{begin:"(?<=[`\\])}>\\p{L}_\\p{N}\\p{M}])\\s*(\\()",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.swift"}},comment:"[Int](args) -- a call whose callee is a more complicated expression",end:"\\)",endCaptures:{0:{name:"punctuation.definition.arguments.end.swift"}},name:"meta.function-call.swift",patterns:[{include:"#expressions-without-trailing-closures-or-member-references-expression-element-list"}]}]},"expressions-without-trailing-closures-or-member-references-macro-expansion":{match:"(#(?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>))",name:"support.function.any-method.swift"},"expressions-without-trailing-closures-or-member-references-parenthesized-expression":{begin:"\\(",beginCaptures:{0:{name:"punctuation.section.tuple.begin.swift"}},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',end:"(\\))\\s*((?:\\b(?:async|throws|rethrows)\\s)*)",endCaptures:{1:{name:"punctuation.section.tuple.end.swift"},2:{patterns:[{match:"\\brethrows\\b",name:"invalid.illegal.rethrows-only-allowed-on-function-declarations.swift"},{include:"#async-throws"}]}},patterns:[{include:"#expressions-without-trailing-closures-or-member-references-expression-element-list"}]},"expressions-without-trailing-closures-or-member-references-subscript-expression":{begin:"(?<=[`\\p{L}_\\p{N}\\p{M}])\\s*(\\[)",beginCaptures:{1:{name:"punctuation.definition.arguments.begin.swift"}},end:"\\]",endCaptures:{0:{name:"punctuation.definition.arguments.end.swift"}},name:"meta.subscript-expression.swift",patterns:[{include:"#expressions-without-trailing-closures-or-member-references-expression-element-list"}]},keywords:{patterns:[{match:"(?<!\\.)\\b(?:if|else|guard|where|switch|case|default|fallthrough)\\b",name:"keyword.control.branch.swift"},{match:"(?<!\\.)\\b(?:continue|break|fallthrough|return)\\b",name:"keyword.control.transfer.swift"},{match:"(?<!\\.)\\b(?:while|for|in|each)\\b",name:"keyword.control.loop.swift"},{match:"\\bany\\b(?=\\s*`?[\\p{L}_])",name:"keyword.other.operator.type.existential.swift"},{captures:{1:{name:"keyword.control.loop.swift"},2:{name:"punctuation.whitespace.trailing.repeat.swift"}},comment:"extra scopes for repeat-while snippet",match:"(?<!\\.)\\b(repeat)\\b(\\s*)"},{match:"(?<!\\.)\\bdefer\\b",name:"keyword.control.defer.swift"},{captures:{1:{name:"invalid.illegal.try-must-precede-await.swift"},2:{name:"keyword.control.await.swift"}},match:"(?<!\\.)\\b(?:(await\\s+try)|(await))\\b"},{match:"(?<!\\.)\\b(?:catch|throw|try)\\b|\\btry[?!]\\B",name:"keyword.control.exception.swift"},{match:"(?<!\\.)\\b(?:throws|rethrows)\\b",name:"storage.modifier.exception.swift"},{captures:{1:{name:"keyword.control.exception.swift"},2:{name:"punctuation.whitespace.trailing.do.swift"}},comment:"extra scopes for do-catch snippet",match:"(?<!\\.)\\b(do)\\b(\\s*)"},{captures:{1:{name:"storage.modifier.async.swift"},2:{name:"keyword.other.declaration-specifier.swift"}},match:"(?<!\\.)\\b(?:(async)\\s+)?(let|var)\\b"},{match:"(?<!\\.)\\b(?:associatedtype|operator|typealias)\\b",name:"keyword.other.declaration-specifier.swift"},{match:"(?<!\\.)\\b(class|enum|extension|precedencegroup|protocol|struct|actor)\\b(?=\\s*`?[\\p{L}_])",name:"storage.type.$1.swift"},{match:"(?<!\\.)\\b(?:inout|static|final|lazy|mutating|nonmutating|optional|indirect|required|override|dynamic|convenience|infix|prefix|postfix|distributed|nonisolated|borrowing|consuming)\\b",name:"storage.modifier.swift"},{match:"\\binit[?!]|\\binit\\b|(?<!\\.)\\b(?:func|deinit|subscript|didSet|get|set|willSet)\\b",name:"storage.type.function.swift"},{match:"(?<!\\.)\\b(?:fileprivate|private|internal|public|open|package)\\b",name:"keyword.other.declaration-specifier.accessibility.swift"},{comment:"matches weak, unowned, unowned(safe), unowned(unsafe)",match:"(?<!\\.)\\bunowned\\((?:safe|unsafe)\\)|(?<!\\.)\\b(?:weak|unowned)\\b",name:"keyword.other.capture-specifier.swift"},{captures:{1:{name:"keyword.other.type.swift"},2:{name:"keyword.other.type.metatype.swift"}},match:"(?<=\\.)(?:(dynamicType|self)|(Protocol|Type))\\b"},{match:"(?<!\\.)\\b(?:super|self|Self)\\b",name:"variable.language.swift"},{match:"\\B(?:#file|#filePath|#fileID|#line|#column|#function|#dsohandle)\\b|\\b(?:__FILE__|__LINE__|__COLUMN__|__FUNCTION__|__DSO_HANDLE__)\\b",name:"support.variable.swift"},{match:"(?<!\\.)\\bimport\\b",name:"keyword.control.import.swift"},{comment:'SE-0366: "consume behaves as a contextual keyword. In order to avoid interfering with existing code that calls functions named consume, the operand to consume must begin with another identifier, and must consist of an identifier or postfix expression"',match:"(?<!\\.)\\bconsume(?=\\s+`?[\\p{L}_])",name:"keyword.control.consume.swift"},{comment:'SE-0377: "copy is a contextual keyword, parsed as an operator if it is immediately followed by an identifier on the same line, like the consume x operator before it"',match:"(?<!\\.)\\bcopy(?=\\s+`?[\\p{L}_])",name:"keyword.control.copy.swift"}]},literals:{patterns:[{include:"#literals-boolean"},{include:"#literals-numeric"},{include:"#literals-string"},{match:"\\bnil\\b",name:"constant.language.nil.swift"},{comment:'object "literals" used in playgrounds',match:"\\B#(colorLiteral|imageLiteral|fileLiteral)\\b",name:"support.function.object-literal.swift"},{match:"\\B#externalMacro\\b",name:"support.function.builtin-macro.swift"},{match:"\\B#keyPath\\b",name:"support.function.key-path.swift"},{begin:"\\B(#selector)(\\()(?:\\s*(getter|setter)\\s*(:))?",beginCaptures:{1:{name:"support.function.selector-reference.swift"},2:{name:"punctuation.definition.arguments.begin.swift"},3:{name:"support.variable.parameter.swift"},4:{name:"punctuation.separator.argument-label.swift"}},end:"\\)",endCaptures:{0:{name:"punctuation.definition.arguments.end.swift"}},patterns:[{include:"#expressions"}]},{include:"#literals-regular-expression-literal"}]},"literals-boolean":{match:"\\b(true|false)\\b",name:"constant.language.boolean.swift"},"literals-numeric":{patterns:[{comment:"0.1, -4_2.5, 6.022e23, 10E-5",match:"(\\B-|\\b)(?<![\\[\\](){}\\p{L}_\\p{N}\\p{M}]\\.)\\d[0-9_]*(?=\\.\\d|[eE])(?:\\.\\d[0-9_]*)?(?:[eE][-+]?\\d[0-9_]*)?\\b(?!\\.\\d)",name:"constant.numeric.float.decimal.swift"},{comment:"-0x1.ap2_3, 0x31p-4",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][-+]?\\d[0-9_]*\\b(?!\\.\\d)",name:"constant.numeric.float.hexadecimal.swift"},{comment:"0x1p, 0x1p_2, 0x1.5pa, 0x1.1p+1f, 0x1pz",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(?!\\.\\d)",name:"invalid.illegal.numeric.float.invalid-exponent.swift"},{comment:"0x1.5w (note that 0x1.f may be a valid expression)",match:"(\\B-|\\b)(?<![\\[\\](){}\\p{L}_\\p{N}\\p{M}]\\.)(0x[0-9a-fA-F][0-9a-fA-F_]*)\\.\\d[\\w.]*",name:"invalid.illegal.numeric.float.missing-exponent.swift"},{comment:"-.5, .2f (note that 1.-.5 may be a valid expression)",match:"(?<=\\s|^)-?\\.\\d[\\w.]*",name:"invalid.illegal.numeric.float.missing-leading-zero.swift"},{comment:"0b_0_1, 0x_1p+3q",match:"(\\B-|\\b)0[box]_[0-9a-fA-F_]*(?:[pPeE][+-]?\\w+)?[\\w.]+",name:"invalid.illegal.numeric.leading-underscore.swift"},{comment:"tuple positional member: not really a numeric literal, but not invalid",match:"(?<=[\\[\\](){}\\p{L}_\\p{N}\\p{M}]\\.)\\d+\\b"},{comment:"0b010, 0b1_0",match:"(\\B-|\\b)(?<![\\[\\](){}\\p{L}_\\p{N}\\p{M}]\\.)0b[01][01_]*\\b(?!\\.\\d)",name:"constant.numeric.integer.binary.swift"},{comment:"0o1, 0o7_3",match:"(\\B-|\\b)(?<![\\[\\](){}\\p{L}_\\p{N}\\p{M}]\\.)0o[0-7][0-7_]*\\b(?!\\.\\d)",name:"constant.numeric.integer.octal.swift"},{comment:"02, 3_456",match:"(\\B-|\\b)(?<![\\[\\](){}\\p{L}_\\p{N}\\p{M}]\\.)\\d[0-9_]*\\b(?!\\.\\d)",name:"constant.numeric.integer.decimal.swift"},{comment:"0x4, 0xF_7",match:"(\\B-|\\b)(?<![\\[\\](){}\\p{L}_\\p{N}\\p{M}]\\.)0x[0-9a-fA-F][0-9a-fA-F_]*\\b(?!\\.\\d)",name:"constant.numeric.integer.hexadecimal.swift"},{match:"(\\B-|\\b)\\d[\\w.]*",name:"invalid.illegal.numeric.other.swift"}]},"literals-regular-expression-literal":{comment:"SE-0354 & SE-0355",patterns:[{begin:"(#+)/\\n",end:"/\\1",name:"string.regexp.block.swift",patterns:[{include:"#literals-regular-expression-literal-regex-guts"},{include:"#literals-regular-expression-literal-line-comment"}]},{captures:{0:{patterns:[{include:"#literals-regular-expression-literal-regex-guts"}]},1:{name:"punctuation.definition.string.begin.regexp.swift"},12:{name:"punctuation.definition.string.end.regexp.swift"},13:{name:"invalid.illegal.returns-not-allowed.regexp"}},comment:"Single-line regular expression literals must be matched all in one go\n in order to avoid ambiguities with operators, and to adhere to certain\n parsing rules in SE-0354/SE-0355, such as:\n - A regex literal will not be parsed if it contains an unbalanced ).\n - A regex may end with a space only if it began with an escaped space",match:"(((\\#+)?)/)(?(3)|(?!/))(?(3)|(?!\\s))(\\\\\\s)?(?<guts>(?>(?:\\\\Q(?:(?!\\\\E)(?!/\\2).)*+(?:\\\\E|(?(3)|(?<!\\s))(?=/\\2))|\\\\.|\\(\\?\\#[^)]*\\)|\\(\\?\\{(?<g1>\\{)?+(?<g2>\\{)?+(?<g3>\\{)?+(?<g4>\\{)?+(?<g5>\\{)?+.+?\\}(?(<g1>)\\})(?(<g2>)\\})(?(<g3>)\\})(?(<g4>)\\})(?(<g5>)\\})(?:\\[(?!\\d)\\w+\\])?[X<>]?\\)|(?<class>\\[(?:\\\\.|[^\\[\\]]|\\g<class>)+\\])|\\(\\g<guts>?+\\)|(?:(?!/\\2)[^()\\[\\\\])+)+))?+(?(3)|(?(5)(?<!\\s)))(/\\2)|\\#+/.+(\\n)",name:"string.regexp.line.swift"}]},"literals-regular-expression-literal-backreference-or-subpattern":{comment:"These patterns are separated to work around issues like https://github.com/microsoft/vscode-textmate/issues/164",patterns:[{captures:{1:{name:"constant.character.escape.backslash.regexp"},2:{name:"variable.other.group-name.regexp"},3:{name:"keyword.operator.recursion-level.regexp"},4:{name:"constant.numeric.integer.decimal.regexp"},5:{name:"constant.numeric.integer.decimal.regexp"},6:{name:"keyword.operator.recursion-level.regexp"},7:{name:"constant.numeric.integer.decimal.regexp"},8:{name:"constant.character.escape.backslash.regexp"}},comment:"'\\g{' NamedOrNumberRef '}'",match:"(\\\\g\\{)(?:((?!\\d)\\w+)(?:([+-])(\\d+))?|([+-]?\\d+)(?:([+-])(\\d+))?)(\\})"},{captures:{1:{name:"constant.character.escape.backslash.regexp"},2:{name:"constant.numeric.integer.decimal.regexp"},3:{name:"keyword.operator.recursion-level.regexp"},4:{name:"constant.numeric.integer.decimal.regexp"}},comment:"'\\g' NumberRef",match:"(\\\\g)([+-]?\\d+)(?:([+-])(\\d+))?"},{captures:{1:{name:"constant.character.escape.backslash.regexp"},3:{name:"variable.other.group-name.regexp"},4:{name:"keyword.operator.recursion-level.regexp"},5:{name:"constant.numeric.integer.decimal.regexp"},6:{name:"constant.numeric.integer.decimal.regexp"},7:{name:"keyword.operator.recursion-level.regexp"},8:{name:"constant.numeric.integer.decimal.regexp"},9:{name:"constant.character.escape.backslash.regexp"}},comment:"'\\k<' NamedOrNumberRef '>'\n \"\\k'\" NamedOrNumberRef \"'\"\n '\\g<' NamedOrNumberRef '>'\n \"\\g'\" NamedOrNumberRef \"'\"",match:"(\\\\[gk](<)|\\\\[gk]')(?:((?!\\d)\\w+)(?:([+-])(\\d+))?|([+-]?\\d+)(?:([+-])(\\d+))?)((?(2)>|'))"},{captures:{1:{name:"constant.character.escape.backslash.regexp"},2:{name:"variable.other.group-name.regexp"},3:{name:"keyword.operator.recursion-level.regexp"},4:{name:"constant.numeric.integer.decimal.regexp"},5:{name:"constant.character.escape.backslash.regexp"}},comment:"'\\k{' NamedRef '}'",match:"(\\\\k\\{)((?!\\d)\\w+)(?:([+-])(\\d+))?(\\})"},{match:"\\\\[1-9]\\d+",name:"keyword.other.back-reference.regexp"},{captures:{1:{name:"keyword.other.back-reference.regexp"},2:{name:"variable.other.group-name.regexp"},3:{name:"keyword.operator.recursion-level.regexp"},4:{name:"constant.numeric.integer.decimal.regexp"},5:{name:"keyword.other.back-reference.regexp"}},comment:"'(?P=' NamedRef ')'",match:"(\\(\\?(?:P[=>]|&))((?!\\d)\\w+)(?:([+-])(\\d+))?(\\))"},{match:"\\(\\?R\\)",name:"keyword.other.back-reference.regexp"},{captures:{1:{name:"keyword.other.back-reference.regexp"},2:{name:"constant.numeric.integer.decimal.regexp"},3:{name:"keyword.operator.recursion-level.regexp"},4:{name:"constant.numeric.integer.decimal.regexp"},5:{name:"keyword.other.back-reference.regexp"}},comment:"'(?' NumberRef ')'",match:"(\\(\\?)([+-]?\\d+)(?:([+-])(\\d+))?(\\))"}]},"literals-regular-expression-literal-backtracking-directive-or-global-matching-option":{captures:{1:{name:"keyword.control.directive.regexp"},2:{name:"keyword.control.directive.regexp"},3:{name:"keyword.control.directive.regexp"},4:{name:"variable.language.tag.regexp"},5:{name:"keyword.control.directive.regexp"},6:{name:"keyword.operator.assignment.regexp"},7:{name:"constant.numeric.integer.decimal.regexp"},8:{name:"keyword.control.directive.regexp"},9:{name:"keyword.control.directive.regexp"}},match:"(\\(\\*)(?:(ACCEPT|FAIL|F|MARK(?=:)|(?=:)|COMMIT|PRUNE|SKIP|THEN)(?:(:)([^)]+))?|(?:(LIMIT_(?:DEPTH|HEAP|MATCH))(=)(\\d+))|(CRLF|CR|ANYCRLF|ANY|LF|NUL|BSR_ANYCRLF|BSR_UNICODE|NOTEMPTY_ATSTART|NOTEMPTY|NO_AUTO_POSSESS|NO_DOTSTAR_ANCHOR|NO_JIT|NO_START_OPT|UTF|UCP))(\\))"},"literals-regular-expression-literal-callout":{captures:{1:{name:"punctuation.definition.group.regexp"},2:{name:"keyword.control.callout.regexp"},3:{name:"constant.numeric.integer.decimal.regexp"},4:{name:"entity.name.function.callout.regexp"},5:{name:"entity.name.function.callout.regexp"},6:{name:"entity.name.function.callout.regexp"},7:{name:"entity.name.function.callout.regexp"},8:{name:"entity.name.function.callout.regexp"},9:{name:"entity.name.function.callout.regexp"},10:{name:"entity.name.function.callout.regexp"},11:{name:"entity.name.function.callout.regexp"},12:{name:"punctuation.definition.group.regexp"},13:{name:"punctuation.definition.group.regexp"},14:{name:"keyword.control.callout.regexp"},15:{name:"entity.name.function.callout.regexp"},16:{name:"variable.language.tag-name.regexp"},17:{name:"punctuation.definition.group.regexp"},18:{name:"punctuation.definition.group.regexp"},19:{name:"keyword.control.callout.regexp"},26:{name:"variable.language.tag-name.regexp"},27:{name:"keyword.control.callout.regexp"},28:{name:"punctuation.definition.group.regexp"}},match:"(\\()(?<keyw>\\?C)(?:(?<num>\\d+)|`(?<name>(?:[^`]|``)*)`|'(?<name>(?:[^']|'')*)'|\"(?<name>(?:[^\"]|\"\")*)\"|\\^(?<name>(?:[^\\^]|\\^\\^)*)\\^|%(?<name>(?:[^%]|%%)*)%|\\#(?<name>(?:[^#]|\\#\\#)*)\\#|\\$(?<name>(?:[^$]|\\$\\$)*)\\$|\\{(?<name>(?:[^}]|\\}\\})*)\\})?(\\))|(\\()(?<keyw>\\*)(?<name>(?!\\d)\\w+)(?:\\[(?<tag>(?!\\d)\\w+)\\])?(?:\\{[^,}]+(?:,[^,}]+)*\\})?(\\))|(\\()(?<keyw>\\?)(\\{(?<g1>\\{)?+(?<g2>\\{)?+(?<g3>\\{)?+(?<g4>\\{)?+(?<g5>\\{)?+).+?\\}(?(<g1>)\\})(?(<g2>)\\})(?(<g3>)\\})(?(<g4>)\\})(?(<g5>)\\})(?:\\[(?<tag>(?!\\d)\\w+)\\])?(?<keyw>[X<>]?)(\\))",name:"meta.callout.regexp"},"literals-regular-expression-literal-character-properties":{captures:{1:{name:"support.variable.character-property.regexp"},2:{name:"punctuation.definition.character-class.regexp"},3:{name:"support.variable.character-property.regexp"},4:{name:"punctuation.definition.character-class.regexp"}},match:"\\\\[pP]\\{([\\s\\w-]+(?:=[\\s\\w-]+)?)\\}|(\\[:)([\\s\\w-]+(?:=[\\s\\w-]+)?)(:\\])",name:"constant.other.character-class.set.regexp"},"literals-regular-expression-literal-custom-char-class":{patterns:[{begin:"(\\[)(\\^)?",beginCaptures:{1:{name:"punctuation.definition.character-class.regexp"},2:{name:"keyword.operator.negation.regexp"}},end:"\\]",endCaptures:{0:{name:"punctuation.definition.character-class.regexp"}},name:"constant.other.character-class.set.regexp",patterns:[{include:"#literals-regular-expression-literal-custom-char-class-members"}]}]},"literals-regular-expression-literal-custom-char-class-members":{comment:"TODO: should also include atoms?",patterns:[{comment:"\\b inside a character class represents a backspace",match:"\\\\b",name:"constant.character.escape.backslash.regexp"},{include:"#literals-regular-expression-literal-custom-char-class"},{include:"#literals-regular-expression-literal-quote"},{include:"#literals-regular-expression-literal-set-operators"},{include:"#literals-regular-expression-literal-unicode-scalars"},{include:"#literals-regular-expression-literal-character-properties"}]},"literals-regular-expression-literal-group-option-toggle":{comment:'A matching option sequence may be part of an "isolated group" which has an implicit scope that wraps the remaining elements of the current group',match:"\\(\\?(?:\\^(?:[iJmnsUxwDPSW]|xx|y\\{[gw]\\})*|(?:[iJmnsUxwDPSW]|xx|y\\{[gw]\\})+|(?:[iJmnsUxwDPSW]|xx|y\\{[gw]\\})*-(?:[iJmnsUxwDPSW]|xx|y\\{[gw]\\})*)\\)",name:"keyword.other.option-toggle.regexp"},"literals-regular-expression-literal-group-or-conditional":{patterns:[{begin:"(\\()(\\?~)",beginCaptures:{1:{name:"punctuation.definition.group.regexp"},2:{name:"keyword.control.conditional.absent.regexp"}},end:"\\)",endCaptures:{0:{name:"punctuation.definition.group.regexp"}},name:"meta.group.absent.regexp",patterns:[{include:"#literals-regular-expression-literal-regex-guts"}]},{begin:"(\\()(?<cond>\\?\\()(?:(?<NumberRef>(?<num>[+-]?\\d+)(?:(?<op>[+-])(?<num>\\d+))?)|(?<cond>R)\\g<NumberRef>?|(?<cond>R&)(?<NamedRef>(?<name>(?!\\d)\\w+)(?:(?<op>[+-])(?<num>\\d+))?)|(?<cond><)(?:\\g<NamedRef>|\\g<NumberRef>)(?<cond>>)|(?<cond>')(?:\\g<NamedRef>|\\g<NumberRef>)(?<cond>')|(?<cond>DEFINE)|(?<cond>VERSION)(?<compar>>?=)(?<num>\\d+\\.\\d+))(?<cond>\\))|(\\()(?<cond>\\?)(?=\\()",beginCaptures:{1:{name:"punctuation.definition.group.regexp"},2:{name:"keyword.control.conditional.regexp"},4:{name:"constant.numeric.integer.decimal.regexp"},5:{name:"keyword.operator.recursion-level.regexp"},6:{name:"constant.numeric.integer.decimal.regexp"},7:{name:"keyword.control.conditional.regexp"},8:{name:"keyword.control.conditional.regexp"},10:{name:"variable.other.group-name.regexp"},11:{name:"keyword.operator.recursion-level.regexp"},12:{name:"constant.numeric.integer.decimal.regexp"},13:{name:"keyword.control.conditional.regexp"},14:{name:"keyword.control.conditional.regexp"},15:{name:"keyword.control.conditional.regexp"},16:{name:"keyword.control.conditional.regexp"},17:{name:"keyword.control.conditional.regexp"},18:{name:"keyword.control.conditional.regexp"},19:{name:"keyword.operator.comparison.regexp"},20:{name:"constant.numeric.integer.decimal.regexp"},21:{name:"keyword.control.conditional.regexp"},22:{name:"punctuation.definition.group.regexp"},23:{name:"keyword.control.conditional.regexp"}},end:"\\)",endCaptures:{0:{name:"punctuation.definition.group.regexp"}},name:"meta.group.conditional.regexp",patterns:[{include:"#literals-regular-expression-literal-regex-guts"}]},{begin:"(\\()((\\?)(?:([:|>=!*]|<[=!*])|P?<(?:((?!\\d)\\w+)(-))?((?!\\d)\\w+)>|'(?:((?!\\d)\\w+)(-))?((?!\\d)\\w+)'|(?:\\^(?:[iJmnsUxwDPSW]|xx|y\\{[gw]\\})*|(?:[iJmnsUxwDPSW]|xx|y\\{[gw]\\})+|(?:[iJmnsUxwDPSW]|xx|y\\{[gw]\\})*-(?:[iJmnsUxwDPSW]|xx|y\\{[gw]\\})*):)|\\*(atomic|pla|positive_lookahead|nla|negative_lookahead|plb|positive_lookbehind|nlb|negative_lookbehind|napla|non_atomic_positive_lookahead|naplb|non_atomic_positive_lookbehind|sr|script_run|asr|atomic_script_run):)?+",beginCaptures:{1:{name:"punctuation.definition.group.regexp"},2:{name:"keyword.other.group-options.regexp"},3:{name:"punctuation.definition.group.regexp"},4:{name:"punctuation.definition.group.regexp"},5:{name:"variable.other.group-name.regexp"},6:{name:"keyword.operator.balancing-group.regexp"},7:{name:"variable.other.group-name.regexp"},8:{name:"variable.other.group-name.regexp"},9:{name:"keyword.operator.balancing-group.regexp"},10:{name:"variable.other.group-name.regexp"}},end:"\\)",endCaptures:{0:{name:"punctuation.definition.group.regexp"}},name:"meta.group.regexp",patterns:[{include:"#literals-regular-expression-literal-regex-guts"}]}]},"literals-regular-expression-literal-line-comment":{captures:{1:{name:"punctuation.definition.comment.regexp"}},match:"(\\#).*$",name:"comment.line.regexp"},"literals-regular-expression-literal-quote":{begin:"\\\\Q",beginCaptures:{0:{name:"constant.character.escape.backslash.regexp"}},end:"\\\\E|(\\n)",endCaptures:{0:{name:"constant.character.escape.backslash.regexp"},1:{name:"invalid.illegal.returns-not-allowed.regexp"}},name:"string.quoted.other.regexp.swift"},"literals-regular-expression-literal-regex-guts":{patterns:[{include:"#literals-regular-expression-literal-quote"},{begin:"\\(\\?\\#",beginCaptures:{0:{name:"punctuation.definition.comment.begin.regexp"}},end:"\\)",endCaptures:{0:{name:"punctuation.definition.comment.end.regexp"}},name:"comment.block.regexp"},{begin:"<\\{",beginCaptures:{0:{name:"punctuation.section.embedded.begin.regexp"}},end:"\\}>",endCaptures:{0:{name:"punctuation.section.embedded.end.regexp"}},name:"meta.embedded.expression.regexp"},{include:"#literals-regular-expression-literal-unicode-scalars"},{include:"#literals-regular-expression-literal-character-properties"},{match:"[$^]|\\\\[AbBGyYzZ]|\\\\K",name:"keyword.control.anchor.regexp"},{include:"#literals-regular-expression-literal-backtracking-directive-or-global-matching-option"},{include:"#literals-regular-expression-literal-callout"},{include:"#literals-regular-expression-literal-backreference-or-subpattern"},{match:"\\.|\\\\[CdDhHNORsSvVwWX]",name:"constant.character.character-class.regexp"},{match:"\\\\c.",name:"constant.character.entity.control-character.regexp"},{match:"\\\\[^c]",name:"constant.character.escape.backslash.regexp"},{match:"\\|",name:"keyword.operator.or.regexp"},{match:"[*+?]",name:"keyword.operator.quantifier.regexp"},{match:"\\{\\s*\\d+\\s*(?:,\\s*\\d*\\s*)?\\}|\\{\\s*,\\s*\\d+\\s*\\}",name:"keyword.operator.quantifier.regexp"},{include:"#literals-regular-expression-literal-custom-char-class"},{include:"#literals-regular-expression-literal-group-option-toggle"},{include:"#literals-regular-expression-literal-group-or-conditional"}]},"literals-regular-expression-literal-set-operators":{patterns:[{match:"&&",name:"keyword.operator.intersection.regexp.swift"},{match:"--",name:"keyword.operator.subtraction.regexp.swift"},{match:"\\~\\~",name:"keyword.operator.symmetric-difference.regexp.swift"}]},"literals-regular-expression-literal-unicode-scalars":{match:"\\\\u\\{\\s*(?:[0-9a-fA-F]+\\s*)+\\}|\\\\u[0-9a-fA-F]{4}|\\\\x\\{[0-9a-fA-F]+\\}|\\\\x[0-9a-fA-F]{0,2}|\\\\U[0-9a-fA-F]{8}|\\\\o\\{[0-7]+\\}|\\\\0[0-7]{0,3}|\\\\N\\{(?:U\\+[0-9a-fA-F]{1,8}|[\\s\\w-]+)\\}",name:"constant.character.numeric.regexp"},"literals-string":{patterns:[{begin:'"""',beginCaptures:{0:{name:"punctuation.definition.string.begin.swift"}},comment:"SE-0168: Multi-Line String Literals",end:'"""(#*)',endCaptures:{0:{name:"punctuation.definition.string.end.swift"},1:{name:"invalid.illegal.extra-closing-delimiter.swift"}},name:"string.quoted.double.block.swift",patterns:[{match:'\\G.+(?=""")|\\G.+',name:"invalid.illegal.content-after-opening-delimiter.swift"},{match:"\\\\\\s*\\n",name:"constant.character.escape.newline.swift"},{include:"#literals-string-string-guts"},{comment:'Allow \\("""...""") to appear inside a block string',match:'\\S((?!\\\\\\().)*(?=""")',name:"invalid.illegal.content-before-closing-delimiter.swift"}]},{begin:'#"""',beginCaptures:{0:{name:"punctuation.definition.string.begin.swift"}},end:'"""#(#*)',endCaptures:{0:{name:"punctuation.definition.string.end.swift"},1:{name:"invalid.illegal.extra-closing-delimiter.swift"}},name:"string.quoted.double.block.raw.swift",patterns:[{match:'\\G.+(?=""")|\\G.+',name:"invalid.illegal.content-after-opening-delimiter.swift"},{match:"\\\\#\\s*\\n",name:"constant.character.escape.newline.swift"},{include:"#literals-string-raw-string-guts"},{comment:'Allow \\("""...""") to appear inside a block string',match:'\\S((?!\\\\#\\().)*(?=""")',name:"invalid.illegal.content-before-closing-delimiter.swift"}]},{begin:'(##+)"""',beginCaptures:{0:{name:"punctuation.definition.string.begin.swift"}},end:'"""\\1(#*)',endCaptures:{0:{name:"punctuation.definition.string.end.swift"},1:{name:"invalid.illegal.extra-closing-delimiter.swift"}},name:"string.quoted.double.block.raw.swift",patterns:[{match:'\\G.+(?=""")|\\G.+',name:"invalid.illegal.content-after-opening-delimiter.swift"}]},{begin:'"',beginCaptures:{0:{name:"punctuation.definition.string.begin.swift"}},end:'"(#*)',endCaptures:{0:{name:"punctuation.definition.string.end.swift"},1:{name:"invalid.illegal.extra-closing-delimiter.swift"}},name:"string.quoted.double.single-line.swift",patterns:[{match:"\\r|\\n",name:"invalid.illegal.returns-not-allowed.swift"},{include:"#literals-string-string-guts"}]},{begin:'(##+)"',beginCaptures:{0:{name:"punctuation.definition.string.begin.raw.swift"}},comment:"SE-0168: raw string literals (more than one #, grammar limitations prevent us from supporting escapes)",end:'"\\1(#*)',endCaptures:{0:{name:"punctuation.definition.string.end.raw.swift"},1:{name:"invalid.illegal.extra-closing-delimiter.swift"}},name:"string.quoted.double.single-line.raw.swift",patterns:[{match:"\\r|\\n",name:"invalid.illegal.returns-not-allowed.swift"}]},{begin:'#"',beginCaptures:{0:{name:"punctuation.definition.string.begin.raw.swift"}},comment:"SE-0168: raw string literals (one #, escapes supported)",end:'"#(#*)',endCaptures:{0:{name:"punctuation.definition.string.end.raw.swift"},1:{name:"invalid.illegal.extra-closing-delimiter.swift"}},name:"string.quoted.double.single-line.raw.swift",patterns:[{match:"\\r|\\n",name:"invalid.illegal.returns-not-allowed.swift"},{include:"#literals-string-raw-string-guts"}]}]},"literals-string-raw-string-guts":{comment:"the same as #string-guts but with # in escapes",patterns:[{match:"\\\\#[0\\\\tnr\"']",name:"constant.character.escape.swift"},{match:"\\\\#u\\{[0-9a-fA-F]{1,8}\\}",name:"constant.character.escape.unicode.swift"},{begin:"\\\\#\\(",beginCaptures:{0:{name:"punctuation.section.embedded.begin.swift"}},contentName:"source.swift",end:"(\\))",endCaptures:{0:{name:"punctuation.section.embedded.end.swift"},1:{name:"source.swift"}},name:"meta.embedded.line.swift",patterns:[{include:"$self"},{begin:"\\(",comment:"Nested parens",end:"\\)"}]},{match:"\\\\#.",name:"invalid.illegal.escape-not-recognized"}]},"literals-string-string-guts":{patterns:[{match:"\\\\[0\\\\tnr\"']",name:"constant.character.escape.swift"},{match:"\\\\u\\{[0-9a-fA-F]{1,8}\\}",name:"constant.character.escape.unicode.swift"},{begin:"\\\\\\(",beginCaptures:{0:{name:"punctuation.section.embedded.begin.swift"}},contentName:"source.swift",end:"(\\))",endCaptures:{0:{name:"punctuation.section.embedded.end.swift"},1:{name:"source.swift"}},name:"meta.embedded.line.swift",patterns:[{include:"$self"},{begin:"\\(",comment:"Nested parens",end:"\\)"}]},{match:"\\\\.",name:"invalid.illegal.escape-not-recognized"}]},"member-reference":{patterns:[{captures:{1:{name:"variable.other.swift"},2:{name:"punctuation.definition.identifier.swift"},3:{name:"punctuation.definition.identifier.swift"}},match:"(?<=\\.)((?<q>`?)[\\p{L}_][\\p{L}_\\p{N}\\p{M}]*(\\k<q>))"}]},operators:{patterns:[{comment:"Type casting",match:"\\b(is\\b|as([!?]\\B|\\b))",name:"keyword.operator.type-casting.swift"},{begin:"(?=(?<oph>[/=\\-+!*%<>&|^~?]|[\\x{00A1}-\\x{00A7}]|[\\x{00A9}\\x{00AB}]|[\\x{00AC}\\x{00AE}]|[\\x{00B0}-\\x{00B1}\\x{00B6}\\x{00BB}\\x{00BF}\\x{00D7}\\x{00F7}]|[\\x{2016}-\\x{2017}\\x{2020}-\\x{2027}]|[\\x{2030}-\\x{203E}]|[\\x{2041}-\\x{2053}]|[\\x{2055}-\\x{205E}]|[\\x{2190}-\\x{23FF}]|[\\x{2500}-\\x{2775}]|[\\x{2794}-\\x{2BFF}]|[\\x{2E00}-\\x{2E7F}]|[\\x{3001}-\\x{3003}]|[\\x{3008}-\\x{3030}])|\\.(\\g<oph>|\\.|[\\x{0300}-\\x{036F}]|[\\x{1DC0}-\\x{1DFF}]|[\\x{20D0}-\\x{20FF}]|[\\x{FE00}-\\x{FE0F}]|[\\x{FE20}-\\x{FE2F}]|[\\x{E0100}-\\x{E01EF}]))",comment:"This rule helps us speed up the matching.",end:"(?!\\G)",patterns:[{captures:{0:{patterns:[{match:"\\G(\\+\\+|\\-\\-)$",name:"keyword.operator.increment-or-decrement.swift"},{match:"\\G(\\+|\\-)$",name:"keyword.operator.arithmetic.unary.swift"},{match:"\\G!$",name:"keyword.operator.logical.not.swift"},{match:"\\G~$",name:"keyword.operator.bitwise.not.swift"},{match:".+",name:"keyword.operator.custom.prefix.swift"}]}},comment:"Prefix unary operator",match:"\\G(?<=^|[\\s(\\[{,;:])((?!(//|/\\*|\\*/))([/=\\-+!*%<>&|^~?]|[\\x{00A1}-\\x{00A7}]|[\\x{00A9}\\x{00AB}]|[\\x{00AC}\\x{00AE}]|[\\x{00B0}-\\x{00B1}\\x{00B6}\\x{00BB}\\x{00BF}\\x{00D7}\\x{00F7}]|[\\x{2016}-\\x{2017}\\x{2020}-\\x{2027}]|[\\x{2030}-\\x{203E}]|[\\x{2041}-\\x{2053}]|[\\x{2055}-\\x{205E}]|[\\x{2190}-\\x{23FF}]|[\\x{2500}-\\x{2775}]|[\\x{2794}-\\x{2BFF}]|[\\x{2E00}-\\x{2E7F}]|[\\x{3001}-\\x{3003}]|[\\x{3008}-\\x{3030}]|[\\x{0300}-\\x{036F}]|[\\x{1DC0}-\\x{1DFF}]|[\\x{20D0}-\\x{20FF}]|[\\x{FE00}-\\x{FE0F}]|[\\x{FE20}-\\x{FE2F}]|[\\x{E0100}-\\x{E01EF}]))++(?![\\s)\\]},;:]|\\z)"},{captures:{0:{patterns:[{match:"\\G(\\+\\+|\\-\\-)$",name:"keyword.operator.increment-or-decrement.swift"},{match:"\\G!$",name:"keyword.operator.increment-or-decrement.swift"},{match:".+",name:"keyword.operator.custom.postfix.swift"}]}},comment:"Postfix unary operator",match:"\\G(?<!^|[\\s(\\[{,;:])((?!(//|/\\*|\\*/))([/=\\-+!*%<>&|^~?]|[\\x{00A1}-\\x{00A7}]|[\\x{00A9}\\x{00AB}]|[\\x{00AC}\\x{00AE}]|[\\x{00B0}-\\x{00B1}\\x{00B6}\\x{00BB}\\x{00BF}\\x{00D7}\\x{00F7}]|[\\x{2016}-\\x{2017}\\x{2020}-\\x{2027}]|[\\x{2030}-\\x{203E}]|[\\x{2041}-\\x{2053}]|[\\x{2055}-\\x{205E}]|[\\x{2190}-\\x{23FF}]|[\\x{2500}-\\x{2775}]|[\\x{2794}-\\x{2BFF}]|[\\x{2E00}-\\x{2E7F}]|[\\x{3001}-\\x{3003}]|[\\x{3008}-\\x{3030}]|[\\x{0300}-\\x{036F}]|[\\x{1DC0}-\\x{1DFF}]|[\\x{20D0}-\\x{20FF}]|[\\x{FE00}-\\x{FE0F}]|[\\x{FE20}-\\x{FE2F}]|[\\x{E0100}-\\x{E01EF}]))++(?=[\\s)\\]},;:]|\\z)"},{captures:{0:{patterns:[{match:"\\G=$",name:"keyword.operator.assignment.swift"},{match:"\\G(\\+|\\-|\\*|/|%|<<|>>|&|\\^|\\||&&|\\|\\|)=$",name:"keyword.operator.assignment.compound.swift"},{match:"\\G(\\+|\\-|\\*|/)$",name:"keyword.operator.arithmetic.swift"},{match:"\\G&(\\+|\\-|\\*)$",name:"keyword.operator.arithmetic.overflow.swift"},{match:"\\G%$",name:"keyword.operator.arithmetic.remainder.swift"},{match:"\\G(==|!=|>|<|>=|<=|~=)$",name:"keyword.operator.comparison.swift"},{match:"\\G\\?\\?$",name:"keyword.operator.coalescing.swift"},{match:"\\G(&&|\\|\\|)$",name:"keyword.operator.logical.swift"},{match:"\\G(&|\\||\\^|<<|>>)$",name:"keyword.operator.bitwise.swift"},{match:"\\G(===|!==)$",name:"keyword.operator.bitwise.swift"},{match:"\\G\\?$",name:"keyword.operator.ternary.swift"},{match:".+",name:"keyword.operator.custom.infix.swift"}]}},comment:"Infix operator",match:"\\G((?!(//|/\\*|\\*/))([/=\\-+!*%<>&|^~?]|[\\x{00A1}-\\x{00A7}]|[\\x{00A9}\\x{00AB}]|[\\x{00AC}\\x{00AE}]|[\\x{00B0}-\\x{00B1}\\x{00B6}\\x{00BB}\\x{00BF}\\x{00D7}\\x{00F7}]|[\\x{2016}-\\x{2017}\\x{2020}-\\x{2027}]|[\\x{2030}-\\x{203E}]|[\\x{2041}-\\x{2053}]|[\\x{2055}-\\x{205E}]|[\\x{2190}-\\x{23FF}]|[\\x{2500}-\\x{2775}]|[\\x{2794}-\\x{2BFF}]|[\\x{2E00}-\\x{2E7F}]|[\\x{3001}-\\x{3003}]|[\\x{3008}-\\x{3030}]|[\\x{0300}-\\x{036F}]|[\\x{1DC0}-\\x{1DFF}]|[\\x{20D0}-\\x{20FF}]|[\\x{FE00}-\\x{FE0F}]|[\\x{FE20}-\\x{FE2F}]|[\\x{E0100}-\\x{E01EF}]))++"},{captures:{0:{patterns:[{match:".+",name:"keyword.operator.custom.prefix.dot.swift"}]}},comment:"Dot prefix unary operator",match:"\\G(?<=^|[\\s(\\[{,;:])\\.((?!(//|/\\*|\\*/))(\\.|[/=\\-+!*%<>&|^~?]|[\\x{00A1}-\\x{00A7}]|[\\x{00A9}\\x{00AB}]|[\\x{00AC}\\x{00AE}]|[\\x{00B0}-\\x{00B1}\\x{00B6}\\x{00BB}\\x{00BF}\\x{00D7}\\x{00F7}]|[\\x{2016}-\\x{2017}\\x{2020}-\\x{2027}]|[\\x{2030}-\\x{203E}]|[\\x{2041}-\\x{2053}]|[\\x{2055}-\\x{205E}]|[\\x{2190}-\\x{23FF}]|[\\x{2500}-\\x{2775}]|[\\x{2794}-\\x{2BFF}]|[\\x{2E00}-\\x{2E7F}]|[\\x{3001}-\\x{3003}]|[\\x{3008}-\\x{3030}]|[\\x{0300}-\\x{036F}]|[\\x{1DC0}-\\x{1DFF}]|[\\x{20D0}-\\x{20FF}]|[\\x{FE00}-\\x{FE0F}]|[\\x{FE20}-\\x{FE2F}]|[\\x{E0100}-\\x{E01EF}]))++(?![\\s)\\]},;:]|\\z)"},{captures:{0:{patterns:[{match:".+",name:"keyword.operator.custom.postfix.dot.swift"}]}},comment:"Dot postfix unary operator",match:"\\G(?<!^|[\\s(\\[{,;:])\\.((?!(//|/\\*|\\*/))(\\.|[/=\\-+!*%<>&|^~?]|[\\x{00A1}-\\x{00A7}]|[\\x{00A9}\\x{00AB}]|[\\x{00AC}\\x{00AE}]|[\\x{00B0}-\\x{00B1}\\x{00B6}\\x{00BB}\\x{00BF}\\x{00D7}\\x{00F7}]|[\\x{2016}-\\x{2017}\\x{2020}-\\x{2027}]|[\\x{2030}-\\x{203E}]|[\\x{2041}-\\x{2053}]|[\\x{2055}-\\x{205E}]|[\\x{2190}-\\x{23FF}]|[\\x{2500}-\\x{2775}]|[\\x{2794}-\\x{2BFF}]|[\\x{2E00}-\\x{2E7F}]|[\\x{3001}-\\x{3003}]|[\\x{3008}-\\x{3030}]|[\\x{0300}-\\x{036F}]|[\\x{1DC0}-\\x{1DFF}]|[\\x{20D0}-\\x{20FF}]|[\\x{FE00}-\\x{FE0F}]|[\\x{FE20}-\\x{FE2F}]|[\\x{E0100}-\\x{E01EF}]))++(?=[\\s)\\]},;:]|\\z)"},{captures:{0:{patterns:[{match:"\\G\\.\\.[.<]$",name:"keyword.operator.range.swift"},{match:".+",name:"keyword.operator.custom.infix.dot.swift"}]}},comment:"Dot infix operator",match:"\\G\\.((?!(//|/\\*|\\*/))(\\.|[/=\\-+!*%<>&|^~?]|[\\x{00A1}-\\x{00A7}]|[\\x{00A9}\\x{00AB}]|[\\x{00AC}\\x{00AE}]|[\\x{00B0}-\\x{00B1}\\x{00B6}\\x{00BB}\\x{00BF}\\x{00D7}\\x{00F7}]|[\\x{2016}-\\x{2017}\\x{2020}-\\x{2027}]|[\\x{2030}-\\x{203E}]|[\\x{2041}-\\x{2053}]|[\\x{2055}-\\x{205E}]|[\\x{2190}-\\x{23FF}]|[\\x{2500}-\\x{2775}]|[\\x{2794}-\\x{2BFF}]|[\\x{2E00}-\\x{2E7F}]|[\\x{3001}-\\x{3003}]|[\\x{3008}-\\x{3030}]|[\\x{0300}-\\x{036F}]|[\\x{1DC0}-\\x{1DFF}]|[\\x{20D0}-\\x{20FF}]|[\\x{FE00}-\\x{FE0F}]|[\\x{FE20}-\\x{FE2F}]|[\\x{E0100}-\\x{E01EF}]))++"}]},{match:":",name:"keyword.operator.ternary.swift"}]},root:{patterns:[{include:"#compiler-control"},{include:"#declarations"},{include:"#expressions"}]}},scopeName:"source.swift"})]);}};});
2
- //# sourceMappingURL=swift-73991d74.cjs.js.map
@@ -1 +0,0 @@
1
- var e=[Object.freeze({displayName:"Terraform",fileTypes:["tf","tfvars"],name:"terraform",patterns:[{include:"#comments"},{include:"#attribute_definition"},{include:"#block"},{include:"#expressions"}],repository:{attribute_access:{begin:"\\.(?!\\*)",beginCaptures:{0:{name:"keyword.operator.accessor.hcl"}},comment:"Matches traversal attribute access such as .attr",end:"[A-Za-z][\\w-]*|\\d*",endCaptures:{0:{patterns:[{comment:"Attribute name",match:"(?!null|false|true)[[:alpha:]][\\w-]*",name:"variable.other.member.hcl"},{comment:"Optional attribute index",match:"\\d+",name:"constant.numeric.integer.hcl"}]}}},attribute_definition:{captures:{1:{name:"punctuation.section.parens.begin.hcl"},2:{name:"variable.other.readwrite.hcl"},3:{name:"punctuation.section.parens.end.hcl"},4:{name:"keyword.operator.assignment.hcl"}},comment:'Identifier "=" with optional parens',match:"(\\()?(\\b(?!null\\b|false\\b|true\\b)[A-Za-z][0-9A-Za-z_-]*)(\\))?\\s*(=(?!=|>))\\s*",name:"variable.declaration.hcl"},attribute_splat:{begin:"\\.",beginCaptures:{0:{name:"keyword.operator.accessor.hcl"}},comment:"Legacy attribute-only splat",end:"\\*",endCaptures:{0:{name:"keyword.operator.splat.hcl"}}},block:{begin:'([\\w][\\-\\w]*)([\\s\\"\\-\\w]*)(\\{)',beginCaptures:{1:{patterns:[{comment:"Known block type",match:"\\bdata|check|import|locals|module|output|provider|resource|terraform|variable\\b",name:"entity.name.type.terraform"},{comment:"Unknown block type",match:"\\b(?!null|false|true)[[:alpha:]][[:alnum:]_-]*\\b",name:"entity.name.type.hcl"}]},2:{patterns:[{comment:"Block label",match:'[\\"\\-\\w]+',name:"variable.other.enummember.hcl"}]},3:{name:"punctuation.section.block.begin.hcl"}},comment:'This will match Terraform blocks like `resource "aws_instance" "web" {` or `module {`',end:"\\}",endCaptures:{0:{name:"punctuation.section.block.end.hcl"}},name:"meta.block.hcl",patterns:[{include:"#comments"},{include:"#attribute_definition"},{include:"#block"},{include:"#expressions"}]},block_inline_comments:{begin:"/\\*",captures:{0:{name:"punctuation.definition.comment.hcl"}},comment:"Inline comments start with the /* sequence and end with the */ sequence, and may have any characters within except the ending sequence. An inline comment is considered equivalent to a whitespace sequence",end:"\\*/",name:"comment.block.hcl"},brackets:{begin:"\\[",beginCaptures:{0:{name:"punctuation.section.brackets.begin.hcl"}},end:"\\]",endCaptures:{0:{name:"punctuation.section.brackets.end.hcl"}},patterns:[{comment:"Splat operator",match:"\\*",name:"keyword.operator.splat.hcl"},{include:"#comma"},{include:"#comments"},{include:"#inline_for_expression"},{include:"#inline_if_expression"},{include:"#expressions"},{include:"#local_identifiers"}]},char_escapes:{comment:"Character Escapes",match:'\\\\[nrt"\\\\]|\\\\u(\\h{8}|\\h{4})',name:"constant.character.escape.hcl"},comma:{comment:"Commas - used in certain expressions",match:"\\,",name:"punctuation.separator.hcl"},comments:{patterns:[{include:"#hash_line_comments"},{include:"#double_slash_line_comments"},{include:"#block_inline_comments"}]},double_slash_line_comments:{begin:"//",captures:{0:{name:"punctuation.definition.comment.hcl"}},comment:"Line comments start with // sequence and end with the next newline sequence. A line comment is considered equivalent to a newline sequence",end:"$\\n?",name:"comment.line.double-slash.hcl"},expressions:{patterns:[{include:"#literal_values"},{include:"#operators"},{include:"#tuple_for_expression"},{include:"#object_for_expression"},{include:"#brackets"},{include:"#objects"},{include:"#attribute_access"},{include:"#attribute_splat"},{include:"#functions"},{include:"#parens"}]},for_expression_body:{patterns:[{comment:"in keyword",match:"\\bin\\b",name:"keyword.operator.word.hcl"},{comment:"if keyword",match:"\\bif\\b",name:"keyword.control.conditional.hcl"},{match:":",name:"keyword.operator.hcl"},{include:"#expressions"},{include:"#comments"},{include:"#comma"},{include:"#local_identifiers"}]},functions:{begin:"([:\\-\\w]+)(\\()",beginCaptures:{1:{patterns:[{match:"\\b(core::)?(abs|abspath|alltrue|anytrue|base64decode|base64encode|base64gzip|base64sha256|base64sha512|basename|bcrypt|can|ceil|chomp|chunklist|cidrhost|cidrnetmask|cidrsubnet|cidrsubnets|coalesce|coalescelist|compact|concat|contains|csvdecode|dirname|distinct|element|endswith|file|filebase64|filebase64sha256|filebase64sha512|fileexists|filemd5|fileset|filesha1|filesha256|filesha512|flatten|floor|format|formatdate|formatlist|indent|index|join|jsondecode|jsonencode|keys|length|log|lookup|lower|matchkeys|max|md5|merge|min|nonsensitive|one|parseint|pathexpand|plantimestamp|pow|range|regex|regexall|replace|reverse|rsadecrypt|sensitive|setintersection|setproduct|setsubtract|setunion|sha1|sha256|sha512|signum|slice|sort|split|startswith|strcontains|strrev|substr|sum|templatefile|textdecodebase64|textencodebase64|timeadd|timecmp|timestamp|title|tobool|tolist|tomap|tonumber|toset|tostring|transpose|trim|trimprefix|trimspace|trimsuffix|try|upper|urlencode|uuid|uuidv5|values|yamldecode|yamlencode|zipmap)\\b",name:"support.function.builtin.terraform"},{match:"\\bprovider::[[:alpha:]][\\w_-]*::[[:alpha:]][\\w_-]*\\b",name:"support.function.provider.terraform"}]},2:{name:"punctuation.section.parens.begin.hcl"}},comment:"Built-in function calls",end:"\\)",endCaptures:{0:{name:"punctuation.section.parens.end.hcl"}},name:"meta.function-call.hcl",patterns:[{include:"#comments"},{include:"#expressions"},{include:"#comma"}]},hash_line_comments:{begin:"#",captures:{0:{name:"punctuation.definition.comment.hcl"}},comment:"Line comments start with # sequence and end with the next newline sequence. A line comment is considered equivalent to a newline sequence",end:"$\\n?",name:"comment.line.number-sign.hcl"},hcl_type_keywords:{comment:"Type keywords known to HCL.",match:"\\b(any|string|number|bool|list|set|map|tuple|object)\\b",name:"storage.type.hcl"},heredoc:{begin:"(<<-?)\\s*(\\w+)\\s*$",beginCaptures:{1:{name:"keyword.operator.heredoc.hcl"},2:{name:"keyword.control.heredoc.hcl"}},comment:"String Heredoc",end:"^\\s*\\2\\s*$",endCaptures:{0:{name:"keyword.control.heredoc.hcl"}},name:"string.unquoted.heredoc.hcl",patterns:[{include:"#string_interpolation"}]},inline_for_expression:{captures:{1:{name:"keyword.control.hcl"},2:{patterns:[{match:"\\=\\>",name:"storage.type.function.hcl"},{include:"#for_expression_body"}]}},match:"(for)\\b(.*)\\n"},inline_if_expression:{begin:"(if)\\b",beginCaptures:{1:{name:"keyword.control.conditional.hcl"}},end:"\\n",patterns:[{include:"#expressions"},{include:"#comments"},{include:"#comma"},{include:"#local_identifiers"}]},language_constants:{comment:"Language Constants",match:"\\b(true|false|null)\\b",name:"constant.language.hcl"},literal_values:{patterns:[{include:"#numeric_literals"},{include:"#language_constants"},{include:"#string_literals"},{include:"#heredoc"},{include:"#hcl_type_keywords"},{include:"#named_value_references"}]},local_identifiers:{comment:"Local Identifiers",match:"\\b(?!null|false|true)[A-Za-z][0-9A-Za-z_-]*\\b",name:"variable.other.readwrite.hcl"},named_value_references:{comment:"Constant values available only to Terraform.",match:"\\b(var|local|module|data|path|terraform)\\b",name:"variable.other.readwrite.terraform"},numeric_literals:{patterns:[{captures:{1:{name:"punctuation.separator.exponent.hcl"}},comment:"Integer, no fraction, optional exponent",match:"\\b\\d+([Ee][+-]?)\\d+\\b",name:"constant.numeric.float.hcl"},{captures:{1:{name:"punctuation.separator.decimal.hcl"},2:{name:"punctuation.separator.exponent.hcl"}},comment:"Integer, fraction, optional exponent",match:"\\b\\d+(\\.)\\d+(?:([Ee][+-]?)\\d+)?\\b",name:"constant.numeric.float.hcl"},{comment:"Integers",match:"\\b\\d+\\b",name:"constant.numeric.integer.hcl"}]},object_for_expression:{begin:"(\\{)\\s?(for)\\b",beginCaptures:{1:{name:"punctuation.section.braces.begin.hcl"},2:{name:"keyword.control.hcl"}},end:"\\}",endCaptures:{0:{name:"punctuation.section.braces.end.hcl"}},patterns:[{match:"=>",name:"storage.type.function.hcl"},{include:"#for_expression_body"}]},object_key_values:{patterns:[{include:"#comments"},{include:"#literal_values"},{include:"#operators"},{include:"#tuple_for_expression"},{include:"#object_for_expression"},{include:"#heredoc"},{include:"#functions"}]},objects:{begin:"\\{",beginCaptures:{0:{name:"punctuation.section.braces.begin.hcl"}},end:"\\}",endCaptures:{0:{name:"punctuation.section.braces.end.hcl"}},name:"meta.braces.hcl",patterns:[{include:"#comments"},{include:"#objects"},{include:"#inline_for_expression"},{include:"#inline_if_expression"},{captures:{1:{name:"meta.mapping.key.hcl variable.other.readwrite.hcl"},2:{name:"keyword.operator.assignment.hcl",patterns:[{match:"\\=\\>",name:"storage.type.function.hcl"}]}},comment:"Literal, named object key",match:"\\b((?!null|false|true)[A-Za-z][0-9A-Za-z_-]*)\\s*(=>?)\\s*"},{captures:{0:{patterns:[{include:"#named_value_references"}]},1:{name:"meta.mapping.key.hcl string.quoted.double.hcl"},2:{name:"punctuation.definition.string.begin.hcl"},3:{name:"punctuation.definition.string.end.hcl"},4:{name:"keyword.operator.hcl"}},comment:"String object key",match:'\\b((").*("))\\s*(=)\\s*'},{begin:"^\\s*\\(",beginCaptures:{0:{name:"punctuation.section.parens.begin.hcl"}},comment:"Computed object key (any expression between parens)",end:"(\\))\\s*(=|:)\\s*",endCaptures:{1:{name:"punctuation.section.parens.end.hcl"},2:{name:"keyword.operator.hcl"}},name:"meta.mapping.key.hcl",patterns:[{include:"#named_value_references"},{include:"#attribute_access"}]},{include:"#object_key_values"}]},operators:{patterns:[{match:">=",name:"keyword.operator.hcl"},{match:"<=",name:"keyword.operator.hcl"},{match:"==",name:"keyword.operator.hcl"},{match:"!=",name:"keyword.operator.hcl"},{match:"\\+",name:"keyword.operator.arithmetic.hcl"},{match:"-",name:"keyword.operator.arithmetic.hcl"},{match:"\\*",name:"keyword.operator.arithmetic.hcl"},{match:"\\/",name:"keyword.operator.arithmetic.hcl"},{match:"\\%",name:"keyword.operator.arithmetic.hcl"},{match:"\\&\\&",name:"keyword.operator.logical.hcl"},{match:"\\|\\|",name:"keyword.operator.logical.hcl"},{match:"!",name:"keyword.operator.logical.hcl"},{match:">",name:"keyword.operator.hcl"},{match:"<",name:"keyword.operator.hcl"},{match:"\\?",name:"keyword.operator.hcl"},{match:"\\.\\.\\.",name:"keyword.operator.hcl"},{match:":",name:"keyword.operator.hcl"},{match:"=>",name:"keyword.operator.hcl"}]},parens:{begin:"\\(",beginCaptures:{0:{name:"punctuation.section.parens.begin.hcl"}},comment:"Parens - matched *after* function syntax",end:"\\)",endCaptures:{0:{name:"punctuation.section.parens.end.hcl"}},patterns:[{include:"#comments"},{include:"#expressions"}]},string_interpolation:{begin:"(?<![%$])([%$]{)",beginCaptures:{1:{name:"keyword.other.interpolation.begin.hcl"}},comment:"String interpolation",end:"\\}",endCaptures:{0:{name:"keyword.other.interpolation.end.hcl"}},name:"meta.interpolation.hcl",patterns:[{comment:"Trim left whitespace",match:"\\~\\s",name:"keyword.operator.template.left.trim.hcl"},{comment:"Trim right whitespace",match:"\\s\\~",name:"keyword.operator.template.right.trim.hcl"},{comment:"if/else/endif and for/in/endfor directives",match:"\\b(if|else|endif|for|in|endfor)\\b",name:"keyword.control.hcl"},{include:"#expressions"},{include:"#local_identifiers"}]},string_literals:{begin:'"',beginCaptures:{0:{name:"punctuation.definition.string.begin.hcl"}},comment:"Strings",end:'"',endCaptures:{0:{name:"punctuation.definition.string.end.hcl"}},name:"string.quoted.double.hcl",patterns:[{include:"#string_interpolation"},{include:"#char_escapes"}]},tuple_for_expression:{begin:"(\\[)\\s?(for)\\b",beginCaptures:{1:{name:"punctuation.section.brackets.begin.hcl"},2:{name:"keyword.control.hcl"}},end:"\\]",endCaptures:{0:{name:"punctuation.section.brackets.end.hcl"}},patterns:[{include:"#for_expression_body"}]}},scopeName:"source.hcl.terraform",aliases:["tf","tfvars"]})];export{e as default};
@@ -1,2 +0,0 @@
1
- System.register([],function(_export,_context){"use strict";var e;return{setters:[],execute:function execute(){_export("default",e=[Object.freeze({displayName:"Terraform",fileTypes:["tf","tfvars"],name:"terraform",patterns:[{include:"#comments"},{include:"#attribute_definition"},{include:"#block"},{include:"#expressions"}],repository:{attribute_access:{begin:"\\.(?!\\*)",beginCaptures:{0:{name:"keyword.operator.accessor.hcl"}},comment:"Matches traversal attribute access such as .attr",end:"[A-Za-z][\\w-]*|\\d*",endCaptures:{0:{patterns:[{comment:"Attribute name",match:"(?!null|false|true)[[:alpha:]][\\w-]*",name:"variable.other.member.hcl"},{comment:"Optional attribute index",match:"\\d+",name:"constant.numeric.integer.hcl"}]}}},attribute_definition:{captures:{1:{name:"punctuation.section.parens.begin.hcl"},2:{name:"variable.other.readwrite.hcl"},3:{name:"punctuation.section.parens.end.hcl"},4:{name:"keyword.operator.assignment.hcl"}},comment:'Identifier "=" with optional parens',match:"(\\()?(\\b(?!null\\b|false\\b|true\\b)[A-Za-z][0-9A-Za-z_-]*)(\\))?\\s*(=(?!=|>))\\s*",name:"variable.declaration.hcl"},attribute_splat:{begin:"\\.",beginCaptures:{0:{name:"keyword.operator.accessor.hcl"}},comment:"Legacy attribute-only splat",end:"\\*",endCaptures:{0:{name:"keyword.operator.splat.hcl"}}},block:{begin:'([\\w][\\-\\w]*)([\\s\\"\\-\\w]*)(\\{)',beginCaptures:{1:{patterns:[{comment:"Known block type",match:"\\bdata|check|import|locals|module|output|provider|resource|terraform|variable\\b",name:"entity.name.type.terraform"},{comment:"Unknown block type",match:"\\b(?!null|false|true)[[:alpha:]][[:alnum:]_-]*\\b",name:"entity.name.type.hcl"}]},2:{patterns:[{comment:"Block label",match:'[\\"\\-\\w]+',name:"variable.other.enummember.hcl"}]},3:{name:"punctuation.section.block.begin.hcl"}},comment:'This will match Terraform blocks like `resource "aws_instance" "web" {` or `module {`',end:"\\}",endCaptures:{0:{name:"punctuation.section.block.end.hcl"}},name:"meta.block.hcl",patterns:[{include:"#comments"},{include:"#attribute_definition"},{include:"#block"},{include:"#expressions"}]},block_inline_comments:{begin:"/\\*",captures:{0:{name:"punctuation.definition.comment.hcl"}},comment:"Inline comments start with the /* sequence and end with the */ sequence, and may have any characters within except the ending sequence. An inline comment is considered equivalent to a whitespace sequence",end:"\\*/",name:"comment.block.hcl"},brackets:{begin:"\\[",beginCaptures:{0:{name:"punctuation.section.brackets.begin.hcl"}},end:"\\]",endCaptures:{0:{name:"punctuation.section.brackets.end.hcl"}},patterns:[{comment:"Splat operator",match:"\\*",name:"keyword.operator.splat.hcl"},{include:"#comma"},{include:"#comments"},{include:"#inline_for_expression"},{include:"#inline_if_expression"},{include:"#expressions"},{include:"#local_identifiers"}]},char_escapes:{comment:"Character Escapes",match:"\\\\[nrt\"\\\\]|\\\\u(\\h{8}|\\h{4})",name:"constant.character.escape.hcl"},comma:{comment:"Commas - used in certain expressions",match:"\\,",name:"punctuation.separator.hcl"},comments:{patterns:[{include:"#hash_line_comments"},{include:"#double_slash_line_comments"},{include:"#block_inline_comments"}]},double_slash_line_comments:{begin:"//",captures:{0:{name:"punctuation.definition.comment.hcl"}},comment:"Line comments start with // sequence and end with the next newline sequence. A line comment is considered equivalent to a newline sequence",end:"$\\n?",name:"comment.line.double-slash.hcl"},expressions:{patterns:[{include:"#literal_values"},{include:"#operators"},{include:"#tuple_for_expression"},{include:"#object_for_expression"},{include:"#brackets"},{include:"#objects"},{include:"#attribute_access"},{include:"#attribute_splat"},{include:"#functions"},{include:"#parens"}]},for_expression_body:{patterns:[{comment:"in keyword",match:"\\bin\\b",name:"keyword.operator.word.hcl"},{comment:"if keyword",match:"\\bif\\b",name:"keyword.control.conditional.hcl"},{match:":",name:"keyword.operator.hcl"},{include:"#expressions"},{include:"#comments"},{include:"#comma"},{include:"#local_identifiers"}]},functions:{begin:"([:\\-\\w]+)(\\()",beginCaptures:{1:{patterns:[{match:"\\b(core::)?(abs|abspath|alltrue|anytrue|base64decode|base64encode|base64gzip|base64sha256|base64sha512|basename|bcrypt|can|ceil|chomp|chunklist|cidrhost|cidrnetmask|cidrsubnet|cidrsubnets|coalesce|coalescelist|compact|concat|contains|csvdecode|dirname|distinct|element|endswith|file|filebase64|filebase64sha256|filebase64sha512|fileexists|filemd5|fileset|filesha1|filesha256|filesha512|flatten|floor|format|formatdate|formatlist|indent|index|join|jsondecode|jsonencode|keys|length|log|lookup|lower|matchkeys|max|md5|merge|min|nonsensitive|one|parseint|pathexpand|plantimestamp|pow|range|regex|regexall|replace|reverse|rsadecrypt|sensitive|setintersection|setproduct|setsubtract|setunion|sha1|sha256|sha512|signum|slice|sort|split|startswith|strcontains|strrev|substr|sum|templatefile|textdecodebase64|textencodebase64|timeadd|timecmp|timestamp|title|tobool|tolist|tomap|tonumber|toset|tostring|transpose|trim|trimprefix|trimspace|trimsuffix|try|upper|urlencode|uuid|uuidv5|values|yamldecode|yamlencode|zipmap)\\b",name:"support.function.builtin.terraform"},{match:"\\bprovider::[[:alpha:]][\\w_-]*::[[:alpha:]][\\w_-]*\\b",name:"support.function.provider.terraform"}]},2:{name:"punctuation.section.parens.begin.hcl"}},comment:"Built-in function calls",end:"\\)",endCaptures:{0:{name:"punctuation.section.parens.end.hcl"}},name:"meta.function-call.hcl",patterns:[{include:"#comments"},{include:"#expressions"},{include:"#comma"}]},hash_line_comments:{begin:"#",captures:{0:{name:"punctuation.definition.comment.hcl"}},comment:"Line comments start with # sequence and end with the next newline sequence. A line comment is considered equivalent to a newline sequence",end:"$\\n?",name:"comment.line.number-sign.hcl"},hcl_type_keywords:{comment:"Type keywords known to HCL.",match:"\\b(any|string|number|bool|list|set|map|tuple|object)\\b",name:"storage.type.hcl"},heredoc:{begin:"(<<-?)\\s*(\\w+)\\s*$",beginCaptures:{1:{name:"keyword.operator.heredoc.hcl"},2:{name:"keyword.control.heredoc.hcl"}},comment:"String Heredoc",end:"^\\s*\\2\\s*$",endCaptures:{0:{name:"keyword.control.heredoc.hcl"}},name:"string.unquoted.heredoc.hcl",patterns:[{include:"#string_interpolation"}]},inline_for_expression:{captures:{1:{name:"keyword.control.hcl"},2:{patterns:[{match:"\\=\\>",name:"storage.type.function.hcl"},{include:"#for_expression_body"}]}},match:"(for)\\b(.*)\\n"},inline_if_expression:{begin:"(if)\\b",beginCaptures:{1:{name:"keyword.control.conditional.hcl"}},end:"\\n",patterns:[{include:"#expressions"},{include:"#comments"},{include:"#comma"},{include:"#local_identifiers"}]},language_constants:{comment:"Language Constants",match:"\\b(true|false|null)\\b",name:"constant.language.hcl"},literal_values:{patterns:[{include:"#numeric_literals"},{include:"#language_constants"},{include:"#string_literals"},{include:"#heredoc"},{include:"#hcl_type_keywords"},{include:"#named_value_references"}]},local_identifiers:{comment:"Local Identifiers",match:"\\b(?!null|false|true)[A-Za-z][0-9A-Za-z_-]*\\b",name:"variable.other.readwrite.hcl"},named_value_references:{comment:"Constant values available only to Terraform.",match:"\\b(var|local|module|data|path|terraform)\\b",name:"variable.other.readwrite.terraform"},numeric_literals:{patterns:[{captures:{1:{name:"punctuation.separator.exponent.hcl"}},comment:"Integer, no fraction, optional exponent",match:"\\b\\d+([Ee][+-]?)\\d+\\b",name:"constant.numeric.float.hcl"},{captures:{1:{name:"punctuation.separator.decimal.hcl"},2:{name:"punctuation.separator.exponent.hcl"}},comment:"Integer, fraction, optional exponent",match:"\\b\\d+(\\.)\\d+(?:([Ee][+-]?)\\d+)?\\b",name:"constant.numeric.float.hcl"},{comment:"Integers",match:"\\b\\d+\\b",name:"constant.numeric.integer.hcl"}]},object_for_expression:{begin:"(\\{)\\s?(for)\\b",beginCaptures:{1:{name:"punctuation.section.braces.begin.hcl"},2:{name:"keyword.control.hcl"}},end:"\\}",endCaptures:{0:{name:"punctuation.section.braces.end.hcl"}},patterns:[{match:"=>",name:"storage.type.function.hcl"},{include:"#for_expression_body"}]},object_key_values:{patterns:[{include:"#comments"},{include:"#literal_values"},{include:"#operators"},{include:"#tuple_for_expression"},{include:"#object_for_expression"},{include:"#heredoc"},{include:"#functions"}]},objects:{begin:"\\{",beginCaptures:{0:{name:"punctuation.section.braces.begin.hcl"}},end:"\\}",endCaptures:{0:{name:"punctuation.section.braces.end.hcl"}},name:"meta.braces.hcl",patterns:[{include:"#comments"},{include:"#objects"},{include:"#inline_for_expression"},{include:"#inline_if_expression"},{captures:{1:{name:"meta.mapping.key.hcl variable.other.readwrite.hcl"},2:{name:"keyword.operator.assignment.hcl",patterns:[{match:"\\=\\>",name:"storage.type.function.hcl"}]}},comment:"Literal, named object key",match:"\\b((?!null|false|true)[A-Za-z][0-9A-Za-z_-]*)\\s*(=>?)\\s*"},{captures:{0:{patterns:[{include:"#named_value_references"}]},1:{name:"meta.mapping.key.hcl string.quoted.double.hcl"},2:{name:"punctuation.definition.string.begin.hcl"},3:{name:"punctuation.definition.string.end.hcl"},4:{name:"keyword.operator.hcl"}},comment:"String object key",match:'\\b((").*("))\\s*(=)\\s*'},{begin:"^\\s*\\(",beginCaptures:{0:{name:"punctuation.section.parens.begin.hcl"}},comment:"Computed object key (any expression between parens)",end:"(\\))\\s*(=|:)\\s*",endCaptures:{1:{name:"punctuation.section.parens.end.hcl"},2:{name:"keyword.operator.hcl"}},name:"meta.mapping.key.hcl",patterns:[{include:"#named_value_references"},{include:"#attribute_access"}]},{include:"#object_key_values"}]},operators:{patterns:[{match:">=",name:"keyword.operator.hcl"},{match:"<=",name:"keyword.operator.hcl"},{match:"==",name:"keyword.operator.hcl"},{match:"!=",name:"keyword.operator.hcl"},{match:"\\+",name:"keyword.operator.arithmetic.hcl"},{match:"-",name:"keyword.operator.arithmetic.hcl"},{match:"\\*",name:"keyword.operator.arithmetic.hcl"},{match:"\\/",name:"keyword.operator.arithmetic.hcl"},{match:"\\%",name:"keyword.operator.arithmetic.hcl"},{match:"\\&\\&",name:"keyword.operator.logical.hcl"},{match:"\\|\\|",name:"keyword.operator.logical.hcl"},{match:"!",name:"keyword.operator.logical.hcl"},{match:">",name:"keyword.operator.hcl"},{match:"<",name:"keyword.operator.hcl"},{match:"\\?",name:"keyword.operator.hcl"},{match:"\\.\\.\\.",name:"keyword.operator.hcl"},{match:":",name:"keyword.operator.hcl"},{match:"=>",name:"keyword.operator.hcl"}]},parens:{begin:"\\(",beginCaptures:{0:{name:"punctuation.section.parens.begin.hcl"}},comment:"Parens - matched *after* function syntax",end:"\\)",endCaptures:{0:{name:"punctuation.section.parens.end.hcl"}},patterns:[{include:"#comments"},{include:"#expressions"}]},string_interpolation:{begin:"(?<![%$])([%$]{)",beginCaptures:{1:{name:"keyword.other.interpolation.begin.hcl"}},comment:"String interpolation",end:"\\}",endCaptures:{0:{name:"keyword.other.interpolation.end.hcl"}},name:"meta.interpolation.hcl",patterns:[{comment:"Trim left whitespace",match:"\\~\\s",name:"keyword.operator.template.left.trim.hcl"},{comment:"Trim right whitespace",match:"\\s\\~",name:"keyword.operator.template.right.trim.hcl"},{comment:"if/else/endif and for/in/endfor directives",match:"\\b(if|else|endif|for|in|endfor)\\b",name:"keyword.control.hcl"},{include:"#expressions"},{include:"#local_identifiers"}]},string_literals:{begin:'"',beginCaptures:{0:{name:"punctuation.definition.string.begin.hcl"}},comment:"Strings",end:'"',endCaptures:{0:{name:"punctuation.definition.string.end.hcl"}},name:"string.quoted.double.hcl",patterns:[{include:"#string_interpolation"},{include:"#char_escapes"}]},tuple_for_expression:{begin:"(\\[)\\s?(for)\\b",beginCaptures:{1:{name:"punctuation.section.brackets.begin.hcl"},2:{name:"keyword.control.hcl"}},end:"\\]",endCaptures:{0:{name:"punctuation.section.brackets.end.hcl"}},patterns:[{include:"#for_expression_body"}]}},scopeName:"source.hcl.terraform",aliases:["tf","tfvars"]})]);}};});
2
- //# sourceMappingURL=terraform-73471876.cjs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"terraform-73471876.cjs.js","sources":["../../../node_modules/shiki/dist/langs/terraform.mjs"],"sourcesContent":["const lang = Object.freeze({ \"displayName\": \"Terraform\", \"fileTypes\": [\"tf\", \"tfvars\"], \"name\": \"terraform\", \"patterns\": [{ \"include\": \"#comments\" }, { \"include\": \"#attribute_definition\" }, { \"include\": \"#block\" }, { \"include\": \"#expressions\" }], \"repository\": { \"attribute_access\": { \"begin\": \"\\\\.(?!\\\\*)\", \"beginCaptures\": { \"0\": { \"name\": \"keyword.operator.accessor.hcl\" } }, \"comment\": \"Matches traversal attribute access such as .attr\", \"end\": \"[A-Za-z][\\\\w-]*|\\\\d*\", \"endCaptures\": { \"0\": { \"patterns\": [{ \"comment\": \"Attribute name\", \"match\": \"(?!null|false|true)[[:alpha:]][\\\\w-]*\", \"name\": \"variable.other.member.hcl\" }, { \"comment\": \"Optional attribute index\", \"match\": \"\\\\d+\", \"name\": \"constant.numeric.integer.hcl\" }] } } }, \"attribute_definition\": { \"captures\": { \"1\": { \"name\": \"punctuation.section.parens.begin.hcl\" }, \"2\": { \"name\": \"variable.other.readwrite.hcl\" }, \"3\": { \"name\": \"punctuation.section.parens.end.hcl\" }, \"4\": { \"name\": \"keyword.operator.assignment.hcl\" } }, \"comment\": 'Identifier \"=\" with optional parens', \"match\": \"(\\\\()?(\\\\b(?!null\\\\b|false\\\\b|true\\\\b)[A-Za-z][0-9A-Za-z_-]*)(\\\\))?\\\\s*(=(?!=|>))\\\\s*\", \"name\": \"variable.declaration.hcl\" }, \"attribute_splat\": { \"begin\": \"\\\\.\", \"beginCaptures\": { \"0\": { \"name\": \"keyword.operator.accessor.hcl\" } }, \"comment\": \"Legacy attribute-only splat\", \"end\": \"\\\\*\", \"endCaptures\": { \"0\": { \"name\": \"keyword.operator.splat.hcl\" } } }, \"block\": { \"begin\": '([\\\\w][\\\\-\\\\w]*)([\\\\s\\\\\"\\\\-\\\\w]*)(\\\\{)', \"beginCaptures\": { \"1\": { \"patterns\": [{ \"comment\": \"Known block type\", \"match\": \"\\\\bdata|check|import|locals|module|output|provider|resource|terraform|variable\\\\b\", \"name\": \"entity.name.type.terraform\" }, { \"comment\": \"Unknown block type\", \"match\": \"\\\\b(?!null|false|true)[[:alpha:]][[:alnum:]_-]*\\\\b\", \"name\": \"entity.name.type.hcl\" }] }, \"2\": { \"patterns\": [{ \"comment\": \"Block label\", \"match\": '[\\\\\"\\\\-\\\\w]+', \"name\": \"variable.other.enummember.hcl\" }] }, \"3\": { \"name\": \"punctuation.section.block.begin.hcl\" } }, \"comment\": 'This will match Terraform blocks like `resource \"aws_instance\" \"web\" {` or `module {`', \"end\": \"\\\\}\", \"endCaptures\": { \"0\": { \"name\": \"punctuation.section.block.end.hcl\" } }, \"name\": \"meta.block.hcl\", \"patterns\": [{ \"include\": \"#comments\" }, { \"include\": \"#attribute_definition\" }, { \"include\": \"#block\" }, { \"include\": \"#expressions\" }] }, \"block_inline_comments\": { \"begin\": \"/\\\\*\", \"captures\": { \"0\": { \"name\": \"punctuation.definition.comment.hcl\" } }, \"comment\": \"Inline comments start with the /* sequence and end with the */ sequence, and may have any characters within except the ending sequence. An inline comment is considered equivalent to a whitespace sequence\", \"end\": \"\\\\*/\", \"name\": \"comment.block.hcl\" }, \"brackets\": { \"begin\": \"\\\\[\", \"beginCaptures\": { \"0\": { \"name\": \"punctuation.section.brackets.begin.hcl\" } }, \"end\": \"\\\\]\", \"endCaptures\": { \"0\": { \"name\": \"punctuation.section.brackets.end.hcl\" } }, \"patterns\": [{ \"comment\": \"Splat operator\", \"match\": \"\\\\*\", \"name\": \"keyword.operator.splat.hcl\" }, { \"include\": \"#comma\" }, { \"include\": \"#comments\" }, { \"include\": \"#inline_for_expression\" }, { \"include\": \"#inline_if_expression\" }, { \"include\": \"#expressions\" }, { \"include\": \"#local_identifiers\" }] }, \"char_escapes\": { \"comment\": \"Character Escapes\", \"match\": '\\\\\\\\[nrt\"\\\\\\\\]|\\\\\\\\u(\\\\h{8}|\\\\h{4})', \"name\": \"constant.character.escape.hcl\" }, \"comma\": { \"comment\": \"Commas - used in certain expressions\", \"match\": \"\\\\,\", \"name\": \"punctuation.separator.hcl\" }, \"comments\": { \"patterns\": [{ \"include\": \"#hash_line_comments\" }, { \"include\": \"#double_slash_line_comments\" }, { \"include\": \"#block_inline_comments\" }] }, \"double_slash_line_comments\": { \"begin\": \"//\", \"captures\": { \"0\": { \"name\": \"punctuation.definition.comment.hcl\" } }, \"comment\": \"Line comments start with // sequence and end with the next newline sequence. A line comment is considered equivalent to a newline sequence\", \"end\": \"$\\\\n?\", \"name\": \"comment.line.double-slash.hcl\" }, \"expressions\": { \"patterns\": [{ \"include\": \"#literal_values\" }, { \"include\": \"#operators\" }, { \"include\": \"#tuple_for_expression\" }, { \"include\": \"#object_for_expression\" }, { \"include\": \"#brackets\" }, { \"include\": \"#objects\" }, { \"include\": \"#attribute_access\" }, { \"include\": \"#attribute_splat\" }, { \"include\": \"#functions\" }, { \"include\": \"#parens\" }] }, \"for_expression_body\": { \"patterns\": [{ \"comment\": \"in keyword\", \"match\": \"\\\\bin\\\\b\", \"name\": \"keyword.operator.word.hcl\" }, { \"comment\": \"if keyword\", \"match\": \"\\\\bif\\\\b\", \"name\": \"keyword.control.conditional.hcl\" }, { \"match\": \":\", \"name\": \"keyword.operator.hcl\" }, { \"include\": \"#expressions\" }, { \"include\": \"#comments\" }, { \"include\": \"#comma\" }, { \"include\": \"#local_identifiers\" }] }, \"functions\": { \"begin\": \"([:\\\\-\\\\w]+)(\\\\()\", \"beginCaptures\": { \"1\": { \"patterns\": [{ \"match\": \"\\\\b(core::)?(abs|abspath|alltrue|anytrue|base64decode|base64encode|base64gzip|base64sha256|base64sha512|basename|bcrypt|can|ceil|chomp|chunklist|cidrhost|cidrnetmask|cidrsubnet|cidrsubnets|coalesce|coalescelist|compact|concat|contains|csvdecode|dirname|distinct|element|endswith|file|filebase64|filebase64sha256|filebase64sha512|fileexists|filemd5|fileset|filesha1|filesha256|filesha512|flatten|floor|format|formatdate|formatlist|indent|index|join|jsondecode|jsonencode|keys|length|log|lookup|lower|matchkeys|max|md5|merge|min|nonsensitive|one|parseint|pathexpand|plantimestamp|pow|range|regex|regexall|replace|reverse|rsadecrypt|sensitive|setintersection|setproduct|setsubtract|setunion|sha1|sha256|sha512|signum|slice|sort|split|startswith|strcontains|strrev|substr|sum|templatefile|textdecodebase64|textencodebase64|timeadd|timecmp|timestamp|title|tobool|tolist|tomap|tonumber|toset|tostring|transpose|trim|trimprefix|trimspace|trimsuffix|try|upper|urlencode|uuid|uuidv5|values|yamldecode|yamlencode|zipmap)\\\\b\", \"name\": \"support.function.builtin.terraform\" }, { \"match\": \"\\\\bprovider::[[:alpha:]][\\\\w_-]*::[[:alpha:]][\\\\w_-]*\\\\b\", \"name\": \"support.function.provider.terraform\" }] }, \"2\": { \"name\": \"punctuation.section.parens.begin.hcl\" } }, \"comment\": \"Built-in function calls\", \"end\": \"\\\\)\", \"endCaptures\": { \"0\": { \"name\": \"punctuation.section.parens.end.hcl\" } }, \"name\": \"meta.function-call.hcl\", \"patterns\": [{ \"include\": \"#comments\" }, { \"include\": \"#expressions\" }, { \"include\": \"#comma\" }] }, \"hash_line_comments\": { \"begin\": \"#\", \"captures\": { \"0\": { \"name\": \"punctuation.definition.comment.hcl\" } }, \"comment\": \"Line comments start with # sequence and end with the next newline sequence. A line comment is considered equivalent to a newline sequence\", \"end\": \"$\\\\n?\", \"name\": \"comment.line.number-sign.hcl\" }, \"hcl_type_keywords\": { \"comment\": \"Type keywords known to HCL.\", \"match\": \"\\\\b(any|string|number|bool|list|set|map|tuple|object)\\\\b\", \"name\": \"storage.type.hcl\" }, \"heredoc\": { \"begin\": \"(<<-?)\\\\s*(\\\\w+)\\\\s*$\", \"beginCaptures\": { \"1\": { \"name\": \"keyword.operator.heredoc.hcl\" }, \"2\": { \"name\": \"keyword.control.heredoc.hcl\" } }, \"comment\": \"String Heredoc\", \"end\": \"^\\\\s*\\\\2\\\\s*$\", \"endCaptures\": { \"0\": { \"name\": \"keyword.control.heredoc.hcl\" } }, \"name\": \"string.unquoted.heredoc.hcl\", \"patterns\": [{ \"include\": \"#string_interpolation\" }] }, \"inline_for_expression\": { \"captures\": { \"1\": { \"name\": \"keyword.control.hcl\" }, \"2\": { \"patterns\": [{ \"match\": \"\\\\=\\\\>\", \"name\": \"storage.type.function.hcl\" }, { \"include\": \"#for_expression_body\" }] } }, \"match\": \"(for)\\\\b(.*)\\\\n\" }, \"inline_if_expression\": { \"begin\": \"(if)\\\\b\", \"beginCaptures\": { \"1\": { \"name\": \"keyword.control.conditional.hcl\" } }, \"end\": \"\\\\n\", \"patterns\": [{ \"include\": \"#expressions\" }, { \"include\": \"#comments\" }, { \"include\": \"#comma\" }, { \"include\": \"#local_identifiers\" }] }, \"language_constants\": { \"comment\": \"Language Constants\", \"match\": \"\\\\b(true|false|null)\\\\b\", \"name\": \"constant.language.hcl\" }, \"literal_values\": { \"patterns\": [{ \"include\": \"#numeric_literals\" }, { \"include\": \"#language_constants\" }, { \"include\": \"#string_literals\" }, { \"include\": \"#heredoc\" }, { \"include\": \"#hcl_type_keywords\" }, { \"include\": \"#named_value_references\" }] }, \"local_identifiers\": { \"comment\": \"Local Identifiers\", \"match\": \"\\\\b(?!null|false|true)[A-Za-z][0-9A-Za-z_-]*\\\\b\", \"name\": \"variable.other.readwrite.hcl\" }, \"named_value_references\": { \"comment\": \"Constant values available only to Terraform.\", \"match\": \"\\\\b(var|local|module|data|path|terraform)\\\\b\", \"name\": \"variable.other.readwrite.terraform\" }, \"numeric_literals\": { \"patterns\": [{ \"captures\": { \"1\": { \"name\": \"punctuation.separator.exponent.hcl\" } }, \"comment\": \"Integer, no fraction, optional exponent\", \"match\": \"\\\\b\\\\d+([Ee][+-]?)\\\\d+\\\\b\", \"name\": \"constant.numeric.float.hcl\" }, { \"captures\": { \"1\": { \"name\": \"punctuation.separator.decimal.hcl\" }, \"2\": { \"name\": \"punctuation.separator.exponent.hcl\" } }, \"comment\": \"Integer, fraction, optional exponent\", \"match\": \"\\\\b\\\\d+(\\\\.)\\\\d+(?:([Ee][+-]?)\\\\d+)?\\\\b\", \"name\": \"constant.numeric.float.hcl\" }, { \"comment\": \"Integers\", \"match\": \"\\\\b\\\\d+\\\\b\", \"name\": \"constant.numeric.integer.hcl\" }] }, \"object_for_expression\": { \"begin\": \"(\\\\{)\\\\s?(for)\\\\b\", \"beginCaptures\": { \"1\": { \"name\": \"punctuation.section.braces.begin.hcl\" }, \"2\": { \"name\": \"keyword.control.hcl\" } }, \"end\": \"\\\\}\", \"endCaptures\": { \"0\": { \"name\": \"punctuation.section.braces.end.hcl\" } }, \"patterns\": [{ \"match\": \"=>\", \"name\": \"storage.type.function.hcl\" }, { \"include\": \"#for_expression_body\" }] }, \"object_key_values\": { \"patterns\": [{ \"include\": \"#comments\" }, { \"include\": \"#literal_values\" }, { \"include\": \"#operators\" }, { \"include\": \"#tuple_for_expression\" }, { \"include\": \"#object_for_expression\" }, { \"include\": \"#heredoc\" }, { \"include\": \"#functions\" }] }, \"objects\": { \"begin\": \"\\\\{\", \"beginCaptures\": { \"0\": { \"name\": \"punctuation.section.braces.begin.hcl\" } }, \"end\": \"\\\\}\", \"endCaptures\": { \"0\": { \"name\": \"punctuation.section.braces.end.hcl\" } }, \"name\": \"meta.braces.hcl\", \"patterns\": [{ \"include\": \"#comments\" }, { \"include\": \"#objects\" }, { \"include\": \"#inline_for_expression\" }, { \"include\": \"#inline_if_expression\" }, { \"captures\": { \"1\": { \"name\": \"meta.mapping.key.hcl variable.other.readwrite.hcl\" }, \"2\": { \"name\": \"keyword.operator.assignment.hcl\", \"patterns\": [{ \"match\": \"\\\\=\\\\>\", \"name\": \"storage.type.function.hcl\" }] } }, \"comment\": \"Literal, named object key\", \"match\": \"\\\\b((?!null|false|true)[A-Za-z][0-9A-Za-z_-]*)\\\\s*(=>?)\\\\s*\" }, { \"captures\": { \"0\": { \"patterns\": [{ \"include\": \"#named_value_references\" }] }, \"1\": { \"name\": \"meta.mapping.key.hcl string.quoted.double.hcl\" }, \"2\": { \"name\": \"punctuation.definition.string.begin.hcl\" }, \"3\": { \"name\": \"punctuation.definition.string.end.hcl\" }, \"4\": { \"name\": \"keyword.operator.hcl\" } }, \"comment\": \"String object key\", \"match\": '\\\\b((\").*(\"))\\\\s*(=)\\\\s*' }, { \"begin\": \"^\\\\s*\\\\(\", \"beginCaptures\": { \"0\": { \"name\": \"punctuation.section.parens.begin.hcl\" } }, \"comment\": \"Computed object key (any expression between parens)\", \"end\": \"(\\\\))\\\\s*(=|:)\\\\s*\", \"endCaptures\": { \"1\": { \"name\": \"punctuation.section.parens.end.hcl\" }, \"2\": { \"name\": \"keyword.operator.hcl\" } }, \"name\": \"meta.mapping.key.hcl\", \"patterns\": [{ \"include\": \"#named_value_references\" }, { \"include\": \"#attribute_access\" }] }, { \"include\": \"#object_key_values\" }] }, \"operators\": { \"patterns\": [{ \"match\": \">=\", \"name\": \"keyword.operator.hcl\" }, { \"match\": \"<=\", \"name\": \"keyword.operator.hcl\" }, { \"match\": \"==\", \"name\": \"keyword.operator.hcl\" }, { \"match\": \"!=\", \"name\": \"keyword.operator.hcl\" }, { \"match\": \"\\\\+\", \"name\": \"keyword.operator.arithmetic.hcl\" }, { \"match\": \"-\", \"name\": \"keyword.operator.arithmetic.hcl\" }, { \"match\": \"\\\\*\", \"name\": \"keyword.operator.arithmetic.hcl\" }, { \"match\": \"\\\\/\", \"name\": \"keyword.operator.arithmetic.hcl\" }, { \"match\": \"\\\\%\", \"name\": \"keyword.operator.arithmetic.hcl\" }, { \"match\": \"\\\\&\\\\&\", \"name\": \"keyword.operator.logical.hcl\" }, { \"match\": \"\\\\|\\\\|\", \"name\": \"keyword.operator.logical.hcl\" }, { \"match\": \"!\", \"name\": \"keyword.operator.logical.hcl\" }, { \"match\": \">\", \"name\": \"keyword.operator.hcl\" }, { \"match\": \"<\", \"name\": \"keyword.operator.hcl\" }, { \"match\": \"\\\\?\", \"name\": \"keyword.operator.hcl\" }, { \"match\": \"\\\\.\\\\.\\\\.\", \"name\": \"keyword.operator.hcl\" }, { \"match\": \":\", \"name\": \"keyword.operator.hcl\" }, { \"match\": \"=>\", \"name\": \"keyword.operator.hcl\" }] }, \"parens\": { \"begin\": \"\\\\(\", \"beginCaptures\": { \"0\": { \"name\": \"punctuation.section.parens.begin.hcl\" } }, \"comment\": \"Parens - matched *after* function syntax\", \"end\": \"\\\\)\", \"endCaptures\": { \"0\": { \"name\": \"punctuation.section.parens.end.hcl\" } }, \"patterns\": [{ \"include\": \"#comments\" }, { \"include\": \"#expressions\" }] }, \"string_interpolation\": { \"begin\": \"(?<![%$])([%$]{)\", \"beginCaptures\": { \"1\": { \"name\": \"keyword.other.interpolation.begin.hcl\" } }, \"comment\": \"String interpolation\", \"end\": \"\\\\}\", \"endCaptures\": { \"0\": { \"name\": \"keyword.other.interpolation.end.hcl\" } }, \"name\": \"meta.interpolation.hcl\", \"patterns\": [{ \"comment\": \"Trim left whitespace\", \"match\": \"\\\\~\\\\s\", \"name\": \"keyword.operator.template.left.trim.hcl\" }, { \"comment\": \"Trim right whitespace\", \"match\": \"\\\\s\\\\~\", \"name\": \"keyword.operator.template.right.trim.hcl\" }, { \"comment\": \"if/else/endif and for/in/endfor directives\", \"match\": \"\\\\b(if|else|endif|for|in|endfor)\\\\b\", \"name\": \"keyword.control.hcl\" }, { \"include\": \"#expressions\" }, { \"include\": \"#local_identifiers\" }] }, \"string_literals\": { \"begin\": '\"', \"beginCaptures\": { \"0\": { \"name\": \"punctuation.definition.string.begin.hcl\" } }, \"comment\": \"Strings\", \"end\": '\"', \"endCaptures\": { \"0\": { \"name\": \"punctuation.definition.string.end.hcl\" } }, \"name\": \"string.quoted.double.hcl\", \"patterns\": [{ \"include\": \"#string_interpolation\" }, { \"include\": \"#char_escapes\" }] }, \"tuple_for_expression\": { \"begin\": \"(\\\\[)\\\\s?(for)\\\\b\", \"beginCaptures\": { \"1\": { \"name\": \"punctuation.section.brackets.begin.hcl\" }, \"2\": { \"name\": \"keyword.control.hcl\" } }, \"end\": \"\\\\]\", \"endCaptures\": { \"0\": { \"name\": \"punctuation.section.brackets.end.hcl\" } }, \"patterns\": [{ \"include\": \"#for_expression_body\" }] } }, \"scopeName\": \"source.hcl.terraform\", \"aliases\": [\"tf\", \"tfvars\"] });\nvar terraform = [\n lang\n];\n\nexport { terraform as default };\n"],"names":["terraform","Object","freeze","displayName","fileTypes","name","patterns","include","repository","attribute_access","begin","beginCaptures","comment","end","endCaptures","match","attribute_definition","captures","attribute_splat","block","block_inline_comments","brackets","char_escapes","comma","comments","double_slash_line_comments","expressions","for_expression_body","functions","hash_line_comments","hcl_type_keywords","heredoc","inline_for_expression","inline_if_expression","language_constants","literal_values","local_identifiers","named_value_references","numeric_literals","object_for_expression","object_key_values","objects","operators","parens","string_interpolation","string_literals","tuple_for_expression","scopeName","aliases"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,2 +0,0 @@
1
- System.register(["./css-29043e92.cjs.js","./javascript-86304e1b.cjs.js","./scss-40d13d15.cjs.js","./php-580a8f27.cjs.js","./python-9390260f.cjs.js","./ruby-951187c3.cjs.js","./html-ea7b5a6d.cjs.js","./xml-1938a4d8.cjs.js","./java-5bfb7c2a.cjs.js","./sql-43113b01.cjs.js","./json-73d5aeb5.cjs.js","./c-da3bb8a6.cjs.js","./shellscript-cd92245f.cjs.js","./lua-1990ffc7.cjs.js"],function(_export,_context){"use strict";var t,e,n,i,a,s,r;function _toConsumableArray(arr){return _arrayWithoutHoles(arr)||_iterableToArray(arr)||_unsupportedIterableToArray(arr)||_nonIterableSpread();}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _unsupportedIterableToArray(o,minLen){if(!o)return;if(typeof o==="string")return _arrayLikeToArray(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(o);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _arrayLikeToArray(o,minLen);}function _iterableToArray(iter){if(typeof Symbol!=="undefined"&&iter[Symbol.iterator]!=null||iter["@@iterator"]!=null)return Array.from(iter);}function _arrayWithoutHoles(arr){if(Array.isArray(arr))return _arrayLikeToArray(arr);}function _arrayLikeToArray(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++)arr2[i]=arr[i];return arr2;}return{setters:[function(_css00aCjsJs){t=_css00aCjsJs["default"];},function(_javascript009CjsJs){e=_javascript009CjsJs["default"];},function(_scss00bCjsJs){n=_scss00bCjsJs["default"];},function(_php02oCjsJs){i=_php02oCjsJs["default"];},function(_python00ICjsJs){a=_python00ICjsJs["default"];},function(_ruby00KCjsJs){s=_ruby00KCjsJs["default"];},function(_html008CjsJs){},function(_xml00fCjsJs){},function(_java00hCjsJs){},function(_sql00PCjsJs){},function(_json00gCjsJs){},function(_c00nCjsJs){},function(_shellscript00OCjsJs){},function(_lua00VCjsJs){}],execute:function execute(){_export("default",r=[].concat(_toConsumableArray(t),_toConsumableArray(e),_toConsumableArray(n),_toConsumableArray(i),_toConsumableArray(a),_toConsumableArray(s),[Object.freeze({displayName:"Twig",fileTypes:["twig","html.twig"],firstLineMatch:"<!(?i:DOCTYPE)|<(?i:html)|<\\?(?i:php)|\\{\\{|\\{%|\\{#",foldingStartMarker:"(?x)\n (<(?i:body|div|dl|fieldset|form|head|li|ol|script|select|style|table|tbody|tfoot|thead|tr|ul)\\b.*?>\n |\x3c!--(?!.*--\\s*>)\n |^\x3c!--\\ \\#tminclude\\ (?>.*?--\x3e)$\n |\\{%\\s+(autoescape|block|embed|filter|for|if|macro|raw|sandbox|set|spaceless|trans|verbatim)\n )",foldingStopMarker:"(?x)\n (</(?i:body|div|dl|fieldset|form|head|li|ol|script|select|style|table|tbody|tfoot|thead|tr|ul)>\n |^(?!.*?\x3c!--).*?--\\s*>\n |^\x3c!--\\ end\\ tminclude\\ --\x3e$\n |\\{%\\s+end(autoescape|block|embed|filter|for|if|macro|raw|sandbox|set|spaceless|trans|verbatim)\n )",name:"twig",patterns:[{begin:"(<)([a-zA-Z0-9:]++)(?=[^>]*></\\2>)",beginCaptures:{1:{name:"punctuation.definition.tag.html"},2:{name:"entity.name.tag.html"}},end:"(>(<)/)(\\2)(>)",endCaptures:{1:{name:"punctuation.definition.tag.html"},2:{name:"meta.scope.between-tag-pair.html"},3:{name:"entity.name.tag.html"},4:{name:"punctuation.definition.tag.html"}},name:"meta.tag.any.html",patterns:[{include:"#tag-stuff"}]},{begin:"(<\\?)(xml)",captures:{1:{name:"punctuation.definition.tag.html"},2:{name:"entity.name.tag.xml.html"}},end:"(\\?>)",name:"meta.tag.preprocessor.xml.html",patterns:[{include:"#tag-generic-attribute"},{include:"#string-double-quoted"},{include:"#string-single-quoted"}]},{begin:"\x3c!--",captures:{0:{name:"punctuation.definition.comment.html"}},end:"--\\s*>",name:"comment.block.html",patterns:[{match:"--",name:"invalid.illegal.bad-comments-or-CDATA.html"},{include:"#embedded-code"}]},{begin:"<!",captures:{0:{name:"punctuation.definition.tag.html"}},end:">",name:"meta.tag.sgml.html",patterns:[{begin:"(?i:DOCTYPE)",captures:{1:{name:"entity.name.tag.doctype.html"}},end:"(?=>)",name:"meta.tag.sgml.doctype.html",patterns:[{match:'"[^">]*"',name:"string.quoted.double.doctype.identifiers-and-DTDs.html"}]},{begin:"\\[CDATA\\[",end:"]](?=>)",name:"constant.other.inline-data.html"},{match:"(\\s*)(?!--|>)\\S(\\s*)",name:"invalid.illegal.bad-comments-or-CDATA.html"}]},{include:"#embedded-code"},{begin:"(?:^\\s+)?(<)((?i:style))\\b(?![^>]*/>)",captures:{1:{name:"punctuation.definition.tag.html"},2:{name:"entity.name.tag.style.html"},3:{name:"punctuation.definition.tag.html"}},end:"(</)((?i:style))(>)(?:\\s*\\n)?",name:"source.css.embedded.html",patterns:[{include:"#tag-stuff"},{begin:"(>)",beginCaptures:{1:{name:"punctuation.definition.tag.html"}},end:"(?=</(?i:style))",patterns:[{include:"#embedded-code"},{include:"source.css"}]}]},{begin:"(?:^\\s+)?(<)((?i:script))\\b(?![^>]*/>)",beginCaptures:{1:{name:"punctuation.definition.tag.html"},2:{name:"entity.name.tag.script.html"}},end:"(?<=</(script|SCRIPT))(>)(?:\\s*\\n)?",endCaptures:{2:{name:"punctuation.definition.tag.html"}},name:"source.js.embedded.html",patterns:[{include:"#tag-stuff"},{begin:"(?<!</(?:script|SCRIPT))(>)",captures:{1:{name:"punctuation.definition.tag.html"},2:{name:"entity.name.tag.script.html"}},end:"(</)((?i:script))",patterns:[{captures:{1:{name:"punctuation.definition.comment.js"}},match:"(//).*?((?=</script)|$\\n?)",name:"comment.line.double-slash.js"},{begin:"/\\*",captures:{0:{name:"punctuation.definition.comment.js"}},end:"\\*/|(?=</script)",name:"comment.block.js"},{include:"#php"},{include:"#twig-print-tag"},{include:"#twig-statement-tag"},{include:"#twig-comment-tag"},{include:"source.js"}]}]},{begin:"(?i)(?<=\\{\\%\\sjs\\s\\%\\}|\\{\\%\\sincludejs\\s\\%\\})",comment:'Add JS support to set tags that use the pattern "css" in their name',end:"(?i)(?=\\{\\%\\sendjs\\s\\%\\}|\\{\\%\\sendincludejs\\s\\%\\})",name:"source.js.embedded.twig",patterns:[{include:"source.js"}]},{begin:"(?i)(?<=\\{\\%\\scss\\s\\%\\}|\\{\\%\\sincludecss\\s\\%\\}|\\{\\%\\sincludehirescss\\s\\%\\})",comment:'Add CSS support to set tags that use the pattern "css" in their name',end:"(?i)(?=\\{\\%\\sendcss\\s\\%\\}|\\{\\%\\sendincludecss\\s\\%\\}|\\{\\%\\sendincludehirescss\\s\\%\\})",name:"source.css.embedded.twig",patterns:[{include:"source.css"}]},{begin:"(?i)(?<=\\{\\%\\sscss\\s\\%\\}|\\{\\%\\sincludescss\\s\\%\\}|\\{\\%\\sincludehiresscss\\s\\%\\})",comment:'Add SCSS support to set tags that use the pattern "scss" in their name',end:"(?i)(?=\\{\\%\\sendscss\\s\\%\\}|\\{\\%\\sendincludescss\\s\\%\\}|\\{\\%\\sendincludehiresscss\\s\\%\\})",name:"source.css.scss.embedded.twig",patterns:[{include:"source.css.scss"}]},{begin:"(</?)((?i:body|head|html)\\b)",captures:{1:{name:"punctuation.definition.tag.html"},2:{name:"entity.name.tag.structure.any.html"}},end:"(>)",name:"meta.tag.structure.any.html",patterns:[{include:"#tag-stuff"}]},{begin:"(</?)((?i:address|blockquote|dd|div|dl|dt|fieldset|form|frame|frameset|h1|h2|h3|h4|h5|h6|iframe|noframes|object|ol|p|ul|applet|center|dir|hr|menu|pre)\\b)",beginCaptures:{1:{name:"punctuation.definition.tag.begin.html"},2:{name:"entity.name.tag.block.any.html"}},end:"(>)",endCaptures:{1:{name:"punctuation.definition.tag.end.html"}},name:"meta.tag.block.any.html",patterns:[{include:"#tag-stuff"}]},{begin:"(</?)((?i:a|abbr|acronym|area|b|base|basefont|bdo|big|br|button|caption|cite|code|col|colgroup|del|dfn|em|font|head|html|i|img|input|ins|isindex|kbd|label|legend|li|link|map|meta|noscript|optgroup|option|param|q|s|samp|script|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|title|tr|tt|u|var)\\b)",beginCaptures:{1:{name:"punctuation.definition.tag.begin.html"},2:{name:"entity.name.tag.inline.any.html"}},end:"((?: ?/)?>)",endCaptures:{1:{name:"punctuation.definition.tag.end.html"}},name:"meta.tag.inline.any.html",patterns:[{include:"#tag-stuff"}]},{begin:"(</?)([a-zA-Z0-9:]+)",beginCaptures:{1:{name:"punctuation.definition.tag.begin.html"},2:{name:"entity.name.tag.other.html"}},end:"(>)",endCaptures:{1:{name:"punctuation.definition.tag.end.html"}},name:"meta.tag.other.html",patterns:[{include:"#tag-stuff"}]},{include:"#entities"},{match:"<>",name:"invalid.illegal.incomplete.html"},{match:"<",name:"invalid.illegal.bad-angle-bracket.html"},{include:"#twig-print-tag"},{include:"#twig-statement-tag"},{include:"#twig-comment-tag"}],repository:{"embedded-code":{patterns:[{include:"#ruby"},{include:"#php"},{include:"#twig-print-tag"},{include:"#twig-statement-tag"},{include:"#twig-comment-tag"},{include:"#python"}]},entities:{patterns:[{captures:{1:{name:"punctuation.definition.entity.html"},3:{name:"punctuation.definition.entity.html"}},match:"(&)([a-zA-Z0-9]+|#\\d+|#x[0-9a-fA-F]+)(;)",name:"constant.character.entity.html"},{match:"&",name:"invalid.illegal.bad-ampersand.html"}]},php:{begin:"(?=(^\\s*)?<\\?)",end:"(?!(^\\s*)?<\\?)",patterns:[{include:"source.php"}]},python:{begin:"(?:^\\s*)<\\?python(?!.*\\?>)",end:"\\?>(?:\\s*$\\n)?",name:"source.python.embedded.html",patterns:[{include:"source.python"}]},ruby:{patterns:[{begin:"<%+#",captures:{0:{name:"punctuation.definition.comment.erb"}},end:"%>",name:"comment.block.erb"},{begin:"<%+(?!>)=?",captures:{0:{name:"punctuation.section.embedded.ruby"}},end:"-?%>",name:"source.ruby.embedded.html",patterns:[{captures:{1:{name:"punctuation.definition.comment.ruby"}},match:"(#).*?(?=-?%>)",name:"comment.line.number-sign.ruby"},{include:"source.ruby"}]},{begin:"<\\?r(?!>)=?",captures:{0:{name:"punctuation.section.embedded.ruby.nitro"}},end:"-?\\?>",name:"source.ruby.nitro.embedded.html",patterns:[{captures:{1:{name:"punctuation.definition.comment.ruby.nitro"}},match:"(#).*?(?=-?\\?>)",name:"comment.line.number-sign.ruby.nitro"},{include:"source.ruby"}]}]},"string-double-quoted":{begin:'"',beginCaptures:{0:{name:"punctuation.definition.string.begin.html"}},end:'"',endCaptures:{0:{name:"punctuation.definition.string.end.html"}},name:"string.quoted.double.html",patterns:[{include:"#embedded-code"},{include:"#entities"}]},"string-single-quoted":{begin:"'",beginCaptures:{0:{name:"punctuation.definition.string.begin.html"}},end:"'",endCaptures:{0:{name:"punctuation.definition.string.end.html"}},name:"string.quoted.single.html",patterns:[{include:"#embedded-code"},{include:"#entities"}]},"tag-generic-attribute":{match:"\\b([a-zA-Z\\-:]+)",name:"entity.other.attribute-name.html"},"tag-id-attribute":{begin:"\\b(id)\\b\\s*(=)",captures:{1:{name:"entity.other.attribute-name.id.html"},2:{name:"punctuation.separator.key-value.html"}},end:"(?<='|\")",name:"meta.attribute-with-value.id.html",patterns:[{begin:'"',beginCaptures:{0:{name:"punctuation.definition.string.begin.html"}},contentName:"meta.toc-list.id.html",end:'"',endCaptures:{0:{name:"punctuation.definition.string.end.html"}},name:"string.quoted.double.html",patterns:[{include:"#embedded-code"},{include:"#entities"}]},{begin:"'",beginCaptures:{0:{name:"punctuation.definition.string.begin.html"}},contentName:"meta.toc-list.id.html",end:"'",endCaptures:{0:{name:"punctuation.definition.string.end.html"}},name:"string.quoted.single.html",patterns:[{include:"#embedded-code"},{include:"#entities"}]}]},"tag-stuff":{patterns:[{include:"#tag-id-attribute"},{include:"#tag-generic-attribute"},{include:"#string-double-quoted"},{include:"#string-single-quoted"},{include:"#embedded-code"}]},"twig-arrays":{begin:"(?<=[\\s({\\[:,])\\[",beginCaptures:{0:{name:"punctuation.section.array.begin.twig"}},end:"\\]",endCaptures:{0:{name:"punctuation.section.array.end.twig"}},name:"meta.array.twig",patterns:[{include:"#twig-arrays"},{include:"#twig-hashes"},{include:"#twig-constants"},{include:"#twig-operators"},{include:"#twig-strings"},{include:"#twig-functions-warg"},{include:"#twig-functions"},{include:"#twig-macros"},{include:"#twig-objects"},{include:"#twig-properties"},{include:"#twig-filters-warg"},{include:"#twig-filters"},{include:"#twig-filters-warg-ud"},{include:"#twig-filters-ud"},{match:",",name:"punctuation.separator.object.twig"}]},"twig-comment-tag":{begin:"\\{#-?",beginCaptures:{0:{name:"punctuation.definition.comment.begin.twig"}},end:"-?#\\}",endCaptures:{0:{name:"punctuation.definition.comment.end.twig"}},name:"comment.block.twig"},"twig-constants":{patterns:[{match:"(?i)(?<=[\\s\\[({:,])(?:true|false|null|none)(?=[\\s)\\]}\\,])",name:"constant.language.twig"},{match:"(?<=[\\s\\[({:,]|\\.\\.|\\*\\*)\\d+(?:\\.\\d+)?(?=[\\s)\\]}\\,]|\\.\\.|\\*\\*)",name:"constant.numeric.twig"}]},"twig-filters":{captures:{1:{name:"support.function.twig"}},match:"(?<=(?:[a-zA-Z0-9_\\x{7f}-\\x{ff}\\])\\'\\\"]\\|)|\\{%\\sfilter\\s)(abs|capitalize|e(?:scape)?|first|join|(?:json|url)_encode|keys|last|length|lower|nl2br|number_format|raw|reverse|round|sort|striptags|title|trim|upper)(?=[\\s\\|\\]}):,]|\\.\\.|\\*\\*)"},"twig-filters-ud":{captures:{1:{name:"meta.function-call.other.twig"}},match:"(?<=(?:[a-zA-Z0-9_\\x{7f}-\\x{ff}\\])\\'\\\"]\\|)|\\{%\\sfilter\\s)([a-zA-Z_\\x{7f}-\\x{ff}][a-zA-Z0-9_\\x{7f}-\\x{ff}]*)"},"twig-filters-warg":{begin:"(?<=(?:[a-zA-Z0-9_\\x{7f}-\\x{ff}\\])\\'\\\"]\\|)|\\{%\\sfilter\\s)(batch|convert_encoding|date|date_modify|default|e(?:scape)?|format|join|merge|number_format|replace|round|slice|split|trim)(\\()",beginCaptures:{1:{name:"support.function.twig"},2:{name:"punctuation.definition.parameters.begin.twig"}},contentName:"meta.function.arguments.twig",end:"\\)",endCaptures:{0:{name:"punctuation.definition.parameters.end.twig"}},patterns:[{include:"#twig-constants"},{include:"#twig-operators"},{include:"#twig-functions-warg"},{include:"#twig-functions"},{include:"#twig-macros"},{include:"#twig-objects"},{include:"#twig-properties"},{include:"#twig-filters-warg"},{include:"#twig-filters"},{include:"#twig-filters-warg-ud"},{include:"#twig-filters-ud"},{include:"#twig-strings"},{include:"#twig-arrays"},{include:"#twig-hashes"}]},"twig-filters-warg-ud":{begin:"(?<=(?:[a-zA-Z0-9_\\x{7f}-\\x{ff}\\])\\'\\\"]\\|)|\\{%\\sfilter\\s)([a-zA-Z_\\x{7f}-\\x{ff}][a-zA-Z0-9_\\x{7f}-\\x{ff}]*)(\\()",beginCaptures:{1:{name:"meta.function-call.other.twig"},2:{name:"punctuation.definition.parameters.begin.twig"}},contentName:"meta.function.arguments.twig",end:"\\)",endCaptures:{0:{name:"punctuation.definition.parameters.end.twig"}},patterns:[{include:"#twig-constants"},{include:"#twig-functions-warg"},{include:"#twig-functions"},{include:"#twig-macros"},{include:"#twig-objects"},{include:"#twig-properties"},{include:"#twig-filters-warg"},{include:"#twig-filters"},{include:"#twig-filters-warg-ud"},{include:"#twig-filters-ud"},{include:"#twig-strings"},{include:"#twig-arrays"},{include:"#twig-hashes"}]},"twig-functions":{captures:{1:{name:"support.function.twig"}},match:"(?<=is\\s)(defined|empty|even|iterable|odd)"},"twig-functions-warg":{begin:"(?<=[\\s(\\[{:,])(attribute|block|constant|cycle|date|divisible by|dump|include|max|min|parent|random|range|same as|source|template_from_string)(\\()",beginCaptures:{1:{name:"support.function.twig"},2:{name:"punctuation.definition.parameters.begin.twig"}},contentName:"meta.function.arguments.twig",end:"\\)",endCaptures:{0:{name:"punctuation.definition.parameters.end.twig"}},patterns:[{include:"#twig-constants"},{include:"#twig-functions-warg"},{include:"#twig-functions"},{include:"#twig-macros"},{include:"#twig-objects"},{include:"#twig-properties"},{include:"#twig-filters-warg"},{include:"#twig-filters"},{include:"#twig-filters-warg-ud"},{include:"#twig-filters-ud"},{include:"#twig-strings"},{include:"#twig-arrays"}]},"twig-hashes":{begin:"(?<=[\\s({\\[:,])\\{",beginCaptures:{0:{name:"punctuation.section.hash.begin.twig"}},end:"\\}",endCaptures:{0:{name:"punctuation.section.hash.end.twig"}},name:"meta.hash.twig",patterns:[{include:"#twig-hashes"},{include:"#twig-arrays"},{include:"#twig-constants"},{include:"#twig-operators"},{include:"#twig-strings"},{include:"#twig-functions-warg"},{include:"#twig-functions"},{include:"#twig-macros"},{include:"#twig-objects"},{include:"#twig-properties"},{include:"#twig-filters-warg"},{include:"#twig-filters"},{include:"#twig-filters-warg-ud"},{include:"#twig-filters-ud"},{match:":",name:"punctuation.separator.key-value.twig"},{match:",",name:"punctuation.separator.object.twig"}]},"twig-keywords":{match:"(?<=\\s)((?:end)?(?:autoescape|block|embed|filter|for|if|macro|raw|sandbox|set|spaceless|trans|verbatim)|as|do|else|elseif|extends|flush|from|ignore missing|import|include|only|use|with)(?=\\s)",name:"keyword.control.twig"},"twig-macros":{begin:"(?<=[\\s(\\[{:,])([a-zA-Z_\\x{7f}-\\x{ff}][a-zA-Z0-9_\\x{7f}-\\x{ff}]*)(?:(\\.)([a-zA-Z_\\x{7f}-\\x{ff}][a-zA-Z0-9_\\x{7f}-\\x{ff}]*))?(\\()",beginCaptures:{1:{name:"meta.function-call.twig"},2:{name:"punctuation.separator.property.twig"},3:{name:"variable.other.property.twig"},4:{name:"punctuation.definition.parameters.begin.twig"}},contentName:"meta.function.arguments.twig",end:"\\)",endCaptures:{0:{name:"punctuation.definition.parameters.end.twig"}},patterns:[{include:"#twig-constants"},{include:"#twig-operators"},{include:"#twig-functions-warg"},{include:"#twig-functions"},{include:"#twig-macros"},{include:"#twig-objects"},{include:"#twig-properties"},{include:"#twig-filters-warg"},{include:"#twig-filters"},{include:"#twig-filters-warg-ud"},{include:"#twig-filters-ud"},{include:"#twig-strings"},{include:"#twig-arrays"},{include:"#twig-hashes"}]},"twig-objects":{captures:{1:{name:"variable.other.twig"}},match:"(?<=[\\s{\\[(:,])([a-zA-Z_\\x{7f}-\\x{ff}][a-zA-Z0-9_\\x{7f}-\\x{ff}]*)(?=[\\s}\\[\\]()\\.\\|,:])"},"twig-operators":{patterns:[{captures:{1:{name:"keyword.operator.arithmetic.twig"}},match:"(?<=\\s)(\\+|-|//?|%|\\*\\*?)(?=\\s)"},{captures:{1:{name:"keyword.operator.assignment.twig"}},match:"(?<=\\s)(=|~)(?=\\s)"},{captures:{1:{name:"keyword.operator.bitwise.twig"}},match:"(?<=\\s)(b-(?:and|or|xor))(?=\\s)"},{captures:{1:{name:"keyword.operator.comparison.twig"}},match:"(?<=\\s)((?:!|=)=|<=?|>=?|(?:not )?in|is(?: not)?|(?:ends|starts) with|matches)(?=\\s)"},{captures:{1:{name:"keyword.operator.logical.twig"}},match:"(?<=\\s)(\\?|:|\\?:|\\?\\?|and|not|or)(?=\\s)"},{captures:{0:{name:"keyword.operator.other.twig"}},match:"(?<=[a-zA-Z0-9_\\x{7f}-\\x{ff}\\])'\"])\\.\\.(?=[a-zA-Z0-9_\\x{7f}-\\x{ff}'\"])"},{captures:{0:{name:"keyword.operator.other.twig"}},match:"(?<=[a-zA-Z0-9_\\x{7f}-\\x{ff}\\]})'\"])\\|(?=[a-zA-Z_\\x{7f}-\\x{ff}])"}]},"twig-print-tag":{begin:"\\{\\{-?",beginCaptures:{0:{name:"punctuation.section.tag.twig"}},end:"-?\\}\\}",endCaptures:{0:{name:"punctuation.section.tag.twig"}},name:"meta.tag.template.value.twig",patterns:[{include:"#twig-constants"},{include:"#twig-operators"},{include:"#twig-functions-warg"},{include:"#twig-functions"},{include:"#twig-macros"},{include:"#twig-objects"},{include:"#twig-properties"},{include:"#twig-filters-warg"},{include:"#twig-filters"},{include:"#twig-filters-warg-ud"},{include:"#twig-filters-ud"},{include:"#twig-strings"},{include:"#twig-arrays"},{include:"#twig-hashes"}]},"twig-properties":{patterns:[{captures:{1:{name:"punctuation.separator.property.twig"},2:{name:"variable.other.property.twig"}},match:"(?<=[a-zA-Z0-9_\\x{7f}-\\x{ff}])(\\.)([a-zA-Z_\\x{7f}-\\x{ff}][a-zA-Z0-9_\\x{7f}-\\x{ff}]*)(?=[\\.\\s\\|\\[)\\]}:,])"},{begin:"(?<=[a-zA-Z0-9_\\x{7f}-\\x{ff}])(\\.)([a-zA-Z_\\x{7f}-\\x{ff}][a-zA-Z0-9_\\x{7f}-\\x{ff}]*)(\\()",beginCaptures:{1:{name:"punctuation.separator.property.twig"},2:{name:"variable.other.property.twig"},3:{name:"punctuation.definition.parameters.begin.twig"}},contentName:"meta.function.arguments.twig",end:"\\)",endCaptures:{0:{name:"punctuation.definition.parameters.end.twig"}},patterns:[{include:"#twig-constants"},{include:"#twig-functions-warg"},{include:"#twig-functions"},{include:"#twig-macros"},{include:"#twig-objects"},{include:"#twig-properties"},{include:"#twig-filters-warg"},{include:"#twig-filters"},{include:"#twig-filters-warg-ud"},{include:"#twig-filters-ud"},{include:"#twig-strings"},{include:"#twig-arrays"}]},{captures:{1:{name:"punctuation.section.array.begin.twig"},2:{name:"variable.other.property.twig"},3:{name:"punctuation.section.array.end.twig"},4:{name:"punctuation.section.array.begin.twig"},5:{name:"variable.other.property.twig"},6:{name:"punctuation.section.array.end.twig"},7:{name:"punctuation.section.array.begin.twig"},8:{name:"variable.other.property.twig"},9:{name:"punctuation.section.array.end.twig"}},match:"(?<=[a-zA-Z0-9_\\x{7f}-\\x{ff}\\]])(?:(\\[)('[a-zA-Z_\\x{7f}-\\x{ff}][a-zA-Z0-9_\\x{7f}-\\x{ff}]*')(\\])|(\\[)(\"[a-zA-Z_\\x{7f}-\\x{ff}][a-zA-Z0-9_\\x{7f}-\\x{ff}]*\")(\\])|(\\[)([a-zA-Z_\\x{7f}-\\x{ff}][a-zA-Z0-9_\\x{7f}-\\x{ff}]*)(\\]))"}]},"twig-statement-tag":{begin:"\\{%-?",beginCaptures:{0:{name:"punctuation.section.tag.twig"}},end:"-?%\\}",endCaptures:{0:{name:"punctuation.section.tag.twig"}},name:"meta.tag.template.block.twig",patterns:[{include:"#twig-constants"},{include:"#twig-keywords"},{include:"#twig-operators"},{include:"#twig-functions-warg"},{include:"#twig-functions"},{include:"#twig-macros"},{include:"#twig-filters-warg"},{include:"#twig-filters"},{include:"#twig-filters-warg-ud"},{include:"#twig-filters-ud"},{include:"#twig-objects"},{include:"#twig-properties"},{include:"#twig-strings"},{include:"#twig-arrays"},{include:"#twig-hashes"}]},"twig-strings":{patterns:[{begin:"(?:(?<!\\\\)|(?<=\\\\\\\\))'",beginCaptures:{0:{name:"punctuation.definition.string.begin.twig"}},end:"(?:(?<!\\\\)|(?<=\\\\\\\\))'",endCaptures:{0:{name:"punctuation.definition.string.end.twig"}},name:"string.quoted.single.twig"},{begin:'(?:(?<!\\\\)|(?<=\\\\\\\\))"',beginCaptures:{0:{name:"punctuation.definition.string.begin.twig"}},end:'(?:(?<!\\\\)|(?<=\\\\\\\\))"',endCaptures:{0:{name:"punctuation.definition.string.end.twig"}},name:"string.quoted.double.twig"}]}},scopeName:"text.html.twig",embeddedLangs:["css","javascript","scss","php","python","ruby"]})]));}};});
2
- //# sourceMappingURL=twig-8f9f15f7.cjs.js.map