@joeyshi12/casper 0.7.2 → 0.7.3

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 (405) hide show
  1. package/dist/server.js +1 -1
  2. package/dist/web/assets/{abap-DsBKuouk.js → abap-jokb6lkK.js} +1 -1
  3. package/dist/web/assets/{abnfDiagram-N423BO3Z-BntXFWDC.js → abnfDiagram-N423BO3Z-5RMwP9tv.js} +1 -1
  4. package/dist/web/assets/{actionscript-3-D_z4Izcz.js → actionscript-3-BXYeDGJT.js} +1 -1
  5. package/dist/web/assets/{ada-727ZlQH0.js → ada-CBhgZKLz.js} +1 -1
  6. package/dist/web/assets/andromeeda-C6FuwQ60.js +1 -0
  7. package/dist/web/assets/{angular-html-LfdN0zeE.js → angular-html-1hX26BPZ.js} +1 -1
  8. package/dist/web/assets/angular-ts-NOFjJDBC.js +1 -0
  9. package/dist/web/assets/{apache-Dn00JSTd.js → apache-DZWQkMCk.js} +1 -1
  10. package/dist/web/assets/{apex-COJ4H7py.js → apex-yOx7_f90.js} +1 -1
  11. package/dist/web/assets/{apl-BBq3IX1j.js → apl-COek7QEF.js} +1 -1
  12. package/dist/web/assets/{applescript-Bu5BbsvL.js → applescript-DK6hSn4y.js} +1 -1
  13. package/dist/web/assets/{ara-7O62HKoU.js → ara-NyGvP6OL.js} +1 -1
  14. package/dist/web/assets/arc-DEuUsPX5.js +1 -0
  15. package/dist/web/assets/architectureDiagram-T3A2C74G-k4h0zktw.js +36 -0
  16. package/dist/web/assets/{asciidoc-BPT9niGB.js → asciidoc-DDMctdp3.js} +1 -1
  17. package/dist/web/assets/{asm-Dhn9LcZ4.js → asm-C-s1ZrQ8.js} +1 -1
  18. package/dist/web/assets/{astro-CqkE3fuf.js → astro-CNP7wUB9.js} +1 -1
  19. package/dist/web/assets/aurora-x-C0VKFdlO.js +1 -0
  20. package/dist/web/assets/{awk-eg146-Ew.js → awk-DUctW4RQ.js} +1 -1
  21. package/dist/web/assets/ayu-dark-_V__kATy.js +1 -0
  22. package/dist/web/assets/{ballerina-Du268qiB.js → ballerina-DCDyHuU_.js} +1 -1
  23. package/dist/web/assets/{bat-fje9CFhw.js → bat-CYJ1VtZ8.js} +1 -1
  24. package/dist/web/assets/{beancount-BwXTMy5W.js → beancount-DXz1TR4C.js} +1 -1
  25. package/dist/web/assets/{berry-3xVqZejG.js → berry-DSxfSjpQ.js} +1 -1
  26. package/dist/web/assets/{bibtex-xW4inM5L.js → bibtex-D3osIjO9.js} +1 -1
  27. package/dist/web/assets/{bicep-DHo0CJ0O.js → bicep-BJtoMy_l.js} +1 -1
  28. package/dist/web/assets/{blade-a8OxSdnT.js → blade-BrTmz5zY.js} +1 -1
  29. package/dist/web/assets/{blockDiagram-VBNYF7ZC-Brv9Aqj6.js → blockDiagram-VBNYF7ZC-qTl9ZS2k.js} +1 -1
  30. package/dist/web/assets/{bsl-Dgyn0ogV.js → bsl-BOq_oGzx.js} +1 -1
  31. package/dist/web/assets/{c-C3t2pwGQ.js → c-C7geQHiD.js} +1 -1
  32. package/dist/web/assets/{c4Diagram-5PPSVZJV-CsCCridM.js → c4Diagram-5PPSVZJV-R6o_zt-Q.js} +1 -1
  33. package/dist/web/assets/{cadence-DNquZEk8.js → cadence-B8exyrQ2.js} +1 -1
  34. package/dist/web/assets/{cairo--RitsXJZ.js → cairo-CvnV_g6b.js} +1 -1
  35. package/dist/web/assets/catppuccin-frappe-7hveN6gg.js +1 -0
  36. package/dist/web/assets/catppuccin-latte-CDftU3M4.js +1 -0
  37. package/dist/web/assets/catppuccin-macchiato-DVaPwPDs.js +1 -0
  38. package/dist/web/assets/catppuccin-mocha-CYOEdfgP.js +1 -0
  39. package/dist/web/assets/channel-BQC-40u0.js +1 -0
  40. package/dist/web/assets/{chunk-2GRJ4B5K-D_ANB_P2.js → chunk-2GRJ4B5K-CrJyVfhF.js} +1 -1
  41. package/dist/web/assets/{chunk-2Q5K7J3B-DW22WjpO.js → chunk-2Q5K7J3B-BvGurkBq.js} +1 -1
  42. package/dist/web/assets/{chunk-5RXB4S5H-wtOenker.js → chunk-5RXB4S5H-DuE267ol.js} +3 -3
  43. package/dist/web/assets/{chunk-5VM5RSS4-D1yDtOMG.js → chunk-5VM5RSS4-DAVY20oh.js} +1 -1
  44. package/dist/web/assets/{chunk-6Q2QTUOP-Bk0pf9ER.js → chunk-6Q2QTUOP-DvkSg8Wl.js} +3 -3
  45. package/dist/web/assets/{chunk-GF5L2VYU-DsdtNU_v.js → chunk-GF5L2VYU-B8KQ7FAJ.js} +1 -1
  46. package/dist/web/assets/{chunk-JWPE2WC7--SnlIo8Q.js → chunk-JWPE2WC7-D2J6xFCq.js} +1 -1
  47. package/dist/web/assets/{chunk-KBJHAD2P-DtWSCQMb.js → chunk-KBJHAD2P-BfgGkRN_.js} +1 -1
  48. package/dist/web/assets/{chunk-RYQCIY6F-Du4c_cV1.js → chunk-RYQCIY6F-C0uby4vT.js} +1 -1
  49. package/dist/web/assets/{chunk-XXDRQBXY-DZ8cNm58.js → chunk-XXDRQBXY-BAZLB2J1.js} +1 -1
  50. package/dist/web/assets/{clarity-BHOwM8T6.js → clarity-BspLniIr.js} +1 -1
  51. package/dist/web/assets/classDiagram-JCYQIIEL-9L45zm4i.js +1 -0
  52. package/dist/web/assets/classDiagram-v2-OCEON4UE-9L45zm4i.js +1 -0
  53. package/dist/web/assets/{clojure-DxSadP1t.js → clojure-TcMZRJXX.js} +1 -1
  54. package/dist/web/assets/{cmake-DbXoA79R.js → cmake-Cq1xYuce.js} +1 -1
  55. package/dist/web/assets/{cobol-PTqiYgYu.js → cobol-DQNJTdu9.js} +1 -1
  56. package/dist/web/assets/{codeowners-Bp6g37R7.js → codeowners-CtwIM3TN.js} +1 -1
  57. package/dist/web/assets/{codeql-sacFqUAJ.js → codeql-Dfnujan1.js} +1 -1
  58. package/dist/web/assets/{coffee-dyiR41kL.js → coffee-CvgfVqck.js} +1 -1
  59. package/dist/web/assets/{common-lisp-C7gG9l05.js → common-lisp-DdDwuCTO.js} +1 -1
  60. package/dist/web/assets/{coq-Dsg_Bt_b.js → coq-xi22SHg_.js} +1 -1
  61. package/dist/web/assets/{cose-bilkent-JH36ORCC-9Wf3tO4_.js → cose-bilkent-JH36ORCC-8FFjV-r2.js} +1 -1
  62. package/dist/web/assets/{cpp-BksuvNSY.js → cpp-CZnLxZIX.js} +1 -1
  63. package/dist/web/assets/{crystal-DtDmRg-F.js → crystal-DtOJ9C4F.js} +1 -1
  64. package/dist/web/assets/{csharp-D9R-vmeu.js → csharp-D5GhjuXM.js} +1 -1
  65. package/dist/web/assets/{css-BPhBrDlE.js → css-DsSsXWQB.js} +1 -1
  66. package/dist/web/assets/{csv-B0qRVHPH.js → csv-CXMJgpSL.js} +1 -1
  67. package/dist/web/assets/{cue-DtFQj3wx.js → cue-usmCabPr.js} +1 -1
  68. package/dist/web/assets/{cynefin-VYW2F7L2-DR-DJAgB.js → cynefin-VYW2F7L2-CDT1GZi_.js} +1 -1
  69. package/dist/web/assets/{cynefinDiagram-MW4NZA55-BN8dtb3y.js → cynefinDiagram-MW4NZA55-DMs5fXGJ.js} +2 -2
  70. package/dist/web/assets/{cypher-m2LEI-9-.js → cypher-CrL00TIU.js} +1 -1
  71. package/dist/web/assets/{d-BoXegm-a.js → d-CFhQIz9L.js} +1 -1
  72. package/dist/web/assets/{dagre-VZM6K2ZE-bEGuwESr.js → dagre-VZM6K2ZE-BUgnrG7T.js} +1 -1
  73. package/dist/web/assets/dark-plus-DLU5INA3.js +1 -0
  74. package/dist/web/assets/{dart-B9wLZaAG.js → dart-DMtosjLs.js} +1 -1
  75. package/dist/web/assets/{dax-ClGRhx96.js → dax-vckHzldx.js} +1 -1
  76. package/dist/web/assets/{desktop-DEIpsLCJ.js → desktop-B6eBibaS.js} +1 -1
  77. package/dist/web/assets/{diagram-7IWD3JNH-DY3RlWAl.js → diagram-7IWD3JNH-DUJeTMJj.js} +3 -3
  78. package/dist/web/assets/{diagram-B4RE2ZJO-P-8DDSKD.js → diagram-B4RE2ZJO-BsVTn5rU.js} +3 -3
  79. package/dist/web/assets/{diagram-LBJQPF4R-COyMwTD5.js → diagram-LBJQPF4R--uxNHPeF.js} +2 -2
  80. package/dist/web/assets/{diagram-Q27KOJAE-C9-App7G.js → diagram-Q27KOJAE-GYAROo1s.js} +1 -1
  81. package/dist/web/assets/{diagram-UB23O5K3-D5hjqgyv.js → diagram-UB23O5K3-CpJvxU_K.js} +1 -1
  82. package/dist/web/assets/{diff-BgYniUM_.js → diff-DSVZyKbn.js} +1 -1
  83. package/dist/web/assets/{docker-COcR7UxN.js → docker-CVy4PnLq.js} +1 -1
  84. package/dist/web/assets/{dotenv-BjQB5zDj.js → dotenv-Wk8gXVAW.js} +1 -1
  85. package/dist/web/assets/dracula-XcYHBZy6.js +1 -0
  86. package/dist/web/assets/dracula-soft-BPeX9gxW.js +1 -0
  87. package/dist/web/assets/{dream-maker-C-nORZOA.js → dream-maker-DSOBmQ4T.js} +1 -1
  88. package/dist/web/assets/{ebnfDiagram-BXEA7PRR-Cf_WxbBp.js → ebnfDiagram-BXEA7PRR-l3iEqoSP.js} +1 -1
  89. package/dist/web/assets/{edge-D5gP-w-T.js → edge-DV1oJ-z-.js} +1 -1
  90. package/dist/web/assets/{elixir-CLiX3zqd.js → elixir-BAy7E9hx.js} +1 -1
  91. package/dist/web/assets/{elm-CmHSxxaM.js → elm-DI0HhLqI.js} +1 -1
  92. package/dist/web/assets/{emacs-lisp-BX77sIaO.js → emacs-lisp-CNyc7xnE.js} +1 -1
  93. package/dist/web/assets/{erDiagram-JOGREHBK-BLpPP0gJ.js → erDiagram-JOGREHBK-BoFHrs3B.js} +5 -5
  94. package/dist/web/assets/{erb-BYTLMnw6.js → erb-C2MyKaut.js} +1 -1
  95. package/dist/web/assets/{erlang-B-DoSBHF.js → erlang-qdDNB3kS.js} +1 -1
  96. package/dist/web/assets/everforest-dark-WOub3wle.js +1 -0
  97. package/dist/web/assets/everforest-light-DCUg8VH8.js +1 -0
  98. package/dist/web/assets/{fennel-bCA53EVm.js → fennel-C169Wmtk.js} +1 -1
  99. package/dist/web/assets/{fish-w-ucz2PV.js → fish-DdzwuySR.js} +1 -1
  100. package/dist/web/assets/{flowDiagram-UKHOOZJN-M3Qk_Suq.js → flowDiagram-UKHOOZJN-CXMq4-uD.js} +10 -10
  101. package/dist/web/assets/{fluent-Dayu4EKP.js → fluent-e88iTpwM.js} +1 -1
  102. package/dist/web/assets/{fortran-fixed-form-TqA4NnZg.js → fortran-fixed-form-DOoUYCKo.js} +1 -1
  103. package/dist/web/assets/{fortran-free-form-DKXYxT9g.js → fortran-free-form-entkArVT.js} +1 -1
  104. package/dist/web/assets/{fsharp-XplgxFYe.js → fsharp-BnQYn4eh.js} +1 -1
  105. package/dist/web/assets/{ganttDiagram-PKOTCBZU-CngEKyD4.js → ganttDiagram-PKOTCBZU-YMv8lvSL.js} +1 -1
  106. package/dist/web/assets/{gdresource-BHYsBjWJ.js → gdresource-BBYl1svN.js} +1 -1
  107. package/dist/web/assets/{gdscript-DfxzS6Rs.js → gdscript-CN9EyWwI.js} +1 -1
  108. package/dist/web/assets/{gdshader-SKMF96pI.js → gdshader-Bs2FnG4i.js} +1 -1
  109. package/dist/web/assets/{genie-ajMbGru0.js → genie-LZ41QQzG.js} +1 -1
  110. package/dist/web/assets/{gherkin--30QC5Em.js → gherkin-DdFu5Ka3.js} +1 -1
  111. package/dist/web/assets/{git-commit-i4q6IMui.js → git-commit-C_Fd7mZn.js} +1 -1
  112. package/dist/web/assets/{git-rebase-B-v9cOL2.js → git-rebase-AtJUntN1.js} +1 -1
  113. package/dist/web/assets/{gitGraphDiagram-DS77QQ5N-DWTBtgDc.js → gitGraphDiagram-DS77QQ5N-BgrfufCE.js} +7 -7
  114. package/dist/web/assets/github-dark-BQV5ugrc.js +1 -0
  115. package/dist/web/assets/github-dark-default-DLWDM7FH.js +1 -0
  116. package/dist/web/assets/github-dark-dimmed-D1FmiR_p.js +1 -0
  117. package/dist/web/assets/github-dark-high-contrast-BilLoi0o.js +1 -0
  118. package/dist/web/assets/github-light-Rcb2q3L5.js +1 -0
  119. package/dist/web/assets/github-light-default-CQ75esMw.js +1 -0
  120. package/dist/web/assets/github-light-high-contrast-CRF1wyLy.js +1 -0
  121. package/dist/web/assets/{gleam-B430Bg39.js → gleam-Cuj-GTDu.js} +1 -1
  122. package/dist/web/assets/{glimmer-js-D-cwc0-E.js → glimmer-js-CQwQIxfr.js} +1 -1
  123. package/dist/web/assets/{glimmer-ts-pgjy16dm.js → glimmer-ts-DzkKMqPs.js} +1 -1
  124. package/dist/web/assets/{glsl-DBO2IWDn.js → glsl-B5tAdZD8.js} +1 -1
  125. package/dist/web/assets/{gnuplot-CM8KxXT1.js → gnuplot-CZzrWc6Z.js} +1 -1
  126. package/dist/web/assets/{go-B1SYOhNW.js → go-CAz2AAgI.js} +1 -1
  127. package/dist/web/assets/{graphql-cDcHW_If.js → graphql-CsbcjAOe.js} +1 -1
  128. package/dist/web/assets/{groovy-DkBy-JyN.js → groovy-BHAqdEGB.js} +1 -1
  129. package/dist/web/assets/{hack-D1yCygmZ.js → hack-D_TkyKTp.js} +1 -1
  130. package/dist/web/assets/{haml-B2EZWmdv.js → haml-BsJe1mlH.js} +1 -1
  131. package/dist/web/assets/{handlebars-BQGss363.js → handlebars-DzHj2frt.js} +1 -1
  132. package/dist/web/assets/{haskell-BILxekzW.js → haskell-DBZShPJZ.js} +1 -1
  133. package/dist/web/assets/{haxe-C5wWYbrZ.js → haxe-BnfKaULB.js} +1 -1
  134. package/dist/web/assets/{hcl-HzYwdGDm.js → hcl-DG6oviwm.js} +1 -1
  135. package/dist/web/assets/highlightWorker-DJp1Ce5p.js +1 -0
  136. package/dist/web/assets/{hjson-T-Tgc4AT.js → hjson-9x786Szp.js} +1 -1
  137. package/dist/web/assets/{hlsl-ifBTmRxC.js → hlsl-BIjXBe-u.js} +1 -1
  138. package/dist/web/assets/houston-RHIKkNfR.js +1 -0
  139. package/dist/web/assets/{html-C2L_23MC.js → html-BfEhAfys.js} +1 -1
  140. package/dist/web/assets/{html-derivative-CSfWNPLT.js → html-derivative-khQn7CEq.js} +1 -1
  141. package/dist/web/assets/{http-FRrOvY1W.js → http-CkaUdRI6.js} +1 -1
  142. package/dist/web/assets/{hxml-TIA70rKU.js → hxml-DEEAihpB.js} +1 -1
  143. package/dist/web/assets/{hy-BMj5Y0dO.js → hy-BhTqYOi9.js} +1 -1
  144. package/dist/web/assets/{imba-bv_oIlVt.js → imba-BN90XemW.js} +1 -1
  145. package/dist/web/assets/index-D7QnyK89.css +1 -0
  146. package/dist/web/assets/index-IBYN7wml.js +353 -0
  147. package/dist/web/assets/index-t_Fnpkbb.js +12 -0
  148. package/dist/web/assets/{infoDiagram-6WML65LV-BStJJxiK.js → infoDiagram-6WML65LV-DMpqFKuC.js} +1 -1
  149. package/dist/web/assets/{ini-BjABl1g7.js → ini-CNYq1Vbh.js} +1 -1
  150. package/dist/web/assets/{ishikawaDiagram-WSZJBQD7-CxPNb82h.js → ishikawaDiagram-WSZJBQD7-BKdkzZXu.js} +4 -4
  151. package/dist/web/assets/{java-xI-RfyKK.js → java-BOuFdpVK.js} +1 -1
  152. package/dist/web/assets/{javascript-ySlJ1b_l.js → javascript-C1WZzX5w.js} +1 -1
  153. package/dist/web/assets/jinja-CPlEC2oM.js +1 -0
  154. package/dist/web/assets/{jison-BqZprYcd.js → jison-_WNGvU9Z.js} +1 -1
  155. package/dist/web/assets/{journeyDiagram-NVQOT4AX-DI2FdYe2.js → journeyDiagram-NVQOT4AX-NPjJ9Fq8.js} +1 -1
  156. package/dist/web/assets/{json-BQoSv7ci.js → json-CG0XIpmU.js} +1 -1
  157. package/dist/web/assets/{json5-w8dY5SsB.js → json5-wmRZLYNM.js} +1 -1
  158. package/dist/web/assets/{jsonc-TU54ms6u.js → jsonc-CJ5AVGwp.js} +1 -1
  159. package/dist/web/assets/{jsonl-DREVFZK8.js → jsonl-BZ9Ocixn.js} +1 -1
  160. package/dist/web/assets/{jsonnet-BfivnA6A.js → jsonnet-C1k_anf1.js} +1 -1
  161. package/dist/web/assets/{jssm-P4WzXJd0.js → jssm-DPmvb5V-.js} +1 -1
  162. package/dist/web/assets/{jsx-BAng5TT0.js → jsx-CKOz0mFu.js} +1 -1
  163. package/dist/web/assets/{julia-BBuGR-5E.js → julia-C-s-RWKo.js} +1 -1
  164. package/dist/web/assets/kanagawa-dragon-BOvIHJVT.js +1 -0
  165. package/dist/web/assets/kanagawa-lotus-Bwcd7Bvx.js +1 -0
  166. package/dist/web/assets/kanagawa-wave-0SAlpf0s.js +1 -0
  167. package/dist/web/assets/{kanban-definition-27J2QSJJ-DdrpquL_.js → kanban-definition-27J2QSJJ-MSVfDvXb.js} +8 -8
  168. package/dist/web/assets/{kotlin-B5lbUyaz.js → kotlin-DCv8F5Dl.js} +1 -1
  169. package/dist/web/assets/{kusto-mebxcVVE.js → kusto-BzMM2K9O.js} +1 -1
  170. package/dist/web/assets/laserwave-si7wuSrt.js +1 -0
  171. package/dist/web/assets/{latex-C-cWTeAZ.js → latex-C6cEKF_r.js} +1 -1
  172. package/dist/web/assets/{lean-XBlWyCtg.js → lean-DlZiO-DR.js} +1 -1
  173. package/dist/web/assets/{less-BfCpw3nA.js → less-DPX9Q-iF.js} +1 -1
  174. package/dist/web/assets/light-plus-g_Fi9vkG.js +1 -0
  175. package/dist/web/assets/{linear-CClJBsYj.js → linear-Bugxdj26.js} +1 -1
  176. package/dist/web/assets/{liquid-D3W5UaiH.js → liquid-BKbSSNuo.js} +1 -1
  177. package/dist/web/assets/{log-Cc5clBb7.js → log-DlRS7YvK.js} +1 -1
  178. package/dist/web/assets/{logo-IuBKFhSY.js → logo-VN04mNZ6.js} +1 -1
  179. package/dist/web/assets/{lua-CvWAzNxB.js → lua-DanyZPH_.js} +1 -1
  180. package/dist/web/assets/{luau-Du5NY7AG.js → luau-D93ufwnm.js} +1 -1
  181. package/dist/web/assets/{make-Bvotw-X0.js → make-CL8frSFP.js} +1 -1
  182. package/dist/web/assets/{markdown-UIAJJxZW.js → markdown-ByrpALUI.js} +1 -1
  183. package/dist/web/assets/{marko-z0MBrx5-.js → marko-DRSg2OrD.js} +1 -1
  184. package/dist/web/assets/material-theme-CIJ3cGaW.js +1 -0
  185. package/dist/web/assets/material-theme-darker-BWg3m1GB.js +1 -0
  186. package/dist/web/assets/material-theme-lighter-DR8HWMN7.js +1 -0
  187. package/dist/web/assets/material-theme-ocean-CZf9pk28.js +1 -0
  188. package/dist/web/assets/material-theme-palenight-BF01YeZy.js +1 -0
  189. package/dist/web/assets/{matlab-D9-PGadD.js → matlab-BHcro1_y.js} +1 -1
  190. package/dist/web/assets/{mdc-DB_EDNY_.js → mdc-CVTKaK9l.js} +1 -1
  191. package/dist/web/assets/{mdx-sdHcTMYB.js → mdx-CCTQUHLn.js} +1 -1
  192. package/dist/web/assets/{mermaid-Ci6OQyBP.js → mermaid-QUEeqX1B.js} +1 -1
  193. package/dist/web/assets/{mermaid.core-ONfBNVRk.js → mermaid.core-BrC5_l7I.js} +6 -6
  194. package/dist/web/assets/min-dark-DhfaepVE.js +1 -0
  195. package/dist/web/assets/min-light-6xx0uMgm.js +1 -0
  196. package/dist/web/assets/{mindmap-definition-FAOFIHXS-CBQ7h3OO.js → mindmap-definition-FAOFIHXS-yB60YQKy.js} +3 -3
  197. package/dist/web/assets/{mipsasm-BC5c_5Pe.js → mipsasm-q9X1oIjH.js} +1 -1
  198. package/dist/web/assets/{mojo-Tz6hzZYG.js → mojo-XjOS2v-j.js} +1 -1
  199. package/dist/web/assets/monokai-BodnsaDQ.js +1 -0
  200. package/dist/web/assets/{move-DB_GagMm.js → move-BX9wJykM.js} +1 -1
  201. package/dist/web/assets/{narrat-DLbgOhZU.js → narrat-BIAE-JNJ.js} +1 -1
  202. package/dist/web/assets/{nextflow-B0XVJmRM.js → nextflow-C3Zpn0NH.js} +1 -1
  203. package/dist/web/assets/{nginx-D_VnBJ67.js → nginx-K8be3xw8.js} +1 -1
  204. package/dist/web/assets/night-owl-EdP2Hztp.js +1 -0
  205. package/dist/web/assets/{nim-ZlGxZxc3.js → nim-BXrdZEnW.js} +1 -1
  206. package/dist/web/assets/{nix-shcSOmrb.js → nix-BJFrXuto.js} +1 -1
  207. package/dist/web/assets/nord-BAu0wM6c.js +1 -0
  208. package/dist/web/assets/{nushell-D4Tzg5kh.js → nushell-DEgT14oF.js} +1 -1
  209. package/dist/web/assets/{objective-c-Deuh7S70.js → objective-c-CYCTDIQP.js} +1 -1
  210. package/dist/web/assets/{objective-cpp-BUEGK8hf.js → objective-cpp-CAecc67Z.js} +1 -1
  211. package/dist/web/assets/{ocaml-BNioltXt.js → ocaml-Bsxv_Kxh.js} +1 -1
  212. package/dist/web/assets/one-dark-pro-BsKIA8GN.js +1 -0
  213. package/dist/web/assets/one-light-s-s--efq.js +1 -0
  214. package/dist/web/assets/{pascal-JqZropPD.js → pascal-BDJShKAI.js} +1 -1
  215. package/dist/web/assets/{pegDiagram-VL7TDLO6-Buje72cq.js → pegDiagram-VL7TDLO6-BfdGiZwB.js} +1 -1
  216. package/dist/web/assets/{perl-CHQXSrWU.js → perl-C2vWUXWi.js} +1 -1
  217. package/dist/web/assets/{php-B5ebYQev.js → php-DK-qQ6uC.js} +1 -1
  218. package/dist/web/assets/pieDiagram-7S7Q4E2Y-BuJwU-QQ.js +39 -0
  219. package/dist/web/assets/plastic-CXnNNlFZ.js +1 -0
  220. package/dist/web/assets/{plsql-LKU2TuZ1.js → plsql-B9Xnh5qb.js} +1 -1
  221. package/dist/web/assets/{po-BFLt1xDp.js → po-DMjhmVbd.js} +1 -1
  222. package/dist/web/assets/poimandres-BrOVMvuE.js +1 -0
  223. package/dist/web/assets/{polar-DKykz6zU.js → polar-yYtLLj-r.js} +1 -1
  224. package/dist/web/assets/{postcss-B3ZDOciz.js → postcss-CJ1yqXqD.js} +1 -1
  225. package/dist/web/assets/{powerquery-CSHBycmS.js → powerquery-DC5VyW2x.js} +1 -1
  226. package/dist/web/assets/{powershell-BIEUsx6d.js → powershell-EzVS97da.js} +1 -1
  227. package/dist/web/assets/{prisma-B48N-Iqd.js → prisma-CHOHSoLN.js} +1 -1
  228. package/dist/web/assets/{prolog-BY-TUvya.js → prolog-DwYUCN91.js} +1 -1
  229. package/dist/web/assets/{proto-zocC4JxJ.js → proto-62gbbcWM.js} +1 -1
  230. package/dist/web/assets/{pug-CM9l7STV.js → pug-CkZF2A-M.js} +1 -1
  231. package/dist/web/assets/{puppet-Cza_XSSt.js → puppet-DBtA4RyP.js} +1 -1
  232. package/dist/web/assets/{purescript-Bg-kzb6g.js → purescript-CtNtlKn6.js} +1 -1
  233. package/dist/web/assets/{python-DhUJRlN_.js → python-Cmxmv3et.js} +1 -1
  234. package/dist/web/assets/{qml-D8XfuvdV.js → qml-Bp5NUdYD.js} +1 -1
  235. package/dist/web/assets/{qmldir-C8lEn-DE.js → qmldir-DXd9s5XC.js} +1 -1
  236. package/dist/web/assets/{qss-DhMKtDLN.js → qss-COHgjnFa.js} +1 -1
  237. package/dist/web/assets/{quadrantDiagram-CIZ2JOQS-DfjvRhwZ.js → quadrantDiagram-CIZ2JOQS-DvYy4rS6.js} +1 -1
  238. package/dist/web/assets/{r-CwjWoCRV.js → r-fEWCeYop.js} +1 -1
  239. package/dist/web/assets/{racket-CzouJOBO.js → racket-DeqZVGhA.js} +1 -1
  240. package/dist/web/assets/{railroadDiagram-AXF67PYL-CLC53cPk.js → railroadDiagram-AXF67PYL-D0Slzbqv.js} +1 -1
  241. package/dist/web/assets/{raku-B1bQXN8T.js → raku-2Ooz0w2a.js} +1 -1
  242. package/dist/web/assets/{razor-CNLDkMZG.js → razor-BSfiIh5a.js} +1 -1
  243. package/dist/web/assets/red-DR6ZwibK.js +1 -0
  244. package/dist/web/assets/{reg-5LuOXUq_.js → reg-B-dYDP6y.js} +1 -1
  245. package/dist/web/assets/{regexp-DWJ3fJO_.js → regexp-CZXE-O4g.js} +1 -1
  246. package/dist/web/assets/{rel-DJlmqQ1C.js → rel-CFc0GWi_.js} +1 -1
  247. package/dist/web/assets/{requirementDiagram-LRYGKXZP-Bh0xhzbL.js → requirementDiagram-LRYGKXZP-O1O4JCzu.js} +3 -3
  248. package/dist/web/assets/{riscv-QhoSD0DR.js → riscv-BXk1R-Oi.js} +1 -1
  249. package/dist/web/assets/rose-pine-BdvZjiDe.js +1 -0
  250. package/dist/web/assets/rose-pine-dawn-C0sjdsEC.js +1 -0
  251. package/dist/web/assets/rose-pine-moon-DYFWp_hT.js +1 -0
  252. package/dist/web/assets/{rst-4NLicBqY.js → rst-BLGbJK1H.js} +1 -1
  253. package/dist/web/assets/{ruby-DeZ3UC14.js → ruby-D2E7iJ0s.js} +1 -1
  254. package/dist/web/assets/{rust-Be6lgOlo.js → rust-BsY_F5cx.js} +1 -1
  255. package/dist/web/assets/{sankeyDiagram-W5VNT64P-KSOJwFOV.js → sankeyDiagram-W5VNT64P-WTewsL_K.js} +2 -2
  256. package/dist/web/assets/{sas-BmTFh92c.js → sas-DMLSfKIw.js} +1 -1
  257. package/dist/web/assets/{sass-BJ4Li9vH.js → sass-DmSX4WtY.js} +1 -1
  258. package/dist/web/assets/{scala-DQVVAn-B.js → scala-DYeJBAW8.js} +1 -1
  259. package/dist/web/assets/{scheme-BJGe-b2p.js → scheme-CCAsyj2s.js} +1 -1
  260. package/dist/web/assets/{scss-C31hgJw-.js → scss-0gJUc9a6.js} +1 -1
  261. package/dist/web/assets/{sdbl-BLhTXw86.js → sdbl-BxOweiR9.js} +1 -1
  262. package/dist/web/assets/{sequenceDiagram-SI44F4Z6-Brj5mw1M.js → sequenceDiagram-SI44F4Z6-BUoBi4kR.js} +4 -4
  263. package/dist/web/assets/{shaderlab-B7qAK45m.js → shaderlab-CbagduOQ.js} +1 -1
  264. package/dist/web/assets/{shellscript-atvbtKCR.js → shellscript-D3bMYZAJ.js} +1 -1
  265. package/dist/web/assets/{shellsession-C_rIy8kc.js → shellsession-BPnHQqN9.js} +1 -1
  266. package/dist/web/assets/{sizeCapture-X5ZJPWSS-CH05wdHR.js → sizeCapture-X5ZJPWSS-BV9d3RVn.js} +1 -1
  267. package/dist/web/assets/slack-dark-CWRQmTmo.js +1 -0
  268. package/dist/web/assets/slack-ochin-DO_ok7XK.js +1 -0
  269. package/dist/web/assets/{smalltalk-DkLiglaE.js → smalltalk-BMwf8jcw.js} +1 -1
  270. package/dist/web/assets/snazzy-light-B5llO_gK.js +1 -0
  271. package/dist/web/assets/solarized-dark-G9yBjKj_.js +1 -0
  272. package/dist/web/assets/solarized-light-DeSzljQz.js +1 -0
  273. package/dist/web/assets/{solidity-C1w2a3ep.js → solidity-BxZpkxtV.js} +1 -1
  274. package/dist/web/assets/{soy-C-lX7w71.js → soy-BtgE62v-.js} +1 -1
  275. package/dist/web/assets/{sparql-bYkjHRlG.js → sparql-_iLxUxfJ.js} +1 -1
  276. package/dist/web/assets/{splunk-Cf8iN4DR.js → splunk-CDXNg1TZ.js} +1 -1
  277. package/dist/web/assets/{sql-COK4E0Yg.js → sql-DWijR-2F.js} +1 -1
  278. package/dist/web/assets/{ssh-config-BknIz3MU.js → ssh-config-D_LcGZIn.js} +1 -1
  279. package/dist/web/assets/{stata-DorPZHa4.js → stata-4mZtT6ij.js} +1 -1
  280. package/dist/web/assets/stateDiagram-OKZ733FA-BqdAeMq4.js +1 -0
  281. package/dist/web/assets/stateDiagram-v2-UEYNNEHI-DQeB4eKD.js +1 -0
  282. package/dist/web/assets/{stylus-BeQkCIfX.js → stylus-DrmVbdhX.js} +1 -1
  283. package/dist/web/assets/{svelte-MSaWC3Je.js → svelte-ka6mjOzI.js} +1 -1
  284. package/dist/web/assets/{swift-BSxZ-RaX.js → swift-DkIjBhB-.js} +1 -1
  285. package/dist/web/assets/{swimlanes-SLNWSIFB-ELf6gJKu.js → swimlanes-SLNWSIFB-Dn0Z0yF4.js} +2 -2
  286. package/dist/web/assets/swimlanesDiagram-ULZ7WXOC-Dl6pHbTK.js +8 -0
  287. package/dist/web/assets/synthwave-84-DRVv-_m_.js +1 -0
  288. package/dist/web/assets/{system-verilog-C7L56vO4.js → system-verilog-CZLUg-Ri.js} +1 -1
  289. package/dist/web/assets/{systemd-CUnW07Te.js → systemd-BuJkd4yg.js} +1 -1
  290. package/dist/web/assets/{talonscript-C1XDQQGZ.js → talonscript-BMPZxVzx.js} +1 -1
  291. package/dist/web/assets/{tasl-CQjiPCtT.js → tasl-DVVRcRkA.js} +1 -1
  292. package/dist/web/assets/{tcl-DQ1-QYvQ.js → tcl-CA1YyYjY.js} +1 -1
  293. package/dist/web/assets/{templ-dwX3ZSMB.js → templ-bd1y3IAS.js} +1 -1
  294. package/dist/web/assets/{terraform-BbSNqyBO.js → terraform-Dz7t1_iL.js} +1 -1
  295. package/dist/web/assets/{tex-rYs2v40G.js → tex-Bvf-FxBj.js} +1 -1
  296. package/dist/web/assets/{timeline-definition-Z64GVDOM-DeaTiF-8.js → timeline-definition-Z64GVDOM-RXIqWmas.js} +3 -3
  297. package/dist/web/assets/tokyo-night-BpPvklgd.js +1 -0
  298. package/dist/web/assets/{toml-CB2ApiWb.js → toml-CghlGpNM.js} +1 -1
  299. package/dist/web/assets/ts-tags-27UfV0Yx.js +1 -0
  300. package/dist/web/assets/{tsv-B_m7g4N7.js → tsv-BFtm7NXx.js} +1 -1
  301. package/dist/web/assets/{tsx-B6W0miNI.js → tsx-CvLnrXoc.js} +1 -1
  302. package/dist/web/assets/{turtle-BMR_PYu6.js → turtle-CLj0zYni.js} +1 -1
  303. package/dist/web/assets/{twig-NC5TFiHP.js → twig-BEYz8PCZ.js} +1 -1
  304. package/dist/web/assets/{typescript-Dj6nwHGl.js → typescript-ChR4GJfA.js} +1 -1
  305. package/dist/web/assets/{typespec-BpWG_bgh.js → typespec-BsO-HK2h.js} +1 -1
  306. package/dist/web/assets/{typst-BVUVsWT6.js → typst-C9z_G1G3.js} +1 -1
  307. package/dist/web/assets/{v-CAQ2eGtk.js → v-UOp3PMQa.js} +1 -1
  308. package/dist/web/assets/{vala-BFOHcciG.js → vala-9t0Jazjg.js} +1 -1
  309. package/dist/web/assets/{vb-CdO5JTpU.js → vb-BjPFQNKy.js} +1 -1
  310. package/dist/web/assets/{vennDiagram-T6HMQDX7-B_pKKDwZ.js → vennDiagram-T6HMQDX7-Djv2Kody.js} +4 -4
  311. package/dist/web/assets/{verilog-CJaU5se_.js → verilog-3_G7wE-H.js} +1 -1
  312. package/dist/web/assets/vesper-DXVBNDlZ.js +1 -0
  313. package/dist/web/assets/{vhdl-DYoNaHQp.js → vhdl-KKKa5jXK.js} +1 -1
  314. package/dist/web/assets/{viml-m4uW47V2.js → viml-B0JfLneA.js} +1 -1
  315. package/dist/web/assets/vitesse-black-B_BYPdvp.js +1 -0
  316. package/dist/web/assets/vitesse-dark-DOSOf2Sz.js +1 -0
  317. package/dist/web/assets/vitesse-light-gUX51GpB.js +1 -0
  318. package/dist/web/assets/vue-Bvh4pc9M.js +1 -0
  319. package/dist/web/assets/{vue-html-xdeiXROB.js → vue-html-WOs3W6Bt.js} +1 -1
  320. package/dist/web/assets/{vyper-nyqBNV6O.js → vyper-CDIMwK9O.js} +1 -1
  321. package/dist/web/assets/{wardleyDiagram-T6FBY63Y-jLsFKv0C.js → wardleyDiagram-T6FBY63Y-k8z1iXMI.js} +1 -1
  322. package/dist/web/assets/{wasm-C6j12Q_x.js → wasm-DnnIR_xd.js} +1 -1
  323. package/dist/web/assets/{wenyan-7A4Fjokl.js → wenyan-BKvj6Muf.js} +1 -1
  324. package/dist/web/assets/{wgsl-CB0Krxn9.js → wgsl-DQkNTPT4.js} +1 -1
  325. package/dist/web/assets/{wikitext-DCE3LsBG.js → wikitext-Bx_2Gb24.js} +1 -1
  326. package/dist/web/assets/{wolfram-C3FkfJm5.js → wolfram-CfjDyZMz.js} +1 -1
  327. package/dist/web/assets/{xml-e3z08dGr.js → xml-D2mywr7C.js} +1 -1
  328. package/dist/web/assets/{xsl-Dd0NUgwM.js → xsl-BazRubtb.js} +1 -1
  329. package/dist/web/assets/{xychartDiagram-ELKLHX3M-BA6zkq4L.js → xychartDiagram-ELKLHX3M-DBRaiGnz.js} +1 -1
  330. package/dist/web/assets/{yaml-CVw76BM1.js → yaml-CcrPW8Jr.js} +1 -1
  331. package/dist/web/assets/{zenscript-HnGAYVZD.js → zenscript-C_cgpljH.js} +1 -1
  332. package/dist/web/assets/{zig-BVz_zdnA.js → zig-2aGeTlGI.js} +1 -1
  333. package/dist/web/index.html +2 -2
  334. package/dist/web/sw.js +1 -1
  335. package/package.json +1 -1
  336. package/dist/web/assets/andromeeda-C3khCPGq.js +0 -1
  337. package/dist/web/assets/angular-ts-CKsD7JZE.js +0 -1
  338. package/dist/web/assets/arc-PxLvJSnb.js +0 -1
  339. package/dist/web/assets/architectureDiagram-T3A2C74G-C3W7640R.js +0 -36
  340. package/dist/web/assets/aurora-x-D-2ljcwZ.js +0 -1
  341. package/dist/web/assets/ayu-dark-Cv9koXgw.js +0 -1
  342. package/dist/web/assets/catppuccin-frappe-CD_QflpE.js +0 -1
  343. package/dist/web/assets/catppuccin-latte-DRW-0cLl.js +0 -1
  344. package/dist/web/assets/catppuccin-macchiato-C-_shW-Y.js +0 -1
  345. package/dist/web/assets/catppuccin-mocha-LGGdnPYs.js +0 -1
  346. package/dist/web/assets/channel-BIucJZnb.js +0 -1
  347. package/dist/web/assets/classDiagram-JCYQIIEL-BGlLKBgl.js +0 -1
  348. package/dist/web/assets/classDiagram-v2-OCEON4UE-BGlLKBgl.js +0 -1
  349. package/dist/web/assets/dark-plus-C3mMm8J8.js +0 -1
  350. package/dist/web/assets/dracula-BzJJZx-M.js +0 -1
  351. package/dist/web/assets/dracula-soft-BXkSAIEj.js +0 -1
  352. package/dist/web/assets/everforest-dark-BgDCqdQA.js +0 -1
  353. package/dist/web/assets/everforest-light-C8M2exoo.js +0 -1
  354. package/dist/web/assets/github-dark-DHJKELXO.js +0 -1
  355. package/dist/web/assets/github-dark-default-Cuk6v7N8.js +0 -1
  356. package/dist/web/assets/github-dark-dimmed-DH5Ifo-i.js +0 -1
  357. package/dist/web/assets/github-dark-high-contrast-E3gJ1_iC.js +0 -1
  358. package/dist/web/assets/github-light-DAi9KRSo.js +0 -1
  359. package/dist/web/assets/github-light-default-D7oLnXFd.js +0 -1
  360. package/dist/web/assets/github-light-high-contrast-BfjtVDDH.js +0 -1
  361. package/dist/web/assets/houston-DnULxvSX.js +0 -1
  362. package/dist/web/assets/index-BHQqzlI6.js +0 -13
  363. package/dist/web/assets/index-BL8L2yQv.css +0 -1
  364. package/dist/web/assets/index-ouQFVkG-.js +0 -342
  365. package/dist/web/assets/jinja-DGy0s7-h.js +0 -1
  366. package/dist/web/assets/kanagawa-dragon-CkXjmgJE.js +0 -1
  367. package/dist/web/assets/kanagawa-lotus-CfQXZHmo.js +0 -1
  368. package/dist/web/assets/kanagawa-wave-DWedfzmr.js +0 -1
  369. package/dist/web/assets/laserwave-DUszq2jm.js +0 -1
  370. package/dist/web/assets/light-plus-B7mTdjB0.js +0 -1
  371. package/dist/web/assets/material-theme-D5KoaKCx.js +0 -1
  372. package/dist/web/assets/material-theme-darker-BfHTSMKl.js +0 -1
  373. package/dist/web/assets/material-theme-lighter-B0m2ddpp.js +0 -1
  374. package/dist/web/assets/material-theme-ocean-CyktbL80.js +0 -1
  375. package/dist/web/assets/material-theme-palenight-Csfq5Kiy.js +0 -1
  376. package/dist/web/assets/min-dark-CafNBF8u.js +0 -1
  377. package/dist/web/assets/min-light-CTRr51gU.js +0 -1
  378. package/dist/web/assets/monokai-D4h5O-jR.js +0 -1
  379. package/dist/web/assets/night-owl-C39BiMTA.js +0 -1
  380. package/dist/web/assets/nord-Ddv68eIx.js +0 -1
  381. package/dist/web/assets/one-dark-pro-GBQ2dnAY.js +0 -1
  382. package/dist/web/assets/one-light-PoHY5YXO.js +0 -1
  383. package/dist/web/assets/pieDiagram-7S7Q4E2Y-DNQc-yHW.js +0 -39
  384. package/dist/web/assets/plastic-3e1v2bzS.js +0 -1
  385. package/dist/web/assets/poimandres-CS3Unz2-.js +0 -1
  386. package/dist/web/assets/red-bN70gL4F.js +0 -1
  387. package/dist/web/assets/rose-pine-CmCqftbK.js +0 -1
  388. package/dist/web/assets/rose-pine-dawn-Ds-gbosJ.js +0 -1
  389. package/dist/web/assets/rose-pine-moon-CjDtw9vr.js +0 -1
  390. package/dist/web/assets/slack-dark-BthQWCQV.js +0 -1
  391. package/dist/web/assets/slack-ochin-DqwNpetd.js +0 -1
  392. package/dist/web/assets/snazzy-light-Bw305WKR.js +0 -1
  393. package/dist/web/assets/solarized-dark-DXbdFlpD.js +0 -1
  394. package/dist/web/assets/solarized-light-L9t79GZl.js +0 -1
  395. package/dist/web/assets/stateDiagram-OKZ733FA-B9AFHzH-.js +0 -1
  396. package/dist/web/assets/stateDiagram-v2-UEYNNEHI-DXjkPo3z.js +0 -1
  397. package/dist/web/assets/swimlanesDiagram-ULZ7WXOC-uM2fmMPE.js +0 -8
  398. package/dist/web/assets/synthwave-84-CbfX1IO0.js +0 -1
  399. package/dist/web/assets/tokyo-night-DBQeEorK.js +0 -1
  400. package/dist/web/assets/ts-tags-CipyTH0X.js +0 -1
  401. package/dist/web/assets/vesper-BEBZ7ncR.js +0 -1
  402. package/dist/web/assets/vitesse-black-Bkuqu6BP.js +0 -1
  403. package/dist/web/assets/vitesse-dark-D0r3Knsf.js +0 -1
  404. package/dist/web/assets/vitesse-light-CVO1_9PV.js +0 -1
  405. package/dist/web/assets/vue-BuYVFjOK.js +0 -1
