@shikijs/langs 3.1.0 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (233) hide show
  1. package/dist/abap.mjs +1 -1
  2. package/dist/actionscript-3.mjs +1 -1
  3. package/dist/ada.mjs +1 -1
  4. package/dist/angular-expression.mjs +1 -1
  5. package/dist/angular-html.mjs +1 -1
  6. package/dist/angular-inline-style.mjs +1 -1
  7. package/dist/angular-inline-template.mjs +1 -1
  8. package/dist/angular-template-blocks.mjs +1 -1
  9. package/dist/angular-template.mjs +1 -1
  10. package/dist/angular-ts.mjs +1 -1
  11. package/dist/apache.mjs +1 -1
  12. package/dist/apex.mjs +1 -1
  13. package/dist/apl.mjs +1 -1
  14. package/dist/applescript.mjs +1 -1
  15. package/dist/ara.mjs +1 -1
  16. package/dist/asciidoc.mjs +1 -1
  17. package/dist/asm.mjs +1 -1
  18. package/dist/astro.mjs +1 -1
  19. package/dist/awk.mjs +1 -1
  20. package/dist/ballerina.mjs +1 -1
  21. package/dist/bat.mjs +1 -1
  22. package/dist/beancount.mjs +1 -1
  23. package/dist/berry.mjs +1 -1
  24. package/dist/bibtex.mjs +1 -1
  25. package/dist/bicep.mjs +1 -1
  26. package/dist/blade.mjs +1 -1
  27. package/dist/bsl.mjs +1 -1
  28. package/dist/c.mjs +1 -1
  29. package/dist/cadence.mjs +1 -1
  30. package/dist/cairo.mjs +1 -1
  31. package/dist/clarity.mjs +1 -1
  32. package/dist/clojure.mjs +1 -1
  33. package/dist/cmake.mjs +1 -1
  34. package/dist/cobol.mjs +1 -1
  35. package/dist/codeql.mjs +1 -1
  36. package/dist/coffee.mjs +1 -1
  37. package/dist/common-lisp.mjs +1 -1
  38. package/dist/coq.mjs +1 -1
  39. package/dist/cpp-macro.mjs +1 -1
  40. package/dist/cpp.mjs +1 -1
  41. package/dist/crystal.mjs +1 -1
  42. package/dist/csharp.mjs +1 -1
  43. package/dist/css.mjs +1 -1
  44. package/dist/csv.mjs +1 -1
  45. package/dist/cue.mjs +1 -1
  46. package/dist/cypher.mjs +1 -1
  47. package/dist/d.mjs +1 -1
  48. package/dist/dart.mjs +1 -1
  49. package/dist/dax.mjs +1 -1
  50. package/dist/desktop.mjs +1 -1
  51. package/dist/diff.mjs +1 -1
  52. package/dist/dotenv.mjs +1 -1
  53. package/dist/dream-maker.mjs +1 -1
  54. package/dist/edge.mjs +1 -1
  55. package/dist/elixir.mjs +1 -1
  56. package/dist/elm.mjs +1 -1
  57. package/dist/emacs-lisp.mjs +1 -1
  58. package/dist/erb.mjs +1 -1
  59. package/dist/erlang.mjs +1 -1
  60. package/dist/es-tag-css.mjs +1 -1
  61. package/dist/es-tag-glsl.mjs +1 -1
  62. package/dist/es-tag-html.mjs +1 -1
  63. package/dist/es-tag-sql.mjs +1 -1
  64. package/dist/es-tag-xml.mjs +1 -1
  65. package/dist/fennel.mjs +1 -1
  66. package/dist/fish.mjs +1 -1
  67. package/dist/fluent.mjs +1 -1
  68. package/dist/fortran-fixed-form.mjs +1 -1
  69. package/dist/fortran-free-form.mjs +1 -1
  70. package/dist/fsharp.mjs +1 -1
  71. package/dist/gdresource.mjs +1 -1
  72. package/dist/gdscript.mjs +1 -1
  73. package/dist/gdshader.mjs +1 -1
  74. package/dist/genie.mjs +1 -1
  75. package/dist/gherkin.mjs +1 -1
  76. package/dist/git-commit.mjs +1 -1
  77. package/dist/git-rebase.mjs +1 -1
  78. package/dist/gleam.mjs +1 -1
  79. package/dist/glimmer-js.mjs +1 -1
  80. package/dist/glimmer-ts.mjs +1 -1
  81. package/dist/glsl.mjs +1 -1
  82. package/dist/gnuplot.mjs +1 -1
  83. package/dist/go.mjs +1 -1
  84. package/dist/graphql.mjs +1 -1
  85. package/dist/groovy.mjs +1 -1
  86. package/dist/hack.mjs +1 -1
  87. package/dist/haml.mjs +1 -1
  88. package/dist/handlebars.mjs +1 -1
  89. package/dist/haskell.mjs +1 -1
  90. package/dist/haxe.mjs +1 -1
  91. package/dist/hcl.mjs +1 -1
  92. package/dist/hjson.mjs +1 -1
  93. package/dist/hlsl.mjs +1 -1
  94. package/dist/html-derivative.mjs +1 -1
  95. package/dist/html.mjs +1 -1
  96. package/dist/http.mjs +1 -1
  97. package/dist/hxml.mjs +1 -1
  98. package/dist/hy.mjs +1 -1
  99. package/dist/imba.mjs +1 -4
  100. package/dist/index.mjs +2 -0
  101. package/dist/ini.mjs +1 -1
  102. package/dist/java.mjs +1 -1
  103. package/dist/javascript.mjs +1 -1
  104. package/dist/jinja-html.mjs +1 -1
  105. package/dist/jinja.mjs +1 -1
  106. package/dist/jison.mjs +1 -1
  107. package/dist/json.mjs +1 -1
  108. package/dist/json5.mjs +1 -1
  109. package/dist/jsonc.mjs +1 -1
  110. package/dist/jsonl.mjs +1 -1
  111. package/dist/jsonnet.mjs +1 -1
  112. package/dist/jssm.mjs +1 -1
  113. package/dist/jsx.mjs +1 -1
  114. package/dist/julia.mjs +1 -1
  115. package/dist/kotlin.mjs +1 -1
  116. package/dist/kusto.mjs +1 -1
  117. package/dist/latex.mjs +1 -1
  118. package/dist/lean.mjs +1 -1
  119. package/dist/less.mjs +1 -1
  120. package/dist/liquid.mjs +1 -1
  121. package/dist/llvm.d.mts +3 -0
  122. package/dist/llvm.mjs +5 -0
  123. package/dist/log.mjs +1 -1
  124. package/dist/logo.mjs +1 -1
  125. package/dist/lua.mjs +1 -1
  126. package/dist/luau.mjs +1 -1
  127. package/dist/make.mjs +1 -1
  128. package/dist/markdown-vue.mjs +1 -1
  129. package/dist/markdown.mjs +1 -1
  130. package/dist/marko.mjs +1 -1
  131. package/dist/matlab.mjs +1 -1
  132. package/dist/mdc.mjs +1 -1
  133. package/dist/mdx.mjs +1 -1
  134. package/dist/mermaid.mjs +1 -1
  135. package/dist/mipsasm.mjs +1 -1
  136. package/dist/mojo.mjs +1 -1
  137. package/dist/move.mjs +1 -1
  138. package/dist/narrat.mjs +1 -1
  139. package/dist/nextflow.mjs +1 -1
  140. package/dist/nginx.mjs +1 -1
  141. package/dist/nim.mjs +1 -1
  142. package/dist/nix.mjs +1 -1
  143. package/dist/nushell.mjs +1 -1
  144. package/dist/objective-c.mjs +1 -1
  145. package/dist/objective-cpp.mjs +1 -1
  146. package/dist/ocaml.mjs +1 -1
  147. package/dist/pascal.mjs +1 -1
  148. package/dist/perl.mjs +1 -1
  149. package/dist/php.mjs +1 -1
  150. package/dist/plsql.mjs +1 -1
  151. package/dist/po.mjs +1 -1
  152. package/dist/polar.mjs +1 -1
  153. package/dist/postcss.mjs +1 -1
  154. package/dist/powerquery.mjs +1 -1
  155. package/dist/powershell.mjs +1 -1
  156. package/dist/prisma.mjs +1 -1
  157. package/dist/prolog.mjs +1 -1
  158. package/dist/proto.mjs +1 -1
  159. package/dist/pug.mjs +1 -1
  160. package/dist/puppet.mjs +1 -1
  161. package/dist/purescript.mjs +1 -1
  162. package/dist/python.mjs +1 -1
  163. package/dist/qml.mjs +1 -1
  164. package/dist/qss.mjs +1 -1
  165. package/dist/r.mjs +1 -1
  166. package/dist/racket.mjs +1 -1
  167. package/dist/raku.mjs +1 -1
  168. package/dist/razor.mjs +1 -1
  169. package/dist/reg.mjs +1 -1
  170. package/dist/regexp.mjs +1 -1
  171. package/dist/rel.mjs +1 -1
  172. package/dist/riscv.mjs +1 -1
  173. package/dist/rst.mjs +1 -1
  174. package/dist/ruby.mjs +1 -1
  175. package/dist/rust.mjs +1 -1
  176. package/dist/sas.mjs +1 -1
  177. package/dist/sass.mjs +1 -1
  178. package/dist/scala.mjs +1 -1
  179. package/dist/scheme.mjs +1 -1
  180. package/dist/scss.mjs +1 -1
  181. package/dist/sdbl.mjs +1 -1
  182. package/dist/shaderlab.mjs +1 -1
  183. package/dist/shellscript.mjs +1 -1
  184. package/dist/shellsession.mjs +1 -1
  185. package/dist/smalltalk.mjs +1 -1
  186. package/dist/solidity.mjs +1 -1
  187. package/dist/soy.mjs +1 -1
  188. package/dist/sparql.mjs +1 -1
  189. package/dist/splunk.mjs +1 -1
  190. package/dist/sql.mjs +1 -1
  191. package/dist/ssh-config.mjs +1 -1
  192. package/dist/stata.mjs +1 -1
  193. package/dist/stylus.mjs +1 -1
  194. package/dist/svelte.mjs +1 -1
  195. package/dist/swift.mjs +1 -1
  196. package/dist/system-verilog.mjs +1 -1
  197. package/dist/systemd.mjs +1 -1
  198. package/dist/talonscript.mjs +1 -1
  199. package/dist/tasl.mjs +1 -1
  200. package/dist/tcl.mjs +1 -1
  201. package/dist/templ.mjs +1 -1
  202. package/dist/terraform.mjs +1 -1
  203. package/dist/tex.mjs +1 -1
  204. package/dist/toml.mjs +1 -1
  205. package/dist/tsx.mjs +1 -1
  206. package/dist/turtle.mjs +1 -1
  207. package/dist/twig.mjs +1 -1
  208. package/dist/typescript.mjs +1 -1
  209. package/dist/typespec.mjs +1 -1
  210. package/dist/typst.mjs +1 -1
  211. package/dist/v.mjs +1 -1
  212. package/dist/vala.mjs +1 -1
  213. package/dist/vb.mjs +1 -1
  214. package/dist/verilog.mjs +1 -1
  215. package/dist/vhdl.mjs +1 -1
  216. package/dist/viml.mjs +1 -1
  217. package/dist/vue-html.mjs +1 -1
  218. package/dist/vue-sfc-style-variable-injection.mjs +1 -1
  219. package/dist/vue.mjs +1 -1
  220. package/dist/vyper.mjs +1 -1
  221. package/dist/wasm.mjs +1 -1
  222. package/dist/wenyan.mjs +1 -1
  223. package/dist/wgsl.mjs +1 -1
  224. package/dist/wikitext.mjs +1 -1
  225. package/dist/wit.d.mts +3 -0
  226. package/dist/wit.mjs +5 -0
  227. package/dist/wolfram.mjs +1 -1
  228. package/dist/xml.mjs +1 -1
  229. package/dist/xsl.mjs +1 -1
  230. package/dist/yaml.mjs +1 -1
  231. package/dist/zenscript.mjs +1 -1
  232. package/dist/zig.mjs +1 -1
  233. package/package.json +5 -3
