@shikijs/langs 3.2.0 → 3.2.2

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 (185) 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-let-declaration.mjs +1 -1
  6. package/dist/angular-template-blocks.mjs +1 -1
  7. package/dist/angular-ts.mjs +1 -1
  8. package/dist/apex.mjs +1 -1
  9. package/dist/apl.mjs +1 -1
  10. package/dist/applescript.mjs +1 -1
  11. package/dist/ara.mjs +1 -1
  12. package/dist/asciidoc.mjs +1 -1
  13. package/dist/asm.mjs +1 -1
  14. package/dist/astro.mjs +1 -1
  15. package/dist/awk.mjs +1 -1
  16. package/dist/ballerina.mjs +1 -1
  17. package/dist/bat.mjs +1 -1
  18. package/dist/beancount.mjs +1 -1
  19. package/dist/berry.mjs +1 -1
  20. package/dist/bibtex.mjs +1 -1
  21. package/dist/bicep.mjs +1 -1
  22. package/dist/blade.mjs +1 -1
  23. package/dist/c.mjs +1 -1
  24. package/dist/cadence.mjs +1 -1
  25. package/dist/cairo.mjs +1 -1
  26. package/dist/clarity.mjs +1 -1
  27. package/dist/clojure.mjs +1 -1
  28. package/dist/cmake.mjs +1 -1
  29. package/dist/cobol.mjs +1 -1
  30. package/dist/coffee.mjs +1 -1
  31. package/dist/common-lisp.mjs +1 -1
  32. package/dist/coq.mjs +1 -1
  33. package/dist/cpp-macro.mjs +1 -1
  34. package/dist/cpp.mjs +1 -1
  35. package/dist/crystal.mjs +1 -1
  36. package/dist/csharp.mjs +1 -1
  37. package/dist/css.mjs +1 -1
  38. package/dist/cue.mjs +1 -1
  39. package/dist/cypher.mjs +1 -1
  40. package/dist/d.mjs +1 -1
  41. package/dist/dart.mjs +1 -1
  42. package/dist/dax.mjs +1 -1
  43. package/dist/desktop.mjs +1 -1
  44. package/dist/dream-maker.mjs +1 -1
  45. package/dist/elixir.mjs +1 -1
  46. package/dist/elm.mjs +1 -1
  47. package/dist/emacs-lisp.mjs +1 -1
  48. package/dist/erb.mjs +1 -1
  49. package/dist/erlang.mjs +1 -1
  50. package/dist/fennel.mjs +1 -1
  51. package/dist/fish.mjs +1 -1
  52. package/dist/fluent.mjs +1 -1
  53. package/dist/fortran-free-form.mjs +1 -1
  54. package/dist/fsharp.mjs +1 -1
  55. package/dist/gdresource.mjs +1 -1
  56. package/dist/gdscript.mjs +1 -1
  57. package/dist/gdshader.mjs +1 -1
  58. package/dist/genie.mjs +1 -1
  59. package/dist/gherkin.mjs +1 -1
  60. package/dist/gleam.mjs +1 -1
  61. package/dist/glimmer-js.mjs +1 -1
  62. package/dist/glimmer-ts.mjs +1 -1
  63. package/dist/gnuplot.mjs +1 -1
  64. package/dist/go.mjs +1 -1
  65. package/dist/graphql.mjs +1 -1
  66. package/dist/groovy.mjs +1 -1
  67. package/dist/hack.mjs +1 -1
  68. package/dist/haml.mjs +1 -1
  69. package/dist/handlebars.mjs +1 -1
  70. package/dist/haskell.mjs +1 -1
  71. package/dist/haxe.mjs +1 -1
  72. package/dist/hcl.mjs +1 -1
  73. package/dist/hjson.mjs +1 -1
  74. package/dist/html-derivative.mjs +1 -1
  75. package/dist/html.mjs +1 -1
  76. package/dist/http.mjs +1 -1
  77. package/dist/hy.mjs +1 -1
  78. package/dist/imba.mjs +1 -1
  79. package/dist/ini.mjs +1 -1
  80. package/dist/java.mjs +1 -1
  81. package/dist/javascript.mjs +1 -1
  82. package/dist/jinja.mjs +1 -1
  83. package/dist/jison.mjs +1 -1
  84. package/dist/json.mjs +1 -1
  85. package/dist/json5.mjs +1 -1
  86. package/dist/jsonc.mjs +1 -1
  87. package/dist/jsonl.mjs +1 -1
  88. package/dist/jsonnet.mjs +1 -1
  89. package/dist/jsx.mjs +1 -1
  90. package/dist/julia.mjs +1 -1
  91. package/dist/kotlin.mjs +1 -1
  92. package/dist/kusto.mjs +1 -1
  93. package/dist/latex.mjs +1 -1
  94. package/dist/lean.mjs +1 -1
  95. package/dist/less.mjs +1 -1
  96. package/dist/liquid.mjs +1 -1
  97. package/dist/llvm.mjs +1 -1
  98. package/dist/log.mjs +1 -1
  99. package/dist/logo.mjs +1 -1
  100. package/dist/lua.mjs +1 -1
  101. package/dist/luau.mjs +1 -1
  102. package/dist/make.mjs +1 -1
  103. package/dist/markdown.mjs +1 -1
  104. package/dist/marko.mjs +1 -1
  105. package/dist/matlab.mjs +1 -1
  106. package/dist/mdc.mjs +1 -1
  107. package/dist/mdx.mjs +1 -1
  108. package/dist/mermaid.mjs +1 -1
  109. package/dist/mojo.mjs +1 -1
  110. package/dist/move.mjs +1 -1
  111. package/dist/narrat.mjs +1 -1
  112. package/dist/nim.mjs +1 -1
  113. package/dist/nix.mjs +1 -1
  114. package/dist/nushell.mjs +1 -1
  115. package/dist/objective-c.mjs +1 -1
  116. package/dist/objective-cpp.mjs +1 -1
  117. package/dist/ocaml.mjs +1 -1
  118. package/dist/pascal.mjs +1 -1
  119. package/dist/perl.mjs +1 -1
  120. package/dist/php.mjs +1 -1
  121. package/dist/plsql.mjs +1 -1
  122. package/dist/polar.mjs +1 -1
  123. package/dist/postcss.mjs +1 -1
  124. package/dist/powerquery.mjs +1 -1
  125. package/dist/powershell.mjs +1 -1
  126. package/dist/prisma.mjs +1 -1
  127. package/dist/prolog.mjs +1 -1
  128. package/dist/proto.mjs +1 -1
  129. package/dist/pug.mjs +1 -1
  130. package/dist/puppet.mjs +1 -1
  131. package/dist/purescript.mjs +1 -1
  132. package/dist/python.mjs +1 -1
  133. package/dist/qss.mjs +1 -1
  134. package/dist/r.mjs +1 -1
  135. package/dist/racket.mjs +1 -1
  136. package/dist/raku.mjs +1 -1
  137. package/dist/rel.mjs +1 -1
  138. package/dist/rst.mjs +1 -1
  139. package/dist/ruby.mjs +1 -1
  140. package/dist/rust.mjs +1 -1
  141. package/dist/sas.mjs +1 -1
  142. package/dist/sass.mjs +1 -1
  143. package/dist/scala.mjs +1 -1
  144. package/dist/scheme.mjs +1 -1
  145. package/dist/scss.mjs +1 -1
  146. package/dist/shellscript.mjs +1 -1
  147. package/dist/solidity.mjs +1 -1
  148. package/dist/sparql.mjs +1 -1
  149. package/dist/sql.mjs +1 -1
  150. package/dist/stata.mjs +1 -1
  151. package/dist/stylus.mjs +1 -1
  152. package/dist/svelte.mjs +1 -1
  153. package/dist/swift.mjs +1 -1
  154. package/dist/system-verilog.mjs +1 -1
  155. package/dist/systemd.mjs +1 -1
  156. package/dist/talonscript.mjs +1 -1
  157. package/dist/tcl.mjs +1 -1
  158. package/dist/templ.mjs +1 -1
  159. package/dist/terraform.mjs +1 -1
  160. package/dist/tex.mjs +1 -1
  161. package/dist/toml.mjs +1 -1
  162. package/dist/tsx.mjs +1 -1
  163. package/dist/turtle.mjs +1 -1
  164. package/dist/twig.mjs +1 -1
  165. package/dist/typescript.mjs +1 -1
  166. package/dist/typespec.mjs +1 -1
  167. package/dist/typst.mjs +1 -1
  168. package/dist/v.mjs +1 -1
  169. package/dist/vala.mjs +1 -1
  170. package/dist/vb.mjs +1 -1
  171. package/dist/vhdl.mjs +1 -1
  172. package/dist/vue-html.mjs +1 -1
  173. package/dist/vue.mjs +1 -1
  174. package/dist/vyper.mjs +1 -1
  175. package/dist/wasm.mjs +1 -1
  176. package/dist/wgsl.mjs +1 -1
  177. package/dist/wikitext.mjs +1 -1
  178. package/dist/wit.mjs +1 -1
  179. package/dist/wolfram.mjs +1 -1
  180. package/dist/xml.mjs +1 -1
  181. package/dist/xsl.mjs +1 -1
  182. package/dist/yaml.mjs +1 -1
  183. package/dist/zenscript.mjs +1 -1
  184. package/dist/zig.mjs +1 -1
  185. package/package.json +3 -3