@@ -1 +1 @@
1
- import e from"./html-C2L_23MC.js";import n from"./haml-B2EZWmdv.js";import t from"./xml-e3z08dGr.js";import a from"./sql-COK4E0Yg.js";import r from"./graphql-cDcHW_If.js";import i from"./css-BPhBrDlE.js";import u from"./cpp-BksuvNSY.js";import c from"./c-C3t2pwGQ.js";import o from"./javascript-ySlJ1b_l.js";import s from"./shellscript-atvbtKCR.js";import d from"./lua-CvWAzNxB.js";import m from"./yaml-CVw76BM1.js";import"./java-xI-RfyKK.js";import"./typescript-Dj6nwHGl.js";import"./jsx-BAng5TT0.js";import"./tsx-B6W0miNI.js";import"./regexp-DWJ3fJO_.js";import"./glsl-DBO2IWDn.js";const b=Object.freeze(JSON.parse(`{"displayName":"Ruby","name":"ruby","patterns":[{"captures":{"1":{"name":"keyword.control.class.ruby"},"2":{"name":"entity.name.type.class.ruby"},"5":{"name":"punctuation.separator.namespace.ruby"},"7":{"name":"punctuation.separator.inheritance.ruby"},"8":{"name":"entity.other.inherited-class.ruby"},"11":{"name":"punctuation.separator.namespace.ruby"}},"comment":"class Namespace::ClassName < OtherNamespace::OtherClassName","match":"\\b(class)\\\\s+(([a-zA-Z0-9_]+)((::)[a-zA-Z0-9_]+)*)\\\\s*((<)\\\\s*(([a-zA-Z0-9_]+)((::)[a-zA-Z0-9_]+)*))?","name":"meta.class.ruby"},{"captures":{"1":{"name":"keyword.control.module.ruby"},"2":{"name":"entity.name.type.module.ruby"},"5":{"name":"punctuation.separator.namespace.ruby"}},"match":"\\b(module)\\\\s+(([a-zA-Z0-9_]+)((::)[a-zA-Z0-9_]+)*)","name":"meta.module.ruby"},{"captures":{"1":{"name":"keyword.control.class.ruby"},"2":{"name":"punctuation.separator.inheritance.ruby"}},"match":"\\b(class)\\\\s*(<<)\\\\s*","name":"meta.class.ruby"},{"comment":"else if is a common mistake carried over from other languages. it works if you put in a second end, but it’s never what you want.","match":"(?<!\\\\.)\\\\belse(\\\\s)+if\\\\b","name":"invalid.deprecated.ruby"},{"captures":{"1":{"name":"variable.ruby"},"3":{"name":"keyword.operator.assignment.augmented.ruby"}},"comment":"A local variable and/or assignment","match":"^\\\\s*([a-z]([A-Za-z0-9_])*)\\\\s*((&&|\\\\|\\\\|)=)"},{"captures":{"1":{"name":"keyword.control.ruby"},"3":{"name":"variable.ruby"},"5":{"name":"keyword.operator.assignment.augmented.ruby"}},"comment":"A local variable and/or assignment in a condition","match":"(?<!\\\\.)\\\\b(case|if|elsif|unless|until|while)\\\\b\\\\s*(\\\\()*?\\\\s*([a-z]([A-Za-z0-9_])*)\\\\s*((&&|\\\\|\\\\|)=)"},{"captures":{"1":{"name":"variable.ruby"},"3":{"name":"keyword.operator.assignment.augmented.ruby"}},"comment":"A local variable operation assignment (+=, -=, *=, /=)","match":"^\\\\s*([a-z]([A-Za-z0-9_])*)\\\\s*((\\\\+|\\\\*|-|\\\\/|%|\\\\*\\\\*|&|\\\\||\\\\^|<<|>>)=)"},{"captures":{"1":{"name":"keyword.control.ruby"},"3":{"name":"variable.ruby"},"5":{"name":"keyword.operator.assignment.augmented.ruby"}},"comment":"A local variable operation assignment in a condition","match":"(?<!\\\\.)\\\\b(case|if|elsif|unless|until|while)\\\\b\\\\s*(\\\\()*?\\\\s*([a-z]([A-Za-z0-9_])*)\\\\s*((\\\\+|\\\\*|-|\\\\/|%|\\\\*\\\\*|&|\\\\||\\\\^|<<|>>)=)"},{"captures":{"1":{"name":"variable.ruby"}},"comment":"A local variable assignment","match":"^\\\\s*([a-z]([A-Za-z0-9_])*)\\\\s*=[^=>]"},{"captures":{"1":{"name":"keyword.control.ruby"},"3":{"name":"variable.ruby"}},"comment":"A local variable assignment in a condition","match":"(?<!\\\\.)\\\\b(case|if|elsif|unless|until|while)\\\\b\\\\s*(\\\\()*?\\\\s*([a-z]([A-Za-z0-9_])*)\\\\s*=[^=>]"},{"captures":{"1":{"name":"punctuation.definition.constant.hashkey.ruby"}},"comment":"symbols as hash key (1.9 syntax)","match":"(?>[a-zA-Z_]\\\\w*(?>[?!])?)(:)(?!:)","name":"constant.language.symbol.hashkey.ruby"},{"captures":{"1":{"name":"punctuation.definition.constant.ruby"}},"comment":"symbols as hash key (1.8 syntax)","match":"(?<!:)(:)(?>[a-zA-Z_]\\\\w*(?>[?!])?)(?=\\\\s*=>)","name":"constant.language.symbol.hashkey.ruby"},{"comment":"everything being a reserved word, not a value and needing a 'end' is a..","match":"(?<!\\\\.)\\\\b(BEGIN|begin|case|class|else|elsif|END|end|ensure|for|if|in|module|rescue|then|unless|until|when|while)\\\\b(?![?!])","name":"keyword.control.ruby"},{"comment":"contextual smart pair support for block parameters","match":"(?<!\\\\.)\\\\bdo\\\\b","name":"keyword.control.start-block.ruby"},{"comment":"contextual smart pair support","match":"(?<={)(\\\\s+)","name":"meta.syntax.ruby.start-block"},{"match":"(?<!\\\\.)\\\\b(alias|alias_method|break|next|redo|retry|return|super|undef|yield)\\\\b(?![?!])|\\\\bdefined\\\\?|\\\\b(block_given|iterator)\\\\?","name":"keyword.control.pseudo-method.ruby"},{"match":"\\\\bnil\\\\b(?![?!])","name":"constant.language.nil.ruby"},{"match":"\\\\b(true|false)\\\\b(?![?!])","name":"constant.language.boolean.ruby"},{"match":"\\\\b(__(FILE|LINE)__)\\\\b(?![?!])","name":"variable.language.ruby"},{"match":"\\\\bself\\\\b(?![?!])","name":"variable.language.self.ruby"},{"comment":" everything being a method but having a special function is a..","match":"\\\\b(initialize|new|loop|include|extend|prepend|raise|fail|attr_reader|attr_writer|attr_accessor|attr|catch|throw|private|private_class_method|module_function|public|public_class_method|protected|refine|using)\\\\b(?![?!])","name":"keyword.other.special-method.ruby"},{"begin":"\\\\b(?<!\\\\.|::)(require|require_relative)\\\\b(?![?!])","captures":{"1":{"name":"keyword.other.special-method.ruby"}},"end":"$|(?=#|})","name":"meta.require.ruby","patterns":[{"include":"$self"}]},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(@)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.instance.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(@@)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.class.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(\\\\$)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.global.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(\\\\$)(!|@|&|\`|'|\\\\+|\\\\d+|~|=|/|\\\\\\\\|,|;|\\\\.|<|>|_|\\\\*|\\\\$|\\\\?|:|\\"|-[0adFiIlpv])","name":"variable.other.readwrite.global.pre-defined.ruby"},{"begin":"\\\\b(ENV)\\\\[","beginCaptures":{"1":{"name":"variable.other.constant.ruby"}},"end":"]","name":"meta.environment-variable.ruby","patterns":[{"include":"$self"}]},{"match":"\\\\b[A-Z]\\\\w*(?=((\\\\.|::)[A-Za-z]|\\\\[))","name":"support.class.ruby"},{"match":"\\\\b((abort|at_exit|autoload|binding|callcc|caller|caller_locations|chomp|chop|eval|exec|exit|fork|format|gets|global_variables|gsub|lambda|load|local_variables|open|p|print|printf|proc|putc|puts|rand|readline|readlines|select|set_trace_func|sleep|spawn|sprintf|srand|sub|syscall|system|test|trace_var|trap|untrace_var|warn)\\\\b(?![?!])|autoload\\\\?|exit!)","name":"support.function.kernel.ruby"},{"match":"\\\\b[_A-Z]\\\\w*\\\\b","name":"variable.other.constant.ruby"},{"begin":"(->)\\\\(","beginCaptures":{"1":{"name":"support.function.kernel.ruby"}},"comment":"Lambda parameters.","end":"\\\\)","patterns":[{"begin":"(?=[&*_a-zA-Z])","end":"(?=[,)])","patterns":[{"include":"#method_parameters"}]},{"include":"#method_parameters"}]},{"begin":"(?=def\\\\b)(?<=^|\\\\s)(def)\\\\s+((?>[a-zA-Z_]\\\\w*(?>\\\\.|::))?(?>[a-zA-Z_]\\\\w*(?>[?!]|=(?!>))?|===?|!=|>[>=]?|<=>|<[<=]?|[%&\`/\\\\|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[]=?))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.def.ruby"},"2":{"name":"entity.name.function.ruby"},"3":{"name":"punctuation.definition.parameters.ruby"}},"comment":"The method pattern comes from the symbol pattern. See there for an explanation.","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.ruby"}},"name":"meta.function.method.with-arguments.ruby","patterns":[{"begin":"(?=[&*_a-zA-Z])","end":"(?=[,)])","patterns":[{"include":"#method_parameters"}]},{"include":"#method_parameters"}]},{"begin":"(?=def\\\\b)(?<=^|\\\\s)(def)\\\\s+((?>[a-zA-Z_]\\\\w*(?>\\\\.|::))?(?>[a-zA-Z_]\\\\w*(?>[?!]|=(?!>))?|===?|!=|>[>=]?|<=>|<[<=]?|[%&\`/\\\\|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[]=?))[ \\\\t](?=[ \\\\t]*[^\\\\s#;])","beginCaptures":{"1":{"name":"keyword.control.def.ruby"},"2":{"name":"entity.name.function.ruby"}},"comment":"same as the previous rule, but without parentheses around the arguments","end":"(?=;)|(?<=[\\\\w\\\\])}\`'\\"!?])(?=\\\\s*#|\\\\s*$)","name":"meta.function.method.with-arguments.ruby","patterns":[{"begin":"(?=[&*_a-zA-Z])","end":"(?=,|;|\\\\s*#|\\\\s*$)","patterns":[{"include":"#method_parameters"}]},{"include":"#method_parameters"}]},{"captures":{"1":{"name":"keyword.control.def.ruby"},"3":{"name":"entity.name.function.ruby"}},"comment":" the optional name is just to catch the def also without a method-name","match":"(?=def\\\\b)(?<=^|\\\\s)(def)\\\\b(\\\\s+((?>[a-zA-Z_]\\\\w*(?>\\\\.|::))?(?>[a-zA-Z_]\\\\w*(?>[?!]|=(?!>))?|===?|!=|>[>=]?|<=>|<[<=]?|[%&\`/\\\\|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[]=?)))?","name":"meta.function.method.without-arguments.ruby"},{"match":"\\\\b([\\\\d](?>_?\\\\d)*(\\\\.(?![^[:space:][:digit:]])(?>_?\\\\d)*)?([eE][-+]?\\\\d(?>_?\\\\d)*)?|0(?:[xX]\\\\h(?>_?\\\\h)*|[oO]?[0-7](?>_?[0-7])*|[bB][01](?>_?[01])*|[dD]\\\\d(?>_?\\\\d)*))\\\\b","name":"constant.numeric.ruby"},{"begin":":'","beginCaptures":{"0":{"name":"punctuation.definition.symbol.begin.ruby"}},"comment":"symbol literal with '' delimiter","end":"'","endCaptures":{"0":{"name":"punctuation.definition.symbol.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\['\\\\\\\\]","name":"constant.character.escape.ruby"}]},{"begin":":\\"","beginCaptures":{"0":{"name":"punctuation.section.symbol.begin.ruby"}},"comment":"symbol literal with \\"\\" delimiter","end":"\\"","endCaptures":{"0":{"name":"punctuation.section.symbol.end.ruby"}},"name":"constant.language.symbol.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"comment":"Needs higher precedence than regular expressions.","match":"(?<!\\\\()/=","name":"keyword.operator.assignment.augmented.ruby"},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"comment":"string literal with '' delimiter","end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.single.ruby","patterns":[{"match":"\\\\\\\\'|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"comment":"string literal with interpolation and \\"\\" delimiter","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.double.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"(?<!\\\\.)\`","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"comment":"execute string (allows for interpolation)","end":"\`","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"(?<![\\\\w)])((/))(?![?*+])(?=(?:\\\\\\\\/|[^/])*+/[eimnosux]*\\\\s*(?:[)\\\\]}#.,?:]|\\\\|\\\\||&&|<=>|=>|==|=~|!~|!=|;|$|if|else|elsif|then|do|end|unless|while|until|or|and)|$)","captures":{"1":{"name":"string.regexp.interpolated.ruby"},"2":{"name":"punctuation.section.regexp.ruby"}},"comment":"regular expression literal with interpolation","contentName":"string.regexp.interpolated.ruby","end":"((/[eimnosux]*))","patterns":[{"include":"#regex_sub"}]},{"begin":"%r{","beginCaptures":{"0":{"name":"punctuation.section.regexp.begin.ruby"}},"end":"}[eimnosux]*","endCaptures":{"0":{"name":"punctuation.section.regexp.end.ruby"}},"name":"string.regexp.interpolated.ruby","patterns":[{"include":"#regex_sub"},{"include":"#nest_curly_r"}]},{"begin":"%r\\\\[","beginCaptures":{"0":{"name":"punctuation.section.regexp.begin.ruby"}},"end":"][eimnosux]*","endCaptures":{"0":{"name":"punctuation.section.regexp.end.ruby"}},"name":"string.regexp.interpolated.ruby","patterns":[{"include":"#regex_sub"},{"include":"#nest_brackets_r"}]},{"begin":"%r\\\\(","beginCaptures":{"0":{"name":"punctuation.section.regexp.begin.ruby"}},"end":"\\\\)[eimnosux]*","endCaptures":{"0":{"name":"punctuation.section.regexp.end.ruby"}},"name":"string.regexp.interpolated.ruby","patterns":[{"include":"#regex_sub"},{"include":"#nest_parens_r"}]},{"begin":"%r<","beginCaptures":{"0":{"name":"punctuation.section.regexp.begin.ruby"}},"end":">[eimnosux]*","endCaptures":{"0":{"name":"punctuation.section.regexp.end.ruby"}},"name":"string.regexp.interpolated.ruby","patterns":[{"include":"#regex_sub"},{"include":"#nest_ltgt_r"}]},{"begin":"%r([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.section.regexp.begin.ruby"}},"end":"\\\\1[eimnosux]*","endCaptures":{"0":{"name":"punctuation.section.regexp.end.ruby"}},"name":"string.regexp.interpolated.ruby","patterns":[{"include":"#regex_sub"}]},{"begin":"%I\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"]","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_brackets_i"}]},{"begin":"%I\\\\(","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_parens_i"}]},{"begin":"%I<","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":">","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_ltgt_i"}]},{"begin":"%I{","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_curly_i"}]},{"begin":"%I([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"%i\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"]","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\]|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_brackets"}]},{"begin":"%i\\\\(","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_parens"}]},{"begin":"%i<","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":">","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\>|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_ltgt"}]},{"begin":"%i{","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\}|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_curly"}]},{"begin":"%i([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"comment":"Cant be named because its not necessarily an escape.","match":"\\\\\\\\."}]},{"begin":"%W\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"]","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_brackets_i"}]},{"begin":"%W\\\\(","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_parens_i"}]},{"begin":"%W<","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":">","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_ltgt_i"}]},{"begin":"%W{","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_curly_i"}]},{"begin":"%W([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"%w\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"]","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\]|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_brackets"}]},{"begin":"%w\\\\(","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_parens"}]},{"begin":"%w<","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":">","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\>|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_ltgt"}]},{"begin":"%w{","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\}|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_curly"}]},{"begin":"%w([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"comment":"Cant be named because its not necessarily an escape.","match":"\\\\\\\\."}]},{"begin":"%[Qx]?\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_parens_i"}]},{"begin":"%[Qx]?\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_brackets_i"}]},{"begin":"%[Qx]?{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_curly_i"}]},{"begin":"%[Qx]?<","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_ltgt_i"}]},{"begin":"%[Qx]([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"%([^\\\\w\\\\s=])","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"%q\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_parens"}]},{"begin":"%q<","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\>|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_ltgt"}]},{"begin":"%q\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\]|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_brackets"}]},{"begin":"%q{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\}|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_curly"}]},{"begin":"%q([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"comment":"Cant be named because its not necessarily an escape.","match":"\\\\\\\\."}]},{"begin":"%s\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.symbol.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.symbol.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_parens"}]},{"begin":"%s<","beginCaptures":{"0":{"name":"punctuation.definition.symbol.begin.ruby"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.symbol.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\>|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_ltgt"}]},{"begin":"%s\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.symbol.begin.ruby"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.symbol.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\]|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_brackets"}]},{"begin":"%s{","beginCaptures":{"0":{"name":"punctuation.definition.symbol.begin.ruby"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.symbol.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\}|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_curly"}]},{"begin":"%s([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.definition.symbol.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.definition.symbol.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"comment":"Cant be named because its not necessarily an escape.","match":"\\\\\\\\."}]},{"captures":{"1":{"name":"punctuation.definition.constant.ruby"}},"comment":"symbols","match":"(?<!:)(:)(?>[$a-zA-Z_]\\\\w*(?>[?!]|=(?![>=]))?|===?|<=>|>[>=]?|<[<=]?|[%&\`/\\\\|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[]=?|@@?[a-zA-Z_]\\\\w*)","name":"constant.language.symbol.ruby"},{"begin":"^=begin","captures":{"0":{"name":"punctuation.definition.comment.ruby"}},"comment":"multiline comments","end":"^=end","name":"comment.block.documentation.ruby"},{"include":"#yard"},{"begin":"(^[ \\\\t]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ruby"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.ruby"}},"end":"\\\\n","name":"comment.line.number-sign.ruby"}]},{"comment":"\\n\\t\\t\\tmatches questionmark-letters.\\n\\n\\t\\t\\texamples (1st alternation = hex):\\n\\t\\t\\t?\\\\x1 ?\\\\x61\\n\\n\\t\\t\\texamples (2nd alternation = octal):\\n\\t\\t\\t?\\\\0 ?\\\\07 ?\\\\017\\n\\n\\t\\t\\texamples (3rd alternation = escaped):\\n\\t\\t\\t?\\\\n ?\\\\b\\n\\n\\t\\t\\texamples (4th alternation = meta-ctrl):\\n\\t\\t\\t?\\\\C-a ?\\\\M-a ?\\\\C-\\\\M-\\\\C-\\\\M-a\\n\\n\\t\\t\\texamples (4th alternation = normal):\\n\\t\\t\\t?a ?A ?0 \\n\\t\\t\\t?* ?\\" ?( \\n\\t\\t\\t?. ?#\\n\\t\\t\\t\\n\\t\\t\\t\\n\\t\\t\\tthe negative lookbehind prevents against matching\\n\\t\\t\\tp(42.tainted?)\\n\\t\\t\\t","match":"(?<!\\\\w)\\\\?(\\\\\\\\(x\\\\h{1,2}(?!\\\\h)\\\\b|0[0-7]{0,2}(?![0-7])\\\\b|[^x0MC])|(\\\\\\\\[MC]-)+\\\\w|[^\\\\s\\\\\\\\])","name":"constant.numeric.ruby"},{"begin":"^__END__\\\\n","captures":{"0":{"name":"string.unquoted.program-block.ruby"}},"comment":"__END__ marker","contentName":"text.plain","end":"(?=not)impossible","patterns":[{"begin":"(?=<?xml|<(?i:html\\\\b)|!DOCTYPE (?i:html\\\\b))","end":"(?=not)impossible","name":"text.html.embedded.ruby","patterns":[{"include":"text.html.basic"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)HTML)\\\\b\\\\1))","comment":"Heredoc with embedded HTML","end":"(?!\\\\G)","name":"meta.embedded.block.html","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)HTML)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"text.html","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"text.html.basic"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)HAML)\\\\b\\\\1))","comment":"Heredoc with embedded HAML","end":"(?!\\\\G)","name":"meta.embedded.block.haml","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)HAML)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"text.haml","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"text.haml"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)XML)\\\\b\\\\1))","comment":"Heredoc with embedded XML","end":"(?!\\\\G)","name":"meta.embedded.block.xml","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)XML)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"text.xml","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"text.xml"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)SQL)\\\\b\\\\1))","comment":"Heredoc with embedded SQL","end":"(?!\\\\G)","name":"meta.embedded.block.sql","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)SQL)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.sql","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.sql"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:GRAPHQL|GQL))\\\\b\\\\1))","comment":"Heredoc with embedded GraphQL","end":"(?!\\\\G)","name":"meta.embedded.block.graphql","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:GRAPHQL|GQL))\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.graphql","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.graphql"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)CSS)\\\\b\\\\1))","comment":"Heredoc with embedded CSS","end":"(?!\\\\G)","name":"meta.embedded.block.css","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)CSS)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.css","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.css"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)CPP)\\\\b\\\\1))","comment":"Heredoc with embedded C++","end":"(?!\\\\G)","name":"meta.embedded.block.cpp","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)CPP)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.cpp","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.cpp"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)C)\\\\b\\\\1))","comment":"Heredoc with embedded C","end":"(?!\\\\G)","name":"meta.embedded.block.c","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)C)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.c","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.c"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:JS|JAVASCRIPT))\\\\b\\\\1))","comment":"Heredoc with embedded Javascript","end":"(?!\\\\G)","name":"meta.embedded.block.js","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:JS|JAVASCRIPT))\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.js","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.js"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)JQUERY)\\\\b\\\\1))","comment":"Heredoc with embedded jQuery Javascript","end":"(?!\\\\G)","name":"meta.embedded.block.js.jquery","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)JQUERY)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.js.jquery","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.js.jquery"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:SH|SHELL))\\\\b\\\\1))","comment":"Heredoc with embedded Shell","end":"(?!\\\\G)","name":"meta.embedded.block.shell","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:SH|SHELL))\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.shell","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.shell"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)LUA)\\\\b\\\\1))","comment":"Heredoc with embedded Lua","end":"(?!\\\\G)","name":"meta.embedded.block.lua","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)LUA)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.lua","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.lua"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)RUBY)\\\\b\\\\1))","comment":"Heredoc with embedded Ruby","end":"(?!\\\\G)","name":"meta.embedded.block.ruby","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)RUBY)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.ruby","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.ruby"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:YAML|YML))\\\\b\\\\1))","comment":"Heredoc with embedded YAML","end":"(?!\\\\G)","name":"meta.embedded.block.yaml","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:YAML|YML))\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.yaml","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.yaml"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)SLIM)\\\\b\\\\1))","comment":"Heredoc with embedded Slim","end":"(?!\\\\G)","name":"meta.embedded.block.slim","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)SLIM)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"text.slim","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"text.slim"},{"include":"#escaped_char"}]}]},{"begin":"(?>=\\\\s*<<([\\"'\`]?)(\\\\w+)\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"^\\\\2$","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"(?>((<<[-~]([\\"'\`]?)(\\\\w+)\\\\3,\\\\s?)*<<[-~]([\\"'\`]?)(\\\\w+)\\\\5))(.*)","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.ruby"},"7":{"patterns":[{"include":"source.ruby"}]}},"comment":"heredoc with multiple inputs and indented terminator","end":"^\\\\s*\\\\6$","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"(?<={|{\\\\s|[^A-Za-z0-9_:@$]do|^do|[^A-Za-z0-9_:@$]do\\\\s|^do\\\\s)(\\\\|)","captures":{"1":{"name":"punctuation.separator.variable.ruby"}},"end":"(?<!\\\\|)(\\\\|)(?!\\\\|)","name":"meta.block.parameters.ruby","patterns":[{"begin":"(?![\\\\s,|(])","end":"(?=,|\\\\|\\\\s*)","patterns":[{"captures":{"1":{"name":"storage.type.variable.ruby"},"2":{"name":"variable.other.block.ruby"},"3":{"name":"variable.other.block.unused.ruby variable.other.constant.ruby"}},"match":"\\\\G([&*]?)([a-zA-Z][\\\\w_]*)|(_[\\\\w_]*)"}]},{"match":",","name":"punctuation.separator.variable.ruby"}]},{"match":"=>","name":"punctuation.separator.key-value"},{"match":"->","name":"support.function.kernel.ruby"},{"match":"<<=|%=|&{1,2}=|\\\\*=|\\\\*\\\\*=|\\\\+=|-=|\\\\^=|\\\\|{1,2}=|<<","name":"keyword.operator.assignment.augmented.ruby"},{"match":"<=>|<(?!<|=)|>(?!<|=|>)|<=|>=|===|==|=~|!=|!~|(?<=[ \\\\t])\\\\?","name":"keyword.operator.comparison.ruby"},{"match":"(?<!\\\\.)\\\\b(and|not|or)\\\\b(?![?!])","name":"keyword.operator.logical.ruby"},{"match":"(?<=^|[ \\\\t!])!|&&|\\\\|\\\\||\\\\^","name":"keyword.operator.logical.ruby"},{"captures":{"1":{"name":"keyword.operator.logical.ruby"}},"comment":"Safe navigation operator","match":"(&\\\\.)\\\\s*(?![A-Z])"},{"match":"(%|&|\\\\*\\\\*|\\\\*|\\\\+|-|/)","name":"keyword.operator.arithmetic.ruby"},{"match":"=","name":"keyword.operator.assignment.ruby"},{"match":"\\\\||~|>>","name":"keyword.operator.other.ruby"},{"match":";","name":"punctuation.separator.statement.ruby"},{"match":",","name":"punctuation.separator.object.ruby"},{"captures":{"1":{"name":"punctuation.separator.namespace.ruby"}},"comment":"Mark as namespace separator if double colons followed by capital letter","match":"(::)\\\\s*(?=[A-Z])"},{"captures":{"1":{"name":"punctuation.separator.method.ruby"}},"comment":"Mark as method separator if double colons not followed by capital letter","match":"(\\\\.|::)\\\\s*(?![A-Z])"},{"comment":"Must come after method and constant separators to prefer double colons","match":":","name":"punctuation.separator.other.ruby"},{"match":"{","name":"punctuation.section.scope.begin.ruby"},{"match":"}","name":"punctuation.section.scope.end.ruby"},{"match":"\\\\[","name":"punctuation.section.array.begin.ruby"},{"match":"]","name":"punctuation.section.array.end.ruby"},{"match":"\\\\(|\\\\)","name":"punctuation.section.function.ruby"},{"begin":"(?<=[^\\\\.]\\\\.|::)(?=[a-zA-Z][a-zA-Z0-9_!?]*[^a-zA-Z0-9_!?])","end":"(?<=[a-zA-Z0-9_!?])(?=[^a-zA-Z0-9_!?])","name":"meta.function-call.ruby","patterns":[{"match":"([a-zA-Z][a-zA-Z0-9_!?]*)(?=[^a-zA-Z0-9_!?])","name":"entity.name.function.ruby"}]},{"begin":"([a-zA-Z]\\\\w*[!?]?)(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.ruby"},"2":{"name":"punctuation.section.function.ruby"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.function.ruby"}},"name":"meta.function-call.ruby","patterns":[{"include":"$self"}]}],"repository":{"escaped_char":{"match":"\\\\\\\\(?:[0-7]{1,3}|x[\\\\da-fA-F]{1,2}|.)","name":"constant.character.escape.ruby"},"heredoc":{"begin":"^<<[-~]?\\\\w+","end":"$","patterns":[{"include":"$self"}]},"interpolated_ruby":{"patterns":[{"begin":"#{","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.ruby"}},"contentName":"source.ruby","end":"}","endCaptures":{"0":{"name":"punctuation.section.embedded.end.ruby"}},"name":"meta.embedded.line.ruby","patterns":[{"include":"#nest_curly_and_self"},{"include":"$self"}]},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(#@)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.instance.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(#@@)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.class.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(#\\\\$)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.global.ruby"}]},"method_parameters":{"patterns":[{"include":"#parens"},{"include":"#braces"},{"include":"#brackets"},{"include":"#params"},{"include":"$self"}],"repository":{"braces":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.scope.begin.ruby"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.scope.end.ruby"}},"patterns":[{"include":"#parens"},{"include":"#braces"},{"include":"#brackets"},{"include":"$self"}]},"brackets":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"patterns":[{"include":"#parens"},{"include":"#braces"},{"include":"#brackets"},{"include":"$self"}]},"params":{"captures":{"1":{"name":"storage.type.variable.ruby"},"2":{"name":"constant.other.symbol.hashkey.parameter.function.ruby"},"3":{"name":"punctuation.definition.constant.ruby"},"4":{"name":"variable.parameter.function.ruby"}},"match":"\\\\G(&|\\\\*\\\\*?)?(?:([_a-zA-Z]\\\\w*[?!]?(:))|([_a-zA-Z]\\\\w*))"},"parens":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.function.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.ruby"}},"patterns":[{"include":"#parens"},{"include":"#braces"},{"include":"#brackets"},{"include":"$self"}]}}},"nest_brackets":{"begin":"\\\\[","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"]","patterns":[{"include":"#nest_brackets"}]},"nest_brackets_i":{"begin":"\\\\[","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"]","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_brackets_i"}]},"nest_brackets_r":{"begin":"\\\\[","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"]","patterns":[{"include":"#regex_sub"},{"include":"#nest_brackets_r"}]},"nest_curly":{"begin":"{","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"}","patterns":[{"include":"#nest_curly"}]},"nest_curly_and_self":{"patterns":[{"begin":"{","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"}","patterns":[{"include":"#nest_curly_and_self"}]},{"include":"$self"}]},"nest_curly_i":{"begin":"{","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"}","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_curly_i"}]},"nest_curly_r":{"begin":"{","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"}","patterns":[{"include":"#regex_sub"},{"include":"#nest_curly_r"}]},"nest_ltgt":{"begin":"<","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":">","patterns":[{"include":"#nest_ltgt"}]},"nest_ltgt_i":{"begin":"<","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":">","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_ltgt_i"}]},"nest_ltgt_r":{"begin":"<","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":">","patterns":[{"include":"#regex_sub"},{"include":"#nest_ltgt_r"}]},"nest_parens":{"begin":"\\\\(","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"\\\\)","patterns":[{"include":"#nest_parens"}]},"nest_parens_i":{"begin":"\\\\(","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"\\\\)","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_parens_i"}]},"nest_parens_r":{"begin":"\\\\(","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"\\\\)","patterns":[{"include":"#regex_sub"},{"include":"#nest_parens_r"}]},"regex_sub":{"patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"captures":{"1":{"name":"punctuation.definition.arbitrary-repetition.ruby"},"3":{"name":"punctuation.definition.arbitrary-repetition.ruby"}},"match":"({)\\\\d+(,\\\\d+)?(})","name":"string.regexp.arbitrary-repetition.ruby"},{"begin":"\\\\[(?:\\\\^?])?","captures":{"0":{"name":"punctuation.definition.character-class.ruby"}},"end":"]","name":"string.regexp.character-class.ruby","patterns":[{"include":"#escaped_char"}]},{"begin":"\\\\(\\\\?#","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.comment.end.ruby"}},"name":"comment.line.number-sign.ruby","patterns":[{"include":"#escaped_char"}]},{"begin":"\\\\(","captures":{"0":{"name":"punctuation.definition.group.ruby"}},"end":"\\\\)","name":"string.regexp.group.ruby","patterns":[{"include":"#regex_sub"}]},{"begin":"(?<=^|\\\\s)(#)\\\\s(?=[[a-zA-Z0-9,. \\\\t?!-][^\\\\x{00}-\\\\x{7F}]]*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.ruby"}},"comment":"We are restrictive in what we allow to go after the comment character to avoid false positives, since the availability of comments depend on regexp flags.","end":"$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.comment.ruby"}},"name":"comment.line.number-sign.ruby"}]},"yard":{"patterns":[{"include":"#yard_comment"},{"include":"#yard_param_types"},{"include":"#yard_option"},{"include":"#yard_tag"},{"include":"#yard_types"},{"include":"#yard_directive"},{"include":"#yard_see"},{"include":"#yard_macro_attribute"}]},"yard_comment":{"begin":"^(\\\\s*)(#)(\\\\s*)(@)(abstract|api|author|deprecated|example|macro|note|overload|since|todo|version)(?=\\\\s|$)","beginCaptures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"}},"comment":"For YARD tags that follow the tag-comment pattern","contentName":"comment.line.string.yard.ruby","end":"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)","name":"comment.line.number-sign.ruby","patterns":[{"include":"#yard"},{"include":"#yard_continuation"}]},"yard_continuation":{"match":"^\\\\s*#","name":"punctuation.definition.comment.ruby"},"yard_directive":{"begin":"^(\\\\s*)(#)(\\\\s*)(@!)(endgroup|group|method|parse|scope|visibility)(\\\\s+((\\\\[).+(])))?(?=\\\\s)","beginCaptures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"},"7":{"name":"comment.line.type.yard.ruby"},"8":{"name":"comment.line.punctuation.yard.ruby"},"9":{"name":"comment.line.punctuation.yard.ruby"}},"comment":"For YARD directives","contentName":"comment.line.string.yard.ruby","end":"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)","name":"comment.line.number-sign.ruby","patterns":[{"include":"#yard"},{"include":"#yard_continuation"}]},"yard_macro_attribute":{"begin":"^(\\\\s*)(#)(\\\\s*)(@!)(attribute|macro)(\\\\s+((\\\\[).+(])))?(?=\\\\s)(\\\\s+([a-z_]\\\\w*:?))?","beginCaptures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"},"7":{"name":"comment.line.type.yard.ruby"},"8":{"name":"comment.line.punctuation.yard.ruby"},"9":{"name":"comment.line.punctuation.yard.ruby"},"11":{"name":"comment.line.parameter.yard.ruby"}},"comment":"separate rule for attribute and macro tags because name goes after []","contentName":"comment.line.string.yard.ruby","end":"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)","name":"comment.line.number-sign.ruby","patterns":[{"include":"#yard"},{"include":"#yard_continuation"}]},"yard_option":{"begin":"^(\\\\s*)(#)(\\\\s*)(@)(option)(?=\\\\s)(?>\\\\s+([a-z_]\\\\w*:?))?(?>\\\\s+((\\\\[).+(])))?(?>\\\\s+((\\\\S*)))?(?>\\\\s+((\\\\().+(\\\\))))?","beginCaptures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"},"6":{"name":"comment.line.parameter.yard.ruby"},"7":{"name":"comment.line.type.yard.ruby"},"8":{"name":"comment.line.punctuation.yard.ruby"},"9":{"name":"comment.line.punctuation.yard.ruby"},"10":{"name":"comment.line.keyword.yard.ruby"},"11":{"name":"comment.line.hashkey.yard.ruby"},"12":{"name":"comment.line.defaultvalue.yard.ruby"},"13":{"name":"comment.line.punctuation.yard.ruby"},"14":{"name":"comment.line.punctuation.yard.ruby"}},"comment":"For YARD option tag that follow the tag-name-types-key-(value)-description pattern","contentName":"comment.line.string.yard.ruby","end":"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)","name":"comment.line.number-sign.ruby","patterns":[{"include":"#yard"},{"include":"#yard_continuation"}]},"yard_param_types":{"begin":"^(\\\\s*)(#)(\\\\s*)(@)(attr|attr_reader|attr_writer|yieldparam|param)(?=\\\\s)(?>\\\\s+(?>([a-z_]\\\\w*:?)|((\\\\[).+(]))))?(?>\\\\s+(?>((\\\\[).+(]))|([a-z_]\\\\w*:?)))?","beginCaptures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"},"6":{"name":"comment.line.parameter.yard.ruby"},"7":{"name":"comment.line.type.yard.ruby"},"8":{"name":"comment.line.punctuation.yard.ruby"},"9":{"name":"comment.line.punctuation.yard.ruby"},"10":{"name":"comment.line.type.yard.ruby"},"11":{"name":"comment.line.punctuation.yard.ruby"},"12":{"name":"comment.line.punctuation.yard.ruby"},"13":{"name":"comment.line.parameter.yard.ruby"}},"comment":"For YARD tags that follow the tag-name-types-description or tag-types-name-description pattern","contentName":"comment.line.string.yard.ruby","end":"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)","name":"comment.line.number-sign.ruby","patterns":[{"include":"#yard"},{"include":"#yard_continuation"}]},"yard_see":{"begin":"^(\\\\s*)(#)(\\\\s*)(@)(see)(?=\\\\s)(\\\\s+(.+?))?(?=\\\\s|$)","beginCaptures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"},"7":{"name":"comment.line.parameter.yard.ruby"}},"comment":"separate rule for @see because name could contain url","contentName":"comment.line.string.yard.ruby","end":"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)","name":"comment.line.number-sign.ruby","patterns":[{"include":"#yard"},{"include":"#yard_continuation"}]},"yard_tag":{"captures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"}},"comment":"For YARD tags that are just the tag","match":"^(\\\\s*)(#)(\\\\s*)(@)(private)$","name":"comment.line.number-sign.ruby"},"yard_types":{"begin":"^(\\\\s*)(#)(\\\\s*)(@)(raise|return|yield(?:return)?)(?=\\\\s)(\\\\s+((\\\\[).+(])))?","beginCaptures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"},"7":{"name":"comment.line.type.yard.ruby"},"8":{"name":"comment.line.punctuation.yard.ruby"},"9":{"name":"comment.line.punctuation.yard.ruby"}},"comment":"For YARD tags that follow the tag-types-comment pattern","contentName":"comment.line.string.yard.ruby","end":"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)","name":"comment.line.number-sign.ruby","patterns":[{"include":"#yard"},{"include":"#yard_continuation"}]}},"scopeName":"source.ruby","embeddedLangs":["html","haml","xml","sql","graphql","css","cpp","c","javascript","shellscript","lua","yaml"],"aliases":["rb"]}`)),L=[...e,...n,...t,...a,...r,...i,...u,...c,...o,...s,...d,...m,b];export{L as default};
1
+ import e from"./html-BfEhAfys.js";import n from"./haml-BsJe1mlH.js";import t from"./xml-D2mywr7C.js";import a from"./sql-DWijR-2F.js";import r from"./graphql-CsbcjAOe.js";import i from"./css-DsSsXWQB.js";import u from"./cpp-CZnLxZIX.js";import c from"./c-C7geQHiD.js";import o from"./javascript-C1WZzX5w.js";import s from"./shellscript-D3bMYZAJ.js";import d from"./lua-DanyZPH_.js";import m from"./yaml-CcrPW8Jr.js";import"./java-BOuFdpVK.js";import"./typescript-ChR4GJfA.js";import"./jsx-CKOz0mFu.js";import"./tsx-CvLnrXoc.js";import"./regexp-CZXE-O4g.js";import"./glsl-B5tAdZD8.js";const b=Object.freeze(JSON.parse(`{"displayName":"Ruby","name":"ruby","patterns":[{"captures":{"1":{"name":"keyword.control.class.ruby"},"2":{"name":"entity.name.type.class.ruby"},"5":{"name":"punctuation.separator.namespace.ruby"},"7":{"name":"punctuation.separator.inheritance.ruby"},"8":{"name":"entity.other.inherited-class.ruby"},"11":{"name":"punctuation.separator.namespace.ruby"}},"comment":"class Namespace::ClassName < OtherNamespace::OtherClassName","match":"\\b(class)\\\\s+(([a-zA-Z0-9_]+)((::)[a-zA-Z0-9_]+)*)\\\\s*((<)\\\\s*(([a-zA-Z0-9_]+)((::)[a-zA-Z0-9_]+)*))?","name":"meta.class.ruby"},{"captures":{"1":{"name":"keyword.control.module.ruby"},"2":{"name":"entity.name.type.module.ruby"},"5":{"name":"punctuation.separator.namespace.ruby"}},"match":"\\b(module)\\\\s+(([a-zA-Z0-9_]+)((::)[a-zA-Z0-9_]+)*)","name":"meta.module.ruby"},{"captures":{"1":{"name":"keyword.control.class.ruby"},"2":{"name":"punctuation.separator.inheritance.ruby"}},"match":"\\b(class)\\\\s*(<<)\\\\s*","name":"meta.class.ruby"},{"comment":"else if is a common mistake carried over from other languages. it works if you put in a second end, but it’s never what you want.","match":"(?<!\\\\.)\\\\belse(\\\\s)+if\\\\b","name":"invalid.deprecated.ruby"},{"captures":{"1":{"name":"variable.ruby"},"3":{"name":"keyword.operator.assignment.augmented.ruby"}},"comment":"A local variable and/or assignment","match":"^\\\\s*([a-z]([A-Za-z0-9_])*)\\\\s*((&&|\\\\|\\\\|)=)"},{"captures":{"1":{"name":"keyword.control.ruby"},"3":{"name":"variable.ruby"},"5":{"name":"keyword.operator.assignment.augmented.ruby"}},"comment":"A local variable and/or assignment in a condition","match":"(?<!\\\\.)\\\\b(case|if|elsif|unless|until|while)\\\\b\\\\s*(\\\\()*?\\\\s*([a-z]([A-Za-z0-9_])*)\\\\s*((&&|\\\\|\\\\|)=)"},{"captures":{"1":{"name":"variable.ruby"},"3":{"name":"keyword.operator.assignment.augmented.ruby"}},"comment":"A local variable operation assignment (+=, -=, *=, /=)","match":"^\\\\s*([a-z]([A-Za-z0-9_])*)\\\\s*((\\\\+|\\\\*|-|\\\\/|%|\\\\*\\\\*|&|\\\\||\\\\^|<<|>>)=)"},{"captures":{"1":{"name":"keyword.control.ruby"},"3":{"name":"variable.ruby"},"5":{"name":"keyword.operator.assignment.augmented.ruby"}},"comment":"A local variable operation assignment in a condition","match":"(?<!\\\\.)\\\\b(case|if|elsif|unless|until|while)\\\\b\\\\s*(\\\\()*?\\\\s*([a-z]([A-Za-z0-9_])*)\\\\s*((\\\\+|\\\\*|-|\\\\/|%|\\\\*\\\\*|&|\\\\||\\\\^|<<|>>)=)"},{"captures":{"1":{"name":"variable.ruby"}},"comment":"A local variable assignment","match":"^\\\\s*([a-z]([A-Za-z0-9_])*)\\\\s*=[^=>]"},{"captures":{"1":{"name":"keyword.control.ruby"},"3":{"name":"variable.ruby"}},"comment":"A local variable assignment in a condition","match":"(?<!\\\\.)\\\\b(case|if|elsif|unless|until|while)\\\\b\\\\s*(\\\\()*?\\\\s*([a-z]([A-Za-z0-9_])*)\\\\s*=[^=>]"},{"captures":{"1":{"name":"punctuation.definition.constant.hashkey.ruby"}},"comment":"symbols as hash key (1.9 syntax)","match":"(?>[a-zA-Z_]\\\\w*(?>[?!])?)(:)(?!:)","name":"constant.language.symbol.hashkey.ruby"},{"captures":{"1":{"name":"punctuation.definition.constant.ruby"}},"comment":"symbols as hash key (1.8 syntax)","match":"(?<!:)(:)(?>[a-zA-Z_]\\\\w*(?>[?!])?)(?=\\\\s*=>)","name":"constant.language.symbol.hashkey.ruby"},{"comment":"everything being a reserved word, not a value and needing a 'end' is a..","match":"(?<!\\\\.)\\\\b(BEGIN|begin|case|class|else|elsif|END|end|ensure|for|if|in|module|rescue|then|unless|until|when|while)\\\\b(?![?!])","name":"keyword.control.ruby"},{"comment":"contextual smart pair support for block parameters","match":"(?<!\\\\.)\\\\bdo\\\\b","name":"keyword.control.start-block.ruby"},{"comment":"contextual smart pair support","match":"(?<={)(\\\\s+)","name":"meta.syntax.ruby.start-block"},{"match":"(?<!\\\\.)\\\\b(alias|alias_method|break|next|redo|retry|return|super|undef|yield)\\\\b(?![?!])|\\\\bdefined\\\\?|\\\\b(block_given|iterator)\\\\?","name":"keyword.control.pseudo-method.ruby"},{"match":"\\\\bnil\\\\b(?![?!])","name":"constant.language.nil.ruby"},{"match":"\\\\b(true|false)\\\\b(?![?!])","name":"constant.language.boolean.ruby"},{"match":"\\\\b(__(FILE|LINE)__)\\\\b(?![?!])","name":"variable.language.ruby"},{"match":"\\\\bself\\\\b(?![?!])","name":"variable.language.self.ruby"},{"comment":" everything being a method but having a special function is a..","match":"\\\\b(initialize|new|loop|include|extend|prepend|raise|fail|attr_reader|attr_writer|attr_accessor|attr|catch|throw|private|private_class_method|module_function|public|public_class_method|protected|refine|using)\\\\b(?![?!])","name":"keyword.other.special-method.ruby"},{"begin":"\\\\b(?<!\\\\.|::)(require|require_relative)\\\\b(?![?!])","captures":{"1":{"name":"keyword.other.special-method.ruby"}},"end":"$|(?=#|})","name":"meta.require.ruby","patterns":[{"include":"$self"}]},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(@)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.instance.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(@@)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.class.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(\\\\$)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.global.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(\\\\$)(!|@|&|\`|'|\\\\+|\\\\d+|~|=|/|\\\\\\\\|,|;|\\\\.|<|>|_|\\\\*|\\\\$|\\\\?|:|\\"|-[0adFiIlpv])","name":"variable.other.readwrite.global.pre-defined.ruby"},{"begin":"\\\\b(ENV)\\\\[","beginCaptures":{"1":{"name":"variable.other.constant.ruby"}},"end":"]","name":"meta.environment-variable.ruby","patterns":[{"include":"$self"}]},{"match":"\\\\b[A-Z]\\\\w*(?=((\\\\.|::)[A-Za-z]|\\\\[))","name":"support.class.ruby"},{"match":"\\\\b((abort|at_exit|autoload|binding|callcc|caller|caller_locations|chomp|chop|eval|exec|exit|fork|format|gets|global_variables|gsub|lambda|load|local_variables|open|p|print|printf|proc|putc|puts|rand|readline|readlines|select|set_trace_func|sleep|spawn|sprintf|srand|sub|syscall|system|test|trace_var|trap|untrace_var|warn)\\\\b(?![?!])|autoload\\\\?|exit!)","name":"support.function.kernel.ruby"},{"match":"\\\\b[_A-Z]\\\\w*\\\\b","name":"variable.other.constant.ruby"},{"begin":"(->)\\\\(","beginCaptures":{"1":{"name":"support.function.kernel.ruby"}},"comment":"Lambda parameters.","end":"\\\\)","patterns":[{"begin":"(?=[&*_a-zA-Z])","end":"(?=[,)])","patterns":[{"include":"#method_parameters"}]},{"include":"#method_parameters"}]},{"begin":"(?=def\\\\b)(?<=^|\\\\s)(def)\\\\s+((?>[a-zA-Z_]\\\\w*(?>\\\\.|::))?(?>[a-zA-Z_]\\\\w*(?>[?!]|=(?!>))?|===?|!=|>[>=]?|<=>|<[<=]?|[%&\`/\\\\|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[]=?))\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.def.ruby"},"2":{"name":"entity.name.function.ruby"},"3":{"name":"punctuation.definition.parameters.ruby"}},"comment":"The method pattern comes from the symbol pattern. See there for an explanation.","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.ruby"}},"name":"meta.function.method.with-arguments.ruby","patterns":[{"begin":"(?=[&*_a-zA-Z])","end":"(?=[,)])","patterns":[{"include":"#method_parameters"}]},{"include":"#method_parameters"}]},{"begin":"(?=def\\\\b)(?<=^|\\\\s)(def)\\\\s+((?>[a-zA-Z_]\\\\w*(?>\\\\.|::))?(?>[a-zA-Z_]\\\\w*(?>[?!]|=(?!>))?|===?|!=|>[>=]?|<=>|<[<=]?|[%&\`/\\\\|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[]=?))[ \\\\t](?=[ \\\\t]*[^\\\\s#;])","beginCaptures":{"1":{"name":"keyword.control.def.ruby"},"2":{"name":"entity.name.function.ruby"}},"comment":"same as the previous rule, but without parentheses around the arguments","end":"(?=;)|(?<=[\\\\w\\\\])}\`'\\"!?])(?=\\\\s*#|\\\\s*$)","name":"meta.function.method.with-arguments.ruby","patterns":[{"begin":"(?=[&*_a-zA-Z])","end":"(?=,|;|\\\\s*#|\\\\s*$)","patterns":[{"include":"#method_parameters"}]},{"include":"#method_parameters"}]},{"captures":{"1":{"name":"keyword.control.def.ruby"},"3":{"name":"entity.name.function.ruby"}},"comment":" the optional name is just to catch the def also without a method-name","match":"(?=def\\\\b)(?<=^|\\\\s)(def)\\\\b(\\\\s+((?>[a-zA-Z_]\\\\w*(?>\\\\.|::))?(?>[a-zA-Z_]\\\\w*(?>[?!]|=(?!>))?|===?|!=|>[>=]?|<=>|<[<=]?|[%&\`/\\\\|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[]=?)))?","name":"meta.function.method.without-arguments.ruby"},{"match":"\\\\b([\\\\d](?>_?\\\\d)*(\\\\.(?![^[:space:][:digit:]])(?>_?\\\\d)*)?([eE][-+]?\\\\d(?>_?\\\\d)*)?|0(?:[xX]\\\\h(?>_?\\\\h)*|[oO]?[0-7](?>_?[0-7])*|[bB][01](?>_?[01])*|[dD]\\\\d(?>_?\\\\d)*))\\\\b","name":"constant.numeric.ruby"},{"begin":":'","beginCaptures":{"0":{"name":"punctuation.definition.symbol.begin.ruby"}},"comment":"symbol literal with '' delimiter","end":"'","endCaptures":{"0":{"name":"punctuation.definition.symbol.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\['\\\\\\\\]","name":"constant.character.escape.ruby"}]},{"begin":":\\"","beginCaptures":{"0":{"name":"punctuation.section.symbol.begin.ruby"}},"comment":"symbol literal with \\"\\" delimiter","end":"\\"","endCaptures":{"0":{"name":"punctuation.section.symbol.end.ruby"}},"name":"constant.language.symbol.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"comment":"Needs higher precedence than regular expressions.","match":"(?<!\\\\()/=","name":"keyword.operator.assignment.augmented.ruby"},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"comment":"string literal with '' delimiter","end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.single.ruby","patterns":[{"match":"\\\\\\\\'|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"comment":"string literal with interpolation and \\"\\" delimiter","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.double.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"(?<!\\\\.)\`","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"comment":"execute string (allows for interpolation)","end":"\`","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"(?<![\\\\w)])((/))(?![?*+])(?=(?:\\\\\\\\/|[^/])*+/[eimnosux]*\\\\s*(?:[)\\\\]}#.,?:]|\\\\|\\\\||&&|<=>|=>|==|=~|!~|!=|;|$|if|else|elsif|then|do|end|unless|while|until|or|and)|$)","captures":{"1":{"name":"string.regexp.interpolated.ruby"},"2":{"name":"punctuation.section.regexp.ruby"}},"comment":"regular expression literal with interpolation","contentName":"string.regexp.interpolated.ruby","end":"((/[eimnosux]*))","patterns":[{"include":"#regex_sub"}]},{"begin":"%r{","beginCaptures":{"0":{"name":"punctuation.section.regexp.begin.ruby"}},"end":"}[eimnosux]*","endCaptures":{"0":{"name":"punctuation.section.regexp.end.ruby"}},"name":"string.regexp.interpolated.ruby","patterns":[{"include":"#regex_sub"},{"include":"#nest_curly_r"}]},{"begin":"%r\\\\[","beginCaptures":{"0":{"name":"punctuation.section.regexp.begin.ruby"}},"end":"][eimnosux]*","endCaptures":{"0":{"name":"punctuation.section.regexp.end.ruby"}},"name":"string.regexp.interpolated.ruby","patterns":[{"include":"#regex_sub"},{"include":"#nest_brackets_r"}]},{"begin":"%r\\\\(","beginCaptures":{"0":{"name":"punctuation.section.regexp.begin.ruby"}},"end":"\\\\)[eimnosux]*","endCaptures":{"0":{"name":"punctuation.section.regexp.end.ruby"}},"name":"string.regexp.interpolated.ruby","patterns":[{"include":"#regex_sub"},{"include":"#nest_parens_r"}]},{"begin":"%r<","beginCaptures":{"0":{"name":"punctuation.section.regexp.begin.ruby"}},"end":">[eimnosux]*","endCaptures":{"0":{"name":"punctuation.section.regexp.end.ruby"}},"name":"string.regexp.interpolated.ruby","patterns":[{"include":"#regex_sub"},{"include":"#nest_ltgt_r"}]},{"begin":"%r([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.section.regexp.begin.ruby"}},"end":"\\\\1[eimnosux]*","endCaptures":{"0":{"name":"punctuation.section.regexp.end.ruby"}},"name":"string.regexp.interpolated.ruby","patterns":[{"include":"#regex_sub"}]},{"begin":"%I\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"]","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_brackets_i"}]},{"begin":"%I\\\\(","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_parens_i"}]},{"begin":"%I<","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":">","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_ltgt_i"}]},{"begin":"%I{","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_curly_i"}]},{"begin":"%I([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"%i\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"]","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\]|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_brackets"}]},{"begin":"%i\\\\(","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_parens"}]},{"begin":"%i<","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":">","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\>|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_ltgt"}]},{"begin":"%i{","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\}|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_curly"}]},{"begin":"%i([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"comment":"Cant be named because its not necessarily an escape.","match":"\\\\\\\\."}]},{"begin":"%W\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"]","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_brackets_i"}]},{"begin":"%W\\\\(","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_parens_i"}]},{"begin":"%W<","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":">","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_ltgt_i"}]},{"begin":"%W{","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_curly_i"}]},{"begin":"%W([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"%w\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"]","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\]|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_brackets"}]},{"begin":"%w\\\\(","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_parens"}]},{"begin":"%w<","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":">","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\>|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_ltgt"}]},{"begin":"%w{","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\}|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_curly"}]},{"begin":"%w([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"comment":"Cant be named because its not necessarily an escape.","match":"\\\\\\\\."}]},{"begin":"%[Qx]?\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_parens_i"}]},{"begin":"%[Qx]?\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_brackets_i"}]},{"begin":"%[Qx]?{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_curly_i"}]},{"begin":"%[Qx]?<","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_ltgt_i"}]},{"begin":"%[Qx]([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"%([^\\\\w\\\\s=])","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.interpolated.ruby","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"%q\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_parens"}]},{"begin":"%q<","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\>|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_ltgt"}]},{"begin":"%q\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\]|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_brackets"}]},{"begin":"%q{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"match":"\\\\\\\\}|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_curly"}]},{"begin":"%q([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.quoted.other.ruby","patterns":[{"comment":"Cant be named because its not necessarily an escape.","match":"\\\\\\\\."}]},{"begin":"%s\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.symbol.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.symbol.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\\\\\)|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_parens"}]},{"begin":"%s<","beginCaptures":{"0":{"name":"punctuation.definition.symbol.begin.ruby"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.symbol.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\>|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_ltgt"}]},{"begin":"%s\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.symbol.begin.ruby"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.symbol.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\]|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_brackets"}]},{"begin":"%s{","beginCaptures":{"0":{"name":"punctuation.definition.symbol.begin.ruby"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.symbol.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"match":"\\\\\\\\}|\\\\\\\\\\\\\\\\","name":"constant.character.escape.ruby"},{"include":"#nest_curly"}]},{"begin":"%s([^\\\\w])","beginCaptures":{"0":{"name":"punctuation.definition.symbol.begin.ruby"}},"end":"\\\\1","endCaptures":{"0":{"name":"punctuation.definition.symbol.end.ruby"}},"name":"constant.language.symbol.ruby","patterns":[{"comment":"Cant be named because its not necessarily an escape.","match":"\\\\\\\\."}]},{"captures":{"1":{"name":"punctuation.definition.constant.ruby"}},"comment":"symbols","match":"(?<!:)(:)(?>[$a-zA-Z_]\\\\w*(?>[?!]|=(?![>=]))?|===?|<=>|>[>=]?|<[<=]?|[%&\`/\\\\|]|\\\\*\\\\*?|=?~|[-+]@?|\\\\[]=?|@@?[a-zA-Z_]\\\\w*)","name":"constant.language.symbol.ruby"},{"begin":"^=begin","captures":{"0":{"name":"punctuation.definition.comment.ruby"}},"comment":"multiline comments","end":"^=end","name":"comment.block.documentation.ruby"},{"include":"#yard"},{"begin":"(^[ \\\\t]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ruby"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.ruby"}},"end":"\\\\n","name":"comment.line.number-sign.ruby"}]},{"comment":"\\n\\t\\t\\tmatches questionmark-letters.\\n\\n\\t\\t\\texamples (1st alternation = hex):\\n\\t\\t\\t?\\\\x1 ?\\\\x61\\n\\n\\t\\t\\texamples (2nd alternation = octal):\\n\\t\\t\\t?\\\\0 ?\\\\07 ?\\\\017\\n\\n\\t\\t\\texamples (3rd alternation = escaped):\\n\\t\\t\\t?\\\\n ?\\\\b\\n\\n\\t\\t\\texamples (4th alternation = meta-ctrl):\\n\\t\\t\\t?\\\\C-a ?\\\\M-a ?\\\\C-\\\\M-\\\\C-\\\\M-a\\n\\n\\t\\t\\texamples (4th alternation = normal):\\n\\t\\t\\t?a ?A ?0 \\n\\t\\t\\t?* ?\\" ?( \\n\\t\\t\\t?. ?#\\n\\t\\t\\t\\n\\t\\t\\t\\n\\t\\t\\tthe negative lookbehind prevents against matching\\n\\t\\t\\tp(42.tainted?)\\n\\t\\t\\t","match":"(?<!\\\\w)\\\\?(\\\\\\\\(x\\\\h{1,2}(?!\\\\h)\\\\b|0[0-7]{0,2}(?![0-7])\\\\b|[^x0MC])|(\\\\\\\\[MC]-)+\\\\w|[^\\\\s\\\\\\\\])","name":"constant.numeric.ruby"},{"begin":"^__END__\\\\n","captures":{"0":{"name":"string.unquoted.program-block.ruby"}},"comment":"__END__ marker","contentName":"text.plain","end":"(?=not)impossible","patterns":[{"begin":"(?=<?xml|<(?i:html\\\\b)|!DOCTYPE (?i:html\\\\b))","end":"(?=not)impossible","name":"text.html.embedded.ruby","patterns":[{"include":"text.html.basic"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)HTML)\\\\b\\\\1))","comment":"Heredoc with embedded HTML","end":"(?!\\\\G)","name":"meta.embedded.block.html","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)HTML)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"text.html","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"text.html.basic"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)HAML)\\\\b\\\\1))","comment":"Heredoc with embedded HAML","end":"(?!\\\\G)","name":"meta.embedded.block.haml","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)HAML)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"text.haml","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"text.haml"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)XML)\\\\b\\\\1))","comment":"Heredoc with embedded XML","end":"(?!\\\\G)","name":"meta.embedded.block.xml","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)XML)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"text.xml","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"text.xml"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)SQL)\\\\b\\\\1))","comment":"Heredoc with embedded SQL","end":"(?!\\\\G)","name":"meta.embedded.block.sql","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)SQL)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.sql","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.sql"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:GRAPHQL|GQL))\\\\b\\\\1))","comment":"Heredoc with embedded GraphQL","end":"(?!\\\\G)","name":"meta.embedded.block.graphql","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:GRAPHQL|GQL))\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.graphql","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.graphql"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)CSS)\\\\b\\\\1))","comment":"Heredoc with embedded CSS","end":"(?!\\\\G)","name":"meta.embedded.block.css","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)CSS)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.css","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.css"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)CPP)\\\\b\\\\1))","comment":"Heredoc with embedded C++","end":"(?!\\\\G)","name":"meta.embedded.block.cpp","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)CPP)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.cpp","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.cpp"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)C)\\\\b\\\\1))","comment":"Heredoc with embedded C","end":"(?!\\\\G)","name":"meta.embedded.block.c","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)C)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.c","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.c"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:JS|JAVASCRIPT))\\\\b\\\\1))","comment":"Heredoc with embedded Javascript","end":"(?!\\\\G)","name":"meta.embedded.block.js","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:JS|JAVASCRIPT))\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.js","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.js"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)JQUERY)\\\\b\\\\1))","comment":"Heredoc with embedded jQuery Javascript","end":"(?!\\\\G)","name":"meta.embedded.block.js.jquery","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)JQUERY)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.js.jquery","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.js.jquery"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:SH|SHELL))\\\\b\\\\1))","comment":"Heredoc with embedded Shell","end":"(?!\\\\G)","name":"meta.embedded.block.shell","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:SH|SHELL))\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.shell","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.shell"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)LUA)\\\\b\\\\1))","comment":"Heredoc with embedded Lua","end":"(?!\\\\G)","name":"meta.embedded.block.lua","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)LUA)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.lua","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.lua"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)RUBY)\\\\b\\\\1))","comment":"Heredoc with embedded Ruby","end":"(?!\\\\G)","name":"meta.embedded.block.ruby","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)RUBY)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.ruby","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.ruby"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:YAML|YML))\\\\b\\\\1))","comment":"Heredoc with embedded YAML","end":"(?!\\\\G)","name":"meta.embedded.block.yaml","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)(?:YAML|YML))\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"source.yaml","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"source.yaml"},{"include":"#escaped_char"}]}]},{"begin":"(?=(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)SLIM)\\\\b\\\\1))","comment":"Heredoc with embedded Slim","end":"(?!\\\\G)","name":"meta.embedded.block.slim","patterns":[{"begin":"(?><<[-~]([\\"'\`]?)((?:[_\\\\w]+_|)SLIM)\\\\b\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"contentName":"text.slim","end":"^\\\\s*\\\\2$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"text.slim"},{"include":"#escaped_char"}]}]},{"begin":"(?>=\\\\s*<<([\\"'\`]?)(\\\\w+)\\\\1)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ruby"}},"end":"^\\\\2$","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"(?>((<<[-~]([\\"'\`]?)(\\\\w+)\\\\3,\\\\s?)*<<[-~]([\\"'\`]?)(\\\\w+)\\\\5))(.*)","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.ruby"},"7":{"patterns":[{"include":"source.ruby"}]}},"comment":"heredoc with multiple inputs and indented terminator","end":"^\\\\s*\\\\6$","endCaptures":{"0":{"name":"punctuation.definition.string.end.ruby"}},"name":"string.unquoted.heredoc.ruby","patterns":[{"include":"#heredoc"},{"include":"#interpolated_ruby"},{"include":"#escaped_char"}]},{"begin":"(?<={|{\\\\s|[^A-Za-z0-9_:@$]do|^do|[^A-Za-z0-9_:@$]do\\\\s|^do\\\\s)(\\\\|)","captures":{"1":{"name":"punctuation.separator.variable.ruby"}},"end":"(?<!\\\\|)(\\\\|)(?!\\\\|)","name":"meta.block.parameters.ruby","patterns":[{"begin":"(?![\\\\s,|(])","end":"(?=,|\\\\|\\\\s*)","patterns":[{"captures":{"1":{"name":"storage.type.variable.ruby"},"2":{"name":"variable.other.block.ruby"},"3":{"name":"variable.other.block.unused.ruby variable.other.constant.ruby"}},"match":"\\\\G([&*]?)([a-zA-Z][\\\\w_]*)|(_[\\\\w_]*)"}]},{"match":",","name":"punctuation.separator.variable.ruby"}]},{"match":"=>","name":"punctuation.separator.key-value"},{"match":"->","name":"support.function.kernel.ruby"},{"match":"<<=|%=|&{1,2}=|\\\\*=|\\\\*\\\\*=|\\\\+=|-=|\\\\^=|\\\\|{1,2}=|<<","name":"keyword.operator.assignment.augmented.ruby"},{"match":"<=>|<(?!<|=)|>(?!<|=|>)|<=|>=|===|==|=~|!=|!~|(?<=[ \\\\t])\\\\?","name":"keyword.operator.comparison.ruby"},{"match":"(?<!\\\\.)\\\\b(and|not|or)\\\\b(?![?!])","name":"keyword.operator.logical.ruby"},{"match":"(?<=^|[ \\\\t!])!|&&|\\\\|\\\\||\\\\^","name":"keyword.operator.logical.ruby"},{"captures":{"1":{"name":"keyword.operator.logical.ruby"}},"comment":"Safe navigation operator","match":"(&\\\\.)\\\\s*(?![A-Z])"},{"match":"(%|&|\\\\*\\\\*|\\\\*|\\\\+|-|/)","name":"keyword.operator.arithmetic.ruby"},{"match":"=","name":"keyword.operator.assignment.ruby"},{"match":"\\\\||~|>>","name":"keyword.operator.other.ruby"},{"match":";","name":"punctuation.separator.statement.ruby"},{"match":",","name":"punctuation.separator.object.ruby"},{"captures":{"1":{"name":"punctuation.separator.namespace.ruby"}},"comment":"Mark as namespace separator if double colons followed by capital letter","match":"(::)\\\\s*(?=[A-Z])"},{"captures":{"1":{"name":"punctuation.separator.method.ruby"}},"comment":"Mark as method separator if double colons not followed by capital letter","match":"(\\\\.|::)\\\\s*(?![A-Z])"},{"comment":"Must come after method and constant separators to prefer double colons","match":":","name":"punctuation.separator.other.ruby"},{"match":"{","name":"punctuation.section.scope.begin.ruby"},{"match":"}","name":"punctuation.section.scope.end.ruby"},{"match":"\\\\[","name":"punctuation.section.array.begin.ruby"},{"match":"]","name":"punctuation.section.array.end.ruby"},{"match":"\\\\(|\\\\)","name":"punctuation.section.function.ruby"},{"begin":"(?<=[^\\\\.]\\\\.|::)(?=[a-zA-Z][a-zA-Z0-9_!?]*[^a-zA-Z0-9_!?])","end":"(?<=[a-zA-Z0-9_!?])(?=[^a-zA-Z0-9_!?])","name":"meta.function-call.ruby","patterns":[{"match":"([a-zA-Z][a-zA-Z0-9_!?]*)(?=[^a-zA-Z0-9_!?])","name":"entity.name.function.ruby"}]},{"begin":"([a-zA-Z]\\\\w*[!?]?)(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.ruby"},"2":{"name":"punctuation.section.function.ruby"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.function.ruby"}},"name":"meta.function-call.ruby","patterns":[{"include":"$self"}]}],"repository":{"escaped_char":{"match":"\\\\\\\\(?:[0-7]{1,3}|x[\\\\da-fA-F]{1,2}|.)","name":"constant.character.escape.ruby"},"heredoc":{"begin":"^<<[-~]?\\\\w+","end":"$","patterns":[{"include":"$self"}]},"interpolated_ruby":{"patterns":[{"begin":"#{","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.ruby"}},"contentName":"source.ruby","end":"}","endCaptures":{"0":{"name":"punctuation.section.embedded.end.ruby"}},"name":"meta.embedded.line.ruby","patterns":[{"include":"#nest_curly_and_self"},{"include":"$self"}]},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(#@)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.instance.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(#@@)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.class.ruby"},{"captures":{"1":{"name":"punctuation.definition.variable.ruby"}},"match":"(#\\\\$)[a-zA-Z_]\\\\w*","name":"variable.other.readwrite.global.ruby"}]},"method_parameters":{"patterns":[{"include":"#parens"},{"include":"#braces"},{"include":"#brackets"},{"include":"#params"},{"include":"$self"}],"repository":{"braces":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.scope.begin.ruby"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.scope.end.ruby"}},"patterns":[{"include":"#parens"},{"include":"#braces"},{"include":"#brackets"},{"include":"$self"}]},"brackets":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.ruby"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.section.array.end.ruby"}},"patterns":[{"include":"#parens"},{"include":"#braces"},{"include":"#brackets"},{"include":"$self"}]},"params":{"captures":{"1":{"name":"storage.type.variable.ruby"},"2":{"name":"constant.other.symbol.hashkey.parameter.function.ruby"},"3":{"name":"punctuation.definition.constant.ruby"},"4":{"name":"variable.parameter.function.ruby"}},"match":"\\\\G(&|\\\\*\\\\*?)?(?:([_a-zA-Z]\\\\w*[?!]?(:))|([_a-zA-Z]\\\\w*))"},"parens":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.function.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.ruby"}},"patterns":[{"include":"#parens"},{"include":"#braces"},{"include":"#brackets"},{"include":"$self"}]}}},"nest_brackets":{"begin":"\\\\[","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"]","patterns":[{"include":"#nest_brackets"}]},"nest_brackets_i":{"begin":"\\\\[","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"]","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_brackets_i"}]},"nest_brackets_r":{"begin":"\\\\[","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"]","patterns":[{"include":"#regex_sub"},{"include":"#nest_brackets_r"}]},"nest_curly":{"begin":"{","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"}","patterns":[{"include":"#nest_curly"}]},"nest_curly_and_self":{"patterns":[{"begin":"{","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"}","patterns":[{"include":"#nest_curly_and_self"}]},{"include":"$self"}]},"nest_curly_i":{"begin":"{","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"}","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_curly_i"}]},"nest_curly_r":{"begin":"{","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"}","patterns":[{"include":"#regex_sub"},{"include":"#nest_curly_r"}]},"nest_ltgt":{"begin":"<","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":">","patterns":[{"include":"#nest_ltgt"}]},"nest_ltgt_i":{"begin":"<","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":">","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_ltgt_i"}]},"nest_ltgt_r":{"begin":"<","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":">","patterns":[{"include":"#regex_sub"},{"include":"#nest_ltgt_r"}]},"nest_parens":{"begin":"\\\\(","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"\\\\)","patterns":[{"include":"#nest_parens"}]},"nest_parens_i":{"begin":"\\\\(","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"\\\\)","patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"include":"#nest_parens_i"}]},"nest_parens_r":{"begin":"\\\\(","captures":{"0":{"name":"punctuation.section.scope.ruby"}},"end":"\\\\)","patterns":[{"include":"#regex_sub"},{"include":"#nest_parens_r"}]},"regex_sub":{"patterns":[{"include":"#interpolated_ruby"},{"include":"#escaped_char"},{"captures":{"1":{"name":"punctuation.definition.arbitrary-repetition.ruby"},"3":{"name":"punctuation.definition.arbitrary-repetition.ruby"}},"match":"({)\\\\d+(,\\\\d+)?(})","name":"string.regexp.arbitrary-repetition.ruby"},{"begin":"\\\\[(?:\\\\^?])?","captures":{"0":{"name":"punctuation.definition.character-class.ruby"}},"end":"]","name":"string.regexp.character-class.ruby","patterns":[{"include":"#escaped_char"}]},{"begin":"\\\\(\\\\?#","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.ruby"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.comment.end.ruby"}},"name":"comment.line.number-sign.ruby","patterns":[{"include":"#escaped_char"}]},{"begin":"\\\\(","captures":{"0":{"name":"punctuation.definition.group.ruby"}},"end":"\\\\)","name":"string.regexp.group.ruby","patterns":[{"include":"#regex_sub"}]},{"begin":"(?<=^|\\\\s)(#)\\\\s(?=[[a-zA-Z0-9,. \\\\t?!-][^\\\\x{00}-\\\\x{7F}]]*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.ruby"}},"comment":"We are restrictive in what we allow to go after the comment character to avoid false positives, since the availability of comments depend on regexp flags.","end":"$\\\\n?","endCaptures":{"0":{"name":"punctuation.definition.comment.ruby"}},"name":"comment.line.number-sign.ruby"}]},"yard":{"patterns":[{"include":"#yard_comment"},{"include":"#yard_param_types"},{"include":"#yard_option"},{"include":"#yard_tag"},{"include":"#yard_types"},{"include":"#yard_directive"},{"include":"#yard_see"},{"include":"#yard_macro_attribute"}]},"yard_comment":{"begin":"^(\\\\s*)(#)(\\\\s*)(@)(abstract|api|author|deprecated|example|macro|note|overload|since|todo|version)(?=\\\\s|$)","beginCaptures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"}},"comment":"For YARD tags that follow the tag-comment pattern","contentName":"comment.line.string.yard.ruby","end":"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)","name":"comment.line.number-sign.ruby","patterns":[{"include":"#yard"},{"include":"#yard_continuation"}]},"yard_continuation":{"match":"^\\\\s*#","name":"punctuation.definition.comment.ruby"},"yard_directive":{"begin":"^(\\\\s*)(#)(\\\\s*)(@!)(endgroup|group|method|parse|scope|visibility)(\\\\s+((\\\\[).+(])))?(?=\\\\s)","beginCaptures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"},"7":{"name":"comment.line.type.yard.ruby"},"8":{"name":"comment.line.punctuation.yard.ruby"},"9":{"name":"comment.line.punctuation.yard.ruby"}},"comment":"For YARD directives","contentName":"comment.line.string.yard.ruby","end":"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)","name":"comment.line.number-sign.ruby","patterns":[{"include":"#yard"},{"include":"#yard_continuation"}]},"yard_macro_attribute":{"begin":"^(\\\\s*)(#)(\\\\s*)(@!)(attribute|macro)(\\\\s+((\\\\[).+(])))?(?=\\\\s)(\\\\s+([a-z_]\\\\w*:?))?","beginCaptures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"},"7":{"name":"comment.line.type.yard.ruby"},"8":{"name":"comment.line.punctuation.yard.ruby"},"9":{"name":"comment.line.punctuation.yard.ruby"},"11":{"name":"comment.line.parameter.yard.ruby"}},"comment":"separate rule for attribute and macro tags because name goes after []","contentName":"comment.line.string.yard.ruby","end":"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)","name":"comment.line.number-sign.ruby","patterns":[{"include":"#yard"},{"include":"#yard_continuation"}]},"yard_option":{"begin":"^(\\\\s*)(#)(\\\\s*)(@)(option)(?=\\\\s)(?>\\\\s+([a-z_]\\\\w*:?))?(?>\\\\s+((\\\\[).+(])))?(?>\\\\s+((\\\\S*)))?(?>\\\\s+((\\\\().+(\\\\))))?","beginCaptures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"},"6":{"name":"comment.line.parameter.yard.ruby"},"7":{"name":"comment.line.type.yard.ruby"},"8":{"name":"comment.line.punctuation.yard.ruby"},"9":{"name":"comment.line.punctuation.yard.ruby"},"10":{"name":"comment.line.keyword.yard.ruby"},"11":{"name":"comment.line.hashkey.yard.ruby"},"12":{"name":"comment.line.defaultvalue.yard.ruby"},"13":{"name":"comment.line.punctuation.yard.ruby"},"14":{"name":"comment.line.punctuation.yard.ruby"}},"comment":"For YARD option tag that follow the tag-name-types-key-(value)-description pattern","contentName":"comment.line.string.yard.ruby","end":"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)","name":"comment.line.number-sign.ruby","patterns":[{"include":"#yard"},{"include":"#yard_continuation"}]},"yard_param_types":{"begin":"^(\\\\s*)(#)(\\\\s*)(@)(attr|attr_reader|attr_writer|yieldparam|param)(?=\\\\s)(?>\\\\s+(?>([a-z_]\\\\w*:?)|((\\\\[).+(]))))?(?>\\\\s+(?>((\\\\[).+(]))|([a-z_]\\\\w*:?)))?","beginCaptures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"},"6":{"name":"comment.line.parameter.yard.ruby"},"7":{"name":"comment.line.type.yard.ruby"},"8":{"name":"comment.line.punctuation.yard.ruby"},"9":{"name":"comment.line.punctuation.yard.ruby"},"10":{"name":"comment.line.type.yard.ruby"},"11":{"name":"comment.line.punctuation.yard.ruby"},"12":{"name":"comment.line.punctuation.yard.ruby"},"13":{"name":"comment.line.parameter.yard.ruby"}},"comment":"For YARD tags that follow the tag-name-types-description or tag-types-name-description pattern","contentName":"comment.line.string.yard.ruby","end":"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)","name":"comment.line.number-sign.ruby","patterns":[{"include":"#yard"},{"include":"#yard_continuation"}]},"yard_see":{"begin":"^(\\\\s*)(#)(\\\\s*)(@)(see)(?=\\\\s)(\\\\s+(.+?))?(?=\\\\s|$)","beginCaptures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"},"7":{"name":"comment.line.parameter.yard.ruby"}},"comment":"separate rule for @see because name could contain url","contentName":"comment.line.string.yard.ruby","end":"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)","name":"comment.line.number-sign.ruby","patterns":[{"include":"#yard"},{"include":"#yard_continuation"}]},"yard_tag":{"captures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"}},"comment":"For YARD tags that are just the tag","match":"^(\\\\s*)(#)(\\\\s*)(@)(private)$","name":"comment.line.number-sign.ruby"},"yard_types":{"begin":"^(\\\\s*)(#)(\\\\s*)(@)(raise|return|yield(?:return)?)(?=\\\\s)(\\\\s+((\\\\[).+(])))?","beginCaptures":{"2":{"name":"punctuation.definition.comment.ruby"},"4":{"name":"comment.line.keyword.punctuation.yard.ruby"},"5":{"name":"comment.line.keyword.yard.ruby"},"7":{"name":"comment.line.type.yard.ruby"},"8":{"name":"comment.line.punctuation.yard.ruby"},"9":{"name":"comment.line.punctuation.yard.ruby"}},"comment":"For YARD tags that follow the tag-types-comment pattern","contentName":"comment.line.string.yard.ruby","end":"^(?!\\\\s*#\\\\3\\\\s{2,}|\\\\s*#\\\\s*$)","name":"comment.line.number-sign.ruby","patterns":[{"include":"#yard"},{"include":"#yard_continuation"}]}},"scopeName":"source.ruby","embeddedLangs":["html","haml","xml","sql","graphql","css","cpp","c","javascript","shellscript","lua","yaml"],"aliases":["rb"]}`));var L=[...e,...n,...t,...a,...r,...i,...u,...c,...o,...s,...d,...m,b];export{L as default};
@@ -1 +1 @@
1
- const e=Object.freeze(JSON.parse(`{"displayName":"Rust","name":"rust","patterns":[{"begin":"(<)(\\\\[)","beginCaptures":{"1":{"name":"punctuation.brackets.angle.rust"},"2":{"name":"punctuation.brackets.square.rust"}},"comment":"boxed slice literal","end":">","endCaptures":{"0":{"name":"punctuation.brackets.angle.rust"}},"patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#gtypes"},{"include":"#lvariables"},{"include":"#lifetimes"},{"include":"#punctuation"},{"include":"#types"}]},{"captures":{"1":{"name":"keyword.operator.macro.dollar.rust"},"3":{"name":"keyword.other.crate.rust"},"4":{"name":"entity.name.type.metavariable.rust"},"6":{"name":"keyword.operator.key-value.rust"},"7":{"name":"variable.other.metavariable.specifier.rust"}},"comment":"macro type metavariables","match":"(\\\\$)((crate)|([A-Z][A-Za-z0-9_]*))((:)(block|expr|ident|item|lifetime|literal|meta|path?|stmt|tt|ty|vis))?","name":"meta.macro.metavariable.type.rust","patterns":[{"include":"#keywords"}]},{"captures":{"1":{"name":"keyword.operator.macro.dollar.rust"},"2":{"name":"variable.other.metavariable.name.rust"},"4":{"name":"keyword.operator.key-value.rust"},"5":{"name":"variable.other.metavariable.specifier.rust"}},"comment":"macro metavariables","match":"(\\\\$)([a-z][A-Za-z0-9_]*)((:)(block|expr|ident|item|lifetime|literal|meta|path?|stmt|tt|ty|vis))?","name":"meta.macro.metavariable.rust","patterns":[{"include":"#keywords"}]},{"captures":{"1":{"name":"entity.name.function.macro.rules.rust"},"3":{"name":"entity.name.function.macro.rust"},"4":{"name":"entity.name.type.macro.rust"},"5":{"name":"punctuation.brackets.curly.rust"}},"comment":"macro rules","match":"\\\\b(macro_rules!)\\\\s+(([a-z0-9_]+)|([A-Z][a-z0-9_]*))\\\\s+(\\\\{)","name":"meta.macro.rules.rust"},{"captures":{"1":{"name":"storage.type.rust"},"2":{"name":"entity.name.module.rust"}},"comment":"modules","match":"(mod)\\\\s+((?:r#(?!crate|[Ss]elf|super))?[a-z][A-Za-z0-9_]*)"},{"begin":"\\\\b(extern)\\\\s+(crate)","beginCaptures":{"1":{"name":"storage.type.rust"},"2":{"name":"keyword.other.crate.rust"}},"comment":"external crate imports","end":";","endCaptures":{"0":{"name":"punctuation.semi.rust"}},"name":"meta.import.rust","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#keywords"},{"include":"#punctuation"}]},{"begin":"\\\\b(use)\\\\s","beginCaptures":{"1":{"name":"keyword.other.rust"}},"comment":"use statements","end":";","endCaptures":{"0":{"name":"punctuation.semi.rust"}},"name":"meta.use.rust","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#keywords"},{"include":"#namespaces"},{"include":"#punctuation"},{"include":"#types"},{"include":"#lvariables"}]},{"include":"#block-comments"},{"include":"#comments"},{"include":"#attributes"},{"include":"#lvariables"},{"include":"#constants"},{"include":"#gtypes"},{"include":"#functions"},{"include":"#types"},{"include":"#keywords"},{"include":"#lifetimes"},{"include":"#macros"},{"include":"#namespaces"},{"include":"#punctuation"},{"include":"#strings"},{"include":"#variables"}],"repository":{"attributes":{"begin":"(#)(\\\\!?)(\\\\[)","beginCaptures":{"1":{"name":"punctuation.definition.attribute.rust"},"3":{"name":"punctuation.brackets.attribute.rust"}},"comment":"attributes","end":"\\\\]","endCaptures":{"0":{"name":"punctuation.brackets.attribute.rust"}},"name":"meta.attribute.rust","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#keywords"},{"include":"#lifetimes"},{"include":"#punctuation"},{"include":"#strings"},{"include":"#gtypes"},{"include":"#types"}]},"block-comments":{"patterns":[{"comment":"empty block comments","match":"/\\\\*\\\\*/","name":"comment.block.rust"},{"begin":"/\\\\*\\\\*","comment":"block documentation comments","end":"\\\\*/","name":"comment.block.documentation.rust","patterns":[{"include":"#block-comments"}]},{"begin":"/\\\\*(?!\\\\*)","comment":"block comments","end":"\\\\*/","name":"comment.block.rust","patterns":[{"include":"#block-comments"}]}]},"comments":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.rust"}},"comment":"documentation comments","match":"(///).*$","name":"comment.line.documentation.rust"},{"captures":{"1":{"name":"punctuation.definition.comment.rust"}},"comment":"line comments","match":"(//).*$","name":"comment.line.double-slash.rust"}]},"constants":{"patterns":[{"comment":"ALL CAPS constants","match":"\\\\b[A-Z]{2}[A-Z0-9_]*\\\\b","name":"constant.other.caps.rust"},{"captures":{"1":{"name":"storage.type.rust"},"2":{"name":"constant.other.caps.rust"}},"comment":"constant declarations","match":"\\\\b(const)\\\\s+([A-Z][A-Za-z0-9_]*)\\\\b"},{"captures":{"1":{"name":"punctuation.separator.dot.decimal.rust"},"2":{"name":"keyword.operator.exponent.rust"},"3":{"name":"keyword.operator.exponent.sign.rust"},"4":{"name":"constant.numeric.decimal.exponent.mantissa.rust"},"5":{"name":"entity.name.type.numeric.rust"}},"comment":"decimal integers and floats","match":"\\\\b\\\\d[\\\\d_]*(\\\\.?)[\\\\d_]*(?:(E|e)([+-]?)([\\\\d_]+))?(f32|f64|i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\\\b","name":"constant.numeric.decimal.rust"},{"captures":{"1":{"name":"entity.name.type.numeric.rust"}},"comment":"hexadecimal integers","match":"\\\\b0x[\\\\da-fA-F_]+(i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\\\b","name":"constant.numeric.hex.rust"},{"captures":{"1":{"name":"entity.name.type.numeric.rust"}},"comment":"octal integers","match":"\\\\b0o[0-7_]+(i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\\\b","name":"constant.numeric.oct.rust"},{"captures":{"1":{"name":"entity.name.type.numeric.rust"}},"comment":"binary integers","match":"\\\\b0b[01_]+(i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\\\b","name":"constant.numeric.bin.rust"},{"comment":"booleans","match":"\\\\b(true|false)\\\\b","name":"constant.language.bool.rust"}]},"escapes":{"captures":{"1":{"name":"constant.character.escape.backslash.rust"},"2":{"name":"constant.character.escape.bit.rust"},"3":{"name":"constant.character.escape.unicode.rust"},"4":{"name":"constant.character.escape.unicode.punctuation.rust"},"5":{"name":"constant.character.escape.unicode.punctuation.rust"}},"comment":"escapes: ASCII, byte, Unicode, quote, regex","match":"(\\\\\\\\)(?:(?:(x[0-7][\\\\da-fA-F])|(u(\\\\{)[\\\\da-fA-F]{4,6}(\\\\}))|.))","name":"constant.character.escape.rust"},"functions":{"patterns":[{"captures":{"1":{"name":"keyword.other.rust"},"2":{"name":"punctuation.brackets.round.rust"}},"comment":"pub as a function","match":"\\\\b(pub)(\\\\()"},{"begin":"\\\\b(fn)\\\\s+((?:r#(?!crate|[Ss]elf|super))?[A-Za-z0-9_]+)((\\\\()|(<))","beginCaptures":{"1":{"name":"keyword.other.fn.rust"},"2":{"name":"entity.name.function.rust"},"4":{"name":"punctuation.brackets.round.rust"},"5":{"name":"punctuation.brackets.angle.rust"}},"comment":"function definition","end":"(\\\\{)|(;)","endCaptures":{"1":{"name":"punctuation.brackets.curly.rust"},"2":{"name":"punctuation.semi.rust"}},"name":"meta.function.definition.rust","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#keywords"},{"include":"#lvariables"},{"include":"#constants"},{"include":"#gtypes"},{"include":"#functions"},{"include":"#lifetimes"},{"include":"#macros"},{"include":"#namespaces"},{"include":"#punctuation"},{"include":"#strings"},{"include":"#types"},{"include":"#variables"}]},{"begin":"((?:r#(?!crate|[Ss]elf|super))?[A-Za-z0-9_]+)(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.rust"},"2":{"name":"punctuation.brackets.round.rust"}},"comment":"function/method calls, chaining","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.brackets.round.rust"}},"name":"meta.function.call.rust","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#attributes"},{"include":"#keywords"},{"include":"#lvariables"},{"include":"#constants"},{"include":"#gtypes"},{"include":"#functions"},{"include":"#lifetimes"},{"include":"#macros"},{"include":"#namespaces"},{"include":"#punctuation"},{"include":"#strings"},{"include":"#types"},{"include":"#variables"}]},{"begin":"((?:r#(?!crate|[Ss]elf|super))?[A-Za-z0-9_]+)(?=::<.*>\\\\()","beginCaptures":{"1":{"name":"entity.name.function.rust"}},"comment":"function/method calls with turbofish","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.brackets.round.rust"}},"name":"meta.function.call.rust","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#attributes"},{"include":"#keywords"},{"include":"#lvariables"},{"include":"#constants"},{"include":"#gtypes"},{"include":"#functions"},{"include":"#lifetimes"},{"include":"#macros"},{"include":"#namespaces"},{"include":"#punctuation"},{"include":"#strings"},{"include":"#types"},{"include":"#variables"}]}]},"gtypes":{"patterns":[{"comment":"option types","match":"\\\\b(Some|None)\\\\b","name":"entity.name.type.option.rust"},{"comment":"result types","match":"\\\\b(Ok|Err)\\\\b","name":"entity.name.type.result.rust"}]},"interpolations":{"captures":{"1":{"name":"punctuation.definition.interpolation.rust"},"2":{"name":"punctuation.definition.interpolation.rust"}},"comment":"curly brace interpolations","match":"({)[^\\"{}]*(})","name":"meta.interpolation.rust"},"keywords":{"patterns":[{"comment":"control flow keywords","match":"\\\\b(await|break|continue|do|else|for|if|loop|match|return|try|while|yield)\\\\b","name":"keyword.control.rust"},{"comment":"storage keywords","match":"\\\\b(extern|let|macro|mod)\\\\b","name":"keyword.other.rust storage.type.rust"},{"comment":"const keyword","match":"\\\\b(const)\\\\b","name":"storage.modifier.rust"},{"comment":"type keyword","match":"\\\\b(type)\\\\b","name":"keyword.declaration.type.rust storage.type.rust"},{"comment":"enum keyword","match":"\\\\b(enum)\\\\b","name":"keyword.declaration.enum.rust storage.type.rust"},{"comment":"trait keyword","match":"\\\\b(trait)\\\\b","name":"keyword.declaration.trait.rust storage.type.rust"},{"comment":"struct keyword","match":"\\\\b(struct)\\\\b","name":"keyword.declaration.struct.rust storage.type.rust"},{"comment":"storage modifiers","match":"\\\\b(abstract|static)\\\\b","name":"storage.modifier.rust"},{"comment":"other keywords","match":"\\\\b(as|async|become|box|dyn|move|final|gen|impl|in|override|priv|pub|ref|typeof|union|unsafe|unsized|use|virtual|where)\\\\b","name":"keyword.other.rust"},{"comment":"fn","match":"\\\\bfn\\\\b","name":"keyword.other.fn.rust"},{"comment":"crate","match":"\\\\bcrate\\\\b","name":"keyword.other.crate.rust"},{"comment":"mut","match":"\\\\bmut\\\\b","name":"storage.modifier.mut.rust"},{"comment":"logical operators","match":"(\\\\^|\\\\||\\\\|\\\\||&&|<<|>>|!)(?!=)","name":"keyword.operator.logical.rust"},{"comment":"logical AND, borrow references","match":"&(?![&=])","name":"keyword.operator.borrow.and.rust"},{"comment":"assignment operators","match":"(\\\\+=|-=|\\\\*=|/=|%=|\\\\^=|&=|\\\\|=|<<=|>>=)","name":"keyword.operator.assignment.rust"},{"comment":"single equal","match":"(?<![<>])=(?!=|>)","name":"keyword.operator.assignment.equal.rust"},{"comment":"comparison operators","match":"(=(=)?(?!>)|!=|<=|(?<!=)>=)","name":"keyword.operator.comparison.rust"},{"comment":"math operators","match":"(([+%]|(\\\\*(?!\\\\w)))(?!=))|(-(?!>))|(/(?!/))","name":"keyword.operator.math.rust"},{"captures":{"1":{"name":"punctuation.brackets.round.rust"},"2":{"name":"punctuation.brackets.square.rust"},"3":{"name":"punctuation.brackets.curly.rust"},"4":{"name":"keyword.operator.comparison.rust"},"5":{"name":"punctuation.brackets.round.rust"},"6":{"name":"punctuation.brackets.square.rust"},"7":{"name":"punctuation.brackets.curly.rust"}},"comment":"less than, greater than (special case)","match":"(?:\\\\b|(?:(\\\\))|(\\\\])|(\\\\})))[ \\\\t]+([<>])[ \\\\t]+(?:\\\\b|(?:(\\\\()|(\\\\[)|(\\\\{)))"},{"comment":"namespace operator","match":"::","name":"keyword.operator.namespace.rust"},{"captures":{"1":{"name":"keyword.operator.dereference.rust"}},"comment":"dereference asterisk","match":"(\\\\*)(?=\\\\w+)"},{"comment":"subpattern binding","match":"@","name":"keyword.operator.subpattern.rust"},{"comment":"dot access","match":"\\\\.(?!\\\\.)","name":"keyword.operator.access.dot.rust"},{"comment":"ranges, range patterns","match":"\\\\.{2}(=|\\\\.)?","name":"keyword.operator.range.rust"},{"comment":"colon","match":":(?!:)","name":"keyword.operator.key-value.rust"},{"comment":"dashrocket, skinny arrow","match":"->|<-","name":"keyword.operator.arrow.skinny.rust"},{"comment":"hashrocket, fat arrow","match":"=>","name":"keyword.operator.arrow.fat.rust"},{"comment":"dollar macros","match":"\\\\$","name":"keyword.operator.macro.dollar.rust"},{"comment":"question mark operator, questionably sized, macro kleene matcher","match":"\\\\?","name":"keyword.operator.question.rust"}]},"lifetimes":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.lifetime.rust"},"2":{"name":"entity.name.type.lifetime.rust"}},"comment":"named lifetime parameters","match":"(['])([a-zA-Z_][0-9a-zA-Z_]*)(?!['])\\\\b"},{"captures":{"1":{"name":"keyword.operator.borrow.rust"},"2":{"name":"punctuation.definition.lifetime.rust"},"3":{"name":"entity.name.type.lifetime.rust"}},"comment":"borrowing references to named lifetimes","match":"(\\\\&)(['])([a-zA-Z_][0-9a-zA-Z_]*)(?!['])\\\\b"}]},"lvariables":{"patterns":[{"comment":"self","match":"\\\\b[Ss]elf\\\\b","name":"variable.language.self.rust"},{"comment":"super","match":"\\\\bsuper\\\\b","name":"variable.language.super.rust"}]},"macros":{"patterns":[{"captures":{"2":{"name":"entity.name.function.macro.rust"},"3":{"name":"entity.name.type.macro.rust"}},"comment":"macros","match":"(([a-z_][A-Za-z0-9_]*!)|([A-Z_][A-Za-z0-9_]*!))","name":"meta.macro.rust"}]},"namespaces":{"patterns":[{"captures":{"1":{"name":"entity.name.namespace.rust"},"2":{"name":"keyword.operator.namespace.rust"}},"comment":"namespace (non-type, non-function path segment)","match":"(?<![A-Za-z0-9_])([A-Za-z0-9_]+)((?<!super|self)::)"}]},"punctuation":{"patterns":[{"comment":"comma","match":",","name":"punctuation.comma.rust"},{"comment":"curly braces","match":"[{}]","name":"punctuation.brackets.curly.rust"},{"comment":"parentheses, round brackets","match":"[()]","name":"punctuation.brackets.round.rust"},{"comment":"semicolon","match":";","name":"punctuation.semi.rust"},{"comment":"square brackets","match":"[\\\\[\\\\]]","name":"punctuation.brackets.square.rust"},{"comment":"angle brackets","match":"(?<!=)[<>]","name":"punctuation.brackets.angle.rust"}]},"strings":{"patterns":[{"begin":"(b?)(\\")","beginCaptures":{"1":{"name":"string.quoted.byte.raw.rust"},"2":{"name":"punctuation.definition.string.rust"}},"comment":"double-quoted strings and byte strings","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.rust"}},"name":"string.quoted.double.rust","patterns":[{"include":"#escapes"},{"include":"#interpolations"}]},{"begin":"(b?r)(#*)(\\")","beginCaptures":{"1":{"name":"string.quoted.byte.raw.rust"},"2":{"name":"punctuation.definition.string.raw.rust"},"3":{"name":"punctuation.definition.string.rust"}},"comment":"double-quoted raw strings and raw byte strings","end":"(\\")(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.rust"},"2":{"name":"punctuation.definition.string.raw.rust"}},"name":"string.quoted.double.rust"},{"begin":"(b)?(')","beginCaptures":{"1":{"name":"string.quoted.byte.raw.rust"},"2":{"name":"punctuation.definition.char.rust"}},"comment":"characters and bytes","end":"'","endCaptures":{"0":{"name":"punctuation.definition.char.rust"}},"name":"string.quoted.single.char.rust","patterns":[{"include":"#escapes"}]}]},"types":{"patterns":[{"captures":{"1":{"name":"entity.name.type.numeric.rust"}},"comment":"numeric types","match":"(?<![A-Za-z])(f32|f64|i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)\\\\b"},{"begin":"\\\\b(_?[A-Z][A-Za-z0-9_]*)(<)","beginCaptures":{"1":{"name":"entity.name.type.rust"},"2":{"name":"punctuation.brackets.angle.rust"}},"comment":"parameterized types","end":">","endCaptures":{"0":{"name":"punctuation.brackets.angle.rust"}},"patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#keywords"},{"include":"#lvariables"},{"include":"#lifetimes"},{"include":"#punctuation"},{"include":"#types"},{"include":"#variables"}]},{"comment":"primitive types","match":"\\\\b(bool|char|str)\\\\b","name":"entity.name.type.primitive.rust"},{"captures":{"1":{"name":"keyword.declaration.trait.rust storage.type.rust"},"2":{"name":"entity.name.type.trait.rust"}},"comment":"trait declarations","match":"\\\\b(trait)\\\\s+(_?[A-Z][A-Za-z0-9_]*)\\\\b"},{"captures":{"1":{"name":"keyword.declaration.struct.rust storage.type.rust"},"2":{"name":"entity.name.type.struct.rust"}},"comment":"struct declarations","match":"\\\\b(struct)\\\\s+(_?[A-Z][A-Za-z0-9_]*)\\\\b"},{"captures":{"1":{"name":"keyword.declaration.enum.rust storage.type.rust"},"2":{"name":"entity.name.type.enum.rust"}},"comment":"enum declarations","match":"\\\\b(enum)\\\\s+(_?[A-Z][A-Za-z0-9_]*)\\\\b"},{"captures":{"1":{"name":"keyword.declaration.type.rust storage.type.rust"},"2":{"name":"entity.name.type.declaration.rust"}},"comment":"type declarations","match":"\\\\b(type)\\\\s+(_?[A-Z][A-Za-z0-9_]*)\\\\b"},{"comment":"types","match":"\\\\b_?[A-Z][A-Za-z0-9_]*\\\\b(?!!)","name":"entity.name.type.rust"}]},"variables":{"patterns":[{"comment":"variables","match":"\\\\b(?<!(?<!\\\\.)\\\\.)(?:r#(?!(crate|[Ss]elf|super)))?[a-z0-9_]+\\\\b","name":"variable.other.rust"}]}},"scopeName":"source.rust","aliases":["rs"]}`)),t=[e];export{t as default};
1
+ const e=Object.freeze(JSON.parse(`{"displayName":"Rust","name":"rust","patterns":[{"begin":"(<)(\\\\[)","beginCaptures":{"1":{"name":"punctuation.brackets.angle.rust"},"2":{"name":"punctuation.brackets.square.rust"}},"comment":"boxed slice literal","end":">","endCaptures":{"0":{"name":"punctuation.brackets.angle.rust"}},"patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#gtypes"},{"include":"#lvariables"},{"include":"#lifetimes"},{"include":"#punctuation"},{"include":"#types"}]},{"captures":{"1":{"name":"keyword.operator.macro.dollar.rust"},"3":{"name":"keyword.other.crate.rust"},"4":{"name":"entity.name.type.metavariable.rust"},"6":{"name":"keyword.operator.key-value.rust"},"7":{"name":"variable.other.metavariable.specifier.rust"}},"comment":"macro type metavariables","match":"(\\\\$)((crate)|([A-Z][A-Za-z0-9_]*))((:)(block|expr|ident|item|lifetime|literal|meta|path?|stmt|tt|ty|vis))?","name":"meta.macro.metavariable.type.rust","patterns":[{"include":"#keywords"}]},{"captures":{"1":{"name":"keyword.operator.macro.dollar.rust"},"2":{"name":"variable.other.metavariable.name.rust"},"4":{"name":"keyword.operator.key-value.rust"},"5":{"name":"variable.other.metavariable.specifier.rust"}},"comment":"macro metavariables","match":"(\\\\$)([a-z][A-Za-z0-9_]*)((:)(block|expr|ident|item|lifetime|literal|meta|path?|stmt|tt|ty|vis))?","name":"meta.macro.metavariable.rust","patterns":[{"include":"#keywords"}]},{"captures":{"1":{"name":"entity.name.function.macro.rules.rust"},"3":{"name":"entity.name.function.macro.rust"},"4":{"name":"entity.name.type.macro.rust"},"5":{"name":"punctuation.brackets.curly.rust"}},"comment":"macro rules","match":"\\\\b(macro_rules!)\\\\s+(([a-z0-9_]+)|([A-Z][a-z0-9_]*))\\\\s+(\\\\{)","name":"meta.macro.rules.rust"},{"captures":{"1":{"name":"storage.type.rust"},"2":{"name":"entity.name.module.rust"}},"comment":"modules","match":"(mod)\\\\s+((?:r#(?!crate|[Ss]elf|super))?[a-z][A-Za-z0-9_]*)"},{"begin":"\\\\b(extern)\\\\s+(crate)","beginCaptures":{"1":{"name":"storage.type.rust"},"2":{"name":"keyword.other.crate.rust"}},"comment":"external crate imports","end":";","endCaptures":{"0":{"name":"punctuation.semi.rust"}},"name":"meta.import.rust","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#keywords"},{"include":"#punctuation"}]},{"begin":"\\\\b(use)\\\\s","beginCaptures":{"1":{"name":"keyword.other.rust"}},"comment":"use statements","end":";","endCaptures":{"0":{"name":"punctuation.semi.rust"}},"name":"meta.use.rust","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#keywords"},{"include":"#namespaces"},{"include":"#punctuation"},{"include":"#types"},{"include":"#lvariables"}]},{"include":"#block-comments"},{"include":"#comments"},{"include":"#attributes"},{"include":"#lvariables"},{"include":"#constants"},{"include":"#gtypes"},{"include":"#functions"},{"include":"#types"},{"include":"#keywords"},{"include":"#lifetimes"},{"include":"#macros"},{"include":"#namespaces"},{"include":"#punctuation"},{"include":"#strings"},{"include":"#variables"}],"repository":{"attributes":{"begin":"(#)(\\\\!?)(\\\\[)","beginCaptures":{"1":{"name":"punctuation.definition.attribute.rust"},"3":{"name":"punctuation.brackets.attribute.rust"}},"comment":"attributes","end":"\\\\]","endCaptures":{"0":{"name":"punctuation.brackets.attribute.rust"}},"name":"meta.attribute.rust","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#keywords"},{"include":"#lifetimes"},{"include":"#punctuation"},{"include":"#strings"},{"include":"#gtypes"},{"include":"#types"}]},"block-comments":{"patterns":[{"comment":"empty block comments","match":"/\\\\*\\\\*/","name":"comment.block.rust"},{"begin":"/\\\\*\\\\*","comment":"block documentation comments","end":"\\\\*/","name":"comment.block.documentation.rust","patterns":[{"include":"#block-comments"}]},{"begin":"/\\\\*(?!\\\\*)","comment":"block comments","end":"\\\\*/","name":"comment.block.rust","patterns":[{"include":"#block-comments"}]}]},"comments":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.rust"}},"comment":"documentation comments","match":"(///).*$","name":"comment.line.documentation.rust"},{"captures":{"1":{"name":"punctuation.definition.comment.rust"}},"comment":"line comments","match":"(//).*$","name":"comment.line.double-slash.rust"}]},"constants":{"patterns":[{"comment":"ALL CAPS constants","match":"\\\\b[A-Z]{2}[A-Z0-9_]*\\\\b","name":"constant.other.caps.rust"},{"captures":{"1":{"name":"storage.type.rust"},"2":{"name":"constant.other.caps.rust"}},"comment":"constant declarations","match":"\\\\b(const)\\\\s+([A-Z][A-Za-z0-9_]*)\\\\b"},{"captures":{"1":{"name":"punctuation.separator.dot.decimal.rust"},"2":{"name":"keyword.operator.exponent.rust"},"3":{"name":"keyword.operator.exponent.sign.rust"},"4":{"name":"constant.numeric.decimal.exponent.mantissa.rust"},"5":{"name":"entity.name.type.numeric.rust"}},"comment":"decimal integers and floats","match":"\\\\b\\\\d[\\\\d_]*(\\\\.?)[\\\\d_]*(?:(E|e)([+-]?)([\\\\d_]+))?(f32|f64|i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\\\b","name":"constant.numeric.decimal.rust"},{"captures":{"1":{"name":"entity.name.type.numeric.rust"}},"comment":"hexadecimal integers","match":"\\\\b0x[\\\\da-fA-F_]+(i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\\\b","name":"constant.numeric.hex.rust"},{"captures":{"1":{"name":"entity.name.type.numeric.rust"}},"comment":"octal integers","match":"\\\\b0o[0-7_]+(i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\\\b","name":"constant.numeric.oct.rust"},{"captures":{"1":{"name":"entity.name.type.numeric.rust"}},"comment":"binary integers","match":"\\\\b0b[01_]+(i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\\\b","name":"constant.numeric.bin.rust"},{"comment":"booleans","match":"\\\\b(true|false)\\\\b","name":"constant.language.bool.rust"}]},"escapes":{"captures":{"1":{"name":"constant.character.escape.backslash.rust"},"2":{"name":"constant.character.escape.bit.rust"},"3":{"name":"constant.character.escape.unicode.rust"},"4":{"name":"constant.character.escape.unicode.punctuation.rust"},"5":{"name":"constant.character.escape.unicode.punctuation.rust"}},"comment":"escapes: ASCII, byte, Unicode, quote, regex","match":"(\\\\\\\\)(?:(?:(x[0-7][\\\\da-fA-F])|(u(\\\\{)[\\\\da-fA-F]{4,6}(\\\\}))|.))","name":"constant.character.escape.rust"},"functions":{"patterns":[{"captures":{"1":{"name":"keyword.other.rust"},"2":{"name":"punctuation.brackets.round.rust"}},"comment":"pub as a function","match":"\\\\b(pub)(\\\\()"},{"begin":"\\\\b(fn)\\\\s+((?:r#(?!crate|[Ss]elf|super))?[A-Za-z0-9_]+)((\\\\()|(<))","beginCaptures":{"1":{"name":"keyword.other.fn.rust"},"2":{"name":"entity.name.function.rust"},"4":{"name":"punctuation.brackets.round.rust"},"5":{"name":"punctuation.brackets.angle.rust"}},"comment":"function definition","end":"(\\\\{)|(;)","endCaptures":{"1":{"name":"punctuation.brackets.curly.rust"},"2":{"name":"punctuation.semi.rust"}},"name":"meta.function.definition.rust","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#keywords"},{"include":"#lvariables"},{"include":"#constants"},{"include":"#gtypes"},{"include":"#functions"},{"include":"#lifetimes"},{"include":"#macros"},{"include":"#namespaces"},{"include":"#punctuation"},{"include":"#strings"},{"include":"#types"},{"include":"#variables"}]},{"begin":"((?:r#(?!crate|[Ss]elf|super))?[A-Za-z0-9_]+)(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.rust"},"2":{"name":"punctuation.brackets.round.rust"}},"comment":"function/method calls, chaining","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.brackets.round.rust"}},"name":"meta.function.call.rust","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#attributes"},{"include":"#keywords"},{"include":"#lvariables"},{"include":"#constants"},{"include":"#gtypes"},{"include":"#functions"},{"include":"#lifetimes"},{"include":"#macros"},{"include":"#namespaces"},{"include":"#punctuation"},{"include":"#strings"},{"include":"#types"},{"include":"#variables"}]},{"begin":"((?:r#(?!crate|[Ss]elf|super))?[A-Za-z0-9_]+)(?=::<.*>\\\\()","beginCaptures":{"1":{"name":"entity.name.function.rust"}},"comment":"function/method calls with turbofish","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.brackets.round.rust"}},"name":"meta.function.call.rust","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#attributes"},{"include":"#keywords"},{"include":"#lvariables"},{"include":"#constants"},{"include":"#gtypes"},{"include":"#functions"},{"include":"#lifetimes"},{"include":"#macros"},{"include":"#namespaces"},{"include":"#punctuation"},{"include":"#strings"},{"include":"#types"},{"include":"#variables"}]}]},"gtypes":{"patterns":[{"comment":"option types","match":"\\\\b(Some|None)\\\\b","name":"entity.name.type.option.rust"},{"comment":"result types","match":"\\\\b(Ok|Err)\\\\b","name":"entity.name.type.result.rust"}]},"interpolations":{"captures":{"1":{"name":"punctuation.definition.interpolation.rust"},"2":{"name":"punctuation.definition.interpolation.rust"}},"comment":"curly brace interpolations","match":"({)[^\\"{}]*(})","name":"meta.interpolation.rust"},"keywords":{"patterns":[{"comment":"control flow keywords","match":"\\\\b(await|break|continue|do|else|for|if|loop|match|return|try|while|yield)\\\\b","name":"keyword.control.rust"},{"comment":"storage keywords","match":"\\\\b(extern|let|macro|mod)\\\\b","name":"keyword.other.rust storage.type.rust"},{"comment":"const keyword","match":"\\\\b(const)\\\\b","name":"storage.modifier.rust"},{"comment":"type keyword","match":"\\\\b(type)\\\\b","name":"keyword.declaration.type.rust storage.type.rust"},{"comment":"enum keyword","match":"\\\\b(enum)\\\\b","name":"keyword.declaration.enum.rust storage.type.rust"},{"comment":"trait keyword","match":"\\\\b(trait)\\\\b","name":"keyword.declaration.trait.rust storage.type.rust"},{"comment":"struct keyword","match":"\\\\b(struct)\\\\b","name":"keyword.declaration.struct.rust storage.type.rust"},{"comment":"storage modifiers","match":"\\\\b(abstract|static)\\\\b","name":"storage.modifier.rust"},{"comment":"other keywords","match":"\\\\b(as|async|become|box|dyn|move|final|gen|impl|in|override|priv|pub|ref|typeof|union|unsafe|unsized|use|virtual|where)\\\\b","name":"keyword.other.rust"},{"comment":"fn","match":"\\\\bfn\\\\b","name":"keyword.other.fn.rust"},{"comment":"crate","match":"\\\\bcrate\\\\b","name":"keyword.other.crate.rust"},{"comment":"mut","match":"\\\\bmut\\\\b","name":"storage.modifier.mut.rust"},{"comment":"logical operators","match":"(\\\\^|\\\\||\\\\|\\\\||&&|<<|>>|!)(?!=)","name":"keyword.operator.logical.rust"},{"comment":"logical AND, borrow references","match":"&(?![&=])","name":"keyword.operator.borrow.and.rust"},{"comment":"assignment operators","match":"(\\\\+=|-=|\\\\*=|/=|%=|\\\\^=|&=|\\\\|=|<<=|>>=)","name":"keyword.operator.assignment.rust"},{"comment":"single equal","match":"(?<![<>])=(?!=|>)","name":"keyword.operator.assignment.equal.rust"},{"comment":"comparison operators","match":"(=(=)?(?!>)|!=|<=|(?<!=)>=)","name":"keyword.operator.comparison.rust"},{"comment":"math operators","match":"(([+%]|(\\\\*(?!\\\\w)))(?!=))|(-(?!>))|(/(?!/))","name":"keyword.operator.math.rust"},{"captures":{"1":{"name":"punctuation.brackets.round.rust"},"2":{"name":"punctuation.brackets.square.rust"},"3":{"name":"punctuation.brackets.curly.rust"},"4":{"name":"keyword.operator.comparison.rust"},"5":{"name":"punctuation.brackets.round.rust"},"6":{"name":"punctuation.brackets.square.rust"},"7":{"name":"punctuation.brackets.curly.rust"}},"comment":"less than, greater than (special case)","match":"(?:\\\\b|(?:(\\\\))|(\\\\])|(\\\\})))[ \\\\t]+([<>])[ \\\\t]+(?:\\\\b|(?:(\\\\()|(\\\\[)|(\\\\{)))"},{"comment":"namespace operator","match":"::","name":"keyword.operator.namespace.rust"},{"captures":{"1":{"name":"keyword.operator.dereference.rust"}},"comment":"dereference asterisk","match":"(\\\\*)(?=\\\\w+)"},{"comment":"subpattern binding","match":"@","name":"keyword.operator.subpattern.rust"},{"comment":"dot access","match":"\\\\.(?!\\\\.)","name":"keyword.operator.access.dot.rust"},{"comment":"ranges, range patterns","match":"\\\\.{2}(=|\\\\.)?","name":"keyword.operator.range.rust"},{"comment":"colon","match":":(?!:)","name":"keyword.operator.key-value.rust"},{"comment":"dashrocket, skinny arrow","match":"->|<-","name":"keyword.operator.arrow.skinny.rust"},{"comment":"hashrocket, fat arrow","match":"=>","name":"keyword.operator.arrow.fat.rust"},{"comment":"dollar macros","match":"\\\\$","name":"keyword.operator.macro.dollar.rust"},{"comment":"question mark operator, questionably sized, macro kleene matcher","match":"\\\\?","name":"keyword.operator.question.rust"}]},"lifetimes":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.lifetime.rust"},"2":{"name":"entity.name.type.lifetime.rust"}},"comment":"named lifetime parameters","match":"(['])([a-zA-Z_][0-9a-zA-Z_]*)(?!['])\\\\b"},{"captures":{"1":{"name":"keyword.operator.borrow.rust"},"2":{"name":"punctuation.definition.lifetime.rust"},"3":{"name":"entity.name.type.lifetime.rust"}},"comment":"borrowing references to named lifetimes","match":"(\\\\&)(['])([a-zA-Z_][0-9a-zA-Z_]*)(?!['])\\\\b"}]},"lvariables":{"patterns":[{"comment":"self","match":"\\\\b[Ss]elf\\\\b","name":"variable.language.self.rust"},{"comment":"super","match":"\\\\bsuper\\\\b","name":"variable.language.super.rust"}]},"macros":{"patterns":[{"captures":{"2":{"name":"entity.name.function.macro.rust"},"3":{"name":"entity.name.type.macro.rust"}},"comment":"macros","match":"(([a-z_][A-Za-z0-9_]*!)|([A-Z_][A-Za-z0-9_]*!))","name":"meta.macro.rust"}]},"namespaces":{"patterns":[{"captures":{"1":{"name":"entity.name.namespace.rust"},"2":{"name":"keyword.operator.namespace.rust"}},"comment":"namespace (non-type, non-function path segment)","match":"(?<![A-Za-z0-9_])([A-Za-z0-9_]+)((?<!super|self)::)"}]},"punctuation":{"patterns":[{"comment":"comma","match":",","name":"punctuation.comma.rust"},{"comment":"curly braces","match":"[{}]","name":"punctuation.brackets.curly.rust"},{"comment":"parentheses, round brackets","match":"[()]","name":"punctuation.brackets.round.rust"},{"comment":"semicolon","match":";","name":"punctuation.semi.rust"},{"comment":"square brackets","match":"[\\\\[\\\\]]","name":"punctuation.brackets.square.rust"},{"comment":"angle brackets","match":"(?<!=)[<>]","name":"punctuation.brackets.angle.rust"}]},"strings":{"patterns":[{"begin":"(b?)(\\")","beginCaptures":{"1":{"name":"string.quoted.byte.raw.rust"},"2":{"name":"punctuation.definition.string.rust"}},"comment":"double-quoted strings and byte strings","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.rust"}},"name":"string.quoted.double.rust","patterns":[{"include":"#escapes"},{"include":"#interpolations"}]},{"begin":"(b?r)(#*)(\\")","beginCaptures":{"1":{"name":"string.quoted.byte.raw.rust"},"2":{"name":"punctuation.definition.string.raw.rust"},"3":{"name":"punctuation.definition.string.rust"}},"comment":"double-quoted raw strings and raw byte strings","end":"(\\")(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.rust"},"2":{"name":"punctuation.definition.string.raw.rust"}},"name":"string.quoted.double.rust"},{"begin":"(b)?(')","beginCaptures":{"1":{"name":"string.quoted.byte.raw.rust"},"2":{"name":"punctuation.definition.char.rust"}},"comment":"characters and bytes","end":"'","endCaptures":{"0":{"name":"punctuation.definition.char.rust"}},"name":"string.quoted.single.char.rust","patterns":[{"include":"#escapes"}]}]},"types":{"patterns":[{"captures":{"1":{"name":"entity.name.type.numeric.rust"}},"comment":"numeric types","match":"(?<![A-Za-z])(f32|f64|i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)\\\\b"},{"begin":"\\\\b(_?[A-Z][A-Za-z0-9_]*)(<)","beginCaptures":{"1":{"name":"entity.name.type.rust"},"2":{"name":"punctuation.brackets.angle.rust"}},"comment":"parameterized types","end":">","endCaptures":{"0":{"name":"punctuation.brackets.angle.rust"}},"patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#keywords"},{"include":"#lvariables"},{"include":"#lifetimes"},{"include":"#punctuation"},{"include":"#types"},{"include":"#variables"}]},{"comment":"primitive types","match":"\\\\b(bool|char|str)\\\\b","name":"entity.name.type.primitive.rust"},{"captures":{"1":{"name":"keyword.declaration.trait.rust storage.type.rust"},"2":{"name":"entity.name.type.trait.rust"}},"comment":"trait declarations","match":"\\\\b(trait)\\\\s+(_?[A-Z][A-Za-z0-9_]*)\\\\b"},{"captures":{"1":{"name":"keyword.declaration.struct.rust storage.type.rust"},"2":{"name":"entity.name.type.struct.rust"}},"comment":"struct declarations","match":"\\\\b(struct)\\\\s+(_?[A-Z][A-Za-z0-9_]*)\\\\b"},{"captures":{"1":{"name":"keyword.declaration.enum.rust storage.type.rust"},"2":{"name":"entity.name.type.enum.rust"}},"comment":"enum declarations","match":"\\\\b(enum)\\\\s+(_?[A-Z][A-Za-z0-9_]*)\\\\b"},{"captures":{"1":{"name":"keyword.declaration.type.rust storage.type.rust"},"2":{"name":"entity.name.type.declaration.rust"}},"comment":"type declarations","match":"\\\\b(type)\\\\s+(_?[A-Z][A-Za-z0-9_]*)\\\\b"},{"comment":"types","match":"\\\\b_?[A-Z][A-Za-z0-9_]*\\\\b(?!!)","name":"entity.name.type.rust"}]},"variables":{"patterns":[{"comment":"variables","match":"\\\\b(?<!(?<!\\\\.)\\\\.)(?:r#(?!(crate|[Ss]elf|super)))?[a-z0-9_]+\\\\b","name":"variable.other.rust"}]}},"scopeName":"source.rust","aliases":["rs"]}`));var t=[e];export{t as default};