nuxt-og-image 3.0.0-rc.66 → 3.0.0-rc.68

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 (353) hide show
  1. package/README.md +3 -6
  2. package/dist/client/200.html +179 -179
  3. package/dist/client/404.html +179 -179
  4. package/dist/client/_nuxt/{BfBkfEDj.js → 0OCEc-sb.js} +1 -1
  5. package/dist/client/_nuxt/16nqZaIT.js +1 -0
  6. package/dist/client/_nuxt/3Ts0ZrM4.js +4 -0
  7. package/dist/client/_nuxt/44JOqR_V.js +1 -0
  8. package/dist/client/_nuxt/4FkZXfg1.js +3 -0
  9. package/dist/client/_nuxt/{DoY4Dbtn.js → 4WleZr1P.js} +1 -1
  10. package/dist/client/_nuxt/5HixFuyr.js +1 -0
  11. package/dist/client/_nuxt/{C31OBGbl.js → 5bRVBCrv.js} +1 -1
  12. package/dist/client/_nuxt/{DanM9F4-.js → 7LPQ6a13.js} +2 -2
  13. package/dist/client/_nuxt/8WiSp-0_.js +1 -0
  14. package/dist/client/_nuxt/9CfBjzQa.js +1 -0
  15. package/dist/client/_nuxt/B-9EjyZr.js +1 -0
  16. package/dist/client/_nuxt/B-a2BbyY.js +1 -0
  17. package/dist/client/_nuxt/B0LoMq2b.js +1 -0
  18. package/dist/client/_nuxt/{BSSAUge4.js → B1ejXUAS.js} +1 -1
  19. package/dist/client/_nuxt/{DhldU3XI.js → B3LRAdDP.js} +1 -1
  20. package/dist/client/_nuxt/B7-FEXAT.js +1 -0
  21. package/dist/client/_nuxt/B9HI_aQy.js +1 -0
  22. package/dist/client/_nuxt/{D85lwgPO.js → B9vFkdfw.js} +1 -1
  23. package/dist/client/_nuxt/BAGvEKUB.js +1 -0
  24. package/dist/client/_nuxt/BAp2aEeE.js +1 -0
  25. package/dist/client/_nuxt/{C3NvtN4M.js → BB9S_66N.js} +1 -1
  26. package/dist/client/_nuxt/{AoxqhCl0.js → BCOu96sC.js} +1 -1
  27. package/dist/client/_nuxt/BGk6HrHT.js +1 -0
  28. package/dist/client/_nuxt/BHSTd-7M.js +1 -0
  29. package/dist/client/_nuxt/BKFBoKT4.js +1 -0
  30. package/dist/client/_nuxt/BKNiEhql.js +1 -0
  31. package/dist/client/_nuxt/BNgG76gt.js +1 -0
  32. package/dist/client/_nuxt/{BbPU79SD.js → BNofkYSZ.js} +14 -14
  33. package/dist/client/_nuxt/BOp3HRET.js +1 -0
  34. package/dist/client/_nuxt/{DaDGU6kf.js → BQnHL-cn.js} +1 -1
  35. package/dist/client/_nuxt/BS9sT-GQ.js +1 -0
  36. package/dist/client/_nuxt/BU83OF-G.js +1 -0
  37. package/dist/client/_nuxt/BUeIC4cT.js +1 -0
  38. package/dist/client/_nuxt/BXUVD3TH.js +1 -0
  39. package/dist/client/_nuxt/BXWtGw2n.js +6 -0
  40. package/dist/client/_nuxt/{VVtMly4c.js → BYLuaE_S.js} +1 -1
  41. package/dist/client/_nuxt/{C46DigdT.js → Ba_2pva2.js} +1 -1
  42. package/dist/client/_nuxt/BeX7BQ1y.js +1 -0
  43. package/dist/client/_nuxt/{ChVe37jp.js → BfVRrWqI.js} +1 -1
  44. package/dist/client/_nuxt/BgEvnnZj.js +1 -0
  45. package/dist/client/_nuxt/{BEPTDMGr.js → Bgrlo6mM.js} +1 -1
  46. package/dist/client/_nuxt/{CBoehFVA.js → Bl6w8nq6.js} +2 -2
  47. package/dist/client/_nuxt/BmUjtHPt.js +1 -0
  48. package/dist/client/_nuxt/BnYPtiAB.js +1 -0
  49. package/dist/client/_nuxt/{B9S9BZZh.js → BotTw_1M.js} +1 -1
  50. package/dist/client/_nuxt/BpqPLH6b.js +1 -0
  51. package/dist/client/_nuxt/{DT2db06B.js → Br4herk8.js} +1 -1
  52. package/dist/client/_nuxt/Brmco9EZ.js +2 -0
  53. package/dist/client/_nuxt/{BiU8-mv6.js → Bs9WCFOo.js} +1 -1
  54. package/dist/client/_nuxt/BtPWTO6-.js +1 -0
  55. package/dist/client/_nuxt/BwUg_Rem.js +1 -0
  56. package/dist/client/_nuxt/Bxuka25Y.js +1 -0
  57. package/dist/client/_nuxt/{Bcn1f5Rp.js → BxwkrKyP.js} +1 -1
  58. package/dist/client/_nuxt/{D9s3Eyz8.js → ByN1NmdT.js} +2 -2
  59. package/dist/client/_nuxt/C2Z2wNnw.js +1 -0
  60. package/dist/client/_nuxt/{DGTPbQyx.js → C3wf4cjV.js} +1 -1
  61. package/dist/client/_nuxt/{16u1w-DC.js → C5J_9lw5.js} +1 -1
  62. package/dist/client/_nuxt/C6doOGgB.js +1 -0
  63. package/dist/client/_nuxt/{BY8_eel9.js → C7xspq5a.js} +1 -1
  64. package/dist/client/_nuxt/C9CNr0dZ.js +1 -0
  65. package/dist/client/_nuxt/CA2blNRc.js +1 -0
  66. package/dist/client/_nuxt/{DFQMbhFG.js → CCW61mLD.js} +1 -1
  67. package/dist/client/_nuxt/{DOt8O2FJ.js → CDP-pALJ.js} +1 -1
  68. package/dist/client/_nuxt/{LrshOcZ2.js → CFy8Z7mU.js} +1 -1
  69. package/dist/client/_nuxt/CHDuk4cg.js +1 -0
  70. package/dist/client/_nuxt/{B5v32tNS.js → CKK8qrH7.js} +2 -2
  71. package/dist/client/_nuxt/CKqhLkpw.js +1 -0
  72. package/dist/client/_nuxt/{MJ0gDQnJ.js → CLTURUqp.js} +3 -3
  73. package/dist/client/_nuxt/CPQn-Lhb.js +1 -0
  74. package/dist/client/_nuxt/CRUEGcu5.js +1 -0
  75. package/dist/client/_nuxt/{CT9A9Qiu.js → CS6sTstm.js} +1 -1
  76. package/dist/client/_nuxt/{DWE3vCE5.js → CSPPpfsQ.js} +1 -1
  77. package/dist/client/_nuxt/CTeQKLZv.js +1 -0
  78. package/dist/client/_nuxt/CTsPJjdJ.js +1 -0
  79. package/dist/client/_nuxt/{A4Fa72hX.js → CUNQUWO_.js} +1 -1
  80. package/dist/client/_nuxt/CV5B5C80.js +1 -0
  81. package/dist/client/_nuxt/CZkFsSlX.js +1 -0
  82. package/dist/client/_nuxt/{8R90CSQj.js → C_h5G2He.js} +1 -1
  83. package/dist/client/_nuxt/{B5--Xptx.js → CaR_I2C-.js} +1 -1
  84. package/dist/client/_nuxt/Cb48SAmt.js +1 -0
  85. package/dist/client/_nuxt/{nc-bU77P.js → CeIpHJfZ.js} +3 -3
  86. package/dist/client/_nuxt/{coyhVBVA.js → ClPxYbPx.js} +1 -1
  87. package/dist/client/_nuxt/Clj_IpB8.js +1 -0
  88. package/dist/client/_nuxt/CmN1UzhW.js +1 -0
  89. package/dist/client/_nuxt/CvHWZNAB.js +1 -0
  90. package/dist/client/_nuxt/CyUS7F7b.js +17 -0
  91. package/dist/client/_nuxt/{D4LJwL2b.js → Cz-n9WvF.js} +1 -1
  92. package/dist/client/_nuxt/{CDzo4tzE.js → Cz3ygVR-.js} +1 -1
  93. package/dist/client/_nuxt/{CEuqc8ZQ.js → CzK8D06Z.js} +1 -1
  94. package/dist/client/_nuxt/{CXYaz1c9.js → D0N_qbs7.js} +1 -1
  95. package/dist/client/_nuxt/D0pnavP-.js +1 -0
  96. package/dist/client/_nuxt/D25Gr2Wc.js +1 -0
  97. package/dist/client/_nuxt/D4miJ1xw.js +1 -0
  98. package/dist/client/_nuxt/D6oCKXcX.js +1 -0
  99. package/dist/client/_nuxt/DBLgxP_1.js +2 -0
  100. package/dist/client/_nuxt/{ByMv4Xf1.js → DCmDdbvy.js} +1 -1
  101. package/dist/client/_nuxt/{zt9m_cFA.js → DDG_rSGg.js} +1 -1
  102. package/dist/client/_nuxt/DFHN_7lU.js +3 -0
  103. package/dist/client/_nuxt/DFsxFixh.js +1 -0
  104. package/dist/client/_nuxt/DGhhRy1e.js +1 -0
  105. package/dist/client/_nuxt/{DdacRhvC.js → DIw1DfnK.js} +1 -1
  106. package/dist/client/_nuxt/DJNHLfzP.js +1 -0
  107. package/dist/client/_nuxt/{XP2_9bVu.js → DJOPMAPO.js} +1 -1
  108. package/dist/client/_nuxt/DO04iIl4.js +1 -0
  109. package/dist/client/_nuxt/DOOuMSMh.js +1 -0
  110. package/dist/client/_nuxt/DRuVOcqL.js +1 -0
  111. package/dist/client/_nuxt/{B2Zkg-Ae.js → DSv7Jr7N.js} +2 -2
  112. package/dist/client/_nuxt/DTMFIK7w.js +1 -0
  113. package/dist/client/_nuxt/{6XBPEST2.js → DXdsTRaC.js} +1 -1
  114. package/dist/client/_nuxt/{DgraCSOE.js → DXtfa3TF.js} +1 -1
  115. package/dist/client/_nuxt/{iYrPSY0y.js → DYgwfmdY.js} +1 -1
  116. package/dist/client/_nuxt/DYikCEmq.js +1 -0
  117. package/dist/client/_nuxt/{D6SwP_ef.js → DYrknm32.js} +1 -1
  118. package/dist/client/_nuxt/D_lsq3cR.js +1 -0
  119. package/dist/client/_nuxt/{4JG6XROL.js → Dc3u8CCo.js} +1 -1
  120. package/dist/client/_nuxt/Df4vQnuo.js +1 -0
  121. package/dist/client/_nuxt/Di1G_BEd.js +1 -0
  122. package/dist/client/_nuxt/Dk2kDqHs.js +1 -0
  123. package/dist/client/_nuxt/DkIL16gc.js +2 -0
  124. package/dist/client/_nuxt/DmixpzPA.js +1 -0
  125. package/dist/client/_nuxt/{CkoJTUbt.js → Dnd6U92I.js} +1 -1
  126. package/dist/client/_nuxt/DofIr7ih.js +1 -0
  127. package/dist/client/_nuxt/DqFtmHIk.js +1 -0
  128. package/dist/client/_nuxt/{DLpTrZod.js → DrUHIbQf.js} +1 -1
  129. package/dist/client/_nuxt/{CJ21IjBY.js → DrhOmAGa.js} +1 -1
  130. package/dist/client/_nuxt/{DmAvib0Y.js → DsO5WfEU.js} +1 -1
  131. package/dist/client/_nuxt/{CIlkkgNU.js → DsclqnHy.js} +1 -1
  132. package/dist/client/_nuxt/Dwk9V841.js +1 -0
  133. package/dist/client/_nuxt/DyLIn2qo.js +1 -0
  134. package/dist/client/_nuxt/{C9d3aiqh.js → DzhYcJWo.js} +1 -1
  135. package/dist/client/_nuxt/{DxX6t7GH.js → Dziqk49f.js} +1 -1
  136. package/dist/client/_nuxt/{DqvgqZmm.js → E5r7Moxb.js} +1 -1
  137. package/dist/client/_nuxt/{B_SUYfiV.js → FMRyFT8D.js} +1 -1
  138. package/dist/client/_nuxt/{TDVTyJvX.js → GACPk8cj.js} +1 -1
  139. package/dist/client/_nuxt/H94RPpLS.js +1 -0
  140. package/dist/client/_nuxt/{DBxHOdLe.js → HxmVvryO.js} +1 -1
  141. package/dist/client/_nuxt/JYC31MTV.js +1 -0
  142. package/dist/client/_nuxt/Jl0QvYgb.js +1 -0
  143. package/dist/client/_nuxt/{C17JnZbq.js → KA8c-whL.js} +1 -1
  144. package/dist/client/_nuxt/Ka_J5llu.js +1 -0
  145. package/dist/client/_nuxt/KuNYkU7X.js +1 -0
  146. package/dist/client/_nuxt/MkuNFWFs.js +204 -0
  147. package/dist/client/_nuxt/{BaedD2tq.js → N3zwmhmW.js} +1 -1
  148. package/dist/client/_nuxt/O4cDyHwR.js +1 -0
  149. package/dist/client/_nuxt/OPd3ySAa.js +1 -0
  150. package/dist/client/_nuxt/{BqpV9M7Y.js → Opso89zU.js} +1 -1
  151. package/dist/client/_nuxt/{CV8JdvfZ.js → PauOf_jS.js} +1 -1
  152. package/dist/client/_nuxt/Qj0mFepl.js +14 -0
  153. package/dist/client/_nuxt/R9SNgiQ9.js +1 -0
  154. package/dist/client/_nuxt/{C6XIsc4F.js → Rc0-bMtX.js} +1 -1
  155. package/dist/client/_nuxt/{CKpfY2P2.js → TYaudu4O.js} +1 -1
  156. package/dist/client/_nuxt/VRCUJX8G.js +1 -0
  157. package/dist/client/_nuxt/{CMiaevpY.js → Ys9ZunwU.js} +1 -1
  158. package/dist/client/_nuxt/builds/latest.json +1 -1
  159. package/dist/client/_nuxt/builds/meta/353519f1-2e76-4016-9b50-2f26f3cb8794.json +1 -0
  160. package/dist/client/_nuxt/{CD1ynQRS.js → eJKZXzCK.js} +1 -1
  161. package/dist/client/_nuxt/{PSVKygaU.js → eQYbbmqd.js} +1 -1
  162. package/dist/client/_nuxt/{entry.cOhDjBNG.css → entry.DtsycVcr.css} +1 -1
  163. package/dist/client/_nuxt/error-404.CUF_CFKB.css +1 -0
  164. package/dist/client/_nuxt/error-500.BR60owpQ.css +1 -0
  165. package/dist/client/_nuxt/i0hkWYmE.js +1 -0
  166. package/dist/client/_nuxt/{ByGMIDPY.js → ithPx4uF.js} +1 -1
  167. package/dist/client/_nuxt/{I-_ljZ1M.js → jDrCW69G.js} +1 -1
  168. package/dist/client/_nuxt/kveMaAK5.js +1 -0
  169. package/dist/client/_nuxt/lBoe4CZw.js +1 -0
  170. package/dist/client/_nuxt/{DoQu802G.js → lPxKsdjn.js} +1 -1
  171. package/dist/client/_nuxt/lRZxrFTT.js +1 -0
  172. package/dist/client/_nuxt/mvTh5Gok.js +1 -0
  173. package/dist/client/_nuxt/pCnzZaOt.js +1 -0
  174. package/dist/client/_nuxt/qpF8edk8.js +1 -0
  175. package/dist/client/_nuxt/qvnQm5y7.js +1 -0
  176. package/dist/client/_nuxt/qwoaayiL.js +1 -0
  177. package/dist/client/_nuxt/t1S7pxBA.js +1 -0
  178. package/dist/client/_nuxt/t6MJYFCU.js +5 -0
  179. package/dist/client/_nuxt/tEd5xQ4M.js +1 -0
  180. package/dist/client/_nuxt/{DZwJH60W.js → xGgVA17b.js} +1 -1
  181. package/dist/client/_nuxt/yvfKceIB.js +1 -0
  182. package/dist/client/_nuxt/{E1IWMS2c.js → z5DqfkHR.js} +1 -1
  183. package/dist/client/index.html +179 -179
  184. package/dist/module.d.mts +5 -1
  185. package/dist/module.d.ts +5 -1
  186. package/dist/module.json +2 -2
  187. package/dist/module.mjs +246 -131
  188. package/dist/runtime/nitro/og-image/bindings/chromium/chrome-launcher.js +1 -1
  189. package/dist/runtime/nitro/og-image/bindings/chromium/on-demand.js +1 -1
  190. package/dist/runtime/nitro/og-image/bindings/satori/wasm.js +1 -1
  191. package/dist/runtime/nitro/og-image/{cache.d.ts → cache/lru.d.ts} +3 -1
  192. package/dist/runtime/nitro/og-image/{cache.js → cache/lru.js} +6 -0
  193. package/dist/runtime/nitro/og-image/cache/mock.d.ts +9 -0
  194. package/dist/runtime/nitro/og-image/cache/mock.js +9 -0
  195. package/dist/runtime/nitro/og-image/chromium/renderer.js +1 -1
  196. package/dist/runtime/nitro/og-image/chromium/screenshot.js +1 -1
  197. package/dist/runtime/nitro/og-image/context.js +8 -8
  198. package/dist/runtime/nitro/og-image/satori/font.d.ts +1 -0
  199. package/dist/runtime/nitro/og-image/satori/font.js +2 -2
  200. package/dist/runtime/nitro/og-image/satori/instances.d.ts +1 -1
  201. package/dist/runtime/nitro/og-image/satori/plugins/encoding.js +1 -1
  202. package/dist/runtime/nitro/og-image/satori/plugins/flex.js +27 -2
  203. package/dist/runtime/nitro/og-image/satori/plugins/imageSrc.js +3 -3
  204. package/dist/runtime/nitro/og-image/satori/plugins/unocss.js +1 -1
  205. package/dist/runtime/nitro/og-image/satori/renderer.js +3 -7
  206. package/dist/runtime/nitro/og-image/satori/transforms/emojis.d.ts +0 -2
  207. package/dist/runtime/nitro/og-image/satori/transforms/emojis.js +1 -5
  208. package/dist/runtime/nitro/og-image/satori/transforms/inlineCss.js +1 -1
  209. package/dist/runtime/nitro/og-image/satori/vnodes.js +8 -8
  210. package/dist/runtime/nitro/og-image/templates/html.js +16 -21
  211. package/dist/runtime/nitro/plugins/__zero-runtime/nuxt-content.d.ts +2 -0
  212. package/dist/runtime/nitro/plugins/__zero-runtime/nuxt-content.js +9 -0
  213. package/dist/runtime/nitro/plugins/nuxt-content.js +2 -52
  214. package/dist/runtime/nitro/plugins/prerender.js +9 -4
  215. package/dist/runtime/nitro/routes/__zero-runtime/font.d.ts +2 -0
  216. package/dist/runtime/nitro/routes/__zero-runtime/font.js +8 -0
  217. package/dist/runtime/nitro/routes/__zero-runtime/image.d.ts +2 -0
  218. package/dist/runtime/nitro/routes/__zero-runtime/image.js +8 -0
  219. package/dist/runtime/nitro/routes/debug.json.js +2 -2
  220. package/dist/runtime/nitro/routes/font.js +3 -49
  221. package/dist/runtime/nitro/routes/image.js +3 -87
  222. package/dist/runtime/nitro/util/cache.js +3 -3
  223. package/dist/runtime/nitro/util/eventHandlers.d.ts +3 -0
  224. package/dist/runtime/nitro/util/eventHandlers.js +155 -0
  225. package/dist/runtime/nitro/util/kit.d.ts +1 -1
  226. package/dist/runtime/nitro/util/kit.js +3 -3
  227. package/dist/runtime/nitro/util/plugins.d.ts +2 -0
  228. package/dist/runtime/nitro/util/plugins.js +54 -0
  229. package/dist/runtime/nuxt/components/OgImage/OgImage.d.ts +1 -3
  230. package/dist/runtime/nuxt/components/OgImage/OgImage.js +1 -1
  231. package/dist/runtime/nuxt/components/OgImage/OgImageScreenshot.d.ts +1 -3
  232. package/dist/runtime/nuxt/components/OgImage/OgImageScreenshot.js +1 -1
  233. package/dist/runtime/nuxt/components/Templates/Community/NuxtSeo.vue +2 -2
  234. package/dist/runtime/nuxt/components/Templates/Community/SimpleBlog.vue +1 -1
  235. package/dist/runtime/nuxt/composables/defineOgImage.js +7 -5
  236. package/dist/runtime/nuxt/composables/defineOgImageComponent.d.ts +1 -1
  237. package/dist/runtime/nuxt/composables/mock.d.ts +1 -1
  238. package/dist/runtime/nuxt/plugins/__zero-runtime/og-image-canonical-urls.server.d.ts +2 -0
  239. package/dist/runtime/nuxt/plugins/__zero-runtime/og-image-canonical-urls.server.js +9 -0
  240. package/dist/runtime/nuxt/plugins/__zero-runtime/route-rule-og-image.server.d.ts +2 -0
  241. package/dist/runtime/nuxt/plugins/__zero-runtime/route-rule-og-image.server.js +9 -0
  242. package/dist/runtime/nuxt/plugins/og-image-canonical-urls.server.js +3 -51
  243. package/dist/runtime/nuxt/plugins/route-rule-og-image.server.js +4 -36
  244. package/dist/runtime/nuxt/utils/plugins.d.ts +3 -0
  245. package/dist/runtime/nuxt/utils/plugins.js +87 -0
  246. package/dist/runtime/nuxt/utils.js +6 -4
  247. package/dist/runtime/shared.js +3 -3
  248. package/dist/runtime/types.d.ts +6 -5
  249. package/dist/types.d.mts +0 -4
  250. package/dist/types.d.ts +0 -4
  251. package/package.json +31 -23
  252. package/dist/client/_nuxt/6bkCFmAg.js +0 -1
  253. package/dist/client/_nuxt/B3yJX9Qu.js +0 -1
  254. package/dist/client/_nuxt/B5USdwzW.js +0 -1
  255. package/dist/client/_nuxt/B7zm8LFH.js +0 -2
  256. package/dist/client/_nuxt/B8yeR86s.js +0 -1
  257. package/dist/client/_nuxt/B9MAV_WH.js +0 -1
  258. package/dist/client/_nuxt/B9afuS00.js +0 -1
  259. package/dist/client/_nuxt/BDUkJJFZ.js +0 -1
  260. package/dist/client/_nuxt/BEIEqD7s.js +0 -1
  261. package/dist/client/_nuxt/BESheOyt.js +0 -1
  262. package/dist/client/_nuxt/BFO9THtE.js +0 -1
  263. package/dist/client/_nuxt/BICcMyTi.js +0 -1
  264. package/dist/client/_nuxt/BIboXAcp.js +0 -1
  265. package/dist/client/_nuxt/BNuYtHxo.js +0 -1
  266. package/dist/client/_nuxt/BOCDpWc1.js +0 -17
  267. package/dist/client/_nuxt/BOtZLFcM.js +0 -3
  268. package/dist/client/_nuxt/BPiaQZfK.js +0 -1
  269. package/dist/client/_nuxt/BQgbS7Yt.js +0 -1
  270. package/dist/client/_nuxt/BSrQBeSJ.js +0 -131
  271. package/dist/client/_nuxt/BTO_K1fm.js +0 -1
  272. package/dist/client/_nuxt/BUQ2FcJX.js +0 -1
  273. package/dist/client/_nuxt/BVsCzzYp.js +0 -1
  274. package/dist/client/_nuxt/BccEf5hb.js +0 -1
  275. package/dist/client/_nuxt/BeqgMazi.js +0 -1
  276. package/dist/client/_nuxt/BltGI4TE.js +0 -1
  277. package/dist/client/_nuxt/BrHEiNXv.js +0 -1
  278. package/dist/client/_nuxt/BspO9hSn.js +0 -1
  279. package/dist/client/_nuxt/Bszlo9K_.js +0 -1
  280. package/dist/client/_nuxt/Bt3jdO27.js +0 -1
  281. package/dist/client/_nuxt/BzeF2RWN.js +0 -1
  282. package/dist/client/_nuxt/C5QX-GgJ.js +0 -1
  283. package/dist/client/_nuxt/C6F4YvHi.js +0 -1
  284. package/dist/client/_nuxt/C6pBAdyX.js +0 -1
  285. package/dist/client/_nuxt/C7O_L2NY.js +0 -1
  286. package/dist/client/_nuxt/C8KGJGmD.js +0 -1
  287. package/dist/client/_nuxt/C9X_x5J1.js +0 -1
  288. package/dist/client/_nuxt/CAkjjYd_.js +0 -1
  289. package/dist/client/_nuxt/CDLXdqou.js +0 -6
  290. package/dist/client/_nuxt/CTjLfFPV.js +0 -1
  291. package/dist/client/_nuxt/CY-WakqA.js +0 -1
  292. package/dist/client/_nuxt/C_D4IvTY.js +0 -1
  293. package/dist/client/_nuxt/CbFpZgCV.js +0 -1
  294. package/dist/client/_nuxt/CbjS_D4a.js +0 -1
  295. package/dist/client/_nuxt/CeUooOMz.js +0 -1
  296. package/dist/client/_nuxt/Clnf9f06.js +0 -1
  297. package/dist/client/_nuxt/CmHkUvIV.js +0 -1
  298. package/dist/client/_nuxt/CmonagEV.js +0 -1
  299. package/dist/client/_nuxt/CowR2XfX.js +0 -1
  300. package/dist/client/_nuxt/CuJfdYLG.js +0 -1
  301. package/dist/client/_nuxt/CwZIVF5c.js +0 -1
  302. package/dist/client/_nuxt/Cwv93qcC.js +0 -4
  303. package/dist/client/_nuxt/CzrtbdtR.js +0 -1
  304. package/dist/client/_nuxt/D1i8Vxii.js +0 -1
  305. package/dist/client/_nuxt/D384ylkT.js +0 -1
  306. package/dist/client/_nuxt/D7Nx8OLD.js +0 -1
  307. package/dist/client/_nuxt/D8YTaFMU.js +0 -1
  308. package/dist/client/_nuxt/D8ecWW_g.js +0 -1
  309. package/dist/client/_nuxt/DA288kE2.js +0 -3
  310. package/dist/client/_nuxt/DAVo6uMX.js +0 -1
  311. package/dist/client/_nuxt/DFRYOy8B.js +0 -1
  312. package/dist/client/_nuxt/DHCC4-m4.js +0 -1
  313. package/dist/client/_nuxt/DIC-ECB_.js +0 -1
  314. package/dist/client/_nuxt/DKluMpTE.js +0 -1
  315. package/dist/client/_nuxt/DKrjeWrU.js +0 -1
  316. package/dist/client/_nuxt/DOwv4Xrr.js +0 -1
  317. package/dist/client/_nuxt/DQdnirlo.js +0 -1
  318. package/dist/client/_nuxt/DRgydeCt.js +0 -1
  319. package/dist/client/_nuxt/DS9ZWoKD.js +0 -1
  320. package/dist/client/_nuxt/DSPtUMMI.js +0 -1
  321. package/dist/client/_nuxt/DYQagCV4.js +0 -1
  322. package/dist/client/_nuxt/DfqM7apN.js +0 -1
  323. package/dist/client/_nuxt/Dm9yFT8Y.js +0 -2
  324. package/dist/client/_nuxt/DoDCNZ2x.js +0 -1
  325. package/dist/client/_nuxt/Dtv2yyrc.js +0 -1
  326. package/dist/client/_nuxt/DvreHBtf.js +0 -1
  327. package/dist/client/_nuxt/DvyTQcux.js +0 -1
  328. package/dist/client/_nuxt/H2A8RXvM.js +0 -1
  329. package/dist/client/_nuxt/KCgU82S2.js +0 -1
  330. package/dist/client/_nuxt/NboNzovp.js +0 -1
  331. package/dist/client/_nuxt/PYrcYqZ1.js +0 -1
  332. package/dist/client/_nuxt/SXuYmi6B.js +0 -1
  333. package/dist/client/_nuxt/Sm_sVxcW.js +0 -14
  334. package/dist/client/_nuxt/Wkyh6-uf.js +0 -1
  335. package/dist/client/_nuxt/XrZDCB4K.js +0 -1
  336. package/dist/client/_nuxt/_fwBhpzY.js +0 -1
  337. package/dist/client/_nuxt/a0z0KVy-.js +0 -5
  338. package/dist/client/_nuxt/bPMpiWut.js +0 -1
  339. package/dist/client/_nuxt/builds/meta/517cb958-776a-47e2-bd34-69240f18e412.json +0 -1
  340. package/dist/client/_nuxt/d2PdAb0u.js +0 -2
  341. package/dist/client/_nuxt/error-404.F6YJ8FEX.css +0 -1
  342. package/dist/client/_nuxt/error-500.TGideFTg.css +0 -1
  343. package/dist/client/_nuxt/g4vhSHS2.js +0 -1
  344. package/dist/client/_nuxt/kZiYIjIU.js +0 -1
  345. package/dist/client/_nuxt/lOwNZ7_V.js +0 -1
  346. package/dist/client/_nuxt/nfCtBF4F.js +0 -1
  347. package/dist/client/_nuxt/pit2X7C0.js +0 -1
  348. package/dist/client/_nuxt/r5D-aIjp.js +0 -1
  349. package/dist/client/_nuxt/rh45RTDP.js +0 -1
  350. package/dist/client/_nuxt/tgs8ujlj.js +0 -1
  351. package/dist/client/_nuxt/v_4dTNAb.js +0 -1
  352. package/dist/client/_nuxt/vvK2q8Zt.js +0 -1
  353. package/dist/client/_nuxt/yOCz8xPT.js +0 -1
