@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 +1 @@
1
- var a=[Object.freeze({displayName:"Scala",fileTypes:["scala"],firstLineMatch:"^#!/.*\\b\\w*scala\\b",foldingStartMarker:"/\\*\\*|\\{\\s*$",foldingStopMarker:"\\*\\*/|^\\s*\\}",name:"scala",patterns:[{include:"#code"}],repository:{backQuotedVariable:{match:"`[^`]+`"},"block-comments":{patterns:[{captures:{0:{name:"punctuation.definition.comment.scala"}},match:"/\\*\\*/",name:"comment.block.empty.scala"},{begin:"^\\s*(/\\*\\*)(?!/)",beginCaptures:{1:{name:"punctuation.definition.comment.scala"}},end:"\\*/",endCaptures:{0:{name:"punctuation.definition.comment.scala"}},name:"comment.block.documentation.scala",patterns:[{captures:{1:{name:"keyword.other.documentation.scaladoc.scala"},2:{name:"variable.parameter.scala"}},match:"(@param)\\s+(\\S+)"},{captures:{1:{name:"keyword.other.documentation.scaladoc.scala"},2:{name:"entity.name.class"}},match:"(@(?:tparam|throws))\\s+(\\S+)"},{match:"@(return|see|note|example|constructor|usecase|author|version|since|todo|deprecated|migration|define|inheritdoc)\\b",name:"keyword.other.documentation.scaladoc.scala"},{captures:{1:{name:"punctuation.definition.documentation.link.scala"},2:{name:"string.other.link.title.markdown"},3:{name:"punctuation.definition.documentation.link.scala"}},match:"(\\[\\[)([^\\]]+)(\\]\\])"},{include:"#block-comments"}]},{begin:"/\\*",captures:{0:{name:"punctuation.definition.comment.scala"}},end:"\\*/",name:"comment.block.scala",patterns:[{include:"#block-comments"}]}]},"char-literal":{patterns:[{captures:{1:{name:"punctuation.definition.character.begin.scala"},2:{name:"punctuation.definition.character.end.scala"}},match:"(')'(')",name:"string.quoted.other constant.character.literal.scala"},{begin:"'",beginCaptures:{0:{name:"punctuation.definition.character.begin.scala"}},end:"'|$",endCaptures:{0:{name:"punctuation.definition.character.end.scala"}},name:"string.quoted.other constant.character.literal.scala",patterns:[{match:"\\\\(?:[btnfr\\\\\"']|[0-7]{1,3}|u[0-9A-Fa-f]{4})",name:"constant.character.escape.scala"},{match:"\\\\.",name:"invalid.illegal.unrecognized-character-escape.scala"},{match:"[^']{2,}",name:"invalid.illegal.character-literal-too-long"},{match:"(?<!')[^']",name:"invalid.illegal.character-literal-too-long"}]}]},code:{patterns:[{include:"#using-directive"},{include:"#script-header"},{include:"#storage-modifiers"},{include:"#declarations"},{include:"#inheritance"},{include:"#extension"},{include:"#imports"},{include:"#exports"},{include:"#comments"},{include:"#strings"},{include:"#initialization"},{include:"#xml-literal"},{include:"#keywords"},{include:"#using"},{include:"#constants"},{include:"#singleton-type"},{include:"#inline"},{include:"#scala-quoted-or-symbol"},{include:"#char-literal"},{include:"#empty-parentheses"},{include:"#parameter-list"},{include:"#qualifiedClassName"},{include:"#backQuotedVariable"},{include:"#curly-braces"},{include:"#meta-brackets"},{include:"#meta-bounds"},{include:"#meta-colons"}]},comments:{patterns:[{include:"#block-comments"},{begin:"(^[ \\t]+)?(?=//)",beginCaptures:{1:{name:"punctuation.whitespace.comment.leading.scala"}},end:"(?!\\G)",patterns:[{begin:"//",beginCaptures:{0:{name:"punctuation.definition.comment.scala"}},end:"\\n",name:"comment.line.double-slash.scala"}]}]},constants:{patterns:[{match:"\\b(false|null|true)\\b",name:"constant.language.scala"},{match:"\\b(0[xX][0-9a-fA-F_]*)\\b",name:"constant.numeric.scala"},{match:"\\b((\\d[0-9_]*(\\.\\d[0-9_]*)?)([eE](\\+|-)?\\d[0-9_]*)?|\\d[0-9_]*)[LlFfDd]?\\b",name:"constant.numeric.scala"},{match:"(\\.\\d[0-9_]*)([eE](\\+|-)?\\d[0-9_]*)?[LlFfDd]?\\b",name:"constant.numeric.scala"},{match:"\\b0[bB][01]([01_]*[01])?[Ll]?\\b",name:"constant.numeric.scala"},{match:"\\b(this|super)\\b",name:"variable.language.scala"}]},"curly-braces":{begin:"\\{",beginCaptures:{0:{name:"punctuation.section.block.begin.scala"}},end:"\\}",endCaptures:{0:{name:"punctuation.section.block.end.scala"}},patterns:[{include:"#code"}]},declarations:{patterns:[{captures:{1:{name:"keyword.declaration.scala"},2:{name:"entity.name.function.declaration"}},match:"\\b(def)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"},{captures:{1:{name:"keyword.declaration.scala"},2:{name:"entity.name.class.declaration"}},match:"\\b(trait)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"},{captures:{1:{name:"keyword.declaration.scala"},2:{name:"keyword.declaration.scala"},3:{name:"entity.name.class.declaration"}},match:"\\b(?:(case)\\s+)?(class|object|enum)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"},{captures:{1:{name:"keyword.declaration.scala"},2:{name:"entity.name.type.declaration"}},match:"(?<!\\.)\\b(type)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"},{captures:{1:{name:"keyword.declaration.stable.scala"},2:{name:"keyword.declaration.volatile.scala"}},match:"\\b(?:(val)|(var))\\b\\s*(?!//|/\\*)(?=(?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)?\\()"},{captures:{1:{name:"keyword.declaration.stable.scala"},2:{name:"variable.stable.declaration.scala"}},match:'\\b(val)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)(?:\\s*,\\s*(?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))*)?(?!")'},{captures:{1:{name:"keyword.declaration.volatile.scala"},2:{name:"variable.volatile.declaration.scala"}},match:'\\b(var)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)(?:\\s*,\\s*(?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))*)?(?!")'},{captures:{1:{name:"keyword.other.package.scala"},2:{name:"keyword.declaration.scala"},3:{name:"entity.name.class.declaration"}},match:"\\b(package)\\s+(object)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"},{begin:"\\b(package)\\s+",beginCaptures:{1:{name:"keyword.other.package.scala"}},end:"(?<=[\\n;])",name:"meta.package.scala",patterns:[{include:"#comments"},{match:"(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))",name:"entity.name.package.scala"},{match:"\\.",name:"punctuation.definition.package"}]},{captures:{1:{name:"keyword.declaration.scala"},2:{name:"entity.name.given.declaration"}},match:"\\b(given)\\b\\s*([_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|`[^`]+`)?"}]},"empty-parentheses":{captures:{1:{name:"meta.bracket.scala"}},match:"(\\(\\))",name:"meta.parentheses.scala"},exports:{begin:"\\b(export)\\s+",beginCaptures:{1:{name:"keyword.other.export.scala"}},end:"(?<=[\\n;])",name:"meta.export.scala",patterns:[{include:"#comments"},{match:"\\b(given)\\b",name:"keyword.other.export.given.scala"},{match:"[A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?",name:"entity.name.class.export.scala"},{match:"(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))",name:"entity.name.export.scala"},{match:"\\.",name:"punctuation.definition.export"},{begin:"{",beginCaptures:{0:{name:"meta.bracket.scala"}},end:"}",endCaptures:{0:{name:"meta.bracket.scala"}},name:"meta.export.selector.scala",patterns:[{captures:{1:{name:"keyword.other.export.given.scala"},2:{name:"entity.name.class.export.renamed-from.scala"},3:{name:"entity.name.export.renamed-from.scala"},4:{name:"keyword.other.arrow.scala"},5:{name:"entity.name.class.export.renamed-to.scala"},6:{name:"entity.name.export.renamed-to.scala"}},match:"(given\\s)?\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*(=>)\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*"},{match:"\\b(given)\\b",name:"keyword.other.export.given.scala"},{captures:{1:{name:"keyword.other.export.given.scala"},2:{name:"entity.name.class.export.scala"},3:{name:"entity.name.export.scala"}},match:"(given\\s+)?(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))"}]}]},extension:{patterns:[{captures:{1:{name:"keyword.declaration.scala"}},match:"^\\s*(extension)\\s+(?=[\\[(])"}]},imports:{begin:"\\b(import)\\s+",beginCaptures:{1:{name:"keyword.other.import.scala"}},end:"(?<=[\\n;])",name:"meta.import.scala",patterns:[{include:"#comments"},{match:"\\b(given)\\b",name:"keyword.other.import.given.scala"},{match:"\\s(as)\\s",name:"keyword.other.import.as.scala"},{match:"[A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?",name:"entity.name.class.import.scala"},{match:"(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))",name:"entity.name.import.scala"},{match:"\\.",name:"punctuation.definition.import"},{begin:"{",beginCaptures:{0:{name:"meta.bracket.scala"}},end:"}",endCaptures:{0:{name:"meta.bracket.scala"}},name:"meta.import.selector.scala",patterns:[{captures:{1:{name:"keyword.other.import.given.scala"},2:{name:"entity.name.class.import.renamed-from.scala"},3:{name:"entity.name.import.renamed-from.scala"},4:{name:"keyword.other.arrow.scala"},5:{name:"entity.name.class.import.renamed-to.scala"},6:{name:"entity.name.import.renamed-to.scala"}},match:"(given\\s)?\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*(=>)\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*"},{match:"\\b(given)\\b",name:"keyword.other.import.given.scala"},{captures:{1:{name:"keyword.other.import.given.scala"},2:{name:"entity.name.class.import.scala"},3:{name:"entity.name.import.scala"}},match:"(given\\s+)?(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))"}]}]},inheritance:{patterns:[{captures:{1:{name:"keyword.declaration.scala"},2:{name:"entity.name.class"}},match:'\\b(extends|with|derives)\\b\\s*([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|`[^`]+`|(?=\\([^)]+=>)|(?=(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))|(?="))?'}]},initialization:{captures:{1:{name:"keyword.declaration.scala"}},match:"\\b(new)\\b"},inline:{patterns:[{match:"\\b(inline)(?=\\s+((?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)\\s*:)",name:"storage.modifier.other"},{match:"\\b(inline)\\b(?=(?:.(?!\\b(?:val|def|given)\\b))*\\b(if|match)\\b)",name:"keyword.control.flow.scala"}]},keywords:{patterns:[{match:"\\b(return|throw)\\b",name:"keyword.control.flow.jump.scala"},{match:"\\b(classOf|isInstanceOf|asInstanceOf)\\b",name:"support.function.type-of.scala"},{match:"\\b(else|if|then|do|while|for|yield|match|case)\\b",name:"keyword.control.flow.scala"},{match:"^\\s*(end)\\s+(if|while|for|match)(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)",name:"keyword.control.flow.end.scala"},{match:"^\\s*(end)\\s+(val)(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)",name:"keyword.declaration.stable.end.scala"},{match:"^\\s*(end)\\s+(var)(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)",name:"keyword.declaration.volatile.end.scala"},{captures:{1:{name:"keyword.declaration.end.scala"},2:{name:"keyword.declaration.end.scala"},3:{name:"entity.name.type.declaration"}},match:"^\\s*(end)\\s+(?:(new|extension)|([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?))(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)"},{match:"\\b(catch|finally|try)\\b",name:"keyword.control.exception.scala"},{match:"^\\s*(end)\\s+(try)(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)",name:"keyword.control.exception.end.scala"},{captures:{1:{name:"keyword.declaration.end.scala"},2:{name:"entity.name.declaration"}},match:"^\\s*(end)\\s+(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))?(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)"},{match:"(==?|!=|<=|>=|<>|<|>)",name:"keyword.operator.comparison.scala"},{match:"(-|\\+|\\*|/(?![/*])|%|~)",name:"keyword.operator.arithmetic.scala"},{match:"(?<![!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]|_)(!|&&|\\|\\|)(?![!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}])",name:"keyword.operator.logical.scala"},{match:"(<-|←|->|→|=>|⇒|\\?|:+|@|\\|)+",name:"keyword.operator.scala"}]},"meta-bounds":{comment:"For themes: Matching view bounds",match:"<%|=:=|<:<|<%<|>:|<:",name:"meta.bounds.scala"},"meta-brackets":{comment:"For themes: Brackets look nice when colored.",patterns:[{comment:"The punctuation.section.*.begin is needed for return snippet in source bundle",match:"\\{",name:"punctuation.section.block.begin.scala"},{comment:"The punctuation.section.*.end is needed for return snippet in source bundle",match:"\\}",name:"punctuation.section.block.end.scala"},{match:"{|}|\\(|\\)|\\[|\\]",name:"meta.bracket.scala"}]},"meta-colons":{comment:"For themes: Matching type colons",patterns:[{match:"(?<!:):(?!:)",name:"meta.colon.scala"}]},"parameter-list":{patterns:[{captures:{1:{name:"variable.parameter.scala"},2:{name:"meta.colon.scala"}},match:"(?<=[^\\._$a-zA-Z0-9])(`[^`]+`|[_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)\\s*(:)\\s+"}]},qualifiedClassName:{captures:{1:{name:"entity.name.class"}},match:"(\\b([A-Z][\\w]*)(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)"},"scala-quoted-or-symbol":{patterns:[{captures:{1:{name:"keyword.control.flow.staging.scala constant.other.symbol.scala"},2:{name:"constant.other.symbol.scala"}},match:"(')((?>(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))(?!')"},{match:"'(?=\\s*\\{(?!'))",name:"keyword.control.flow.staging.scala"},{match:"'(?=\\s*\\[(?!'))",name:"keyword.control.flow.staging.scala"},{match:"\\$(?=\\s*\\{)",name:"keyword.control.flow.staging.scala"}]},"script-header":{captures:{1:{name:"string.unquoted.shebang.scala"}},match:"^#!(.*)$",name:"comment.block.shebang.scala"},"singleton-type":{captures:{1:{name:"keyword.type.scala"}},match:"\\.(type)(?![A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|\\d)"},"storage-modifiers":{patterns:[{match:"\\b(private\\[\\S+\\]|protected\\[\\S+\\]|private|protected)\\b",name:"storage.modifier.access"},{match:"\\b(synchronized|@volatile|abstract|final|lazy|sealed|implicit|override|@transient|@native)\\b",name:"storage.modifier.other"},{match:"(?<=^|\\s)\\b(transparent|opaque|infix|open|inline)\\b(?=[a-z\\s]*\\b(def|val|var|given|type|class|trait|object|enum)\\b)",name:"storage.modifier.other"}]},"string-interpolation":{patterns:[{match:"\\$\\$",name:"constant.character.escape.interpolation.scala"},{captures:{1:{name:"punctuation.definition.template-expression.begin.scala"}},match:"(\\$)([A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\p{Lo}\\p{Nl}\\p{Ll}0-9]*)",name:"meta.template.expression.scala"},{begin:"\\$\\{",beginCaptures:{0:{name:"punctuation.definition.template-expression.begin.scala"}},contentName:"meta.embedded.line.scala",end:"\\}",endCaptures:{0:{name:"punctuation.definition.template-expression.end.scala"}},name:"meta.template.expression.scala",patterns:[{include:"#code"}]}]},strings:{patterns:[{begin:'"""',beginCaptures:{0:{name:"punctuation.definition.string.begin.scala"}},end:'"""(?!")',endCaptures:{0:{name:"punctuation.definition.string.end.scala"}},name:"string.quoted.triple.scala",patterns:[{match:"\\\\\\\\|\\\\u[0-9A-Fa-f]{4}",name:"constant.character.escape.scala"}]},{begin:'\\b(raw)(""")',beginCaptures:{1:{name:"keyword.interpolation.scala"},2:{name:"string.quoted.triple.interpolated.scala punctuation.definition.string.begin.scala"}},end:'(""")(?!")|\\$\n|(\\$[^$"_{A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}])',endCaptures:{1:{name:"string.quoted.triple.interpolated.scala punctuation.definition.string.end.scala"},2:{name:"invalid.illegal.unrecognized-string-escape.scala"}},patterns:[{match:'\\$[$"]',name:"constant.character.escape.scala"},{include:"#string-interpolation"},{match:".",name:"string.quoted.triple.interpolated.scala"}]},{begin:'\\b((?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?))(""")',beginCaptures:{1:{name:"keyword.interpolation.scala"},2:{name:"string.quoted.triple.interpolated.scala punctuation.definition.string.begin.scala"}},end:'(""")(?!")|\\$\n|(\\$[^$"_{A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}])',endCaptures:{1:{name:"string.quoted.triple.interpolated.scala punctuation.definition.string.end.scala"},2:{name:"invalid.illegal.unrecognized-string-escape.scala"}},patterns:[{include:"#string-interpolation"},{match:"\\\\\\\\|\\\\u[0-9A-Fa-f]{4}",name:"constant.character.escape.scala"},{match:".",name:"string.quoted.triple.interpolated.scala"}]},{begin:'"',beginCaptures:{0:{name:"punctuation.definition.string.begin.scala"}},end:'"',endCaptures:{0:{name:"punctuation.definition.string.end.scala"}},name:"string.quoted.double.scala",patterns:[{match:"\\\\(?:[btnfr\\\\\"']|[0-7]{1,3}|u[0-9A-Fa-f]{4})",name:"constant.character.escape.scala"},{match:"\\\\.",name:"invalid.illegal.unrecognized-string-escape.scala"}]},{begin:'\\b(raw)(")',beginCaptures:{1:{name:"keyword.interpolation.scala"},2:{name:"string.quoted.double.interpolated.scala punctuation.definition.string.begin.scala"}},end:'(")|\\$\n|(\\$[^$"_{A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}])',endCaptures:{1:{name:"string.quoted.double.interpolated.scala punctuation.definition.string.end.scala"},2:{name:"invalid.illegal.unrecognized-string-escape.scala"}},patterns:[{match:'\\$[$"]',name:"constant.character.escape.scala"},{include:"#string-interpolation"},{match:".",name:"string.quoted.double.interpolated.scala"}]},{begin:'\\b((?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?))(")',beginCaptures:{1:{name:"keyword.interpolation.scala"},2:{name:"string.quoted.double.interpolated.scala punctuation.definition.string.begin.scala"}},end:'(")|\\$\n|(\\$[^$"_{A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}])',endCaptures:{1:{name:"string.quoted.double.interpolated.scala punctuation.definition.string.end.scala"},2:{name:"invalid.illegal.unrecognized-string-escape.scala"}},patterns:[{match:'\\$[$"]',name:"constant.character.escape.scala"},{include:"#string-interpolation"},{match:"\\\\(?:[btnfr\\\\\"']|[0-7]{1,3}|u[0-9A-Fa-f]{4})",name:"constant.character.escape.scala"},{match:"\\\\.",name:"invalid.illegal.unrecognized-string-escape.scala"},{match:".",name:"string.quoted.double.interpolated.scala"}]}]},using:{patterns:[{captures:{1:{name:"keyword.declaration.scala"}},match:"(?<=\\()\\s*(using)\\s"}]},"using-directive":{begin:"^\\s*(//>)\\s*(using)[^\\S\\n]+(?:(\\S+))?",beginCaptures:{1:{name:"punctuation.definition.comment.scala"},2:{name:"keyword.other.import.scala"},3:{patterns:[{match:"[A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)",name:"entity.name.import.scala"},{match:"\\.",name:"punctuation.definition.import"}]}},end:"\\n",name:"comment.line.shebang.scala",patterns:[{include:"#constants"},{include:"#strings"},{match:"[^\\s,]+",name:"string.quoted.double.scala"}]},"xml-doublequotedString":{begin:'"',beginCaptures:{0:{name:"punctuation.definition.string.begin.xml"}},end:'"',endCaptures:{0:{name:"punctuation.definition.string.end.xml"}},name:"string.quoted.double.xml",patterns:[{include:"#xml-entity"}]},"xml-embedded-content":{patterns:[{begin:"{",captures:{0:{name:"meta.bracket.scala"}},end:"}",name:"meta.source.embedded.scala",patterns:[{include:"#code"}]},{captures:{1:{name:"entity.other.attribute-name.namespace.xml"},2:{name:"entity.other.attribute-name.xml"},3:{name:"punctuation.separator.namespace.xml"},4:{name:"entity.other.attribute-name.localname.xml"}},match:" (?:([-_a-zA-Z0-9]+)((:)))?([_a-zA-Z-]+)="},{include:"#xml-doublequotedString"},{include:"#xml-singlequotedString"}]},"xml-entity":{captures:{1:{name:"punctuation.definition.constant.xml"},3:{name:"punctuation.definition.constant.xml"}},match:"(&)([:a-zA-Z_][:a-zA-Z0-9_.-]*|#\\d+|#x[0-9a-fA-F]+)(;)",name:"constant.character.entity.xml"},"xml-literal":{patterns:[{begin:"(<)((?:([_a-zA-Z0-9][_a-zA-Z0-9]*)((:)))?([_a-zA-Z0-9][-_a-zA-Z0-9:]*))(?=(\\s[^>]*)?></\\2>)",beginCaptures:{1:{name:"punctuation.definition.tag.xml"},3:{name:"entity.name.tag.namespace.xml"},4:{name:"entity.name.tag.xml"},5:{name:"punctuation.separator.namespace.xml"},6:{name:"entity.name.tag.localname.xml"}},comment:"We do not allow a tag name to start with a - since this would likely conflict with the <- operator. This is not very common for tag names anyway. Also code such as -- if (val <val2 || val> val3) will falsly be recognized as an xml tag. The solution is to put a space on either side of the comparison operator",end:"(>(<))/(?:([-_a-zA-Z0-9]+)((:)))?([-_a-zA-Z0-9:]*[_a-zA-Z0-9])(>)",endCaptures:{1:{name:"punctuation.definition.tag.xml"},2:{name:"meta.scope.between-tag-pair.xml"},3:{name:"entity.name.tag.namespace.xml"},4:{name:"entity.name.tag.xml"},5:{name:"punctuation.separator.namespace.xml"},6:{name:"entity.name.tag.localname.xml"},7:{name:"punctuation.definition.tag.xml"}},name:"meta.tag.no-content.xml",patterns:[{include:"#xml-embedded-content"}]},{begin:"(</?)(?:([_a-zA-Z0-9][-_a-zA-Z0-9]*)((:)))?([_a-zA-Z0-9][-_a-zA-Z0-9:]*)(?=[^>]*?>)",captures:{1:{name:"punctuation.definition.tag.xml"},2:{name:"entity.name.tag.namespace.xml"},3:{name:"entity.name.tag.xml"},4:{name:"punctuation.separator.namespace.xml"},5:{name:"entity.name.tag.localname.xml"}},end:"(/?>)",name:"meta.tag.xml",patterns:[{include:"#xml-embedded-content"}]},{include:"#xml-entity"}]},"xml-singlequotedString":{begin:"'",beginCaptures:{0:{name:"punctuation.definition.string.begin.xml"}},end:"'",endCaptures:{0:{name:"punctuation.definition.string.end.xml"}},name:"string.quoted.single.xml",patterns:[{include:"#xml-entity"}]}},scopeName:"source.scala"})];export{a as default};
1
+ var a=[Object.freeze({displayName:"Scala",fileTypes:["scala"],firstLineMatch:"^#!/.*\\b\\w*scala\\b",foldingStartMarker:"/\\*\\*|\\{\\s*$",foldingStopMarker:"\\*\\*/|^\\s*\\}",name:"scala",patterns:[{include:"#code"}],repository:{backQuotedVariable:{match:"`[^`]+`"},"block-comments":{patterns:[{captures:{0:{name:"punctuation.definition.comment.scala"}},match:"/\\*\\*/",name:"comment.block.empty.scala"},{begin:"^\\s*(/\\*\\*)(?!/)",beginCaptures:{1:{name:"punctuation.definition.comment.scala"}},end:"\\*/",endCaptures:{0:{name:"punctuation.definition.comment.scala"}},name:"comment.block.documentation.scala",patterns:[{captures:{1:{name:"keyword.other.documentation.scaladoc.scala"},2:{name:"variable.parameter.scala"}},match:"(@param)\\s+(\\S+)"},{captures:{1:{name:"keyword.other.documentation.scaladoc.scala"},2:{name:"entity.name.class"}},match:"(@(?:tparam|throws))\\s+(\\S+)"},{match:"@(return|see|note|example|constructor|usecase|author|version|since|todo|deprecated|migration|define|inheritdoc)\\b",name:"keyword.other.documentation.scaladoc.scala"},{captures:{1:{name:"punctuation.definition.documentation.link.scala"},2:{name:"string.other.link.title.markdown"},3:{name:"punctuation.definition.documentation.link.scala"}},match:"(\\[\\[)([^\\]]+)(\\]\\])"},{include:"#block-comments"}]},{begin:"/\\*",captures:{0:{name:"punctuation.definition.comment.scala"}},end:"\\*/",name:"comment.block.scala",patterns:[{include:"#block-comments"}]}]},"char-literal":{patterns:[{captures:{1:{name:"punctuation.definition.character.begin.scala"},2:{name:"punctuation.definition.character.end.scala"}},match:"(')'(')",name:"string.quoted.other constant.character.literal.scala"},{begin:"'",beginCaptures:{0:{name:"punctuation.definition.character.begin.scala"}},end:"'|$",endCaptures:{0:{name:"punctuation.definition.character.end.scala"}},name:"string.quoted.other constant.character.literal.scala",patterns:[{match:"\\\\(?:[btnfr\\\\\"']|[0-7]{1,3}|u[0-9A-Fa-f]{4})",name:"constant.character.escape.scala"},{match:"\\\\.",name:"invalid.illegal.unrecognized-character-escape.scala"},{match:"[^']{2,}",name:"invalid.illegal.character-literal-too-long"},{match:"(?<!')[^']",name:"invalid.illegal.character-literal-too-long"}]}]},code:{patterns:[{include:"#using-directive"},{include:"#script-header"},{include:"#storage-modifiers"},{include:"#declarations"},{include:"#inheritance"},{include:"#extension"},{include:"#imports"},{include:"#exports"},{include:"#comments"},{include:"#strings"},{include:"#initialization"},{include:"#xml-literal"},{include:"#keywords"},{include:"#using"},{include:"#constants"},{include:"#singleton-type"},{include:"#inline"},{include:"#scala-quoted-or-symbol"},{include:"#char-literal"},{include:"#empty-parentheses"},{include:"#parameter-list"},{include:"#qualifiedClassName"},{include:"#backQuotedVariable"},{include:"#curly-braces"},{include:"#meta-brackets"},{include:"#meta-bounds"},{include:"#meta-colons"}]},comments:{patterns:[{include:"#block-comments"},{begin:"(^[ \\t]+)?(?=//)",beginCaptures:{1:{name:"punctuation.whitespace.comment.leading.scala"}},end:"(?!\\G)",patterns:[{begin:"//",beginCaptures:{0:{name:"punctuation.definition.comment.scala"}},end:"\\n",name:"comment.line.double-slash.scala"}]}]},constants:{patterns:[{match:"\\b(false|null|true)\\b",name:"constant.language.scala"},{match:"\\b(0[xX][0-9a-fA-F_]*)\\b",name:"constant.numeric.scala"},{match:"\\b((\\d[0-9_]*(\\.\\d[0-9_]*)?)([eE](\\+|-)?\\d[0-9_]*)?|\\d[0-9_]*)[LlFfDd]?\\b",name:"constant.numeric.scala"},{match:"(\\.\\d[0-9_]*)([eE](\\+|-)?\\d[0-9_]*)?[LlFfDd]?\\b",name:"constant.numeric.scala"},{match:"\\b0[bB][01]([01_]*[01])?[Ll]?\\b",name:"constant.numeric.scala"},{match:"\\b(this|super)\\b",name:"variable.language.scala"}]},"curly-braces":{begin:"\\{",beginCaptures:{0:{name:"punctuation.section.block.begin.scala"}},end:"\\}",endCaptures:{0:{name:"punctuation.section.block.end.scala"}},patterns:[{include:"#code"}]},declarations:{patterns:[{captures:{1:{name:"keyword.declaration.scala"},2:{name:"entity.name.function.declaration"}},match:"\\b(def)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"},{captures:{1:{name:"keyword.declaration.scala"},2:{name:"entity.name.class.declaration"}},match:"\\b(trait)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"},{captures:{1:{name:"keyword.declaration.scala"},2:{name:"keyword.declaration.scala"},3:{name:"entity.name.class.declaration"}},match:"\\b(?:(case)\\s+)?(class|object|enum)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"},{captures:{1:{name:"keyword.declaration.scala"},2:{name:"entity.name.type.declaration"}},match:"(?<!\\.)\\b(type)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"},{captures:{1:{name:"keyword.declaration.stable.scala"},2:{name:"keyword.declaration.volatile.scala"}},match:"\\b(?:(val)|(var))\\b\\s*(?!//|/\\*)(?=(?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)?\\()"},{captures:{1:{name:"keyword.declaration.stable.scala"},2:{name:"variable.stable.declaration.scala"}},match:'\\b(val)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)(?:\\s*,\\s*(?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))*)?(?!")'},{captures:{1:{name:"keyword.declaration.volatile.scala"},2:{name:"variable.volatile.declaration.scala"}},match:'\\b(var)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)(?:\\s*,\\s*(?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))*)?(?!")'},{captures:{1:{name:"keyword.other.package.scala"},2:{name:"keyword.declaration.scala"},3:{name:"entity.name.class.declaration"}},match:"\\b(package)\\s+(object)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"},{begin:"\\b(package)\\s+",beginCaptures:{1:{name:"keyword.other.package.scala"}},end:"(?<=[\\n;])",name:"meta.package.scala",patterns:[{include:"#comments"},{match:"(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))",name:"entity.name.package.scala"},{match:"\\.",name:"punctuation.definition.package"}]},{captures:{1:{name:"keyword.declaration.scala"},2:{name:"entity.name.given.declaration"}},match:"\\b(given)\\b\\s*([_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|`[^`]+`)?"}]},"empty-parentheses":{captures:{1:{name:"meta.bracket.scala"}},match:"(\\(\\))",name:"meta.parentheses.scala"},exports:{begin:"\\b(export)\\s+",beginCaptures:{1:{name:"keyword.other.export.scala"}},end:"(?<=[\\n;])",name:"meta.export.scala",patterns:[{include:"#comments"},{match:"\\b(given)\\b",name:"keyword.other.export.given.scala"},{match:"[A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?",name:"entity.name.class.export.scala"},{match:"(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))",name:"entity.name.export.scala"},{match:"\\.",name:"punctuation.definition.export"},{begin:"{",beginCaptures:{0:{name:"meta.bracket.scala"}},end:"}",endCaptures:{0:{name:"meta.bracket.scala"}},name:"meta.export.selector.scala",patterns:[{captures:{1:{name:"keyword.other.export.given.scala"},2:{name:"entity.name.class.export.renamed-from.scala"},3:{name:"entity.name.export.renamed-from.scala"},4:{name:"keyword.other.arrow.scala"},5:{name:"entity.name.class.export.renamed-to.scala"},6:{name:"entity.name.export.renamed-to.scala"}},match:"(given\\s)?\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*(=>)\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*"},{match:"\\b(given)\\b",name:"keyword.other.export.given.scala"},{captures:{1:{name:"keyword.other.export.given.scala"},2:{name:"entity.name.class.export.scala"},3:{name:"entity.name.export.scala"}},match:"(given\\s+)?(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))"}]}]},extension:{patterns:[{captures:{1:{name:"keyword.declaration.scala"}},match:"^\\s*(extension)\\s+(?=[\\[(])"}]},imports:{begin:"\\b(import)\\s+",beginCaptures:{1:{name:"keyword.other.import.scala"}},end:"(?<=[\\n;])",name:"meta.import.scala",patterns:[{include:"#comments"},{match:"\\b(given)\\b",name:"keyword.other.import.given.scala"},{match:"\\s(as)\\s",name:"keyword.other.import.as.scala"},{match:"[A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?",name:"entity.name.class.import.scala"},{match:"(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))",name:"entity.name.import.scala"},{match:"\\.",name:"punctuation.definition.import"},{begin:"{",beginCaptures:{0:{name:"meta.bracket.scala"}},end:"}",endCaptures:{0:{name:"meta.bracket.scala"}},name:"meta.import.selector.scala",patterns:[{captures:{1:{name:"keyword.other.import.given.scala"},2:{name:"entity.name.class.import.renamed-from.scala"},3:{name:"entity.name.import.renamed-from.scala"},4:{name:"keyword.other.arrow.scala"},5:{name:"entity.name.class.import.renamed-to.scala"},6:{name:"entity.name.import.renamed-to.scala"}},match:"(given\\s)?\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*(=>)\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*"},{match:"\\b(given)\\b",name:"keyword.other.import.given.scala"},{captures:{1:{name:"keyword.other.import.given.scala"},2:{name:"entity.name.class.import.scala"},3:{name:"entity.name.import.scala"}},match:"(given\\s+)?(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))"}]}]},inheritance:{patterns:[{captures:{1:{name:"keyword.declaration.scala"},2:{name:"entity.name.class"}},match:'\\b(extends|with|derives)\\b\\s*([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|`[^`]+`|(?=\\([^)]+=>)|(?=(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))|(?="))?'}]},initialization:{captures:{1:{name:"keyword.declaration.scala"}},match:"\\b(new)\\b"},inline:{patterns:[{match:"\\b(inline)(?=\\s+((?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)\\s*:)",name:"storage.modifier.other"},{match:"\\b(inline)\\b(?=(?:.(?!\\b(?:val|def|given)\\b))*\\b(if|match)\\b)",name:"keyword.control.flow.scala"}]},keywords:{patterns:[{match:"\\b(return|throw)\\b",name:"keyword.control.flow.jump.scala"},{match:"\\b(classOf|isInstanceOf|asInstanceOf)\\b",name:"support.function.type-of.scala"},{match:"\\b(else|if|then|do|while|for|yield|match|case)\\b",name:"keyword.control.flow.scala"},{match:"^\\s*(end)\\s+(if|while|for|match)(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)",name:"keyword.control.flow.end.scala"},{match:"^\\s*(end)\\s+(val)(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)",name:"keyword.declaration.stable.end.scala"},{match:"^\\s*(end)\\s+(var)(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)",name:"keyword.declaration.volatile.end.scala"},{captures:{1:{name:"keyword.declaration.end.scala"},2:{name:"keyword.declaration.end.scala"},3:{name:"entity.name.type.declaration"}},match:"^\\s*(end)\\s+(?:(new|extension)|([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?))(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)"},{match:"\\b(catch|finally|try)\\b",name:"keyword.control.exception.scala"},{match:"^\\s*(end)\\s+(try)(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)",name:"keyword.control.exception.end.scala"},{captures:{1:{name:"keyword.declaration.end.scala"},2:{name:"entity.name.declaration"}},match:"^\\s*(end)\\s+(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))?(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)"},{match:"(==?|!=|<=|>=|<>|<|>)",name:"keyword.operator.comparison.scala"},{match:"(-|\\+|\\*|/(?![/*])|%|~)",name:"keyword.operator.arithmetic.scala"},{match:"(?<![!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]|_)(!|&&|\\|\\|)(?![!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}])",name:"keyword.operator.logical.scala"},{match:"(<-|←|->|→|=>|⇒|\\?|:+|@|\\|)+",name:"keyword.operator.scala"}]},"meta-bounds":{comment:"For themes: Matching view bounds",match:"<%|=:=|<:<|<%<|>:|<:",name:"meta.bounds.scala"},"meta-brackets":{comment:"For themes: Brackets look nice when colored.",patterns:[{comment:"The punctuation.section.*.begin is needed for return snippet in source bundle",match:"\\{",name:"punctuation.section.block.begin.scala"},{comment:"The punctuation.section.*.end is needed for return snippet in source bundle",match:"\\}",name:"punctuation.section.block.end.scala"},{match:"{|}|\\(|\\)|\\[|\\]",name:"meta.bracket.scala"}]},"meta-colons":{comment:"For themes: Matching type colons",patterns:[{match:"(?<!:):(?!:)",name:"meta.colon.scala"}]},"parameter-list":{patterns:[{captures:{1:{name:"variable.parameter.scala"},2:{name:"meta.colon.scala"}},match:"(?<=[^\\._$a-zA-Z0-9])(`[^`]+`|[_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)\\s*(:)\\s+"}]},qualifiedClassName:{captures:{1:{name:"entity.name.class"}},match:"(\\b([A-Z][\\w]*)(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)"},"scala-quoted-or-symbol":{patterns:[{captures:{1:{name:"keyword.control.flow.staging.scala constant.other.symbol.scala"},2:{name:"constant.other.symbol.scala"}},match:"(')((?>(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))(?!')"},{match:"'(?=\\s*\\{(?!'))",name:"keyword.control.flow.staging.scala"},{match:"'(?=\\s*\\[(?!'))",name:"keyword.control.flow.staging.scala"},{match:"\\$(?=\\s*\\{)",name:"keyword.control.flow.staging.scala"}]},"script-header":{captures:{1:{name:"string.unquoted.shebang.scala"}},match:"^#!(.*)$",name:"comment.block.shebang.scala"},"singleton-type":{captures:{1:{name:"keyword.type.scala"}},match:"\\.(type)(?![A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|\\d)"},"storage-modifiers":{patterns:[{match:"\\b(private\\[\\S+\\]|protected\\[\\S+\\]|private|protected)\\b",name:"storage.modifier.access"},{match:"\\b(synchronized|@volatile|abstract|final|lazy|sealed|implicit|override|@transient|@native)\\b",name:"storage.modifier.other"},{match:"(?<=^|\\s)\\b(transparent|opaque|infix|open|inline)\\b(?=[a-z\\s]*\\b(def|val|var|given|type|class|trait|object|enum)\\b)",name:"storage.modifier.other"}]},"string-interpolation":{patterns:[{match:"\\$\\$",name:"constant.character.escape.interpolation.scala"},{captures:{1:{name:"punctuation.definition.template-expression.begin.scala"}},match:"(\\$)([A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\p{Lo}\\p{Nl}\\p{Ll}0-9]*)",name:"meta.template.expression.scala"},{begin:"\\$\\{",beginCaptures:{0:{name:"punctuation.definition.template-expression.begin.scala"}},contentName:"meta.embedded.line.scala",end:"\\}",endCaptures:{0:{name:"punctuation.definition.template-expression.end.scala"}},name:"meta.template.expression.scala",patterns:[{include:"#code"}]}]},strings:{patterns:[{begin:'"""',beginCaptures:{0:{name:"punctuation.definition.string.begin.scala"}},end:'"""(?!")',endCaptures:{0:{name:"punctuation.definition.string.end.scala"}},name:"string.quoted.triple.scala",patterns:[{match:"\\\\\\\\|\\\\u[0-9A-Fa-f]{4}",name:"constant.character.escape.scala"}]},{begin:'\\b(raw)(""")',beginCaptures:{1:{name:"keyword.interpolation.scala"},2:{name:"string.quoted.triple.interpolated.scala punctuation.definition.string.begin.scala"}},end:'(""")(?!")|\\$\n|(\\$[^$"_{A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}])',endCaptures:{1:{name:"string.quoted.triple.interpolated.scala punctuation.definition.string.end.scala"},2:{name:"invalid.illegal.unrecognized-string-escape.scala"}},patterns:[{match:'\\$[$"]',name:"constant.character.escape.scala"},{include:"#string-interpolation"},{match:".",name:"string.quoted.triple.interpolated.scala"}]},{begin:'\\b((?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?))(""")',beginCaptures:{1:{name:"keyword.interpolation.scala"},2:{name:"string.quoted.triple.interpolated.scala punctuation.definition.string.begin.scala"}},end:'(""")(?!")|\\$\n|(\\$[^$"_{A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}])',endCaptures:{1:{name:"string.quoted.triple.interpolated.scala punctuation.definition.string.end.scala"},2:{name:"invalid.illegal.unrecognized-string-escape.scala"}},patterns:[{include:"#string-interpolation"},{match:"\\\\\\\\|\\\\u[0-9A-Fa-f]{4}",name:"constant.character.escape.scala"},{match:".",name:"string.quoted.triple.interpolated.scala"}]},{begin:'"',beginCaptures:{0:{name:"punctuation.definition.string.begin.scala"}},end:'"',endCaptures:{0:{name:"punctuation.definition.string.end.scala"}},name:"string.quoted.double.scala",patterns:[{match:"\\\\(?:[btnfr\\\\\"']|[0-7]{1,3}|u[0-9A-Fa-f]{4})",name:"constant.character.escape.scala"},{match:"\\\\.",name:"invalid.illegal.unrecognized-string-escape.scala"}]},{begin:'\\b(raw)(")',beginCaptures:{1:{name:"keyword.interpolation.scala"},2:{name:"string.quoted.double.interpolated.scala punctuation.definition.string.begin.scala"}},end:'(")|\\$\n|(\\$[^$"_{A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}])',endCaptures:{1:{name:"string.quoted.double.interpolated.scala punctuation.definition.string.end.scala"},2:{name:"invalid.illegal.unrecognized-string-escape.scala"}},patterns:[{match:'\\$[$"]',name:"constant.character.escape.scala"},{include:"#string-interpolation"},{match:".",name:"string.quoted.double.interpolated.scala"}]},{begin:'\\b((?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?))(")',beginCaptures:{1:{name:"keyword.interpolation.scala"},2:{name:"string.quoted.double.interpolated.scala punctuation.definition.string.begin.scala"}},end:'(")|\\$\n|(\\$[^$"_{A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}])',endCaptures:{1:{name:"string.quoted.double.interpolated.scala punctuation.definition.string.end.scala"},2:{name:"invalid.illegal.unrecognized-string-escape.scala"}},patterns:[{match:'\\$[$"]',name:"constant.character.escape.scala"},{include:"#string-interpolation"},{match:"\\\\(?:[btnfr\\\\\"']|[0-7]{1,3}|u[0-9A-Fa-f]{4})",name:"constant.character.escape.scala"},{match:"\\\\.",name:"invalid.illegal.unrecognized-string-escape.scala"},{match:".",name:"string.quoted.double.interpolated.scala"}]}]},using:{patterns:[{captures:{1:{name:"keyword.declaration.scala"}},match:"(?<=\\()\\s*(using)\\s"}]},"using-directive":{begin:"^\\s*(//>)\\s*(using)[^\\S\\n]+(?:(\\S+))?",beginCaptures:{1:{name:"punctuation.definition.comment.scala"},2:{name:"keyword.other.import.scala"},3:{patterns:[{match:"[A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)",name:"entity.name.import.scala"},{match:"\\.",name:"punctuation.definition.import"}]}},end:"\\n",name:"comment.line.shebang.scala",patterns:[{include:"#constants"},{include:"#strings"},{match:"[^\\s,]+",name:"string.quoted.double.scala"}]},"xml-doublequotedString":{begin:'"',beginCaptures:{0:{name:"punctuation.definition.string.begin.xml"}},end:'"',endCaptures:{0:{name:"punctuation.definition.string.end.xml"}},name:"string.quoted.double.xml",patterns:[{include:"#xml-entity"}]},"xml-embedded-content":{patterns:[{begin:"{",captures:{0:{name:"meta.bracket.scala"}},end:"}",name:"meta.source.embedded.scala",patterns:[{include:"#code"}]},{captures:{1:{name:"entity.other.attribute-name.namespace.xml"},2:{name:"entity.other.attribute-name.xml"},3:{name:"punctuation.separator.namespace.xml"},4:{name:"entity.other.attribute-name.localname.xml"}},match:" (?:([-_a-zA-Z0-9]+)((:)))?([_a-zA-Z-]+)="},{include:"#xml-doublequotedString"},{include:"#xml-singlequotedString"}]},"xml-entity":{captures:{1:{name:"punctuation.definition.constant.xml"},3:{name:"punctuation.definition.constant.xml"}},match:"(&)([:a-zA-Z_][:a-zA-Z0-9_.-]*|#\\d+|#x[0-9a-fA-F]+)(;)",name:"constant.character.entity.xml"},"xml-literal":{patterns:[{begin:"(<)((?:([_a-zA-Z0-9][_a-zA-Z0-9]*)((:)))?([_a-zA-Z0-9][-_a-zA-Z0-9:]*))(?=(\\s[^>]*)?></\\2>)",beginCaptures:{1:{name:"punctuation.definition.tag.xml"},3:{name:"entity.name.tag.namespace.xml"},4:{name:"entity.name.tag.xml"},5:{name:"punctuation.separator.namespace.xml"},6:{name:"entity.name.tag.localname.xml"}},comment:"We do not allow a tag name to start with a - since this would likely conflict with the <- operator. This is not very common for tag names anyway. Also code such as -- if (val <val2 || val> val3) will falsly be recognized as an xml tag. The solution is to put a space on either side of the comparison operator",end:"(>(<))/(?:([-_a-zA-Z0-9]+)((:)))?([-_a-zA-Z0-9:]*[_a-zA-Z0-9])(>)",endCaptures:{1:{name:"punctuation.definition.tag.xml"},2:{name:"meta.scope.between-tag-pair.xml"},3:{name:"entity.name.tag.namespace.xml"},4:{name:"entity.name.tag.xml"},5:{name:"punctuation.separator.namespace.xml"},6:{name:"entity.name.tag.localname.xml"},7:{name:"punctuation.definition.tag.xml"}},name:"meta.tag.no-content.xml",patterns:[{include:"#xml-embedded-content"}]},{begin:"(</?)(?:([_a-zA-Z0-9][-_a-zA-Z0-9]*)((:)))?([_a-zA-Z0-9][-_a-zA-Z0-9:]*)(?=[^>]*?>)",captures:{1:{name:"punctuation.definition.tag.xml"},2:{name:"entity.name.tag.namespace.xml"},3:{name:"entity.name.tag.xml"},4:{name:"punctuation.separator.namespace.xml"},5:{name:"entity.name.tag.localname.xml"}},end:"(/?>)",name:"meta.tag.xml",patterns:[{include:"#xml-embedded-content"}]},{include:"#xml-entity"}]},"xml-singlequotedString":{begin:"'",beginCaptures:{0:{name:"punctuation.definition.string.begin.xml"}},end:"'",endCaptures:{0:{name:"punctuation.definition.string.end.xml"}},name:"string.quoted.single.xml",patterns:[{include:"#xml-entity"}]}},scopeName:"source.scala"})];export{a as default};
@@ -1,2 +1,2 @@
1
- System.register([],function(_export,_context){"use strict";var a;return{setters:[],execute:function execute(){_export("default",a=[Object.freeze({displayName:"Scala",fileTypes:["scala"],firstLineMatch:"^#!/.*\\b\\w*scala\\b",foldingStartMarker:"/\\*\\*|\\{\\s*$",foldingStopMarker:"\\*\\*/|^\\s*\\}",name:"scala",patterns:[{include:"#code"}],repository:{backQuotedVariable:{match:"`[^`]+`"},"block-comments":{patterns:[{captures:{0:{name:"punctuation.definition.comment.scala"}},match:"/\\*\\*/",name:"comment.block.empty.scala"},{begin:"^\\s*(/\\*\\*)(?!/)",beginCaptures:{1:{name:"punctuation.definition.comment.scala"}},end:"\\*/",endCaptures:{0:{name:"punctuation.definition.comment.scala"}},name:"comment.block.documentation.scala",patterns:[{captures:{1:{name:"keyword.other.documentation.scaladoc.scala"},2:{name:"variable.parameter.scala"}},match:"(@param)\\s+(\\S+)"},{captures:{1:{name:"keyword.other.documentation.scaladoc.scala"},2:{name:"entity.name.class"}},match:"(@(?:tparam|throws))\\s+(\\S+)"},{match:"@(return|see|note|example|constructor|usecase|author|version|since|todo|deprecated|migration|define|inheritdoc)\\b",name:"keyword.other.documentation.scaladoc.scala"},{captures:{1:{name:"punctuation.definition.documentation.link.scala"},2:{name:"string.other.link.title.markdown"},3:{name:"punctuation.definition.documentation.link.scala"}},match:"(\\[\\[)([^\\]]+)(\\]\\])"},{include:"#block-comments"}]},{begin:"/\\*",captures:{0:{name:"punctuation.definition.comment.scala"}},end:"\\*/",name:"comment.block.scala",patterns:[{include:"#block-comments"}]}]},"char-literal":{patterns:[{captures:{1:{name:"punctuation.definition.character.begin.scala"},2:{name:"punctuation.definition.character.end.scala"}},match:"(')'(')",name:"string.quoted.other constant.character.literal.scala"},{begin:"'",beginCaptures:{0:{name:"punctuation.definition.character.begin.scala"}},end:"'|$",endCaptures:{0:{name:"punctuation.definition.character.end.scala"}},name:"string.quoted.other constant.character.literal.scala",patterns:[{match:"\\\\(?:[btnfr\\\\\"']|[0-7]{1,3}|u[0-9A-Fa-f]{4})",name:"constant.character.escape.scala"},{match:"\\\\.",name:"invalid.illegal.unrecognized-character-escape.scala"},{match:"[^']{2,}",name:"invalid.illegal.character-literal-too-long"},{match:"(?<!')[^']",name:"invalid.illegal.character-literal-too-long"}]}]},code:{patterns:[{include:"#using-directive"},{include:"#script-header"},{include:"#storage-modifiers"},{include:"#declarations"},{include:"#inheritance"},{include:"#extension"},{include:"#imports"},{include:"#exports"},{include:"#comments"},{include:"#strings"},{include:"#initialization"},{include:"#xml-literal"},{include:"#keywords"},{include:"#using"},{include:"#constants"},{include:"#singleton-type"},{include:"#inline"},{include:"#scala-quoted-or-symbol"},{include:"#char-literal"},{include:"#empty-parentheses"},{include:"#parameter-list"},{include:"#qualifiedClassName"},{include:"#backQuotedVariable"},{include:"#curly-braces"},{include:"#meta-brackets"},{include:"#meta-bounds"},{include:"#meta-colons"}]},comments:{patterns:[{include:"#block-comments"},{begin:"(^[ \\t]+)?(?=//)",beginCaptures:{1:{name:"punctuation.whitespace.comment.leading.scala"}},end:"(?!\\G)",patterns:[{begin:"//",beginCaptures:{0:{name:"punctuation.definition.comment.scala"}},end:"\\n",name:"comment.line.double-slash.scala"}]}]},constants:{patterns:[{match:"\\b(false|null|true)\\b",name:"constant.language.scala"},{match:"\\b(0[xX][0-9a-fA-F_]*)\\b",name:"constant.numeric.scala"},{match:"\\b((\\d[0-9_]*(\\.\\d[0-9_]*)?)([eE](\\+|-)?\\d[0-9_]*)?|\\d[0-9_]*)[LlFfDd]?\\b",name:"constant.numeric.scala"},{match:"(\\.\\d[0-9_]*)([eE](\\+|-)?\\d[0-9_]*)?[LlFfDd]?\\b",name:"constant.numeric.scala"},{match:"\\b0[bB][01]([01_]*[01])?[Ll]?\\b",name:"constant.numeric.scala"},{match:"\\b(this|super)\\b",name:"variable.language.scala"}]},"curly-braces":{begin:"\\{",beginCaptures:{0:{name:"punctuation.section.block.begin.scala"}},end:"\\}",endCaptures:{0:{name:"punctuation.section.block.end.scala"}},patterns:[{include:"#code"}]},declarations:{patterns:[{captures:{1:{name:"keyword.declaration.scala"},2:{name:"entity.name.function.declaration"}},match:"\\b(def)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"},{captures:{1:{name:"keyword.declaration.scala"},2:{name:"entity.name.class.declaration"}},match:"\\b(trait)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"},{captures:{1:{name:"keyword.declaration.scala"},2:{name:"keyword.declaration.scala"},3:{name:"entity.name.class.declaration"}},match:"\\b(?:(case)\\s+)?(class|object|enum)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"},{captures:{1:{name:"keyword.declaration.scala"},2:{name:"entity.name.type.declaration"}},match:"(?<!\\.)\\b(type)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"},{captures:{1:{name:"keyword.declaration.stable.scala"},2:{name:"keyword.declaration.volatile.scala"}},match:"\\b(?:(val)|(var))\\b\\s*(?!//|/\\*)(?=(?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)?\\()"},{captures:{1:{name:"keyword.declaration.stable.scala"},2:{name:"variable.stable.declaration.scala"}},match:'\\b(val)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)(?:\\s*,\\s*(?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))*)?(?!")'},{captures:{1:{name:"keyword.declaration.volatile.scala"},2:{name:"variable.volatile.declaration.scala"}},match:'\\b(var)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)(?:\\s*,\\s*(?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))*)?(?!")'},{captures:{1:{name:"keyword.other.package.scala"},2:{name:"keyword.declaration.scala"},3:{name:"entity.name.class.declaration"}},match:"\\b(package)\\s+(object)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"},{begin:"\\b(package)\\s+",beginCaptures:{1:{name:"keyword.other.package.scala"}},end:"(?<=[\\n;])",name:"meta.package.scala",patterns:[{include:"#comments"},{match:"(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))",name:"entity.name.package.scala"},{match:"\\.",name:"punctuation.definition.package"}]},{captures:{1:{name:"keyword.declaration.scala"},2:{name:"entity.name.given.declaration"}},match:"\\b(given)\\b\\s*([_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|`[^`]+`)?"}]},"empty-parentheses":{captures:{1:{name:"meta.bracket.scala"}},match:"(\\(\\))",name:"meta.parentheses.scala"},exports:{begin:"\\b(export)\\s+",beginCaptures:{1:{name:"keyword.other.export.scala"}},end:"(?<=[\\n;])",name:"meta.export.scala",patterns:[{include:"#comments"},{match:"\\b(given)\\b",name:"keyword.other.export.given.scala"},{match:"[A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?",name:"entity.name.class.export.scala"},{match:"(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))",name:"entity.name.export.scala"},{match:"\\.",name:"punctuation.definition.export"},{begin:"{",beginCaptures:{0:{name:"meta.bracket.scala"}},end:"}",endCaptures:{0:{name:"meta.bracket.scala"}},name:"meta.export.selector.scala",patterns:[{captures:{1:{name:"keyword.other.export.given.scala"},2:{name:"entity.name.class.export.renamed-from.scala"},3:{name:"entity.name.export.renamed-from.scala"},4:{name:"keyword.other.arrow.scala"},5:{name:"entity.name.class.export.renamed-to.scala"},6:{name:"entity.name.export.renamed-to.scala"}},match:"(given\\s)?\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*(=>)\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*"},{match:"\\b(given)\\b",name:"keyword.other.export.given.scala"},{captures:{1:{name:"keyword.other.export.given.scala"},2:{name:"entity.name.class.export.scala"},3:{name:"entity.name.export.scala"}},match:"(given\\s+)?(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))"}]}]},extension:{patterns:[{captures:{1:{name:"keyword.declaration.scala"}},match:"^\\s*(extension)\\s+(?=[\\[(])"}]},imports:{begin:"\\b(import)\\s+",beginCaptures:{1:{name:"keyword.other.import.scala"}},end:"(?<=[\\n;])",name:"meta.import.scala",patterns:[{include:"#comments"},{match:"\\b(given)\\b",name:"keyword.other.import.given.scala"},{match:"\\s(as)\\s",name:"keyword.other.import.as.scala"},{match:"[A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?",name:"entity.name.class.import.scala"},{match:"(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))",name:"entity.name.import.scala"},{match:"\\.",name:"punctuation.definition.import"},{begin:"{",beginCaptures:{0:{name:"meta.bracket.scala"}},end:"}",endCaptures:{0:{name:"meta.bracket.scala"}},name:"meta.import.selector.scala",patterns:[{captures:{1:{name:"keyword.other.import.given.scala"},2:{name:"entity.name.class.import.renamed-from.scala"},3:{name:"entity.name.import.renamed-from.scala"},4:{name:"keyword.other.arrow.scala"},5:{name:"entity.name.class.import.renamed-to.scala"},6:{name:"entity.name.import.renamed-to.scala"}},match:"(given\\s)?\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*(=>)\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*"},{match:"\\b(given)\\b",name:"keyword.other.import.given.scala"},{captures:{1:{name:"keyword.other.import.given.scala"},2:{name:"entity.name.class.import.scala"},3:{name:"entity.name.import.scala"}},match:"(given\\s+)?(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))"}]}]},inheritance:{patterns:[{captures:{1:{name:"keyword.declaration.scala"},2:{name:"entity.name.class"}},match:'\\b(extends|with|derives)\\b\\s*([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|`[^`]+`|(?=\\([^)]+=>)|(?=(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))|(?="))?'}]},initialization:{captures:{1:{name:"keyword.declaration.scala"}},match:"\\b(new)\\b"},inline:{patterns:[{match:"\\b(inline)(?=\\s+((?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)\\s*:)",name:"storage.modifier.other"},{match:"\\b(inline)\\b(?=(?:.(?!\\b(?:val|def|given)\\b))*\\b(if|match)\\b)",name:"keyword.control.flow.scala"}]},keywords:{patterns:[{match:"\\b(return|throw)\\b",name:"keyword.control.flow.jump.scala"},{match:"\\b(classOf|isInstanceOf|asInstanceOf)\\b",name:"support.function.type-of.scala"},{match:"\\b(else|if|then|do|while|for|yield|match|case)\\b",name:"keyword.control.flow.scala"},{match:"^\\s*(end)\\s+(if|while|for|match)(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)",name:"keyword.control.flow.end.scala"},{match:"^\\s*(end)\\s+(val)(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)",name:"keyword.declaration.stable.end.scala"},{match:"^\\s*(end)\\s+(var)(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)",name:"keyword.declaration.volatile.end.scala"},{captures:{1:{name:"keyword.declaration.end.scala"},2:{name:"keyword.declaration.end.scala"},3:{name:"entity.name.type.declaration"}},match:"^\\s*(end)\\s+(?:(new|extension)|([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?))(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)"},{match:"\\b(catch|finally|try)\\b",name:"keyword.control.exception.scala"},{match:"^\\s*(end)\\s+(try)(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)",name:"keyword.control.exception.end.scala"},{captures:{1:{name:"keyword.declaration.end.scala"},2:{name:"entity.name.declaration"}},match:"^\\s*(end)\\s+(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))?(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)"},{match:"(==?|!=|<=|>=|<>|<|>)",name:"keyword.operator.comparison.scala"},{match:"(-|\\+|\\*|/(?![/*])|%|~)",name:"keyword.operator.arithmetic.scala"},{match:"(?<![!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]|_)(!|&&|\\|\\|)(?![!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}])",name:"keyword.operator.logical.scala"},{match:"(<-|←|->|→|=>|⇒|\\?|:+|@|\\|)+",name:"keyword.operator.scala"}]},"meta-bounds":{comment:"For themes: Matching view bounds",match:"<%|=:=|<:<|<%<|>:|<:",name:"meta.bounds.scala"},"meta-brackets":{comment:"For themes: Brackets look nice when colored.",patterns:[{comment:"The punctuation.section.*.begin is needed for return snippet in source bundle",match:"\\{",name:"punctuation.section.block.begin.scala"},{comment:"The punctuation.section.*.end is needed for return snippet in source bundle",match:"\\}",name:"punctuation.section.block.end.scala"},{match:"{|}|\\(|\\)|\\[|\\]",name:"meta.bracket.scala"}]},"meta-colons":{comment:"For themes: Matching type colons",patterns:[{match:"(?<!:):(?!:)",name:"meta.colon.scala"}]},"parameter-list":{patterns:[{captures:{1:{name:"variable.parameter.scala"},2:{name:"meta.colon.scala"}},match:"(?<=[^\\._$a-zA-Z0-9])(`[^`]+`|[_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)\\s*(:)\\s+"}]},qualifiedClassName:{captures:{1:{name:"entity.name.class"}},match:"(\\b([A-Z][\\w]*)(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)"},"scala-quoted-or-symbol":{patterns:[{captures:{1:{name:"keyword.control.flow.staging.scala constant.other.symbol.scala"},2:{name:"constant.other.symbol.scala"}},match:"(')((?>(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))(?!')"},{match:"'(?=\\s*\\{(?!'))",name:"keyword.control.flow.staging.scala"},{match:"'(?=\\s*\\[(?!'))",name:"keyword.control.flow.staging.scala"},{match:"\\$(?=\\s*\\{)",name:"keyword.control.flow.staging.scala"}]},"script-header":{captures:{1:{name:"string.unquoted.shebang.scala"}},match:"^#!(.*)$",name:"comment.block.shebang.scala"},"singleton-type":{captures:{1:{name:"keyword.type.scala"}},match:"\\.(type)(?![A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|\\d)"},"storage-modifiers":{patterns:[{match:"\\b(private\\[\\S+\\]|protected\\[\\S+\\]|private|protected)\\b",name:"storage.modifier.access"},{match:"\\b(synchronized|@volatile|abstract|final|lazy|sealed|implicit|override|@transient|@native)\\b",name:"storage.modifier.other"},{match:"(?<=^|\\s)\\b(transparent|opaque|infix|open|inline)\\b(?=[a-z\\s]*\\b(def|val|var|given|type|class|trait|object|enum)\\b)",name:"storage.modifier.other"}]},"string-interpolation":{patterns:[{match:"\\$\\$",name:"constant.character.escape.interpolation.scala"},{captures:{1:{name:"punctuation.definition.template-expression.begin.scala"}},match:"(\\$)([A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\p{Lo}\\p{Nl}\\p{Ll}0-9]*)",name:"meta.template.expression.scala"},{begin:"\\$\\{",beginCaptures:{0:{name:"punctuation.definition.template-expression.begin.scala"}},contentName:"meta.embedded.line.scala",end:"\\}",endCaptures:{0:{name:"punctuation.definition.template-expression.end.scala"}},name:"meta.template.expression.scala",patterns:[{include:"#code"}]}]},strings:{patterns:[{begin:'"""',beginCaptures:{0:{name:"punctuation.definition.string.begin.scala"}},end:'"""(?!")',endCaptures:{0:{name:"punctuation.definition.string.end.scala"}},name:"string.quoted.triple.scala",patterns:[{match:"\\\\\\\\|\\\\u[0-9A-Fa-f]{4}",name:"constant.character.escape.scala"}]},{begin:'\\b(raw)(""")',beginCaptures:{1:{name:"keyword.interpolation.scala"},2:{name:"string.quoted.triple.interpolated.scala punctuation.definition.string.begin.scala"}},end:'(""")(?!")|\\$\n|(\\$[^$"_{A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}])',endCaptures:{1:{name:"string.quoted.triple.interpolated.scala punctuation.definition.string.end.scala"},2:{name:"invalid.illegal.unrecognized-string-escape.scala"}},patterns:[{match:'\\$[$"]',name:"constant.character.escape.scala"},{include:"#string-interpolation"},{match:".",name:"string.quoted.triple.interpolated.scala"}]},{begin:'\\b((?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?))(""")',beginCaptures:{1:{name:"keyword.interpolation.scala"},2:{name:"string.quoted.triple.interpolated.scala punctuation.definition.string.begin.scala"}},end:'(""")(?!")|\\$\n|(\\$[^$"_{A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}])',endCaptures:{1:{name:"string.quoted.triple.interpolated.scala punctuation.definition.string.end.scala"},2:{name:"invalid.illegal.unrecognized-string-escape.scala"}},patterns:[{include:"#string-interpolation"},{match:"\\\\\\\\|\\\\u[0-9A-Fa-f]{4}",name:"constant.character.escape.scala"},{match:".",name:"string.quoted.triple.interpolated.scala"}]},{begin:'"',beginCaptures:{0:{name:"punctuation.definition.string.begin.scala"}},end:'"',endCaptures:{0:{name:"punctuation.definition.string.end.scala"}},name:"string.quoted.double.scala",patterns:[{match:"\\\\(?:[btnfr\\\\\"']|[0-7]{1,3}|u[0-9A-Fa-f]{4})",name:"constant.character.escape.scala"},{match:"\\\\.",name:"invalid.illegal.unrecognized-string-escape.scala"}]},{begin:'\\b(raw)(")',beginCaptures:{1:{name:"keyword.interpolation.scala"},2:{name:"string.quoted.double.interpolated.scala punctuation.definition.string.begin.scala"}},end:'(")|\\$\n|(\\$[^$"_{A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}])',endCaptures:{1:{name:"string.quoted.double.interpolated.scala punctuation.definition.string.end.scala"},2:{name:"invalid.illegal.unrecognized-string-escape.scala"}},patterns:[{match:'\\$[$"]',name:"constant.character.escape.scala"},{include:"#string-interpolation"},{match:".",name:"string.quoted.double.interpolated.scala"}]},{begin:'\\b((?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?))(")',beginCaptures:{1:{name:"keyword.interpolation.scala"},2:{name:"string.quoted.double.interpolated.scala punctuation.definition.string.begin.scala"}},end:'(")|\\$\n|(\\$[^$"_{A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}])',endCaptures:{1:{name:"string.quoted.double.interpolated.scala punctuation.definition.string.end.scala"},2:{name:"invalid.illegal.unrecognized-string-escape.scala"}},patterns:[{match:'\\$[$"]',name:"constant.character.escape.scala"},{include:"#string-interpolation"},{match:"\\\\(?:[btnfr\\\\\"']|[0-7]{1,3}|u[0-9A-Fa-f]{4})",name:"constant.character.escape.scala"},{match:"\\\\.",name:"invalid.illegal.unrecognized-string-escape.scala"},{match:".",name:"string.quoted.double.interpolated.scala"}]}]},using:{patterns:[{captures:{1:{name:"keyword.declaration.scala"}},match:"(?<=\\()\\s*(using)\\s"}]},"using-directive":{begin:"^\\s*(//>)\\s*(using)[^\\S\\n]+(?:(\\S+))?",beginCaptures:{1:{name:"punctuation.definition.comment.scala"},2:{name:"keyword.other.import.scala"},3:{patterns:[{match:"[A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)",name:"entity.name.import.scala"},{match:"\\.",name:"punctuation.definition.import"}]}},end:"\\n",name:"comment.line.shebang.scala",patterns:[{include:"#constants"},{include:"#strings"},{match:"[^\\s,]+",name:"string.quoted.double.scala"}]},"xml-doublequotedString":{begin:'"',beginCaptures:{0:{name:"punctuation.definition.string.begin.xml"}},end:'"',endCaptures:{0:{name:"punctuation.definition.string.end.xml"}},name:"string.quoted.double.xml",patterns:[{include:"#xml-entity"}]},"xml-embedded-content":{patterns:[{begin:"{",captures:{0:{name:"meta.bracket.scala"}},end:"}",name:"meta.source.embedded.scala",patterns:[{include:"#code"}]},{captures:{1:{name:"entity.other.attribute-name.namespace.xml"},2:{name:"entity.other.attribute-name.xml"},3:{name:"punctuation.separator.namespace.xml"},4:{name:"entity.other.attribute-name.localname.xml"}},match:" (?:([-_a-zA-Z0-9]+)((:)))?([_a-zA-Z-]+)="},{include:"#xml-doublequotedString"},{include:"#xml-singlequotedString"}]},"xml-entity":{captures:{1:{name:"punctuation.definition.constant.xml"},3:{name:"punctuation.definition.constant.xml"}},match:"(&)([:a-zA-Z_][:a-zA-Z0-9_.-]*|#\\d+|#x[0-9a-fA-F]+)(;)",name:"constant.character.entity.xml"},"xml-literal":{patterns:[{begin:"(<)((?:([_a-zA-Z0-9][_a-zA-Z0-9]*)((:)))?([_a-zA-Z0-9][-_a-zA-Z0-9:]*))(?=(\\s[^>]*)?></\\2>)",beginCaptures:{1:{name:"punctuation.definition.tag.xml"},3:{name:"entity.name.tag.namespace.xml"},4:{name:"entity.name.tag.xml"},5:{name:"punctuation.separator.namespace.xml"},6:{name:"entity.name.tag.localname.xml"}},comment:"We do not allow a tag name to start with a - since this would likely conflict with the <- operator. This is not very common for tag names anyway. Also code such as -- if (val <val2 || val> val3) will falsly be recognized as an xml tag. The solution is to put a space on either side of the comparison operator",end:"(>(<))/(?:([-_a-zA-Z0-9]+)((:)))?([-_a-zA-Z0-9:]*[_a-zA-Z0-9])(>)",endCaptures:{1:{name:"punctuation.definition.tag.xml"},2:{name:"meta.scope.between-tag-pair.xml"},3:{name:"entity.name.tag.namespace.xml"},4:{name:"entity.name.tag.xml"},5:{name:"punctuation.separator.namespace.xml"},6:{name:"entity.name.tag.localname.xml"},7:{name:"punctuation.definition.tag.xml"}},name:"meta.tag.no-content.xml",patterns:[{include:"#xml-embedded-content"}]},{begin:"(</?)(?:([_a-zA-Z0-9][-_a-zA-Z0-9]*)((:)))?([_a-zA-Z0-9][-_a-zA-Z0-9:]*)(?=[^>]*?>)",captures:{1:{name:"punctuation.definition.tag.xml"},2:{name:"entity.name.tag.namespace.xml"},3:{name:"entity.name.tag.xml"},4:{name:"punctuation.separator.namespace.xml"},5:{name:"entity.name.tag.localname.xml"}},end:"(/?>)",name:"meta.tag.xml",patterns:[{include:"#xml-embedded-content"}]},{include:"#xml-entity"}]},"xml-singlequotedString":{begin:"'",beginCaptures:{0:{name:"punctuation.definition.string.begin.xml"}},end:"'",endCaptures:{0:{name:"punctuation.definition.string.end.xml"}},name:"string.quoted.single.xml",patterns:[{include:"#xml-entity"}]}},scopeName:"source.scala"})]);}};});
2
- //# sourceMappingURL=scala-b2ea8aa7.cjs.js.map
1
+ System.register([],function(_export,_context){"use strict";var a;return{setters:[],execute:function execute(){_export("default",a=[Object.freeze({displayName:"Scala",fileTypes:["scala"],firstLineMatch:"^#!/.*\\b\\w*scala\\b",foldingStartMarker:"/\\*\\*|\\{\\s*$",foldingStopMarker:"\\*\\*/|^\\s*\\}",name:"scala",patterns:[{include:"#code"}],repository:{backQuotedVariable:{match:"`[^`]+`"},"block-comments":{patterns:[{captures:{0:{name:"punctuation.definition.comment.scala"}},match:"/\\*\\*/",name:"comment.block.empty.scala"},{begin:"^\\s*(/\\*\\*)(?!/)",beginCaptures:{1:{name:"punctuation.definition.comment.scala"}},end:"\\*/",endCaptures:{0:{name:"punctuation.definition.comment.scala"}},name:"comment.block.documentation.scala",patterns:[{captures:{1:{name:"keyword.other.documentation.scaladoc.scala"},2:{name:"variable.parameter.scala"}},match:"(@param)\\s+(\\S+)"},{captures:{1:{name:"keyword.other.documentation.scaladoc.scala"},2:{name:"entity.name.class"}},match:"(@(?:tparam|throws))\\s+(\\S+)"},{match:"@(return|see|note|example|constructor|usecase|author|version|since|todo|deprecated|migration|define|inheritdoc)\\b",name:"keyword.other.documentation.scaladoc.scala"},{captures:{1:{name:"punctuation.definition.documentation.link.scala"},2:{name:"string.other.link.title.markdown"},3:{name:"punctuation.definition.documentation.link.scala"}},match:"(\\[\\[)([^\\]]+)(\\]\\])"},{include:"#block-comments"}]},{begin:"/\\*",captures:{0:{name:"punctuation.definition.comment.scala"}},end:"\\*/",name:"comment.block.scala",patterns:[{include:"#block-comments"}]}]},"char-literal":{patterns:[{captures:{1:{name:"punctuation.definition.character.begin.scala"},2:{name:"punctuation.definition.character.end.scala"}},match:"(')'(')",name:"string.quoted.other constant.character.literal.scala"},{begin:"'",beginCaptures:{0:{name:"punctuation.definition.character.begin.scala"}},end:"'|$",endCaptures:{0:{name:"punctuation.definition.character.end.scala"}},name:"string.quoted.other constant.character.literal.scala",patterns:[{match:"\\\\(?:[btnfr\\\\\"']|[0-7]{1,3}|u[0-9A-Fa-f]{4})",name:"constant.character.escape.scala"},{match:"\\\\.",name:"invalid.illegal.unrecognized-character-escape.scala"},{match:"[^']{2,}",name:"invalid.illegal.character-literal-too-long"},{match:"(?<!')[^']",name:"invalid.illegal.character-literal-too-long"}]}]},code:{patterns:[{include:"#using-directive"},{include:"#script-header"},{include:"#storage-modifiers"},{include:"#declarations"},{include:"#inheritance"},{include:"#extension"},{include:"#imports"},{include:"#exports"},{include:"#comments"},{include:"#strings"},{include:"#initialization"},{include:"#xml-literal"},{include:"#keywords"},{include:"#using"},{include:"#constants"},{include:"#singleton-type"},{include:"#inline"},{include:"#scala-quoted-or-symbol"},{include:"#char-literal"},{include:"#empty-parentheses"},{include:"#parameter-list"},{include:"#qualifiedClassName"},{include:"#backQuotedVariable"},{include:"#curly-braces"},{include:"#meta-brackets"},{include:"#meta-bounds"},{include:"#meta-colons"}]},comments:{patterns:[{include:"#block-comments"},{begin:"(^[ \\t]+)?(?=//)",beginCaptures:{1:{name:"punctuation.whitespace.comment.leading.scala"}},end:"(?!\\G)",patterns:[{begin:"//",beginCaptures:{0:{name:"punctuation.definition.comment.scala"}},end:"\\n",name:"comment.line.double-slash.scala"}]}]},constants:{patterns:[{match:"\\b(false|null|true)\\b",name:"constant.language.scala"},{match:"\\b(0[xX][0-9a-fA-F_]*)\\b",name:"constant.numeric.scala"},{match:"\\b((\\d[0-9_]*(\\.\\d[0-9_]*)?)([eE](\\+|-)?\\d[0-9_]*)?|\\d[0-9_]*)[LlFfDd]?\\b",name:"constant.numeric.scala"},{match:"(\\.\\d[0-9_]*)([eE](\\+|-)?\\d[0-9_]*)?[LlFfDd]?\\b",name:"constant.numeric.scala"},{match:"\\b0[bB][01]([01_]*[01])?[Ll]?\\b",name:"constant.numeric.scala"},{match:"\\b(this|super)\\b",name:"variable.language.scala"}]},"curly-braces":{begin:"\\{",beginCaptures:{0:{name:"punctuation.section.block.begin.scala"}},end:"\\}",endCaptures:{0:{name:"punctuation.section.block.end.scala"}},patterns:[{include:"#code"}]},declarations:{patterns:[{captures:{1:{name:"keyword.declaration.scala"},2:{name:"entity.name.function.declaration"}},match:"\\b(def)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"},{captures:{1:{name:"keyword.declaration.scala"},2:{name:"entity.name.class.declaration"}},match:"\\b(trait)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"},{captures:{1:{name:"keyword.declaration.scala"},2:{name:"keyword.declaration.scala"},3:{name:"entity.name.class.declaration"}},match:"\\b(?:(case)\\s+)?(class|object|enum)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"},{captures:{1:{name:"keyword.declaration.scala"},2:{name:"entity.name.type.declaration"}},match:"(?<!\\.)\\b(type)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"},{captures:{1:{name:"keyword.declaration.stable.scala"},2:{name:"keyword.declaration.volatile.scala"}},match:"\\b(?:(val)|(var))\\b\\s*(?!//|/\\*)(?=(?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)?\\()"},{captures:{1:{name:"keyword.declaration.stable.scala"},2:{name:"variable.stable.declaration.scala"}},match:'\\b(val)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)(?:\\s*,\\s*(?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))*)?(?!")'},{captures:{1:{name:"keyword.declaration.volatile.scala"},2:{name:"variable.volatile.declaration.scala"}},match:'\\b(var)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)(?:\\s*,\\s*(?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))*)?(?!")'},{captures:{1:{name:"keyword.other.package.scala"},2:{name:"keyword.declaration.scala"},3:{name:"entity.name.class.declaration"}},match:"\\b(package)\\s+(object)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"},{begin:"\\b(package)\\s+",beginCaptures:{1:{name:"keyword.other.package.scala"}},end:"(?<=[\\n;])",name:"meta.package.scala",patterns:[{include:"#comments"},{match:"(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))",name:"entity.name.package.scala"},{match:"\\.",name:"punctuation.definition.package"}]},{captures:{1:{name:"keyword.declaration.scala"},2:{name:"entity.name.given.declaration"}},match:"\\b(given)\\b\\s*([_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|`[^`]+`)?"}]},"empty-parentheses":{captures:{1:{name:"meta.bracket.scala"}},match:"(\\(\\))",name:"meta.parentheses.scala"},exports:{begin:"\\b(export)\\s+",beginCaptures:{1:{name:"keyword.other.export.scala"}},end:"(?<=[\\n;])",name:"meta.export.scala",patterns:[{include:"#comments"},{match:"\\b(given)\\b",name:"keyword.other.export.given.scala"},{match:"[A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?",name:"entity.name.class.export.scala"},{match:"(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))",name:"entity.name.export.scala"},{match:"\\.",name:"punctuation.definition.export"},{begin:"{",beginCaptures:{0:{name:"meta.bracket.scala"}},end:"}",endCaptures:{0:{name:"meta.bracket.scala"}},name:"meta.export.selector.scala",patterns:[{captures:{1:{name:"keyword.other.export.given.scala"},2:{name:"entity.name.class.export.renamed-from.scala"},3:{name:"entity.name.export.renamed-from.scala"},4:{name:"keyword.other.arrow.scala"},5:{name:"entity.name.class.export.renamed-to.scala"},6:{name:"entity.name.export.renamed-to.scala"}},match:"(given\\s)?\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*(=>)\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*"},{match:"\\b(given)\\b",name:"keyword.other.export.given.scala"},{captures:{1:{name:"keyword.other.export.given.scala"},2:{name:"entity.name.class.export.scala"},3:{name:"entity.name.export.scala"}},match:"(given\\s+)?(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))"}]}]},extension:{patterns:[{captures:{1:{name:"keyword.declaration.scala"}},match:"^\\s*(extension)\\s+(?=[\\[(])"}]},imports:{begin:"\\b(import)\\s+",beginCaptures:{1:{name:"keyword.other.import.scala"}},end:"(?<=[\\n;])",name:"meta.import.scala",patterns:[{include:"#comments"},{match:"\\b(given)\\b",name:"keyword.other.import.given.scala"},{match:"\\s(as)\\s",name:"keyword.other.import.as.scala"},{match:"[A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?",name:"entity.name.class.import.scala"},{match:"(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))",name:"entity.name.import.scala"},{match:"\\.",name:"punctuation.definition.import"},{begin:"{",beginCaptures:{0:{name:"meta.bracket.scala"}},end:"}",endCaptures:{0:{name:"meta.bracket.scala"}},name:"meta.import.selector.scala",patterns:[{captures:{1:{name:"keyword.other.import.given.scala"},2:{name:"entity.name.class.import.renamed-from.scala"},3:{name:"entity.name.import.renamed-from.scala"},4:{name:"keyword.other.arrow.scala"},5:{name:"entity.name.class.import.renamed-to.scala"},6:{name:"entity.name.import.renamed-to.scala"}},match:"(given\\s)?\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*(=>)\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*"},{match:"\\b(given)\\b",name:"keyword.other.import.given.scala"},{captures:{1:{name:"keyword.other.import.given.scala"},2:{name:"entity.name.class.import.scala"},3:{name:"entity.name.import.scala"}},match:"(given\\s+)?(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))"}]}]},inheritance:{patterns:[{captures:{1:{name:"keyword.declaration.scala"},2:{name:"entity.name.class"}},match:'\\b(extends|with|derives)\\b\\s*([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|`[^`]+`|(?=\\([^)]+=>)|(?=(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))|(?="))?'}]},initialization:{captures:{1:{name:"keyword.declaration.scala"}},match:"\\b(new)\\b"},inline:{patterns:[{match:"\\b(inline)(?=\\s+((?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)\\s*:)",name:"storage.modifier.other"},{match:"\\b(inline)\\b(?=(?:.(?!\\b(?:val|def|given)\\b))*\\b(if|match)\\b)",name:"keyword.control.flow.scala"}]},keywords:{patterns:[{match:"\\b(return|throw)\\b",name:"keyword.control.flow.jump.scala"},{match:"\\b(classOf|isInstanceOf|asInstanceOf)\\b",name:"support.function.type-of.scala"},{match:"\\b(else|if|then|do|while|for|yield|match|case)\\b",name:"keyword.control.flow.scala"},{match:"^\\s*(end)\\s+(if|while|for|match)(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)",name:"keyword.control.flow.end.scala"},{match:"^\\s*(end)\\s+(val)(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)",name:"keyword.declaration.stable.end.scala"},{match:"^\\s*(end)\\s+(var)(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)",name:"keyword.declaration.volatile.end.scala"},{captures:{1:{name:"keyword.declaration.end.scala"},2:{name:"keyword.declaration.end.scala"},3:{name:"entity.name.type.declaration"}},match:"^\\s*(end)\\s+(?:(new|extension)|([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?))(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)"},{match:"\\b(catch|finally|try)\\b",name:"keyword.control.exception.scala"},{match:"^\\s*(end)\\s+(try)(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)",name:"keyword.control.exception.end.scala"},{captures:{1:{name:"keyword.declaration.end.scala"},2:{name:"entity.name.declaration"}},match:"^\\s*(end)\\s+(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))?(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)"},{match:"(==?|!=|<=|>=|<>|<|>)",name:"keyword.operator.comparison.scala"},{match:"(-|\\+|\\*|/(?![/*])|%|~)",name:"keyword.operator.arithmetic.scala"},{match:"(?<![!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]|_)(!|&&|\\|\\|)(?![!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}])",name:"keyword.operator.logical.scala"},{match:"(<-|←|->|→|=>|⇒|\\?|:+|@|\\|)+",name:"keyword.operator.scala"}]},"meta-bounds":{comment:"For themes: Matching view bounds",match:"<%|=:=|<:<|<%<|>:|<:",name:"meta.bounds.scala"},"meta-brackets":{comment:"For themes: Brackets look nice when colored.",patterns:[{comment:"The punctuation.section.*.begin is needed for return snippet in source bundle",match:"\\{",name:"punctuation.section.block.begin.scala"},{comment:"The punctuation.section.*.end is needed for return snippet in source bundle",match:"\\}",name:"punctuation.section.block.end.scala"},{match:"{|}|\\(|\\)|\\[|\\]",name:"meta.bracket.scala"}]},"meta-colons":{comment:"For themes: Matching type colons",patterns:[{match:"(?<!:):(?!:)",name:"meta.colon.scala"}]},"parameter-list":{patterns:[{captures:{1:{name:"variable.parameter.scala"},2:{name:"meta.colon.scala"}},match:"(?<=[^\\._$a-zA-Z0-9])(`[^`]+`|[_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)\\s*(:)\\s+"}]},qualifiedClassName:{captures:{1:{name:"entity.name.class"}},match:"(\\b([A-Z][\\w]*)(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)"},"scala-quoted-or-symbol":{patterns:[{captures:{1:{name:"keyword.control.flow.staging.scala constant.other.symbol.scala"},2:{name:"constant.other.symbol.scala"}},match:"(')((?>(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))(?!')"},{match:"'(?=\\s*\\{(?!'))",name:"keyword.control.flow.staging.scala"},{match:"'(?=\\s*\\[(?!'))",name:"keyword.control.flow.staging.scala"},{match:"\\$(?=\\s*\\{)",name:"keyword.control.flow.staging.scala"}]},"script-header":{captures:{1:{name:"string.unquoted.shebang.scala"}},match:"^#!(.*)$",name:"comment.block.shebang.scala"},"singleton-type":{captures:{1:{name:"keyword.type.scala"}},match:"\\.(type)(?![A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|\\d)"},"storage-modifiers":{patterns:[{match:"\\b(private\\[\\S+\\]|protected\\[\\S+\\]|private|protected)\\b",name:"storage.modifier.access"},{match:"\\b(synchronized|@volatile|abstract|final|lazy|sealed|implicit|override|@transient|@native)\\b",name:"storage.modifier.other"},{match:"(?<=^|\\s)\\b(transparent|opaque|infix|open|inline)\\b(?=[a-z\\s]*\\b(def|val|var|given|type|class|trait|object|enum)\\b)",name:"storage.modifier.other"}]},"string-interpolation":{patterns:[{match:"\\$\\$",name:"constant.character.escape.interpolation.scala"},{captures:{1:{name:"punctuation.definition.template-expression.begin.scala"}},match:"(\\$)([A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\p{Lo}\\p{Nl}\\p{Ll}0-9]*)",name:"meta.template.expression.scala"},{begin:"\\$\\{",beginCaptures:{0:{name:"punctuation.definition.template-expression.begin.scala"}},contentName:"meta.embedded.line.scala",end:"\\}",endCaptures:{0:{name:"punctuation.definition.template-expression.end.scala"}},name:"meta.template.expression.scala",patterns:[{include:"#code"}]}]},strings:{patterns:[{begin:'"""',beginCaptures:{0:{name:"punctuation.definition.string.begin.scala"}},end:'"""(?!")',endCaptures:{0:{name:"punctuation.definition.string.end.scala"}},name:"string.quoted.triple.scala",patterns:[{match:"\\\\\\\\|\\\\u[0-9A-Fa-f]{4}",name:"constant.character.escape.scala"}]},{begin:'\\b(raw)(""")',beginCaptures:{1:{name:"keyword.interpolation.scala"},2:{name:"string.quoted.triple.interpolated.scala punctuation.definition.string.begin.scala"}},end:'(""")(?!")|\\$\n|(\\$[^$"_{A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}])',endCaptures:{1:{name:"string.quoted.triple.interpolated.scala punctuation.definition.string.end.scala"},2:{name:"invalid.illegal.unrecognized-string-escape.scala"}},patterns:[{match:'\\$[$"]',name:"constant.character.escape.scala"},{include:"#string-interpolation"},{match:".",name:"string.quoted.triple.interpolated.scala"}]},{begin:'\\b((?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?))(""")',beginCaptures:{1:{name:"keyword.interpolation.scala"},2:{name:"string.quoted.triple.interpolated.scala punctuation.definition.string.begin.scala"}},end:'(""")(?!")|\\$\n|(\\$[^$"_{A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}])',endCaptures:{1:{name:"string.quoted.triple.interpolated.scala punctuation.definition.string.end.scala"},2:{name:"invalid.illegal.unrecognized-string-escape.scala"}},patterns:[{include:"#string-interpolation"},{match:"\\\\\\\\|\\\\u[0-9A-Fa-f]{4}",name:"constant.character.escape.scala"},{match:".",name:"string.quoted.triple.interpolated.scala"}]},{begin:'"',beginCaptures:{0:{name:"punctuation.definition.string.begin.scala"}},end:'"',endCaptures:{0:{name:"punctuation.definition.string.end.scala"}},name:"string.quoted.double.scala",patterns:[{match:"\\\\(?:[btnfr\\\\\"']|[0-7]{1,3}|u[0-9A-Fa-f]{4})",name:"constant.character.escape.scala"},{match:"\\\\.",name:"invalid.illegal.unrecognized-string-escape.scala"}]},{begin:'\\b(raw)(")',beginCaptures:{1:{name:"keyword.interpolation.scala"},2:{name:"string.quoted.double.interpolated.scala punctuation.definition.string.begin.scala"}},end:'(")|\\$\n|(\\$[^$"_{A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}])',endCaptures:{1:{name:"string.quoted.double.interpolated.scala punctuation.definition.string.end.scala"},2:{name:"invalid.illegal.unrecognized-string-escape.scala"}},patterns:[{match:'\\$[$"]',name:"constant.character.escape.scala"},{include:"#string-interpolation"},{match:".",name:"string.quoted.double.interpolated.scala"}]},{begin:'\\b((?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?))(")',beginCaptures:{1:{name:"keyword.interpolation.scala"},2:{name:"string.quoted.double.interpolated.scala punctuation.definition.string.begin.scala"}},end:'(")|\\$\n|(\\$[^$"_{A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}])',endCaptures:{1:{name:"string.quoted.double.interpolated.scala punctuation.definition.string.end.scala"},2:{name:"invalid.illegal.unrecognized-string-escape.scala"}},patterns:[{match:'\\$[$"]',name:"constant.character.escape.scala"},{include:"#string-interpolation"},{match:"\\\\(?:[btnfr\\\\\"']|[0-7]{1,3}|u[0-9A-Fa-f]{4})",name:"constant.character.escape.scala"},{match:"\\\\.",name:"invalid.illegal.unrecognized-string-escape.scala"},{match:".",name:"string.quoted.double.interpolated.scala"}]}]},using:{patterns:[{captures:{1:{name:"keyword.declaration.scala"}},match:"(?<=\\()\\s*(using)\\s"}]},"using-directive":{begin:"^\\s*(//>)\\s*(using)[^\\S\\n]+(?:(\\S+))?",beginCaptures:{1:{name:"punctuation.definition.comment.scala"},2:{name:"keyword.other.import.scala"},3:{patterns:[{match:"[A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)",name:"entity.name.import.scala"},{match:"\\.",name:"punctuation.definition.import"}]}},end:"\\n",name:"comment.line.shebang.scala",patterns:[{include:"#constants"},{include:"#strings"},{match:"[^\\s,]+",name:"string.quoted.double.scala"}]},"xml-doublequotedString":{begin:'"',beginCaptures:{0:{name:"punctuation.definition.string.begin.xml"}},end:'"',endCaptures:{0:{name:"punctuation.definition.string.end.xml"}},name:"string.quoted.double.xml",patterns:[{include:"#xml-entity"}]},"xml-embedded-content":{patterns:[{begin:"{",captures:{0:{name:"meta.bracket.scala"}},end:"}",name:"meta.source.embedded.scala",patterns:[{include:"#code"}]},{captures:{1:{name:"entity.other.attribute-name.namespace.xml"},2:{name:"entity.other.attribute-name.xml"},3:{name:"punctuation.separator.namespace.xml"},4:{name:"entity.other.attribute-name.localname.xml"}},match:" (?:([-_a-zA-Z0-9]+)((:)))?([_a-zA-Z-]+)="},{include:"#xml-doublequotedString"},{include:"#xml-singlequotedString"}]},"xml-entity":{captures:{1:{name:"punctuation.definition.constant.xml"},3:{name:"punctuation.definition.constant.xml"}},match:"(&)([:a-zA-Z_][:a-zA-Z0-9_.-]*|#\\d+|#x[0-9a-fA-F]+)(;)",name:"constant.character.entity.xml"},"xml-literal":{patterns:[{begin:"(<)((?:([_a-zA-Z0-9][_a-zA-Z0-9]*)((:)))?([_a-zA-Z0-9][-_a-zA-Z0-9:]*))(?=(\\s[^>]*)?></\\2>)",beginCaptures:{1:{name:"punctuation.definition.tag.xml"},3:{name:"entity.name.tag.namespace.xml"},4:{name:"entity.name.tag.xml"},5:{name:"punctuation.separator.namespace.xml"},6:{name:"entity.name.tag.localname.xml"}},comment:"We do not allow a tag name to start with a - since this would likely conflict with the <- operator. This is not very common for tag names anyway. Also code such as -- if (val <val2 || val> val3) will falsly be recognized as an xml tag. The solution is to put a space on either side of the comparison operator",end:"(>(<))/(?:([-_a-zA-Z0-9]+)((:)))?([-_a-zA-Z0-9:]*[_a-zA-Z0-9])(>)",endCaptures:{1:{name:"punctuation.definition.tag.xml"},2:{name:"meta.scope.between-tag-pair.xml"},3:{name:"entity.name.tag.namespace.xml"},4:{name:"entity.name.tag.xml"},5:{name:"punctuation.separator.namespace.xml"},6:{name:"entity.name.tag.localname.xml"},7:{name:"punctuation.definition.tag.xml"}},name:"meta.tag.no-content.xml",patterns:[{include:"#xml-embedded-content"}]},{begin:"(</?)(?:([_a-zA-Z0-9][-_a-zA-Z0-9]*)((:)))?([_a-zA-Z0-9][-_a-zA-Z0-9:]*)(?=[^>]*?>)",captures:{1:{name:"punctuation.definition.tag.xml"},2:{name:"entity.name.tag.namespace.xml"},3:{name:"entity.name.tag.xml"},4:{name:"punctuation.separator.namespace.xml"},5:{name:"entity.name.tag.localname.xml"}},end:"(/?>)",name:"meta.tag.xml",patterns:[{include:"#xml-embedded-content"}]},{include:"#xml-entity"}]},"xml-singlequotedString":{begin:"'",beginCaptures:{0:{name:"punctuation.definition.string.begin.xml"}},end:"'",endCaptures:{0:{name:"punctuation.definition.string.end.xml"}},name:"string.quoted.single.xml",patterns:[{include:"#xml-entity"}]}},scopeName:"source.scala"})]);}};});
2
+ //# sourceMappingURL=scala-44c4b612.cjs.js.map