package/dist/go.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const lang = Object.freeze(JSON.parse("{\"displayName\":\"Go\",\"name\":\"go\",\"patterns\":[{\"include\":\"#statements\"}],\"repository\":{\"after_control_variables\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.go\"}]}},\"match\":\"(?<=\\\\brange\\\\b|\\\\bswitch\\\\b|;|\\\\bif\\\\b|\\\\bfor\\\\b|[<>]|<=|>=|==|!=|\\\\w[+/\\\\-*%]|\\\\w[+/\\\\-*%]=|\\\\|\\\\||&&)\\\\s*((?![\\\\[\\\\]]+)[[:alnum:]\\\\-_!.\\\\[\\\\]<>=*/+%:]+)\\\\s*(?=\\\\{)\"},\"brackets\":{\"patterns\":[{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.curly.go\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.curly.go\"}},\"patterns\":[{\"include\":\"$self\"}]},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"$self\"}]},{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.square.go\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.square.go\"}},\"patterns\":[{\"include\":\"$self\"}]}]},\"built_in_functions\":{\"patterns\":[{\"match\":\"\\\\b(append|cap|close|complex|copy|delete|imag|len|panic|print|println|real|recover|min|max|clear)\\\\b(?=\\\\()\",\"name\":\"entity.name.function.support.builtin.go\"},{\"begin\":\"(\\\\bnew\\\\b)(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.support.builtin.go\"},\"2\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#functions\"},{\"include\":\"#struct_variables_types\"},{\"include\":\"#type-declarations\"},{\"include\":\"#generic_types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"},{\"include\":\"$self\"}]},{\"begin\":\"(\\\\bmake\\\\b)(\\\\()((?:(?:[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+(?:\\\\([^)]+\\\\))?)?[\\\\[\\\\]*]+{0,1}(?:(?!\\\\bmap\\\\b)[\\\\w.]+)?(\\\\[(?:\\\\S+(?:,\\\\s*\\\\S+)*)?])?,?)?\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.support.builtin.go\"},\"2\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"},\"3\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"$self\"}]}]},\"comments\":{\"patterns\":[{\"begin\":\"(/\\\\*)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.comment.go\"}},\"end\":\"(\\\\*/)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.comment.go\"}},\"name\":\"comment.block.go\"},{\"begin\":\"(//)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.comment.go\"}},\"end\":\"(?:\\\\n|$)\",\"name\":\"comment.line.double-slash.go\"}]},\"const_assignment\":{\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#delimiters\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.constant.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#generic_types\"},{\"match\":\"\\\\(\",\"name\":\"punctuation.definition.begin.bracket.round.go\"},{\"match\":\"\\\\)\",\"name\":\"punctuation.definition.end.bracket.round.go\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(?<=\\\\bconst\\\\b)\\\\s*(\\\\b[\\\\w.]+(?:,\\\\s*[\\\\w.]+)*)\\\\s*((?:(?:[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+(?:\\\\([^)]+\\\\))?)?(?![\\\\[\\\\]*]+{0,1}\\\\b(?:struct|func|map)\\\\b)(?:[\\\\w.\\\\[\\\\]*]+(?:,\\\\s*[\\\\w.\\\\[\\\\]*]+)*)?\\\\s*=?)?\"},{\"begin\":\"(?<=\\\\bconst\\\\b)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#delimiters\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.constant.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#generic_types\"},{\"match\":\"\\\\(\",\"name\":\"punctuation.definition.begin.bracket.round.go\"},{\"match\":\"\\\\)\",\"name\":\"punctuation.definition.end.bracket.round.go\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"^\\\\s*(\\\\b[\\\\w.]+(?:,\\\\s*[\\\\w.]+)*)\\\\s*((?:(?:[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+(?:\\\\([^)]+\\\\))?)?(?![\\\\[\\\\]*]+{0,1}\\\\b(?:struct|func|map)\\\\b)(?:[\\\\w.\\\\[\\\\]*]+(?:,\\\\s*[\\\\w.\\\\[\\\\]*]+)*)?\\\\s*=?)?\"},{\"include\":\"$self\"}]}]},\"delimiters\":{\"patterns\":[{\"match\":\",\",\"name\":\"punctuation.other.comma.go\"},{\"match\":\"\\\\.(?!\\\\.\\\\.)\",\"name\":\"punctuation.other.period.go\"},{\"match\":\":(?!=)\",\"name\":\"punctuation.other.colon.go\"}]},\"double_parentheses_types\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"match\":\"\\\\(\",\"name\":\"punctuation.definition.begin.bracket.round.go\"},{\"match\":\"\\\\)\",\"name\":\"punctuation.definition.end.bracket.round.go\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(?<!\\\\w)(\\\\([\\\\w.\\\\[\\\\]*\\\\&]+\\\\))(?=\\\\()\"},\"field_hover\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.property.go\"}]},\"2\":{\"patterns\":[{\"match\":\"\\\\binvalid\\\\b\\\\s+\\\\btype\\\\b\",\"name\":\"invalid.field.go\"},{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(?<=^\\\\bfield\\\\b)\\\\s+([\\\\w*.]+)\\\\s+([\\\\s\\\\S]+)\"},\"function_declaration\":{\"begin\":\"^(\\\\bfunc\\\\b)\\\\s*(\\\\([^)]+\\\\)\\\\s*)?(?:(\\\\w+)(?=[(\\\\[]))?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.function.go\"},\"2\":{\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"variable.parameter.go\"},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(\\\\w+\\\\s+)?([\\\\w.*]+(?:\\\\[(?:[\\\\w.*]+(?:,\\\\s+)?)+{0,1}])?)\"},{\"include\":\"$self\"}]}]},\"3\":{\"patterns\":[{\"match\":\"\\\\d\\\\w*\",\"name\":\"invalid.illegal.identifier.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.function.go\"}]}},\"end\":\"(?<=\\\\))\\\\s*((?:[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}(?![\\\\[\\\\]*]+{0,1}\\\\b(?:struct\\\\b|interface\\\\b))[\\\\w.\\\\-*\\\\[\\\\]]+)?\\\\s*(?=\\\\{)\",\"endCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#function_param_types\"}]},{\"begin\":\"([\\\\w.*]+)?(\\\\[)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"2\":{\"name\":\"punctuation.definition.begin.bracket.square.go\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.square.go\"}},\"patterns\":[{\"include\":\"#generic_param_types\"}]},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(?<=\\\\))\\\\s*((?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}[\\\\w*.\\\\[\\\\]<>\\\\-]+\\\\s*(?:/[/*].*)?)$\"},{\"include\":\"$self\"}]},\"function_param_types\":{\"patterns\":[{\"include\":\"#struct_variables_types\"},{\"include\":\"#interface_variables_types\"},{\"include\":\"#type-declarations-without-brackets\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.parameter.go\"}]}},\"match\":\"((?:\\\\b\\\\w+,\\\\s*)+{0,1}\\\\b\\\\w+)\\\\s+(?=(?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}[\\\\[\\\\]*]+{0,1}\\\\b(?:struct|interface)\\\\b\\\\s*\\\\{)\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.parameter.go\"}]}},\"match\":\"(?:(?<=\\\\()|^\\\\s*)((?:\\\\b\\\\w+,\\\\s*)+(?:/[/*].*)?)$\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#delimiters\"},{\"match\":\"\\\\w+\",\"name\":\"variable.parameter.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"((?:\\\\b\\\\w+,\\\\s*)+{0,1}\\\\b\\\\w+)\\\\s+((?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}(?:[\\\\w\\\\[\\\\].*]+{0,1}(?:\\\\bfunc\\\\b\\\\([^)]+{0,1}\\\\)(?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}\\\\s*)+(?:[\\\\w*.\\\\[\\\\]]+|\\\\([^)]+{0,1}\\\\))?|(?:[\\\\[\\\\]*]+{0,1}[\\\\w*.]+(?:\\\\[[^\\\\]]+])?[\\\\w.*]+{0,1})+))\"},{\"begin\":\"([\\\\w.*]+)?(\\\\[)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"2\":{\"name\":\"punctuation.definition.begin.bracket.square.go\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.square.go\"}},\"patterns\":[{\"include\":\"#generic_param_types\"}]},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#function_param_types\"}]},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"([\\\\w.]+)\"},{\"include\":\"$self\"}]},\"functions\":{\"begin\":\"(\\\\bfunc\\\\b)(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.function.go\"}},\"end\":\"(?<=\\\\))(\\\\s*(?:[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+)?(\\\\s*(?:[\\\\[\\\\]*]+{0,1}[\\\\w.*]+)?(?:\\\\[(?:[\\\\w.*]+{0,1}(?:\\\\[[^\\\\]]+{0,1}])?(?:,\\\\s+)?)+]|\\\\([^)]+{0,1}\\\\))?[\\\\w.*]+{0,1}\\\\s*(?=\\\\{)|\\\\s*(?:[\\\\[\\\\]*]+{0,1}(?!\\\\bfunc\\\\b)[\\\\w.*]+(?:\\\\[(?:[\\\\w.*]+{0,1}(?:\\\\[[^\\\\]]+{0,1}])?(?:,\\\\s+)?)+])?[\\\\w.*]+{0,1}|\\\\([^)]+{0,1}\\\\)))?\",\"endCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"}]},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"patterns\":[{\"include\":\"#parameter-variable-types\"}]},\"functions_inline\":{\"captures\":{\"1\":{\"name\":\"keyword.function.go\"},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#function_param_types\"},{\"include\":\"$self\"}]},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\{\",\"name\":\"punctuation.definition.begin.bracket.curly.go\"},{\"match\":\"}\",\"name\":\"punctuation.definition.end.bracket.curly.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(\\\\bfunc\\\\b)(\\\\([^/]*?\\\\)\\\\s+\\\\([^/]*?\\\\))\\\\s+(?=\\\\{)\"},\"generic_param_types\":{\"patterns\":[{\"include\":\"#struct_variables_types\"},{\"include\":\"#interface_variables_types\"},{\"include\":\"#type-declarations-without-brackets\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.parameter.go\"}]}},\"match\":\"((?:\\\\b\\\\w+,\\\\s*)+{0,1}\\\\b\\\\w+)\\\\s+(?=(?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}[\\\\[\\\\]*]+{0,1}\\\\b(?:struct|interface)\\\\b\\\\s*\\\\{)\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.parameter.go\"}]}},\"match\":\"(?:(?<=\\\\()|^\\\\s*)((?:\\\\b\\\\w+,\\\\s*)+(?:/[/*].*)?)$\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#delimiters\"},{\"match\":\"\\\\w+\",\"name\":\"variable.parameter.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"3\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"((?:\\\\b\\\\w+,\\\\s*)+{0,1}\\\\b\\\\w+)\\\\s+((?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}(?:[\\\\w\\\\[\\\\].*]+{0,1}(?:\\\\bfunc\\\\b\\\\([^)]+{0,1}\\\\)(?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}\\\\s*)+(?:[\\\\w*.]+|\\\\([^)]+{0,1}\\\\))?|(?:(?:[\\\\w*.~]+|\\\\[(?:[\\\\w.*]+{0,1}(?:\\\\[[^\\\\]]+{0,1}])?(?:,\\\\s+)?)+])[\\\\w.*]+{0,1})+))\"},{\"begin\":\"([\\\\w.*]+)?(\\\\[)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"2\":{\"name\":\"punctuation.definition.begin.bracket.square.go\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.square.go\"}},\"patterns\":[{\"include\":\"#generic_param_types\"}]},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#function_param_types\"}]},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"\\\\b([\\\\w.]+)\"},{\"include\":\"$self\"}]},\"generic_types\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#parameter-variable-types\"}]}},\"match\":\"([\\\\w.*]+)(\\\\[[^\\\\]]+{0,1}])\"},\"group-functions\":{\"patterns\":[{\"include\":\"#function_declaration\"},{\"include\":\"#functions_inline\"},{\"include\":\"#functions\"},{\"include\":\"#built_in_functions\"},{\"include\":\"#support_functions\"}]},\"group-types\":{\"patterns\":[{\"include\":\"#other_struct_interface_expressions\"},{\"include\":\"#type_assertion_inline\"},{\"include\":\"#struct_variables_types\"},{\"include\":\"#interface_variables_types\"},{\"include\":\"#single_type\"},{\"include\":\"#multi_types\"},{\"include\":\"#struct_interface_declaration\"},{\"include\":\"#double_parentheses_types\"},{\"include\":\"#switch_types\"},{\"include\":\"#type-declarations\"}]},\"group-variables\":{\"patterns\":[{\"include\":\"#const_assignment\"},{\"include\":\"#var_assignment\"},{\"include\":\"#variable_assignment\"},{\"include\":\"#label_loop_variables\"},{\"include\":\"#slice_index_variables\"},{\"include\":\"#property_variables\"},{\"include\":\"#switch_select_case_variables\"},{\"include\":\"#other_variables\"}]},\"import\":{\"patterns\":[{\"begin\":\"\\\\b(import)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.import.go\"}},\"end\":\"(?!\\\\G)\",\"patterns\":[{\"include\":\"#imports\"}]}]},\"imports\":{\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#delimiters\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.import.go\"}]},\"2\":{\"name\":\"string.quoted.double.go\"},\"3\":{\"name\":\"punctuation.definition.string.begin.go\"},\"4\":{\"name\":\"entity.name.import.go\"},\"5\":{\"name\":\"punctuation.definition.string.end.go\"}},\"match\":\"(\\\\s*[\\\\w.]+)?\\\\s*((\\\")([^\\\"]*)(\\\"))\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.imports.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.imports.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#imports\"}]},{\"include\":\"$self\"}]},\"interface_variables_types\":{\"begin\":\"(\\\\binterface\\\\b)\\\\s*(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.interface.go\"},\"2\":{\"name\":\"punctuation.definition.begin.bracket.curly.go\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.curly.go\"}},\"patterns\":[{\"include\":\"#interface_variables_types_field\"},{\"include\":\"$self\"}]},\"interface_variables_types_field\":{\"patterns\":[{\"include\":\"#support_functions\"},{\"include\":\"#type-declarations-without-brackets\"},{\"begin\":\"([\\\\w.*]+)?(\\\\[)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"2\":{\"name\":\"punctuation.definition.begin.bracket.square.go\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.square.go\"}},\"patterns\":[{\"include\":\"#generic_param_types\"}]},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#function_param_types\"}]},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"([\\\\w.]+)\"}]},\"keywords\":{\"patterns\":[{\"match\":\"\\\\b(break|case|continue|default|defer|else|fallthrough|for|go|goto|if|range|return|select|switch)\\\\b\",\"name\":\"keyword.control.go\"},{\"match\":\"\\\\bchan\\\\b\",\"name\":\"keyword.channel.go\"},{\"match\":\"\\\\bconst\\\\b\",\"name\":\"keyword.const.go\"},{\"match\":\"\\\\bvar\\\\b\",\"name\":\"keyword.var.go\"},{\"match\":\"\\\\bfunc\\\\b\",\"name\":\"keyword.function.go\"},{\"match\":\"\\\\binterface\\\\b\",\"name\":\"keyword.interface.go\"},{\"match\":\"\\\\bmap\\\\b\",\"name\":\"keyword.map.go\"},{\"match\":\"\\\\bstruct\\\\b\",\"name\":\"keyword.struct.go\"},{\"match\":\"\\\\bimport\\\\b\",\"name\":\"keyword.control.import.go\"},{\"match\":\"\\\\btype\\\\b\",\"name\":\"keyword.type.go\"}]},\"label_loop_variables\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.label.go\"}]}},\"match\":\"(^(?:\\\\s*\\\\w+:\\\\s*$|\\\\s*\\\\b(?:break\\\\b|goto\\\\b|continue\\\\b)\\\\s+\\\\w+(?:\\\\s*/[/*]\\\\s*.*)?$))\"},\"language_constants\":{\"captures\":{\"1\":{\"name\":\"constant.language.boolean.go\"},\"2\":{\"name\":\"constant.language.null.go\"},\"3\":{\"name\":\"constant.language.iota.go\"}},\"match\":\"\\\\b(?:(true|false)|(nil)|(iota))\\\\b\"},\"map_types\":{\"begin\":\"(\\\\bmap\\\\b)(\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.map.go\"},\"2\":{\"name\":\"punctuation.definition.begin.bracket.square.go\"}},\"end\":\"(])((?:[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}(?![\\\\[\\\\]*]+{0,1}\\\\b(?:func|struct|map)\\\\b)[*\\\\[\\\\]]+{0,1}[\\\\w.]+(?:\\\\[(?:[\\\\w.*\\\\[\\\\]{}]+(?:,\\\\s*[\\\\w.*\\\\[\\\\]{}]+)*)?])?)?\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.end.bracket.square.go\"},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"include\":\"#functions\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\{\",\"name\":\"punctuation.definition.begin.bracket.curly.go\"},{\"match\":\"}\",\"name\":\"punctuation.definition.end.bracket.curly.go\"},{\"match\":\"\\\\(\",\"name\":\"punctuation.definition.begin.bracket.round.go\"},{\"match\":\"\\\\)\",\"name\":\"punctuation.definition.end.bracket.round.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"multi_types\":{\"begin\":\"(\\\\btype\\\\b)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.type.go\"},\"2\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#struct_variables_types\"},{\"include\":\"#interface_variables_types\"},{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"numeric_literals\":{\"captures\":{\"0\":{\"patterns\":[{\"begin\":\"(?=.)\",\"end\":\"(?:\\\\n|$)\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.numeric.decimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"2\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"3\":{\"name\":\"constant.numeric.decimal.point.go\"},\"4\":{\"name\":\"constant.numeric.decimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"5\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"6\":{\"name\":\"keyword.other.unit.exponent.decimal.go\"},\"7\":{\"name\":\"keyword.operator.plus.exponent.decimal.go\"},\"8\":{\"name\":\"keyword.operator.minus.exponent.decimal.go\"},\"9\":{\"name\":\"constant.numeric.exponent.decimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"10\":{\"name\":\"keyword.other.unit.imaginary.go\"},\"11\":{\"name\":\"constant.numeric.decimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"12\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"13\":{\"name\":\"keyword.other.unit.exponent.decimal.go\"},\"14\":{\"name\":\"keyword.operator.plus.exponent.decimal.go\"},\"15\":{\"name\":\"keyword.operator.minus.exponent.decimal.go\"},\"16\":{\"name\":\"constant.numeric.exponent.decimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"17\":{\"name\":\"keyword.other.unit.imaginary.go\"},\"18\":{\"name\":\"constant.numeric.decimal.point.go\"},\"19\":{\"name\":\"constant.numeric.decimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"20\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"21\":{\"name\":\"keyword.other.unit.exponent.decimal.go\"},\"22\":{\"name\":\"keyword.operator.plus.exponent.decimal.go\"},\"23\":{\"name\":\"keyword.operator.minus.exponent.decimal.go\"},\"24\":{\"name\":\"constant.numeric.exponent.decimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"25\":{\"name\":\"keyword.other.unit.imaginary.go\"},\"26\":{\"name\":\"keyword.other.unit.hexadecimal.go\"},\"27\":{\"name\":\"constant.numeric.hexadecimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"28\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"29\":{\"name\":\"constant.numeric.hexadecimal.go\"},\"30\":{\"name\":\"constant.numeric.hexadecimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"31\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"32\":{\"name\":\"keyword.other.unit.exponent.hexadecimal.go\"},\"33\":{\"name\":\"keyword.operator.plus.exponent.hexadecimal.go\"},\"34\":{\"name\":\"keyword.operator.minus.exponent.hexadecimal.go\"},\"35\":{\"name\":\"constant.numeric.exponent.hexadecimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"36\":{\"name\":\"keyword.other.unit.imaginary.go\"},\"37\":{\"name\":\"keyword.other.unit.hexadecimal.go\"},\"38\":{\"name\":\"constant.numeric.hexadecimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"39\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"40\":{\"name\":\"keyword.other.unit.exponent.hexadecimal.go\"},\"41\":{\"name\":\"keyword.operator.plus.exponent.hexadecimal.go\"},\"42\":{\"name\":\"keyword.operator.minus.exponent.hexadecimal.go\"},\"43\":{\"name\":\"constant.numeric.exponent.hexadecimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"44\":{\"name\":\"keyword.other.unit.imaginary.go\"},\"45\":{\"name\":\"keyword.other.unit.hexadecimal.go\"},\"46\":{\"name\":\"constant.numeric.hexadecimal.go\"},\"47\":{\"name\":\"constant.numeric.hexadecimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"48\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"49\":{\"name\":\"keyword.other.unit.exponent.hexadecimal.go\"},\"50\":{\"name\":\"keyword.operator.plus.exponent.hexadecimal.go\"},\"51\":{\"name\":\"keyword.operator.minus.exponent.hexadecimal.go\"},\"52\":{\"name\":\"constant.numeric.exponent.hexadecimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"53\":{\"name\":\"keyword.other.unit.imaginary.go\"}},\"match\":\"(?:(?:(?:\\\\G(?:(?:(?=[0-9.])(?!0[xXbBoO])([0-9](?:[0-9]|((?<=\\\\h)_(?=\\\\h)))*)((?:(?<=[0-9])\\\\.|\\\\.(?=[0-9])))([0-9](?:[0-9]|((?<=\\\\h)_(?=\\\\h)))*)?(?:(?<!_)([eE])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)_(?=\\\\h))*))?(i(?!\\\\w))?(?:\\\\n|$)|(?=[0-9.])(?!0[xXbBoO])([0-9](?:[0-9]|((?<=\\\\h)_(?=\\\\h)))*)(?<!_)([eE])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)_(?=\\\\h))*)(i(?!\\\\w))?(?:\\\\n|$))|((?:(?<=[0-9])\\\\.|\\\\.(?=[0-9])))([0-9](?:[0-9]|((?<=\\\\h)_(?=\\\\h)))*)(?:(?<!_)([eE])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)_(?=\\\\h))*))?(i(?!\\\\w))?(?:\\\\n|$))|(\\\\G0[xX])_?(\\\\h(?:\\\\h|((?<=\\\\h)_(?=\\\\h)))*)((?:(?<=\\\\h)\\\\.|\\\\.(?=\\\\h)))(\\\\h(?:\\\\h|((?<=\\\\h)_(?=\\\\h)))*)?(?<!_)([pP])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)_(?=\\\\h))*)(i(?!\\\\w))?(?:\\\\n|$))|(\\\\G0[xX])_?(\\\\h(?:\\\\h|((?<=\\\\h)_(?=\\\\h)))*)(?<!_)([pP])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)_(?=\\\\h))*)(i(?!\\\\w))?(?:\\\\n|$))|(\\\\G0[xX])((?:(?<=\\\\h)\\\\.|\\\\.(?=\\\\h)))(\\\\h(?:\\\\h|((?<=\\\\h)_(?=\\\\h)))*)(?<!_)([pP])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)_(?=\\\\h))*)(i(?!\\\\w))?(?:\\\\n|$))\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.decimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"2\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"3\":{\"name\":\"keyword.other.unit.imaginary.go\"},\"4\":{\"name\":\"keyword.other.unit.binary.go\"},\"5\":{\"name\":\"constant.numeric.binary.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"6\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"7\":{\"name\":\"keyword.other.unit.imaginary.go\"},\"8\":{\"name\":\"keyword.other.unit.octal.go\"},\"9\":{\"name\":\"constant.numeric.octal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"10\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"11\":{\"name\":\"keyword.other.unit.imaginary.go\"},\"12\":{\"name\":\"keyword.other.unit.hexadecimal.go\"},\"13\":{\"name\":\"constant.numeric.hexadecimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"14\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"15\":{\"name\":\"keyword.other.unit.imaginary.go\"}},\"match\":\"(?:(?:(?:\\\\G(?=[0-9.])(?!0[xXbBoO])([0-9](?:[0-9]|((?<=\\\\h)_(?=\\\\h)))*)(i(?!\\\\w))?(?:\\\\n|$)|(\\\\G0[bB])_?([01](?:[01]|((?<=\\\\h)_(?=\\\\h)))*)(i(?!\\\\w))?(?:\\\\n|$))|(\\\\G0[oO]?)_?((?:[0-7]|((?<=\\\\h)_(?=\\\\h)))+)(i(?!\\\\w))?(?:\\\\n|$))|(\\\\G0[xX])_?(\\\\h(?:\\\\h|((?<=\\\\h)_(?=\\\\h)))*)(i(?!\\\\w))?(?:\\\\n|$))\"},{\"match\":\"(?:[0-9a-zA-Z_.]|(?<=[eEpP])[+\\\\-])+\",\"name\":\"invalid.illegal.constant.numeric.go\"}]}]}},\"match\":\"(?<!\\\\w)\\\\.?\\\\d(?:[0-9a-zA-Z_.]|(?<=[eEpP])[+\\\\-])*\"},\"operators\":{\"patterns\":[{\"match\":\"([*\\\\&]+)(?!\\\\d)(?=[\\\\w\\\\[\\\\]]|<-)\",\"name\":\"keyword.operator.address.go\"},{\"match\":\"<-\",\"name\":\"keyword.operator.channel.go\"},{\"match\":\"--\",\"name\":\"keyword.operator.decrement.go\"},{\"match\":\"\\\\+\\\\+\",\"name\":\"keyword.operator.increment.go\"},{\"match\":\"(==|!=|<=|>=|<(?!<)|>(?!>))\",\"name\":\"keyword.operator.comparison.go\"},{\"match\":\"(&&|\\\\|\\\\||!)\",\"name\":\"keyword.operator.logical.go\"},{\"match\":\"(=|\\\\+=|-=|\\\\|=|\\\\^=|\\\\*=|/=|:=|%=|<<=|>>=|&\\\\^=|&=)\",\"name\":\"keyword.operator.assignment.go\"},{\"match\":\"([+\\\\-*/%])\",\"name\":\"keyword.operator.arithmetic.go\"},{\"match\":\"(&(?!\\\\^)|[|\\\\^]|&\\\\^|<<|>>|~)\",\"name\":\"keyword.operator.arithmetic.bitwise.go\"},{\"match\":\"\\\\.\\\\.\\\\.\",\"name\":\"keyword.operator.ellipsis.go\"}]},\"other_struct_interface_expressions\":{\"patterns\":[{\"include\":\"#after_control_variables\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"2\":{\"patterns\":[{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.square.go\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.square.go\"}},\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"},{\"include\":\"$self\"}]}]}},\"match\":\"(\\\\b[\\\\w.]+)(\\\\[[^\\\\]]+{0,1}])?(?=\\\\{)(?<!\\\\b(?:struct\\\\b|interface\\\\b))\"}]},\"other_variables\":{\"match\":\"\\\\w+\",\"name\":\"variable.other.go\"},\"package_name\":{\"patterns\":[{\"begin\":\"\\\\b(package)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.package.go\"}},\"end\":\"(?!\\\\G)\",\"patterns\":[{\"match\":\"\\\\d\\\\w*\",\"name\":\"invalid.illegal.identifier.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.package.go\"}]}]},\"parameter-variable-types\":{\"patterns\":[{\"match\":\"\\\\{\",\"name\":\"punctuation.definition.begin.bracket.curly.go\"},{\"match\":\"}\",\"name\":\"punctuation.definition.end.bracket.curly.go\"},{\"begin\":\"([\\\\w.*]+)?(\\\\[)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"2\":{\"name\":\"punctuation.definition.begin.bracket.square.go\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.square.go\"}},\"patterns\":[{\"include\":\"#generic_param_types\"}]},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#function_param_types\"}]}]},\"property_variables\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.property.go\"}]}},\"match\":\"(\\\\b[\\\\w.]+:(?!=))\"},\"raw_string_literals\":{\"begin\":\"`\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.go\"}},\"end\":\"`\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.go\"}},\"name\":\"string.quoted.raw.go\",\"patterns\":[{\"include\":\"#string_placeholder\"}]},\"runes\":{\"patterns\":[{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.go\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.go\"}},\"name\":\"string.quoted.rune.go\",\"patterns\":[{\"match\":\"\\\\G(\\\\\\\\([0-7]{3}|[abfnrtv\\\\\\\\'\\\"]|x\\\\h{2}|u\\\\h{4}|U\\\\h{8})|.)(?=')\",\"name\":\"constant.other.rune.go\"},{\"match\":\"[^']+\",\"name\":\"invalid.illegal.unknown-rune.go\"}]}]},\"single_type\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.type.go\"},\"2\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"3\":{\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#function_param_types\"},{\"include\":\"$self\"}]},{\"include\":\"#type-declarations\"},{\"include\":\"#generic_types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"^\\\\s*(\\\\btype\\\\b)\\\\s*([\\\\w.*]+)\\\\s+(?!(?:=\\\\s*)?[\\\\[\\\\]*]+{0,1}\\\\b(?:struct|interface)\\\\b)([\\\\s\\\\S]+)\"},{\"begin\":\"(?:^|\\\\s+)(\\\\btype\\\\b)\\\\s*([\\\\w.*]+)(?=\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.type.go\"},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"end\":\"(?<=])(\\\\s+(?:=\\\\s*)?(?:[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}(?![\\\\[\\\\]*]+{0,1}\\\\b(?:struct\\\\b|interface\\\\b|func\\\\b))[\\\\w.\\\\-*\\\\[\\\\]]+(?:,\\\\s*[\\\\w.\\\\[\\\\]*]+)*)?\",\"endCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"patterns\":[{\"include\":\"#struct_variables_types\"},{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\{\",\"name\":\"punctuation.definition.begin.bracket.curly.go\"},{\"match\":\"}\",\"name\":\"punctuation.definition.end.bracket.curly.go\"},{\"match\":\"\\\\(\",\"name\":\"punctuation.definition.begin.bracket.round.go\"},{\"match\":\"\\\\)\",\"name\":\"punctuation.definition.end.bracket.round.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}]},\"slice_index_variables\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.go\"}]}},\"match\":\"(?<=\\\\w\\\\[)((?:\\\\b[\\\\w.*+/\\\\-%<>|\\\\&]+:|:\\\\b[\\\\w.*+/\\\\-%<>|\\\\&]+)(?:\\\\b[\\\\w.*+/\\\\-%<>|\\\\&]+)?(?::\\\\b[\\\\w.*+/\\\\-%<>|\\\\&]+)?)(?=])\"},\"statements\":{\"patterns\":[{\"include\":\"#package_name\"},{\"include\":\"#import\"},{\"include\":\"#syntax_errors\"},{\"include\":\"#group-functions\"},{\"include\":\"#group-types\"},{\"include\":\"#group-variables\"},{\"include\":\"#field_hover\"}]},\"storage_types\":{\"patterns\":[{\"match\":\"\\\\bbool\\\\b\",\"name\":\"storage.type.boolean.go\"},{\"match\":\"\\\\bbyte\\\\b\",\"name\":\"storage.type.byte.go\"},{\"match\":\"\\\\berror\\\\b\",\"name\":\"storage.type.error.go\"},{\"match\":\"\\\\b(complex(64|128)|float(32|64)|u?int(8|16|32|64)?)\\\\b\",\"name\":\"storage.type.numeric.go\"},{\"match\":\"\\\\brune\\\\b\",\"name\":\"storage.type.rune.go\"},{\"match\":\"\\\\bstring\\\\b\",\"name\":\"storage.type.string.go\"},{\"match\":\"\\\\buintptr\\\\b\",\"name\":\"storage.type.uintptr.go\"},{\"match\":\"\\\\bany\\\\b\",\"name\":\"entity.name.type.any.go\"}]},\"string_escaped_char\":{\"patterns\":[{\"match\":\"\\\\\\\\([0-7]{3}|[abfnrtv\\\\\\\\'\\\"]|x\\\\h{2}|u\\\\h{4}|U\\\\h{8})\",\"name\":\"constant.character.escape.go\"},{\"match\":\"\\\\\\\\[^0-7xuUabfnrtv'\\\"]\",\"name\":\"invalid.illegal.unknown-escape.go\"}]},\"string_literals\":{\"patterns\":[{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.go\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.go\"}},\"name\":\"string.quoted.double.go\",\"patterns\":[{\"include\":\"#string_escaped_char\"},{\"include\":\"#string_placeholder\"}]}]},\"string_placeholder\":{\"patterns\":[{\"match\":\"%(\\\\[\\\\d+])?([+#\\\\-0 ]{0,2}((\\\\d+|\\\\*)?(\\\\.?(\\\\d+|\\\\*|(\\\\[\\\\d+])\\\\*?)?(\\\\[\\\\d+])?)?))?[vT%tbcdoqxXUeEfFgGspw]\",\"name\":\"constant.other.placeholder.go\"}]},\"struct_interface_declaration\":{\"captures\":{\"1\":{\"name\":\"keyword.type.go\"},\"2\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"^\\\\s*(\\\\btype\\\\b)\\\\s*([\\\\w.]+)\"},\"struct_variable_types_fields_multi\":{\"patterns\":[{\"begin\":\"(\\\\w+(?:,\\\\s*\\\\w+)*(?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}\\\\s+[\\\\[\\\\]*]+{0,1})(\\\\bstruct\\\\b)\\\\s*(\\\\{)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.property.go\"}]},\"2\":{\"name\":\"keyword.struct.go\"},\"3\":{\"name\":\"punctuation.definition.begin.bracket.curly.go\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.curly.go\"}},\"patterns\":[{\"include\":\"#struct_variables_types_fields\"},{\"include\":\"$self\"}]},{\"begin\":\"(\\\\w+(?:,\\\\s*\\\\w+)*(?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}\\\\s+[\\\\[\\\\]*]+{0,1})(\\\\binterface\\\\b)\\\\s*(\\\\{)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.property.go\"}]},\"2\":{\"name\":\"keyword.interface.go\"},\"3\":{\"name\":\"punctuation.definition.begin.bracket.curly.go\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.curly.go\"}},\"patterns\":[{\"include\":\"#interface_variables_types_field\"},{\"include\":\"$self\"}]},{\"begin\":\"(\\\\w+(?:,\\\\s*\\\\w+)*(?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}\\\\s+[\\\\[\\\\]*]+{0,1})(\\\\bfunc\\\\b)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.property.go\"}]},\"2\":{\"name\":\"keyword.function.go\"},\"3\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#function_param_types\"},{\"include\":\"$self\"}]},{\"include\":\"#parameter-variable-types\"}]},\"struct_variables_types\":{\"begin\":\"(\\\\bstruct\\\\b)\\\\s*(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.struct.go\"},\"2\":{\"name\":\"punctuation.definition.begin.bracket.curly.go\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.curly.go\"}},\"patterns\":[{\"include\":\"#struct_variables_types_fields\"},{\"include\":\"$self\"}]},\"struct_variables_types_fields\":{\"patterns\":[{\"include\":\"#struct_variable_types_fields_multi\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(?<=\\\\{)\\\\s*((?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}[\\\\w.*\\\\[\\\\]]+)\\\\s*(?=})\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.property.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(?<=\\\\{)\\\\s*((?:\\\\w+,\\\\s*)+{0,1}\\\\w+\\\\s+)((?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}[\\\\w.*\\\\[\\\\]]+)\\\\s*(?=})\"},{\"captures\":{\"1\":{\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.property.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"((?:\\\\w+,\\\\s*)+{0,1}\\\\w+\\\\s+)?((?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}\\\\S+;?)\"}]}},\"match\":\"(?<=\\\\{)((?:\\\\s*(?:(?:\\\\w+,\\\\s*)+{0,1}\\\\w+\\\\s+)?(?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}\\\\S+;?)+)\\\\s*(?=})\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"((?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}[\\\\w.*]+\\\\s*)(?:(?=[`/\\\"])|$)\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.property.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"((?:\\\\w+,\\\\s*)+{0,1}\\\\w+\\\\s+)([^`\\\"/]+)\"}]},\"support_functions\":{\"captures\":{\"1\":{\"name\":\"entity.name.function.support.go\"},\"2\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\d\\\\w*\",\"name\":\"invalid.illegal.identifier.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.function.support.go\"}]},\"3\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\{\",\"name\":\"punctuation.definition.begin.bracket.curly.go\"},{\"match\":\"}\",\"name\":\"punctuation.definition.end.bracket.curly.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(?:((?<=\\\\.)\\\\b\\\\w+)|(\\\\b\\\\w+))(\\\\[(?:[\\\\w.*\\\\[\\\\]{}\\\"']+(?:,\\\\s*[\\\\w.*\\\\[\\\\]{}]+)*)?])?(?=\\\\()\"},\"switch_select_case_variables\":{\"captures\":{\"1\":{\"name\":\"keyword.control.go\"},\"2\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"include\":\"#support_functions\"},{\"include\":\"#variable_assignment\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.go\"}]}},\"match\":\"^\\\\s*(\\\\bcase\\\\b)\\\\s+([\\\\s\\\\S]+:\\\\s*(?:/[/*].*)?)$\"},\"switch_types\":{\"begin\":\"(?<=\\\\bswitch\\\\b)\\\\s*(\\\\w+\\\\s*:=)?\\\\s*([\\\\w.*()\\\\[\\\\]+/\\\\-%<>|\\\\&]+)(\\\\.\\\\(\\\\btype\\\\b\\\\)\\\\s*)(\\\\{)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#operators\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.assignment.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#support_functions\"},{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.go\"}]},\"3\":{\"patterns\":[{\"include\":\"#delimiters\"},{\"include\":\"#brackets\"},{\"match\":\"\\\\btype\\\\b\",\"name\":\"keyword.type.go\"}]},\"4\":{\"name\":\"punctuation.definition.begin.bracket.curly.go\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.curly.go\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.go\"},\"2\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"3\":{\"name\":\"punctuation.other.colon.go\"},\"4\":{\"patterns\":[{\"include\":\"#comments\"}]}},\"match\":\"^\\\\s*(\\\\bcase\\\\b)\\\\s+([\\\\w.,*=<>!\\\\s]+)(:)(\\\\s*/[/*]\\\\s*.*)?$\"},{\"begin\":\"\\\\bcase\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.control.go\"}},\"end\":\":\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.other.colon.go\"}},\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},{\"include\":\"$self\"}]},\"syntax_errors\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"invalid.illegal.slice.go\"}},\"match\":\"\\\\[](\\\\s+)\"},{\"match\":\"\\\\b0[0-7]*[89]\\\\d*\\\\b\",\"name\":\"invalid.illegal.numeric.go\"}]},\"terminators\":{\"match\":\";\",\"name\":\"punctuation.terminator.go\"},\"type-declarations\":{\"patterns\":[{\"include\":\"#language_constants\"},{\"include\":\"#comments\"},{\"include\":\"#map_types\"},{\"include\":\"#brackets\"},{\"include\":\"#delimiters\"},{\"include\":\"#keywords\"},{\"include\":\"#operators\"},{\"include\":\"#runes\"},{\"include\":\"#storage_types\"},{\"include\":\"#raw_string_literals\"},{\"include\":\"#string_literals\"},{\"include\":\"#numeric_literals\"},{\"include\":\"#terminators\"}]},\"type-declarations-without-brackets\":{\"patterns\":[{\"include\":\"#language_constants\"},{\"include\":\"#comments\"},{\"include\":\"#map_types\"},{\"include\":\"#delimiters\"},{\"include\":\"#keywords\"},{\"include\":\"#operators\"},{\"include\":\"#runes\"},{\"include\":\"#storage_types\"},{\"include\":\"#raw_string_literals\"},{\"include\":\"#string_literals\"},{\"include\":\"#numeric_literals\"},{\"include\":\"#terminators\"}]},\"type_assertion_inline\":{\"captures\":{\"1\":{\"name\":\"keyword.type.go\"},\"2\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(?<=\\\\.\\\\()(?:(\\\\btype\\\\b)|((?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}[\\\\w.\\\\[\\\\]*]+))(?=\\\\))\"},\"var_assignment\":{\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#delimiters\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.assignment.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#generic_types\"},{\"match\":\"\\\\(\",\"name\":\"punctuation.definition.begin.bracket.round.go\"},{\"match\":\"\\\\)\",\"name\":\"punctuation.definition.end.bracket.round.go\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(?<=\\\\bvar\\\\b)\\\\s*(\\\\b[\\\\w.]+(?:,\\\\s*[\\\\w.]+)*)\\\\s*((?:(?:[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+(?:\\\\([^)]+\\\\))?)?(?![\\\\[\\\\]*]+{0,1}\\\\b(?:struct|func|map)\\\\b)(?:[\\\\w.\\\\[\\\\]*]+(?:,\\\\s*[\\\\w.\\\\[\\\\]*]+)*)?\\\\s*=?)?\"},{\"begin\":\"(?<=\\\\bvar\\\\b)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#delimiters\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.assignment.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#generic_types\"},{\"match\":\"\\\\(\",\"name\":\"punctuation.definition.begin.bracket.round.go\"},{\"match\":\"\\\\)\",\"name\":\"punctuation.definition.end.bracket.round.go\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"^\\\\s*(\\\\b[\\\\w.]+(?:,\\\\s*[\\\\w.]+)*)\\\\s*((?:(?:[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+(?:\\\\([^)]+\\\\))?)?(?![\\\\[\\\\]*]+{0,1}\\\\b(?:struct|func|map)\\\\b)(?:[\\\\w.\\\\[\\\\]*]+(?:,\\\\s*[\\\\w.\\\\[\\\\]*]+)*)?\\\\s*=?)?\"},{\"include\":\"$self\"}]}]},\"variable_assignment\":{\"patterns\":[{\"captures\":{\"0\":{\"patterns\":[{\"include\":\"#delimiters\"},{\"match\":\"\\\\d\\\\w*\",\"name\":\"invalid.illegal.identifier.go\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.assignment.go\"}]}},\"match\":\"\\\\b\\\\w+(?:,\\\\s*\\\\w+)*(?=\\\\s*:=)\"},{\"captures\":{\"0\":{\"patterns\":[{\"include\":\"#delimiters\"},{\"include\":\"#operators\"},{\"match\":\"\\\\d\\\\w*\",\"name\":\"invalid.illegal.identifier.go\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.assignment.go\"}]}},\"match\":\"\\\\b[\\\\w.*]+(?:,\\\\s*[\\\\w.*]+)*(?=\\\\s*=(?!=))\"}]}},\"scopeName\":\"source.go\"}"))
1
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"Go\",\"name\":\"go\",\"patterns\":[{\"include\":\"#statements\"}],\"repository\":{\"after_control_variables\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.go\"}]}},\"match\":\"(?<=\\\\brange\\\\b|\\\\bswitch\\\\b|;|\\\\bif\\\\b|\\\\bfor\\\\b|[<>]|<=|>=|==|!=|\\\\w[+/\\\\-*%]|\\\\w[+/\\\\-*%]=|\\\\|\\\\||&&)\\\\s*((?![\\\\[\\\\]]+)[[:alnum:]\\\\-_!.\\\\[\\\\]<>=*/+%:]+)\\\\s*(?=\\\\{)\"},\"brackets\":{\"patterns\":[{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.curly.go\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.curly.go\"}},\"patterns\":[{\"include\":\"$self\"}]},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"$self\"}]},{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.square.go\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.square.go\"}},\"patterns\":[{\"include\":\"$self\"}]}]},\"built_in_functions\":{\"patterns\":[{\"match\":\"\\\\b(append|cap|close|complex|copy|delete|imag|len|panic|print|println|real|recover|min|max|clear)\\\\b(?=\\\\()\",\"name\":\"entity.name.function.support.builtin.go\"},{\"begin\":\"(\\\\bnew\\\\b)(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.support.builtin.go\"},\"2\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#functions\"},{\"include\":\"#struct_variables_types\"},{\"include\":\"#type-declarations\"},{\"include\":\"#generic_types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"},{\"include\":\"$self\"}]},{\"begin\":\"(\\\\bmake\\\\b)(\\\\()((?:(?:[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+(?:\\\\([^)]+\\\\))?)?[\\\\[\\\\]*]+{0,1}(?:(?!\\\\bmap\\\\b)[\\\\w.]+)?(\\\\[(?:\\\\S+(?:,\\\\s*\\\\S+)*)?])?,?)?\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.support.builtin.go\"},\"2\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"},\"3\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"$self\"}]}]},\"comments\":{\"patterns\":[{\"begin\":\"(/\\\\*)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.comment.go\"}},\"end\":\"(\\\\*/)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.comment.go\"}},\"name\":\"comment.block.go\"},{\"begin\":\"(//)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.comment.go\"}},\"end\":\"(?:\\\\n|$)\",\"name\":\"comment.line.double-slash.go\"}]},\"const_assignment\":{\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#delimiters\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.constant.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#generic_types\"},{\"match\":\"\\\\(\",\"name\":\"punctuation.definition.begin.bracket.round.go\"},{\"match\":\"\\\\)\",\"name\":\"punctuation.definition.end.bracket.round.go\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(?<=\\\\bconst\\\\b)\\\\s*(\\\\b[\\\\w.]+(?:,\\\\s*[\\\\w.]+)*)\\\\s*((?:(?:[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+(?:\\\\([^)]+\\\\))?)?(?![\\\\[\\\\]*]+{0,1}\\\\b(?:struct|func|map)\\\\b)(?:[\\\\w.\\\\[\\\\]*]+(?:,\\\\s*[\\\\w.\\\\[\\\\]*]+)*)?\\\\s*=?)?\"},{\"begin\":\"(?<=\\\\bconst\\\\b)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#delimiters\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.constant.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#generic_types\"},{\"match\":\"\\\\(\",\"name\":\"punctuation.definition.begin.bracket.round.go\"},{\"match\":\"\\\\)\",\"name\":\"punctuation.definition.end.bracket.round.go\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"^\\\\s*(\\\\b[\\\\w.]+(?:,\\\\s*[\\\\w.]+)*)\\\\s*((?:(?:[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+(?:\\\\([^)]+\\\\))?)?(?![\\\\[\\\\]*]+{0,1}\\\\b(?:struct|func|map)\\\\b)(?:[\\\\w.\\\\[\\\\]*]+(?:,\\\\s*[\\\\w.\\\\[\\\\]*]+)*)?\\\\s*=?)?\"},{\"include\":\"$self\"}]}]},\"delimiters\":{\"patterns\":[{\"match\":\",\",\"name\":\"punctuation.other.comma.go\"},{\"match\":\"\\\\.(?!\\\\.\\\\.)\",\"name\":\"punctuation.other.period.go\"},{\"match\":\":(?!=)\",\"name\":\"punctuation.other.colon.go\"}]},\"double_parentheses_types\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"match\":\"\\\\(\",\"name\":\"punctuation.definition.begin.bracket.round.go\"},{\"match\":\"\\\\)\",\"name\":\"punctuation.definition.end.bracket.round.go\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\{\",\"name\":\"punctuation.definition.begin.bracket.curly.go\"},{\"match\":\"}\",\"name\":\"punctuation.definition.end.bracket.curly.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(?<!\\\\w)(\\\\([\\\\[\\\\]*]+{0,1}[\\\\w.]+(?:\\\\[(?:[\\\\w.*\\\\[\\\\]{}]+(?:,\\\\s*[\\\\w.*\\\\[\\\\]{}]+)*)?])?\\\\))(?=\\\\()\"},\"field_hover\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.property.go\"}]},\"2\":{\"patterns\":[{\"match\":\"\\\\binvalid\\\\b\\\\s+\\\\btype\\\\b\",\"name\":\"invalid.field.go\"},{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(?<=^\\\\bfield\\\\b)\\\\s+([\\\\w*.]+)\\\\s+([\\\\s\\\\S]+)\"},\"function_declaration\":{\"begin\":\"^(\\\\bfunc\\\\b)\\\\s*(\\\\([^)]+\\\\)\\\\s*)?(?:(\\\\w+)(?=[(\\\\[]))?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.function.go\"},\"2\":{\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"variable.parameter.go\"},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(\\\\w+\\\\s+)?([\\\\w.*]+(?:\\\\[(?:[\\\\w.*]+(?:,\\\\s+)?)+{0,1}])?)\"},{\"include\":\"$self\"}]}]},\"3\":{\"patterns\":[{\"match\":\"\\\\d\\\\w*\",\"name\":\"invalid.illegal.identifier.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.function.go\"}]}},\"end\":\"(?<=\\\\))\\\\s*((?:[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}(?![\\\\[\\\\]*]+{0,1}\\\\b(?:struct\\\\b|interface\\\\b))[\\\\w.\\\\-*\\\\[\\\\]]+)?\\\\s*(?=\\\\{)\",\"endCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#function_param_types\"}]},{\"begin\":\"([\\\\w.*]+)?(\\\\[)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"2\":{\"name\":\"punctuation.definition.begin.bracket.square.go\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.square.go\"}},\"patterns\":[{\"include\":\"#generic_param_types\"}]},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(?<=\\\\))\\\\s*((?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}[\\\\w*.\\\\[\\\\]<>-]+\\\\s*(?:/[/*].*)?)$\"},{\"include\":\"$self\"}]},\"function_param_types\":{\"patterns\":[{\"include\":\"#struct_variables_types\"},{\"include\":\"#interface_variables_types\"},{\"include\":\"#type-declarations-without-brackets\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.parameter.go\"}]}},\"match\":\"((?:\\\\b\\\\w+,\\\\s*)+{0,1}\\\\b\\\\w+)\\\\s+(?=(?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}[\\\\[\\\\]*]+{0,1}\\\\b(?:struct|interface)\\\\b\\\\s*\\\\{)\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.parameter.go\"}]}},\"match\":\"(?:(?<=\\\\()|^\\\\s*)((?:\\\\b\\\\w+,\\\\s*)+(?:/[/*].*)?)$\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#delimiters\"},{\"match\":\"\\\\w+\",\"name\":\"variable.parameter.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"((?:\\\\b\\\\w+,\\\\s*)+{0,1}\\\\b\\\\w+)\\\\s+((?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}(?:[\\\\w\\\\[\\\\].*]+{0,1}(?:\\\\bfunc\\\\b\\\\([^)]+{0,1}\\\\)(?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}\\\\s*)+(?:[\\\\w*.\\\\[\\\\]]+|\\\\([^)]+{0,1}\\\\))?|(?:[\\\\[\\\\]*]+{0,1}[\\\\w*.]+(?:\\\\[[^\\\\]]+])?[\\\\w.*]+{0,1})+))\"},{\"begin\":\"([\\\\w.*]+)?(\\\\[)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"2\":{\"name\":\"punctuation.definition.begin.bracket.square.go\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.square.go\"}},\"patterns\":[{\"include\":\"#generic_param_types\"}]},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#function_param_types\"}]},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"([\\\\w.]+)\"},{\"include\":\"$self\"}]},\"functions\":{\"begin\":\"(\\\\bfunc\\\\b)(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.function.go\"}},\"end\":\"(?<=\\\\))(\\\\s*(?:[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+)?(\\\\s*(?:[\\\\[\\\\]*]+{0,1}[\\\\w.*]+)?(?:\\\\[(?:[\\\\w.*]+{0,1}(?:\\\\[[^\\\\]]+{0,1}])?(?:,\\\\s+)?)+]|\\\\([^)]+{0,1}\\\\))?[\\\\w.*]+{0,1}\\\\s*(?=\\\\{)|\\\\s*(?:[\\\\[\\\\]*]+{0,1}(?!\\\\bfunc\\\\b)[\\\\w.*]+(?:\\\\[(?:[\\\\w.*]+{0,1}(?:\\\\[[^\\\\]]+{0,1}])?(?:,\\\\s+)?)+])?[\\\\w.*]+{0,1}|\\\\([^)]+{0,1}\\\\)))?\",\"endCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"}]},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"patterns\":[{\"include\":\"#parameter-variable-types\"}]},\"functions_inline\":{\"captures\":{\"1\":{\"name\":\"keyword.function.go\"},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#function_param_types\"},{\"include\":\"$self\"}]},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\{\",\"name\":\"punctuation.definition.begin.bracket.curly.go\"},{\"match\":\"}\",\"name\":\"punctuation.definition.end.bracket.curly.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(\\\\bfunc\\\\b)(\\\\([^/]*?\\\\)\\\\s+\\\\([^/]*?\\\\))\\\\s+(?=\\\\{)\"},\"generic_param_types\":{\"patterns\":[{\"include\":\"#struct_variables_types\"},{\"include\":\"#interface_variables_types\"},{\"include\":\"#type-declarations-without-brackets\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.parameter.go\"}]}},\"match\":\"((?:\\\\b\\\\w+,\\\\s*)+{0,1}\\\\b\\\\w+)\\\\s+(?=(?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}[\\\\[\\\\]*]+{0,1}\\\\b(?:struct|interface)\\\\b\\\\s*\\\\{)\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.parameter.go\"}]}},\"match\":\"(?:(?<=\\\\()|^\\\\s*)((?:\\\\b\\\\w+,\\\\s*)+(?:/[/*].*)?)$\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#delimiters\"},{\"match\":\"\\\\w+\",\"name\":\"variable.parameter.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"3\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"((?:\\\\b\\\\w+,\\\\s*)+{0,1}\\\\b\\\\w+)\\\\s+((?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}(?:[\\\\w\\\\[\\\\].*]+{0,1}(?:\\\\bfunc\\\\b\\\\([^)]+{0,1}\\\\)(?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}\\\\s*)+(?:[\\\\w*.]+|\\\\([^)]+{0,1}\\\\))?|(?:(?:[\\\\w*.~]+|\\\\[(?:[\\\\w.*]+{0,1}(?:\\\\[[^\\\\]]+{0,1}])?(?:,\\\\s+)?)+])[\\\\w.*]+{0,1})+))\"},{\"begin\":\"([\\\\w.*]+)?(\\\\[)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"2\":{\"name\":\"punctuation.definition.begin.bracket.square.go\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.square.go\"}},\"patterns\":[{\"include\":\"#generic_param_types\"}]},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#function_param_types\"}]},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"\\\\b([\\\\w.]+)\"},{\"include\":\"$self\"}]},\"generic_types\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#parameter-variable-types\"}]}},\"match\":\"([\\\\w.*]+)(\\\\[[^\\\\]]+{0,1}])\"},\"group-functions\":{\"patterns\":[{\"include\":\"#function_declaration\"},{\"include\":\"#functions_inline\"},{\"include\":\"#functions\"},{\"include\":\"#built_in_functions\"},{\"include\":\"#support_functions\"}]},\"group-types\":{\"patterns\":[{\"include\":\"#other_struct_interface_expressions\"},{\"include\":\"#type_assertion_inline\"},{\"include\":\"#struct_variables_types\"},{\"include\":\"#interface_variables_types\"},{\"include\":\"#single_type\"},{\"include\":\"#multi_types\"},{\"include\":\"#struct_interface_declaration\"},{\"include\":\"#double_parentheses_types\"},{\"include\":\"#switch_types\"},{\"include\":\"#type-declarations\"}]},\"group-variables\":{\"patterns\":[{\"include\":\"#const_assignment\"},{\"include\":\"#var_assignment\"},{\"include\":\"#variable_assignment\"},{\"include\":\"#label_loop_variables\"},{\"include\":\"#slice_index_variables\"},{\"include\":\"#property_variables\"},{\"include\":\"#switch_select_case_variables\"},{\"include\":\"#other_variables\"}]},\"import\":{\"patterns\":[{\"begin\":\"\\\\b(import)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.import.go\"}},\"end\":\"(?!\\\\G)\",\"patterns\":[{\"include\":\"#imports\"}]}]},\"imports\":{\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#delimiters\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.import.go\"}]},\"2\":{\"name\":\"string.quoted.double.go\"},\"3\":{\"name\":\"punctuation.definition.string.begin.go\"},\"4\":{\"name\":\"entity.name.import.go\"},\"5\":{\"name\":\"punctuation.definition.string.end.go\"}},\"match\":\"(\\\\s*[\\\\w.]+)?\\\\s*((\\\")([^\\\"]*)(\\\"))\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.imports.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.imports.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#imports\"}]},{\"include\":\"$self\"}]},\"interface_variables_types\":{\"begin\":\"(\\\\binterface\\\\b)\\\\s*(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.interface.go\"},\"2\":{\"name\":\"punctuation.definition.begin.bracket.curly.go\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.curly.go\"}},\"patterns\":[{\"include\":\"#interface_variables_types_field\"},{\"include\":\"$self\"}]},\"interface_variables_types_field\":{\"patterns\":[{\"include\":\"#support_functions\"},{\"include\":\"#type-declarations-without-brackets\"},{\"begin\":\"([\\\\w.*]+)?(\\\\[)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"2\":{\"name\":\"punctuation.definition.begin.bracket.square.go\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.square.go\"}},\"patterns\":[{\"include\":\"#generic_param_types\"}]},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#function_param_types\"}]},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"([\\\\w.]+)\"}]},\"keywords\":{\"patterns\":[{\"match\":\"\\\\b(break|case|continue|default|defer|else|fallthrough|for|go|goto|if|range|return|select|switch)\\\\b\",\"name\":\"keyword.control.go\"},{\"match\":\"\\\\bchan\\\\b\",\"name\":\"keyword.channel.go\"},{\"match\":\"\\\\bconst\\\\b\",\"name\":\"keyword.const.go\"},{\"match\":\"\\\\bvar\\\\b\",\"name\":\"keyword.var.go\"},{\"match\":\"\\\\bfunc\\\\b\",\"name\":\"keyword.function.go\"},{\"match\":\"\\\\binterface\\\\b\",\"name\":\"keyword.interface.go\"},{\"match\":\"\\\\bmap\\\\b\",\"name\":\"keyword.map.go\"},{\"match\":\"\\\\bstruct\\\\b\",\"name\":\"keyword.struct.go\"},{\"match\":\"\\\\bimport\\\\b\",\"name\":\"keyword.control.import.go\"},{\"match\":\"\\\\btype\\\\b\",\"name\":\"keyword.type.go\"}]},\"label_loop_variables\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.label.go\"}]}},\"match\":\"(^(?:\\\\s*\\\\w+:\\\\s*$|\\\\s*\\\\b(?:break\\\\b|goto\\\\b|continue\\\\b)\\\\s+\\\\w+(?:\\\\s*/[/*]\\\\s*.*)?$))\"},\"language_constants\":{\"captures\":{\"1\":{\"name\":\"constant.language.boolean.go\"},\"2\":{\"name\":\"constant.language.null.go\"},\"3\":{\"name\":\"constant.language.iota.go\"}},\"match\":\"\\\\b(?:(true|false)|(nil)|(iota))\\\\b\"},\"map_types\":{\"begin\":\"(\\\\bmap\\\\b)(\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.map.go\"},\"2\":{\"name\":\"punctuation.definition.begin.bracket.square.go\"}},\"end\":\"(])((?:[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}(?![\\\\[\\\\]*]+{0,1}\\\\b(?:func|struct|map)\\\\b)[*\\\\[\\\\]]+{0,1}[\\\\w.]+(?:\\\\[(?:[\\\\w.*\\\\[\\\\]{}]+(?:,\\\\s*[\\\\w.*\\\\[\\\\]{}]+)*)?])?)?\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.end.bracket.square.go\"},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"include\":\"#functions\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\{\",\"name\":\"punctuation.definition.begin.bracket.curly.go\"},{\"match\":\"}\",\"name\":\"punctuation.definition.end.bracket.curly.go\"},{\"match\":\"\\\\(\",\"name\":\"punctuation.definition.begin.bracket.round.go\"},{\"match\":\"\\\\)\",\"name\":\"punctuation.definition.end.bracket.round.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"multi_types\":{\"begin\":\"(\\\\btype\\\\b)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.type.go\"},\"2\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#struct_variables_types\"},{\"include\":\"#interface_variables_types\"},{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"numeric_literals\":{\"captures\":{\"0\":{\"patterns\":[{\"begin\":\"(?=.)\",\"end\":\"(?:\\\\n|$)\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.numeric.decimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"2\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"3\":{\"name\":\"constant.numeric.decimal.point.go\"},\"4\":{\"name\":\"constant.numeric.decimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"5\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"6\":{\"name\":\"keyword.other.unit.exponent.decimal.go\"},\"7\":{\"name\":\"keyword.operator.plus.exponent.decimal.go\"},\"8\":{\"name\":\"keyword.operator.minus.exponent.decimal.go\"},\"9\":{\"name\":\"constant.numeric.exponent.decimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"10\":{\"name\":\"keyword.other.unit.imaginary.go\"},\"11\":{\"name\":\"constant.numeric.decimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"12\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"13\":{\"name\":\"keyword.other.unit.exponent.decimal.go\"},\"14\":{\"name\":\"keyword.operator.plus.exponent.decimal.go\"},\"15\":{\"name\":\"keyword.operator.minus.exponent.decimal.go\"},\"16\":{\"name\":\"constant.numeric.exponent.decimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"17\":{\"name\":\"keyword.other.unit.imaginary.go\"},\"18\":{\"name\":\"constant.numeric.decimal.point.go\"},\"19\":{\"name\":\"constant.numeric.decimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"20\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"21\":{\"name\":\"keyword.other.unit.exponent.decimal.go\"},\"22\":{\"name\":\"keyword.operator.plus.exponent.decimal.go\"},\"23\":{\"name\":\"keyword.operator.minus.exponent.decimal.go\"},\"24\":{\"name\":\"constant.numeric.exponent.decimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"25\":{\"name\":\"keyword.other.unit.imaginary.go\"},\"26\":{\"name\":\"keyword.other.unit.hexadecimal.go\"},\"27\":{\"name\":\"constant.numeric.hexadecimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"28\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"29\":{\"name\":\"constant.numeric.hexadecimal.go\"},\"30\":{\"name\":\"constant.numeric.hexadecimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"31\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"32\":{\"name\":\"keyword.other.unit.exponent.hexadecimal.go\"},\"33\":{\"name\":\"keyword.operator.plus.exponent.hexadecimal.go\"},\"34\":{\"name\":\"keyword.operator.minus.exponent.hexadecimal.go\"},\"35\":{\"name\":\"constant.numeric.exponent.hexadecimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"36\":{\"name\":\"keyword.other.unit.imaginary.go\"},\"37\":{\"name\":\"keyword.other.unit.hexadecimal.go\"},\"38\":{\"name\":\"constant.numeric.hexadecimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"39\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"40\":{\"name\":\"keyword.other.unit.exponent.hexadecimal.go\"},\"41\":{\"name\":\"keyword.operator.plus.exponent.hexadecimal.go\"},\"42\":{\"name\":\"keyword.operator.minus.exponent.hexadecimal.go\"},\"43\":{\"name\":\"constant.numeric.exponent.hexadecimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"44\":{\"name\":\"keyword.other.unit.imaginary.go\"},\"45\":{\"name\":\"keyword.other.unit.hexadecimal.go\"},\"46\":{\"name\":\"constant.numeric.hexadecimal.go\"},\"47\":{\"name\":\"constant.numeric.hexadecimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"48\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"49\":{\"name\":\"keyword.other.unit.exponent.hexadecimal.go\"},\"50\":{\"name\":\"keyword.operator.plus.exponent.hexadecimal.go\"},\"51\":{\"name\":\"keyword.operator.minus.exponent.hexadecimal.go\"},\"52\":{\"name\":\"constant.numeric.exponent.hexadecimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"53\":{\"name\":\"keyword.other.unit.imaginary.go\"}},\"match\":\"(?:(?:(?:\\\\G(?:(?:(?=[0-9.])(?!0[xXbBoO])([0-9](?:[0-9]|((?<=\\\\h)_(?=\\\\h)))*)((?:(?<=[0-9])\\\\.|\\\\.(?=[0-9])))([0-9](?:[0-9]|((?<=\\\\h)_(?=\\\\h)))*)?(?:(?<!_)([eE])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)_(?=\\\\h))*))?(i(?!\\\\w))?(?:\\\\n|$)|(?=[0-9.])(?!0[xXbBoO])([0-9](?:[0-9]|((?<=\\\\h)_(?=\\\\h)))*)(?<!_)([eE])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)_(?=\\\\h))*)(i(?!\\\\w))?(?:\\\\n|$))|((?:(?<=[0-9])\\\\.|\\\\.(?=[0-9])))([0-9](?:[0-9]|((?<=\\\\h)_(?=\\\\h)))*)(?:(?<!_)([eE])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)_(?=\\\\h))*))?(i(?!\\\\w))?(?:\\\\n|$))|(\\\\G0[xX])_?(\\\\h(?:\\\\h|((?<=\\\\h)_(?=\\\\h)))*)((?:(?<=\\\\h)\\\\.|\\\\.(?=\\\\h)))(\\\\h(?:\\\\h|((?<=\\\\h)_(?=\\\\h)))*)?(?<!_)([pP])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)_(?=\\\\h))*)(i(?!\\\\w))?(?:\\\\n|$))|(\\\\G0[xX])_?(\\\\h(?:\\\\h|((?<=\\\\h)_(?=\\\\h)))*)(?<!_)([pP])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)_(?=\\\\h))*)(i(?!\\\\w))?(?:\\\\n|$))|(\\\\G0[xX])((?:(?<=\\\\h)\\\\.|\\\\.(?=\\\\h)))(\\\\h(?:\\\\h|((?<=\\\\h)_(?=\\\\h)))*)(?<!_)([pP])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)_(?=\\\\h))*)(i(?!\\\\w))?(?:\\\\n|$))\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.decimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"2\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"3\":{\"name\":\"keyword.other.unit.imaginary.go\"},\"4\":{\"name\":\"keyword.other.unit.binary.go\"},\"5\":{\"name\":\"constant.numeric.binary.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"6\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"7\":{\"name\":\"keyword.other.unit.imaginary.go\"},\"8\":{\"name\":\"keyword.other.unit.octal.go\"},\"9\":{\"name\":\"constant.numeric.octal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"10\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"11\":{\"name\":\"keyword.other.unit.imaginary.go\"},\"12\":{\"name\":\"keyword.other.unit.hexadecimal.go\"},\"13\":{\"name\":\"constant.numeric.hexadecimal.go\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"punctuation.separator.constant.numeric.go\"}]},\"14\":{\"name\":\"punctuation.separator.constant.numeric.go\"},\"15\":{\"name\":\"keyword.other.unit.imaginary.go\"}},\"match\":\"(?:(?:(?:\\\\G(?=[0-9.])(?!0[xXbBoO])([0-9](?:[0-9]|((?<=\\\\h)_(?=\\\\h)))*)(i(?!\\\\w))?(?:\\\\n|$)|(\\\\G0[bB])_?([01](?:[01]|((?<=\\\\h)_(?=\\\\h)))*)(i(?!\\\\w))?(?:\\\\n|$))|(\\\\G0[oO]?)_?((?:[0-7]|((?<=\\\\h)_(?=\\\\h)))+)(i(?!\\\\w))?(?:\\\\n|$))|(\\\\G0[xX])_?(\\\\h(?:\\\\h|((?<=\\\\h)_(?=\\\\h)))*)(i(?!\\\\w))?(?:\\\\n|$))\"},{\"match\":\"(?:[0-9a-zA-Z_.]|(?<=[eEpP])[+-])+\",\"name\":\"invalid.illegal.constant.numeric.go\"}]}]}},\"match\":\"(?<!\\\\w)\\\\.?\\\\d(?:[0-9a-zA-Z_.]|(?<=[eEpP])[+-])*\"},\"operators\":{\"patterns\":[{\"match\":\"([*\\\\&]+)(?!\\\\d)(?=[\\\\w\\\\[\\\\]]|<-)\",\"name\":\"keyword.operator.address.go\"},{\"match\":\"<-\",\"name\":\"keyword.operator.channel.go\"},{\"match\":\"--\",\"name\":\"keyword.operator.decrement.go\"},{\"match\":\"\\\\+\\\\+\",\"name\":\"keyword.operator.increment.go\"},{\"match\":\"(==|!=|<=|>=|<(?!<)|>(?!>))\",\"name\":\"keyword.operator.comparison.go\"},{\"match\":\"(&&|\\\\|\\\\||!)\",\"name\":\"keyword.operator.logical.go\"},{\"match\":\"(=|\\\\+=|-=|\\\\|=|\\\\^=|\\\\*=|/=|:=|%=|<<=|>>=|&\\\\^=|&=)\",\"name\":\"keyword.operator.assignment.go\"},{\"match\":\"([+\\\\-*/%])\",\"name\":\"keyword.operator.arithmetic.go\"},{\"match\":\"(&(?!\\\\^)|[|^]|&\\\\^|<<|>>|~)\",\"name\":\"keyword.operator.arithmetic.bitwise.go\"},{\"match\":\"\\\\.\\\\.\\\\.\",\"name\":\"keyword.operator.ellipsis.go\"}]},\"other_struct_interface_expressions\":{\"patterns\":[{\"include\":\"#after_control_variables\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\{\",\"name\":\"punctuation.definition.begin.bracket.curly.go\"},{\"match\":\"}\",\"name\":\"punctuation.definition.end.bracket.curly.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(\\\\b[\\\\w.]+)(\\\\[(?:[\\\\w.*\\\\[\\\\]{}]+(?:,\\\\s*[\\\\w.*\\\\[\\\\]{}]+)*)?])?(?=\\\\{)(?<!\\\\b(?:struct\\\\b|interface\\\\b))\"}]},\"other_variables\":{\"match\":\"\\\\w+\",\"name\":\"variable.other.go\"},\"package_name\":{\"patterns\":[{\"begin\":\"\\\\b(package)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.package.go\"}},\"end\":\"(?!\\\\G)\",\"patterns\":[{\"match\":\"\\\\d\\\\w*\",\"name\":\"invalid.illegal.identifier.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.package.go\"}]}]},\"parameter-variable-types\":{\"patterns\":[{\"match\":\"\\\\{\",\"name\":\"punctuation.definition.begin.bracket.curly.go\"},{\"match\":\"}\",\"name\":\"punctuation.definition.end.bracket.curly.go\"},{\"begin\":\"([\\\\w.*]+)?(\\\\[)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"2\":{\"name\":\"punctuation.definition.begin.bracket.square.go\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.square.go\"}},\"patterns\":[{\"include\":\"#generic_param_types\"}]},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#function_param_types\"}]}]},\"property_variables\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.property.go\"}]}},\"match\":\"(\\\\b[\\\\w.]+:(?!=))\"},\"raw_string_literals\":{\"begin\":\"`\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.go\"}},\"end\":\"`\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.go\"}},\"name\":\"string.quoted.raw.go\",\"patterns\":[{\"include\":\"#string_placeholder\"}]},\"runes\":{\"patterns\":[{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.go\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.go\"}},\"name\":\"string.quoted.rune.go\",\"patterns\":[{\"match\":\"\\\\G(\\\\\\\\([0-7]{3}|[abfnrtv\\\\\\\\'\\\"]|x\\\\h{2}|u\\\\h{4}|U\\\\h{8})|.)(?=')\",\"name\":\"constant.other.rune.go\"},{\"match\":\"[^']+\",\"name\":\"invalid.illegal.unknown-rune.go\"}]}]},\"single_type\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.type.go\"},\"2\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"3\":{\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#function_param_types\"},{\"include\":\"$self\"}]},{\"include\":\"#type-declarations\"},{\"include\":\"#generic_types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"^\\\\s*(\\\\btype\\\\b)\\\\s*([\\\\w.*]+)\\\\s+(?!(?:=\\\\s*)?[\\\\[\\\\]*]+{0,1}\\\\b(?:struct|interface)\\\\b)([\\\\s\\\\S]+)\"},{\"begin\":\"(?:^|\\\\s+)(\\\\btype\\\\b)\\\\s*([\\\\w.*]+)(?=\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.type.go\"},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"end\":\"(?<=])(\\\\s+(?:=\\\\s*)?(?:[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}(?![\\\\[\\\\]*]+{0,1}\\\\b(?:struct\\\\b|interface\\\\b|func\\\\b))[\\\\w.\\\\-*\\\\[\\\\]]+(?:,\\\\s*[\\\\w.\\\\[\\\\]*]+)*)?\",\"endCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"patterns\":[{\"include\":\"#struct_variables_types\"},{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\{\",\"name\":\"punctuation.definition.begin.bracket.curly.go\"},{\"match\":\"}\",\"name\":\"punctuation.definition.end.bracket.curly.go\"},{\"match\":\"\\\\(\",\"name\":\"punctuation.definition.begin.bracket.round.go\"},{\"match\":\"\\\\)\",\"name\":\"punctuation.definition.end.bracket.round.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}]},\"slice_index_variables\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.go\"}]}},\"match\":\"(?<=\\\\w\\\\[)((?:\\\\b[\\\\w.*+/\\\\-%<>|\\\\&]+:|:\\\\b[\\\\w.*+/\\\\-%<>|\\\\&]+)(?:\\\\b[\\\\w.*+/\\\\-%<>|\\\\&]+)?(?::\\\\b[\\\\w.*+/\\\\-%<>|\\\\&]+)?)(?=])\"},\"statements\":{\"patterns\":[{\"include\":\"#package_name\"},{\"include\":\"#import\"},{\"include\":\"#syntax_errors\"},{\"include\":\"#group-functions\"},{\"include\":\"#group-types\"},{\"include\":\"#group-variables\"},{\"include\":\"#field_hover\"}]},\"storage_types\":{\"patterns\":[{\"match\":\"\\\\bbool\\\\b\",\"name\":\"storage.type.boolean.go\"},{\"match\":\"\\\\bbyte\\\\b\",\"name\":\"storage.type.byte.go\"},{\"match\":\"\\\\berror\\\\b\",\"name\":\"storage.type.error.go\"},{\"match\":\"\\\\b(complex(64|128)|float(32|64)|u?int(8|16|32|64)?)\\\\b\",\"name\":\"storage.type.numeric.go\"},{\"match\":\"\\\\brune\\\\b\",\"name\":\"storage.type.rune.go\"},{\"match\":\"\\\\bstring\\\\b\",\"name\":\"storage.type.string.go\"},{\"match\":\"\\\\buintptr\\\\b\",\"name\":\"storage.type.uintptr.go\"},{\"match\":\"\\\\bany\\\\b\",\"name\":\"entity.name.type.any.go\"},{\"match\":\"\\\\bcomparable\\\\b\",\"name\":\"entity.name.type.comparable.go\"}]},\"string_escaped_char\":{\"patterns\":[{\"match\":\"\\\\\\\\([0-7]{3}|[abfnrtv\\\\\\\\'\\\"]|x\\\\h{2}|u\\\\h{4}|U\\\\h{8})\",\"name\":\"constant.character.escape.go\"},{\"match\":\"\\\\\\\\[^0-7xuUabfnrtv'\\\"]\",\"name\":\"invalid.illegal.unknown-escape.go\"}]},\"string_literals\":{\"patterns\":[{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.go\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.go\"}},\"name\":\"string.quoted.double.go\",\"patterns\":[{\"include\":\"#string_escaped_char\"},{\"include\":\"#string_placeholder\"}]}]},\"string_placeholder\":{\"patterns\":[{\"match\":\"%(\\\\[\\\\d+])?([+#\\\\-0 ]{0,2}((\\\\d+|\\\\*)?(\\\\.?(\\\\d+|\\\\*|(\\\\[\\\\d+])\\\\*?)?(\\\\[\\\\d+])?)?))?[vT%tbcdoqxXUeEfFgGspw]\",\"name\":\"constant.other.placeholder.go\"}]},\"struct_interface_declaration\":{\"captures\":{\"1\":{\"name\":\"keyword.type.go\"},\"2\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"^\\\\s*(\\\\btype\\\\b)\\\\s*([\\\\w.]+)\"},\"struct_variable_types_fields_multi\":{\"patterns\":[{\"begin\":\"(\\\\w+(?:,\\\\s*\\\\w+)*(?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}\\\\s+[\\\\[\\\\]*]+{0,1})(\\\\bstruct\\\\b)\\\\s*(\\\\{)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.property.go\"}]},\"2\":{\"name\":\"keyword.struct.go\"},\"3\":{\"name\":\"punctuation.definition.begin.bracket.curly.go\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.curly.go\"}},\"patterns\":[{\"include\":\"#struct_variables_types_fields\"},{\"include\":\"$self\"}]},{\"begin\":\"(\\\\w+(?:,\\\\s*\\\\w+)*(?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}\\\\s+[\\\\[\\\\]*]+{0,1})(\\\\binterface\\\\b)\\\\s*(\\\\{)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.property.go\"}]},\"2\":{\"name\":\"keyword.interface.go\"},\"3\":{\"name\":\"punctuation.definition.begin.bracket.curly.go\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.curly.go\"}},\"patterns\":[{\"include\":\"#interface_variables_types_field\"},{\"include\":\"$self\"}]},{\"begin\":\"(\\\\w+(?:,\\\\s*\\\\w+)*(?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}\\\\s+[\\\\[\\\\]*]+{0,1})(\\\\bfunc\\\\b)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.property.go\"}]},\"2\":{\"name\":\"keyword.function.go\"},\"3\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"include\":\"#function_param_types\"},{\"include\":\"$self\"}]},{\"include\":\"#parameter-variable-types\"}]},\"struct_variables_types\":{\"begin\":\"(\\\\bstruct\\\\b)\\\\s*(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.struct.go\"},\"2\":{\"name\":\"punctuation.definition.begin.bracket.curly.go\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.curly.go\"}},\"patterns\":[{\"include\":\"#struct_variables_types_fields\"},{\"include\":\"$self\"}]},\"struct_variables_types_fields\":{\"patterns\":[{\"include\":\"#struct_variable_types_fields_multi\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(?<=\\\\{)\\\\s*((?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}[\\\\w.*\\\\[\\\\]]+)\\\\s*(?=})\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.property.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(?<=\\\\{)\\\\s*((?:\\\\w+,\\\\s*)+{0,1}\\\\w+\\\\s+)((?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}[\\\\w.*\\\\[\\\\]]+)\\\\s*(?=})\"},{\"captures\":{\"1\":{\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.property.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"((?:\\\\w+,\\\\s*)+{0,1}\\\\w+\\\\s+)?((?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}\\\\S+;?)\"}]}},\"match\":\"(?<=\\\\{)((?:\\\\s*(?:(?:\\\\w+,\\\\s*)+{0,1}\\\\w+\\\\s+)?(?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}\\\\S+;?)+)\\\\s*(?=})\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"((?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}[\\\\w.*]+\\\\s*)(?:(?=[`/\\\"])|$)\"},{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.property.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#parameter-variable-types\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"((?:\\\\w+,\\\\s*)+{0,1}\\\\w+\\\\s+)([^`\\\"/]+)\"}]},\"support_functions\":{\"captures\":{\"1\":{\"name\":\"entity.name.function.support.go\"},\"2\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\d\\\\w*\",\"name\":\"invalid.illegal.identifier.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.function.support.go\"}]},\"3\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\{\",\"name\":\"punctuation.definition.begin.bracket.curly.go\"},{\"match\":\"}\",\"name\":\"punctuation.definition.end.bracket.curly.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(?:((?<=\\\\.)\\\\b\\\\w+)|(\\\\b\\\\w+))(\\\\[(?:[\\\\w.*\\\\[\\\\]{}\\\"']+(?:,\\\\s*[\\\\w.*\\\\[\\\\]{}]+)*)?])?(?=\\\\()\"},\"switch_select_case_variables\":{\"captures\":{\"1\":{\"name\":\"keyword.control.go\"},\"2\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"include\":\"#support_functions\"},{\"include\":\"#variable_assignment\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.go\"}]}},\"match\":\"^\\\\s*(\\\\bcase\\\\b)\\\\s+([\\\\s\\\\S]+:\\\\s*(?:/[/*].*)?)$\"},\"switch_types\":{\"begin\":\"(?<=\\\\bswitch\\\\b)\\\\s*(\\\\w+\\\\s*:=)?\\\\s*([\\\\w.*()\\\\[\\\\]+/\\\\-%<>|\\\\&]+)(\\\\.\\\\(\\\\btype\\\\b\\\\)\\\\s*)(\\\\{)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#operators\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.assignment.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#support_functions\"},{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.go\"}]},\"3\":{\"patterns\":[{\"include\":\"#delimiters\"},{\"include\":\"#brackets\"},{\"match\":\"\\\\btype\\\\b\",\"name\":\"keyword.type.go\"}]},\"4\":{\"name\":\"punctuation.definition.begin.bracket.curly.go\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.curly.go\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.control.go\"},\"2\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},\"3\":{\"name\":\"punctuation.other.colon.go\"},\"4\":{\"patterns\":[{\"include\":\"#comments\"}]}},\"match\":\"^\\\\s*(\\\\bcase\\\\b)\\\\s+([\\\\w.,*=<>!\\\\s]+)(:)(\\\\s*/[/*]\\\\s*.*)?$\"},{\"begin\":\"\\\\bcase\\\\b\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.control.go\"}},\"end\":\":\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.other.colon.go\"}},\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]},{\"include\":\"$self\"}]},\"syntax_errors\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"invalid.illegal.slice.go\"}},\"match\":\"\\\\[](\\\\s+)\"},{\"match\":\"\\\\b0[0-7]*[89]\\\\d*\\\\b\",\"name\":\"invalid.illegal.numeric.go\"}]},\"terminators\":{\"match\":\";\",\"name\":\"punctuation.terminator.go\"},\"type-declarations\":{\"patterns\":[{\"include\":\"#language_constants\"},{\"include\":\"#comments\"},{\"include\":\"#map_types\"},{\"include\":\"#brackets\"},{\"include\":\"#delimiters\"},{\"include\":\"#keywords\"},{\"include\":\"#operators\"},{\"include\":\"#runes\"},{\"include\":\"#storage_types\"},{\"include\":\"#raw_string_literals\"},{\"include\":\"#string_literals\"},{\"include\":\"#numeric_literals\"},{\"include\":\"#terminators\"}]},\"type-declarations-without-brackets\":{\"patterns\":[{\"include\":\"#language_constants\"},{\"include\":\"#comments\"},{\"include\":\"#map_types\"},{\"include\":\"#delimiters\"},{\"include\":\"#keywords\"},{\"include\":\"#operators\"},{\"include\":\"#runes\"},{\"include\":\"#storage_types\"},{\"include\":\"#raw_string_literals\"},{\"include\":\"#string_literals\"},{\"include\":\"#numeric_literals\"},{\"include\":\"#terminators\"}]},\"type_assertion_inline\":{\"captures\":{\"1\":{\"name\":\"keyword.type.go\"},\"2\":{\"patterns\":[{\"include\":\"#type-declarations\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(?<=\\\\.\\\\()(?:(\\\\btype\\\\b)|((?:\\\\s*[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+{0,1}[\\\\w.\\\\[\\\\]*]+))(?=\\\\))\"},\"var_assignment\":{\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#delimiters\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.assignment.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#generic_types\"},{\"match\":\"\\\\(\",\"name\":\"punctuation.definition.begin.bracket.round.go\"},{\"match\":\"\\\\)\",\"name\":\"punctuation.definition.end.bracket.round.go\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"(?<=\\\\bvar\\\\b)\\\\s*(\\\\b[\\\\w.]+(?:,\\\\s*[\\\\w.]+)*)\\\\s*((?:(?:[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+(?:\\\\([^)]+\\\\))?)?(?![\\\\[\\\\]*]+{0,1}\\\\b(?:struct|func|map)\\\\b)(?:[\\\\w.\\\\[\\\\]*]+(?:,\\\\s*[\\\\w.\\\\[\\\\]*]+)*)?\\\\s*=?)?\"},{\"begin\":\"(?<=\\\\bvar\\\\b)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.begin.bracket.round.go\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.end.bracket.round.go\"}},\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#delimiters\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.assignment.go\"}]},\"2\":{\"patterns\":[{\"include\":\"#type-declarations-without-brackets\"},{\"include\":\"#generic_types\"},{\"match\":\"\\\\(\",\"name\":\"punctuation.definition.begin.bracket.round.go\"},{\"match\":\"\\\\)\",\"name\":\"punctuation.definition.end.bracket.round.go\"},{\"match\":\"\\\\[\",\"name\":\"punctuation.definition.begin.bracket.square.go\"},{\"match\":\"]\",\"name\":\"punctuation.definition.end.bracket.square.go\"},{\"match\":\"\\\\w+\",\"name\":\"entity.name.type.go\"}]}},\"match\":\"^\\\\s*(\\\\b[\\\\w.]+(?:,\\\\s*[\\\\w.]+)*)\\\\s*((?:(?:[*\\\\[\\\\]]+{0,1}(?:<-\\\\s*)?\\\\bchan\\\\b(?:\\\\s*<-)?\\\\s*)+(?:\\\\([^)]+\\\\))?)?(?![\\\\[\\\\]*]+{0,1}\\\\b(?:struct|func|map)\\\\b)(?:[\\\\w.\\\\[\\\\]*]+(?:,\\\\s*[\\\\w.\\\\[\\\\]*]+)*)?\\\\s*=?)?\"},{\"include\":\"$self\"}]}]},\"variable_assignment\":{\"patterns\":[{\"captures\":{\"0\":{\"patterns\":[{\"include\":\"#delimiters\"},{\"match\":\"\\\\d\\\\w*\",\"name\":\"invalid.illegal.identifier.go\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.assignment.go\"}]}},\"match\":\"\\\\b\\\\w+(?:,\\\\s*\\\\w+)*(?=\\\\s*:=)\"},{\"captures\":{\"0\":{\"patterns\":[{\"include\":\"#delimiters\"},{\"include\":\"#operators\"},{\"match\":\"\\\\d\\\\w*\",\"name\":\"invalid.illegal.identifier.go\"},{\"match\":\"\\\\w+\",\"name\":\"variable.other.assignment.go\"}]}},\"match\":\"\\\\b[\\\\w.*]+(?:,\\\\s*[\\\\w.*]+)*(?=\\\\s*=(?!=))\"}]}},\"scopeName\":\"source.go\"}"))
2
2
 
3
3
  export default [
4
4
  lang
package/dist/graphql.mjs CHANGED
@@ -3,7 +3,7 @@ import typescript from './typescript.mjs'
3
3
  import jsx from './jsx.mjs'
4
4
  import tsx from './tsx.mjs'
5
5
 
6
- const lang = Object.freeze(JSON.parse("{\"displayName\":\"GraphQL\",\"fileTypes\":[\"graphql\",\"graphqls\",\"gql\",\"graphcool\"],\"name\":\"graphql\",\"patterns\":[{\"include\":\"#graphql\"}],\"repository\":{\"graphql\":{\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-fragment-definition\"},{\"include\":\"#graphql-directive-definition\"},{\"include\":\"#graphql-type-interface\"},{\"include\":\"#graphql-enum\"},{\"include\":\"#graphql-scalar\"},{\"include\":\"#graphql-union\"},{\"include\":\"#graphql-schema\"},{\"include\":\"#graphql-operation-def\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-ampersand\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.logical.graphql\"}},\"match\":\"\\\\s*(&)\"},\"graphql-arguments\":{\"begin\":\"\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"meta.brace.round.directive.graphql\"}},\"end\":\"\\\\s*(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"meta.brace.round.directive.graphql\"}},\"name\":\"meta.arguments.graphql\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"begin\":\"\\\\s*([_A-Za-z][_0-9A-Za-z]*)\\\\s*(:)\",\"beginCaptures\":{\"1\":{\"name\":\"variable.parameter.graphql\"},\"2\":{\"name\":\"punctuation.colon.graphql\"}},\"end\":\"(?=\\\\s*(?:([_A-Za-z][_0-9A-Za-z]*)\\\\s*(:)|\\\\)))|\\\\s*(,)\",\"endCaptures\":{\"3\":{\"name\":\"punctuation.comma.graphql\"}},\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-value\"},{\"include\":\"#graphql-skip-newlines\"}]},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-boolean-value\":{\"captures\":{\"1\":{\"name\":\"constant.language.boolean.graphql\"}},\"match\":\"\\\\s*\\\\b(true|false)\\\\b\"},\"graphql-colon\":{\"captures\":{\"1\":{\"name\":\"punctuation.colon.graphql\"}},\"match\":\"\\\\s*(:)\"},\"graphql-comma\":{\"captures\":{\"1\":{\"name\":\"punctuation.comma.graphql\"}},\"match\":\"\\\\s*(,)\"},\"graphql-comment\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.graphql\"}},\"match\":\"(\\\\s*)(#).*\",\"name\":\"comment.line.graphql.js\"},{\"begin\":\"(\\\"\\\"\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.graphql\"}},\"end\":\"(\\\"\\\"\\\")\",\"name\":\"comment.line.graphql.js\"},{\"begin\":\"(\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.graphql\"}},\"end\":\"(\\\")\",\"name\":\"comment.line.graphql.js\"}]},\"graphql-description-docstring\":{\"begin\":\"\\\"\\\"\\\"\",\"end\":\"\\\"\\\"\\\"\",\"name\":\"comment.block.graphql\"},\"graphql-description-singleline\":{\"match\":\"#(?=([^\\\"]*\\\"[^\\\"]*\\\")*[^\\\"]*$).*$\",\"name\":\"comment.line.number-sign.graphql\"},\"graphql-directive\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*((@)\\\\s*([_A-Za-z][_0-9A-Za-z]*))\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.directive.graphql\"}},\"end\":\"(?=.)\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-arguments\"},{\"include\":\"#literal-quasi-embedded\"},{\"include\":\"#graphql-skip-newlines\"}]},\"graphql-directive-definition\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*(\\\\bdirective\\\\b)\\\\s*(@[_A-Za-z][_0-9A-Za-z]*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.directive.graphql\"},\"2\":{\"name\":\"entity.name.function.directive.graphql\"},\"3\":{\"name\":\"keyword.on.graphql\"},\"4\":{\"name\":\"support.type.graphql\"}},\"end\":\"(?=.)\",\"patterns\":[{\"include\":\"#graphql-variable-definitions\"},{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*(\\\\bon\\\\b)\\\\s*([_A-Za-z]*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.on.graphql\"},\"2\":{\"name\":\"support.type.location.graphql\"}},\"end\":\"(?=.)\",\"patterns\":[{\"include\":\"#graphql-skip-newlines\"},{\"include\":\"#graphql-comment\"},{\"include\":\"#literal-quasi-embedded\"},{\"captures\":{\"2\":{\"name\":\"support.type.location.graphql\"}},\"match\":\"\\\\s*(\\\\|)\\\\s*([_A-Za-z]*)\"}]},{\"include\":\"#graphql-skip-newlines\"},{\"include\":\"#graphql-comment\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-enum\":{\"begin\":\"\\\\s*+\\\\b(enum)\\\\b\\\\s*([_A-Za-z][_0-9A-Za-z]*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.enum.graphql\"},\"2\":{\"name\":\"support.type.enum.graphql\"}},\"end\":\"(?<=})\",\"name\":\"meta.enum.graphql\",\"patterns\":[{\"begin\":\"\\\\s*(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"end\":\"\\\\s*(})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"name\":\"meta.type.object.graphql\",\"patterns\":[{\"include\":\"#graphql-object-type\"},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-enum-value\"},{\"include\":\"#literal-quasi-embedded\"}]},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"}]},\"graphql-enum-value\":{\"match\":\"\\\\s*(?!=\\\\b(true|false|null)\\\\b)([_A-Za-z][_0-9A-Za-z]*)\",\"name\":\"constant.character.enum.graphql\"},\"graphql-field\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"string.unquoted.alias.graphql\"},\"2\":{\"name\":\"punctuation.colon.graphql\"}},\"match\":\"\\\\s*([_A-Za-z][_0-9A-Za-z]*)\\\\s*(:)\"},{\"captures\":{\"1\":{\"name\":\"variable.graphql\"}},\"match\":\"\\\\s*([_A-Za-z][_0-9A-Za-z]*)\"},{\"include\":\"#graphql-arguments\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-selection-set\"},{\"include\":\"#literal-quasi-embedded\"},{\"include\":\"#graphql-skip-newlines\"}]},\"graphql-float-value\":{\"captures\":{\"1\":{\"name\":\"constant.numeric.float.graphql\"}},\"match\":\"\\\\s*(-?(0|[1-9][0-9]*)(\\\\.[0-9]+)?(([eE])([+\\\\-])?[0-9]+)?)\"},\"graphql-fragment-definition\":{\"begin\":\"\\\\s*(\\\\bfragment\\\\b)\\\\s*([_A-Za-z][_0-9A-Za-z]*)?\\\\s*(\\\\bon\\\\b)\\\\s*([_A-Za-z][_0-9A-Za-z]*)\",\"captures\":{\"1\":{\"name\":\"keyword.fragment.graphql\"},\"2\":{\"name\":\"entity.name.fragment.graphql\"},\"3\":{\"name\":\"keyword.on.graphql\"},\"4\":{\"name\":\"support.type.graphql\"}},\"end\":\"(?<=})\",\"name\":\"meta.fragment.graphql\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-selection-set\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-skip-newlines\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-fragment-spread\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*(\\\\.\\\\.\\\\.)\\\\s*(?!\\\\bon\\\\b)([_A-Za-z][_0-9A-Za-z]*)\",\"captures\":{\"1\":{\"name\":\"keyword.operator.spread.graphql\"},\"2\":{\"name\":\"variable.fragment.graphql\"}},\"end\":\"(?=.)\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-selection-set\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#literal-quasi-embedded\"},{\"include\":\"#graphql-skip-newlines\"}]},\"graphql-ignore-spaces\":{\"match\":\"\\\\s*\"},\"graphql-inline-fragment\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*(\\\\.\\\\.\\\\.)\\\\s*(?:(\\\\bon\\\\b)\\\\s*([_A-Za-z][_0-9A-Za-z]*))?\",\"captures\":{\"1\":{\"name\":\"keyword.operator.spread.graphql\"},\"2\":{\"name\":\"keyword.on.graphql\"},\"3\":{\"name\":\"support.type.graphql\"}},\"end\":\"(?=.)\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-selection-set\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-skip-newlines\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-input-types\":{\"patterns\":[{\"include\":\"#graphql-scalar-type\"},{\"captures\":{\"1\":{\"name\":\"support.type.graphql\"},\"2\":{\"name\":\"keyword.operator.nulltype.graphql\"}},\"match\":\"\\\\s*([_A-Za-z][_0-9A-Za-z]*)(?:\\\\s*(!))?\"},{\"begin\":\"\\\\s*(\\\\[)\",\"captures\":{\"1\":{\"name\":\"meta.brace.square.graphql\"},\"2\":{\"name\":\"keyword.operator.nulltype.graphql\"}},\"end\":\"\\\\s*(])(?:\\\\s*(!))?\",\"name\":\"meta.type.list.graphql\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-input-types\"},{\"include\":\"#graphql-comma\"},{\"include\":\"#literal-quasi-embedded\"}]}]},\"graphql-list-value\":{\"patterns\":[{\"begin\":\"\\\\s*+(\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"meta.brace.square.graphql\"}},\"end\":\"\\\\s*(])\",\"endCaptures\":{\"1\":{\"name\":\"meta.brace.square.graphql\"}},\"name\":\"meta.listvalues.graphql\",\"patterns\":[{\"include\":\"#graphql-value\"}]}]},\"graphql-name\":{\"captures\":{\"1\":{\"name\":\"entity.name.function.graphql\"}},\"match\":\"\\\\s*([_A-Za-z][_0-9A-Za-z]*)\"},\"graphql-null-value\":{\"captures\":{\"1\":{\"name\":\"constant.language.null.graphql\"}},\"match\":\"\\\\s*\\\\b(null)\\\\b\"},\"graphql-object-field\":{\"captures\":{\"1\":{\"name\":\"constant.object.key.graphql\"},\"2\":{\"name\":\"string.unquoted.graphql\"},\"3\":{\"name\":\"punctuation.graphql\"}},\"match\":\"\\\\s*(([_A-Za-z][_0-9A-Za-z]*))\\\\s*(:)\"},\"graphql-object-value\":{\"patterns\":[{\"begin\":\"\\\\s*+(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"meta.brace.curly.graphql\"}},\"end\":\"\\\\s*(})\",\"endCaptures\":{\"1\":{\"name\":\"meta.brace.curly.graphql\"}},\"name\":\"meta.objectvalues.graphql\",\"patterns\":[{\"include\":\"#graphql-object-field\"},{\"include\":\"#graphql-value\"}]}]},\"graphql-operation-def\":{\"patterns\":[{\"include\":\"#graphql-query-mutation\"},{\"include\":\"#graphql-name\"},{\"include\":\"#graphql-variable-definitions\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-selection-set\"}]},\"graphql-query-mutation\":{\"captures\":{\"1\":{\"name\":\"keyword.operation.graphql\"}},\"match\":\"\\\\s*\\\\b(query|mutation)\\\\b\"},\"graphql-scalar\":{\"captures\":{\"1\":{\"name\":\"keyword.scalar.graphql\"},\"2\":{\"name\":\"entity.scalar.graphql\"}},\"match\":\"\\\\s*\\\\b(scalar)\\\\b\\\\s*([_A-Za-z][_0-9A-Za-z]*)\"},\"graphql-scalar-type\":{\"captures\":{\"1\":{\"name\":\"support.type.builtin.graphql\"},\"2\":{\"name\":\"keyword.operator.nulltype.graphql\"}},\"match\":\"\\\\s*\\\\b(Int|Float|String|Boolean|ID)\\\\b(?:\\\\s*(!))?\"},\"graphql-schema\":{\"begin\":\"\\\\s*\\\\b(schema)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.schema.graphql\"}},\"end\":\"(?<=})\",\"patterns\":[{\"begin\":\"\\\\s*(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"end\":\"\\\\s*(})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"patterns\":[{\"begin\":\"\\\\s*([_A-Za-z][_0-9A-Za-z]*)(?=\\\\s*\\\\(|:)\",\"beginCaptures\":{\"1\":{\"name\":\"variable.arguments.graphql\"}},\"end\":\"(?=\\\\s*(([_A-Za-z][_0-9A-Za-z]*)\\\\s*([(:])|(})))|\\\\s*(,)\",\"endCaptures\":{\"5\":{\"name\":\"punctuation.comma.graphql\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"support.type.graphql\"}},\"match\":\"\\\\s*([_A-Za-z][_0-9A-Za-z]*)\"},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-colon\"},{\"include\":\"#graphql-skip-newlines\"}]},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-skip-newlines\"}]},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-skip-newlines\"}]},\"graphql-selection-set\":{\"begin\":\"\\\\s*(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"end\":\"\\\\s*(})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"name\":\"meta.selectionset.graphql\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-field\"},{\"include\":\"#graphql-fragment-spread\"},{\"include\":\"#graphql-inline-fragment\"},{\"include\":\"#graphql-comma\"},{\"include\":\"#native-interpolation\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-skip-newlines\":{\"match\":\"\\\\s*\\\\n\"},\"graphql-string-content\":{\"patterns\":[{\"match\":\"\\\\\\\\[/'\\\"\\\\\\\\nrtbf]\",\"name\":\"constant.character.escape.graphql\"},{\"match\":\"\\\\\\\\u(\\\\h{4})\",\"name\":\"constant.character.escape.graphql\"}]},\"graphql-string-value\":{\"begin\":\"\\\\s*+((\\\"))\",\"beginCaptures\":{\"1\":{\"name\":\"string.quoted.double.graphql\"},\"2\":{\"name\":\"punctuation.definition.string.begin.graphql\"}},\"contentName\":\"string.quoted.double.graphql\",\"end\":\"\\\\s*+(?:((\\\"))|(\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"string.quoted.double.graphql\"},\"2\":{\"name\":\"punctuation.definition.string.end.graphql\"},\"3\":{\"name\":\"invalid.illegal.newline.graphql\"}},\"patterns\":[{\"include\":\"#graphql-string-content\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-type-definition\":{\"begin\":\"\\\\s*([_A-Za-z][_0-9A-Za-z]*)(?=\\\\s*\\\\(|:)\",\"beginCaptures\":{\"1\":{\"name\":\"variable.graphql\"}},\"end\":\"(?=\\\\s*(([_A-Za-z][_0-9A-Za-z]*)\\\\s*([(:])|(})))|\\\\s*(,)\",\"endCaptures\":{\"5\":{\"name\":\"punctuation.comma.graphql\"}},\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-variable-definitions\"},{\"include\":\"#graphql-type-object\"},{\"include\":\"#graphql-colon\"},{\"include\":\"#graphql-input-types\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-type-interface\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*\\\\b(?:(extends?)?\\\\b\\\\s*\\\\b(type)|(interface)|(input))\\\\b\\\\s*([_A-Za-z][_0-9A-Za-z]*)?\",\"captures\":{\"1\":{\"name\":\"keyword.type.graphql\"},\"2\":{\"name\":\"keyword.type.graphql\"},\"3\":{\"name\":\"keyword.interface.graphql\"},\"4\":{\"name\":\"keyword.input.graphql\"},\"5\":{\"name\":\"support.type.graphql\"}},\"end\":\"(?=.)\",\"name\":\"meta.type.interface.graphql\",\"patterns\":[{\"begin\":\"\\\\s*\\\\b(implements)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.implements.graphql\"}},\"end\":\"\\\\s*(?=\\\\{)\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"support.type.graphql\"}},\"match\":\"\\\\s*([_A-Za-z][_0-9A-Za-z]*)\"},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-ampersand\"},{\"include\":\"#graphql-comma\"}]},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-type-object\"},{\"include\":\"#literal-quasi-embedded\"},{\"include\":\"#graphql-ignore-spaces\"}]},\"graphql-type-object\":{\"begin\":\"\\\\s*(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"end\":\"\\\\s*(})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"name\":\"meta.type.object.graphql\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-object-type\"},{\"include\":\"#graphql-type-definition\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-union\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*\\\\b(union)\\\\b\\\\s*([_A-Za-z][_0-9A-Za-z]*)\",\"captures\":{\"1\":{\"name\":\"keyword.union.graphql\"},\"2\":{\"name\":\"support.type.graphql\"}},\"end\":\"(?=.)\",\"patterns\":[{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*(=)\\\\s*([_A-Za-z][_0-9A-Za-z]*)\",\"captures\":{\"1\":{\"name\":\"punctuation.assignment.graphql\"},\"2\":{\"name\":\"support.type.graphql\"}},\"end\":\"(?=.)\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-skip-newlines\"},{\"include\":\"#literal-quasi-embedded\"},{\"captures\":{\"1\":{\"name\":\"punctuation.or.graphql\"},\"2\":{\"name\":\"support.type.graphql\"}},\"match\":\"\\\\s*(\\\\|)\\\\s*([_A-Za-z][_0-9A-Za-z]*)\"}]},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-skip-newlines\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-union-mark\":{\"captures\":{\"1\":{\"name\":\"punctuation.union.graphql\"}},\"match\":\"\\\\s*(\\\\|)\"},\"graphql-value\":{\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-variable-name\"},{\"include\":\"#graphql-float-value\"},{\"include\":\"#graphql-string-value\"},{\"include\":\"#graphql-boolean-value\"},{\"include\":\"#graphql-null-value\"},{\"include\":\"#graphql-enum-value\"},{\"include\":\"#graphql-list-value\"},{\"include\":\"#graphql-object-value\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-variable-assignment\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\s(=)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.assignment.graphql\"}},\"end\":\"(?=[\\\\n,)])\",\"patterns\":[{\"include\":\"#graphql-value\"}]},\"graphql-variable-definition\":{\"begin\":\"\\\\s*(\\\\$?[_A-Za-z][_0-9A-Za-z]*)(?=\\\\s*\\\\(|:)\",\"beginCaptures\":{\"1\":{\"name\":\"variable.parameter.graphql\"}},\"end\":\"(?=\\\\s*((\\\\$?[_A-Za-z][_0-9A-Za-z]*)\\\\s*([(:])|([})])))|\\\\s*(,)\",\"endCaptures\":{\"5\":{\"name\":\"punctuation.comma.graphql\"}},\"name\":\"meta.variables.graphql\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-colon\"},{\"include\":\"#graphql-input-types\"},{\"include\":\"#graphql-variable-assignment\"},{\"include\":\"#literal-quasi-embedded\"},{\"include\":\"#graphql-skip-newlines\"}]},\"graphql-variable-definitions\":{\"begin\":\"\\\\s*(\\\\()\",\"captures\":{\"1\":{\"name\":\"meta.brace.round.graphql\"}},\"end\":\"\\\\s*(\\\\))\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-variable-definition\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-variable-name\":{\"captures\":{\"1\":{\"name\":\"variable.graphql\"}},\"match\":\"\\\\s*(\\\\$[_A-Za-z][_0-9A-Za-z]*)\"},\"native-interpolation\":{\"begin\":\"\\\\s*(\\\\$\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.substitution.begin\"}},\"end\":\"(})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.other.substitution.end\"}},\"name\":\"native.interpolation\",\"patterns\":[{\"include\":\"source.js\"},{\"include\":\"source.ts\"},{\"include\":\"source.js.jsx\"},{\"include\":\"source.tsx\"}]}},\"scopeName\":\"source.graphql\",\"embeddedLangs\":[\"javascript\",\"typescript\",\"jsx\",\"tsx\"],\"aliases\":[\"gql\"]}"))
6
+ const lang = Object.freeze(JSON.parse("{\"displayName\":\"GraphQL\",\"fileTypes\":[\"graphql\",\"graphqls\",\"gql\",\"graphcool\"],\"name\":\"graphql\",\"patterns\":[{\"include\":\"#graphql\"}],\"repository\":{\"graphql\":{\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-fragment-definition\"},{\"include\":\"#graphql-directive-definition\"},{\"include\":\"#graphql-type-interface\"},{\"include\":\"#graphql-enum\"},{\"include\":\"#graphql-scalar\"},{\"include\":\"#graphql-union\"},{\"include\":\"#graphql-schema\"},{\"include\":\"#graphql-operation-def\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-ampersand\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.logical.graphql\"}},\"match\":\"\\\\s*(&)\"},\"graphql-arguments\":{\"begin\":\"\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"meta.brace.round.directive.graphql\"}},\"end\":\"\\\\s*(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"meta.brace.round.directive.graphql\"}},\"name\":\"meta.arguments.graphql\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"begin\":\"\\\\s*([_A-Za-z][_0-9A-Za-z]*)\\\\s*(:)\",\"beginCaptures\":{\"1\":{\"name\":\"variable.parameter.graphql\"},\"2\":{\"name\":\"punctuation.colon.graphql\"}},\"end\":\"(?=\\\\s*(?:([_A-Za-z][_0-9A-Za-z]*)\\\\s*(:)|\\\\)))|\\\\s*(,)\",\"endCaptures\":{\"3\":{\"name\":\"punctuation.comma.graphql\"}},\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-value\"},{\"include\":\"#graphql-skip-newlines\"}]},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-boolean-value\":{\"captures\":{\"1\":{\"name\":\"constant.language.boolean.graphql\"}},\"match\":\"\\\\s*\\\\b(true|false)\\\\b\"},\"graphql-colon\":{\"captures\":{\"1\":{\"name\":\"punctuation.colon.graphql\"}},\"match\":\"\\\\s*(:)\"},\"graphql-comma\":{\"captures\":{\"1\":{\"name\":\"punctuation.comma.graphql\"}},\"match\":\"\\\\s*(,)\"},\"graphql-comment\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.graphql\"}},\"match\":\"(\\\\s*)(#).*\",\"name\":\"comment.line.graphql.js\"},{\"begin\":\"(\\\"\\\"\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.graphql\"}},\"end\":\"(\\\"\\\"\\\")\",\"name\":\"comment.line.graphql.js\"},{\"begin\":\"(\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.graphql\"}},\"end\":\"(\\\")\",\"name\":\"comment.line.graphql.js\"}]},\"graphql-description-docstring\":{\"begin\":\"\\\"\\\"\\\"\",\"end\":\"\\\"\\\"\\\"\",\"name\":\"comment.block.graphql\"},\"graphql-description-singleline\":{\"match\":\"#(?=([^\\\"]*\\\"[^\\\"]*\\\")*[^\\\"]*$).*$\",\"name\":\"comment.line.number-sign.graphql\"},\"graphql-directive\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*((@)\\\\s*([_A-Za-z][_0-9A-Za-z]*))\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.directive.graphql\"}},\"end\":\"(?=.)\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-arguments\"},{\"include\":\"#literal-quasi-embedded\"},{\"include\":\"#graphql-skip-newlines\"}]},\"graphql-directive-definition\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*(\\\\bdirective\\\\b)\\\\s*(@[_A-Za-z][_0-9A-Za-z]*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.directive.graphql\"},\"2\":{\"name\":\"entity.name.function.directive.graphql\"},\"3\":{\"name\":\"keyword.on.graphql\"},\"4\":{\"name\":\"support.type.graphql\"}},\"end\":\"(?=.)\",\"patterns\":[{\"include\":\"#graphql-variable-definitions\"},{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*(\\\\bon\\\\b)\\\\s*([_A-Za-z]*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.on.graphql\"},\"2\":{\"name\":\"support.type.location.graphql\"}},\"end\":\"(?=.)\",\"patterns\":[{\"include\":\"#graphql-skip-newlines\"},{\"include\":\"#graphql-comment\"},{\"include\":\"#literal-quasi-embedded\"},{\"captures\":{\"2\":{\"name\":\"support.type.location.graphql\"}},\"match\":\"\\\\s*(\\\\|)\\\\s*([_A-Za-z]*)\"}]},{\"include\":\"#graphql-skip-newlines\"},{\"include\":\"#graphql-comment\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-enum\":{\"begin\":\"\\\\s*+\\\\b(enum)\\\\b\\\\s*([_A-Za-z][_0-9A-Za-z]*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.enum.graphql\"},\"2\":{\"name\":\"support.type.enum.graphql\"}},\"end\":\"(?<=})\",\"name\":\"meta.enum.graphql\",\"patterns\":[{\"begin\":\"\\\\s*(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"end\":\"\\\\s*(})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"name\":\"meta.type.object.graphql\",\"patterns\":[{\"include\":\"#graphql-object-type\"},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-enum-value\"},{\"include\":\"#literal-quasi-embedded\"}]},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"}]},\"graphql-enum-value\":{\"match\":\"\\\\s*(?!=\\\\b(true|false|null)\\\\b)([_A-Za-z][_0-9A-Za-z]*)\",\"name\":\"constant.character.enum.graphql\"},\"graphql-field\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"string.unquoted.alias.graphql\"},\"2\":{\"name\":\"punctuation.colon.graphql\"}},\"match\":\"\\\\s*([_A-Za-z][_0-9A-Za-z]*)\\\\s*(:)\"},{\"captures\":{\"1\":{\"name\":\"variable.graphql\"}},\"match\":\"\\\\s*([_A-Za-z][_0-9A-Za-z]*)\"},{\"include\":\"#graphql-arguments\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-selection-set\"},{\"include\":\"#literal-quasi-embedded\"},{\"include\":\"#graphql-skip-newlines\"}]},\"graphql-float-value\":{\"captures\":{\"1\":{\"name\":\"constant.numeric.float.graphql\"}},\"match\":\"\\\\s*(-?(0|[1-9][0-9]*)(\\\\.[0-9]+)?(([eE])([+-])?[0-9]+)?)\"},\"graphql-fragment-definition\":{\"begin\":\"\\\\s*(\\\\bfragment\\\\b)\\\\s*([_A-Za-z][_0-9A-Za-z]*)?\\\\s*(\\\\bon\\\\b)\\\\s*([_A-Za-z][_0-9A-Za-z]*)\",\"captures\":{\"1\":{\"name\":\"keyword.fragment.graphql\"},\"2\":{\"name\":\"entity.name.fragment.graphql\"},\"3\":{\"name\":\"keyword.on.graphql\"},\"4\":{\"name\":\"support.type.graphql\"}},\"end\":\"(?<=})\",\"name\":\"meta.fragment.graphql\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-selection-set\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-skip-newlines\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-fragment-spread\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*(\\\\.\\\\.\\\\.)\\\\s*(?!\\\\bon\\\\b)([_A-Za-z][_0-9A-Za-z]*)\",\"captures\":{\"1\":{\"name\":\"keyword.operator.spread.graphql\"},\"2\":{\"name\":\"variable.fragment.graphql\"}},\"end\":\"(?=.)\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-selection-set\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#literal-quasi-embedded\"},{\"include\":\"#graphql-skip-newlines\"}]},\"graphql-ignore-spaces\":{\"match\":\"\\\\s*\"},\"graphql-inline-fragment\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*(\\\\.\\\\.\\\\.)\\\\s*(?:(\\\\bon\\\\b)\\\\s*([_A-Za-z][_0-9A-Za-z]*))?\",\"captures\":{\"1\":{\"name\":\"keyword.operator.spread.graphql\"},\"2\":{\"name\":\"keyword.on.graphql\"},\"3\":{\"name\":\"support.type.graphql\"}},\"end\":\"(?=.)\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-selection-set\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-skip-newlines\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-input-types\":{\"patterns\":[{\"include\":\"#graphql-scalar-type\"},{\"captures\":{\"1\":{\"name\":\"support.type.graphql\"},\"2\":{\"name\":\"keyword.operator.nulltype.graphql\"}},\"match\":\"\\\\s*([_A-Za-z][_0-9A-Za-z]*)(?:\\\\s*(!))?\"},{\"begin\":\"\\\\s*(\\\\[)\",\"captures\":{\"1\":{\"name\":\"meta.brace.square.graphql\"},\"2\":{\"name\":\"keyword.operator.nulltype.graphql\"}},\"end\":\"\\\\s*(])(?:\\\\s*(!))?\",\"name\":\"meta.type.list.graphql\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-input-types\"},{\"include\":\"#graphql-comma\"},{\"include\":\"#literal-quasi-embedded\"}]}]},\"graphql-list-value\":{\"patterns\":[{\"begin\":\"\\\\s*+(\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"meta.brace.square.graphql\"}},\"end\":\"\\\\s*(])\",\"endCaptures\":{\"1\":{\"name\":\"meta.brace.square.graphql\"}},\"name\":\"meta.listvalues.graphql\",\"patterns\":[{\"include\":\"#graphql-value\"}]}]},\"graphql-name\":{\"captures\":{\"1\":{\"name\":\"entity.name.function.graphql\"}},\"match\":\"\\\\s*([_A-Za-z][_0-9A-Za-z]*)\"},\"graphql-null-value\":{\"captures\":{\"1\":{\"name\":\"constant.language.null.graphql\"}},\"match\":\"\\\\s*\\\\b(null)\\\\b\"},\"graphql-object-field\":{\"captures\":{\"1\":{\"name\":\"constant.object.key.graphql\"},\"2\":{\"name\":\"string.unquoted.graphql\"},\"3\":{\"name\":\"punctuation.graphql\"}},\"match\":\"\\\\s*(([_A-Za-z][_0-9A-Za-z]*))\\\\s*(:)\"},\"graphql-object-value\":{\"patterns\":[{\"begin\":\"\\\\s*+(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"meta.brace.curly.graphql\"}},\"end\":\"\\\\s*(})\",\"endCaptures\":{\"1\":{\"name\":\"meta.brace.curly.graphql\"}},\"name\":\"meta.objectvalues.graphql\",\"patterns\":[{\"include\":\"#graphql-object-field\"},{\"include\":\"#graphql-value\"}]}]},\"graphql-operation-def\":{\"patterns\":[{\"include\":\"#graphql-query-mutation\"},{\"include\":\"#graphql-name\"},{\"include\":\"#graphql-variable-definitions\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-selection-set\"}]},\"graphql-query-mutation\":{\"captures\":{\"1\":{\"name\":\"keyword.operation.graphql\"}},\"match\":\"\\\\s*\\\\b(query|mutation)\\\\b\"},\"graphql-scalar\":{\"captures\":{\"1\":{\"name\":\"keyword.scalar.graphql\"},\"2\":{\"name\":\"entity.scalar.graphql\"}},\"match\":\"\\\\s*\\\\b(scalar)\\\\b\\\\s*([_A-Za-z][_0-9A-Za-z]*)\"},\"graphql-scalar-type\":{\"captures\":{\"1\":{\"name\":\"support.type.builtin.graphql\"},\"2\":{\"name\":\"keyword.operator.nulltype.graphql\"}},\"match\":\"\\\\s*\\\\b(Int|Float|String|Boolean|ID)\\\\b(?:\\\\s*(!))?\"},\"graphql-schema\":{\"begin\":\"\\\\s*\\\\b(schema)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.schema.graphql\"}},\"end\":\"(?<=})\",\"patterns\":[{\"begin\":\"\\\\s*(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"end\":\"\\\\s*(})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"patterns\":[{\"begin\":\"\\\\s*([_A-Za-z][_0-9A-Za-z]*)(?=\\\\s*\\\\(|:)\",\"beginCaptures\":{\"1\":{\"name\":\"variable.arguments.graphql\"}},\"end\":\"(?=\\\\s*(([_A-Za-z][_0-9A-Za-z]*)\\\\s*([(:])|(})))|\\\\s*(,)\",\"endCaptures\":{\"5\":{\"name\":\"punctuation.comma.graphql\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"support.type.graphql\"}},\"match\":\"\\\\s*([_A-Za-z][_0-9A-Za-z]*)\"},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-colon\"},{\"include\":\"#graphql-skip-newlines\"}]},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-skip-newlines\"}]},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-skip-newlines\"}]},\"graphql-selection-set\":{\"begin\":\"\\\\s*(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"end\":\"\\\\s*(})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"name\":\"meta.selectionset.graphql\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-field\"},{\"include\":\"#graphql-fragment-spread\"},{\"include\":\"#graphql-inline-fragment\"},{\"include\":\"#graphql-comma\"},{\"include\":\"#native-interpolation\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-skip-newlines\":{\"match\":\"\\\\s*\\\\n\"},\"graphql-string-content\":{\"patterns\":[{\"match\":\"\\\\\\\\[/'\\\"\\\\\\\\nrtbf]\",\"name\":\"constant.character.escape.graphql\"},{\"match\":\"\\\\\\\\u(\\\\h{4})\",\"name\":\"constant.character.escape.graphql\"}]},\"graphql-string-value\":{\"begin\":\"\\\\s*+((\\\"))\",\"beginCaptures\":{\"1\":{\"name\":\"string.quoted.double.graphql\"},\"2\":{\"name\":\"punctuation.definition.string.begin.graphql\"}},\"contentName\":\"string.quoted.double.graphql\",\"end\":\"\\\\s*+(?:((\\\"))|(\\\\n))\",\"endCaptures\":{\"1\":{\"name\":\"string.quoted.double.graphql\"},\"2\":{\"name\":\"punctuation.definition.string.end.graphql\"},\"3\":{\"name\":\"invalid.illegal.newline.graphql\"}},\"patterns\":[{\"include\":\"#graphql-string-content\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-type-definition\":{\"begin\":\"\\\\s*([_A-Za-z][_0-9A-Za-z]*)(?=\\\\s*\\\\(|:)\",\"beginCaptures\":{\"1\":{\"name\":\"variable.graphql\"}},\"end\":\"(?=\\\\s*(([_A-Za-z][_0-9A-Za-z]*)\\\\s*([(:])|(})))|\\\\s*(,)\",\"endCaptures\":{\"5\":{\"name\":\"punctuation.comma.graphql\"}},\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-variable-definitions\"},{\"include\":\"#graphql-type-object\"},{\"include\":\"#graphql-colon\"},{\"include\":\"#graphql-input-types\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-type-interface\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*\\\\b(?:(extends?)?\\\\b\\\\s*\\\\b(type)|(interface)|(input))\\\\b\\\\s*([_A-Za-z][_0-9A-Za-z]*)?\",\"captures\":{\"1\":{\"name\":\"keyword.type.graphql\"},\"2\":{\"name\":\"keyword.type.graphql\"},\"3\":{\"name\":\"keyword.interface.graphql\"},\"4\":{\"name\":\"keyword.input.graphql\"},\"5\":{\"name\":\"support.type.graphql\"}},\"end\":\"(?=.)\",\"name\":\"meta.type.interface.graphql\",\"patterns\":[{\"begin\":\"\\\\s*\\\\b(implements)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.implements.graphql\"}},\"end\":\"\\\\s*(?=\\\\{)\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"support.type.graphql\"}},\"match\":\"\\\\s*([_A-Za-z][_0-9A-Za-z]*)\"},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-ampersand\"},{\"include\":\"#graphql-comma\"}]},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-type-object\"},{\"include\":\"#literal-quasi-embedded\"},{\"include\":\"#graphql-ignore-spaces\"}]},\"graphql-type-object\":{\"begin\":\"\\\\s*(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"end\":\"\\\\s*(})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.operation.graphql\"}},\"name\":\"meta.type.object.graphql\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-object-type\"},{\"include\":\"#graphql-type-definition\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-union\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*\\\\b(union)\\\\b\\\\s*([_A-Za-z][_0-9A-Za-z]*)\",\"captures\":{\"1\":{\"name\":\"keyword.union.graphql\"},\"2\":{\"name\":\"support.type.graphql\"}},\"end\":\"(?=.)\",\"patterns\":[{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*(=)\\\\s*([_A-Za-z][_0-9A-Za-z]*)\",\"captures\":{\"1\":{\"name\":\"punctuation.assignment.graphql\"},\"2\":{\"name\":\"support.type.graphql\"}},\"end\":\"(?=.)\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-skip-newlines\"},{\"include\":\"#literal-quasi-embedded\"},{\"captures\":{\"1\":{\"name\":\"punctuation.or.graphql\"},\"2\":{\"name\":\"support.type.graphql\"}},\"match\":\"\\\\s*(\\\\|)\\\\s*([_A-Za-z][_0-9A-Za-z]*)\"}]},{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-skip-newlines\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-union-mark\":{\"captures\":{\"1\":{\"name\":\"punctuation.union.graphql\"}},\"match\":\"\\\\s*(\\\\|)\"},\"graphql-value\":{\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-variable-name\"},{\"include\":\"#graphql-float-value\"},{\"include\":\"#graphql-string-value\"},{\"include\":\"#graphql-boolean-value\"},{\"include\":\"#graphql-null-value\"},{\"include\":\"#graphql-enum-value\"},{\"include\":\"#graphql-list-value\"},{\"include\":\"#graphql-object-value\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-variable-assignment\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\s(=)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.assignment.graphql\"}},\"end\":\"(?=[\\\\n,)])\",\"patterns\":[{\"include\":\"#graphql-value\"}]},\"graphql-variable-definition\":{\"begin\":\"\\\\s*(\\\\$?[_A-Za-z][_0-9A-Za-z]*)(?=\\\\s*\\\\(|:)\",\"beginCaptures\":{\"1\":{\"name\":\"variable.parameter.graphql\"}},\"end\":\"(?=\\\\s*((\\\\$?[_A-Za-z][_0-9A-Za-z]*)\\\\s*([(:])|([})])))|\\\\s*(,)\",\"endCaptures\":{\"5\":{\"name\":\"punctuation.comma.graphql\"}},\"name\":\"meta.variables.graphql\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-directive\"},{\"include\":\"#graphql-colon\"},{\"include\":\"#graphql-input-types\"},{\"include\":\"#graphql-variable-assignment\"},{\"include\":\"#literal-quasi-embedded\"},{\"include\":\"#graphql-skip-newlines\"}]},\"graphql-variable-definitions\":{\"begin\":\"\\\\s*(\\\\()\",\"captures\":{\"1\":{\"name\":\"meta.brace.round.graphql\"}},\"end\":\"\\\\s*(\\\\))\",\"patterns\":[{\"include\":\"#graphql-comment\"},{\"include\":\"#graphql-description-docstring\"},{\"include\":\"#graphql-description-singleline\"},{\"include\":\"#graphql-variable-definition\"},{\"include\":\"#literal-quasi-embedded\"}]},\"graphql-variable-name\":{\"captures\":{\"1\":{\"name\":\"variable.graphql\"}},\"match\":\"\\\\s*(\\\\$[_A-Za-z][_0-9A-Za-z]*)\"},\"native-interpolation\":{\"begin\":\"\\\\s*(\\\\$\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.substitution.begin\"}},\"end\":\"(})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.other.substitution.end\"}},\"name\":\"native.interpolation\",\"patterns\":[{\"include\":\"source.js\"},{\"include\":\"source.ts\"},{\"include\":\"source.js.jsx\"},{\"include\":\"source.tsx\"}]}},\"scopeName\":\"source.graphql\",\"embeddedLangs\":[\"javascript\",\"typescript\",\"jsx\",\"tsx\"],\"aliases\":[\"gql\"]}"))
7
7
 
8
8
  export default [
9
9
  ...javascript,