@@ -0,0 +1 @@
1
+ import e from"./B1ejXUAS.js";import n from"./CUNQUWO_.js";import t from"./5bRVBCrv.js";import i from"./lRZxrFTT.js";import r from"./PauOf_jS.js";import"./CmN1UzhW.js";const a=Object.freeze({displayName:"Perl",name:"perl",patterns:[{include:"#line_comment"},{begin:"^(?==[a-zA-Z]+)",end:"^(=cut\\b.*$)",endCaptures:{1:{patterns:[{include:"#pod"}]}},name:"comment.block.documentation.perl",patterns:[{include:"#pod"}]},{include:"#variable"},{applyEndPatternLast:1,begin:"\\b(?=qr\\s*[^\\s\\w])",comment:"string.regexp.compile.perl",end:"((([egimosxradlupcn]*)))(?=(\\s+\\S|\\s*[;\\,#{})]|\\s*$))",endCaptures:{1:{name:"string.regexp.compile.perl"},2:{name:"punctuation.definition.string.perl"},3:{name:"keyword.control.regexp-option.perl"}},patterns:[{begin:"(qr)\\s*\\{",captures:{0:{name:"punctuation.definition.string.perl"},1:{name:"support.function.perl"}},end:"\\}",name:"string.regexp.compile.nested_braces.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_braces_interpolated"}]},{begin:"(qr)\\s*\\[",captures:{0:{name:"punctuation.definition.string.perl"},1:{name:"support.function.perl"}},end:"\\]",name:"string.regexp.compile.nested_brackets.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_brackets_interpolated"}]},{begin:"(qr)\\s*<",captures:{0:{name:"punctuation.definition.string.perl"},1:{name:"support.function.perl"}},end:">",name:"string.regexp.compile.nested_ltgt.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_ltgt_interpolated"}]},{begin:"(qr)\\s*\\(",captures:{0:{name:"punctuation.definition.string.perl"},1:{name:"support.function.perl"}},end:"\\)",name:"string.regexp.compile.nested_parens.perl",patterns:[{comment:"This is to prevent thinks like qr/foo$/ to treat $/ as a variable",match:"\\$(?=[^\\s\\w\\\\'{\\[(<])"},{include:"#escaped_char"},{include:"#variable"},{include:"#nested_parens_interpolated"}]},{begin:"(qr)\\s*'",captures:{0:{name:"punctuation.definition.string.perl"},1:{name:"support.function.perl"}},end:"'",name:"string.regexp.compile.single-quote.perl",patterns:[{include:"#escaped_char"}]},{begin:"(qr)\\s*([^\\s\\w'{\\[(<])",captures:{0:{name:"punctuation.definition.string.perl"},1:{name:"support.function.perl"}},end:"\\2",name:"string.regexp.compile.simple-delimiter.perl",patterns:[{comment:"This is to prevent thinks like qr/foo$/ to treat $/ as a variable",match:"\\$(?=[^\\s\\w'{\\[(<])",name:"keyword.control.anchor.perl"},{include:"#escaped_char"},{include:"#variable"},{include:"#nested_parens_interpolated"}]}]},{applyEndPatternLast:1,begin:"(?<!\\{|\\+|-)\\b(?=m\\s*[^\\sa-zA-Z0-9])",comment:"string.regexp.find-m.perl",end:"((([egimosxradlupcn]*)))(?=(\\s+\\S|\\s*[;\\,#{})]|\\s*$))",endCaptures:{1:{name:"string.regexp.find-m.perl"},2:{name:"punctuation.definition.string.perl"},3:{name:"keyword.control.regexp-option.perl"}},patterns:[{begin:"(m)\\s*\\{",captures:{0:{name:"punctuation.definition.string.perl"},1:{name:"support.function.perl"}},end:"\\}",name:"string.regexp.find-m.nested_braces.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_braces_interpolated"}]},{begin:"(m)\\s*\\[",captures:{0:{name:"punctuation.definition.string.perl"},1:{name:"support.function.perl"}},end:"\\]",name:"string.regexp.find-m.nested_brackets.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_brackets_interpolated"}]},{begin:"(m)\\s*<",captures:{0:{name:"punctuation.definition.string.perl"},1:{name:"support.function.perl"}},end:">",name:"string.regexp.find-m.nested_ltgt.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_ltgt_interpolated"}]},{begin:"(m)\\s*\\(",captures:{0:{name:"punctuation.definition.string.perl"},1:{name:"support.function.perl"}},end:"\\)",name:"string.regexp.find-m.nested_parens.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_parens_interpolated"}]},{begin:"(m)\\s*'",captures:{0:{name:"punctuation.definition.string.perl"},1:{name:"support.function.perl"}},end:"'",name:"string.regexp.find-m.single-quote.perl",patterns:[{include:"#escaped_char"}]},{begin:"\\G(?<!\\{|\\+|-)(m)(?!_)\\s*([^\\sa-zA-Z0-9'{\\[(<])",captures:{0:{name:"punctuation.definition.string.perl"},1:{name:"support.function.perl"}},end:"\\2",name:"string.regexp.find-m.simple-delimiter.perl",patterns:[{comment:"This is to prevent thinks like qr/foo$/ to treat $/ as a variable",match:"\\$(?=[^\\sa-zA-Z0-9'{\\[(<])",name:"keyword.control.anchor.perl"},{include:"#escaped_char"},{include:"#variable"},{begin:"\\[",beginCaptures:{1:{name:"punctuation.definition.character-class.begin.perl"}},end:"\\]",endCaptures:{1:{name:"punctuation.definition.character-class.end.perl"}},name:"constant.other.character-class.set.perl",patterns:[{comment:"This is to prevent thinks like qr/foo$/ to treat $/ as a variable",match:"\\$(?=[^\\s\\w'{\\[(<])",name:"keyword.control.anchor.perl"},{include:"#escaped_char"}]},{include:"#nested_parens_interpolated"}]}]},{applyEndPatternLast:1,begin:"\\b(?=(?<!\\&)(s)(\\s+\\S|\\s*[;\\,{}()\\[<]|$))",comment:"string.regexp.replace.perl",end:"((([egimosxradlupcn]*)))(?=(\\s+\\S|\\s*[;\\,{})\\]>]|\\s*$))",endCaptures:{1:{name:"string.regexp.replace.perl"},2:{name:"punctuation.definition.string.perl"},3:{name:"keyword.control.regexp-option.perl"}},patterns:[{begin:"(s)\\s*\\{",captures:{0:{name:"punctuation.definition.string.perl"},1:{name:"support.function.perl"}},end:"\\}",name:"string.regexp.nested_braces.perl",patterns:[{include:"#escaped_char"},{include:"#nested_braces"}]},{begin:"(s)\\s*\\[",captures:{0:{name:"punctuation.definition.string.perl"},1:{name:"support.function.perl"}},end:"\\]",name:"string.regexp.nested_brackets.perl",patterns:[{include:"#escaped_char"},{include:"#nested_brackets"}]},{begin:"(s)\\s*<",captures:{0:{name:"punctuation.definition.string.perl"},1:{name:"support.function.perl"}},end:">",name:"string.regexp.nested_ltgt.perl",patterns:[{include:"#escaped_char"},{include:"#nested_ltgt"}]},{begin:"(s)\\s*\\(",captures:{0:{name:"punctuation.definition.string.perl"},1:{name:"support.function.perl"}},end:"\\)",name:"string.regexp.nested_parens.perl",patterns:[{include:"#escaped_char"},{include:"#nested_parens"}]},{begin:"\\{",captures:{0:{name:"punctuation.definition.string.perl"}},end:"\\}",name:"string.regexp.format.nested_braces.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_braces_interpolated"}]},{begin:"\\[",captures:{0:{name:"punctuation.definition.string.perl"}},end:"\\]",name:"string.regexp.format.nested_brackets.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_brackets_interpolated"}]},{begin:"<",captures:{0:{name:"punctuation.definition.string.perl"}},end:">",name:"string.regexp.format.nested_ltgt.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_ltgt_interpolated"}]},{begin:"\\(",captures:{0:{name:"punctuation.definition.string.perl"}},end:"\\)",name:"string.regexp.format.nested_parens.perl",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_parens_interpolated"}]},{begin:"'",captures:{0:{name:"punctuation.definition.string.perl"}},end:"'",name:"string.regexp.format.single_quote.perl",patterns:[{match:"\\\\['\\\\]",name:"constant.character.escape.perl"}]},{begin:"([^\\s\\w\\[({<;])",captures:{0:{name:"punctuation.definition.string.perl"}},end:"\\1",name:"string.regexp.format.simple_delimiter.perl",patterns:[{include:"#escaped_char"},{include:"#variable"}]},{match:"\\s+"}]},{begin:"\\b(?=s([^\\sa-zA-Z0-9\\[({<]).*\\1([egimosxradlupcn]*)([})\\;\\,]|\\s+))",comment:"string.regexp.replaceXXX",end:"((([egimosxradlupcn]*)))(?=([})\\;\\,]|\\s+|\\s*$))",endCaptures:{1:{name:"string.regexp.replace.perl"},2:{name:"punctuation.definition.string.perl"},3:{name:"keyword.control.regexp-option.perl"}},patterns:[{begin:"(s\\s*)([^\\sa-zA-Z0-9\\[({<])",captures:{0:{name:"punctuation.definition.string.perl"},1:{name:"support.function.perl"}},end:"(?=\\2)",name:"string.regexp.replaceXXX.simple_delimiter.perl",patterns:[{include:"#escaped_char"}]},{begin:"'",captures:{0:{name:"punctuation.definition.string.perl"}},end:"'",name:"string.regexp.replaceXXX.format.single_quote.perl",patterns:[{match:"\\\\['\\\\]",name:"constant.character.escape.perl.perl"}]},{begin:"([^\\sa-zA-Z0-9\\[({<])",captures:{0:{name:"punctuation.definition.string.perl"}},end:"\\1",name:"string.regexp.replaceXXX.format.simple_delimiter.perl",patterns:[{include:"#escaped_char"},{include:"#variable"}]}]},{begin:"\\b(?=(?<!\\\\)s\\s*([^\\s\\w\\[({<>]))",comment:"string.regexp.replace.extended",end:"((([egimosradlupc]*x[egimosradlupc]*)))\\b",endCaptures:{1:{name:"string.regexp.replace.perl"},2:{name:"punctuation.definition.string.perl"},3:{name:"keyword.control.regexp-option.perl"}},patterns:[{begin:"(s)\\s*(.)",captures:{0:{name:"punctuation.definition.string.perl"},1:{name:"support.function.perl"}},end:"(?=\\2)",name:"string.regexp.replace.extended.simple_delimiter.perl",patterns:[{include:"#escaped_char"}]},{begin:"'",captures:{0:{name:"punctuation.definition.string.perl"}},end:"'(?=[egimosradlupc]*x[egimosradlupc]*)\\b",name:"string.regexp.replace.extended.simple_delimiter.perl",patterns:[{include:"#escaped_char"}]},{begin:"(.)",captures:{0:{name:"punctuation.definition.string.perl"}},end:"\\1(?=[egimosradlupc]*x[egimosradlupc]*)\\b",name:"string.regexp.replace.extended.simple_delimiter.perl",patterns:[{include:"#escaped_char"},{include:"#variable"}]}]},{begin:"(?<=\\(|\\{|~|&|\\||if|unless|^)\\s*((\\/))",beginCaptures:{1:{name:"string.regexp.find.perl"},2:{name:"punctuation.definition.string.perl"}},contentName:"string.regexp.find.perl",end:"((\\1([egimosxradlupcn]*)))(?=(\\s+\\S|\\s*[;\\,#{})]|\\s*$))",endCaptures:{1:{name:"string.regexp.find.perl"},2:{name:"punctuation.definition.string.perl"},3:{name:"keyword.control.regexp-option.perl"}},patterns:[{comment:"This is to prevent thinks like /foo$/ to treat $/ as a variable",match:"\\$(?=\\/)",name:"keyword.control.anchor.perl"},{include:"#escaped_char"},{include:"#variable"}]},{captures:{1:{name:"constant.other.key.perl"}},match:"\\b(\\w+)\\s*(?==>)"},{match:"(?<={)\\s*\\w+\\s*(?=})",name:"constant.other.bareword.perl"},{captures:{1:{name:"keyword.control.perl"},2:{name:"entity.name.type.class.perl"}},match:"^\\s*(package)\\s+([^\\s;]+)",name:"meta.class.perl"},{captures:{1:{name:"storage.type.sub.perl"},2:{name:"entity.name.function.perl"},3:{name:"storage.type.method.perl"}},match:"\\b(sub)(?:\\s+([-a-zA-Z0-9_]+))?\\s*(?:\\([$\\@\\*;]*\\))?[^\\w{]",name:"meta.function.perl"},{captures:{1:{name:"entity.name.function.perl"},2:{name:"punctuation.definition.parameters.perl"},3:{name:"variable.parameter.function.perl"}},match:"^\\s*(BEGIN|UNITCHECK|CHECK|INIT|END|DESTROY)\\b",name:"meta.function.perl"},{begin:"^(?=(\\t| {4}))",end:"(?=[^\\t\\s])",name:"meta.leading-tabs",patterns:[{captures:{1:{name:"meta.odd-tab"},2:{name:"meta.even-tab"}},match:"(\\t| {4})(\\t| {4})?"}]},{captures:{1:{name:"support.function.perl"},2:{name:"punctuation.definition.string.perl"},5:{name:"punctuation.definition.string.perl"},8:{name:"punctuation.definition.string.perl"}},match:"\\b(tr|y)\\s*([^A-Za-z0-9\\s])(.*?)(?<!\\\\)(\\\\{2})*(\\2)(.*?)(?<!\\\\)(\\\\{2})*(\\2)",name:"string.regexp.replace.perl"},{match:"\\b(__FILE__|__LINE__|__PACKAGE__|__SUB__)\\b",name:"constant.language.perl"},{begin:"\\b(__DATA__|__END__)\\n?",beginCaptures:{1:{name:"constant.language.perl"}},contentName:"comment.block.documentation.perl",end:"\\z",patterns:[{include:"#pod"}]},{match:"(?<!->)\\b(continue|default|die|do|else|elsif|exit|for|foreach|given|goto|if|last|next|redo|return|select|unless|until|wait|when|while|switch|case|require|use|eval)\\b",name:"keyword.control.perl"},{match:"\\b(my|our|local)\\b",name:"storage.modifier.perl"},{match:"(?<!\\w)-[rwxoRWXOezsfdlpSbctugkTBMAC]\\b",name:"keyword.operator.filetest.perl"},{match:"\\b(and|or|xor|as|not)\\b",name:"keyword.operator.logical.perl"},{match:"(<=>|=>|->)",name:"keyword.operator.comparison.perl"},{include:"#heredoc"},{begin:"\\bqq\\s*([^({\\[<\\w\\s])",beginCaptures:{0:{name:"punctuation.definition.string.begin.perl"}},end:"\\1",endCaptures:{0:{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.other.qq.perl",patterns:[{include:"#escaped_char"},{include:"#variable"}]},{begin:"\\bqx\\s*([^'({\\[<\\w\\s])",beginCaptures:{0:{name:"punctuation.definition.string.begin.perl"}},end:"\\1",endCaptures:{0:{name:"punctuation.definition.string.end.perl"}},name:"string.interpolated.qx.perl",patterns:[{include:"#escaped_char"},{include:"#variable"}]},{begin:"\\bqx\\s*'",beginCaptures:{0:{name:"punctuation.definition.string.begin.perl"}},end:"'",endCaptures:{0:{name:"punctuation.definition.string.end.perl"}},name:"string.interpolated.qx.single-quote.perl",patterns:[{include:"#escaped_char"}]},{begin:'"',beginCaptures:{0:{name:"punctuation.definition.string.begin.perl"}},end:'"',endCaptures:{0:{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.double.perl",patterns:[{include:"#escaped_char"},{include:"#variable"}]},{begin:"(?<!->)\\bqw?\\s*([^({\\[<\\w\\s])",beginCaptures:{0:{name:"punctuation.definition.string.begin.perl"}},end:"\\1",endCaptures:{0:{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.other.q.perl"},{begin:"'",beginCaptures:{0:{name:"punctuation.definition.string.begin.perl"}},end:"'",endCaptures:{0:{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.single.perl",patterns:[{match:"\\\\['\\\\]",name:"constant.character.escape.perl"}]},{begin:"`",beginCaptures:{0:{name:"punctuation.definition.string.begin.perl"}},end:"`",endCaptures:{0:{name:"punctuation.definition.string.end.perl"}},name:"string.interpolated.perl",patterns:[{include:"#escaped_char"},{include:"#variable"}]},{begin:"(?<!->)\\bqq\\s*\\(",beginCaptures:{0:{name:"punctuation.definition.string.begin.perl"}},end:"\\)",endCaptures:{0:{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.other.qq-paren.perl",patterns:[{include:"#escaped_char"},{include:"#nested_parens_interpolated"},{include:"#variable"}]},{begin:"\\bqq\\s*\\{",beginCaptures:{0:{name:"punctuation.definition.string.begin.perl"}},end:"\\}",endCaptures:{0:{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.other.qq-brace.perl",patterns:[{include:"#escaped_char"},{include:"#nested_braces_interpolated"},{include:"#variable"}]},{begin:"\\bqq\\s*\\[",beginCaptures:{0:{name:"punctuation.definition.string.begin.perl"}},end:"\\]",endCaptures:{0:{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.other.qq-bracket.perl",patterns:[{include:"#escaped_char"},{include:"#nested_brackets_interpolated"},{include:"#variable"}]},{begin:"\\bqq\\s*<",beginCaptures:{0:{name:"punctuation.definition.string.begin.perl"}},end:">",endCaptures:{0:{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.other.qq-ltgt.perl",patterns:[{include:"#escaped_char"},{include:"#nested_ltgt_interpolated"},{include:"#variable"}]},{begin:"(?<!->)\\bqx\\s*\\(",beginCaptures:{0:{name:"punctuation.definition.string.begin.perl"}},end:"\\)",endCaptures:{0:{name:"punctuation.definition.string.end.perl"}},name:"string.interpolated.qx-paren.perl",patterns:[{include:"#escaped_char"},{include:"#nested_parens_interpolated"},{include:"#variable"}]},{begin:"\\bqx\\s*\\{",beginCaptures:{0:{name:"punctuation.definition.string.begin.perl"}},end:"\\}",endCaptures:{0:{name:"punctuation.definition.string.end.perl"}},name:"string.interpolated.qx-brace.perl",patterns:[{include:"#escaped_char"},{include:"#nested_braces_interpolated"},{include:"#variable"}]},{begin:"\\bqx\\s*\\[",beginCaptures:{0:{name:"punctuation.definition.string.begin.perl"}},end:"\\]",endCaptures:{0:{name:"punctuation.definition.string.end.perl"}},name:"string.interpolated.qx-bracket.perl",patterns:[{include:"#escaped_char"},{include:"#nested_brackets_interpolated"},{include:"#variable"}]},{begin:"\\bqx\\s*<",beginCaptures:{0:{name:"punctuation.definition.string.begin.perl"}},end:">",endCaptures:{0:{name:"punctuation.definition.string.end.perl"}},name:"string.interpolated.qx-ltgt.perl",patterns:[{include:"#escaped_char"},{include:"#nested_ltgt_interpolated"},{include:"#variable"}]},{begin:"(?<!->)\\bqw?\\s*\\(",beginCaptures:{0:{name:"punctuation.definition.string.begin.perl"}},end:"\\)",endCaptures:{0:{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.other.q-paren.perl",patterns:[{include:"#nested_parens"}]},{begin:"\\bqw?\\s*\\{",beginCaptures:{0:{name:"punctuation.definition.string.begin.perl"}},end:"\\}",endCaptures:{0:{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.other.q-brace.perl",patterns:[{include:"#nested_braces"}]},{begin:"\\bqw?\\s*\\[",beginCaptures:{0:{name:"punctuation.definition.string.begin.perl"}},end:"\\]",endCaptures:{0:{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.other.q-bracket.perl",patterns:[{include:"#nested_brackets"}]},{begin:"\\bqw?\\s*<",beginCaptures:{0:{name:"punctuation.definition.string.begin.perl"}},end:">",endCaptures:{0:{name:"punctuation.definition.string.end.perl"}},name:"string.quoted.other.q-ltgt.perl",patterns:[{include:"#nested_ltgt"}]},{begin:"^__\\w+__",beginCaptures:{0:{name:"punctuation.definition.string.begin.perl"}},end:"$",endCaptures:{0:{name:"punctuation.definition.string.end.perl"}},name:"string.unquoted.program-block.perl"},{begin:"\\b(format)\\s+(\\w+)\\s*=",beginCaptures:{1:{name:"support.function.perl"},2:{name:"entity.name.function.format.perl"}},end:"^\\.\\s*$",name:"meta.format.perl",patterns:[{include:"#line_comment"},{include:"#variable"}]},{captures:{1:{name:"support.function.perl"},2:{name:"entity.name.function.perl"}},match:"\\b(x)\\s*(\\d+)\\b"},{match:"\\b(ARGV|DATA|ENV|SIG|STDERR|STDIN|STDOUT|atan2|bind|binmode|bless|caller|chdir|chmod|chomp|chop|chown|chr|chroot|close|closedir|cmp|connect|cos|crypt|dbmclose|dbmopen|defined|delete|dump|each|endgrent|endhostent|endnetent|endprotoent|endpwent|endservent|eof|eq|eval|exec|exists|exp|fcntl|fileno|flock|fork|formline|ge|getc|getgrent|getgrgid|getgrnam|gethostbyaddr|gethostbyname|gethostent|getlogin|getnetbyaddr|getnetbyname|getnetent|getpeername|getpgrp|getppid|getpriority|getprotobyname|getprotobynumber|getprotoent|getpwent|getpwnam|getpwuid|getservbyname|getservbyport|getservent|getsockname|getsockopt|glob|gmtime|grep|gt|hex|import|index|int|ioctl|join|keys|kill|lc|lcfirst|le|length|link|listen|local|localtime|log|lstat|lt|m|map|mkdir|msgctl|msgget|msgrcv|msgsnd|ne|no|oct|open|opendir|ord|pack|pipe|pop|pos|print|printf|push|quotemeta|rand|read|readdir|readlink|recv|ref|rename|reset|reverse|rewinddir|rindex|rmdir|s|say|scalar|seek|seekdir|semctl|semget|semop|send|setgrent|sethostent|setnetent|setpgrp|setpriority|setprotoent|setpwent|setservent|setsockopt|shift|shmctl|shmget|shmread|shmwrite|shutdown|sin|sleep|socket|socketpair|sort|splice|split|sprintf|sqrt|srand|stat|study|substr|symlink|syscall|sysopen|sysread|system|syswrite|tell|telldir|tie|tied|time|times|tr|truncate|uc|ucfirst|umask|undef|unlink|unpack|unshift|untie|utime|values|vec|waitpid|wantarray|warn|write|y)\\b",name:"support.function.perl"},{captures:{1:{name:"punctuation.section.scope.begin.perl"},2:{name:"punctuation.section.scope.end.perl"}},comment:"Match empty brackets for ↩ snippet",match:"(\\{)(\\})"},{captures:{1:{name:"punctuation.section.scope.begin.perl"},2:{name:"punctuation.section.scope.end.perl"}},comment:"Match empty parenthesis for ↩ snippet",match:"(\\()(\\))"}],repository:{escaped_char:{patterns:[{match:"\\\\\\d+",name:"constant.character.escape.perl"},{match:"\\\\c[^\\s\\\\]",name:"constant.character.escape.perl"},{match:"\\\\g(?:\\{(?:\\w*|-\\d+)\\}|\\d+)",name:"constant.character.escape.perl"},{match:"\\\\k(?:\\{\\w*\\}|<\\w*>|'\\w*')",name:"constant.character.escape.perl"},{match:"\\\\N\\{[^}]*\\}",name:"constant.character.escape.perl"},{match:"\\\\o\\{\\d*\\}",name:"constant.character.escape.perl"},{match:"\\\\(?:p|P)(?:\\{\\w*\\}|P)",name:"constant.character.escape.perl"},{match:"\\\\x(?:[0-9a-zA-Z]{2}|\\{\\w*\\})?",name:"constant.character.escape.perl"},{match:"\\\\.",name:"constant.character.escape.perl"}]},heredoc:{patterns:[{begin:"((((<<(~)?) *')(HTML)(')))(.*)\\n?",beginCaptures:{1:{name:"string.unquoted.heredoc.raw.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.raw.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.raw.perl"},3:{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.html",patterns:[{begin:"^",end:"\\n",name:"text.html.basic",patterns:[{include:"text.html.basic"}]}]},{begin:"((((<<(~)?) *')(XML)(')))(.*)\\n?",beginCaptures:{1:{name:"string.unquoted.heredoc.raw.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.raw.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.raw.perl"},3:{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.xml",patterns:[{begin:"^",end:"\\n",name:"text.xml",patterns:[{include:"text.xml"}]}]},{begin:"((((<<(~)?) *')(CSS)(')))(.*)\\n?",beginCaptures:{1:{name:"string.unquoted.heredoc.raw.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.raw.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.raw.perl"},3:{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.css",patterns:[{begin:"^",end:"\\n",name:"source.css",patterns:[{include:"source.css"}]}]},{begin:"((((<<(~)?) *')(JAVASCRIPT)(')))(.*)\\n?",beginCaptures:{1:{name:"string.unquoted.heredoc.raw.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.raw.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.raw.perl"},3:{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.js",patterns:[{begin:"^",end:"\\n",name:"source.js",patterns:[{include:"source.js"}]}]},{begin:"((((<<(~)?) *')(SQL)(')))(.*)\\n?",beginCaptures:{1:{name:"string.unquoted.heredoc.raw.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.raw.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.raw.perl"},3:{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.sql",patterns:[{begin:"^",end:"\\n",name:"source.sql",patterns:[{include:"source.sql"}]}]},{begin:"((((<<(~)?) *')(POSTSCRIPT)(')))(.*)\\n?",beginCaptures:{1:{name:"string.unquoted.heredoc.raw.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.raw.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.raw.perl"},3:{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.postscript",patterns:[{begin:"^",end:"\\n",name:"source.postscript",patterns:[{include:"source.postscript"}]}]},{begin:"((((<<(~)?) *')([^']*)(')))(.*)\\n?",beginCaptures:{1:{name:"string.unquoted.heredoc.raw.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.raw.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.raw.perl"},3:{name:"punctuation.definition.string.end.perl"}}},{begin:"((((<<(~)?) *\\\\)((?![=\\d$( ])[^;,'\"`\\s)]*)()))(.*)\\n?",beginCaptures:{1:{name:"string.unquoted.heredoc.raw.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.raw.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.raw.perl"},3:{name:"punctuation.definition.string.end.perl"}}},{begin:'((((<<(~)?) *")(HTML)(")))(.*)\\n?',beginCaptures:{1:{name:"string.unquoted.heredoc.interpolated.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.interpolated.perl"},3:{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.html",patterns:[{begin:"^",end:"\\n",name:"text.html.basic",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"text.html.basic"}]}]},{begin:'((((<<(~)?) *")(XML)(")))(.*)\\n?',beginCaptures:{1:{name:"string.unquoted.heredoc.interpolated.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.interpolated.perl"},3:{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.xml",patterns:[{begin:"^",end:"\\n",name:"text.xml",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"text.xml"}]}]},{begin:'((((<<(~)?) *")(CSS)(")))(.*)\\n?',beginCaptures:{1:{name:"string.unquoted.heredoc.interpolated.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.interpolated.perl"},3:{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.css",patterns:[{begin:"^",end:"\\n",name:"source.css",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"source.css"}]}]},{begin:'((((<<(~)?) *")(JAVASCRIPT)(")))(.*)\\n?',beginCaptures:{1:{name:"string.unquoted.heredoc.interpolated.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.interpolated.perl"},3:{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.js",patterns:[{begin:"^",end:"\\n",name:"source.js",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"source.js"}]}]},{begin:'((((<<(~)?) *")(SQL)(")))(.*)\\n?',beginCaptures:{1:{name:"string.unquoted.heredoc.interpolated.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.interpolated.perl"},3:{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.sql",patterns:[{begin:"^",end:"\\n",name:"source.sql",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"source.sql"}]}]},{begin:'((((<<(~)?) *")(POSTSCRIPT)(")))(.*)\\n?',beginCaptures:{1:{name:"string.unquoted.heredoc.interpolated.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.interpolated.perl"},3:{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.postscript",patterns:[{begin:"^",end:"\\n",name:"source.postscript",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"source.postscript"}]}]},{begin:'((((<<(~)?) *")([^"]*)(")))(.*)\\n?',beginCaptures:{1:{name:"string.unquoted.heredoc.interpolated.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.interpolated.perl"},3:{name:"punctuation.definition.string.end.perl"}},patterns:[{include:"#escaped_char"},{include:"#variable"}]},{begin:"((((<<(~)?) *)(HTML)()))(.*)\\n?",beginCaptures:{1:{name:"string.unquoted.heredoc.interpolated.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.interpolated.perl"},3:{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.html",patterns:[{begin:"^",end:"\\n",name:"text.html.basic",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"text.html.basic"}]}]},{begin:"((((<<(~)?) *)(XML)()))(.*)\\n?",beginCaptures:{1:{name:"string.unquoted.heredoc.interpolated.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.interpolated.perl"},3:{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.xml",patterns:[{begin:"^",end:"\\n",name:"text.xml",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"text.xml"}]}]},{begin:"((((<<(~)?) *)(CSS)()))(.*)\\n?",beginCaptures:{1:{name:"string.unquoted.heredoc.interpolated.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.interpolated.perl"},3:{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.css",patterns:[{begin:"^",end:"\\n",name:"source.css",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"source.css"}]}]},{begin:"((((<<(~)?) *)(JAVASCRIPT)()))(.*)\\n?",beginCaptures:{1:{name:"string.unquoted.heredoc.interpolated.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.interpolated.perl"},3:{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.js",patterns:[{begin:"^",end:"\\n",name:"source.js",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"source.js"}]}]},{begin:"((((<<(~)?) *)(SQL)()))(.*)\\n?",beginCaptures:{1:{name:"string.unquoted.heredoc.interpolated.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.interpolated.perl"},3:{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.sql",patterns:[{begin:"^",end:"\\n",name:"source.sql",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"source.sql"}]}]},{begin:"((((<<(~)?) *)(POSTSCRIPT)()))(.*)\\n?",beginCaptures:{1:{name:"string.unquoted.heredoc.interpolated.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.interpolated.perl"},3:{name:"punctuation.definition.string.end.perl"}},name:"meta.embedded.block.postscript",patterns:[{begin:"^",end:"\\n",name:"source.postscript",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"source.postscript"}]}]},{begin:"((((<<(~)?) *)((?![=\\d$( ])[^;,'\"`\\s)]*)()))(.*)\\n?",beginCaptures:{1:{name:"string.unquoted.heredoc.interpolated.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.interpolated.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.interpolated.perl"},3:{name:"punctuation.definition.string.end.perl"}},patterns:[{include:"#escaped_char"},{include:"#variable"}]},{begin:"((((<<(~)?) *`)([^`]*)(`)))(.*)\\n?",beginCaptures:{1:{name:"string.unquoted.heredoc.interpolated.perl"},2:{name:"punctuation.definition.string.begin.perl"},3:{name:"punctuation.definition.delimiter.begin.perl"},7:{name:"punctuation.definition.delimiter.end.perl"},8:{patterns:[{include:"$self"}]}},contentName:"string.unquoted.heredoc.shell.perl",end:"^((?!\\5)\\s+)?((\\6))$",endCaptures:{2:{name:"string.unquoted.heredoc.interpolated.perl"},3:{name:"punctuation.definition.string.end.perl"}},patterns:[{include:"#escaped_char"},{include:"#variable"}]}]},line_comment:{patterns:[{begin:"(^[ \\t]+)?(?=#)",beginCaptures:{1:{name:"punctuation.whitespace.comment.leading.perl"}},end:"(?!\\G)",patterns:[{begin:"#",beginCaptures:{0:{name:"punctuation.definition.comment.perl"}},end:"\\n",name:"comment.line.number-sign.perl"}]}]},nested_braces:{begin:"\\{",captures:{1:{name:"punctuation.section.scope.perl"}},end:"\\}",patterns:[{include:"#escaped_char"},{include:"#nested_braces"}]},nested_braces_interpolated:{begin:"\\{",captures:{1:{name:"punctuation.section.scope.perl"}},end:"\\}",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_braces_interpolated"}]},nested_brackets:{begin:"\\[",captures:{1:{name:"punctuation.section.scope.perl"}},end:"\\]",patterns:[{include:"#escaped_char"},{include:"#nested_brackets"}]},nested_brackets_interpolated:{begin:"\\[",captures:{1:{name:"punctuation.section.scope.perl"}},end:"\\]",patterns:[{include:"#escaped_char"},{include:"#variable"},{include:"#nested_brackets_interpolated"}]},nested_ltgt:{begin:"<",captures:{1:{name:"punctuation.section.scope.perl"}},end:">",patterns:[{include:"#nested_ltgt"}]},nested_ltgt_interpolated:{begin:"<",captures:{1:{name:"punctuation.section.scope.perl"}},end:">",patterns:[{include:"#variable"},{include:"#nested_ltgt_interpolated"}]},nested_parens:{begin:"\\(",captures:{1:{name:"punctuation.section.scope.perl"}},end:"\\)",patterns:[{include:"#escaped_char"},{include:"#nested_parens"}]},nested_parens_interpolated:{begin:"\\(",captures:{1:{name:"punctuation.section.scope.perl"}},end:"\\)",patterns:[{comment:"This is to prevent thinks like qr/foo$/ to treat $/ as a variable",match:"\\$(?=[^\\s\\w'{\\[(<])",name:"keyword.control.anchor.perl"},{include:"#escaped_char"},{include:"#variable"},{include:"#nested_parens_interpolated"}]},pod:{patterns:[{match:"^=(pod|back|cut)\\b",name:"storage.type.class.pod.perl"},{begin:"^(=begin)\\s+(html)\\s*$",beginCaptures:{1:{name:"storage.type.class.pod.perl"},2:{name:"variable.other.pod.perl"}},contentName:"text.embedded.html.basic",end:"^(=end)\\s+(html)|^(?==cut)",endCaptures:{1:{name:"storage.type.class.pod.perl"},2:{name:"variable.other.pod.perl"}},name:"meta.embedded.pod.perl",patterns:[{include:"text.html.basic"}]},{captures:{1:{name:"storage.type.class.pod.perl"},2:{name:"variable.other.pod.perl",patterns:[{include:"#pod-formatting"}]}},match:"^(=(?:head[1-4]|item|over|encoding|begin|end|for))\\b\\s*(.*)"},{include:"#pod-formatting"}]},"pod-formatting":{patterns:[{captures:{1:{name:"markup.italic.pod.perl"},2:{name:"markup.italic.pod.perl"}},match:"I(?:<([^<>]+)>|<+(\\s+(?:(?<!\\s)>|[^>])+\\s+)>+)",name:"entity.name.type.instance.pod.perl"},{captures:{1:{name:"markup.bold.pod.perl"},2:{name:"markup.bold.pod.perl"}},match:"B(?:<([^<>]+)>|<+(\\s+(?:(?<!\\s)>|[^>])+\\s+)>+)",name:"entity.name.type.instance.pod.perl"},{captures:{1:{name:"markup.raw.pod.perl"},2:{name:"markup.raw.pod.perl"}},match:"C(?:<([^<>]+)>|<+(\\\\s+(?:(?<!\\\\s)>|[^>])+\\\\s+)>+)",name:"entity.name.type.instance.pod.perl"},{captures:{1:{name:"markup.underline.link.hyperlink.pod.perl"}},match:"L<([^>]+)>",name:"entity.name.type.instance.pod.perl"},{match:"[EFSXZ]<[^>]*>",name:"entity.name.type.instance.pod.perl"}]},variable:{patterns:[{captures:{1:{name:"punctuation.definition.variable.perl"}},match:"(\\$)&(?![A-Za-z0-9_])",name:"variable.other.regexp.match.perl"},{captures:{1:{name:"punctuation.definition.variable.perl"}},match:"(\\$)`(?![A-Za-z0-9_])",name:"variable.other.regexp.pre-match.perl"},{captures:{1:{name:"punctuation.definition.variable.perl"}},match:"(\\$)'(?![A-Za-z0-9_])",name:"variable.other.regexp.post-match.perl"},{captures:{1:{name:"punctuation.definition.variable.perl"}},match:"(\\$)\\+(?![A-Za-z0-9_])",name:"variable.other.regexp.last-paren-match.perl"},{captures:{1:{name:"punctuation.definition.variable.perl"}},match:'(\\$)"(?![A-Za-z0-9_])',name:"variable.other.readwrite.list-separator.perl"},{captures:{1:{name:"punctuation.definition.variable.perl"}},match:"(\\$)0(?![A-Za-z0-9_])",name:"variable.other.predefined.program-name.perl"},{captures:{1:{name:"punctuation.definition.variable.perl"}},match:"(\\$)[_ab\\*\\.\\/\\|,\\\\;#%=\\-~^:?!$<>()\\[\\]@](?![A-Za-z0-9_])",name:"variable.other.predefined.perl"},{captures:{1:{name:"punctuation.definition.variable.perl"}},match:"(\\$)\\d+(?![A-Za-z0-9_])",name:"variable.other.subpattern.perl"},{captures:{1:{name:"punctuation.definition.variable.perl"}},match:"([$\\@\\%](#)?)([a-zA-Zx7f-xff$]|::)([a-zA-Z0-9_x7f-xff$]|::)*\\b",name:"variable.other.readwrite.global.perl"},{captures:{1:{name:"punctuation.definition.variable.perl"},2:{name:"punctuation.definition.variable.perl"}},match:"(\\$\\{)(?:[a-zA-Zx7f-xff$]|::)(?:[a-zA-Z0-9_x7f-xff$]|::)*(\\})",name:"variable.other.readwrite.global.perl"},{captures:{1:{name:"punctuation.definition.variable.perl"}},match:"([$\\@\\%](#)?)[0-9_]\\b",name:"variable.other.readwrite.global.special.perl"}]}},scopeName:"source.perl",embeddedLangs:["html","xml","css","javascript","sql"]});var u=[...e,...n,...t,...i,...r,a];export{u as default};
@@ -0,0 +1,6 @@
1
+ const e=Object.freeze({displayName:"Haskell",fileTypes:["hs","hs-boot","hsig"],name:"haskell",patterns:[{include:"#liquid_haskell"},{include:"#comment_like"},{include:"#numeric_literals"},{include:"#string_literal"},{include:"#char_literal"},{match:"(?<!@|#)-\\}",name:"invalid"},{captures:{1:{name:"punctuation.paren.haskell"},2:{name:"punctuation.paren.haskell"}},match:"(\\()\\s*(\\))",name:"constant.language.unit.haskell"},{captures:{1:{name:"punctuation.paren.haskell"},2:{name:"keyword.operator.hash.haskell"},3:{name:"keyword.operator.hash.haskell"},4:{name:"punctuation.paren.haskell"}},match:"(\\()(#)\\s*(#)(\\))",name:"constant.language.unit.unboxed.haskell"},{captures:{1:{name:"punctuation.paren.haskell"},2:{name:"punctuation.paren.haskell"}},match:"(\\()\\s*,[\\s,]*(\\))",name:"support.constant.tuple.haskell"},{captures:{1:{name:"punctuation.paren.haskell"},2:{name:"keyword.operator.hash.haskell"},3:{name:"keyword.operator.hash.haskell"},4:{name:"punctuation.paren.haskell"}},match:"(\\()(#)\\s*,[\\s,]*(#)(\\))",name:"support.constant.tuple.unboxed.haskell"},{captures:{1:{name:"punctuation.bracket.haskell"},2:{name:"punctuation.bracket.haskell"}},match:"(\\[)\\s*(\\])",name:"constant.language.empty-list.haskell"},{begin:"(\\b(?<!')(module)|^(signature))(\\b(?!'))",beginCaptures:{2:{name:"keyword.other.module.haskell"},3:{name:"keyword.other.signature.haskell"}},end:"(?=\\b(?<!')where\\b(?!'))",name:"meta.declaration.module.haskell",patterns:[{include:"#comment_like"},{include:"#module_name"},{include:"#module_exports"},{match:"[a-z]+",name:"invalid"}]},{include:"#ffi"},{begin:"^(\\s*)(class)(\\b(?!'))",beginCaptures:{2:{name:"keyword.other.class.haskell"}},end:"(?=(?<!')\\bwhere\\b(?!'))|(?=\\}|;)|^(?!\\1\\s+\\S|\\s*(?:$|\\{-[^@]|--+(?![\\p{S}\\p{P}&&[^(),;\\[\\]{}`_\"']]).*$))",name:"meta.declaration.class.haskell",patterns:[{include:"#comment_like"},{include:"#where"},{include:"#type_signature"}]},{begin:"^(\\s*)(data|newtype)(?:\\s+(instance))?\\s+((?:(?!(?:(?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']])(?:=|--+)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']]))|(?:\\b(?<!')(?:where|deriving)\\b(?!'))|{-).)*)(?=\\b(?<!'')where\\b(?!''))",beginCaptures:{2:{name:"keyword.other.$2.haskell"},3:{name:"keyword.other.instance.haskell"},4:{patterns:[{include:"#type_signature"}]}},end:"(?=(?<!')\\bderiving\\b(?!'))|(?=\\}|;)|^(?!\\1\\s+\\S|\\s*(?:$|\\{-[^@]|--+(?![\\p{S}\\p{P}&&[^(),;\\[\\]{}`_\"']]).*$))",name:"meta.declaration.$2.generalized.haskell",patterns:[{include:"#comment_like"},{begin:"(?<!')\\b(where)\\s*(\\{)(?!-)",beginCaptures:{1:{name:"keyword.other.where.haskell"},2:{name:"punctuation.brace.haskell"}},end:"(\\})",endCaptures:{1:{name:"punctuation.brace.haskell"}},patterns:[{include:"#comment_like"},{include:"#gadt_constructor"},{match:";",name:"punctuation.semicolon.haskell"}]},{match:"\\b(?<!')(where)\\b(?!')",name:"keyword.other.where.haskell"},{include:"#deriving"},{include:"#gadt_constructor"}]},{include:"#role_annotation"},{begin:"^(\\s*)(pattern)\\s+(.*?)\\s+(::|∷)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']])",beginCaptures:{2:{name:"keyword.other.pattern.haskell"},3:{patterns:[{include:"#comma"},{include:"#data_constructor"}]},4:{name:"keyword.operator.double-colon.haskell"}},end:"(?=\\}|;)|^(?!\\1\\s+\\S|\\s*(?:$|\\{-[^@]|--+(?![\\p{S}\\p{P}&&[^(),;\\[\\]{}`_\"']]).*$))",name:"meta.declaration.pattern.type.haskell",patterns:[{include:"#type_signature"}]},{begin:"^\\s*(pattern)\\b(?!')",captures:{1:{name:"keyword.other.pattern.haskell"}},end:"(?=\\}|;)|^(?!\\1\\s+\\S|\\s*(?:$|\\{-[^@]|--+(?![\\p{S}\\p{P}&&[^(),;\\[\\]{}`_\"']]).*$))",name:"meta.declaration.pattern.haskell",patterns:[{include:"$self"}]},{begin:"^(\\s*)(data|newtype)(?:\\s+(family|instance))?\\s+(((?!(?:(?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']])(?:=|--+)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']]))|(?:\\b(?<!')(?:where|deriving)\\b(?!'))|{-).)*)",beginCaptures:{2:{name:"keyword.other.$2.haskell"},3:{name:"keyword.other.$3.haskell"},4:{patterns:[{include:"#type_signature"}]}},end:"(?=\\}|;)|^(?!\\1\\s+\\S|\\s*(?:$|\\{-[^@]|--+(?![\\p{S}\\p{P}&&[^(),;\\[\\]{}`_\"']]).*$))",name:"meta.declaration.$2.algebraic.haskell",patterns:[{include:"#comment_like"},{include:"#deriving"},{include:"#forall"},{include:"#adt_constructor"},{include:"#context"},{include:"#record_decl"},{include:"#type_signature"}]},{begin:"^(\\s*)(type)\\s+(family)\\b(?!')(((?!(?:(?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']])(?:=|--+)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']]))|\\b(?<!')where\\b(?!')|{-).)*)",beginCaptures:{2:{name:"keyword.other.type.haskell"},3:{name:"keyword.other.family.haskell"},4:{patterns:[{include:"#comment_like"},{include:"#where"},{include:"#type_signature"}]}},end:"(?=\\}|;)|^(?!\\1\\s+\\S|\\s*(?:$|\\{-[^@]|--+(?![\\p{S}\\p{P}&&[^(),;\\[\\]{}`_\"']]).*$))",name:"meta.declaration.type.family.haskell",patterns:[{include:"#comment_like"},{include:"#where"},{include:"#type_signature"}]},{begin:"^(\\s*)(type)(?:\\s+(instance))?\\s+(((?!(?:(?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']])(?:=|--+|::|∷)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']]))|{-).)*)",beginCaptures:{2:{name:"keyword.other.type.haskell"},3:{name:"keyword.other.instance.haskell"},4:{patterns:[{include:"#type_signature"}]}},end:"(?=\\}|;)|^(?!\\1\\s+\\S|\\s*(?:$|\\{-[^@]|--+(?![\\p{S}\\p{P}&&[^(),;\\[\\]{}`_\"']]).*$))",name:"meta.declaration.type.haskell",patterns:[{include:"#type_signature"}]},{begin:"^(\\s*)(instance)(\\b(?!'))",beginCaptures:{2:{name:"keyword.other.instance.haskell"}},end:"(?=\\b(?<!')(where)\\b(?!'))|(?=\\}|;)|^(?!\\1\\s+\\S|\\s*(?:$|\\{-[^@]|--+(?![\\p{S}\\p{P}&&[^(),;\\[\\]{}`_\"']]).*$))",name:"meta.declaration.instance.haskell",patterns:[{include:"#comment_like"},{include:"#where"},{include:"#type_signature"}]},{begin:"^(\\s*)(import)(\\b(?!'))",beginCaptures:{2:{name:"keyword.other.import.haskell"}},end:"(?=\\b(?<!')(where)\\b(?!'))|(?=\\}|;)|^(?!\\1\\s+\\S|\\s*(?:$|\\{-[^@]|--+(?![\\p{S}\\p{P}&&[^(),;\\[\\]{}`_\"']]).*$))",name:"meta.import.haskell",patterns:[{include:"#comment_like"},{include:"#where"},{captures:{1:{name:"keyword.other.$1.haskell"}},match:"(qualified|as|hiding)"},{include:"#module_name"},{include:"#module_exports"}]},{include:"#deriving"},{include:"#layout_herald"},{include:"#keyword"},{captures:{1:{name:"keyword.other.$1.haskell"},2:{patterns:[{include:"#comment_like"},{include:"#integer_literals"},{include:"#infix_op"}]}},match:"^\\s*(infix[lr]?)\\s+(.*)",name:"meta.fixity-declaration.haskell"},{include:"#overloaded_label"},{include:"#type_application"},{include:"#reserved_symbol"},{include:"#fun_decl"},{include:"#qualifier"},{include:"#data_constructor"},{include:"#start_type_signature"},{include:"#prefix_op"},{include:"#infix_op"},{begin:"(\\()(#)\\s",beginCaptures:{1:{name:"punctuation.paren.haskell"},2:{name:"keyword.operator.hash.haskell"}},end:"(#)(\\))",endCaptures:{1:{name:"keyword.operator.hash.haskell"},2:{name:"punctuation.paren.haskell"}},patterns:[{include:"#comma"},{include:"$self"}]},{begin:"(\\()",beginCaptures:{1:{name:"punctuation.paren.haskell"}},end:"(\\))",endCaptures:{1:{name:"punctuation.paren.haskell"}},patterns:[{include:"#comma"},{include:"$self"}]},{include:"#quasi_quote"},{begin:"(\\[)",beginCaptures:{1:{name:"punctuation.bracket.haskell"}},end:"(\\])",endCaptures:{1:{name:"punctuation.bracket.haskell"}},patterns:[{include:"#comma"},{include:"$self"}]},{include:"#record"}],repository:{adt_constructor:{patterns:[{include:"#comment_like"},{begin:"(?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']])(?:(=)|(\\|))(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']])",beginCaptures:{1:{name:"keyword.operator.eq.haskell"},2:{name:"keyword.operator.pipe.haskell"}},end:"(?:\\G|^)\\s*(?:(?:(?<!')\\b((?:[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'\\.])+)|('?(?<paren>\\((?:[^()]*|\\g<paren>)*\\)))|('?(?<brac>\\((?:[^\\[\\]]*|\\g<brac>)*\\])))\\s*(?:(?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']])(:[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']]*)|(`)([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)(`)))|(?:(?<!')\\b([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*))|(\\()\\s*(:[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']]*)\\s*(\\))",endCaptures:{1:{patterns:[{include:"#type_signature"}]},2:{patterns:[{include:"#type_signature"}]},4:{patterns:[{include:"#type_signature"}]},6:{name:"constant.other.operator.haskell"},7:{name:"punctuation.backtick.haskell"},8:{name:"constant.other.haskell"},9:{name:"punctuation.backtick.haskell"},10:{name:"constant.other.haskell"},11:{name:"punctuation.paren.haskell"},12:{name:"constant.other.operator.haskell"},13:{name:"punctuation.paren.haskell"}},patterns:[{include:"#comment_like"},{include:"#deriving"},{include:"#record_decl"},{include:"#forall"},{include:"#context"}]}]},block_comment:{applyEndPatternLast:1,begin:"\\{-",captures:{0:{name:"punctuation.definition.comment.haskell"}},end:"-\\}",name:"comment.block.haskell",patterns:[{include:"#block_comment"}]},char_literal:{captures:{1:{name:"punctuation.definition.string.begin.haskell"},2:{name:"constant.character.escape.haskell"},3:{name:"constant.character.escape.octal.haskell"},4:{name:"constant.character.escape.hexadecimal.haskell"},5:{name:"constant.character.escape.control.haskell"},6:{name:"punctuation.definition.string.end.haskell"}},match:`(?<![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(')(?:[ -\\[\\]-~]|(\\\\(?:NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\"'\\\\&]))|(\\\\o[0-7]+)|(\\\\x[0-9A-Fa-f]+)|(\\\\\\^[A-Z@\\[\\]\\\\\\^_]))(')`,name:"string.quoted.single.haskell"},comma:{match:",",name:"punctuation.separator.comma.haskell"},comment_like:{patterns:[{include:"#cpp"},{include:"#pragma"},{include:"#comments"}]},comments:{patterns:[{begin:"^(\\s*)(--\\s[\\|$])",beginCaptures:{2:{name:"punctuation.whitespace.comment.leading.haskell"}},end:"(?=^(?!\\1--+(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']])))",name:"comment.block.documentation.haskell"},{begin:"(^[ \\t]+)?(--\\s[\\^\\*])",beginCaptures:{1:{name:"punctuation.whitespace.comment.leading.haskell"}},end:"\\n",name:"comment.line.documentation.haskell"},{applyEndPatternLast:1,begin:"\\{-\\s?[\\|$\\*\\^]",captures:{0:{name:"punctuation.definition.comment.haskell"}},end:"-\\}",name:"comment.block.documentation.haskell",patterns:[{include:"#block_comment"}]},{begin:"(^[ \\t]+)?(?=--+(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']]))",beginCaptures:{1:{name:"punctuation.whitespace.comment.leading.haskell"}},comment:"Operators may begin with '--' as long as they are not entirely composed of '-' characters. This means comments can't be immediately followed by an allowable operator character.",end:"(?!\\G)",patterns:[{begin:"--",beginCaptures:{0:{name:"punctuation.definition.comment.haskell"}},end:"\\n",name:"comment.line.double-dash.haskell"}]},{include:"#block_comment"}]},context:{captures:{1:{patterns:[{include:"#comment_like"},{include:"#type_signature"}]},2:{name:"keyword.operator.big-arrow.haskell"}},match:"(.*)(?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']])(=>|⇒)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']])"},cpp:{captures:{1:{name:"punctuation.definition.preprocessor.c"}},comment:`In addition to Haskell's "native" syntax, GHC permits the C preprocessor to be run on a source file.`,match:"^(#).*$",name:"meta.preprocessor.c"},data_constructor:{match:"\\b(?<!')[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?![\\.'\\w])",name:"constant.other.haskell"},deriving:{patterns:[{begin:"^(\\s*)(deriving)\\s+(?:(via|stock|newtype|anyclass)\\s+)?",beginCaptures:{2:{name:"keyword.other.deriving.haskell"},3:{name:"keyword.other.deriving.strategy.$3.haskell"}},end:"(?=\\}|;)|^(?!\\1\\s+\\S|\\s*(?:$|\\{-[^@]|--+(?![\\p{S}\\p{P}&&[^(),;\\[\\]{}`_\"']]).*$))",name:"meta.deriving.haskell",patterns:[{include:"#comment_like"},{match:"(?<!')\\b(instance)\\b(?!')",name:"keyword.other.instance.haskell"},{captures:{1:{name:"keyword.other.deriving.strategy.$1.haskell"}},match:"(?<!')\\b(via|stock|newtype|anyclass)\\b(?!')"},{include:"#type_signature"}]},{begin:"(deriving)(?:\\s+(stock|newtype|anyclass))?\\s*(\\()",beginCaptures:{1:{name:"keyword.other.deriving.haskell"},2:{name:"keyword.other.deriving.strategy.$2.haskell"},3:{name:"punctuation.paren.haskell"}},end:"(\\))",endCaptures:{1:{name:"punctuation.paren.haskell"}},name:"meta.deriving.haskell",patterns:[{include:"#type_signature"}]},{captures:{1:{name:"keyword.other.deriving.haskell"},2:{name:"keyword.other.deriving.strategy.$2.haskell"},3:{patterns:[{include:"#type_signature"}]},5:{name:"keyword.other.deriving.strategy.via.haskell"},6:{patterns:[{include:"#type_signature"}]}},match:"(deriving)(?:\\s+(stock|newtype|anyclass))?\\s+([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)(\\s+(via)\\s+(.*)$)?",name:"meta.deriving.haskell"},{match:"(?<!')\\b(via)\\b(?!')",name:"keyword.other.deriving.strategy.via.haskell"}]},double_colon:{captures:{1:{name:"keyword.operator.double-colon.haskell"}},match:"\\s*(::|∷)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']])\\s*"},export_constructs:{patterns:[{include:"#comment_like"},{begin:"\\b(?<!')(pattern)\\b(?!')",beginCaptures:{1:{name:"keyword.other.pattern.haskell"}},end:"([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)|(\\()\\s*(:[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']]+)\\s*(\\))",endCaptures:{1:{name:"constant.other.haskell"},2:{name:"punctuation.paren.haskell"},3:{name:"constant.other.operator.haskell"},4:{name:"punctuation.paren.haskell"}},patterns:[{include:"#comment_like"}]},{begin:"\\b(?<!')(type)\\b(?!')",beginCaptures:{1:{name:"keyword.other.type.haskell"}},end:"([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)|(\\()\\s*([\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']]+)\\s*(\\))",endCaptures:{1:{name:"storage.type.haskell"},2:{name:"punctuation.paren.haskell"},3:{name:"storage.type.operator.haskell"},4:{name:"punctuation.paren.haskell"}},patterns:[{include:"#comment_like"}]},{match:"(?<!')\\b[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*",name:"entity.name.function.haskell"},{match:"(?<!')\\b[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*",name:"storage.type.haskell"},{include:"#record_wildcard"},{include:"#reserved_symbol"},{include:"#prefix_op"}]},ffi:{begin:"^(\\s*)(foreign)\\s+(import|export)\\s+",beginCaptures:{2:{name:"keyword.other.foreign.haskell"},3:{name:"keyword.other.$3.haskell"}},end:"(?=\\}|;)|^(?!\\1\\s+\\S|\\s*(?:$|\\{-[^@]|--+(?![\\p{S}\\p{P}&&[^(),;\\[\\]{}`_\"']]).*$))",name:"meta.$3.foreign.haskell",patterns:[{include:"#comment_like"},{captures:{1:{name:"keyword.other.calling-convention.$1.haskell"}},match:"\\b(?<!')(ccall|cplusplus|dotnet|jvm|stdcall|prim|capi)\\s+"},{begin:`(?=")|(?=\\b(?<!')([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)\\b(?!'))`,end:"(?=(::|∷)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']]))",patterns:[{include:"#comment_like"},{captures:{1:{name:"keyword.other.safety.$1.haskell"},2:{name:"entity.name.foreign.haskell",patterns:[{include:"#string_literal"}]},3:{name:"entity.name.function.haskell"},4:{name:"entity.name.function.infix.haskell"}},match:`\\b(?<!')(safe|unsafe|interruptible)\\b(?!')\\s*("(?:\\\\"|[^"])*")?\\s*(?:(?:\\b(?<!'')([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)\\b(?!'))|(?:\\(\\s*(?!--+\\))([\\p{S}\\p{P}&&[^(),;\\[\\]\`{}_"']]+)\\s*\\)))`},{captures:{1:{name:"keyword.other.safety.$1.haskell"},2:{name:"entity.name.foreign.haskell",patterns:[{include:"#string_literal"}]}},match:`\\b(?<!')(safe|unsafe|interruptible)\\b(?!')\\s*("(?:\\\\"|[^"])*")?\\s*$`},{captures:{0:{name:"entity.name.foreign.haskell",patterns:[{include:"#string_literal"}]}},match:'"(?:\\\\"|[^"])*"'},{captures:{1:{name:"entity.name.function.haskell"},2:{name:"punctuation.paren.haskell"},3:{name:"entity.name.function.infix.haskell"},4:{name:"punctuation.paren.haskell"}},match:"(?:\\b(?<!'')([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)\\b(?!'))|(?:(\\()\\s*(?!--+\\))([\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']]+)\\s*(\\)))"}]},{include:"#double_colon"},{include:"#type_signature"}]},float_literals:{captures:{1:{name:"constant.numeric.floating.decimal.haskell"},2:{name:"constant.numeric.floating.hexadecimal.haskell"}},comment:"Floats are decimal or hexadecimal",match:"\\b(?<!')(?:(\\d[_0-9]*\\.\\d[_0-9]*(?:[eE][-+]?\\d[_0-9]*)?|\\d[_0-9]*[eE][-+]?\\d[_0-9]*)|(0[xX]_*[0-9a-fA-F][_0-9a-fA-F]*\\.[0-9a-fA-F][_0-9a-fA-F]*(?:[pP][-+]?\\d[_0-9]*)?|0[xX]_*[0-9a-fA-F][_0-9a-fA-F]*[pP][-+]?\\d[_0-9]*))\\b(?!')"},forall:{begin:"\\b(?<!')(forall|∀)\\b(?!')",beginCaptures:{1:{name:"keyword.other.forall.haskell"}},end:"(\\.)|(->|→)",endCaptures:{1:{name:"keyword.operator.period.haskell"},2:{name:"keyword.operator.arrow.haskell"}},patterns:[{include:"#comment_like"},{include:"#type_variable"},{include:"#type_signature"}]},fun_decl:{begin:"^(\\s*)(?<fn>(?:[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*\\#*|\\(\\s*(?!--+\\))[\\p{S}\\p{P}&&[^(),:;\\[\\]`{}_\"']][\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']]*\\s*\\))(?:\\s*,\\s*\\g<fn>)?)\\s*(?<![\\p{S}\\p{P}&&[^),;\\]`}_\"']])(::|∷)(?![\\p{S}\\p{P}&&[^(,;\\[`{_\"']])",beginCaptures:{2:{name:"entity.name.function.haskell",patterns:[{include:"#reserved_symbol"},{include:"#prefix_op"}]},3:{name:"keyword.operator.double-colon.haskell"}},end:"(?=(?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']])((<-|←)|(=)|(-<|↢)|(-<<|⤛))([(),;\\[\\]`{}_\"']|[^\\p{S}\\p{P}]))|(?=\\}|;)|^(?!\\1\\s+\\S|\\s*(?:$|\\{-[^@]|--+(?![\\p{S}\\p{P}&&[^(),;\\[\\]{}`_\"']]).*$))",name:"meta.function.type-declaration.haskell",patterns:[{include:"#type_signature"}]},gadt_constructor:{patterns:[{begin:"^(\\s*)(?:(\\b(?<!')[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)|(\\()\\s*(:[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']]*)\\s*(\\)))",beginCaptures:{2:{name:"constant.other.haskell"},3:{name:"punctuation.paren.haskell"},4:{name:"constant.other.operator.haskell"},5:{name:"punctuation.paren.haskell"}},end:"(?=\\b(?<!'')deriving\\b(?!'))|(?=\\}|;)|^(?!\\1\\s+\\S|\\s*(?:$|\\{-[^@]|--+(?![\\p{S}\\p{P}&&[^(),;\\[\\]{}`_\"']]).*$))",patterns:[{include:"#comment_like"},{include:"#deriving"},{include:"#double_colon"},{include:"#record_decl"},{include:"#type_signature"}]},{begin:"(\\b(?<!')[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}]*)|(\\()\\s*(:[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']]*)\\s*(\\))",beginCaptures:{1:{name:"constant.other.haskell"},2:{name:"punctuation.paren.haskell"},3:{name:"constant.other.operator.haskell"},4:{name:"punctuation.paren.haskell"}},end:"$",patterns:[{include:"#comment_like"},{include:"#deriving"},{include:"#double_colon"},{include:"#record_decl"},{include:"#type_signature"}]}]},infix_op:{patterns:[{captures:{1:{name:"keyword.operator.promotion.haskell"},2:{name:"entity.name.namespace.haskell"},3:{name:"keyword.operator.infix.haskell"}},comment:`In case this regex seems overly general, note that Haskell permits the definition of new operators which can be nearly any string of punctuation characters, such as $%^&*.
2
+ `,match:"((?:(?<!'')('')?[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'']*\\.)*)(\\#+|[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']]+(?<!\\#))"},{captures:{1:{name:"punctuation.backtick.haskell"},2:{name:"entity.name.namespace.haskell"},3:{patterns:[{include:"#data_constructor"}]},4:{name:"punctuation.backtick.haskell"}},comment:`In case this regex seems unusual for an infix operator, note that Haskell
3
+ allows any ordinary function application (elem 4 [1..10]) to be rewritten
4
+ as an infix expression (4 \`elem\` [1..10]).
5
+ `,match:"(`)((?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'']*\\.)*)([\\p{Ll}\\p{Lu}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'']*)(`)",name:"keyword.operator.function.infix.haskell"}]},inline_phase:{begin:"\\[",beginCaptures:{0:{name:"punctuation.bracket.haskell"}},end:"\\]",endCaptures:{0:{name:"punctuation.bracket.haskell"}},name:"meta.inlining-phase.haskell",patterns:[{match:"~",name:"punctuation.tilde.haskell"},{include:"#integer_literals"},{match:"\\w*",name:"invalid"}]},integer_literals:{captures:{1:{name:"constant.numeric.integral.decimal.haskell"},2:{name:"constant.numeric.integral.hexadecimal.haskell"},3:{name:"constant.numeric.integral.octal.haskell"},4:{name:"constant.numeric.integral.binary.haskell"}},match:"\\b(?<!')(?:(\\d[_0-9]*)|(0[xX]_*[0-9a-fA-F][_0-9a-fA-F]*)|(0[oO]_*[0-7][_0-7]*)|(0[bB]_*[01][_01]*))\\b(?!')"},keyword:{captures:{1:{name:"keyword.other.$1.haskell"},2:{name:"keyword.control.$2.haskell"}},match:"\\b(?<!')(?:(where|let|in|default)|(m?do|if|then|else|case|of|proc|rec))\\b(?!')"},layout_herald:{begin:"(?<!')\\b(?:(where|let|m?do)|(of))\\s*(\\{)(?!-)",beginCaptures:{1:{name:"keyword.other.$1.haskell"},2:{name:"keyword.control.of.haskell"},3:{name:"punctuation.brace.haskell"}},end:"(\\})",endCaptures:{1:{name:"punctuation.brace.haskell"}},patterns:[{include:"$self"},{match:";",name:"punctuation.semicolon.haskell"}]},liquid_haskell:{begin:"\\{-@",end:"@-\\}",name:"block.liquidhaskell.haskell",patterns:[{include:"$self"}]},module_exports:{applyEndPatternLast:1,begin:"\\(",beginCaptures:{0:{name:"punctuation.paren.haskell"}},end:"\\)",endCaptures:{0:{name:"punctuation.paren.haskell"}},name:"meta.declaration.exports.haskell",patterns:[{include:"#comment_like"},{captures:{1:{name:"keyword.other.module.haskell"}},match:"\\b(?<!')(module)\\b(?!')"},{include:"#comma"},{include:"#export_constructs"},{begin:"\\(",beginCaptures:{0:{name:"punctuation.paren.haskell"}},end:"\\)",endCaptures:{0:{name:"punctuation.paren.haskell"}},patterns:[{include:"#comment_like"},{include:"#record_wildcard"},{include:"#export_constructs"},{include:"#comma"}]}]},module_name:{match:"(?<conid>[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(\\.\\g<conid>)?)",name:"entity.name.namespace.haskell"},numeric_literals:{patterns:[{include:"#float_literals"},{include:"#integer_literals"}]},overloaded_label:{patterns:[{captures:{1:{name:"keyword.operator.prefix.hash.haskell"},2:{patterns:[{include:"#string_literal"}]}},match:'(?<![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}\\p{S}\\p{P}&&[^(,;\\[`{]])(\\#)(?:("(?:\\\\"|[^"])*")|[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}\'\\.]+)',name:"entity.name.label.haskell"}]},pragma:{begin:"\\{-#",end:"#-\\}",name:"meta.preprocessor.haskell",patterns:[{begin:"(?i)\\b(?<!')(LANGUAGE)\\b(?!')",beginCaptures:{1:{name:"keyword.other.preprocessor.pragma.haskell"}},end:"(?=#-\\})",patterns:[{match:"(?:No)?(?:AutoDeriveTypeable|DatatypeContexts|DoRec|IncoherentInstances|MonadFailDesugaring|MonoPatBinds|NullaryTypeClasses|OverlappingInstances|PatternSignatures|RecordPuns|RelaxedPolyRec)",name:"invalid.deprecated"},{captures:{1:{name:"keyword.other.preprocessor.extension.haskell"}},match:"((?:No)?(?:AllowAmbiguousTypes|AlternativeLayoutRule|AlternativeLayoutRuleTransitional|Arrows|BangPatterns|BinaryLiterals|CApiFFI|CPP|CUSKs|ConstrainedClassMethods|ConstraintKinds|DataKinds|DefaultSignatures|DeriveAnyClass|DeriveDataTypeable|DeriveFoldable|DeriveFunctor|DeriveGeneric|DeriveLift|DeriveTraversable|DerivingStrategies|DerivingVia|DisambiguateRecordFields|DoAndIfThenElse|BlockArguments|DuplicateRecordFields|EmptyCase|EmptyDataDecls|EmptyDataDeriving|ExistentialQuantification|ExplicitForAll|ExplicitNamespaces|ExtendedDefaultRules|FlexibleContexts|FlexibleInstances|ForeignFunctionInterface|FunctionalDependencies|GADTSyntax|GADTs|GHCForeignImportPrim|Generali(?:s|z)edNewtypeDeriving|ImplicitParams|ImplicitPrelude|ImportQualifiedPost|ImpredicativeTypes|TypeFamilyDependencies|InstanceSigs|ApplicativeDo|InterruptibleFFI|JavaScriptFFI|KindSignatures|LambdaCase|LiberalTypeSynonyms|MagicHash|MonadComprehensions|MonoLocalBinds|MonomorphismRestriction|MultiParamTypeClasses|MultiWayIf|NumericUnderscores|NPlusKPatterns|NamedFieldPuns|NamedWildCards|NegativeLiterals|HexFloatLiterals|NondecreasingIndentation|NumDecimals|OverloadedLabels|OverloadedLists|OverloadedStrings|PackageImports|ParallelArrays|ParallelListComp|PartialTypeSignatures|PatternGuards|PatternSynonyms|PolyKinds|PolymorphicComponents|QuantifiedConstraints|PostfixOperators|QuasiQuotes|Rank2Types|RankNTypes|RebindableSyntax|RecordWildCards|RecursiveDo|RelaxedLayout|RoleAnnotations|ScopedTypeVariables|StandaloneDeriving|StarIsType|StaticPointers|Strict|StrictData|TemplateHaskell|TemplateHaskellQuotes|StandaloneKindSignatures|TraditionalRecordSyntax|TransformListComp|TupleSections|TypeApplications|TypeInType|TypeFamilies|TypeOperators|TypeSynonymInstances|UnboxedTuples|UnboxedSums|UndecidableInstances|UndecidableSuperClasses|UnicodeSyntax|UnliftedFFITypes|UnliftedNewtypes|ViewPatterns))"},{include:"#comma"}]},{begin:"(?i)\\b(?<!')(SPECIALI(?:S|Z)E)(?:\\s*(\\[[^\\[\\]]*\\])?\\s*|\\s+)(instance)\\b(?!')",beginCaptures:{1:{name:"keyword.other.preprocessor.pragma.haskell"},2:{patterns:[{include:"#inline_phase"}]},3:{name:"keyword.other.instance.haskell"}},end:"(?=#-\\})",patterns:[{include:"#type_signature"}]},{begin:"(?i)\\b(?<!')(SPECIALI(?:S|Z)E)\\b(?!')(?:\\s+(INLINE)\\b(?!'))?(?:\\s*(\\[[^\\[\\]]*\\])?)\\s*",beginCaptures:{1:{name:"keyword.other.preprocessor.pragma.haskell"},2:{name:"keyword.other.preprocessor.pragma.haskell"},3:{patterns:[{include:"#inline_phase"}]}},end:"(?=#-\\})",patterns:[{include:"$self"}]},{match:"(?i)\\b(?<!')(LANGUAGE|OPTIONS_GHC|INCLUDE|MINIMAL|UNPACK|OVERLAPS|INCOHERENT|NOUNPACK|SOURCE|OVERLAPPING|OVERLAPPABLE|INLINE|NOINLINE|INLINE?ABLE|CONLIKE|LINE|COLUMN|RULES|COMPLETE)\\b(?!')",name:"keyword.other.preprocessor.haskell"},{begin:"(?i)\\b(DEPRECATED|WARNING)\\b",beginCaptures:{1:{name:"keyword.other.preprocessor.pragma.haskell"}},end:"(?=#-\\})",patterns:[{include:"#string_literal"}]}]},prefix_op:{patterns:[{captures:{1:{name:"punctuation.paren.haskell"},2:{name:"entity.name.function.infix.haskell"},3:{name:"punctuation.paren.haskell"}},comment:`An operator cannot be composed entirely of '-' characters; instead, it should be matched as a comment.
6
+ `,match:"(\\()\\s*(?!(?:--+|\\.\\.)\\))(\\#+|[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']]+(?<!\\#))\\s*(\\))"}]},qualifier:{match:"\\b(?<!')[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*\\.",name:"entity.name.namespace.haskell"},quasi_quote:{patterns:[{begin:"(\\[)(e|d|p)?(\\|\\|?)",beginCaptures:{1:{name:"keyword.operator.quasi-quotation.begin.haskell"},2:{name:"entity.name.quasi-quoter.haskell"},3:{name:"keyword.operator.quasi-quotation.begin.haskell"}},end:"\\3\\]",endCaptures:{0:{name:"keyword.operator.quasi-quotation.end.haskell"}},name:"meta.quasi-quotation.haskell",patterns:[{include:"$self"}]},{begin:"(\\[)(t)(\\|\\|?)",beginCaptures:{1:{name:"keyword.operator.quasi-quotation.begin.haskell"},2:{name:"entity.name.quasi-quoter.haskell"},3:{name:"keyword.operator.quasi-quotation.begin.haskell"}},end:"\\3\\]",endCaptures:{0:{name:"keyword.operator.quasi-quotation.end.haskell"}},name:"meta.quasi-quotation.haskell",patterns:[{include:"#type_signature"}]},{begin:"(\\[)(?:(\\$\\$)|(\\$))?((?:[^\\s\\p{S}\\p{P}]|[\\.'_])*)(\\|\\|?)",beginCaptures:{1:{name:"keyword.operator.quasi-quotation.begin.haskell"},2:{name:"keyword.operator.prefix.double-dollar.haskell"},3:{name:"keyword.operator.prefix.dollar.haskell"},4:{name:"entity.name.quasi-quoter.haskell",patterns:[{include:"#qualifier"}]},5:{name:"keyword.operator.quasi-quotation.begin.haskell"}},end:"\\5\\]",endCaptures:{0:{name:"keyword.operator.quasi-quotation.end.haskell"}},name:"meta.quasi-quotation.haskell"}]},record:{begin:"({)(?!-)",beginCaptures:{1:{name:"punctuation.brace.haskell"}},end:"(?<!-)(})",endCaptures:{1:{name:"punctuation.brace.haskell"}},name:"meta.record.haskell",patterns:[{include:"#comment_like"},{include:"#record_field"}]},record_decl:{begin:"({)(?!-)",beginCaptures:{1:{name:"punctuation.brace.haskell"}},end:"(?<!-)(})",endCaptures:{1:{name:"punctuation.brace.haskell"}},name:"meta.record.definition.haskell",patterns:[{include:"#comment_like"},{include:"#record_decl_field"}]},record_decl_field:{begin:"(?:([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)|(\\()\\s*([\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']]+)\\s*(\\)))",beginCaptures:{1:{name:"variable.other.member.definition.haskell"},2:{name:"punctuation.paren.haskell"},3:{name:"variable.other.member.definition.haskell"},4:{name:"punctuation.paren.haskell"}},end:"(,)|(?=})",endCaptures:{1:{name:"punctuation.comma.haskell"}},patterns:[{include:"#comment_like"},{include:"#comma"},{include:"#double_colon"},{include:"#type_signature"},{include:"#record_decl_field"}]},record_field:{patterns:[{begin:"(?:([\\p{Ll}\\p{Lu}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}\\.']*)|(\\()\\s*([\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']]+)\\s*(\\)))",beginCaptures:{1:{name:"variable.other.member.haskell",patterns:[{include:"#qualifier"}]},2:{name:"punctuation.paren.haskell"},3:{name:"variable.other.member.haskell"},4:{name:"punctuation.paren.haskell"}},end:"(,)|(?=})",endCaptures:{1:{name:"punctuation.comma.haskell"}},patterns:[{include:"#comment_like"},{include:"#comma"},{include:"$self"}]},{include:"#record_wildcard"}]},record_wildcard:{captures:{1:{name:"variable.other.member.wildcard.haskell"}},match:"(?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']])(\\.\\.)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']])"},reserved_symbol:{patterns:[{captures:{1:{name:"keyword.operator.double-dot.haskell"},2:{name:"keyword.operator.colon.haskell"},3:{name:"keyword.operator.eq.haskell"},4:{name:"keyword.operator.lambda.haskell"},5:{name:"keyword.operator.pipe.haskell"},6:{name:"keyword.operator.arrow.left.haskell"},7:{name:"keyword.operator.arrow.haskell"},8:{name:"keyword.operator.arrow.left.tail.haskell"},9:{name:"keyword.operator.arrow.left.tail.double.haskell"},10:{name:"keyword.operator.arrow.tail.haskell"},11:{name:"keyword.operator.arrow.tail.double.haskell"},12:{name:"keyword.other.forall.haskell"}},match:"(?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'']])(?:(\\.\\.)|(:)|(=)|(\\\\)|(\\|)|(<-|←)|(->|→)|(-<|↢)|(-<<|⤛)|(>-|⤚)|(>>-|⤜)|(∀))(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"'']])"},{captures:{1:{name:"keyword.operator.postfix.hash.haskell"}},match:"(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}\\p{S}\\p{P}&&[^#,;\\[`{]])(\\#+)(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}\\p{S}\\p{P}&&[^),;\\]`}]])"},{captures:{1:{name:"keyword.operator.infix.tight.at.haskell"}},match:"(?<=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd})}\\]])(@)(?=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}(\\[{])"},{captures:{1:{name:"keyword.operator.prefix.tilde.haskell"},2:{name:"keyword.operator.prefix.bang.haskell"},3:{name:"keyword.operator.prefix.minus.haskell"},4:{name:"keyword.operator.prefix.dollar.haskell"},5:{name:"keyword.operator.prefix.double-dollar.haskell"}},match:"(?<![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}\\p{S}\\p{P}&&[^(,;\\[`{]])(?:(~)|(!)|(-)|(\\$)|(\\$\\$))(?=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}({\\[])"}]},role_annotation:{patterns:[{begin:"^(\\s*)(type)\\s+(role)\\b(?!')",beginCaptures:{2:{name:"keyword.other.type.haskell"},3:{name:"keyword.other.role.haskell"}},end:"(?=\\}|;)|^(?!\\1\\s+\\S|\\s*(?:$|\\{-[^@]|--+(?![\\p{S}\\p{P}&&[^(),;\\[\\]{}`_\"']]).*$))",name:"meta.role-annotation.haskell",patterns:[{include:"#comment_like"},{include:"#type_constructor"},{captures:{1:{name:"keyword.other.role.$1.haskell"}},match:"\\b(?<!')(nominal|representational|phantom)\\b(?!')"}]}]},start_type_signature:{patterns:[{begin:"^(\\s*)(::|∷)(?![\\p{S}\\p{P}&&[^(,;\\[`{_\"']])\\s*",beginCaptures:{2:{name:"keyword.operator.double-colon.haskell"}},end:"(?=\\#?\\)|\\]|,|(?<!')\\b(in|then|else|of)\\b(?!')|(?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']])(?:(\\\\|λ)|(<-|←)|(=)|(-<|↢)|(-<<|⤛))([(),;\\[\\]`{}_\"']|[^\\p{S}\\p{P}])|(\\#|@)-\\}|(?=\\}|;)|^(?!\\1\\s*\\S|\\s*(?:$|\\{-[^@]|--+(?![\\p{S}\\p{P}&&[^(),;\\[\\]{}`_\"']]).*$)))",name:"meta.type-declaration.haskell",patterns:[{include:"#type_signature"}]},{begin:"(?<![\\p{S}\\p{P}&&[^(,;\\[`{_\"']])(::|∷)(?![\\p{S}\\p{P}&&[^(,;\\[`{_\"']])",beginCaptures:{1:{name:"keyword.operator.double-colon.haskell"}},end:"(?=\\#?\\)|\\]|,|\\b(?<!')(in|then|else|of)\\b(?!')|(\\#|@)-\\}|(?<![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']])(?:(\\\\|λ)|(<-|←)|(=)|(-<|↢)|(-<<|⤛))([(),;\\[\\]`{}_\"']|[^\\p{S}\\p{P}])|(?=\\}|;)|$)",patterns:[{include:"#type_signature"}]}]},string_literal:{begin:'"',beginCaptures:{0:{name:"punctuation.definition.string.begin.haskell"}},end:'"',endCaptures:{0:{name:"punctuation.definition.string.end.haskell"}},name:"string.quoted.double.haskell",patterns:[{match:`\\\\(NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\\\\"'\\&])`,name:"constant.character.escape.haskell"},{match:"\\\\o[0-7]+|\\\\x[0-9A-Fa-f]+|\\\\\\d+",name:"constant.character.escape.octal.haskell"},{match:"\\\\\\^[A-Z@\\[\\]\\\\\\^_]",name:"constant.character.escape.control.haskell"},{begin:"\\\\\\s",beginCaptures:{0:{name:"constant.character.escape.begin.haskell"}},end:"\\\\",endCaptures:{0:{name:"constant.character.escape.end.haskell"}},patterns:[{match:"\\S+",name:"invalid.illegal.character-not-allowed-here.haskell"}]}]},type_application:{patterns:[{begin:`(?<=[\\s,;\\[\\]{}"])(@)(')?(\\()`,beginCaptures:{1:{name:"keyword.operator.prefix.at.haskell"},2:{name:"keyword.operator.promotion.haskell"},3:{name:"punctuation.paren.haskell"}},end:"\\)",endCaptures:{0:{name:"punctuation.paren.haskell"}},name:"meta.type-application.haskell",patterns:[{include:"#type_signature"}]},{begin:`(?<=[\\s,;\\[\\]{}"])(@)(')?(\\[)`,beginCaptures:{1:{name:"keyword.operator.prefix.at.haskell"},2:{name:"keyword.operator.promotion.haskell"},3:{name:"punctuation.bracket.haskell"}},end:"\\]",endCaptures:{0:{name:"punctuation.bracket.haskell"}},name:"meta.type-application.haskell",patterns:[{include:"#type_signature"}]},{begin:'(?<=[\\s,;\\[\\]{}"])(@)(?=\\")',beginCaptures:{1:{name:"keyword.operator.prefix.at.haskell"}},end:'(?<=\\")',name:"meta.type-application.haskell",patterns:[{include:"#string_literal"}]},{begin:`(?<=[\\s,;\\[\\]{}"])(@)(?=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])`,beginCaptures:{1:{name:"keyword.operator.prefix.at.haskell"}},end:"(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])",name:"meta.type-application.haskell",patterns:[{include:"#type_signature"}]}]},type_constructor:{patterns:[{captures:{1:{name:"keyword.operator.promotion.haskell"},2:{name:"entity.name.namespace.haskell"},3:{name:"storage.type.haskell"}},match:"(')?((?:\\b[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*\\.)*)(\\b[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)"},{captures:{1:{name:"keyword.operator.promotion.haskell"},2:{name:"punctuation.paren.haskell"},3:{name:"entity.name.namespace.haskell"},4:{name:"storage.type.operator.haskell"},5:{name:"punctuation.paren.haskell"}},match:"(')?(\\()\\s*((?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*\\.)*)([\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']]+)\\s*(\\))"}]},type_operator:{patterns:[{captures:{1:{name:"keyword.operator.promotion.haskell"},2:{name:"entity.name.namespace.haskell"},3:{name:"storage.type.operator.infix.haskell"}},match:"(?:(?<!')('))?((?:\\b[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*\\.)*)(?![#@]?-})(\\#+|[\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']]+(?<!\\#))"},{captures:{1:{name:"keyword.operator.promotion.haskell"},2:{name:"punctuation.backtick.haskell"},3:{name:"entity.name.namespace.haskell"},4:{name:"storage.type.infix.haskell"},5:{name:"punctuation.backtick.haskell"}},match:"(')?(\\`)((?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*\\.)*)([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)(`)"}]},type_signature:{patterns:[{include:"#comment_like"},{captures:{1:{name:"keyword.operator.promotion.haskell"},2:{name:"punctuation.paren.haskell"},3:{name:"punctuation.paren.haskell"}},match:"(')?(\\()\\s*(\\))",name:"support.constant.unit.haskell"},{captures:{1:{name:"punctuation.paren.haskell"},2:{name:"keyword.operator.hash.haskell"},3:{name:"keyword.operator.hash.haskell"},4:{name:"punctuation.paren.haskell"}},match:"(\\()(#)\\s*(#)(\\))",name:"support.constant.unit.unboxed.haskell"},{captures:{1:{name:"keyword.operator.promotion.haskell"},2:{name:"punctuation.paren.haskell"},3:{name:"punctuation.paren.haskell"}},match:"(')?(\\()\\s*,[\\s,]*(\\))",name:"support.constant.tuple.haskell"},{captures:{1:{name:"punctuation.paren.haskell"},2:{name:"keyword.operator.hash.haskell"},3:{name:"keyword.operator.hash.haskell"},4:{name:"punctuation.paren.haskell"}},match:"(\\()(#)\\s*(#)(\\))",name:"support.constant.unit.unboxed.haskell"},{captures:{1:{name:"punctuation.paren.haskell"},2:{name:"keyword.operator.hash.haskell"},3:{name:"keyword.operator.hash.haskell"},4:{name:"punctuation.paren.haskell"}},match:"(\\()(#)\\s*,[\\s,]*(#)(\\))",name:"support.constant.tuple.unboxed.haskell"},{captures:{1:{name:"keyword.operator.promotion.haskell"},2:{name:"punctuation.bracket.haskell"},3:{name:"punctuation.bracket.haskell"}},match:"(')?(\\[)\\s*(\\])",name:"support.constant.empty-list.haskell"},{include:"#integer_literals"},{match:"(::|∷)(?![\\p{S}\\p{P}&&[^(),;\\[\\]`{}_\"']])",name:"keyword.operator.double-colon.haskell"},{include:"#forall"},{match:"=>|⇒",name:"keyword.operator.big-arrow.haskell"},{include:"#string_literal"},{match:"'[^']'",name:"invalid"},{include:"#type_application"},{include:"#reserved_symbol"},{include:"#type_operator"},{include:"#type_constructor"},{begin:"(\\()(#)",beginCaptures:{1:{name:"punctuation.paren.haskell"},2:{name:"keyword.operator.hash.haskell"}},end:"(#)(\\))",endCaptures:{1:{name:"keyword.operator.hash.haskell"},2:{name:"punctuation.paren.haskell"}},patterns:[{include:"#comma"},{include:"#type_signature"}]},{begin:"(')?(\\()",beginCaptures:{1:{name:"keyword.operator.promotion.haskell"},2:{name:"punctuation.paren.haskell"}},end:"(\\))",endCaptures:{1:{name:"punctuation.paren.haskell"}},patterns:[{include:"#comma"},{include:"#type_signature"}]},{begin:"(')?(\\[)",beginCaptures:{1:{name:"keyword.operator.promotion.haskell"},2:{name:"punctuation.bracket.haskell"}},end:"(\\])",endCaptures:{1:{name:"punctuation.bracket.haskell"}},patterns:[{include:"#comma"},{include:"#type_signature"}]},{include:"#type_variable"}]},type_variable:{match:"\\b(?<!')(?!(?:forall|deriving)\\b(?!'))[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*",name:"variable.other.generic-type.haskell"},where:{patterns:[{begin:"(?<!')\\b(where)\\s*(\\{)(?!-)",beginCaptures:{1:{name:"keyword.other.where.haskell"},2:{name:"punctuation.brace.haskell"}},end:"(\\})",endCaptures:{1:{name:"punctuation.brace.haskell"}},patterns:[{include:"$self"},{match:";",name:"punctuation.semicolon.haskell"}]},{match:"\\b(?<!')(where)\\b(?!')",name:"keyword.other.where.haskell"}]}},scopeName:"source.haskell",aliases:["hs"]});var a=[e];export{a as default};