nuxt-og-image 3.0.8 → 3.0.9
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.
- package/LICENSE.md +9 -0
- package/README.md +31 -20
- package/dist/client/200.html +81 -77
- package/dist/client/404.html +81 -77
- package/dist/client/_nuxt/{CE0v8NN9.js → 0qbUsQ6_.js} +1 -1
- package/dist/client/_nuxt/2aygx1xg.js +1 -0
- package/dist/client/_nuxt/{DBxrVw_D.js → 5Vw9JATd.js} +1 -1
- package/dist/client/_nuxt/6RUVFG9U.js +1 -0
- package/dist/client/_nuxt/B1Z2YEe0.js +1 -0
- package/dist/client/_nuxt/{OiuHoWY5.js → B1rsb5QC.js} +1 -1
- package/dist/client/_nuxt/B2uSYIFn.js +1 -0
- package/dist/client/_nuxt/BA1ndEPy.js +1 -0
- package/dist/client/_nuxt/{p-youoOz.js → BCawSwWi.js} +1 -1
- package/dist/client/_nuxt/{rAPcFIiw.js → BYqZ7etr.js} +1 -1
- package/dist/client/_nuxt/{BjE2mIY4.js → BbalPOsb.js} +1 -1
- package/dist/client/_nuxt/{DwFwdhDE.js → Bcw97oti.js} +1 -1
- package/dist/client/_nuxt/{CiXlrwC7.js → BhC5s0V7.js} +1 -1
- package/dist/client/_nuxt/{BVLG6Y-w.js → Bmb0A568.js} +1 -1
- package/dist/client/_nuxt/{DpVQgTom.js → BoZcIFWd.js} +1 -1
- package/dist/client/_nuxt/BqtQrzRp.js +1 -0
- package/dist/client/_nuxt/{BWgb8Pxw.js → Bv_sPlCv.js} +1 -1
- package/dist/client/_nuxt/BwpQXVS2.js +1 -0
- package/dist/client/_nuxt/By_ruW9X.js +3834 -0
- package/dist/client/_nuxt/C-_shW-Y.js +1 -0
- package/dist/client/_nuxt/{nkNqggyT.js → CBzZD_Xh.js} +1 -1
- package/dist/client/_nuxt/CD_QflpE.js +1 -0
- package/dist/client/_nuxt/{Bpo8LMpD.js → CI15r38m.js} +1 -1
- package/dist/client/_nuxt/{JbneklYT.js → CK7S-5jS.js} +1 -1
- package/dist/client/_nuxt/{B9hcNGex.js → CKfqYE_r.js} +1 -1
- package/dist/client/_nuxt/CLXkKSjS.js +1 -0
- package/dist/client/_nuxt/CM4fc1WH.js +1 -0
- package/dist/client/_nuxt/{1EdnXNuB.js → CSc2nTFY.js} +1 -1
- package/dist/client/_nuxt/CVESyXxo.js +1 -0
- package/dist/client/_nuxt/{vFtNXPBc.js → CWJejSyX.js} +1 -1
- package/dist/client/_nuxt/{Bt50SWsh.js → CY2R9RuK.js} +1 -1
- package/dist/client/_nuxt/{Ckz-YMxz.js → CeZwWGti.js} +1 -1
- package/dist/client/_nuxt/CjDtw9vr.js +1 -0
- package/dist/client/_nuxt/{BhLNiG9c.js → ClV7KpCc.js} +1 -1
- package/dist/client/_nuxt/{D7z58M2W.js → Cm25um3E.js} +1 -1
- package/dist/client/_nuxt/CmCqftbK.js +1 -0
- package/dist/client/_nuxt/Cmhojp3q.js +1 -0
- package/dist/client/_nuxt/{BwojPDJW.js → CnsmiicP.js} +1 -1
- package/dist/client/_nuxt/{DCRAZVCM.js → CodIOJDM.js} +1 -1
- package/dist/client/_nuxt/{0e7srHXh.js → Csvi84BS.js} +1 -1
- package/dist/client/_nuxt/{CHZeBJpW.js → CuIYtGag.js} +1 -1
- package/dist/client/_nuxt/{I1uqSxRv.js → Cv3cJnDV.js} +1 -1
- package/dist/client/_nuxt/Cv7ZOjGq.js +1 -0
- package/dist/client/_nuxt/{BMGF3Z6I.js → CwIwlfa-.js} +1 -1
- package/dist/client/_nuxt/{Da_8ueAw.js → CyEc264g.js} +1 -1
- package/dist/client/_nuxt/{CRR3mLlZ.js → D2O4HAMr.js} +1 -1
- package/dist/client/_nuxt/{Bexp5DGn.js → DFQ4Xr-4.js} +1 -1
- package/dist/client/_nuxt/DMFdBl0X.js +1 -0
- package/dist/client/_nuxt/DNgb01dh.js +1 -0
- package/dist/client/_nuxt/DRW-0cLl.js +1 -0
- package/dist/client/_nuxt/{Xse1gjxk.js → DRhUEtVu.js} +1 -1
- package/dist/client/_nuxt/{BGdveAQA.js → DUdzsfxe.js} +1 -1
- package/dist/client/_nuxt/{CYyBA3kJ.js → Db-JQHi3.js} +1 -1
- package/dist/client/_nuxt/DepYB8Ml.js +1 -0
- package/dist/client/_nuxt/{ChEme8PX.js → DhG9BCpW.js} +1 -1
- package/dist/client/_nuxt/{BxJadH_W.js → DhqJCFIX.js} +1 -1
- package/dist/client/_nuxt/DqpEK-75.js +1 -0
- package/dist/client/_nuxt/Ds-gbosJ.js +1 -0
- package/dist/client/_nuxt/{D4O64OTH.js → DvA-6Bhw.js} +1 -1
- package/dist/client/_nuxt/{B66eQrDP.js → FMvz1E70.js} +1 -1
- package/dist/client/_nuxt/GBQ2dnAY.js +1 -0
- package/dist/client/_nuxt/{CJrM-UL-.js → JJNjxVar.js} +1 -1
- package/dist/client/_nuxt/{D_QQB6Yv.js → KUYRHWK4.js} +1 -1
- package/dist/client/_nuxt/LGGdnPYs.js +1 -0
- package/dist/client/_nuxt/Lp17StYA.js +1 -0
- package/dist/client/_nuxt/RXHOmnpW.js +1 -0
- package/dist/client/_nuxt/{4NJYcRSJ.js → W2lx4xae.js} +1 -1
- package/dist/client/_nuxt/YurBl9Qv.js +1 -0
- package/dist/client/_nuxt/builds/latest.json +1 -1
- package/dist/client/_nuxt/builds/meta/d9a165f2-5e19-460e-be70-9359a1d41711.json +1 -0
- package/dist/client/_nuxt/{D0ybgVpa.js → dwbxrGt_.js} +1 -1
- package/dist/client/_nuxt/{D3CL8VSI.js → eACALr6E.js} +1 -1
- package/dist/client/_nuxt/error-404.DGYJY-kl.css +1 -0
- package/dist/client/_nuxt/error-500.BTkdHbNU.css +1 -0
- package/dist/client/_nuxt/{B8E_5cfo.js → gOa3Yz9U.js} +1 -1
- package/dist/client/_nuxt/{BbzkbZ9e.js → i22b9gbM.js} +1 -1
- package/dist/client/_nuxt/{g_GSZ1hr.js → u4bm_LMz.js} +1 -1
- package/dist/client/_nuxt/{A13Lx_ye.js → vocl-2a6.js} +1 -1
- package/dist/client/_nuxt/{CN6rGqjK.js → xfgw03QH.js} +1 -1
- package/dist/client/_nuxt/zchoCBdH.js +1 -0
- package/dist/client/index.html +81 -77
- package/dist/module.json +1 -1
- package/dist/module.mjs +25 -23
- package/dist/runtime/{nuxt → app}/components/Templates/Community/NuxtSeo.vue +1 -1
- package/dist/runtime/{nuxt → app}/composables/defineOgImage.js +1 -1
- package/dist/runtime/{nuxt → app}/composables/defineOgImageComponent.d.ts +1 -1
- package/dist/runtime/{nuxt → app}/composables/mock.d.ts +1 -1
- package/dist/runtime/{nuxt → app}/utils/plugins.js +1 -1
- package/dist/runtime/{nitro → server}/og-image/chromium/renderer.js +1 -1
- package/dist/runtime/{nitro → server}/og-image/context.js +2 -2
- package/dist/runtime/{nitro → server}/og-image/instances.js +2 -2
- package/dist/runtime/{nitro → server}/og-image/satori/instances.js +4 -4
- package/dist/runtime/{nitro → server}/og-image/satori/plugins/unocss.js +1 -1
- package/dist/runtime/{nitro → server}/og-image/satori/renderer.js +16 -14
- package/dist/runtime/{nitro → server}/og-image/satori/transforms/emojis.js +1 -1
- package/dist/runtime/{nitro → server}/og-image/templates/html.js +1 -1
- package/dist/runtime/server/plugins/__zero-runtime/nuxt-content.d.ts +2 -0
- package/dist/runtime/{nitro → server}/plugins/__zero-runtime/nuxt-content.js +1 -1
- package/dist/runtime/server/plugins/nuxt-content.d.ts +2 -0
- package/dist/runtime/{nitro → server}/plugins/nuxt-content.js +1 -1
- package/dist/runtime/server/plugins/prerender.d.ts +2 -0
- package/dist/runtime/{nitro → server}/plugins/prerender.js +2 -2
- package/dist/runtime/{nitro → server}/routes/debug.json.js +2 -2
- package/dist/runtime/{nitro → server}/util/options.js +1 -1
- package/dist/runtime/{nitro → server}/util/plugins.js +8 -4
- package/dist/runtime/types.d.ts +3 -1
- package/package.json +41 -38
- package/virtual.d.ts +30 -8
- package/dist/client/_nuxt/35JD59R_.js +0 -1
- package/dist/client/_nuxt/9xzcv9xf.js +0 -1
- package/dist/client/_nuxt/B-GI89LT.js +0 -1
- package/dist/client/_nuxt/BStEqDGx.js +0 -1
- package/dist/client/_nuxt/BT8b6B_-.js +0 -1
- package/dist/client/_nuxt/BTo9ix6S.js +0 -1
- package/dist/client/_nuxt/BeSffZBD.js +0 -1
- package/dist/client/_nuxt/Begb3drz.js +0 -1
- package/dist/client/_nuxt/C3t61SNw.js +0 -1
- package/dist/client/_nuxt/COtMjVi7.js +0 -1
- package/dist/client/_nuxt/C_OO3DVV.js +0 -1
- package/dist/client/_nuxt/Cn_j0ne6.js +0 -1
- package/dist/client/_nuxt/D5gt1ch3.js +0 -1
- package/dist/client/_nuxt/D6HQHXJE.js +0 -1
- package/dist/client/_nuxt/DIvA8ll9.js +0 -1
- package/dist/client/_nuxt/DQJjjPvk.js +0 -1
- package/dist/client/_nuxt/DWt6wkI-.js +0 -1
- package/dist/client/_nuxt/DanlQboj.js +0 -1
- package/dist/client/_nuxt/DnBisYsJ.js +0 -3826
- package/dist/client/_nuxt/Dt1_zKdO.js +0 -1
- package/dist/client/_nuxt/Jwd9j1ay.js +0 -1
- package/dist/client/_nuxt/NfFGm2lL.js +0 -1
- package/dist/client/_nuxt/S_yhxdK1.js +0 -1
- package/dist/client/_nuxt/builds/meta/4ac2b2ab-71b1-4d97-8de0-b465feb7eaab.json +0 -1
- package/dist/client/_nuxt/eCoydtrh.js +0 -1
- package/dist/client/_nuxt/error-404.D4k1dunI.css +0 -1
- package/dist/client/_nuxt/error-500.Q7NSr7sn.css +0 -1
- package/dist/client/_nuxt/keK8bHwS.js +0 -1
- package/dist/runtime/nitro/plugins/__zero-runtime/nuxt-content.d.ts +0 -2
- package/dist/runtime/nitro/plugins/nuxt-content.d.ts +0 -2
- package/dist/runtime/nitro/plugins/prerender.d.ts +0 -2
- /package/dist/runtime/{nuxt → app}/components/OgImage/OgImage.d.ts +0 -0
- /package/dist/runtime/{nuxt → app}/components/OgImage/OgImage.js +0 -0
- /package/dist/runtime/{nuxt → app}/components/OgImage/OgImageScreenshot.d.ts +0 -0
- /package/dist/runtime/{nuxt → app}/components/OgImage/OgImageScreenshot.js +0 -0
- /package/dist/runtime/{nuxt → app}/components/Templates/Community/BrandedLogo.vue +0 -0
- /package/dist/runtime/{nuxt → app}/components/Templates/Community/Frame.vue +0 -0
- /package/dist/runtime/{nuxt → app}/components/Templates/Community/Nuxt.vue +0 -0
- /package/dist/runtime/{nuxt → app}/components/Templates/Community/Pergel.vue +0 -0
- /package/dist/runtime/{nuxt → app}/components/Templates/Community/SimpleBlog.vue +0 -0
- /package/dist/runtime/{nuxt → app}/components/Templates/Community/UnJs.vue +0 -0
- /package/dist/runtime/{nuxt → app}/components/Templates/Community/Wave.vue +0 -0
- /package/dist/runtime/{nuxt → app}/components/Templates/Community/WithEmoji.vue +0 -0
- /package/dist/runtime/{nuxt → app}/composables/defineOgImage.d.ts +0 -0
- /package/dist/runtime/{nuxt → app}/composables/defineOgImageComponent.js +0 -0
- /package/dist/runtime/{nuxt → app}/composables/defineOgImageScreenshot.d.ts +0 -0
- /package/dist/runtime/{nuxt → app}/composables/defineOgImageScreenshot.js +0 -0
- /package/dist/runtime/{nuxt → app}/composables/mock.js +0 -0
- /package/dist/runtime/{nuxt → app}/plugins/__zero-runtime/og-image-canonical-urls.server.d.ts +0 -0
- /package/dist/runtime/{nuxt → app}/plugins/__zero-runtime/og-image-canonical-urls.server.js +0 -0
- /package/dist/runtime/{nuxt → app}/plugins/__zero-runtime/route-rule-og-image.server.d.ts +0 -0
- /package/dist/runtime/{nuxt → app}/plugins/__zero-runtime/route-rule-og-image.server.js +0 -0
- /package/dist/runtime/{nuxt → app}/plugins/og-image-canonical-urls.server.d.ts +0 -0
- /package/dist/runtime/{nuxt → app}/plugins/og-image-canonical-urls.server.js +0 -0
- /package/dist/runtime/{nuxt → app}/plugins/route-rule-og-image.server.d.ts +0 -0
- /package/dist/runtime/{nuxt → app}/plugins/route-rule-og-image.server.js +0 -0
- /package/dist/runtime/{nuxt → app}/utils/plugins.d.ts +0 -0
- /package/dist/runtime/{nuxt → app}/utils.d.ts +0 -0
- /package/dist/runtime/{nuxt → app}/utils.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/chromium/chrome-launcher.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/chromium/chrome-launcher.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/chromium/on-demand.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/chromium/on-demand.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/chromium/playwright.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/chromium/playwright.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/css-inline/node.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/css-inline/node.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/css-inline/wasm-fs.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/css-inline/wasm-fs.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/css-inline/wasm.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/css-inline/wasm.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/resvg/node.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/resvg/node.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/resvg/wasm-fs.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/resvg/wasm-fs.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/resvg/wasm.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/resvg/wasm.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/satori/node.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/satori/node.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/satori/wasm-fs.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/satori/wasm-fs.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/satori/wasm.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/satori/wasm.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/sharp/node.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/bindings/sharp/node.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/cache/lru.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/cache/lru.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/cache/mock.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/cache/mock.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/chromium/renderer.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/chromium/screenshot.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/chromium/screenshot.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/context.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/instances.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/font.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/font.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/instances.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/plugins/classes.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/plugins/classes.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/plugins/emojis.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/plugins/emojis.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/plugins/encoding.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/plugins/encoding.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/plugins/flex.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/plugins/flex.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/plugins/imageSrc.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/plugins/imageSrc.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/plugins/unocss.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/renderer.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/transforms/emojis.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/transforms/inlineCss.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/transforms/inlineCss.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/utils.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/utils.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/vnodes.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/og-image/satori/vnodes.js +0 -0
- /package/dist/runtime/{nitro → server}/og-image/templates/html.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/routes/__zero-runtime/font.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/routes/__zero-runtime/font.js +0 -0
- /package/dist/runtime/{nitro → server}/routes/__zero-runtime/image.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/routes/__zero-runtime/image.js +0 -0
- /package/dist/runtime/{nitro → server}/routes/debug.json.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/routes/font.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/routes/font.js +0 -0
- /package/dist/runtime/{nitro → server}/routes/image.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/routes/image.js +0 -0
- /package/dist/runtime/{nitro → server}/tsconfig.json +0 -0
- /package/dist/runtime/{nitro → server}/util/cache.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/util/cache.js +0 -0
- /package/dist/runtime/{nitro → server}/util/encoding.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/util/encoding.js +0 -0
- /package/dist/runtime/{nitro → server}/util/eventHandlers.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/util/eventHandlers.js +0 -0
- /package/dist/runtime/{nitro → server}/util/kit.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/util/kit.js +0 -0
- /package/dist/runtime/{nitro → server}/util/logger.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/util/logger.js +0 -0
- /package/dist/runtime/{nitro → server}/util/options.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/util/plugins.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/util/wasm.d.ts +0 -0
- /package/dist/runtime/{nitro → server}/util/wasm.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import e from"./D0ybgVpa.js";import n from"./CkqQx3Va.js";import t from"./g_GSZ1hr.js";import i from"./Begb3drz.js";import r from"./D8nBeWSR.js";import"./BN40hmum.js";const a=Object.freeze(JSON.parse(`{"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"]}`)),u=[...e,...n,...t,...i,...r,a];export{u as default};
|
|
1
|
+
import e from"./dwbxrGt_.js";import n from"./CkqQx3Va.js";import t from"./u4bm_LMz.js";import i from"./DNgb01dh.js";import r from"./D8nBeWSR.js";import"./BN40hmum.js";const a=Object.freeze(JSON.parse(`{"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"]}`)),u=[...e,...n,...t,...i,...r,a];export{u as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=Object.freeze(JSON.parse('{"displayName":"SystemVerilog","fileTypes":["v","vh","sv","svh"],"name":"system-verilog","patterns":[{"include":"#comments"},{"include":"#strings"},{"include":"#typedef-enum-struct-union"},{"include":"#typedef"},{"include":"#functions"},{"include":"#keywords"},{"include":"#tables"},{"include":"#function-task"},{"include":"#module-declaration"},{"include":"#class-declaration"},{"include":"#enum-struct-union"},{"include":"#sequence"},{"include":"#all-types"},{"include":"#module-parameters"},{"include":"#module-no-parameters"},{"include":"#port-net-parameter"},{"include":"#system-tf"},{"include":"#assertion"},{"include":"#bind-directive"},{"include":"#cast-operator"},{"include":"#storage-scope"},{"include":"#attributes"},{"include":"#imports"},{"include":"#operators"},{"include":"#constants"},{"include":"#identifiers"},{"include":"#selects"}],"repository":{"all-types":{"patterns":[{"include":"#built-ins"},{"include":"#modifiers"}]},"assertion":{"captures":{"1":{"name":"entity.name.goto-label.php"},"2":{"name":"keyword.operator.systemverilog"},"3":{"name":"keyword.sva.systemverilog"}},"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\t\\\\r\\\\n]*(:)[ \\\\t\\\\r\\\\n]*(assert|assume|cover|restrict)\\\\b"},"attributes":{"begin":"(?<!@[ \\\\t\\\\r\\\\n]?)\\\\(\\\\*","beginCaptures":{"0":{"name":"punctuation.attribute.rounds.begin"}},"end":"\\\\*\\\\)","endCaptures":{"0":{"name":"punctuation.attribute.rounds.end"}},"name":"meta.attribute.systemverilog","patterns":[{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"keyword.operator.assignment.systemverilog"}},"match":"([a-zA-Z_][a-zA-Z0-9_$]*)(?:[ \\\\t\\\\r\\\\n]*(=)[ \\\\t\\\\r\\\\n]*)?"},{"include":"#constants"},{"include":"#strings"}]},"base-grammar":{"patterns":[{"include":"#all-types"},{"include":"#comments"},{"include":"#operators"},{"include":"#constants"},{"include":"#strings"},{"captures":{"1":{"name":"storage.type.interface.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\t\\\\r\\\\n]+[a-zA-Z_][a-zA-Z0-9_,= \\\\t\\\\n]*"},{"include":"#storage-scope"}]},"bind-directive":{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"entity.name.type.module.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(bind)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$\\\\.]*)\\\\b","name":"meta.definition.systemverilog"},"built-ins":{"patterns":[{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(bit|logic|reg)\\\\b","name":"storage.type.vector.systemverilog"},{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(byte|shortint|int|longint|integer|time|genvar)\\\\b","name":"storage.type.atom.systemverilog"},{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(shortreal|real|realtime)\\\\b","name":"storage.type.notint.systemverilog"},{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(supply[01]|tri|triand|trior|trireg|tri[01]|uwire|wire|wand|wor)\\\\b","name":"storage.type.net.systemverilog"},{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(genvar|var|void|signed|unsigned|string|const|process)\\\\b","name":"storage.type.built-in.systemverilog"},{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(uvm_(?:root|transaction|component|monitor|driver|test|env|object|agent|sequence_base|sequence_item|sequence_state|sequencer|sequencer_base|sequence|component_registry|analysis_imp|analysis_port|analysis_export|config_db|active_passive_enum|phase|verbosity|tlm_analysis_fifo|tlm_fifo|report_server|objection|recorder|domain|reg_field|reg_block|reg|bitstream_t|radix_enum|printer|packer|comparer|scope_stack))\\\\b","name":"storage.type.uvm.systemverilog"}]},"cast-operator":{"captures":{"1":{"patterns":[{"include":"#built-ins"},{"include":"#constants"},{"match":"[a-zA-Z_][a-zA-Z0-9_$]*","name":"storage.type.user-defined.systemverilog"}]},"2":{"name":"keyword.operator.cast.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*(\\\\d+|[a-zA-Z_][a-zA-Z0-9_$]*)(\')(?=\\\\()","name":"meta.cast.systemverilog"},"class-declaration":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b(virtual[ \\\\t\\\\r\\\\n]+)?(class)(?:[ \\\\t\\\\r\\\\n]+(static|automatic))?[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$:]*)(?:[ \\\\t\\\\r\\\\n]+(extends|implements)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$:]*))?","beginCaptures":{"1":{"name":"storage.modifier.systemverilog"},"2":{"name":"storage.type.class.systemverilog"},"3":{"name":"storage.modifier.systemverilog"},"4":{"name":"entity.name.type.class.systemverilog"},"5":{"name":"keyword.control.systemverilog"},"6":{"name":"entity.name.type.class.systemverilog"}},"end":";","endCaptures":{"0":{"name":"punctuation.definition.class.end.systemverilog"}},"name":"meta.class.systemverilog","patterns":[{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"entity.name.type.class.systemverilog"},"3":{"name":"entity.name.type.class.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]+\\\\b(extends|implements)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$:]*)(?:[ \\\\t\\\\r\\\\n]*,[ \\\\t\\\\r\\\\n]*([a-zA-Z_][a-zA-Z0-9_$:]*))*"},{"captures":{"1":{"name":"storage.type.userdefined.systemverilog"},"2":{"name":"keyword.operator.param.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]+\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\t\\\\r\\\\n]*(#)\\\\(","name":"meta.typedef.class.systemverilog"},{"include":"#port-net-parameter"},{"include":"#base-grammar"},{"include":"#module-binding"},{"include":"#identifiers"}]},"comments":{"patterns":[{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.systemverilog"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.systemverilog"}},"name":"comment.block.systemverilog","patterns":[{"include":"#fixme-todo"}]},{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.systemverilog"}},"end":"$\\\\n?","name":"comment.line.double-slash.systemverilog","patterns":[{"include":"#fixme-todo"}]}]},"compiler-directives":{"name":"meta.preprocessor.systemverilog","patterns":[{"captures":{"1":{"name":"punctuation.definition.directive.systemverilog"},"2":{"name":"string.regexp.systemverilog"}},"match":"(`)(else|endif|endcelldefine|celldefine|nounconnected_drive|resetall|undefineall|end_keywords|__FILE__|__LINE__)\\\\b"},{"captures":{"1":{"name":"punctuation.definition.directive.systemverilog"},"2":{"name":"string.regexp.systemverilog"},"3":{"name":"variable.other.constant.preprocessor.systemverilog"}},"match":"(`)(ifdef|ifndef|elsif|define|undef|pragma)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b"},{"captures":{"1":{"name":"punctuation.definition.directive.systemverilog"},"2":{"name":"string.regexp.systemverilog"}},"match":"(`)(include|timescale|default_nettype|unconnected_drive|line|begin_keywords)\\\\b"},{"begin":"(`)(protected)\\\\b","beginCaptures":{"1":{"name":"punctuation.definition.directive.systemverilog"},"2":{"name":"string.regexp.systemverilog"}},"end":"(`)(endprotected)\\\\b","endCaptures":{"1":{"name":"punctuation.definition.directive.systemverilog"},"2":{"name":"string.regexp.systemverilog"}},"name":"meta.crypto.systemverilog"},{"captures":{"1":{"name":"punctuation.definition.directive.systemverilog"},"2":{"name":"variable.other.constant.preprocessor.systemverilog"}},"match":"(`)([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b"}]},"constants":{"patterns":[{"match":"(\\\\b[1-9][0-9_]*)?\'([sS]?[bB][ \\\\t\\\\r\\\\n]*[0-1xXzZ?][0-1_xXzZ?]*|[sS]?[oO][ \\\\t\\\\r\\\\n]*[0-7xXzZ?][0-7_xXzZ?]*|[sS]?[dD][ \\\\t\\\\r\\\\n]*[0-9xXzZ?][0-9_xXzZ?]*|[sS]?[hH][ \\\\t\\\\r\\\\n]*[0-9a-fA-FxXzZ?][0-9a-fA-F_xXzZ?]*)((e|E)(\\\\+|-)?\\\\d+)?(?!\'|\\\\w)","name":"constant.numeric.systemverilog"},{"match":"\'[01xXzZ]","name":"constant.numeric.bit.systemverilog"},{"match":"\\\\b(?:\\\\d[\\\\d_\\\\.]*(?<!\\\\.)(?:e|E)(?:\\\\+|-)?\\\\d+)\\\\b","name":"constant.numeric.exp.systemverilog"},{"match":"\\\\b(?:\\\\d[\\\\d_\\\\.]*(?!(?:[\\\\d\\\\.]|[ \\\\t\\\\r\\\\n]*(?:e|E|fs|ps|ns|us|ms|s))))\\\\b","name":"constant.numeric.decimal.systemverilog"},{"match":"\\\\b(?:\\\\d[\\\\d\\\\.]*[ \\\\t\\\\r\\\\n]*(?:fs|ps|ns|us|ms|s))\\\\b","name":"constant.numeric.time.systemverilog"},{"include":"#compiler-directives"},{"match":"\\\\b(?:this|super|null)\\\\b","name":"constant.language.systemverilog"},{"match":"\\\\b([A-Z][A-Z0-9_]*)\\\\b","name":"constant.other.net.systemverilog"},{"match":"\\\\b(?<!\\\\.)([A-Z0-9_]+)(?!\\\\.)\\\\b","name":"constant.numeric.parameter.uppercase.systemverilog"},{"match":"\\\\.\\\\*","name":"keyword.operator.quantifier.regexp"}]},"enum-struct-union":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b(enum|struct|union(?:[ \\\\t\\\\r\\\\n]+tagged)?|class|interface[ \\\\t\\\\r\\\\n]+class)(?:[ \\\\t\\\\r\\\\n]+(?!packed|signed|unsigned)([a-zA-Z_][a-zA-Z0-9_$]*)?(?:[ \\\\t\\\\r\\\\n]*(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]()]*\\\\])?))?(?:[ \\\\t\\\\r\\\\n]+(packed))?(?:[ \\\\t\\\\r\\\\n]+(signed|unsigned))?(?=[ \\\\t\\\\r\\\\n]*(?:{|$))","beginCaptures":{"1":{"name":"keyword.control.systemverilog"},"2":{"patterns":[{"include":"#built-ins"}]},"3":{"patterns":[{"include":"#selects"}]},"4":{"name":"storage.modifier.systemverilog"},"5":{"name":"storage.modifier.systemverilog"}},"end":"(?<=})[ \\\\t\\\\r\\\\n]*([a-zA-Z_][a-zA-Z0-9_$]*|(?<=^|[ \\\\t\\\\r\\\\n])\\\\\\\\[!-~]+(?=$|[ \\\\t\\\\r\\\\n]))(?:[ \\\\t\\\\r\\\\n]*(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]()]*\\\\])?)[ \\\\t\\\\r\\\\n]*[,;]","endCaptures":{"1":{"patterns":[{"include":"#identifiers"}]},"2":{"patterns":[{"include":"#selects"}]}},"name":"meta.enum-struct-union.systemverilog","patterns":[{"include":"#keywords"},{"include":"#base-grammar"},{"include":"#identifiers"}]},"fixme-todo":{"patterns":[{"match":"(?i:fixme)","name":"invalid.broken.fixme.systemverilog"},{"match":"(?i:todo)","name":"invalid.unimplemented.todo.systemverilog"}]},"function-task":{"begin":"[ \\\\t\\\\r\\\\n]*(?:\\\\b(virtual)[ \\\\t\\\\r\\\\n]+)?(?:\\\\b(function|task)\\\\b)(?:[ \\\\t\\\\r\\\\n]+\\\\b(static|automatic)\\\\b)?","beginCaptures":{"1":{"name":"storage.modifier.systemverilog"},"2":{"name":"storage.type.function.systemverilog"},"3":{"name":"storage.modifier.systemverilog"}},"end":";","endCaptures":{"0":{"name":"punctuation.definition.function.end.systemverilog"}},"name":"meta.function.systemverilog","patterns":[{"captures":{"1":{"name":"support.type.scope.systemverilog"},"2":{"name":"keyword.operator.scope.systemverilog"},"3":{"patterns":[{"include":"#built-ins"},{"match":"[a-zA-Z_][a-zA-Z0-9_$]*","name":"storage.type.user-defined.systemverilog"}]},"4":{"patterns":[{"include":"#modifiers"}]},"5":{"patterns":[{"include":"#selects"}]},"6":{"name":"entity.name.function.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*(?:\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)(::))?([a-zA-Z_][a-zA-Z0-9_$]*\\\\b[ \\\\t\\\\r\\\\n]+)?(?:\\\\b(signed|unsigned)\\\\b[ \\\\t\\\\r\\\\n]*)?(?:(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]()]*\\\\])[ \\\\t\\\\r\\\\n]*)?(?:\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b[ \\\\t\\\\r\\\\n]*)(?=\\\\(|;)"},{"include":"#keywords"},{"include":"#port-net-parameter"},{"include":"#base-grammar"},{"include":"#identifiers"}]},"functions":{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(?!while|for|if|iff|else|case|casex|casez)([a-zA-Z_][a-zA-Z0-9_$]*)(?=[ \\\\t\\\\r\\\\n]*\\\\()","name":"entity.name.function.systemverilog"},"identifiers":{"patterns":[{"match":"\\\\b[a-zA-Z_][a-zA-Z0-9_$]*\\\\b","name":"variable.other.identifier.systemverilog"},{"match":"(?<=^|[ \\\\t\\\\r\\\\n])\\\\\\\\[!-~]+(?=$|[ \\\\t\\\\r\\\\n])","name":"string.regexp.identifier.systemverilog"}]},"imports":{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"support.type.scope.systemverilog"},"3":{"name":"keyword.operator.scope.systemverilog"},"4":{"patterns":[{"include":"#operators"},{"include":"#identifiers"}]}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(import|export)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$]*|\\\\*)[ \\\\t\\\\r\\\\n]*(::)[ \\\\t\\\\r\\\\n]*([a-zA-Z_][a-zA-Z0-9_$]*|\\\\*)[ \\\\t\\\\r\\\\n]*(,|;)","name":"meta.import.systemverilog"},"keywords":{"patterns":[{"captures":{"1":{"name":"keyword.other.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(edge|negedge|posedge|cell|config|defparam|design|disable|endgenerate|endspecify|event|generate|ifnone|incdir|instance|liblist|library|noshowcancelled|pulsestyle_onevent|pulsestyle_ondetect|scalared|showcancelled|specify|specparam|use|vectored)\\\\b"},{"include":"#sv-control"},{"include":"#sv-control-begin"},{"include":"#sv-control-end"},{"include":"#sv-definition"},{"include":"#sv-cover-cross"},{"include":"#sv-std"},{"include":"#sv-option"},{"include":"#sv-local"},{"include":"#sv-rand"}]},"modifiers":{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(?:(?:un)?signed|packed|small|medium|large|supply[01]|strong[01]|pull[01]|weak[01]|highz[01])\\\\b","name":"storage.modifier.systemverilog"},"module-binding":{"begin":"\\\\.([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\t\\\\r\\\\n]*\\\\(","beginCaptures":{"1":{"name":"support.function.port.systemverilog"}},"end":"\\\\),?","name":"meta.port.binding.systemverilog","patterns":[{"include":"#constants"},{"include":"#comments"},{"include":"#operators"},{"include":"#strings"},{"include":"#constants"},{"include":"#storage-scope"},{"include":"#cast-operator"},{"include":"#system-tf"},{"match":"\\\\bvirtual\\\\b","name":"storage.modifier.systemverilog"},{"include":"#identifiers"}]},"module-declaration":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b((?:macro)?module|interface|program|package|modport)[ \\\\t\\\\r\\\\n]+(?:(static|automatic)[ \\\\t\\\\r\\\\n]+)?([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b","beginCaptures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"storage.modifier.systemverilog"},"3":{"name":"entity.name.type.module.systemverilog"}},"end":";","endCaptures":{"0":{"name":"punctuation.definition.module.end.systemverilog"}},"name":"meta.module.systemverilog","patterns":[{"include":"#parameters"},{"include":"#port-net-parameter"},{"include":"#imports"},{"include":"#base-grammar"},{"include":"#system-tf"},{"include":"#identifiers"}]},"module-no-parameters":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b(?:(bind|pullup|pulldown)[ \\\\t\\\\r\\\\n]+(?:([a-zA-Z_][a-zA-Z0-9_$\\\\.]*)[ \\\\t\\\\r\\\\n]+)?)?((?:\\\\b(?:and|nand|or|nor|xor|xnor|buf|not|bufif[01]|notif[01]|r?[npc]mos|r?tran|r?tranif[01])\\\\b|[a-zA-Z_][a-zA-Z0-9_$]*))[ \\\\t\\\\r\\\\n]+(?!intersect|and|or|throughout|within)([a-zA-Z_][a-zA-Z0-9_$]*)(?:[ \\\\t\\\\r\\\\n]*(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]()]*\\\\])?)[ \\\\t\\\\r\\\\n]*(?=\\\\(|$)(?!;)","beginCaptures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"entity.name.type.module.systemverilog"},"3":{"name":"entity.name.type.module.systemverilog"},"4":{"name":"variable.other.module.systemverilog"},"5":{"patterns":[{"include":"#selects"}]}},"end":"\\\\)(?:[ \\\\t\\\\r\\\\n]*(;))?","endCaptures":{"1":{"name":"punctuation.module.instantiation.end.systemverilog"}},"name":"meta.module.no_parameters.systemverilog","patterns":[{"include":"#module-binding"},{"include":"#comments"},{"include":"#operators"},{"include":"#constants"},{"include":"#strings"},{"include":"#port-net-parameter"},{"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b(?=[ \\\\t\\\\r\\\\n]*(\\\\(|$))","name":"variable.other.module.systemverilog"},{"include":"#identifiers"}]},"module-parameters":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b(?:(bind)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$\\\\.]*)[ \\\\t\\\\r\\\\n]+)?([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\t\\\\r\\\\n]+(?!intersect|and|or|throughout|within)(?=#[^#])","beginCaptures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"entity.name.type.module.systemverilog"},"3":{"name":"entity.name.type.module.systemverilog"}},"end":"\\\\)(?:[ \\\\t\\\\r\\\\n]*(;))?","endCaptures":{"1":{"name":"punctuation.module.instantiation.end.systemverilog"}},"name":"meta.module.parameters.systemverilog","patterns":[{"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b(?=[ \\\\t\\\\r\\\\n]*\\\\()","name":"variable.other.module.systemverilog"},{"include":"#module-binding"},{"include":"#parameters"},{"include":"#comments"},{"include":"#operators"},{"include":"#constants"},{"include":"#strings"},{"include":"#port-net-parameter"},{"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b(?=[ \\\\t\\\\r\\\\n]*$)","name":"variable.other.module.systemverilog"},{"include":"#identifiers"}]},"operators":{"patterns":[{"match":"\\\\+=|-=|/=|\\\\*=|%=|&=|\\\\|=|\\\\^=|>>>=|>>=|<<<=|<<=|<=|=","name":"keyword.operator.assignment.systemverilog"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.systemverilog"},{"match":"--","name":"keyword.operator.decrement.systemverilog"},{"match":"\\\\+|-|\\\\*\\\\*|\\\\*|/|%","name":"keyword.operator.arithmetic.systemverilog"},{"match":"!|&&|\\\\|\\\\|","name":"keyword.operator.logical.systemverilog"},{"match":"<<<|<<|>>>|>>","name":"keyword.operator.bitwise.shift.systemverilog"},{"match":"~&|~\\\\||~|\\\\^~|~\\\\^|&|\\\\||\\\\^|{|\'{|}|:|\\\\?","name":"keyword.operator.bitwise.systemverilog"},{"match":"<=|<|>=|>|==\\\\?|!=\\\\?|===|!==|==|!=","name":"keyword.operator.comparison.systemverilog"},{"match":"@|##|#|->|<->","name":"keyword.operator.channel.systemverilog"},{"match":"\\\\b(?:dist|inside|with|intersect|and|or|throughout|within|first_match)\\\\b|:=|:/|\\\\|->|\\\\|=>|->>|\\\\*>|#-#|#=#|&&&","name":"keyword.operator.logical.systemverilog"}]},"parameters":{"begin":"[ \\\\t\\\\r\\\\n]*(#)[ \\\\t\\\\r\\\\n]*(\\\\()","beginCaptures":{"1":{"name":"keyword.operator.channel.systemverilog"},"2":{"name":"punctuation.section.parameters.begin"}},"end":"(\\\\))[ \\\\t\\\\r\\\\n]*(?=;|\\\\(|[a-zA-Z_]|\\\\\\\\|$)","endCaptures":{"1":{"name":"punctuation.section.parameters.end"}},"name":"meta.parameters.systemverilog","patterns":[{"include":"#port-net-parameter"},{"include":"#comments"},{"include":"#constants"},{"include":"#operators"},{"include":"#strings"},{"include":"#system-tf"},{"include":"#functions"},{"match":"\\\\bvirtual\\\\b","name":"storage.modifier.systemverilog"},{"include":"#module-binding"}]},"port-net-parameter":{"patterns":[{"captures":{"1":{"name":"support.type.direction.systemverilog"},"2":{"name":"storage.type.net.systemverilog"},"3":{"name":"support.type.scope.systemverilog"},"4":{"name":"keyword.operator.scope.systemverilog"},"5":{"patterns":[{"include":"#built-ins"},{"match":"[a-zA-Z_][a-zA-Z0-9_$]*","name":"storage.type.user-defined.systemverilog"}]},"6":{"patterns":[{"include":"#modifiers"}]},"7":{"patterns":[{"include":"#selects"}]},"8":{"patterns":[{"include":"#constants"},{"include":"#identifiers"}]},"9":{"patterns":[{"include":"#selects"}]}},"match":",?[ \\\\t\\\\r\\\\n]*(?:\\\\b(output|input|inout|ref)\\\\b[ \\\\t\\\\r\\\\n]*)?(?:\\\\b(localparam|parameter|var|supply[01]|tri|triand|trior|trireg|tri[01]|uwire|wire|wand|wor)\\\\b[ \\\\t\\\\r\\\\n]*)?(?:\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)(::))?(?:([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b[ \\\\t\\\\r\\\\n]*)?(?:\\\\b(signed|unsigned)\\\\b[ \\\\t\\\\r\\\\n]*)?(?:(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]()]*\\\\])[ \\\\t\\\\r\\\\n]*)?(?<!(?<!#)[:&|=+\\\\-*/%?><^!~(][ \\\\t\\\\r\\\\n]*)\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b[ \\\\t\\\\r\\\\n]*(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]()]*\\\\])?[ \\\\t\\\\r\\\\n]*(?=,|;|=|\\\\)|/|$)","name":"meta.port-net-parameter.declaration.systemverilog"}]},"selects":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.slice.brackets.begin"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.slice.brackets.end"}},"name":"meta.brackets.select.systemverilog","patterns":[{"match":"\\\\$(?![a-z])","name":"constant.language.systemverilog"},{"include":"#system-tf"},{"include":"#constants"},{"include":"#operators"},{"include":"#cast-operator"},{"include":"#storage-scope"},{"match":"[a-zA-Z_][a-zA-Z0-9_$]*","name":"variable.other.identifier.systemverilog"}]},"sequence":{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"entity.name.function.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(sequence)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b","name":"meta.sequence.systemverilog"},"storage-scope":{"captures":{"1":{"name":"support.type.scope.systemverilog"},"2":{"name":"keyword.operator.scope.systemverilog"}},"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)(::)","name":"meta.scope.systemverilog"},"strings":{"patterns":[{"begin":"`?\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.systemverilog"}},"end":"\\"`?","endCaptures":{"0":{"name":"punctuation.definition.string.end.systemverilog"}},"name":"string.quoted.double.systemverilog","patterns":[{"match":"\\\\\\\\(?:[nt\\\\\\\\\\"vfa]|[0-7]{3}|x[0-9a-fA-F]{2})","name":"constant.character.escape.systemverilog"},{"match":"%(\\\\d+\\\\$)?[\'\\\\-+0 #]*[,;:_]?((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?(\\\\.((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?)?(hh|h|ll|l|j|z|t|L)?[xXhHdDoObBcClLvVmMpPsStTuUzZeEfFgG%]","name":"constant.character.format.placeholder.systemverilog"},{"match":"%","name":"invalid.illegal.placeholder.systemverilog"},{"include":"#fixme-todo"}]},{"begin":"(?<=include)[ \\\\t\\\\r\\\\n]*(<)","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.systemverilog"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.string.end.systemverilog"}},"name":"string.quoted.other.lt-gt.include.systemverilog"}]},"sv-control":{"captures":{"1":{"name":"keyword.control.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(initial|always|always_comb|always_ff|always_latch|final|assign|deassign|force|release|wait|forever|repeat|alias|while|for|if|iff|else|case|casex|casez|default|endcase|return|break|continue|do|foreach|clocking|coverpoint|property|bins|binsof|illegal_bins|ignore_bins|randcase|matches|solve|before|expect|cross|ref|srandom|struct|chandle|tagged|extern|throughout|timeprecision|timeunit|priority|type|union|wait_order|triggered|randsequence|context|pure|wildcard|new|forkjoin|unique|unique0|priority)\\\\b"},"sv-control-begin":{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"punctuation.definition.label.systemverilog"},"3":{"name":"entity.name.section.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(begin|fork)\\\\b(?:[ \\\\t\\\\r\\\\n]*(:)[ \\\\t\\\\r\\\\n]*([a-zA-Z_][a-zA-Z0-9_$]*))?","name":"meta.item.begin.systemverilog"},"sv-control-end":{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"punctuation.definition.label.systemverilog"},"3":{"name":"entity.name.section.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(end|endmodule|endinterface|endprogram|endchecker|endclass|endpackage|endconfig|endfunction|endtask|endproperty|endsequence|endgroup|endprimitive|endclocking|endgenerate|join|join_any|join_none)\\\\b(?:[ \\\\t\\\\r\\\\n]*(:)[ \\\\t\\\\r\\\\n]*([a-zA-Z_][a-zA-Z0-9_$]*))?","name":"meta.item.end.systemverilog"},"sv-cover-cross":{"captures":{"2":{"name":"entity.name.type.class.systemverilog"},"3":{"name":"keyword.operator.other.systemverilog"},"4":{"name":"keyword.control.systemverilog"}},"match":"(([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\t\\\\r\\\\n]*(:))?[ \\\\t\\\\r\\\\n]*(coverpoint|cross)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$]*)","name":"meta.definition.systemverilog"},"sv-definition":{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"entity.name.type.class.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(primitive|package|constraint|interface|covergroup|program)[ \\\\t\\\\r\\\\n]+\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b","name":"meta.definition.systemverilog"},"sv-local":{"captures":{"1":{"name":"keyword.other.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(const|static|protected|virtual|localparam|parameter|local)\\\\b"},"sv-option":{"captures":{"1":{"name":"keyword.cover.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(option)\\\\."},"sv-rand":{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(?:rand|randc)\\\\b","name":"storage.type.rand.systemverilog"},"sv-std":{"match":"\\\\b(std)\\\\b::","name":"support.class.systemverilog"},"system-tf":{"match":"\\\\$[a-zA-Z0-9_$][a-zA-Z0-9_$]*\\\\b","name":"support.function.systemverilog"},"tables":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b(table)\\\\b","beginCaptures":{"1":{"name":"keyword.table.systemverilog.begin"}},"end":"[ \\\\t\\\\r\\\\n]*\\\\b(endtable)\\\\b","endCaptures":{"1":{"name":"keyword.table.systemverilog.end"}},"name":"meta.table.systemverilog","patterns":[{"include":"#comments"},{"match":"\\\\b[01xXbBrRfFpPnN]\\\\b","name":"constant.language.systemverilog"},{"match":"[-*?]","name":"constant.language.systemverilog"},{"captures":{"1":{"name":"constant.language.systemverilog"}},"match":"\\\\(([01xX?]{2})\\\\)"},{"match":":","name":"punctuation.definition.label.systemverilog"},{"include":"#operators"},{"include":"#constants"},{"include":"#strings"},{"include":"#identifiers"}]},"typedef":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b(?:(typedef)[ \\\\t\\\\r\\\\n]+)(?:([a-zA-Z_][a-zA-Z0-9_$]*)(?:[ \\\\t\\\\r\\\\n]+\\\\b(signed|unsigned)\\\\b)?(?:[ \\\\t\\\\r\\\\n]*(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]()]*\\\\])?))?(?=[ \\\\t\\\\r\\\\n]*[a-zA-Z_\\\\\\\\])","beginCaptures":{"1":{"name":"keyword.control.systemverilog"},"2":{"patterns":[{"include":"#built-ins"},{"match":"\\\\bvirtual\\\\b","name":"storage.modifier.systemverilog"}]},"3":{"patterns":[{"include":"#modifiers"}]},"4":{"patterns":[{"include":"#selects"}]}},"end":";","endCaptures":{"0":{"name":"punctuation.definition.typedef.end.systemverilog"}},"name":"meta.typedef.systemverilog","patterns":[{"include":"#identifiers"},{"include":"#selects"}]},"typedef-enum-struct-union":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b(typedef)[ \\\\t\\\\r\\\\n]+(enum|struct|union(?:[ \\\\t\\\\r\\\\n]+tagged)?|class|interface[ \\\\t\\\\r\\\\n]+class)(?:[ \\\\t\\\\r\\\\n]+(?!packed|signed|unsigned)([a-zA-Z_][a-zA-Z0-9_$]*)?(?:[ \\\\t\\\\r\\\\n]*(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]()]*\\\\])?))?(?:[ \\\\t\\\\r\\\\n]+(packed))?(?:[ \\\\t\\\\r\\\\n]+(signed|unsigned))?(?=[ \\\\t\\\\r\\\\n]*(?:{|$))","beginCaptures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"keyword.control.systemverilog"},"3":{"patterns":[{"include":"#built-ins"}]},"4":{"patterns":[{"include":"#selects"}]},"5":{"name":"storage.modifier.systemverilog"},"6":{"name":"storage.modifier.systemverilog"}},"end":"(?<=})[ \\\\t\\\\r\\\\n]*([a-zA-Z_][a-zA-Z0-9_$]*|(?<=^|[ \\\\t\\\\r\\\\n])\\\\\\\\[!-~]+(?=$|[ \\\\t\\\\r\\\\n]))(?:[ \\\\t\\\\r\\\\n]*(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]()]*\\\\])?)[ \\\\t\\\\r\\\\n]*[,;]","endCaptures":{"1":{"name":"storage.type.systemverilog"},"2":{"patterns":[{"include":"#selects"}]}},"name":"meta.typedef-enum-struct-union.systemverilog","patterns":[{"include":"#port-net-parameter"},{"include":"#keywords"},{"include":"#base-grammar"},{"include":"#identifiers"}]}},"scopeName":"source.systemverilog"}')),t=[e];export{t as default};
|
|
1
|
+
const e=Object.freeze(JSON.parse('{"displayName":"SystemVerilog","fileTypes":["v","vh","sv","svh"],"name":"system-verilog","patterns":[{"include":"#comments"},{"include":"#strings"},{"include":"#typedef-enum-struct-union"},{"include":"#typedef"},{"include":"#functions"},{"include":"#keywords"},{"include":"#tables"},{"include":"#function-task"},{"include":"#module-declaration"},{"include":"#class-declaration"},{"include":"#enum-struct-union"},{"include":"#sequence"},{"include":"#all-types"},{"include":"#module-parameters"},{"include":"#module-no-parameters"},{"include":"#port-net-parameter"},{"include":"#system-tf"},{"include":"#assertion"},{"include":"#bind-directive"},{"include":"#cast-operator"},{"include":"#storage-scope"},{"include":"#attributes"},{"include":"#imports"},{"include":"#operators"},{"include":"#constants"},{"include":"#identifiers"},{"include":"#selects"}],"repository":{"all-types":{"patterns":[{"include":"#built-ins"},{"include":"#modifiers"}]},"assertion":{"captures":{"1":{"name":"entity.name.goto-label.php"},"2":{"name":"keyword.operator.systemverilog"},"3":{"name":"keyword.sva.systemverilog"}},"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\t\\\\r\\\\n]*(:)[ \\\\t\\\\r\\\\n]*(assert|assume|cover|restrict)\\\\b"},"attributes":{"begin":"(?<!@[ \\\\t\\\\r\\\\n]?)\\\\(\\\\*","beginCaptures":{"0":{"name":"punctuation.attribute.rounds.begin"}},"end":"\\\\*\\\\)","endCaptures":{"0":{"name":"punctuation.attribute.rounds.end"}},"name":"meta.attribute.systemverilog","patterns":[{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"keyword.operator.assignment.systemverilog"}},"match":"([a-zA-Z_][a-zA-Z0-9_$]*)(?:[ \\\\t\\\\r\\\\n]*(=)[ \\\\t\\\\r\\\\n]*)?"},{"include":"#constants"},{"include":"#strings"}]},"base-grammar":{"patterns":[{"include":"#all-types"},{"include":"#comments"},{"include":"#operators"},{"include":"#constants"},{"include":"#strings"},{"captures":{"1":{"name":"storage.type.interface.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\t\\\\r\\\\n]+[a-zA-Z_][a-zA-Z0-9_,= \\\\t\\\\n]*"},{"include":"#storage-scope"}]},"bind-directive":{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"entity.name.type.module.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(bind)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$\\\\.]*)\\\\b","name":"meta.definition.systemverilog"},"built-ins":{"patterns":[{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(bit|logic|reg)\\\\b","name":"storage.type.vector.systemverilog"},{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(byte|shortint|int|longint|integer|time|genvar)\\\\b","name":"storage.type.atom.systemverilog"},{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(shortreal|real|realtime)\\\\b","name":"storage.type.notint.systemverilog"},{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(supply[01]|tri|triand|trior|trireg|tri[01]|uwire|wire|wand|wor)\\\\b","name":"storage.type.net.systemverilog"},{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(genvar|var|void|signed|unsigned|string|const|process)\\\\b","name":"storage.type.built-in.systemverilog"},{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(uvm_(?:root|transaction|component|monitor|driver|test|env|object|agent|sequence_base|sequence_item|sequence_state|sequencer|sequencer_base|sequence|component_registry|analysis_imp|analysis_port|analysis_export|config_db|active_passive_enum|phase|verbosity|tlm_analysis_fifo|tlm_fifo|report_server|objection|recorder|domain|reg_field|reg_block|reg|bitstream_t|radix_enum|printer|packer|comparer|scope_stack))\\\\b","name":"storage.type.uvm.systemverilog"}]},"cast-operator":{"captures":{"1":{"patterns":[{"include":"#built-ins"},{"include":"#constants"},{"match":"[a-zA-Z_][a-zA-Z0-9_$]*","name":"storage.type.user-defined.systemverilog"}]},"2":{"name":"keyword.operator.cast.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*(\\\\d+|[a-zA-Z_][a-zA-Z0-9_$]*)(\')(?=\\\\()","name":"meta.cast.systemverilog"},"class-declaration":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b(virtual[ \\\\t\\\\r\\\\n]+)?(class)(?:[ \\\\t\\\\r\\\\n]+(static|automatic))?[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$:]*)(?:[ \\\\t\\\\r\\\\n]+(extends|implements)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$:]*))?","beginCaptures":{"1":{"name":"storage.modifier.systemverilog"},"2":{"name":"storage.type.class.systemverilog"},"3":{"name":"storage.modifier.systemverilog"},"4":{"name":"entity.name.type.class.systemverilog"},"5":{"name":"keyword.control.systemverilog"},"6":{"name":"entity.name.type.class.systemverilog"}},"end":";","endCaptures":{"0":{"name":"punctuation.definition.class.end.systemverilog"}},"name":"meta.class.systemverilog","patterns":[{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"entity.name.type.class.systemverilog"},"3":{"name":"entity.name.type.class.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]+\\\\b(extends|implements)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$:]*)(?:[ \\\\t\\\\r\\\\n]*,[ \\\\t\\\\r\\\\n]*([a-zA-Z_][a-zA-Z0-9_$:]*))*"},{"captures":{"1":{"name":"storage.type.userdefined.systemverilog"},"2":{"name":"keyword.operator.param.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]+\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\t\\\\r\\\\n]*(#)\\\\(","name":"meta.typedef.class.systemverilog"},{"include":"#port-net-parameter"},{"include":"#base-grammar"},{"include":"#module-binding"},{"include":"#identifiers"}]},"comments":{"patterns":[{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.systemverilog"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.systemverilog"}},"name":"comment.block.systemverilog","patterns":[{"include":"#fixme-todo"}]},{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.systemverilog"}},"end":"$\\\\n?","name":"comment.line.double-slash.systemverilog","patterns":[{"include":"#fixme-todo"}]}]},"compiler-directives":{"name":"meta.preprocessor.systemverilog","patterns":[{"captures":{"1":{"name":"punctuation.definition.directive.systemverilog"},"2":{"name":"string.regexp.systemverilog"}},"match":"(`)(else|endif|endcelldefine|celldefine|nounconnected_drive|resetall|undefineall|end_keywords|__FILE__|__LINE__)\\\\b"},{"captures":{"1":{"name":"punctuation.definition.directive.systemverilog"},"2":{"name":"string.regexp.systemverilog"},"3":{"name":"variable.other.constant.preprocessor.systemverilog"}},"match":"(`)(ifdef|ifndef|elsif|define|undef|pragma)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b"},{"captures":{"1":{"name":"punctuation.definition.directive.systemverilog"},"2":{"name":"string.regexp.systemverilog"}},"match":"(`)(include|timescale|default_nettype|unconnected_drive|line|begin_keywords)\\\\b"},{"begin":"(`)(protected)\\\\b","beginCaptures":{"1":{"name":"punctuation.definition.directive.systemverilog"},"2":{"name":"string.regexp.systemverilog"}},"end":"(`)(endprotected)\\\\b","endCaptures":{"1":{"name":"punctuation.definition.directive.systemverilog"},"2":{"name":"string.regexp.systemverilog"}},"name":"meta.crypto.systemverilog"},{"captures":{"1":{"name":"punctuation.definition.directive.systemverilog"},"2":{"name":"variable.other.constant.preprocessor.systemverilog"}},"match":"(`)([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b"}]},"constants":{"patterns":[{"match":"(\\\\b[1-9][0-9_]*)?\'([sS]?[bB][ \\\\t\\\\r\\\\n]*[0-1xXzZ?][0-1_xXzZ?]*|[sS]?[oO][ \\\\t\\\\r\\\\n]*[0-7xXzZ?][0-7_xXzZ?]*|[sS]?[dD][ \\\\t\\\\r\\\\n]*[0-9xXzZ?][0-9_xXzZ?]*|[sS]?[hH][ \\\\t\\\\r\\\\n]*[0-9a-fA-FxXzZ?][0-9a-fA-F_xXzZ?]*)((e|E)(\\\\+|-)?\\\\d+)?(?!\'|\\\\w)","name":"constant.numeric.systemverilog"},{"match":"\'[01xXzZ]","name":"constant.numeric.bit.systemverilog"},{"match":"\\\\b(?:\\\\d[\\\\d_\\\\.]*(?<!\\\\.)(?:e|E)(?:\\\\+|-)?\\\\d+)\\\\b","name":"constant.numeric.exp.systemverilog"},{"match":"\\\\b(?:\\\\d[\\\\d_\\\\.]*(?!(?:[\\\\d\\\\.]|[ \\\\t\\\\r\\\\n]*(?:e|E|fs|ps|ns|us|ms|s))))\\\\b","name":"constant.numeric.decimal.systemverilog"},{"match":"\\\\b(?:\\\\d[\\\\d\\\\.]*[ \\\\t\\\\r\\\\n]*(?:fs|ps|ns|us|ms|s))\\\\b","name":"constant.numeric.time.systemverilog"},{"include":"#compiler-directives"},{"match":"\\\\b(?:this|super|null)\\\\b","name":"constant.language.systemverilog"},{"match":"\\\\b([A-Z][A-Z0-9_]*)\\\\b","name":"constant.other.net.systemverilog"},{"match":"\\\\b(?<!\\\\.)([A-Z0-9_]+)(?!\\\\.)\\\\b","name":"constant.numeric.parameter.uppercase.systemverilog"},{"match":"\\\\.\\\\*","name":"keyword.operator.quantifier.regexp"}]},"enum-struct-union":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b(enum|struct|union(?:[ \\\\t\\\\r\\\\n]+tagged)?|class|interface[ \\\\t\\\\r\\\\n]+class)(?:[ \\\\t\\\\r\\\\n]+(?!packed|signed|unsigned)([a-zA-Z_][a-zA-Z0-9_$]*)?(?:[ \\\\t\\\\r\\\\n]*(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]()]*\\\\])?))?(?:[ \\\\t\\\\r\\\\n]+(packed))?(?:[ \\\\t\\\\r\\\\n]+(signed|unsigned))?(?=[ \\\\t\\\\r\\\\n]*(?:{|$))","beginCaptures":{"1":{"name":"keyword.control.systemverilog"},"2":{"patterns":[{"include":"#built-ins"}]},"3":{"patterns":[{"include":"#selects"}]},"4":{"name":"storage.modifier.systemverilog"},"5":{"name":"storage.modifier.systemverilog"}},"end":"(?<=})[ \\\\t\\\\r\\\\n]*([a-zA-Z_][a-zA-Z0-9_$]*|(?<=^|[ \\\\t\\\\r\\\\n])\\\\\\\\[!-~]+(?=$|[ \\\\t\\\\r\\\\n]))(?:[ \\\\t\\\\r\\\\n]*(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]()]*\\\\])?)[ \\\\t\\\\r\\\\n]*[,;]","endCaptures":{"1":{"patterns":[{"include":"#identifiers"}]},"2":{"patterns":[{"include":"#selects"}]}},"name":"meta.enum-struct-union.systemverilog","patterns":[{"include":"#keywords"},{"include":"#base-grammar"},{"include":"#identifiers"}]},"fixme-todo":{"patterns":[{"match":"(?i:fixme)","name":"invalid.broken.fixme.systemverilog"},{"match":"(?i:todo)","name":"invalid.unimplemented.todo.systemverilog"}]},"function-task":{"begin":"[ \\\\t\\\\r\\\\n]*(?:\\\\b(virtual)[ \\\\t\\\\r\\\\n]+)?(?:\\\\b(function|task)\\\\b)(?:[ \\\\t\\\\r\\\\n]+\\\\b(static|automatic)\\\\b)?","beginCaptures":{"1":{"name":"storage.modifier.systemverilog"},"2":{"name":"storage.type.function.systemverilog"},"3":{"name":"storage.modifier.systemverilog"}},"end":";","endCaptures":{"0":{"name":"punctuation.definition.function.end.systemverilog"}},"name":"meta.function.systemverilog","patterns":[{"captures":{"1":{"name":"support.type.scope.systemverilog"},"2":{"name":"keyword.operator.scope.systemverilog"},"3":{"patterns":[{"include":"#built-ins"},{"match":"[a-zA-Z_][a-zA-Z0-9_$]*","name":"storage.type.user-defined.systemverilog"}]},"4":{"patterns":[{"include":"#modifiers"}]},"5":{"patterns":[{"include":"#selects"}]},"6":{"name":"entity.name.function.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*(?:\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)(::))?([a-zA-Z_][a-zA-Z0-9_$]*\\\\b[ \\\\t\\\\r\\\\n]+)?(?:\\\\b(signed|unsigned)\\\\b[ \\\\t\\\\r\\\\n]*)?(?:(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]()]*\\\\])[ \\\\t\\\\r\\\\n]*)?(?:\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b[ \\\\t\\\\r\\\\n]*)(?=\\\\(|;)"},{"include":"#keywords"},{"include":"#port-net-parameter"},{"include":"#base-grammar"},{"include":"#identifiers"}]},"functions":{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(?!while|for|if|iff|else|case|casex|casez)([a-zA-Z_][a-zA-Z0-9_$]*)(?=[ \\\\t\\\\r\\\\n]*\\\\()","name":"entity.name.function.systemverilog"},"identifiers":{"patterns":[{"match":"\\\\b[a-zA-Z_][a-zA-Z0-9_$]*\\\\b","name":"variable.other.identifier.systemverilog"},{"match":"(?<=^|[ \\\\t\\\\r\\\\n])\\\\\\\\[!-~]+(?=$|[ \\\\t\\\\r\\\\n])","name":"string.regexp.identifier.systemverilog"}]},"imports":{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"support.type.scope.systemverilog"},"3":{"name":"keyword.operator.scope.systemverilog"},"4":{"patterns":[{"include":"#operators"},{"include":"#identifiers"}]}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(import|export)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$]*|\\\\*)[ \\\\t\\\\r\\\\n]*(::)[ \\\\t\\\\r\\\\n]*([a-zA-Z_][a-zA-Z0-9_$]*|\\\\*)[ \\\\t\\\\r\\\\n]*(,|;)","name":"meta.import.systemverilog"},"keywords":{"patterns":[{"captures":{"1":{"name":"keyword.other.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(edge|negedge|posedge|cell|config|defparam|design|disable|endgenerate|endspecify|event|generate|ifnone|incdir|instance|liblist|library|noshowcancelled|pulsestyle_onevent|pulsestyle_ondetect|scalared|showcancelled|specify|specparam|use|vectored)\\\\b"},{"include":"#sv-control"},{"include":"#sv-control-begin"},{"include":"#sv-control-end"},{"include":"#sv-definition"},{"include":"#sv-cover-cross"},{"include":"#sv-std"},{"include":"#sv-option"},{"include":"#sv-local"},{"include":"#sv-rand"}]},"modifiers":{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(?:(?:un)?signed|packed|small|medium|large|supply[01]|strong[01]|pull[01]|weak[01]|highz[01])\\\\b","name":"storage.modifier.systemverilog"},"module-binding":{"begin":"\\\\.([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\t\\\\r\\\\n]*\\\\(","beginCaptures":{"1":{"name":"support.function.port.systemverilog"}},"end":"\\\\),?","name":"meta.port.binding.systemverilog","patterns":[{"include":"#constants"},{"include":"#comments"},{"include":"#operators"},{"include":"#strings"},{"include":"#constants"},{"include":"#storage-scope"},{"include":"#cast-operator"},{"include":"#system-tf"},{"match":"\\\\bvirtual\\\\b","name":"storage.modifier.systemverilog"},{"include":"#identifiers"}]},"module-declaration":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b((?:macro)?module|interface|program|package|modport)[ \\\\t\\\\r\\\\n]+(?:(static|automatic)[ \\\\t\\\\r\\\\n]+)?([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b","beginCaptures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"storage.modifier.systemverilog"},"3":{"name":"entity.name.type.module.systemverilog"}},"end":";","endCaptures":{"0":{"name":"punctuation.definition.module.end.systemverilog"}},"name":"meta.module.systemverilog","patterns":[{"include":"#parameters"},{"include":"#port-net-parameter"},{"include":"#imports"},{"include":"#base-grammar"},{"include":"#system-tf"},{"include":"#identifiers"}]},"module-no-parameters":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b(?:(bind|pullup|pulldown)[ \\\\t\\\\r\\\\n]+(?:([a-zA-Z_][a-zA-Z0-9_$\\\\.]*)[ \\\\t\\\\r\\\\n]+)?)?((?:\\\\b(?:and|nand|or|nor|xor|xnor|buf|not|bufif[01]|notif[01]|r?[npc]mos|r?tran|r?tranif[01])\\\\b|[a-zA-Z_][a-zA-Z0-9_$]*))[ \\\\t\\\\r\\\\n]+(?!intersect|and|or|throughout|within)([a-zA-Z_][a-zA-Z0-9_$]*)(?:[ \\\\t\\\\r\\\\n]*(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]()]*\\\\])?)[ \\\\t\\\\r\\\\n]*(?=\\\\(|$)(?!;)","beginCaptures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"entity.name.type.module.systemverilog"},"3":{"name":"entity.name.type.module.systemverilog"},"4":{"name":"variable.other.module.systemverilog"},"5":{"patterns":[{"include":"#selects"}]}},"end":"\\\\)(?:[ \\\\t\\\\r\\\\n]*(;))?","endCaptures":{"1":{"name":"punctuation.module.instantiation.end.systemverilog"}},"name":"meta.module.no_parameters.systemverilog","patterns":[{"include":"#module-binding"},{"include":"#comments"},{"include":"#operators"},{"include":"#constants"},{"include":"#strings"},{"include":"#port-net-parameter"},{"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b(?=[ \\\\t\\\\r\\\\n]*(\\\\(|$))","name":"variable.other.module.systemverilog"},{"include":"#identifiers"}]},"module-parameters":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b(?:(bind)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$\\\\.]*)[ \\\\t\\\\r\\\\n]+)?([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\t\\\\r\\\\n]+(?!intersect|and|or|throughout|within)(?=#[^#])","beginCaptures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"entity.name.type.module.systemverilog"},"3":{"name":"entity.name.type.module.systemverilog"}},"end":"\\\\)(?:[ \\\\t\\\\r\\\\n]*(;))?","endCaptures":{"1":{"name":"punctuation.module.instantiation.end.systemverilog"}},"name":"meta.module.parameters.systemverilog","patterns":[{"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b(?=[ \\\\t\\\\r\\\\n]*\\\\()","name":"variable.other.module.systemverilog"},{"include":"#module-binding"},{"include":"#parameters"},{"include":"#comments"},{"include":"#operators"},{"include":"#constants"},{"include":"#strings"},{"include":"#port-net-parameter"},{"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b(?=[ \\\\t\\\\r\\\\n]*$)","name":"variable.other.module.systemverilog"},{"include":"#identifiers"}]},"operators":{"patterns":[{"match":"\\\\b(?:dist|inside|with|intersect|and|or|throughout|within|first_match)\\\\b|:=|:/|\\\\|->|\\\\|=>|->>|\\\\*>|#-#|#=#|&&&","name":"keyword.operator.logical.systemverilog"},{"match":"@|##|#|->|<->","name":"keyword.operator.channel.systemverilog"},{"match":"\\\\+=|-=|/=|\\\\*=|%=|&=|\\\\|=|\\\\^=|>>>=|>>=|<<<=|<<=|<=|=","name":"keyword.operator.assignment.systemverilog"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.systemverilog"},{"match":"--","name":"keyword.operator.decrement.systemverilog"},{"match":"\\\\+|-|\\\\*\\\\*|\\\\*|/|%","name":"keyword.operator.arithmetic.systemverilog"},{"match":"!|&&|\\\\|\\\\|","name":"keyword.operator.logical.systemverilog"},{"match":"<<<|<<|>>>|>>","name":"keyword.operator.bitwise.shift.systemverilog"},{"match":"~&|~\\\\||~|\\\\^~|~\\\\^|&|\\\\||\\\\^|{|\'{|}|:|\\\\?","name":"keyword.operator.bitwise.systemverilog"},{"match":"<=|<|>=|>|==\\\\?|!=\\\\?|===|!==|==|!=","name":"keyword.operator.comparison.systemverilog"}]},"parameters":{"begin":"[ \\\\t\\\\r\\\\n]*(#)[ \\\\t\\\\r\\\\n]*(\\\\()","beginCaptures":{"1":{"name":"keyword.operator.channel.systemverilog"},"2":{"name":"punctuation.section.parameters.begin"}},"end":"(\\\\))[ \\\\t\\\\r\\\\n]*(?=;|\\\\(|[a-zA-Z_]|\\\\\\\\|$)","endCaptures":{"1":{"name":"punctuation.section.parameters.end"}},"name":"meta.parameters.systemverilog","patterns":[{"include":"#port-net-parameter"},{"include":"#comments"},{"include":"#constants"},{"include":"#operators"},{"include":"#strings"},{"include":"#system-tf"},{"include":"#functions"},{"match":"\\\\bvirtual\\\\b","name":"storage.modifier.systemverilog"},{"include":"#module-binding"}]},"port-net-parameter":{"patterns":[{"captures":{"1":{"name":"support.type.direction.systemverilog"},"2":{"name":"storage.type.net.systemverilog"},"3":{"name":"support.type.scope.systemverilog"},"4":{"name":"keyword.operator.scope.systemverilog"},"5":{"patterns":[{"include":"#built-ins"},{"match":"[a-zA-Z_][a-zA-Z0-9_$]*","name":"storage.type.user-defined.systemverilog"}]},"6":{"patterns":[{"include":"#modifiers"}]},"7":{"patterns":[{"include":"#selects"}]},"8":{"patterns":[{"include":"#constants"},{"include":"#identifiers"}]},"9":{"patterns":[{"include":"#selects"}]}},"match":",?[ \\\\t\\\\r\\\\n]*(?:\\\\b(output|input|inout|ref)\\\\b[ \\\\t\\\\r\\\\n]*)?(?:\\\\b(localparam|parameter|var|supply[01]|tri|triand|trior|trireg|tri[01]|uwire|wire|wand|wor)\\\\b[ \\\\t\\\\r\\\\n]*)?(?:\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)(::))?(?:([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b[ \\\\t\\\\r\\\\n]*)?(?:\\\\b(signed|unsigned)\\\\b[ \\\\t\\\\r\\\\n]*)?(?:(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]()]*\\\\])[ \\\\t\\\\r\\\\n]*)?(?<!(?<!#)[:&|=+\\\\-*/%?><^!~(][ \\\\t\\\\r\\\\n]*)\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b[ \\\\t\\\\r\\\\n]*(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]()]*\\\\])?[ \\\\t\\\\r\\\\n]*(?=,|;|=|\\\\)|/|$)","name":"meta.port-net-parameter.declaration.systemverilog"}]},"selects":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.slice.brackets.begin"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.slice.brackets.end"}},"name":"meta.brackets.select.systemverilog","patterns":[{"match":"\\\\$(?![a-z])","name":"constant.language.systemverilog"},{"include":"#system-tf"},{"include":"#constants"},{"include":"#operators"},{"include":"#cast-operator"},{"include":"#storage-scope"},{"match":"[a-zA-Z_][a-zA-Z0-9_$]*","name":"variable.other.identifier.systemverilog"}]},"sequence":{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"entity.name.function.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(sequence)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b","name":"meta.sequence.systemverilog"},"storage-scope":{"captures":{"1":{"name":"support.type.scope.systemverilog"},"2":{"name":"keyword.operator.scope.systemverilog"}},"match":"\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)(::)","name":"meta.scope.systemverilog"},"strings":{"patterns":[{"begin":"`?\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.systemverilog"}},"end":"\\"`?","endCaptures":{"0":{"name":"punctuation.definition.string.end.systemverilog"}},"name":"string.quoted.double.systemverilog","patterns":[{"match":"\\\\\\\\(?:[nt\\\\\\\\\\"vfa]|[0-7]{3}|x[0-9a-fA-F]{2})","name":"constant.character.escape.systemverilog"},{"match":"%(\\\\d+\\\\$)?[\'\\\\-+0 #]*[,;:_]?((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?(\\\\.((-?\\\\d+)|\\\\*(-?\\\\d+\\\\$)?)?)?(hh|h|ll|l|j|z|t|L)?[xXhHdDoObBcClLvVmMpPsStTuUzZeEfFgG%]","name":"constant.character.format.placeholder.systemverilog"},{"match":"%","name":"invalid.illegal.placeholder.systemverilog"},{"include":"#fixme-todo"}]},{"begin":"(?<=include)[ \\\\t\\\\r\\\\n]*(<)","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.systemverilog"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.string.end.systemverilog"}},"name":"string.quoted.other.lt-gt.include.systemverilog"}]},"sv-control":{"captures":{"1":{"name":"keyword.control.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(initial|always|always_comb|always_ff|always_latch|final|assign|deassign|force|release|wait|forever|repeat|alias|while|for|if|iff|else|case|casex|casez|default|endcase|return|break|continue|do|foreach|clocking|coverpoint|property|bins|binsof|illegal_bins|ignore_bins|randcase|matches|solve|before|expect|cross|ref|srandom|struct|chandle|tagged|extern|throughout|timeprecision|timeunit|priority|type|union|wait_order|triggered|randsequence|context|pure|wildcard|new|forkjoin|unique|unique0|priority)\\\\b"},"sv-control-begin":{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"punctuation.definition.label.systemverilog"},"3":{"name":"entity.name.section.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(begin|fork)\\\\b(?:[ \\\\t\\\\r\\\\n]*(:)[ \\\\t\\\\r\\\\n]*([a-zA-Z_][a-zA-Z0-9_$]*))?","name":"meta.item.begin.systemverilog"},"sv-control-end":{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"punctuation.definition.label.systemverilog"},"3":{"name":"entity.name.section.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(end|endmodule|endinterface|endprogram|endchecker|endclass|endpackage|endconfig|endfunction|endtask|endproperty|endsequence|endgroup|endprimitive|endclocking|endgenerate|join|join_any|join_none)\\\\b(?:[ \\\\t\\\\r\\\\n]*(:)[ \\\\t\\\\r\\\\n]*([a-zA-Z_][a-zA-Z0-9_$]*))?","name":"meta.item.end.systemverilog"},"sv-cover-cross":{"captures":{"2":{"name":"entity.name.type.class.systemverilog"},"3":{"name":"keyword.operator.other.systemverilog"},"4":{"name":"keyword.control.systemverilog"}},"match":"(([a-zA-Z_][a-zA-Z0-9_$]*)[ \\\\t\\\\r\\\\n]*(:))?[ \\\\t\\\\r\\\\n]*(coverpoint|cross)[ \\\\t\\\\r\\\\n]+([a-zA-Z_][a-zA-Z0-9_$]*)","name":"meta.definition.systemverilog"},"sv-definition":{"captures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"entity.name.type.class.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(primitive|package|constraint|interface|covergroup|program)[ \\\\t\\\\r\\\\n]+\\\\b([a-zA-Z_][a-zA-Z0-9_$]*)\\\\b","name":"meta.definition.systemverilog"},"sv-local":{"captures":{"1":{"name":"keyword.other.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(const|static|protected|virtual|localparam|parameter|local)\\\\b"},"sv-option":{"captures":{"1":{"name":"keyword.cover.systemverilog"}},"match":"[ \\\\t\\\\r\\\\n]*\\\\b(option)\\\\."},"sv-rand":{"match":"[ \\\\t\\\\r\\\\n]*\\\\b(?:rand|randc)\\\\b","name":"storage.type.rand.systemverilog"},"sv-std":{"match":"\\\\b(std)\\\\b::","name":"support.class.systemverilog"},"system-tf":{"match":"\\\\$[a-zA-Z0-9_$][a-zA-Z0-9_$]*\\\\b","name":"support.function.systemverilog"},"tables":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b(table)\\\\b","beginCaptures":{"1":{"name":"keyword.table.systemverilog.begin"}},"end":"[ \\\\t\\\\r\\\\n]*\\\\b(endtable)\\\\b","endCaptures":{"1":{"name":"keyword.table.systemverilog.end"}},"name":"meta.table.systemverilog","patterns":[{"include":"#comments"},{"match":"\\\\b[01xXbBrRfFpPnN]\\\\b","name":"constant.language.systemverilog"},{"match":"[-*?]","name":"constant.language.systemverilog"},{"captures":{"1":{"name":"constant.language.systemverilog"}},"match":"\\\\(([01xX?]{2})\\\\)"},{"match":":","name":"punctuation.definition.label.systemverilog"},{"include":"#operators"},{"include":"#constants"},{"include":"#strings"},{"include":"#identifiers"}]},"typedef":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b(?:(typedef)[ \\\\t\\\\r\\\\n]+)(?:([a-zA-Z_][a-zA-Z0-9_$]*)(?:[ \\\\t\\\\r\\\\n]+\\\\b(signed|unsigned)\\\\b)?(?:[ \\\\t\\\\r\\\\n]*(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]()]*\\\\])?))?(?=[ \\\\t\\\\r\\\\n]*[a-zA-Z_\\\\\\\\])","beginCaptures":{"1":{"name":"keyword.control.systemverilog"},"2":{"patterns":[{"include":"#built-ins"},{"match":"\\\\bvirtual\\\\b","name":"storage.modifier.systemverilog"}]},"3":{"patterns":[{"include":"#modifiers"}]},"4":{"patterns":[{"include":"#selects"}]}},"end":";","endCaptures":{"0":{"name":"punctuation.definition.typedef.end.systemverilog"}},"name":"meta.typedef.systemverilog","patterns":[{"include":"#identifiers"},{"include":"#selects"}]},"typedef-enum-struct-union":{"begin":"[ \\\\t\\\\r\\\\n]*\\\\b(typedef)[ \\\\t\\\\r\\\\n]+(enum|struct|union(?:[ \\\\t\\\\r\\\\n]+tagged)?|class|interface[ \\\\t\\\\r\\\\n]+class)(?:[ \\\\t\\\\r\\\\n]+(?!packed|signed|unsigned)([a-zA-Z_][a-zA-Z0-9_$]*)?(?:[ \\\\t\\\\r\\\\n]*(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]()]*\\\\])?))?(?:[ \\\\t\\\\r\\\\n]+(packed))?(?:[ \\\\t\\\\r\\\\n]+(signed|unsigned))?(?=[ \\\\t\\\\r\\\\n]*(?:{|$))","beginCaptures":{"1":{"name":"keyword.control.systemverilog"},"2":{"name":"keyword.control.systemverilog"},"3":{"patterns":[{"include":"#built-ins"}]},"4":{"patterns":[{"include":"#selects"}]},"5":{"name":"storage.modifier.systemverilog"},"6":{"name":"storage.modifier.systemverilog"}},"end":"(?<=})[ \\\\t\\\\r\\\\n]*([a-zA-Z_][a-zA-Z0-9_$]*|(?<=^|[ \\\\t\\\\r\\\\n])\\\\\\\\[!-~]+(?=$|[ \\\\t\\\\r\\\\n]))(?:[ \\\\t\\\\r\\\\n]*(\\\\[[a-zA-Z0-9_:$\\\\.\\\\-+\\\\*/%`\' \\\\t\\\\r\\\\n\\\\[\\\\]()]*\\\\])?)[ \\\\t\\\\r\\\\n]*[,;]","endCaptures":{"1":{"name":"storage.type.systemverilog"},"2":{"patterns":[{"include":"#selects"}]}},"name":"meta.typedef-enum-struct-union.systemverilog","patterns":[{"include":"#port-net-parameter"},{"include":"#keywords"},{"include":"#base-grammar"},{"include":"#identifiers"}]}},"scopeName":"source.systemverilog"}')),t=[e];export{t as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=Object.freeze(JSON.parse(`{"displayName":"Cairo","name":"cairo","patterns":[{"begin":"(<)(\\\\[)","beginCaptures":{"1":{"name":"punctuation.brackets.angle.cairo"},"2":{"name":"punctuation.brackets.square.cairo"}},"comment":"boxed slice literal","end":">","endCaptures":{"0":{"name":"punctuation.brackets.angle.cairo"}},"patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#gtypes"},{"include":"#lvariables"},{"include":"#punctuation"},{"include":"#types"}]},{"captures":{"1":{"name":"storage.type.cairo"},"2":{"name":"entity.name.module.cairo"}},"comment":"modules","match":"(mod)\\\\s+([a-z][A-Za-z0-9_]*)"},{"begin":"\\\\b(use)\\\\s","beginCaptures":{"1":{"name":"keyword.other.cairo"}},"comment":"use statements","end":";","endCaptures":{"0":{"name":"punctuation.semi.cairo"}},"name":"meta.use.cairo","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#keywords"},{"include":"#namespaces"},{"include":"#punctuation"},{"include":"#types"},{"include":"#lvariables"}]},{"include":"#block-comments"},{"include":"#comments"},{"include":"#attributes"},{"include":"#lvariables"},{"include":"#constants"},{"include":"#gtypes"},{"include":"#functions"},{"include":"#types"},{"include":"#keywords"},{"include":"#macros"},{"include":"#namespaces"},{"include":"#punctuation"},{"include":"#strings"},{"include":"#variables"}],"repository":{"attributes":{"begin":"(#)(!?)(\\\\[)","beginCaptures":{"1":{"name":"punctuation.definition.attribute.cairo"},"3":{"name":"punctuation.brackets.attribute.cairo"}},"comment":"attributes","end":"\\\\]","endCaptures":{"0":{"name":"punctuation.brackets.attribute.cairo"}},"name":"meta.attribute.cairo","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#keywords"},{"include":"#punctuation"},{"include":"#strings"},{"include":"#gtypes"},{"include":"#types"}]},"block-comments":{"patterns":[{"comment":"empty block comments","match":"/\\\\*\\\\*/","name":"comment.block.cairo"},{"begin":"/\\\\*\\\\*","comment":"block documentation comments","end":"\\\\*/","name":"comment.block.documentation.cairo","patterns":[{"include":"#block-comments"}]},{"begin":"/\\\\*(?!\\\\*)","comment":"block comments","end":"\\\\*/","name":"comment.block.cairo","patterns":[{"include":"#block-comments"}]}]},"comments":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.cairo"}},"comment":"documentation comments","match":"(///).*$","name":"comment.line.documentation.cairo"},{"captures":{"1":{"name":"punctuation.definition.comment.cairo"}},"comment":"line comments","match":"(//).*$","name":"comment.line.double-slash.cairo"}]},"constants":{"patterns":[{"comment":"ALL CAPS constants","match":"\\\\b[A-Z]{2}[A-Z0-9_]*\\\\b","name":"constant.other.caps.cairo"},{"captures":{"1":{"name":"storage.type.cairo"},"2":{"name":"constant.other.caps.cairo"}},"comment":"constant declarations","match":"\\\\b(const)\\\\s+([A-Z][A-Za-z0-9_]*)\\\\b"},{"captures":{"1":{"name":"punctuation.separator.dot.decimal.cairo"},"2":{"name":"keyword.operator.exponent.cairo"},"3":{"name":"keyword.operator.exponent.sign.cairo"},"4":{"name":"constant.numeric.decimal.exponent.mantissa.cairo"},"5":{"name":"entity.name.type.numeric.cairo"}},"comment":"decimal integers and floats","match":"\\\\b\\\\d[\\\\d_]*(\\\\.?)[\\\\d_]*(?:(E|e)([+-]?)([\\\\d_]+))?(f32|f64|i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\\\b","name":"constant.numeric.decimal.cairo"},{"captures":{"1":{"name":"entity.name.type.numeric.cairo"}},"comment":"hexadecimal integers","match":"\\\\b0x[\\\\da-fA-F_]+(i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\\\b","name":"constant.numeric.hex.cairo"},{"captures":{"1":{"name":"entity.name.type.numeric.cairo"}},"comment":"octal integers","match":"\\\\b0o[0-7_]+(i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\\\b","name":"constant.numeric.oct.cairo"},{"captures":{"1":{"name":"entity.name.type.numeric.cairo"}},"comment":"binary integers","match":"\\\\b0b[01_]+(i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\\\b","name":"constant.numeric.bin.cairo"},{"comment":"booleans","match":"\\\\b(true|false)\\\\b","name":"constant.language.bool.cairo"}]},"escapes":{"captures":{"1":{"name":"constant.character.escape.backslash.cairo"},"2":{"name":"constant.character.escape.bit.cairo"},"3":{"name":"constant.character.escape.unicode.cairo"},"4":{"name":"constant.character.escape.unicode.punctuation.cairo"},"5":{"name":"constant.character.escape.unicode.punctuation.cairo"}},"comment":"escapes: ASCII, byte, Unicode, quote, regex","match":"(\\\\\\\\)(?:(?:(x[0-7][\\\\da-fA-F])|(u(\\\\{)[\\\\da-fA-F]{4,6}(\\\\}))|.))","name":"constant.character.escape.cairo"},"functions":{"patterns":[{"captures":{"1":{"name":"keyword.other.cairo"},"2":{"name":"punctuation.brackets.round.cairo"}},"comment":"pub as a function","match":"\\\\b(pub)(\\\\()"},{"begin":"\\\\b(fn)\\\\s+([A-Za-z0-9_]+)((\\\\()|(<))","beginCaptures":{"1":{"name":"keyword.other.fn.cairo"},"2":{"name":"entity.name.function.cairo"},"4":{"name":"punctuation.brackets.round.cairo"},"5":{"name":"punctuation.brackets.angle.cairo"}},"comment":"function definition","end":"\\\\{|;","endCaptures":{"0":{"name":"punctuation.brackets.curly.cairo"}},"name":"meta.function.definition.cairo","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#keywords"},{"include":"#lvariables"},{"include":"#constants"},{"include":"#gtypes"},{"include":"#functions"},{"include":"#macros"},{"include":"#namespaces"},{"include":"#punctuation"},{"include":"#strings"},{"include":"#types"},{"include":"#variables"}]},{"begin":"([A-Za-z0-9_]+)(\\\\()","beginCaptures":{"1":{"name":"entity.name.function.cairo"},"2":{"name":"punctuation.brackets.round.cairo"}},"comment":"function/method calls, chaining","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.brackets.round.cairo"}},"name":"meta.function.call.cairo","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#attributes"},{"include":"#keywords"},{"include":"#lvariables"},{"include":"#constants"},{"include":"#gtypes"},{"include":"#functions"},{"include":"#macros"},{"include":"#namespaces"},{"include":"#punctuation"},{"include":"#strings"},{"include":"#types"},{"include":"#variables"}]},{"begin":"([A-Za-z0-9_]+)(?=::<.*>\\\\()","beginCaptures":{"1":{"name":"entity.name.function.cairo"}},"comment":"function/method calls with turbofish","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.brackets.round.cairo"}},"name":"meta.function.call.cairo","patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#attributes"},{"include":"#keywords"},{"include":"#lvariables"},{"include":"#constants"},{"include":"#gtypes"},{"include":"#functions"},{"include":"#lifetimes"},{"include":"#macros"},{"include":"#namespaces"},{"include":"#punctuation"},{"include":"#strings"},{"include":"#types"},{"include":"#variables"}]}]},"gtypes":{"patterns":[{"comment":"option types","match":"\\\\b(Some|None)\\\\b","name":"entity.name.type.option.cairo"},{"comment":"result types","match":"\\\\b(Ok|Err)\\\\b","name":"entity.name.type.result.cairo"}]},"interpolations":{"captures":{"1":{"name":"punctuation.definition.interpolation.cairo"},"2":{"name":"punctuation.definition.interpolation.cairo"}},"comment":"curly brace interpolations","match":"({)[^\\"{}]*(})","name":"meta.interpolation.cairo"},"keywords":{"patterns":[{"comment":"control flow keywords","match":"\\\\b(break|continue|do|else|for|if|loop|match|return|try|while|yield)\\\\b","name":"keyword.control.cairo"},{"comment":"storage keywords","match":"\\\\b(extern|let|macro|mod)\\\\b","name":"keyword.other.cairo storage.type.cairo"},{"comment":"const keyword","match":"\\\\b(const)\\\\b","name":"storage.modifier.cairo"},{"comment":"type keyword","match":"\\\\b(type)\\\\b","name":"keyword.declaration.type.cairo storage.type.cairo"},{"comment":"enum keyword","match":"\\\\b(enum)\\\\b","name":"keyword.declaration.enum.cairo storage.type.cairo"},{"comment":"trait keyword","match":"\\\\b(trait)\\\\b","name":"keyword.declaration.trait.cairo storage.type.cairo"},{"comment":"struct keyword","match":"\\\\b(struct)\\\\b","name":"keyword.declaration.struct.cairo storage.type.cairo"},{"comment":"storage modifiers","match":"\\\\b(ref|static)\\\\b","name":"storage.modifier.cairo"},{"comment":"other keywords","match":"\\\\b(as|dyn|move|impl|implicits|in|nopanic|of|priv|pub|static_assert|typeof|unsafe|use|where|with)\\\\b","name":"keyword.other.cairo"},{"comment":"fn","match":"\\\\bfn\\\\b","name":"keyword.other.fn.cairo"},{"comment":"crate","match":"\\\\bcrate\\\\b","name":"keyword.other.crate.cairo"},{"comment":"mut","match":"\\\\bmut\\\\b","name":"storage.modifier.mut.cairo"},{"comment":"logical operators","match":"(\\\\^|\\\\||\\\\|\\\\||&&|<<|>>|!)(?!=)","name":"keyword.operator.logical.cairo"},{"comment":"logical AND, borrow references","match":"&(?![&=])","name":"keyword.operator.borrow.and.cairo"},{"comment":"assignment operators","match":"(\\\\+=|-=|\\\\*=|/=|%=|\\\\^=|&=|\\\\|=|<<=|>>=)","name":"keyword.operator.assignment.cairo"},{"comment":"single equal","match":"(?<![<>])=(?!=|>)","name":"keyword.operator.assignment.equal.cairo"},{"comment":"comparison operators","match":"(=(=)?(?!>)|!=|<=|(?<!=)>=)","name":"keyword.operator.comparison.cairo"},{"comment":"math operators","match":"(([+%]|(\\\\*(?!\\\\w)))(?!=))|(-(?!>))|(/(?!/))","name":"keyword.operator.math.cairo"},{"captures":{"1":{"name":"punctuation.brackets.round.cairo"},"2":{"name":"punctuation.brackets.square.cairo"},"3":{"name":"punctuation.brackets.curly.cairo"},"4":{"name":"keyword.operator.comparison.cairo"},"5":{"name":"punctuation.brackets.round.cairo"},"6":{"name":"punctuation.brackets.square.cairo"},"7":{"name":"punctuation.brackets.curly.cairo"}},"comment":"less than, greater than (special case)","match":"(?:\\\\b|(?:(\\\\))|(\\\\])|(\\\\})))[ \\\\t]+([<>])[ \\\\t]+(?:\\\\b|(?:(\\\\()|(\\\\[)|(\\\\{)))"},{"comment":"namespace operator","match":"::","name":"keyword.operator.namespace.cairo"},{"captures":{"1":{"name":"keyword.operator.desnap.cairo"}},"comment":"desnap","match":"(\\\\*)(?=\\\\w+)"},{"comment":"snap","match":"@","name":"keyword.operator.snap.cairo"},{"comment":"dot access","match":"\\\\.(?!\\\\.)","name":"keyword.operator.access.dot.cairo"},{"comment":"ranges, range patterns","match":"\\\\.{2}(=|\\\\.)?","name":"keyword.operator.range.cairo"},{"comment":"colon","match":":(?!:)","name":"keyword.operator.key-value.cairo"},{"comment":"dashrocket, skinny arrow","match":"->","name":"keyword.operator.arrow.skinny.cairo"},{"comment":"hashrocket, fat arrow","match":"=>","name":"keyword.operator.arrow.fat.cairo"},{"comment":"dollar macros","match":"\\\\$","name":"keyword.operator.macro.dollar.cairo"},{"comment":"question mark operator, questionably sized, macro kleene matcher","match":"\\\\?","name":"keyword.operator.question.cairo"}]},"lvariables":{"patterns":[{"comment":"super","match":"\\\\bsuper\\\\b","name":"variable.language.super.cairo"}]},"macros":{"patterns":[{"captures":{"2":{"name":"entity.name.function.macro.cairo"},"3":{"name":"entity.name.type.macro.cairo"}},"comment":"macros","match":"(([a-z_][A-Za-z0-9_]*!)|([A-Z_][A-Za-z0-9_]*!))","name":"meta.macro.cairo"}]},"namespaces":{"patterns":[{"captures":{"1":{"name":"entity.name.namespace.cairo"},"2":{"name":"keyword.operator.namespace.cairo"}},"comment":"namespace (non-type, non-function path segment)","match":"(?<![A-Za-z0-9_])([A-Za-z0-9_]+)((?<!super)::)"}]},"punctuation":{"patterns":[{"comment":"comma","match":",","name":"punctuation.comma.cairo"},{"comment":"curly braces","match":"[{}]","name":"punctuation.brackets.curly.cairo"},{"comment":"parentheses, round brackets","match":"[()]","name":"punctuation.brackets.round.cairo"},{"comment":"semicolon","match":";","name":"punctuation.semi.cairo"},{"comment":"square brackets","match":"[\\\\[\\\\]]","name":"punctuation.brackets.square.cairo"},{"comment":"angle brackets","match":"(?<!=)[<>]","name":"punctuation.brackets.angle.cairo"}]},"strings":{"patterns":[{"begin":"(\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.bytearray.cairo"}},"comment":"double-quoted byte array strings","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.bytearray.cairo"}},"name":"string.quoted.double.cairo","patterns":[{"include":"#escapes"},{"include":"#interpolations"}]},{"begin":"(')","beginCaptures":{"1":{"name":"punctuation.definition.string.short.cairo"}},"comment":"single-quoted short strings","end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.short.cairo"}},"name":"string.quoted.single.cairo","patterns":[{"include":"#escapes"},{"include":"#interpolations"}]}]},"types":{"patterns":[{"captures":{"1":{"name":"entity.name.type.numeric.cairo"}},"comment":"numeric types","match":"(?<![A-Za-z])(felt252|i8|i16|i32|i64|i128|u8|u16|u32|u64|u128|u256|u512)\\\\b"},{"begin":"\\\\b(_?[A-Z][A-Za-z0-9_]*)(<)","beginCaptures":{"1":{"name":"entity.name.type.cairo"},"2":{"name":"punctuation.brackets.angle.cairo"}},"comment":"parameterized types","end":">","endCaptures":{"0":{"name":"punctuation.brackets.angle.cairo"}},"patterns":[{"include":"#block-comments"},{"include":"#comments"},{"include":"#keywords"},{"include":"#lvariables"},{"include":"#punctuation"},{"include":"#types"},{"include":"#variables"}]},{"comment":"primitive types","match":"\\\\b(bool|never)\\\\b","name":"entity.name.type.primitive.cairo"},{"captures":{"1":{"name":"keyword.declaration.trait.cairo storage.type.cairo"},"2":{"name":"entity.name.type.trait.cairo"}},"comment":"trait declarations","match":"\\\\b(trait)\\\\s+(_?[A-Z][A-Za-z0-9_]*)\\\\b"},{"captures":{"1":{"name":"keyword.declaration.struct.cairo storage.type.cairo"},"2":{"name":"entity.name.type.struct.cairo"}},"comment":"struct declarations","match":"\\\\b(struct)\\\\s+(_?[A-Z][A-Za-z0-9_]*)\\\\b"},{"captures":{"1":{"name":"keyword.declaration.enum.cairo storage.type.cairo"},"2":{"name":"entity.name.type.enum.cairo"}},"comment":"enum declarations","match":"\\\\b(enum)\\\\s+(_?[A-Z][A-Za-z0-9_]*)\\\\b"},{"captures":{"1":{"name":"keyword.declaration.type.cairo storage.type.cairo"},"2":{"name":"entity.name.type.declaration.cairo"}},"comment":"type declarations","match":"\\\\b(type)\\\\s+(_?[A-Z][A-Za-z0-9_]*)\\\\b"},{"comment":"types","match":"\\\\b_?[A-Z][A-Za-z0-9_]*\\\\b(?!!)","name":"entity.name.type.cairo"}]},"variables":{"patterns":[{"comment":"variables","match":"\\\\b(?<!(?<!\\\\.)\\\\.)[a-z0-9_]+\\\\b","name":"variable.other.cairo"}]}},"scopeName":"source.cairo"}`)),a=[e];export{a as default};
|