package/dist/groovy.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const lang = Object.freeze(JSON.parse("{\"displayName\":\"Groovy\",\"name\":\"groovy\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.groovy\"}},\"match\":\"^(#!).+$\\\\n\",\"name\":\"comment.line.hashbang.groovy\"},{\"captures\":{\"1\":{\"name\":\"keyword.other.package.groovy\"},\"2\":{\"name\":\"storage.modifier.package.groovy\"},\"3\":{\"name\":\"punctuation.terminator.groovy\"}},\"match\":\"^\\\\s*(package)\\\\b(?:\\\\s*([^ ;$]+)\\\\s*(;)?)?\",\"name\":\"meta.package.groovy\"},{\"begin\":\"(import static)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.import.static.groovy\"}},\"captures\":{\"1\":{\"name\":\"keyword.other.import.groovy\"},\"2\":{\"name\":\"storage.modifier.import.groovy\"},\"3\":{\"name\":\"punctuation.terminator.groovy\"}},\"contentName\":\"storage.modifier.import.groovy\",\"end\":\"\\\\s*(?:$|(?=%>)(;))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.terminator.groovy\"}},\"name\":\"meta.import.groovy\",\"patterns\":[{\"match\":\"\\\\.\",\"name\":\"punctuation.separator.groovy\"},{\"match\":\"\\\\s\",\"name\":\"invalid.illegal.character_not_allowed_here.groovy\"}]},{\"begin\":\"(import)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.import.groovy\"}},\"captures\":{\"1\":{\"name\":\"keyword.other.import.groovy\"},\"2\":{\"name\":\"storage.modifier.import.groovy\"},\"3\":{\"name\":\"punctuation.terminator.groovy\"}},\"contentName\":\"storage.modifier.import.groovy\",\"end\":\"\\\\s*(?:$|(?=%>)|(;))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.terminator.groovy\"}},\"name\":\"meta.import.groovy\",\"patterns\":[{\"match\":\"\\\\.\",\"name\":\"punctuation.separator.groovy\"},{\"match\":\"\\\\s\",\"name\":\"invalid.illegal.character_not_allowed_here.groovy\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.other.import.groovy\"},\"2\":{\"name\":\"keyword.other.import.static.groovy\"},\"3\":{\"name\":\"storage.modifier.import.groovy\"},\"4\":{\"name\":\"punctuation.terminator.groovy\"}},\"match\":\"^\\\\s*(import)(?:\\\\s+(static)\\\\s+)\\\\b(?:\\\\s*([^ ;$]+)\\\\s*(;)?)?\",\"name\":\"meta.import.groovy\"},{\"include\":\"#groovy\"}],\"repository\":{\"annotations\":{\"patterns\":[{\"begin\":\"(?<!\\\\.)(@[^ (]+)(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.annotation.groovy\"},\"2\":{\"name\":\"punctuation.definition.annotation-arguments.begin.groovy\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.annotation-arguments.end.groovy\"}},\"name\":\"meta.declaration.annotation.groovy\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.other.key.groovy\"},\"2\":{\"name\":\"keyword.operator.assignment.groovy\"}},\"match\":\"(\\\\w*)\\\\s*(=)\"},{\"include\":\"#values\"},{\"match\":\",\",\"name\":\"punctuation.definition.seperator.groovy\"}]},{\"match\":\"(?<!\\\\.)@\\\\S+\",\"name\":\"storage.type.annotation.groovy\"}]},\"anonymous-classes-and-new\":{\"begin\":\"\\\\bnew\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.control.new.groovy\"}},\"end\":\"(?<=\\\\)|\\\\])(?!\\\\s*{)|(?<=})|(?=[;])|$\",\"patterns\":[{\"begin\":\"(\\\\w+)\\\\s*(?=\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.groovy\"}},\"end\":\"}|(?=\\\\s*(?:,|;|\\\\)))|$\",\"patterns\":[{\"begin\":\"\\\\[\",\"end\":\"\\\\]\",\"patterns\":[{\"include\":\"#groovy\"}]},{\"begin\":\"{\",\"end\":\"(?=})\",\"patterns\":[{\"include\":\"#groovy\"}]}]},{\"begin\":\"(?=\\\\w.*\\\\(?)\",\"end\":\"(?<=\\\\))|$\",\"patterns\":[{\"include\":\"#object-types\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.groovy\"}},\"end\":\"\\\\)\",\"patterns\":[{\"include\":\"#groovy\"}]}]},{\"begin\":\"{\",\"end\":\"}\",\"name\":\"meta.inner-class.groovy\",\"patterns\":[{\"include\":\"#class-body\"}]}]},\"braces\":{\"begin\":\"\\\\{\",\"end\":\"\\\\}\",\"patterns\":[{\"include\":\"#groovy-code\"}]},\"class\":{\"begin\":\"(?=\\\\w?[\\\\w\\\\s]*(?:class|(?:@)?interface|enum)\\\\s+\\\\w+)\",\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.class.end.groovy\"}},\"name\":\"meta.definition.class.groovy\",\"patterns\":[{\"include\":\"#storage-modifiers\"},{\"include\":\"#comments\"},{\"captures\":{\"1\":{\"name\":\"storage.modifier.groovy\"},\"2\":{\"name\":\"entity.name.type.class.groovy\"}},\"match\":\"(class|(?:@)?interface|enum)\\\\s+(\\\\w+)\",\"name\":\"meta.class.identifier.groovy\"},{\"begin\":\"extends\",\"beginCaptures\":{\"0\":{\"name\":\"storage.modifier.extends.groovy\"}},\"end\":\"(?={|implements)\",\"name\":\"meta.definition.class.inherited.classes.groovy\",\"patterns\":[{\"include\":\"#object-types-inherited\"},{\"include\":\"#comments\"}]},{\"begin\":\"(implements)\\\\s\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.implements.groovy\"}},\"end\":\"(?=\\\\s*extends|\\\\{)\",\"name\":\"meta.definition.class.implemented.interfaces.groovy\",\"patterns\":[{\"include\":\"#object-types-inherited\"},{\"include\":\"#comments\"}]},{\"begin\":\"{\",\"end\":\"(?=})\",\"name\":\"meta.class.body.groovy\",\"patterns\":[{\"include\":\"#class-body\"}]}]},\"class-body\":{\"patterns\":[{\"include\":\"#enum-values\"},{\"include\":\"#constructors\"},{\"include\":\"#groovy\"}]},\"closures\":{\"begin\":\"\\\\{(?=.*?->)\",\"end\":\"\\\\}\",\"patterns\":[{\"begin\":\"(?<=\\\\{)(?=[^\\\\}]*?->)\",\"end\":\"->\",\"endCaptures\":{\"0\":{\"name\":\"keyword.operator.groovy\"}},\"patterns\":[{\"begin\":\"(?!->)\",\"end\":\"(?=->)\",\"name\":\"meta.closure.parameters.groovy\",\"patterns\":[{\"begin\":\"(?!,|->)\",\"end\":\"(?=,|->)\",\"name\":\"meta.closure.parameter.groovy\",\"patterns\":[{\"begin\":\"=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.assignment.groovy\"}},\"end\":\"(?=,|->)\",\"name\":\"meta.parameter.default.groovy\",\"patterns\":[{\"include\":\"#groovy-code\"}]},{\"include\":\"#parameters\"}]}]}]},{\"begin\":\"(?=[^}])\",\"end\":\"(?=\\\\})\",\"patterns\":[{\"include\":\"#groovy-code\"}]}]},\"comment-block\":{\"begin\":\"/\\\\*\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.groovy\"}},\"end\":\"\\\\*/\",\"name\":\"comment.block.groovy\"},\"comments\":{\"patterns\":[{\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.groovy\"}},\"match\":\"/\\\\*\\\\*/\",\"name\":\"comment.block.empty.groovy\"},{\"include\":\"text.html.javadoc\"},{\"include\":\"#comment-block\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.groovy\"}},\"match\":\"(//).*$\\\\n?\",\"name\":\"comment.line.double-slash.groovy\"}]},\"constants\":{\"patterns\":[{\"match\":\"\\\\b([A-Z][A-Z0-9_]+)\\\\b\",\"name\":\"constant.other.groovy\"},{\"match\":\"\\\\b(true|false|null)\\\\b\",\"name\":\"constant.language.groovy\"}]},\"constructors\":{\"applyEndPatternLast\":1,\"begin\":\"(?<=;|^)(?=\\\\s*(?:(?:private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)\\\\s+)*[A-Z]\\\\w*\\\\()\",\"end\":\"}\",\"patterns\":[{\"include\":\"#method-content\"}]},\"enum-values\":{\"patterns\":[{\"begin\":\"(?<=;|^)\\\\s*\\\\b([A-Z0-9_]+)(?=\\\\s*(?:,|;|}|\\\\(|$))\",\"beginCaptures\":{\"1\":{\"name\":\"constant.enum.name.groovy\"}},\"end\":\",|;|(?=})|^(?!\\\\s*\\\\w+\\\\s*(?:,|$))\",\"patterns\":[{\"begin\":\"\\\\(\",\"end\":\"\\\\)\",\"name\":\"meta.enum.value.groovy\",\"patterns\":[{\"match\":\",\",\"name\":\"punctuation.definition.seperator.parameter.groovy\"},{\"include\":\"#groovy-code\"}]}]}]},\"groovy\":{\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#class\"},{\"include\":\"#variables\"},{\"include\":\"#methods\"},{\"include\":\"#annotations\"},{\"include\":\"#groovy-code\"}]},\"groovy-code\":{\"patterns\":[{\"include\":\"#groovy-code-minus-map-keys\"},{\"include\":\"#map-keys\"}]},\"groovy-code-minus-map-keys\":{\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#annotations\"},{\"include\":\"#support-functions\"},{\"include\":\"#keyword-language\"},{\"include\":\"#values\"},{\"include\":\"#anonymous-classes-and-new\"},{\"include\":\"#keyword-operator\"},{\"include\":\"#types\"},{\"include\":\"#storage-modifiers\"},{\"include\":\"#parens\"},{\"include\":\"#closures\"},{\"include\":\"#braces\"}]},\"keyword\":{\"patterns\":[{\"include\":\"#keyword-operator\"},{\"include\":\"#keyword-language\"}]},\"keyword-language\":{\"patterns\":[{\"match\":\"\\\\b(try|catch|finally|throw)\\\\b\",\"name\":\"keyword.control.exception.groovy\"},{\"match\":\"\\\\b((?<!\\\\.)(?:return|break|continue|default|do|while|for|switch|if|else))\\\\b\",\"name\":\"keyword.control.groovy\"},{\"begin\":\"\\\\bcase\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.control.groovy\"}},\"end\":\":\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.case-terminator.groovy\"}},\"name\":\"meta.case.groovy\",\"patterns\":[{\"include\":\"#groovy-code-minus-map-keys\"}]},{\"begin\":\"\\\\b(assert)\\\\s\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.assert.groovy\"}},\"end\":\"$|;|}\",\"name\":\"meta.declaration.assertion.groovy\",\"patterns\":[{\"match\":\":\",\"name\":\"keyword.operator.assert.expression-seperator.groovy\"},{\"include\":\"#groovy-code-minus-map-keys\"}]},{\"match\":\"\\\\b(throws)\\\\b\",\"name\":\"keyword.other.throws.groovy\"}]},\"keyword-operator\":{\"patterns\":[{\"match\":\"\\\\b(as)\\\\b\",\"name\":\"keyword.operator.as.groovy\"},{\"match\":\"\\\\b(in)\\\\b\",\"name\":\"keyword.operator.in.groovy\"},{\"match\":\"\\\\?\\\\:\",\"name\":\"keyword.operator.elvis.groovy\"},{\"match\":\"\\\\*\\\\:\",\"name\":\"keyword.operator.spreadmap.groovy\"},{\"match\":\"\\\\.\\\\.\",\"name\":\"keyword.operator.range.groovy\"},{\"match\":\"\\\\->\",\"name\":\"keyword.operator.arrow.groovy\"},{\"match\":\"<<\",\"name\":\"keyword.operator.leftshift.groovy\"},{\"match\":\"(?<=\\\\S)\\\\.(?=\\\\S)\",\"name\":\"keyword.operator.navigation.groovy\"},{\"match\":\"(?<=\\\\S)\\\\?\\\\.(?=\\\\S)\",\"name\":\"keyword.operator.safe-navigation.groovy\"},{\"begin\":\"\\\\?\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.ternary.groovy\"}},\"end\":\"(?=$|\\\\)|}|])\",\"name\":\"meta.evaluation.ternary.groovy\",\"patterns\":[{\"match\":\":\",\"name\":\"keyword.operator.ternary.expression-seperator.groovy\"},{\"include\":\"#groovy-code-minus-map-keys\"}]},{\"match\":\"==~\",\"name\":\"keyword.operator.match.groovy\"},{\"match\":\"=~\",\"name\":\"keyword.operator.find.groovy\"},{\"match\":\"\\\\b(instanceof)\\\\b\",\"name\":\"keyword.operator.instanceof.groovy\"},{\"match\":\"(===|==|!=|<=|>=|<=>|<>|<|>|<<)\",\"name\":\"keyword.operator.comparison.groovy\"},{\"match\":\"=\",\"name\":\"keyword.operator.assignment.groovy\"},{\"match\":\"(\\\\-\\\\-|\\\\+\\\\+)\",\"name\":\"keyword.operator.increment-decrement.groovy\"},{\"match\":\"(\\\\-|\\\\+|\\\\*|\\\\/|%)\",\"name\":\"keyword.operator.arithmetic.groovy\"},{\"match\":\"(!|&&|\\\\|\\\\|)\",\"name\":\"keyword.operator.logical.groovy\"}]},\"language-variables\":{\"patterns\":[{\"match\":\"\\\\b(this|super)\\\\b\",\"name\":\"variable.language.groovy\"}]},\"map-keys\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.other.key.groovy\"},\"2\":{\"name\":\"punctuation.definition.seperator.key-value.groovy\"}},\"match\":\"(\\\\w+)\\\\s*(:)\"}]},\"method-call\":{\"begin\":\"([\\\\w$]+)(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"meta.method.groovy\"},\"2\":{\"name\":\"punctuation.definition.method-parameters.begin.groovy\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.method-parameters.end.groovy\"}},\"name\":\"meta.method-call.groovy\",\"patterns\":[{\"match\":\",\",\"name\":\"punctuation.definition.seperator.parameter.groovy\"},{\"include\":\"#groovy-code\"}]},\"method-content\":{\"patterns\":[{\"match\":\"\\\\s\"},{\"include\":\"#annotations\"},{\"begin\":\"(?=(?:\\\\w|<)[^\\\\(]*\\\\s+(?:[\\\\w$]|<)+\\\\s*\\\\()\",\"end\":\"(?=[\\\\w$]+\\\\s*\\\\()\",\"name\":\"meta.method.return-type.java\",\"patterns\":[{\"include\":\"#storage-modifiers\"},{\"include\":\"#types\"}]},{\"begin\":\"([\\\\w$]+)\\\\s*\\\\(\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.java\"}},\"end\":\"\\\\)\",\"name\":\"meta.definition.method.signature.java\",\"patterns\":[{\"begin\":\"(?=[^)])\",\"end\":\"(?=\\\\))\",\"name\":\"meta.method.parameters.groovy\",\"patterns\":[{\"begin\":\"(?=[^,)])\",\"end\":\"(?=,|\\\\))\",\"name\":\"meta.method.parameter.groovy\",\"patterns\":[{\"match\":\",\",\"name\":\"punctuation.definition.separator.groovy\"},{\"begin\":\"=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.assignment.groovy\"}},\"end\":\"(?=,|\\\\))\",\"name\":\"meta.parameter.default.groovy\",\"patterns\":[{\"include\":\"#groovy-code\"}]},{\"include\":\"#parameters\"}]}]}]},{\"begin\":\"(?=<)\",\"end\":\"(?=\\\\s)\",\"name\":\"meta.method.paramerised-type.groovy\",\"patterns\":[{\"begin\":\"<\",\"end\":\">\",\"name\":\"storage.type.parameters.groovy\",\"patterns\":[{\"include\":\"#types\"},{\"match\":\",\",\"name\":\"punctuation.definition.seperator.groovy\"}]}]},{\"begin\":\"throws\",\"beginCaptures\":{\"0\":{\"name\":\"storage.modifier.groovy\"}},\"end\":\"(?={|;)|^(?=\\\\s*(?:[^{\\\\s]|$))\",\"name\":\"meta.throwables.groovy\",\"patterns\":[{\"include\":\"#object-types\"}]},{\"begin\":\"{\",\"end\":\"(?=})\",\"name\":\"meta.method.body.java\",\"patterns\":[{\"include\":\"#groovy-code\"}]}]},\"methods\":{\"applyEndPatternLast\":1,\"begin\":\"(?:(?<=;|^|{)(?=\\\\s*(?:(?:private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)|(?:def)|(?:(?:(?:void|boolean|byte|char|short|int|float|long|double)|(?:@?(?:[a-zA-Z]\\\\w*\\\\.)*[A-Z]+\\\\w*))[\\\\[\\\\]]*(?:<.*>)?))\\\\s+([^=]+\\\\s+)?\\\\w+\\\\s*\\\\())\",\"end\":\"}|(?=[^{])\",\"name\":\"meta.definition.method.groovy\",\"patterns\":[{\"include\":\"#method-content\"}]},\"nest_curly\":{\"begin\":\"\\\\{\",\"captures\":{\"0\":{\"name\":\"punctuation.section.scope.groovy\"}},\"end\":\"\\\\}\",\"patterns\":[{\"include\":\"#nest_curly\"}]},\"numbers\":{\"patterns\":[{\"match\":\"((0(x|X)[0-9a-fA-F]*)|(\\\\+|-)?\\\\b(([0-9]+\\\\.?[0-9]*)|(\\\\.[0-9]+))((e|E)(\\\\+|-)?[0-9]+)?)([LlFfUuDdg]|UL|ul)?\\\\b\",\"name\":\"constant.numeric.groovy\"}]},\"object-types\":{\"patterns\":[{\"begin\":\"\\\\b((?:[a-z]\\\\w*\\\\.)*(?:[A-Z]+\\\\w*[a-z]+\\\\w*|UR[LI]))<\",\"end\":\">|[^\\\\w\\\\s,\\\\?<\\\\[\\\\]]\",\"name\":\"storage.type.generic.groovy\",\"patterns\":[{\"include\":\"#object-types\"},{\"begin\":\"<\",\"end\":\">|[^\\\\w\\\\s,\\\\[\\\\]<]\",\"name\":\"storage.type.generic.groovy\"}]},{\"begin\":\"\\\\b((?:[a-z]\\\\w*\\\\.)*[A-Z]+\\\\w*[a-z]+\\\\w*)(?=\\\\[)\",\"end\":\"(?=[^\\\\]\\\\s])\",\"name\":\"storage.type.object.array.groovy\",\"patterns\":[{\"begin\":\"\\\\[\",\"end\":\"\\\\]\",\"patterns\":[{\"include\":\"#groovy\"}]}]},{\"match\":\"\\\\b(?:[a-zA-Z]\\\\w*\\\\.)*(?:[A-Z]+\\\\w*[a-z]+\\\\w*|UR[LI])\\\\b\",\"name\":\"storage.type.groovy\"}]},\"object-types-inherited\":{\"patterns\":[{\"begin\":\"\\\\b((?:[a-zA-Z]\\\\w*\\\\.)*[A-Z]+\\\\w*[a-z]+\\\\w*)<\",\"end\":\">|[^\\\\w\\\\s,\\\\?<\\\\[\\\\]]\",\"name\":\"entity.other.inherited-class.groovy\",\"patterns\":[{\"include\":\"#object-types-inherited\"},{\"begin\":\"<\",\"end\":\">|[^\\\\w\\\\s,\\\\[\\\\]<]\",\"name\":\"storage.type.generic.groovy\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.operator.dereference.groovy\"}},\"match\":\"\\\\b(?:[a-zA-Z]\\\\w*(\\\\.))*[A-Z]+\\\\w*[a-z]+\\\\w*\\\\b\",\"name\":\"entity.other.inherited-class.groovy\"}]},\"parameters\":{\"patterns\":[{\"include\":\"#annotations\"},{\"include\":\"#storage-modifiers\"},{\"include\":\"#types\"},{\"match\":\"\\\\w+\",\"name\":\"variable.parameter.method.groovy\"}]},\"parens\":{\"begin\":\"\\\\(\",\"end\":\"\\\\)\",\"patterns\":[{\"include\":\"#groovy-code\"}]},\"primitive-arrays\":{\"patterns\":[{\"match\":\"\\\\b(?:void|boolean|byte|char|short|int|float|long|double)(\\\\[\\\\])*\\\\b\",\"name\":\"storage.type.primitive.array.groovy\"}]},\"primitive-types\":{\"patterns\":[{\"match\":\"\\\\b(?:void|boolean|byte|char|short|int|float|long|double)\\\\b\",\"name\":\"storage.type.primitive.groovy\"}]},\"regexp\":{\"patterns\":[{\"begin\":\"/(?=[^/]+/([^>]|$))\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.regexp.begin.groovy\"}},\"end\":\"/\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.regexp.end.groovy\"}},\"name\":\"string.regexp.groovy\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.groovy\"}]},{\"begin\":\"~\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.regexp.begin.groovy\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.regexp.end.groovy\"}},\"name\":\"string.regexp.compiled.groovy\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.groovy\"}]}]},\"storage-modifiers\":{\"patterns\":[{\"match\":\"\\\\b(private|protected|public)\\\\b\",\"name\":\"storage.modifier.access-control.groovy\"},{\"match\":\"\\\\b(static)\\\\b\",\"name\":\"storage.modifier.static.groovy\"},{\"match\":\"\\\\b(final)\\\\b\",\"name\":\"storage.modifier.final.groovy\"},{\"match\":\"\\\\b(native|synchronized|abstract|threadsafe|transient)\\\\b\",\"name\":\"storage.modifier.other.groovy\"}]},\"string-quoted-double\":{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.groovy\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.groovy\"}},\"name\":\"string.quoted.double.groovy\",\"patterns\":[{\"include\":\"#string-quoted-double-contents\"}]},\"string-quoted-double-contents\":{\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.groovy\"},{\"applyEndPatternLast\":1,\"begin\":\"\\\\$\\\\w\",\"end\":\"(?=\\\\W)\",\"name\":\"variable.other.interpolated.groovy\",\"patterns\":[{\"match\":\"\\\\w\",\"name\":\"variable.other.interpolated.groovy\"},{\"match\":\"\\\\.\",\"name\":\"keyword.other.dereference.groovy\"}]},{\"begin\":\"\\\\$\\\\{\",\"captures\":{\"0\":{\"name\":\"punctuation.section.embedded.groovy\"}},\"end\":\"\\\\}\",\"name\":\"source.groovy.embedded.source\",\"patterns\":[{\"include\":\"#nest_curly\"}]}]},\"string-quoted-double-multiline\":{\"begin\":\"\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.groovy\"}},\"end\":\"\\\"\\\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.groovy\"}},\"name\":\"string.quoted.double.multiline.groovy\",\"patterns\":[{\"include\":\"#string-quoted-double-contents\"}]},\"string-quoted-single\":{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.groovy\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.groovy\"}},\"name\":\"string.quoted.single.groovy\",\"patterns\":[{\"include\":\"#string-quoted-single-contents\"}]},\"string-quoted-single-contents\":{\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.groovy\"}]},\"string-quoted-single-multiline\":{\"begin\":\"'''\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.groovy\"}},\"end\":\"'''\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.groovy\"}},\"name\":\"string.quoted.single.multiline.groovy\",\"patterns\":[{\"include\":\"#string-quoted-single-contents\"}]},\"strings\":{\"patterns\":[{\"include\":\"#string-quoted-double-multiline\"},{\"include\":\"#string-quoted-single-multiline\"},{\"include\":\"#string-quoted-double\"},{\"include\":\"#string-quoted-single\"},{\"include\":\"#regexp\"}]},\"structures\":{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.structure.begin.groovy\"}},\"end\":\"\\\\]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.structure.end.groovy\"}},\"name\":\"meta.structure.groovy\",\"patterns\":[{\"include\":\"#groovy-code\"},{\"match\":\",\",\"name\":\"punctuation.definition.separator.groovy\"}]},\"support-functions\":{\"patterns\":[{\"match\":\"\\\\b(?:sprintf|print(?:f|ln)?)\\\\b\",\"name\":\"support.function.print.groovy\"},{\"match\":\"\\\\b(?:shouldFail|fail(?:NotEquals)?|ass(?:ume|ert(?:S(?:cript|ame)|N(?:ot(?:Same|Null)|ull)|Contains|T(?:hat|oString|rue)|Inspect|Equals|False|Length|ArrayEquals)))\\\\b\",\"name\":\"support.function.testing.groovy\"}]},\"types\":{\"patterns\":[{\"match\":\"\\\\b(def)\\\\b\",\"name\":\"storage.type.def.groovy\"},{\"include\":\"#primitive-types\"},{\"include\":\"#primitive-arrays\"},{\"include\":\"#object-types\"}]},\"values\":{\"patterns\":[{\"include\":\"#language-variables\"},{\"include\":\"#strings\"},{\"include\":\"#numbers\"},{\"include\":\"#constants\"},{\"include\":\"#types\"},{\"include\":\"#structures\"},{\"include\":\"#method-call\"}]},\"variables\":{\"applyEndPatternLast\":1,\"patterns\":[{\"begin\":\"(?:(?=(?:(?:private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)|(?:def)|(?:void|boolean|byte|char|short|int|float|long|double)|(?:(?:[a-z]\\\\w*\\\\.)*[A-Z]+\\\\w*))\\\\s+[\\\\w\\\\d_<>\\\\[\\\\],\\\\s]+(?:=|$)))\",\"end\":\";|$\",\"name\":\"meta.definition.variable.groovy\",\"patterns\":[{\"match\":\"\\\\s\"},{\"captures\":{\"1\":{\"name\":\"constant.variable.groovy\"}},\"match\":\"([A-Z_0-9]+)\\\\s+(?=\\\\=)\"},{\"captures\":{\"1\":{\"name\":\"meta.definition.variable.name.groovy\"}},\"match\":\"(\\\\w[^\\\\s,]*)\\\\s+(?=\\\\=)\"},{\"begin\":\"=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.assignment.groovy\"}},\"end\":\"$\",\"patterns\":[{\"include\":\"#groovy-code\"}]},{\"captures\":{\"1\":{\"name\":\"meta.definition.variable.name.groovy\"}},\"match\":\"(\\\\w[^\\\\s=]*)(?=\\\\s*($|;))\"},{\"include\":\"#groovy-code\"}]}]}},\"scopeName\":\"source.groovy\"}"))
1
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"Groovy\",\"name\":\"groovy\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.groovy\"}},\"match\":\"^(#!).+$\\\\n\",\"name\":\"comment.line.hashbang.groovy\"},{\"captures\":{\"1\":{\"name\":\"keyword.other.package.groovy\"},\"2\":{\"name\":\"storage.modifier.package.groovy\"},\"3\":{\"name\":\"punctuation.terminator.groovy\"}},\"match\":\"^\\\\s*(package)\\\\b(?:\\\\s*([^ ;$]+)\\\\s*(;)?)?\",\"name\":\"meta.package.groovy\"},{\"begin\":\"(import static)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.import.static.groovy\"}},\"captures\":{\"1\":{\"name\":\"keyword.other.import.groovy\"},\"2\":{\"name\":\"storage.modifier.import.groovy\"},\"3\":{\"name\":\"punctuation.terminator.groovy\"}},\"contentName\":\"storage.modifier.import.groovy\",\"end\":\"\\\\s*(?:$|(?=%>)(;))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.terminator.groovy\"}},\"name\":\"meta.import.groovy\",\"patterns\":[{\"match\":\"\\\\.\",\"name\":\"punctuation.separator.groovy\"},{\"match\":\"\\\\s\",\"name\":\"invalid.illegal.character_not_allowed_here.groovy\"}]},{\"begin\":\"(import)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.import.groovy\"}},\"captures\":{\"1\":{\"name\":\"keyword.other.import.groovy\"},\"2\":{\"name\":\"storage.modifier.import.groovy\"},\"3\":{\"name\":\"punctuation.terminator.groovy\"}},\"contentName\":\"storage.modifier.import.groovy\",\"end\":\"\\\\s*(?:$|(?=%>)|(;))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.terminator.groovy\"}},\"name\":\"meta.import.groovy\",\"patterns\":[{\"match\":\"\\\\.\",\"name\":\"punctuation.separator.groovy\"},{\"match\":\"\\\\s\",\"name\":\"invalid.illegal.character_not_allowed_here.groovy\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.other.import.groovy\"},\"2\":{\"name\":\"keyword.other.import.static.groovy\"},\"3\":{\"name\":\"storage.modifier.import.groovy\"},\"4\":{\"name\":\"punctuation.terminator.groovy\"}},\"match\":\"^\\\\s*(import)\\\\s+(static)\\\\s+\\\\b(?:\\\\s*([^ ;$]+)\\\\s*(;)?)?\",\"name\":\"meta.import.groovy\"},{\"include\":\"#groovy\"}],\"repository\":{\"annotations\":{\"patterns\":[{\"begin\":\"(?<!\\\\.)(@[^ (]+)(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.annotation.groovy\"},\"2\":{\"name\":\"punctuation.definition.annotation-arguments.begin.groovy\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.annotation-arguments.end.groovy\"}},\"name\":\"meta.declaration.annotation.groovy\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.other.key.groovy\"},\"2\":{\"name\":\"keyword.operator.assignment.groovy\"}},\"match\":\"(\\\\w*)\\\\s*(=)\"},{\"include\":\"#values\"},{\"match\":\",\",\"name\":\"punctuation.definition.seperator.groovy\"}]},{\"match\":\"(?<!\\\\.)@\\\\S+\",\"name\":\"storage.type.annotation.groovy\"}]},\"anonymous-classes-and-new\":{\"begin\":\"\\\\bnew\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.control.new.groovy\"}},\"end\":\"(?<=[)\\\\]])(?!\\\\s*\\\\{)|(?<=})|(?=;)|$\",\"patterns\":[{\"begin\":\"(\\\\w+)\\\\s*(?=\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.groovy\"}},\"end\":\"}|(?=\\\\s*[,;)])|$\",\"patterns\":[{\"begin\":\"\\\\[\",\"end\":\"]\",\"patterns\":[{\"include\":\"#groovy\"}]},{\"begin\":\"\\\\{\",\"end\":\"(?=})\",\"patterns\":[{\"include\":\"#groovy\"}]}]},{\"begin\":\"(?=\\\\w.*\\\\(?)\",\"end\":\"(?<=\\\\))|$\",\"patterns\":[{\"include\":\"#object-types\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.groovy\"}},\"end\":\"\\\\)\",\"patterns\":[{\"include\":\"#groovy\"}]}]},{\"begin\":\"\\\\{\",\"end\":\"}\",\"name\":\"meta.inner-class.groovy\",\"patterns\":[{\"include\":\"#class-body\"}]}]},\"braces\":{\"begin\":\"\\\\{\",\"end\":\"}\",\"patterns\":[{\"include\":\"#groovy-code\"}]},\"class\":{\"begin\":\"(?=\\\\w?[\\\\w\\\\s]*(?:class|@?interface|enum)\\\\s+\\\\w+)\",\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.section.class.end.groovy\"}},\"name\":\"meta.definition.class.groovy\",\"patterns\":[{\"include\":\"#storage-modifiers\"},{\"include\":\"#comments\"},{\"captures\":{\"1\":{\"name\":\"storage.modifier.groovy\"},\"2\":{\"name\":\"entity.name.type.class.groovy\"}},\"match\":\"(class|@?interface|enum)\\\\s+(\\\\w+)\",\"name\":\"meta.class.identifier.groovy\"},{\"begin\":\"extends\",\"beginCaptures\":{\"0\":{\"name\":\"storage.modifier.extends.groovy\"}},\"end\":\"(?=\\\\{|implements)\",\"name\":\"meta.definition.class.inherited.classes.groovy\",\"patterns\":[{\"include\":\"#object-types-inherited\"},{\"include\":\"#comments\"}]},{\"begin\":\"(implements)\\\\s\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.implements.groovy\"}},\"end\":\"(?=\\\\s*extends|\\\\{)\",\"name\":\"meta.definition.class.implemented.interfaces.groovy\",\"patterns\":[{\"include\":\"#object-types-inherited\"},{\"include\":\"#comments\"}]},{\"begin\":\"\\\\{\",\"end\":\"(?=})\",\"name\":\"meta.class.body.groovy\",\"patterns\":[{\"include\":\"#class-body\"}]}]},\"class-body\":{\"patterns\":[{\"include\":\"#enum-values\"},{\"include\":\"#constructors\"},{\"include\":\"#groovy\"}]},\"closures\":{\"begin\":\"\\\\{(?=.*?->)\",\"end\":\"}\",\"patterns\":[{\"begin\":\"(?<=\\\\{)(?=[^}]*?->)\",\"end\":\"->\",\"endCaptures\":{\"0\":{\"name\":\"keyword.operator.groovy\"}},\"patterns\":[{\"begin\":\"(?!->)\",\"end\":\"(?=->)\",\"name\":\"meta.closure.parameters.groovy\",\"patterns\":[{\"begin\":\"(?!,|->)\",\"end\":\"(?=,|->)\",\"name\":\"meta.closure.parameter.groovy\",\"patterns\":[{\"begin\":\"=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.assignment.groovy\"}},\"end\":\"(?=,|->)\",\"name\":\"meta.parameter.default.groovy\",\"patterns\":[{\"include\":\"#groovy-code\"}]},{\"include\":\"#parameters\"}]}]}]},{\"begin\":\"(?=[^}])\",\"end\":\"(?=})\",\"patterns\":[{\"include\":\"#groovy-code\"}]}]},\"comment-block\":{\"begin\":\"/\\\\*\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.groovy\"}},\"end\":\"\\\\*/\",\"name\":\"comment.block.groovy\"},\"comments\":{\"patterns\":[{\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.groovy\"}},\"match\":\"/\\\\*\\\\*/\",\"name\":\"comment.block.empty.groovy\"},{\"include\":\"text.html.javadoc\"},{\"include\":\"#comment-block\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.groovy\"}},\"match\":\"(//).*$\\\\n?\",\"name\":\"comment.line.double-slash.groovy\"}]},\"constants\":{\"patterns\":[{\"match\":\"\\\\b([A-Z][A-Z0-9_]+)\\\\b\",\"name\":\"constant.other.groovy\"},{\"match\":\"\\\\b(true|false|null)\\\\b\",\"name\":\"constant.language.groovy\"}]},\"constructors\":{\"applyEndPatternLast\":1,\"begin\":\"(?<=;|^)(?=\\\\s*(?:(?:private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)\\\\s+)*[A-Z]\\\\w*\\\\()\",\"end\":\"}\",\"patterns\":[{\"include\":\"#method-content\"}]},\"enum-values\":{\"patterns\":[{\"begin\":\"(?<=;|^)\\\\s*\\\\b([A-Z0-9_]+)(?=\\\\s*(?:[,;}(]|$))\",\"beginCaptures\":{\"1\":{\"name\":\"constant.enum.name.groovy\"}},\"end\":\"[,;]|(?=})|^(?!\\\\s*\\\\w+\\\\s*(?:,|$))\",\"patterns\":[{\"begin\":\"\\\\(\",\"end\":\"\\\\)\",\"name\":\"meta.enum.value.groovy\",\"patterns\":[{\"match\":\",\",\"name\":\"punctuation.definition.seperator.parameter.groovy\"},{\"include\":\"#groovy-code\"}]}]}]},\"groovy\":{\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#class\"},{\"include\":\"#variables\"},{\"include\":\"#methods\"},{\"include\":\"#annotations\"},{\"include\":\"#groovy-code\"}]},\"groovy-code\":{\"patterns\":[{\"include\":\"#groovy-code-minus-map-keys\"},{\"include\":\"#map-keys\"}]},\"groovy-code-minus-map-keys\":{\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#annotations\"},{\"include\":\"#support-functions\"},{\"include\":\"#keyword-language\"},{\"include\":\"#values\"},{\"include\":\"#anonymous-classes-and-new\"},{\"include\":\"#keyword-operator\"},{\"include\":\"#types\"},{\"include\":\"#storage-modifiers\"},{\"include\":\"#parens\"},{\"include\":\"#closures\"},{\"include\":\"#braces\"}]},\"keyword\":{\"patterns\":[{\"include\":\"#keyword-operator\"},{\"include\":\"#keyword-language\"}]},\"keyword-language\":{\"patterns\":[{\"match\":\"\\\\b(try|catch|finally|throw)\\\\b\",\"name\":\"keyword.control.exception.groovy\"},{\"match\":\"\\\\b((?<!\\\\.)(?:return|break|continue|default|do|while|for|switch|if|else))\\\\b\",\"name\":\"keyword.control.groovy\"},{\"begin\":\"\\\\bcase\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.control.groovy\"}},\"end\":\":\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.case-terminator.groovy\"}},\"name\":\"meta.case.groovy\",\"patterns\":[{\"include\":\"#groovy-code-minus-map-keys\"}]},{\"begin\":\"\\\\b(assert)\\\\s\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.assert.groovy\"}},\"end\":\"$|[;}]\",\"name\":\"meta.declaration.assertion.groovy\",\"patterns\":[{\"match\":\":\",\"name\":\"keyword.operator.assert.expression-seperator.groovy\"},{\"include\":\"#groovy-code-minus-map-keys\"}]},{\"match\":\"\\\\b(throws)\\\\b\",\"name\":\"keyword.other.throws.groovy\"}]},\"keyword-operator\":{\"patterns\":[{\"match\":\"\\\\b(as)\\\\b\",\"name\":\"keyword.operator.as.groovy\"},{\"match\":\"\\\\b(in)\\\\b\",\"name\":\"keyword.operator.in.groovy\"},{\"match\":\"\\\\?:\",\"name\":\"keyword.operator.elvis.groovy\"},{\"match\":\"\\\\*:\",\"name\":\"keyword.operator.spreadmap.groovy\"},{\"match\":\"\\\\.\\\\.\",\"name\":\"keyword.operator.range.groovy\"},{\"match\":\"->\",\"name\":\"keyword.operator.arrow.groovy\"},{\"match\":\"<<\",\"name\":\"keyword.operator.leftshift.groovy\"},{\"match\":\"(?<=\\\\S)\\\\.(?=\\\\S)\",\"name\":\"keyword.operator.navigation.groovy\"},{\"match\":\"(?<=\\\\S)\\\\?\\\\.(?=\\\\S)\",\"name\":\"keyword.operator.safe-navigation.groovy\"},{\"begin\":\"\\\\?\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.ternary.groovy\"}},\"end\":\"(?=$|[)}\\\\]])\",\"name\":\"meta.evaluation.ternary.groovy\",\"patterns\":[{\"match\":\":\",\"name\":\"keyword.operator.ternary.expression-seperator.groovy\"},{\"include\":\"#groovy-code-minus-map-keys\"}]},{\"match\":\"==~\",\"name\":\"keyword.operator.match.groovy\"},{\"match\":\"=~\",\"name\":\"keyword.operator.find.groovy\"},{\"match\":\"\\\\b(instanceof)\\\\b\",\"name\":\"keyword.operator.instanceof.groovy\"},{\"match\":\"(===|==|!=|<=|>=|<=>|<>|[<>]|<<)\",\"name\":\"keyword.operator.comparison.groovy\"},{\"match\":\"=\",\"name\":\"keyword.operator.assignment.groovy\"},{\"match\":\"(--|\\\\+\\\\+)\",\"name\":\"keyword.operator.increment-decrement.groovy\"},{\"match\":\"([\\\\-+*/%])\",\"name\":\"keyword.operator.arithmetic.groovy\"},{\"match\":\"(!|&&|\\\\|\\\\|)\",\"name\":\"keyword.operator.logical.groovy\"}]},\"language-variables\":{\"patterns\":[{\"match\":\"\\\\b(this|super)\\\\b\",\"name\":\"variable.language.groovy\"}]},\"map-keys\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.other.key.groovy\"},\"2\":{\"name\":\"punctuation.definition.seperator.key-value.groovy\"}},\"match\":\"(\\\\w+)\\\\s*(:)\"}]},\"method-call\":{\"begin\":\"([\\\\w$]+)(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"meta.method.groovy\"},\"2\":{\"name\":\"punctuation.definition.method-parameters.begin.groovy\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.method-parameters.end.groovy\"}},\"name\":\"meta.method-call.groovy\",\"patterns\":[{\"match\":\",\",\"name\":\"punctuation.definition.seperator.parameter.groovy\"},{\"include\":\"#groovy-code\"}]},\"method-content\":{\"patterns\":[{\"match\":\"\\\\s\"},{\"include\":\"#annotations\"},{\"begin\":\"(?=[\\\\w<][^(]*\\\\s+[\\\\w$<]+\\\\s*\\\\()\",\"end\":\"(?=[\\\\w$]+\\\\s*\\\\()\",\"name\":\"meta.method.return-type.java\",\"patterns\":[{\"include\":\"#storage-modifiers\"},{\"include\":\"#types\"}]},{\"begin\":\"([\\\\w$]+)\\\\s*\\\\(\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.java\"}},\"end\":\"\\\\)\",\"name\":\"meta.definition.method.signature.java\",\"patterns\":[{\"begin\":\"(?=[^)])\",\"end\":\"(?=\\\\))\",\"name\":\"meta.method.parameters.groovy\",\"patterns\":[{\"begin\":\"(?=[^,)])\",\"end\":\"(?=[,)])\",\"name\":\"meta.method.parameter.groovy\",\"patterns\":[{\"match\":\",\",\"name\":\"punctuation.definition.separator.groovy\"},{\"begin\":\"=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.assignment.groovy\"}},\"end\":\"(?=[,)])\",\"name\":\"meta.parameter.default.groovy\",\"patterns\":[{\"include\":\"#groovy-code\"}]},{\"include\":\"#parameters\"}]}]}]},{\"begin\":\"(?=<)\",\"end\":\"(?=\\\\s)\",\"name\":\"meta.method.paramerised-type.groovy\",\"patterns\":[{\"begin\":\"<\",\"end\":\">\",\"name\":\"storage.type.parameters.groovy\",\"patterns\":[{\"include\":\"#types\"},{\"match\":\",\",\"name\":\"punctuation.definition.seperator.groovy\"}]}]},{\"begin\":\"throws\",\"beginCaptures\":{\"0\":{\"name\":\"storage.modifier.groovy\"}},\"end\":\"(?=[{;])|^(?=\\\\s*(?:[^{\\\\s]|$))\",\"name\":\"meta.throwables.groovy\",\"patterns\":[{\"include\":\"#object-types\"}]},{\"begin\":\"\\\\{\",\"end\":\"(?=})\",\"name\":\"meta.method.body.java\",\"patterns\":[{\"include\":\"#groovy-code\"}]}]},\"methods\":{\"applyEndPatternLast\":1,\"begin\":\"(?<=;|^|\\\\{)(?=\\\\s*(?:(?:private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)|def|(?:(?:void|boolean|byte|char|short|int|float|long|double)|@?(?:[a-zA-Z]\\\\w*\\\\.)*[A-Z]+\\\\w*)[\\\\[\\\\]]*(?:<.*>)?)\\\\s+([^=]+\\\\s+)?\\\\w+\\\\s*\\\\()\",\"end\":\"}|(?=[^{])\",\"name\":\"meta.definition.method.groovy\",\"patterns\":[{\"include\":\"#method-content\"}]},\"nest_curly\":{\"begin\":\"\\\\{\",\"captures\":{\"0\":{\"name\":\"punctuation.section.scope.groovy\"}},\"end\":\"}\",\"patterns\":[{\"include\":\"#nest_curly\"}]},\"numbers\":{\"patterns\":[{\"match\":\"((0([xX])\\\\h*)|([+\\\\-])?\\\\b(([0-9]+\\\\.?[0-9]*)|(\\\\.[0-9]+))(([eE])([+\\\\-])?[0-9]+)?)([LlFfUuDdg]|UL|ul)?\\\\b\",\"name\":\"constant.numeric.groovy\"}]},\"object-types\":{\"patterns\":[{\"begin\":\"\\\\b((?:[a-z]\\\\w*\\\\.)*(?:[A-Z]+\\\\w*[a-z]+\\\\w*|UR[LI]))<\",\"end\":\"[>[^\\\\w\\\\s,?<\\\\[\\\\]]]\",\"name\":\"storage.type.generic.groovy\",\"patterns\":[{\"include\":\"#object-types\"},{\"begin\":\"<\",\"end\":\"[>[^\\\\w\\\\s,\\\\[\\\\]<]]\",\"name\":\"storage.type.generic.groovy\"}]},{\"begin\":\"\\\\b((?:[a-z]\\\\w*\\\\.)*[A-Z]+\\\\w*[a-z]+\\\\w*)(?=\\\\[)\",\"end\":\"(?=[^\\\\]\\\\s])\",\"name\":\"storage.type.object.array.groovy\",\"patterns\":[{\"begin\":\"\\\\[\",\"end\":\"]\",\"patterns\":[{\"include\":\"#groovy\"}]}]},{\"match\":\"\\\\b(?:[a-zA-Z]\\\\w*\\\\.)*(?:[A-Z]+\\\\w*[a-z]+\\\\w*|UR[LI])\\\\b\",\"name\":\"storage.type.groovy\"}]},\"object-types-inherited\":{\"patterns\":[{\"begin\":\"\\\\b((?:[a-zA-Z]\\\\w*\\\\.)*[A-Z]+\\\\w*[a-z]+\\\\w*)<\",\"end\":\"[>[^\\\\w\\\\s,?<\\\\[\\\\]]]\",\"name\":\"entity.other.inherited-class.groovy\",\"patterns\":[{\"include\":\"#object-types-inherited\"},{\"begin\":\"<\",\"end\":\"[>[^\\\\w\\\\s,\\\\[\\\\]<]]\",\"name\":\"storage.type.generic.groovy\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.operator.dereference.groovy\"}},\"match\":\"\\\\b(?:[a-zA-Z]\\\\w*(\\\\.))*[A-Z]+\\\\w*[a-z]+\\\\w*\\\\b\",\"name\":\"entity.other.inherited-class.groovy\"}]},\"parameters\":{\"patterns\":[{\"include\":\"#annotations\"},{\"include\":\"#storage-modifiers\"},{\"include\":\"#types\"},{\"match\":\"\\\\w+\",\"name\":\"variable.parameter.method.groovy\"}]},\"parens\":{\"begin\":\"\\\\(\",\"end\":\"\\\\)\",\"patterns\":[{\"include\":\"#groovy-code\"}]},\"primitive-arrays\":{\"patterns\":[{\"match\":\"\\\\b(?:void|boolean|byte|char|short|int|float|long|double)(\\\\[])*\\\\b\",\"name\":\"storage.type.primitive.array.groovy\"}]},\"primitive-types\":{\"patterns\":[{\"match\":\"\\\\b(?:void|boolean|byte|char|short|int|float|long|double)\\\\b\",\"name\":\"storage.type.primitive.groovy\"}]},\"regexp\":{\"patterns\":[{\"begin\":\"/(?=[^/]+/([^>]|$))\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.regexp.begin.groovy\"}},\"end\":\"/\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.regexp.end.groovy\"}},\"name\":\"string.regexp.groovy\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.groovy\"}]},{\"begin\":\"~\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.regexp.begin.groovy\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.regexp.end.groovy\"}},\"name\":\"string.regexp.compiled.groovy\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.groovy\"}]}]},\"storage-modifiers\":{\"patterns\":[{\"match\":\"\\\\b(p(?:rivate|rotected|ublic))\\\\b\",\"name\":\"storage.modifier.access-control.groovy\"},{\"match\":\"\\\\b(static)\\\\b\",\"name\":\"storage.modifier.static.groovy\"},{\"match\":\"\\\\b(final)\\\\b\",\"name\":\"storage.modifier.final.groovy\"},{\"match\":\"\\\\b(native|synchronized|abstract|threadsafe|transient)\\\\b\",\"name\":\"storage.modifier.other.groovy\"}]},\"string-quoted-double\":{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.groovy\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.groovy\"}},\"name\":\"string.quoted.double.groovy\",\"patterns\":[{\"include\":\"#string-quoted-double-contents\"}]},\"string-quoted-double-contents\":{\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.groovy\"},{\"applyEndPatternLast\":1,\"begin\":\"\\\\$\\\\w\",\"end\":\"(?=\\\\W)\",\"name\":\"variable.other.interpolated.groovy\",\"patterns\":[{\"match\":\"\\\\w\",\"name\":\"variable.other.interpolated.groovy\"},{\"match\":\"\\\\.\",\"name\":\"keyword.other.dereference.groovy\"}]},{\"begin\":\"\\\\$\\\\{\",\"captures\":{\"0\":{\"name\":\"punctuation.section.embedded.groovy\"}},\"end\":\"}\",\"name\":\"source.groovy.embedded.source\",\"patterns\":[{\"include\":\"#nest_curly\"}]}]},\"string-quoted-double-multiline\":{\"begin\":\"\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.groovy\"}},\"end\":\"\\\"\\\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.groovy\"}},\"name\":\"string.quoted.double.multiline.groovy\",\"patterns\":[{\"include\":\"#string-quoted-double-contents\"}]},\"string-quoted-single\":{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.groovy\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.groovy\"}},\"name\":\"string.quoted.single.groovy\",\"patterns\":[{\"include\":\"#string-quoted-single-contents\"}]},\"string-quoted-single-contents\":{\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.groovy\"}]},\"string-quoted-single-multiline\":{\"begin\":\"'''\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.groovy\"}},\"end\":\"'''\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.groovy\"}},\"name\":\"string.quoted.single.multiline.groovy\",\"patterns\":[{\"include\":\"#string-quoted-single-contents\"}]},\"strings\":{\"patterns\":[{\"include\":\"#string-quoted-double-multiline\"},{\"include\":\"#string-quoted-single-multiline\"},{\"include\":\"#string-quoted-double\"},{\"include\":\"#string-quoted-single\"},{\"include\":\"#regexp\"}]},\"structures\":{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.structure.begin.groovy\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.structure.end.groovy\"}},\"name\":\"meta.structure.groovy\",\"patterns\":[{\"include\":\"#groovy-code\"},{\"match\":\",\",\"name\":\"punctuation.definition.separator.groovy\"}]},\"support-functions\":{\"patterns\":[{\"match\":\"\\\\b(?:sprintf|print(?:f|ln)?)\\\\b\",\"name\":\"support.function.print.groovy\"},{\"match\":\"\\\\b(?:shouldFail|fail(?:NotEquals)?|ass(?:ume|ert(?:S(?:cript|ame)|N(?:ot(?:Same|Null)|ull)|Contains|T(?:hat|oString|rue)|Inspect|Equals|False|Length|ArrayEquals)))\\\\b\",\"name\":\"support.function.testing.groovy\"}]},\"types\":{\"patterns\":[{\"match\":\"\\\\b(def)\\\\b\",\"name\":\"storage.type.def.groovy\"},{\"include\":\"#primitive-types\"},{\"include\":\"#primitive-arrays\"},{\"include\":\"#object-types\"}]},\"values\":{\"patterns\":[{\"include\":\"#language-variables\"},{\"include\":\"#strings\"},{\"include\":\"#numbers\"},{\"include\":\"#constants\"},{\"include\":\"#types\"},{\"include\":\"#structures\"},{\"include\":\"#method-call\"}]},\"variables\":{\"applyEndPatternLast\":1,\"patterns\":[{\"begin\":\"(?=(?:(?:private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)|def|(?:void|boolean|byte|char|short|int|float|long|double)|(?:[a-z]\\\\w*\\\\.)*[A-Z]+\\\\w*)\\\\s+[\\\\w\\\\d_<>\\\\[\\\\],\\\\s]+(?:=|$))\",\"end\":\";|$\",\"name\":\"meta.definition.variable.groovy\",\"patterns\":[{\"match\":\"\\\\s\"},{\"captures\":{\"1\":{\"name\":\"constant.variable.groovy\"}},\"match\":\"([A-Z_0-9]+)\\\\s+(?==)\"},{\"captures\":{\"1\":{\"name\":\"meta.definition.variable.name.groovy\"}},\"match\":\"(\\\\w[^\\\\s,]*)\\\\s+(?==)\"},{\"begin\":\"=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.assignment.groovy\"}},\"end\":\"$\",\"patterns\":[{\"include\":\"#groovy-code\"}]},{\"captures\":{\"1\":{\"name\":\"meta.definition.variable.name.groovy\"}},\"match\":\"(\\\\w[^\\\\s=]*)(?=\\\\s*($|;))\"},{\"include\":\"#groovy-code\"}]}]}},\"scopeName\":\"source.groovy\"}"))
2
2
 
3
3
  export default [
4
4
  lang