@bkm016/basalt 0.0.0-stage → 0.1.1
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/README.md +275 -2
- package/chunk-09vr609h.js +2 -0
- package/chunk-0hbjv3y6.js +11 -0
- package/chunk-0qqb6v41.js +3753 -0
- package/chunk-0szjy61m.js +2 -0
- package/chunk-0yytz0r1.js +59 -0
- package/chunk-1aspj1hn.js +3 -0
- package/chunk-1b7gbe8g.js +10 -0
- package/chunk-1v7st27a.js +25 -0
- package/chunk-1yzt0qm0.js +2 -0
- package/chunk-2bb01ddq.js +16 -0
- package/chunk-2wkaw73s.js +9 -0
- package/chunk-2zqny2sy.js +2 -0
- package/chunk-32at88hc.js +3 -0
- package/chunk-3m7qwfm3.js +7 -0
- package/chunk-44ek81ad.js +3 -0
- package/chunk-45cz26ap.js +39 -0
- package/chunk-501zkf9b.js +3 -0
- package/chunk-58vz2qsq.js +2 -0
- package/chunk-6e49xsf5.js +3 -0
- package/chunk-6qertm2t.js +3 -0
- package/chunk-8dxzqwq3.js +2 -0
- package/chunk-9mmz6wt3.js +2 -0
- package/chunk-a3tqx584.js +10 -0
- package/chunk-a6r4z44b.js +2 -0
- package/chunk-a8nyk4k9.js +2 -0
- package/chunk-agntrqs9.js +2 -0
- package/chunk-bhqyxyap.js +3 -0
- package/chunk-bpw6q7g0.js +3 -0
- package/chunk-c25s4w6a.js +5 -0
- package/chunk-cv5wsd9m.js +8 -0
- package/chunk-d48bfd2e.js +3 -0
- package/chunk-dakrpbe6.js +3 -0
- package/chunk-dhm42y04.js +7 -0
- package/chunk-exnn1867.js +2 -0
- package/chunk-f7egr55n.js +31 -0
- package/chunk-g2t6t8fk.js +3 -0
- package/chunk-h6sw8fbt.js +5 -0
- package/chunk-hat3s3pr.js +3 -0
- package/chunk-hcn9cf6v.js +2 -0
- package/chunk-jhd54p1b.js +3 -0
- package/chunk-k7w7ac9q.js +18 -0
- package/chunk-kf8hq21a.js +25 -0
- package/chunk-kfq8wyd3.js +3 -0
- package/chunk-n6e43rvk.js +3 -0
- package/chunk-nt2gntad.js +2 -0
- package/chunk-pmc3y1z8.js +2 -0
- package/chunk-pvncysbb.js +3 -0
- package/chunk-q8zx3kt6.js +2 -0
- package/chunk-qczbfccb.js +12 -0
- package/chunk-qnr1f5pj.js +3 -0
- package/chunk-qx0m82rw.js +2 -0
- package/chunk-r9aatvwm.js +3 -0
- package/chunk-rm3kcxq9.js +20 -0
- package/chunk-rv06x0kn.js +7 -0
- package/chunk-ry0z4ev6.js +2 -0
- package/chunk-s37s3k24.js +12 -0
- package/chunk-sh74qzvt.js +5 -0
- package/chunk-szat3vp4.js +3 -0
- package/chunk-t057xfrt.js +5 -0
- package/chunk-tvm4zmgj.js +3 -0
- package/chunk-v9fea96h.js +3 -0
- package/chunk-vgvq3q12.js +3 -0
- package/chunk-vkkj4awb.js +2 -0
- package/chunk-vv7fp27r.js +3 -0
- package/chunk-wjd9fr23.js +2 -0
- package/chunk-wx7kdf0b.js +2 -0
- package/chunk-x3dnb9sz.js +3 -0
- package/chunk-xsbxykr4.js +2 -0
- package/chunk-xysny0ve.js +3 -0
- package/chunk-y69ewdn2.js +3 -0
- package/chunk-yskm0hsy.js +2 -0
- package/chunk-zef13k3h.js +471 -0
- package/cli.js +89 -0
- package/compiled.js +23 -0
- package/icon-dp9pmcvp.png +0 -0
- package/package.json +21 -4
- package/ui-test-worker.js +226 -0
- package/web/KaTeX_AMS-Regular-n7eqehx2.woff2 +0 -0
- package/web/KaTeX_Caligraphic-Bold-20r3b6fv.woff2 +0 -0
- package/web/KaTeX_Caligraphic-Regular-kkjm8f18.woff2 +0 -0
- package/web/KaTeX_Fraktur-Bold-pz5vg4t0.woff2 +0 -0
- package/web/KaTeX_Fraktur-Regular-a1e9wkwk.woff2 +0 -0
- package/web/KaTeX_Main-Bold-mcp098h8.woff2 +0 -0
- package/web/KaTeX_Main-BoldItalic-fy74z249.woff2 +0 -0
- package/web/KaTeX_Main-Italic-hw2gxy7f.woff2 +0 -0
- package/web/KaTeX_Main-Regular-xvp1b75c.woff2 +0 -0
- package/web/KaTeX_Math-BoldItalic-mf5nf33d.woff2 +0 -0
- package/web/KaTeX_Math-Italic-ap60jrna.woff2 +0 -0
- package/web/KaTeX_SansSerif-Bold-we3bymb6.woff2 +0 -0
- package/web/KaTeX_SansSerif-Italic-ent92bjx.woff2 +0 -0
- package/web/KaTeX_SansSerif-Regular-0573pbz9.woff2 +0 -0
- package/web/KaTeX_Script-Regular-z2rtj6vq.woff2 +0 -0
- package/web/KaTeX_Size1-Regular-dfr3w1hv.woff2 +0 -0
- package/web/KaTeX_Size2-Regular-kted78zb.woff2 +0 -0
- package/web/KaTeX_Size3-Regular-e6k1k5jk.woff2 +0 -0
- package/web/KaTeX_Size4-Regular-abedc1pd.woff2 +0 -0
- package/web/KaTeX_Typewriter-Regular-scw9zx1z.woff2 +0 -0
- package/web/apple-touch-icon-7dkm33qp.png +0 -0
- package/web/apple-touch-icon.png +0 -0
- package/web/chunk-05w4fyzc.js +1 -0
- package/web/chunk-0mrkjnte.js +1 -0
- package/web/chunk-0pbjgdgp.js +2 -0
- package/web/chunk-0s80zw00.js +1 -0
- package/web/chunk-0vt9fg48.js +2 -0
- package/web/chunk-20q90epj.js +2 -0
- package/web/chunk-22a4ety5.js +1 -0
- package/web/chunk-24mfx6w1.js +2 -0
- package/web/chunk-2j4m0bh1.js +2 -0
- package/web/chunk-2m12wyrb.js +16 -0
- package/web/chunk-2msj52w6.js +1 -0
- package/web/chunk-2ps6mepk.js +120 -0
- package/web/chunk-2pver6r4.js +1 -0
- package/web/chunk-2scce33n.js +1 -0
- package/web/chunk-37ajk6zg.js +2 -0
- package/web/chunk-3ee04tmm.js +200 -0
- package/web/chunk-3jhyzmnf.js +292 -0
- package/web/chunk-45fzdcgz.js +30 -0
- package/web/chunk-4gavbw65.js +1 -0
- package/web/chunk-4ks96e4r.js +1 -0
- package/web/chunk-4rm1vy7w.js +1 -0
- package/web/chunk-4v8en1yw.js +40 -0
- package/web/chunk-4wd9r73y.js +1 -0
- package/web/chunk-4wkm9fda.js +1 -0
- package/web/chunk-54thej0t.js +2 -0
- package/web/chunk-59kqahb3.js +1 -0
- package/web/chunk-5vw9rs4r.js +4 -0
- package/web/chunk-6beqrmtq.js +1 -0
- package/web/chunk-6m69hczt.js +2 -0
- package/web/chunk-70qwwwak.js +2 -0
- package/web/chunk-74j07k8k.js +2 -0
- package/web/chunk-8g239029.js +1 -0
- package/web/chunk-8p4tc9f4.js +70 -0
- package/web/chunk-90kp4pnz.js +2 -0
- package/web/chunk-9an7cjd9.js +291 -0
- package/web/chunk-9dxjafp2.js +78 -0
- package/web/chunk-9p12mgs6.js +2 -0
- package/web/chunk-9v1f6yc8.js +1 -0
- package/web/chunk-9yakxvjb.js +2 -0
- package/web/chunk-a1z5qx1r.js +36 -0
- package/web/chunk-a3verqw9.js +214 -0
- package/web/chunk-a5x2zveg.js +7 -0
- package/web/chunk-ad6x47yy.js +1 -0
- package/web/chunk-amzgyy1k.js +1 -0
- package/web/chunk-b1pe46zz.js +2 -0
- package/web/chunk-b4wbk7vc.js +217 -0
- package/web/chunk-bc78qf1m.js +7 -0
- package/web/chunk-bgnnrpna.js +89 -0
- package/web/chunk-bj90t5gh.js +99 -0
- package/web/chunk-bjkc94mv.js +1 -0
- package/web/chunk-ca682sm6.js +370 -0
- package/web/chunk-cff5hcm8.js +8 -0
- package/web/chunk-cg3jterp.js +2 -0
- package/web/chunk-d18r4m14.js +141 -0
- package/web/chunk-dmqtdeb4.js +1 -0
- package/web/chunk-dt462hk9.js +332 -0
- package/web/chunk-dy2gm1fs.js +1 -0
- package/web/chunk-dzwxgqgm.js +39 -0
- package/web/chunk-e32y85kx.js +1 -0
- package/web/chunk-e53wfgb8.js +1 -0
- package/web/chunk-e6jxqbv7.js +3 -0
- package/web/chunk-esp1mmgr.js +1 -0
- package/web/chunk-ew3cgdtd.js +1 -0
- package/web/chunk-f26smjjf.js +2 -0
- package/web/chunk-f91wzwtk.js +1 -0
- package/web/chunk-fk0dh93x.js +89 -0
- package/web/chunk-fm2ybfj5.js +98 -0
- package/web/chunk-fscafg24.js +34 -0
- package/web/chunk-fz06t6km.js +55 -0
- package/web/chunk-g1ev11wx.js +1 -0
- package/web/chunk-g4azyef7.js +106 -0
- package/web/chunk-gjq1pxw3.js +1 -0
- package/web/chunk-gqw3f02j.js +140 -0
- package/web/chunk-h5ejbf6e.js +1 -0
- package/web/chunk-hev4hq89.js +2 -0
- package/web/chunk-hfaffkrh.js +1 -0
- package/web/chunk-hp167dbv.js +1 -0
- package/web/chunk-j2vt8c8v.js +1 -0
- package/web/chunk-jjh5jvva.js +1 -0
- package/web/chunk-jrcyc9s9.js +38 -0
- package/web/chunk-jwzd9tzk.js +24 -0
- package/web/chunk-k5btcvbg.js +1 -0
- package/web/chunk-ka3q31t1.js +1 -0
- package/web/chunk-kdyjnwdx.js +2 -0
- package/web/chunk-kpvgecwy.js +1 -0
- package/web/chunk-kq40ss39.js +1 -0
- package/web/chunk-m2d1sp30.js +1 -0
- package/web/chunk-n1dmrz44.js +2 -0
- package/web/chunk-n90cqdvg.js +2 -0
- package/web/chunk-nj0cv1cq.js +257 -0
- package/web/chunk-nzey7cpv.js +1 -0
- package/web/chunk-p3b9crsa.js +2 -0
- package/web/chunk-pf2ab8p8.js +1 -0
- package/web/chunk-pxe3vna4.js +1 -0
- package/web/chunk-q0p5xqe1.js +84 -0
- package/web/chunk-q5ke7a33.js +24 -0
- package/web/chunk-q7dsnvpf.js +1 -0
- package/web/chunk-qd8bxxdj.js +1 -0
- package/web/chunk-qefasa1j.js +2 -0
- package/web/chunk-qh7265qw.js +4 -0
- package/web/chunk-qnaqf0cr.js +1 -0
- package/web/chunk-r1dnh0s8.js +1 -0
- package/web/chunk-r5eakmw6.js +1 -0
- package/web/chunk-rg426vkf.js +1 -0
- package/web/chunk-rpmpttbk.js +12 -0
- package/web/chunk-rtf2zzzv.js +1 -0
- package/web/chunk-ry9256r7.js +1 -0
- package/web/chunk-rykfak98.js +2 -0
- package/web/chunk-scpwc9ev.js +1 -0
- package/web/chunk-srrfphes.js +1 -0
- package/web/chunk-ss1bcb0n.js +2 -0
- package/web/chunk-ssy07dd2.js +1 -0
- package/web/chunk-t6agpn2z.js +1 -0
- package/web/chunk-taynqrgq.js +142 -0
- package/web/chunk-tgpbhzn9.js +1 -0
- package/web/chunk-tmvakq7n.js +19 -0
- package/web/chunk-tqmwd9qp.js +139 -0
- package/web/chunk-ts7zrf5b.js +2 -0
- package/web/chunk-ttg6tbwx.js +2 -0
- package/web/chunk-v28fx2nd.js +1 -0
- package/web/chunk-v5cnt7c8.js +1 -0
- package/web/chunk-vt40e1kp.js +1136 -0
- package/web/chunk-w53rba6g.js +1 -0
- package/web/chunk-w86n42dy.js +1 -0
- package/web/chunk-w880psmw.js +1 -0
- package/web/chunk-wptv8atc.js +2 -0
- package/web/chunk-wtawdeej.css +1 -0
- package/web/chunk-xbty0rv7.js +41 -0
- package/web/chunk-xet1jjy9.js +1 -0
- package/web/chunk-xjxv8dg8.js +169 -0
- package/web/chunk-xrxne80b.js +62 -0
- package/web/chunk-xzp7jf7e.js +2 -0
- package/web/chunk-y0m8hrwz.js +303 -0
- package/web/chunk-y49fhfda.js +7 -0
- package/web/chunk-yd46jhqv.js +1 -0
- package/web/chunk-ydtrc1ay.js +2 -0
- package/web/chunk-z09emmrb.js +1 -0
- package/web/chunk-z7dcbxws.js +1 -0
- package/web/chunk-zbj1trar.js +2 -0
- package/web/chunk-zde7mj43.js +1 -0
- package/web/icon-192.png +0 -0
- package/web/icon-512.png +0 -0
- package/web/icon-maskable-512.png +0 -0
- package/web/icon-yx2p2pye.svg +13 -0
- package/web/icon.svg +13 -0
- package/web/index.html +23 -0
- package/web/install.ps1 +91 -0
- package/web/install.sh +177 -0
- package/web/inter-latin-wght-normal-an0py913.woff2 +0 -0
- package/web/jetbrains-mono-latin-wght-normal-hj2e42wt.woff2 +0 -0
- package/web/manifest-txf6vfbq.webmanifest +35 -0
- package/web/manifest.webmanifest +35 -0
- package/web/source-serif-4-latin-wght-italic-ta5tqqvz.woff2 +0 -0
- package/web/source-serif-4-latin-wght-normal-1yyvbhsz.woff2 +0 -0
- package/web/sw.js +90 -0
- package/worker.js +2 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Zn}from"./chunk-6m69hczt.js";import{Xn}from"./chunk-74j07k8k.js";import{Et}from"./chunk-ts7zrf5b.js";import{Kn}from"./chunk-54thej0t.js";import{st}from"./chunk-2j4m0bh1.js";import{fi}from"./chunk-xzp7jf7e.js";var e=Object.freeze(JSON.parse('{"displayName":"PHP","name":"php","patterns":[{"include":"#attribute"},{"include":"#comments"},{"captures":{"1":{"name":"keyword.other.namespace.php"},"2":{"name":"entity.name.type.namespace.php","patterns":[{"match":"\\\\\\\\","name":"punctuation.separator.inheritance.php"}]}},"match":"(?i)(?:^|(?<=<\\\\?php))\\\\s*(namespace)\\\\s+([0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)(?=\\\\s*;)","name":"meta.namespace.php"},{"begin":"(?i)(?:^|(?<=<\\\\?php))\\\\s*(namespace)\\\\s+","beginCaptures":{"1":{"name":"keyword.other.namespace.php"}},"end":"(?<=})|(?=\\\\?>)","name":"meta.namespace.php","patterns":[{"include":"#comments"},{"captures":{"0":{"patterns":[{"match":"\\\\\\\\","name":"punctuation.separator.inheritance.php"}]}},"match":"(?i)[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+","name":"entity.name.type.namespace.php"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.namespace.begin.bracket.curly.php"}},"end":"}|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.namespace.end.bracket.curly.php"}},"patterns":[{"include":"$self"}]},{"match":"\\\\S+","name":"invalid.illegal.identifier.php"}]},{"match":"\\\\s+(?=use\\\\b)"},{"begin":"(?i)\\\\buse\\\\b","beginCaptures":{"0":{"name":"keyword.other.use.php"}},"end":"(?<=})|(?=;)|(?=\\\\?>)","name":"meta.use.php","patterns":[{"match":"\\\\b(const|function)\\\\b","name":"storage.type.${1:/downcase}.php"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.use.begin.bracket.curly.php"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.use.end.bracket.curly.php"}},"patterns":[{"include":"#scope-resolution"},{"captures":{"1":{"name":"keyword.other.use-as.php"},"2":{"name":"storage.modifier.php"},"3":{"name":"storage.modifier.inheritance.${3:/downcase}.php"},"4":{"name":"storage.modifier.visibility.${4:/downcase}.php"},"5":{"name":"storage.modifier.static.php"},"6":{"name":"entity.other.alias.php"}},"match":"(?i)\\\\b(as)\\\\s+((final|abstract)|(p(?:ublic|rivate|rotected))|(static))\\\\s+([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)"},{"captures":{"1":{"name":"keyword.other.use-as.php"},"2":{"patterns":[{"captures":{"1":{"name":"storage.modifier.inheritance.${1:/downcase}.php"},"2":{"name":"storage.modifier.visibility.${2:/downcase}.php"},"3":{"name":"storage.modifier.static.php"}},"match":"(?i)\\\\b(?:(final|abstract)|(p(?:ublic|rivate|rotected))|(static))\\\\b","name":"storage.modifier.php"},{"match":".+","name":"entity.other.alias.php"}]}},"match":"(?i)\\\\b(as)\\\\s+([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)"},{"captures":{"1":{"name":"keyword.other.use-insteadof.php"},"2":{"name":"support.class.php"}},"match":"(?i)\\\\b(insteadof)\\\\s+([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)"},{"match":";","name":"punctuation.terminator.expression.php"},{"include":"#use-inner"}]},{"include":"#use-inner"}]},{"begin":"(?i)\\\\b(trait)\\\\s+([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)","beginCaptures":{"1":{"name":"storage.type.trait.php"},"2":{"name":"entity.name.type.trait.php"}},"end":"}|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.trait.end.bracket.curly.php"}},"name":"meta.trait.php","patterns":[{"include":"#comments"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.trait.begin.bracket.curly.php"}},"contentName":"meta.trait.body.php","end":"(?=}|\\\\?>)","patterns":[{"include":"$self"}]}]},{"begin":"(?i)\\\\b(interface)\\\\s+([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)","beginCaptures":{"1":{"name":"storage.type.interface.php"},"2":{"name":"entity.name.type.interface.php"}},"end":"}|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.interface.end.bracket.curly.php"}},"name":"meta.interface.php","patterns":[{"include":"#comments"},{"include":"#interface-extends"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.interface.begin.bracket.curly.php"}},"contentName":"meta.interface.body.php","end":"(?=}|\\\\?>)","patterns":[{"include":"#class-constant"},{"include":"$self"}]}]},{"begin":"(?i)\\\\b(enum)\\\\s+([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)(?:\\\\s*(:)\\\\s*(int|string)\\\\b)?","beginCaptures":{"1":{"name":"storage.type.enum.php"},"2":{"name":"entity.name.type.enum.php"},"3":{"name":"keyword.operator.return-value.php"},"4":{"name":"keyword.other.type.php"}},"end":"}|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.enum.end.bracket.curly.php"}},"name":"meta.enum.php","patterns":[{"include":"#comments"},{"include":"#class-implements"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.enum.begin.bracket.curly.php"}},"contentName":"meta.enum.body.php","end":"(?=}|\\\\?>)","patterns":[{"captures":{"1":{"name":"storage.modifier.php"},"2":{"name":"storage.type.enum.case.php"},"3":{"name":"constant.enum.php"}},"match":"(?i)\\\\b((case))\\\\s*([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)"},{"include":"#class-constant"},{"include":"$self"}]}]},{"begin":"(?i)\\\\b(?:((?:(?:final|abstract|readonly)\\\\s+)*)(class)\\\\s+([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)|(new)\\\\b\\\\s*(#\\\\[.*])?\\\\s*(?:((readonly))\\\\s+)?\\\\b(class)\\\\b)","beginCaptures":{"1":{"patterns":[{"captures":{"1":{"name":"storage.modifier.inheritance.${1:/downcase}.php"},"2":{"name":"storage.modifier.readonly.php"}},"match":"(?i)(final|abstract)|(readonly)","name":"storage.modifier.php"}]},"2":{"name":"storage.type.class.php"},"3":{"name":"entity.name.type.class.php"},"4":{"name":"keyword.other.new.php"},"5":{"patterns":[{"include":"#attribute"}]},"6":{"name":"storage.modifier.php"},"7":{"name":"storage.modifier.readonly.php"},"8":{"name":"storage.type.class.php"}},"end":"}|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.class.end.bracket.curly.php"}},"name":"meta.class.php","patterns":[{"begin":"(?<=class)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.bracket.round.php"}},"name":"meta.function-call.php","patterns":[{"include":"#named-arguments"},{"include":"$self"}]},{"include":"#comments"},{"include":"#class-extends"},{"include":"#class-implements"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.class.begin.bracket.curly.php"}},"contentName":"meta.class.body.php","end":"(?=}|\\\\?>)","patterns":[{"include":"#class-constant"},{"include":"$self"}]}]},{"include":"#match_statement"},{"include":"#switch_statement"},{"captures":{"1":{"name":"keyword.control.yield-from.php"}},"match":"\\\\s*\\\\b(yield\\\\s+from)\\\\b"},{"captures":{"1":{"name":"keyword.control.${1:/downcase}.php"}},"match":"\\\\b(break|case|continue|declare|default|die|do|else(if)?|end(declare|for(each)?|if|switch|while)|exit|for(each)?|if|return|switch|use|while|yield)\\\\b"},{"begin":"(?i)\\\\b((?:require|include)(?:_once)?)(\\\\s+|(?=\\\\())","beginCaptures":{"1":{"name":"keyword.control.import.include.php"}},"end":"(?=[;\\\\s]|$|\\\\?>)","name":"meta.include.php","patterns":[{"include":"$self"}]},{"begin":"\\\\b(catch)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.exception.catch.php"},"2":{"name":"punctuation.definition.parameters.begin.bracket.round.php"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.bracket.round.php"}},"name":"meta.catch.php","patterns":[{"captures":{"1":{"patterns":[{"match":"\\\\|","name":"punctuation.separator.delimiter.php"},{"begin":"(?i)(?=[\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}])","end":"(?i)([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)(?![0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"1":{"name":"support.class.exception.php"}},"patterns":[{"include":"#namespace"}]}]},"2":{"name":"variable.other.php"},"3":{"name":"punctuation.definition.variable.php"}},"match":"(?i)([0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+(?:\\\\s*\\\\|\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)*)\\\\s*((\\\\$+)[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)?"}]},{"match":"\\\\b(catch|try|throw|exception|finally)\\\\b","name":"keyword.control.exception.php"},{"begin":"(?i)\\\\b(function)\\\\s*(?=&?\\\\s*\\\\()","beginCaptures":{"1":{"name":"storage.type.function.php"}},"end":"(?=\\\\s*\\\\{)","name":"meta.function.closure.php","patterns":[{"include":"#comments"},{"begin":"(&)?\\\\s*(\\\\()","beginCaptures":{"1":{"name":"storage.modifier.reference.php"},"2":{"name":"punctuation.definition.parameters.begin.bracket.round.php"}},"contentName":"meta.function.parameters.php","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.bracket.round.php"}},"patterns":[{"include":"#function-parameters"}]},{"begin":"(?i)(use)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.other.function.use.php"},"2":{"name":"punctuation.definition.parameters.begin.bracket.round.php"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.bracket.round.php"}},"name":"meta.function.closure.use.php","patterns":[{"match":",","name":"punctuation.separator.delimiter.php"},{"captures":{"1":{"name":"variable.other.php"},"2":{"name":"storage.modifier.reference.php"},"3":{"name":"punctuation.definition.variable.php"}},"match":"(?i)((?:(&)\\\\s*)?(\\\\$+)[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)\\\\s*(?=[),])"}]},{"captures":{"1":{"name":"keyword.operator.return-value.php"},"2":{"patterns":[{"include":"#php-types"}]}},"match":"(?i)(:)\\\\s*((?:\\\\?\\\\s*)?[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|(?:[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|\\\\(\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+(?:\\\\s*&\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)+\\\\s*\\\\))(?:\\\\s*[\\\\&|]\\\\s*(?:[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|\\\\(\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+(?:\\\\s*&\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)+\\\\s*\\\\)))+)(?=\\\\s*(?:\\\\{|/[*/]|#|$))"}]},{"begin":"(?i)\\\\b(fn)\\\\s*(?=&?\\\\s*\\\\()","beginCaptures":{"1":{"name":"storage.type.function.php"}},"end":"=>","endCaptures":{"0":{"name":"punctuation.definition.arrow.php"}},"name":"meta.function.closure.php","patterns":[{"begin":"(?:(&)\\\\s*)?(\\\\()","beginCaptures":{"1":{"name":"storage.modifier.reference.php"},"2":{"name":"punctuation.definition.parameters.begin.bracket.round.php"}},"contentName":"meta.function.parameters.php","end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.bracket.round.php"}},"patterns":[{"include":"#function-parameters"}]},{"captures":{"1":{"name":"keyword.operator.return-value.php"},"2":{"patterns":[{"include":"#php-types"}]}},"match":"(?i)(:)\\\\s*((?:\\\\?\\\\s*)?[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|(?:[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|\\\\(\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+(?:\\\\s*&\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)+\\\\s*\\\\))(?:\\\\s*[\\\\&|]\\\\s*(?:[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|\\\\(\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+(?:\\\\s*&\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)+\\\\s*\\\\)))+)(?=\\\\s*(?:=>|/[*/]|#|$))"}]},{"begin":"((?:(?:final|abstract|public|private|protected)\\\\s+)*)(function)\\\\s+(__construct)\\\\s*(\\\\()","beginCaptures":{"1":{"patterns":[{"captures":{"1":{"name":"storage.modifier.inheritance.${1:/downcase}.php"},"2":{"name":"storage.modifier.visibility.${2:/downcase}.php"}},"match":"(?i)(final|abstract)|(p(?:ublic|rivate|rotected))","name":"storage.modifier.php"}]},"2":{"name":"storage.type.function.php"},"3":{"name":"support.function.constructor.php"},"4":{"name":"punctuation.definition.parameters.begin.bracket.round.php"}},"contentName":"meta.function.parameters.php","end":"(?i)(\\\\))\\\\s*(:\\\\s*(?:\\\\?\\\\s*)?(?!\\\\s)[\\\\&()0-9\\\\\\\\_a-z|\\\\x7F-\\\\x{10FFFF}\\\\s]+(?<!\\\\s))?(?=\\\\s*(?:\\\\{|/[*/]|#|$|;))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.bracket.round.php"},"2":{"name":"invalid.illegal.return-type.php"}},"name":"meta.function.php","patterns":[{"include":"#comments"},{"match":",","name":"punctuation.separator.delimiter.php"},{"begin":"(?i)((?:(?:p(?:ublic|rivate|rotected)(?:\\\\(set\\\\))?|readonly)(?:\\\\s+|(?=\\\\?)))++)(?:((?:\\\\?\\\\s*)?[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|(?:[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|\\\\(\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+(?:\\\\s*&\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)+\\\\s*\\\\))(?:\\\\s*[\\\\&|]\\\\s*(?:[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|\\\\(\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+(?:\\\\s*&\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)+\\\\s*\\\\)))+)\\\\s+)?((?:(&)\\\\s*)?(\\\\$)[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)","beginCaptures":{"1":{"patterns":[{"captures":{"1":{"name":"storage.modifier.visibility.set.${2:/downcase}.php"},"3":{"name":"storage.modifier.visibility.${3:/downcase}.php"},"4":{"name":"storage.modifier.readonly.php"}},"match":"(?i)\\\\b((p(?:ublic|rivate|rotected))\\\\(set\\\\))|\\\\b(p(?:ublic|rivate|rotected))\\\\b|\\\\b(readonly)\\\\b","name":"storage.modifier.php"}]},"2":{"patterns":[{"include":"#php-types"}]},"3":{"name":"variable.other.php"},"4":{"name":"storage.modifier.reference.php"},"5":{"name":"punctuation.definition.variable.php"}},"end":"(?=\\\\s*(?:[),]|/[*/]|#))","name":"meta.function.parameter.promoted-property.php","patterns":[{"begin":"=","beginCaptures":{"0":{"name":"keyword.operator.assignment.php"}},"end":"(?=\\\\s*(?:[),]|/[*/]|#))","patterns":[{"include":"#parameter-default-types"}]}]},{"include":"#function-parameters"}]},{"begin":"((?:(?:final|abstract|public|private|protected|static)\\\\s+)*)(function)\\\\s+(?i:(__(?:call|construct|debugInfo|destruct|get|set|isset|unset|toString|clone|set_state|sleep|wakeup|autoload|invoke|callStatic|serialize|unserialize))|(&)?\\\\s*([A-Z_a-z\\\\x7F-\\\\x{10FFFF}][0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}]*))\\\\s*(\\\\()","beginCaptures":{"1":{"patterns":[{"captures":{"1":{"name":"storage.modifier.inheritance.${1:/downcase}.php"},"2":{"name":"storage.modifier.visibility.${2:/downcase}.php"},"3":{"name":"storage.modifier.static.php"}},"match":"(?i)(final|abstract)|(p(?:ublic|rivate|rotected))|(static)","name":"storage.modifier.php"}]},"2":{"name":"storage.type.function.php"},"3":{"name":"support.function.magic.php"},"4":{"name":"storage.modifier.reference.php"},"5":{"name":"entity.name.function.php"},"6":{"name":"punctuation.definition.parameters.begin.bracket.round.php"}},"contentName":"meta.function.parameters.php","end":"(?i)(\\\\))(?:\\\\s*(:)\\\\s*((?:\\\\?\\\\s*)?[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|(?:[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|\\\\(\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+(?:\\\\s*&\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)+\\\\s*\\\\))(?:\\\\s*[\\\\&|]\\\\s*(?:[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|\\\\(\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+(?:\\\\s*&\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)+\\\\s*\\\\)))+))?(?=\\\\s*(?:\\\\{|/[*/]|#|$|;))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.bracket.round.php"},"2":{"name":"keyword.operator.return-value.php"},"3":{"patterns":[{"match":"\\\\b(static)\\\\b","name":"storage.type.php"},{"match":"\\\\b(never)\\\\b","name":"keyword.other.type.never.php"},{"include":"#php-types"}]}},"name":"meta.function.php","patterns":[{"include":"#function-parameters"}]},{"captures":{"1":{"patterns":[{"captures":{"1":{"name":"storage.modifier.visibility.set.${2:/downcase}.php"},"3":{"name":"storage.modifier.visibility.${3:/downcase}.php"},"4":{"name":"storage.modifier.${4:/downcase}.php"}},"match":"(?i)\\\\b((p(?:ublic|rivate|rotected))\\\\(set\\\\))|\\\\b(p(?:ublic|rivate|rotected))\\\\b|\\\\b(readonly|static)\\\\b","name":"storage.modifier.php"}]},"2":{"patterns":[{"include":"#php-types"}]},"3":{"name":"variable.other.php"},"4":{"name":"punctuation.definition.variable.php"}},"match":"(?i)((?:(?:p(?:ublic|rivate|rotected)(?:\\\\(set\\\\))?|static|readonly)(?:\\\\s+|(?=\\\\?)))++)((?:\\\\?\\\\s*)?[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|(?:[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|\\\\(\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+(?:\\\\s*&\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)+\\\\s*\\\\))(?:\\\\s*[\\\\&|]\\\\s*(?:[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|\\\\(\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+(?:\\\\s*&\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)+\\\\s*\\\\)))+)?\\\\s+((\\\\$)[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)"},{"include":"#invoke-call"},{"include":"#scope-resolution"},{"include":"#variables"},{"include":"#strings"},{"captures":{"1":{"name":"support.function.construct.php"},"2":{"name":"punctuation.definition.array.begin.bracket.round.php"},"3":{"name":"punctuation.definition.array.end.bracket.round.php"}},"match":"(array)(\\\\()(\\\\))","name":"meta.array.empty.php"},{"begin":"(array)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"support.function.construct.php"},"2":{"name":"punctuation.definition.array.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.array.end.bracket.round.php"}},"name":"meta.array.php","patterns":[{"include":"$self"}]},{"captures":{"1":{"name":"punctuation.definition.storage-type.begin.bracket.round.php"},"2":{"name":"storage.type.php"},"3":{"name":"storage.type.cast.${3:/downcase}.php"},"5":{"name":"punctuation.definition.storage-type.end.bracket.round.php"}},"match":"(?i)(\\\\()\\\\s*((bool|int|float|string|array|object)|(binary|boolean|integer|double|real|unset))\\\\s*(\\\\))"},{"match":"(?i)\\\\b(array|real|double|float|int(eger)?|bool(ean)?|string|class|var|function|interface|trait|parent|self|object|mixed)\\\\b","name":"storage.type.php"},{"match":"(?i)\\\\bconst\\\\b","name":"storage.type.const.php"},{"captures":{"1":{"name":"storage.modifier.global.php"},"2":{"name":"storage.modifier.inheritance.${2:/downcase}.php"},"3":{"name":"storage.modifier.visibility.${3:/downcase}.php"},"4":{"name":"storage.modifier.static.php"}},"match":"(?i)\\\\b(?:(global)|(abstract|final)|(p(?:rivate|rotected|ublic))|(static))\\\\b","name":"storage.modifier.php"},{"include":"#object"},{"match":";","name":"punctuation.terminator.expression.php"},{"match":":","name":"punctuation.terminator.statement.php"},{"include":"#heredoc"},{"include":"#numbers"},{"match":"(?i)\\\\bclone\\\\b","name":"keyword.other.clone.php"},{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.spread.php"},{"match":"\\\\.=?","name":"keyword.operator.string.php"},{"match":"=>","name":"keyword.operator.key.php"},{"captures":{"1":{"name":"keyword.operator.assignment.php"},"2":{"name":"storage.modifier.reference.php"},"3":{"name":"storage.modifier.reference.php"}},"match":"(?i)(=)(&)|(&)(?=[$_a-z])"},{"match":"@","name":"keyword.operator.error-control.php"},{"match":"===?|!==?|<>","name":"keyword.operator.comparison.php"},{"match":"(?:|[-+]|\\\\*\\\\*?|[%\\\\&/^|]|<<|>>|\\\\?\\\\?)=","name":"keyword.operator.assignment.php"},{"match":"<=>?|>=|[<>]","name":"keyword.operator.comparison.php"},{"match":"--|\\\\+\\\\+","name":"keyword.operator.increment-decrement.php"},{"match":"[-+]|\\\\*\\\\*?|[%/]","name":"keyword.operator.arithmetic.php"},{"match":"(?i)(!|&&|\\\\|\\\\|)|\\\\b(and|or|xor)\\\\b","name":"keyword.operator.logical.php"},{"match":"(?i)\\\\bas\\\\b","name":"keyword.operator.as.php"},{"include":"#function-call"},{"match":"<<|>>|[\\\\&^|~]","name":"keyword.operator.bitwise.php"},{"begin":"(?i)\\\\b(instanceof)\\\\s+(?=[$\\\\\\\\_a-z])","beginCaptures":{"1":{"name":"keyword.operator.type.php"}},"end":"(?i)(?=[^$0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}])","patterns":[{"include":"#class-name"},{"include":"#variable-name"}]},{"include":"#instantiation"},{"captures":{"1":{"name":"keyword.control.goto.php"},"2":{"name":"support.other.php"}},"match":"(?i)(goto)\\\\s+([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)"},{"captures":{"1":{"name":"entity.name.goto-label.php"}},"match":"(?i)^\\\\s*([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*(?<!default|else))\\\\s*:(?!:)"},{"include":"#string-backtick"},{"include":"#ternary_shorthand"},{"include":"#null_coalescing"},{"include":"#ternary_expression"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.curly.php"}},"end":"}|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.curly.php"}},"patterns":[{"include":"$self"}]},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.php"}},"end":"]|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.section.array.end.php"}},"patterns":[{"include":"$self"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.php"}},"patterns":[{"include":"$self"}]},{"include":"#constants"},{"match":",","name":"punctuation.separator.delimiter.php"}],"repository":{"attribute":{"begin":"#\\\\[","end":"]","name":"meta.attribute.php","patterns":[{"match":",","name":"punctuation.separator.delimiter.php"},{"begin":"([0-9A-Z\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)\\\\s*(\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#attribute-name"}]},"2":{"name":"punctuation.definition.arguments.begin.bracket.round.php"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.bracket.round.php"}},"patterns":[{"include":"#named-arguments"},{"include":"$self"}]},{"include":"#attribute-name"}]},"attribute-name":{"patterns":[{"begin":"(?i)(?=\\\\\\\\?[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*\\\\\\\\)","end":"(?i)([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)?(?![0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"1":{"name":"support.attribute.php"}},"patterns":[{"include":"#namespace"}]},{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(?i)(\\\\\\\\)?\\\\b(Attribute|SensitiveParameter|AllowDynamicProperties|ReturnTypeWillChange|Override|Deprecated)\\\\b","name":"support.attribute.builtin.php"},{"begin":"(?i)(?=[\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}])","end":"(?i)([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)?(?![0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"1":{"name":"support.attribute.php"}},"patterns":[{"include":"#namespace"}]}]},"class-builtin":{"patterns":[{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(?i)(\\\\\\\\)?\\\\b(Attribute|(A(?:PC|ppend))Iterator|Array(Access|Iterator|Object)|Bad(Function|Method)CallException|(Ca(?:ching|llbackFilter))Iterator|Collator|Collectable|Cond|Countable|CURLFile|Date(Interval|Period|Time(Interface|Immutable|Zone)?)?|Directory(Iterator)?|DomainException|DOM(Attr|CdataSection|CharacterData|Comment|Document(Fragment)?|Element|EntityReference|Implementation|NamedNodeMap|Node(list)?|ProcessingInstruction|Text|XPath)|(Error)?Exception|EmptyIterator|finfo|Ev(Check|Child|Embed|Fork|Idle|Io|Loop|Periodic|Prepare|Signal|Stat|Timer|Watcher)?|Event(Base|Buffer(Event)?|SslContext|Http(Request|Connection)?|Config|DnsBase|Util|Listener)?|FANNConnection|(Fil(?:ter|esystem))Iterator|Gender\\\\\\\\Gender|GlobIterator|Gmagick(Draw|Pixel)?|Haru(Annotation|Destination|Doc|Encoder|Font|Image|Outline|Page)|Http(((?:In|De)flate)?Stream|Message|Request(Pool)?|Response|QueryString)|HRTime\\\\\\\\(PerformanceCounter|StopWatch)|Intl(Calendar|((CodePoint|RuleBased)?Break|Parts)?Iterator|DateFormatter|TimeZone)|Imagick(Draw|Pixel(Iterator)?)?|InfiniteIterator|InvalidArgumentException|Iterator(Aggregate|Iterator)?|JsonSerializable|KTaglib_(MPEG_(File|AudioProperties)|Tag|ID3v2_(Tag|(AttachedPicture)?Frame))|Lapack|(L(?:ength|ocale|ogic))Exception|LimitIterator|Lua(Closure)?|Mongo(BinData|Client|Code|Collection|CommandCursor|Cursor(Exception)?|Date|DB(Ref)?|DeleteBatch|Grid(FS(Cursor|File)?)|Id|InsertBatch|Int(32|64)|Log|Pool|Regex|ResultException|Timestamp|UpdateBatch|Write(Batch|ConcernException))?|Memcache(d)?|MessageFormatter|MultipleIterator|Mutex|mysqli(_(driver|stmt|warning|result))?|MysqlndUh(Connection|PreparedStatement)|NoRewindIterator|Normalizer|NumberFormatter|OCI-(Collection|Lob)|OuterIterator|(O(?:utOf(Bounds|Range)|verflow))Exception|ParentIterator|PDO(Statement)?|Phar(Data|FileInfo)?|php_user_filter|Pool|QuickHash(Int(S(?:et|tringHash))|StringIntHash)|Recursive(Array|Caching|Directory|Fallback|Filter|Iterator|Regex|Tree)?Iterator|Reflection(Attribute|Class(Constant)?|Constant|Enum((?:Unit|Backed)Case)?|Fiber|Function(Abstract)?|Generator|(Named|Union|Intersection)?Type|Method|Object|Parameter|Property|Reference|(Zend)?Extension)?|RangeException|Reflector|RegexIterator|ResourceBundle|RuntimeException|RRD(Creator|Graph|Updater)|SAM(Connection|Message)|SCA(_((?:Soap|Local)Proxy))?|SDO_(DAS_(ChangeSummary|Data(Factory|Object)|Relational|Setting|XML(_Document)?)|Data(Factory|Object)|Exception|List|Model_(Property|ReflectionDataObject|Type)|Sequence)|SeekableIterator|Serializable|SessionHandler(Interface)?|SimpleXML(Iterator|Element)|SNMP|Soap(Client|Fault|Header|Param|Server|Var)|SphinxClient|Spoofchecker|Spl(DoublyLinkedList|Enum|File(Info|Object)|FixedArray|(M(?:ax|in))?Heap|Observer|ObjectStorage|(Priority)?Queue|Stack|Subject|Type|TempFileObject)|SQLite(3(Result|Stmt)?|Database|Result|Unbuffered)|stdClass|streamWrapper|SVM(Model)?|Swish(Result(s)?|Search)?|Sync(Event|Mutex|ReaderWriter|Semaphore)|Thread(ed)?|tidy(Node)?|TokyoTyrant(Table|Iterator|Query)?|Transliterator|Traversable|UConverter|(Un(?:derflow|expectedValue))Exception|V8Js(Exception)?|Varnish(Admin|Log|Stat)|Worker|Weak(Map|Ref)|XML(Diff\\\\\\\\(Base|DOM|File|Memory)|Reader|Writer)|XsltProcessor|Yaf_(Route_(Interface|Map|Regex|Rewrite|Simple|Supervar)|Action_Abstract|Application|Config_(Simple|Ini|Abstract)|Controller_Abstract|Dispatcher|Exception|Loader|Plugin_Abstract|Registry|Request_(Abstract|Simple|Http)|Response_Abstract|Router|Session|View_(Simple|Interface))|Yar_(Client(_Exception)?|Concurrent_Client|Server(_Exception)?)|ZipArchive|ZMQ(Context|Device|Poll|Socket)?)\\\\b","name":"support.class.builtin.php"}]},"class-constant":{"patterns":[{"captures":{"1":{"name":"storage.type.const.php"},"2":{"patterns":[{"include":"#php-types"}]},"3":{"name":"constant.other.php"}},"match":"(?i)\\\\b(const)\\\\s+(?:((?:\\\\?\\\\s*)?[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|(?:[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|\\\\(\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+(?:\\\\s*&\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)+\\\\s*\\\\))(?:\\\\s*[\\\\&|]\\\\s*(?:[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|\\\\(\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+(?:\\\\s*&\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)+\\\\s*\\\\)))+)\\\\s+)?([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)"}]},"class-extends":{"patterns":[{"begin":"(?i)(extends)\\\\s+","beginCaptures":{"1":{"name":"storage.modifier.extends.php"}},"end":"(?i)(?=[^0-9A-Z\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}])","patterns":[{"include":"#comments"},{"include":"#inheritance-single"}]}]},"class-implements":{"patterns":[{"begin":"(?i)(implements)\\\\s+","beginCaptures":{"1":{"name":"storage.modifier.implements.php"}},"end":"(?i)(?=\\\\{)","patterns":[{"include":"#comments"},{"match":",","name":"punctuation.separator.classes.php"},{"include":"#inheritance-single"}]}]},"class-name":{"patterns":[{"begin":"(?i)(?=\\\\\\\\?[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*\\\\\\\\)","end":"(?i)([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)?(?![0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"1":{"name":"support.class.php"}},"patterns":[{"include":"#namespace"}]},{"include":"#class-builtin"},{"begin":"(?i)(?=[\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}])","end":"(?i)([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)?(?![0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"1":{"name":"support.class.php"}},"patterns":[{"include":"#namespace"}]}]},"comments":{"patterns":[{"begin":"/\\\\*\\\\*(?=\\\\s)","beginCaptures":{"0":{"name":"punctuation.definition.comment.php"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.php"}},"name":"comment.block.documentation.phpdoc.php","patterns":[{"include":"#php_doc"}]},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.php"}},"end":"\\\\*/","name":"comment.block.php"},{"begin":"(^\\\\s+)?(?=//)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.php"}},"end":"(?!\\\\G)","patterns":[{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.php"}},"end":"\\\\n|(?=\\\\?>)","name":"comment.line.double-slash.php"}]},{"begin":"(^\\\\s+)?(?=#)(?!#\\\\[)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.php"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.php"}},"end":"\\\\n|(?=\\\\?>)","name":"comment.line.number-sign.php"}]}]},"constants":{"patterns":[{"match":"(?i)\\\\b(TRUE|FALSE|NULL|__(FILE|DIR|FUNCTION|CLASS|METHOD|LINE|NAMESPACE)__|ON|OFF|YES|NO|NL|BR|TAB)\\\\b","name":"constant.language.php"},{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(\\\\\\\\)?\\\\b(DEFAULT_INCLUDE_PATH|EAR_(INSTALL|EXTENSION)_DIR|E_(ALL|COMPILE_(ERROR|WARNING)|CORE_(ERROR|WARNING)|DEPRECATED|ERROR|NOTICE|PARSE|RECOVERABLE_ERROR|STRICT|USER_(DEPRECATED|ERROR|NOTICE|WARNING)|WARNING)|PHP_(ROUND_HALF_(DOWN|EVEN|ODD|UP)|(MAJOR|MINOR|RELEASE)_VERSION|MAXPATHLEN|BINDIR|SHLIB_SUFFIX|SYSCONFDIR|SAPI|CONFIG_FILE_(PATH|SCAN_DIR)|INT_(MAX|SIZE)|ZTS|OS|OUTPUT_HANDLER_(START|CONT|END)|DEBUG|DATADIR|URL_(SCHEME|HOST|USER|PORT|PASS|PATH|QUERY|FRAGMENT)|PREFIX|EXTRA_VERSION|EXTENSION_DIR|EOL|VERSION(_ID)?|WINDOWS_(NT_(SERVER|DOMAIN_CONTROLLER|WORKSTATION)|VERSION_(M(?:AJOR|INOR))|BUILD|SUITEMASK|SP_(M(?:AJOR|INOR))|PRODUCTTYPE|PLATFORM)|LIBDIR|LOCALSTATEDIR)|STD(ERR|IN|OUT)|ZEND_(DEBUG_BUILD|THREAD_SAFE))\\\\b","name":"support.constant.core.php"},{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(\\\\\\\\)?\\\\b(__COMPILER_HALT_OFFSET__|AB(MON_([1-9]|10|11|12)|DAY[1-7])|AM_STR|ASSERT_(ACTIVE|BAIL|CALLBACK_QUIET_EVAL|WARNING)|ALT_DIGITS|CASE_(UPPER|LOWER)|CHAR_MAX|CONNECTION_(ABORTED|NORMAL|TIMEOUT)|CODESET|COUNT_(NORMAL|RECURSIVE)|CREDITS_(ALL|DOCS|FULLPAGE|GENERAL|GROUP|MODULES|QA|SAPI)|CRYPT_(BLOWFISH|EXT_DES|MD5|SHA(256|512)|SALT_LENGTH|STD_DES)|CURRENCY_SYMBOL|D_(T_)?FMT|DATE_(ATOM|COOKIE|ISO8601|RFC(822|850|1036|1123|2822|3339)|RSS|W3C)|DAY_[1-7]|DECIMAL_POINT|DIRECTORY_SEPARATOR|ENT_(COMPAT|IGNORE|(NO)?QUOTES)|EXTR_(IF_EXISTS|OVERWRITE|PREFIX_(ALL|IF_EXISTS|INVALID|SAME)|REFS|SKIP)|ERA(_(D_(T_)?FMT)|T_FMT|YEAR)?|FRAC_DIGITS|GROUPING|HASH_HMAC|HTML_(ENTITIES|SPECIALCHARS)|INF|INFO_(ALL|CREDITS|CONFIGURATION|ENVIRONMENT|GENERAL|LICENSEMODULES|VARIABLES)|INI_(ALL|CANNER_(NORMAL|RAW)|PERDIR|SYSTEM|USER)|INT_(CURR_SYMBOL|FRAC_DIGITS)|LC_(ALL|COLLATE|CTYPE|MESSAGES|MONETARY|NUMERIC|TIME)|LOCK_(EX|NB|SH|UN)|LOG_(ALERT|AUTH(PRIV)?|CRIT|CRON|CONS|DAEMON|DEBUG|EMERG|ERR|INFO|LOCAL[1-7]|LPR|KERN|MAIL|NEWS|NODELAY|NOTICE|NOWAIT|ODELAY|PID|PERROR|WARNING|SYSLOG|UCP|USER)|M_(1_PI|SQRT(1_2|[23]|PI)|2_(SQRT)?PI|PI(_([24]))?|E(ULER)?|LN(10|2|PI)|LOG(10|2)E)|MON_([1-9]|10|11|12|DECIMAL_POINT|GROUPING|THOUSANDS_SEP)|N_(CS_PRECEDES|SEP_BY_SPACE|SIGN_POSN)|NAN|NEGATIVE_SIGN|NO(EXPR|STR)|P_(CS_PRECEDES|SEP_BY_SPACE|SIGN_POSN)|PM_STR|POSITIVE_SIGN|PATH(_SEPARATOR|INFO_(EXTENSION|(BASE|DIR|FILE)NAME))|RADIXCHAR|SEEK_(CUR|END|SET)|SORT_(ASC|DESC|LOCALE_STRING|REGULAR|STRING)|STR_PAD_(BOTH|LEFT|RIGHT)|T_FMT(_AMPM)?|THOUSEP|THOUSANDS_SEP|UPLOAD_ERR_(CANT_WRITE|EXTENSION|(FORM|INI)_SIZE|NO_(FILE|TMP_DIR)|OK|PARTIAL)|YES(EXPR|STR))\\\\b","name":"support.constant.std.php"},{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(\\\\\\\\)?\\\\b(GLOB_(MARK|BRACE|NO(SORT|CHECK|ESCAPE)|ONLYDIR|ERR|AVAILABLE_FLAGS)|XML_(SAX_IMPL|(DTD|DOCUMENT(_(FRAG|TYPE))?|HTML_DOCUMENT|NOTATION|NAMESPACE_DECL|PI|COMMENT|DATA_SECTION|TEXT)_NODE|OPTION_(SKIP_(TAGSTART|WHITE)|CASE_FOLDING|TARGET_ENCODING)|ERROR_((BAD_CHAR|(ATTRIBUTE_EXTERNAL|BINARY|PARAM|RECURSIVE)_ENTITY)_REF|MISPLACED_XML_PI|SYNTAX|NONE|NO_(MEMORY|ELEMENTS)|TAG_MISMATCH|INCORRECT_ENCODING|INVALID_TOKEN|DUPLICATE_ATTRIBUTE|UNCLOSED_(CDATA_SECTION|TOKEN)|UNDEFINED_ENTITY|UNKNOWN_ENCODING|JUNK_AFTER_DOC_ELEMENT|PARTIAL_CHAR|EXTERNAL_ENTITY_HANDLING|ASYNC_ENTITY)|ENTITY_(((REF|DECL)_)?NODE)|ELEMENT(_DECL)?_NODE|LOCAL_NAMESPACE|ATTRIBUTE_(N(?:MTOKEN(S)?|OTATION|ODE))|CDATA|ID(REF(S)?)?|DECL_NODE|ENTITY|ENUMERATION)|MHASH_(RIPEMD(128|160|256|320)|GOST|MD([245])|SHA(1|224|256|384|512)|SNEFRU256|HAVAL(128|160|192|224|256)|CRC23(B)?|TIGER(1(?:28|60))?|WHIRLPOOL|ADLER32)|MYSQL_(BOTH|NUM|CLIENT_(SSL|COMPRESS|IGNORE_SPACE|INTERACTIVE|ASSOC))|MYSQLI_(REPORT_(STRICT|INDEX|OFF|ERROR|ALL)|REFRESH_(GRANT|MASTER|BACKUP_LOG|STATUS|SLAVE|HOSTS|THREADS|TABLES|LOG)|READ_DEFAULT_(FILE|GROUP)|(GROUP|MULTIPLE_KEY|BINARY|BLOB)_FLAG|BOTH|STMT_ATTR_(CURSOR_TYPE|UPDATE_MAX_LENGTH|PREFETCH_ROWS)|STORE_RESULT|SERVER_QUERY_(NO_((GOOD_)?INDEX_USED)|WAS_SLOW)|SET_(CHARSET_NAME|FLAG)|NO_(D(?:EFAULT_VALUE_FLAG|ATA))|NOT_NULL_FLAG|NUM(_FLAG)?|CURSOR_TYPE_(READ_ONLY|SCROLLABLE|NO_CURSOR|FOR_UPDATE)|CLIENT_(SSL|NO_SCHEMA|COMPRESS|IGNORE_SPACE|INTERACTIVE|FOUND_ROWS)|TYPE_(GEOMETRY|((MEDIUM|LONG|TINY)_)?BLOB|BIT|SHORT|STRING|SET|YEAR|NULL|NEWDECIMAL|NEWDATE|CHAR|TIME(STAMP)?|TINY|INT24|INTERVAL|DOUBLE|DECIMAL|DATE(TIME)?|ENUM|VAR_STRING|FLOAT|LONG(LONG)?)|TIME_STAMP_FLAG|INIT_COMMAND|ZEROFILL_FLAG|ON_UPDATE_NOW_FLAG|OPT_(NET_((CMD|READ)_BUFFER_SIZE)|CONNECT_TIMEOUT|INT_AND_FLOAT_NATIVE|LOCAL_INFILE)|DEBUG_TRACE_ENABLED|DATA_TRUNCATED|USE_RESULT|(ENUM|(PART|PRI|UNIQUE)_KEY|UNSIGNED)_FLAG|ASSOC|ASYNC|AUTO_INCREMENT_FLAG)|MCRYPT_(RC([26])|RIJNDAEL_(128|192|256)|RAND|GOST|XTEA|MODE_(STREAM|NOFB|CBC|CFB|OFB|ECB)|MARS|BLOWFISH(_COMPAT)?|SERPENT|SKIPJACK|SAFER(64|128|PLUS)|CRYPT|CAST_(128|256)|TRIPLEDES|THREEWAY|TWOFISH|IDEA|(3)?DES|DECRYPT|DEV_(U)?RANDOM|PANAMA|ENCRYPT|ENIGNA|WAKE|LOKI97|ARCFOUR(_IV)?)|STREAM_(REPORT_ERRORS|MUST_SEEK|MKDIR_RECURSIVE|BUFFER_(NONE|FULL|LINE)|SHUT_(RD)?WR|SOCK_(RDM|RAW|STREAM|SEQPACKET|DGRAM)|SERVER_(BIND|LISTEN)|NOTIFY_(REDIRECTED|RESOLVE|MIME_TYPE_IS|SEVERITY_(INFO|ERR|WARN)|COMPLETED|CONNECT|PROGRESS|FILE_SIZE_IS|FAILURE|AUTH_(RE(?:QUIRED|SULT)))|CRYPTO_METHOD_((SSLv2(3)?|SSLv3|TLS)_(CLIENT|SERVER))|CLIENT_((ASYNC_)?CONNECT|PERSISTENT)|CAST_(AS_STREAM|FOR_SELECT)|(I(?:GNORE|S))_URL|IPPROTO_(RAW|TCP|ICMP|IP|UDP)|OOB|OPTION_(READ_(BUFFER|TIMEOUT)|BLOCKING|WRITE_BUFFER)|URL_STAT_(LINK|QUIET)|USE_PATH|PEEK|PF_(INET(6)?|UNIX)|ENFORCE_SAFE_MODE|FILTER_(ALL|READ|WRITE))|SUNFUNCS_RET_(DOUBLE|STRING|TIMESTAMP)|SQLITE_(READONLY|ROW|MISMATCH|MISUSE|BOTH|BUSY|SCHEMA|NOMEM|NOTFOUND|NOTADB|NOLFS|NUM|CORRUPT|CONSTRAINT|CANTOPEN|TOOBIG|INTERRUPT|INTERNAL|IOERR|OK|DONE|PROTOCOL|PERM|ERROR|EMPTY|FORMAT|FULL|LOCKED|ABORT|ASSOC|AUTH)|SQLITE3_(BOTH|BLOB|NUM|NULL|TEXT|INTEGER|OPEN_(READ(ONLY|WRITE)|CREATE)|FLOAT_ASSOC)|CURL(M_(BAD_((EASY)?HANDLE)|CALL_MULTI_PERFORM|INTERNAL_ERROR|OUT_OF_MEMORY|OK)|MSG_DONE|SSH_AUTH_(HOST|NONE|DEFAULT|PUBLICKEY|PASSWORD|KEYBOARD)|CLOSEPOLICY_(SLOWEST|CALLBACK|OLDEST|LEAST_(RECENTLY_USED|TRAFFIC)|INFO_(REDIRECT_(COUNT|TIME)|REQUEST_SIZE|SSL_VERIFYRESULT|STARTTRANSFER_TIME|(S(?:IZE|PEED))_((?:DOWN|UP)LOAD)|HTTP_CODE|HEADER_(OUT|SIZE)|NAMELOOKUP_TIME|CONNECT_TIME|CONTENT_(TYPE|LENGTH_((?:DOWN|UP)LOAD))|CERTINFO|TOTAL_TIME|PRIVATE|PRETRANSFER_TIME|EFFECTIVE_URL|FILETIME)|OPT_(RESUME_FROM|RETURNTRANSFER|REDIR_PROTOCOLS|REFERER|READ(DATA|FUNCTION)|RANGE|RANDOM_FILE|MAX(CONNECTS|REDIRS)|BINARYTRANSFER|BUFFERSIZE|SSH_(HOST_PUBLIC_KEY_MD5|(P(?:RIVATE|UBLIC))_KEYFILE)|AUTH_TYPES)|SSL(CERT(TYPE|PASSWD)?|ENGINE(_DEFAULT)?|VERSION|KEY(TYPE|PASSWD)?)|SSL_(CIPHER_LIST|VERIFY(HOST|PEER))|STDERR|HTTP(GET|HEADER|200ALIASES|_VERSION|PROXYTUNNEL|AUTH)|HEADER(FUNCTION)?|NO(BODY|SIGNAL|PROGRESS)|NETRC|CRLF|CONNECTTIMEOUT(_MS)?|COOKIE(SESSION|JAR|FILE)?|CUSTOMREQUEST|CERTINFO|CLOSEPOLICY|CA(INFO|PATH)|TRANSFERTEXT|TCP_NODELAY|TIME(CONDITION|OUT(_MS)?|VALUE)|INTERFACE|INFILE(SIZE)?|IPRESOLVE|DNS_(CACHE_TIMEOUT|USE_GLOBAL_CACHE)|URL|USER(AGENT|PWD)|UNRESTRICTED_AUTH|UPLOAD|PRIVATE|PROGRESSFUNCTION|PROXY(TYPE|USERPWD|PORT|AUTH)?|PROTOCOLS|PORT|POST(REDIR|QUOTE|FIELDS)?|PUT|EGDSOCKET|ENCODING|VERBOSE|KRB4LEVEL|KEYPASSWD|QUOTE|FRESH_CONNECT|FTP(APPEND|LISTONLY|PORT|SSLAUTH)|FTP_(SSL|SKIP_PASV_IP|CREATE_MISSING_DIRS|USE_EP(RT|SV)|FILEMETHOD)|FILE(TIME)?|FORBID_REUSE|FOLLOWLOCATION|FAILONERROR|WRITE(FUNCTION|HEADER)|LOW_SPEED_(LIMIT|TIME)|AUTOREFERER)|PROXY_(HTTP|SOCKS([45]))|PROTO_(SCP|SFTP|HTTP(S)?|TELNET|TFTP|DICT|FTP(S)?|FILE|LDAP(S)?|ALL)|E_((RE(?:CV|AD))_ERROR|GOT_NOTHING|MALFORMAT_USER|BAD_(CONTENT_ENCODING|CALLING_ORDER|PASSWORD_ENTERED|FUNCTION_ARGUMENT)|SSH|SSL_(CIPHER|CONNECT_ERROR|CERTPROBLEM|CACERT|PEER_CERTIFICATE|ENGINE_(NOTFOUND|SETFAILED))|SHARE_IN_USE|SEND_ERROR|HTTP_(RANGE_ERROR|NOT_FOUND|PORT_FAILED|POST_ERROR)|COULDNT_(RESOLVE_(HOST|PROXY)|CONNECT)|TOO_MANY_REDIRECTS|TELNET_OPTION_SYNTAX|OBSOLETE|OUT_OF_MEMORY|OPERATION|TIMEOUTED|OK|URL_MALFORMAT(_USER)?|UNSUPPORTED_PROTOCOL|UNKNOWN_TELNET_OPTION|PARTIAL_FILE|FTP_(BAD_DOWNLOAD_RESUME|SSL_FAILED|COULDNT_(RETR_FILE|GET_SIZE|STOR_FILE|SET_(BINARY|ASCII)|USE_REST)|CANT_(GET_HOST|RECONNECT)|USER_PASSWORD_INCORRECT|PORT_FAILED|QUOTE_ERROR|WRITE_ERROR|WEIRD_((PASS|PASV|SERVER|USER)_REPLY|227_FORMAT)|ACCESS_DENIED)|FILESIZE_EXCEEDED|FILE_COULDNT_READ_FILE|FUNCTION_NOT_FOUND|FAILED_INIT|WRITE_ERROR|LIBRARY_NOT_FOUND|LDAP_(SEARCH_FAILED|CANNOT_BIND|INVALID_URL)|ABORTED_BY_CALLBACK)|VERSION_NOW|FTP(METHOD_(MULTI|SINGLE|NO)CWD|SSL_(ALL|NONE|CONTROL|TRY)|AUTH_(DEFAULT|SSL|TLS))|AUTH_(ANY(SAFE)?|BASIC|DIGEST|GSSNEGOTIATE|NTLM))|CURL_(HTTP_VERSION_(1_([01])|NONE)|NETRC_(REQUIRED|IGNORED|OPTIONAL)|TIMECOND_(IF(UN)?MODSINCE|LASTMOD)|IPRESOLVE_(V([46])|WHATEVER)|VERSION_(SSL|IPV6|KERBEROS4|LIBZ))|IMAGETYPE_(GIF|XBM|BMP|SWF|COUNT|TIFF_(MM|II)|ICO|IFF|UNKNOWN|JB2|JPX|JP2|JPC|JPEG(2000)?|PSD|PNG|WBMP)|INPUT_(REQUEST|GET|SERVER|SESSION|COOKIE|POST|ENV)|ICONV_(MIME_DECODE_(STRICT|CONTINUE_ON_ERROR)|IMPL|VERSION)|DNS_(MX|SRV|SOA|HINFO|NS|NAPTR|CNAME|TXT|PTR|ANY|ALL|AAAA|A(6)?)|DOM(STRING_SIZE_ERR)|DOM_((SYNTAX|HIERARCHY_REQUEST|NO_((?:MODIFICATION|DATA)_ALLOWED)|NOT_(FOUND|SUPPORTED)|NAMESPACE|INDEX_SIZE|USE_ATTRIBUTE|VALID_(MODIFICATION|STATE|CHARACTER|ACCESS)|PHP|VALIDATION|WRONG_DOCUMENT)_ERR)|JSON_(HEX_(TAG|QUOT|AMP|APOS)|NUMERIC_CHECK|ERROR_(SYNTAX|STATE_MISMATCH|NONE|CTRL_CHAR|DEPTH|UTF8)|FORCE_OBJECT)|PREG_((D_UTF8(_OFFSET)?|NO|INTERNAL|(BACKTRACK|RECURSION)_LIMIT)_ERROR|GREP_INVERT|SPLIT_(NO_EMPTY|(DELIM|OFFSET)_CAPTURE)|SET_ORDER|OFFSET_CAPTURE|PATTERN_ORDER)|PSFS_(PASS_ON|ERR_FATAL|FEED_ME|FLAG_(NORMAL|FLUSH_(CLOSE|INC)))|PCRE_VERSION|POSIX_(([FRWX])_OK|S_IF(REG|BLK|SOCK|CHR|IFO))|FNM_(NOESCAPE|CASEFOLD|PERIOD|PATHNAME)|FILTER_(REQUIRE_(SCALAR|ARRAY)|NULL_ON_FAILURE|CALLBACK|DEFAULT|UNSAFE_RAW|SANITIZE_(MAGIC_QUOTES|STRING|STRIPPED|SPECIAL_CHARS|NUMBER_(INT|FLOAT)|URL|EMAIL|ENCODED|FULL_SPCIAL_CHARS)|VALIDATE_(REGEXP|BOOLEAN|INT|IP|URL|EMAIL|FLOAT)|FORCE_ARRAY|FLAG_(SCHEME_REQUIRED|STRIP_(BACKTICK|HIGH|LOW)|HOST_REQUIRED|NONE|NO_(RES|PRIV)_RANGE|ENCODE_QUOTES|IPV([46])|PATH_REQUIRED|EMPTY_STRING_NULL|ENCODE_(HIGH|LOW|AMP)|QUERY_REQUIRED|ALLOW_(SCIENTIFIC|HEX|THOUSAND|OCTAL|FRACTION)))|FILE_(BINARY|SKIP_EMPTY_LINES|NO_DEFAULT_CONTEXT|TEXT|IGNORE_NEW_LINES|USE_INCLUDE_PATH|APPEND)|FILEINFO_(RAW|MIME(_(ENCODING|TYPE))?|SYMLINK|NONE|CONTINUE|DEVICES|PRESERVE_ATIME)|FORCE_(DEFLATE|GZIP)|LIBXML_(XINCLUDE|NSCLEAN|NO(XMLDECL|BLANKS|NET|CDATA|ERROR|EMPTYTAG|ENT|WARNING)|COMPACT|DTD(VALID|LOAD|ATTR)|((DOTTED|LOADED)_)?VERSION|PARSEHUGE|ERR_(NONE|ERROR|FATAL|WARNING)))\\\\b","name":"support.constant.ext.php"},{"captures":{"1":{"name":"punctuation.separator.inheritance.php"}},"match":"(\\\\\\\\)?\\\\b(T_(RETURN|REQUIRE(_ONCE)?|GOTO|GLOBAL|(MINUS|MOD|MUL|XOR)_EQUAL|METHOD_C|ML_COMMENT|BREAK|BOOL_CAST|BOOLEAN_(AND|OR)|BAD_CHARACTER|SR(_EQUAL)?|STRING(_CAST|VARNAME)?|START_HEREDOC|STATIC|SWITCH|SL(_EQUAL)?|HALT_COMPILER|NS_(C|SEPARATOR)|NUM_STRING|NEW|NAMESPACE|CHARACTER|COMMENT|CONSTANT(_ENCAPSED_STRING)?|CONCAT_EQUAL|CONTINUE|CURLY_OPEN|CLOSE_TAG|CLONE|CLASS(_C)?|CASE|CATCH|TRY|THROW|IMPLEMENTS|ISSET|IS_((GREATER|SMALLER)_OR_EQUAL|(NOT_)?(IDENTICAL|EQUAL))|INSTANCEOF|INCLUDE(_ONCE)?|INC|INT_CAST|INTERFACE|INLINE_HTML|IF|OR_EQUAL|OBJECT_(CAST|OPERATOR)|OPEN_TAG(_WITH_ECHO)?|OLD_FUNCTION|DNUMBER|DIR|DIV_EQUAL|DOC_COMMENT|DOUBLE_(ARROW|CAST|COLON)|DOLLAR_OPEN_CURLY_BRACES|DO|DEC|DECLARE|DEFAULT|USE|UNSET(_CAST)?|PRINT|PRIVATE|PROTECTED|PUBLIC|PLUS_EQUAL|PAAMAYIM_NEKUDOTAYIM|EXTENDS|EXIT|EMPTY|ENCAPSED_AND_WHITESPACE|END(SWITCH|IF|DECLARE|FOR(EACH)?|WHILE)|END_HEREDOC|ECHO|EVAL|ELSE(IF)?|VAR(IABLE)?|FINAL|FILE|FOR(EACH)?|FUNC_C|FUNCTION|WHITESPACE|WHILE|LNUMBER|LIST|LINE|LOGICAL_(AND|OR|XOR)|ARRAY_(CAST)?|ABSTRACT|AS|AND_EQUAL))\\\\b","name":"support.constant.parser-token.php"},{"match":"(?i)[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*","name":"constant.other.php"}]},"function-call":{"patterns":[{"begin":"(\\\\\\\\?(?<![0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}])[A-Z_a-z\\\\x7F-\\\\x{10FFFF}][0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}]*(?:\\\\\\\\[A-Z_a-z\\\\x7F-\\\\x{10FFFF}][0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}]*)+)\\\\s*(\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#namespace"},{"match":"(?i)[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*","name":"entity.name.function.php"}]},"2":{"name":"punctuation.definition.arguments.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.bracket.round.php"}},"name":"meta.function-call.php","patterns":[{"include":"#named-arguments"},{"include":"$self"}]},{"begin":"(\\\\\\\\)?(?<![0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}])([A-Z_a-z\\\\x7F-\\\\x{10FFFF}][0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}]*)\\\\s*(\\\\()","beginCaptures":{"1":{"patterns":[{"include":"#namespace"}]},"2":{"patterns":[{"include":"#support"},{"match":"(?i)[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*","name":"entity.name.function.php"}]},"3":{"name":"punctuation.definition.arguments.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.bracket.round.php"}},"name":"meta.function-call.php","patterns":[{"include":"#named-arguments"},{"include":"$self"}]},{"match":"(?i)\\\\b(print|echo)\\\\b","name":"support.function.construct.output.php"}]},"function-parameters":{"patterns":[{"include":"#attribute"},{"include":"#comments"},{"match":",","name":"punctuation.separator.delimiter.php"},{"captures":{"1":{"patterns":[{"include":"#php-types"}]},"2":{"name":"variable.other.php"},"3":{"name":"storage.modifier.reference.php"},"4":{"name":"keyword.operator.variadic.php"},"5":{"name":"punctuation.definition.variable.php"}},"match":"(?i)(?:((?:\\\\?\\\\s*)?[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|(?:[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|\\\\(\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+(?:\\\\s*&\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)+\\\\s*\\\\))(?:\\\\s*[\\\\&|]\\\\s*(?:[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|\\\\(\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+(?:\\\\s*&\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)+\\\\s*\\\\)))+)\\\\s+)?((?:(&)\\\\s*)?(\\\\.\\\\.\\\\.)(\\\\$)[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)(?=\\\\s*(?:[),]|/[*/]|#|$))","name":"meta.function.parameter.variadic.php"},{"begin":"(?i)((?:\\\\?\\\\s*)?[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|(?:[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|\\\\(\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+(?:\\\\s*&\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)+\\\\s*\\\\))(?:\\\\s*[\\\\&|]\\\\s*(?:[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+|\\\\(\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+(?:\\\\s*&\\\\s*[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)+\\\\s*\\\\)))+)\\\\s+((?:(&)\\\\s*)?(\\\\$)[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)","beginCaptures":{"1":{"patterns":[{"include":"#php-types"}]},"2":{"name":"variable.other.php"},"3":{"name":"storage.modifier.reference.php"},"4":{"name":"punctuation.definition.variable.php"}},"end":"(?=\\\\s*(?:[),]|/[*/]|#))","name":"meta.function.parameter.typehinted.php","patterns":[{"begin":"=","beginCaptures":{"0":{"name":"keyword.operator.assignment.php"}},"end":"(?=\\\\s*(?:[),]|/[*/]|#))","patterns":[{"include":"#parameter-default-types"}]}]},{"captures":{"1":{"name":"variable.other.php"},"2":{"name":"storage.modifier.reference.php"},"3":{"name":"punctuation.definition.variable.php"}},"match":"(?i)((?:(&)\\\\s*)?(\\\\$)[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)(?=\\\\s*(?:[),]|/[*/]|#|$))","name":"meta.function.parameter.no-default.php"},{"begin":"(?i)((?:(&)\\\\s*)?(\\\\$)[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)\\\\s*(=)\\\\s*","beginCaptures":{"1":{"name":"variable.other.php"},"2":{"name":"storage.modifier.reference.php"},"3":{"name":"punctuation.definition.variable.php"},"4":{"name":"keyword.operator.assignment.php"}},"end":"(?=\\\\s*(?:[),]|/[*/]|#))","name":"meta.function.parameter.default.php","patterns":[{"include":"#parameter-default-types"}]}]},"heredoc":{"patterns":[{"begin":"(?i)(?=<<<\\\\s*(\\"?)([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)(\\\\1)\\\\s*$)","end":"(?!\\\\G)","name":"string.unquoted.heredoc.php","patterns":[{"include":"#heredoc_interior"}]},{"begin":"(?=<<<\\\\s*\'([A-Z_a-z]+[0-9A-Z_a-z]*)\'\\\\s*$)","end":"(?!\\\\G)","name":"string.unquoted.nowdoc.php","patterns":[{"include":"#nowdoc_interior"}]}]},"heredoc_interior":{"patterns":[{"begin":"(<<<)\\\\s*(\\"?)(HTML)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"text.html","end":"^\\\\s*(\\\\3)(?![0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"name":"meta.embedded.html","patterns":[{"include":"#interpolation"},{"include":"text.html.basic"}]},{"begin":"(<<<)\\\\s*(\\"?)(XML)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"text.xml","end":"^\\\\s*(\\\\3)(?![0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"name":"meta.embedded.xml","patterns":[{"include":"#interpolation"},{"include":"text.xml"}]},{"begin":"(<<<)\\\\s*(\\"?)([DS]QL)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.sql","end":"^\\\\s*(\\\\3)(?![0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"name":"meta.embedded.sql","patterns":[{"include":"#interpolation"},{"include":"source.sql"}]},{"begin":"(<<<)\\\\s*(\\"?)(J(?:AVASCRIPT|S))(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.js","end":"^\\\\s*(\\\\3)(?![0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"name":"meta.embedded.js","patterns":[{"include":"#interpolation"},{"include":"source.js"}]},{"begin":"(<<<)\\\\s*(\\"?)(JSON)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.json","end":"^\\\\s*(\\\\3)(?![0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"name":"meta.embedded.json","patterns":[{"include":"#interpolation"},{"include":"source.json"}]},{"begin":"(<<<)\\\\s*(\\"?)(CSS)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.css","end":"^\\\\s*(\\\\3)(?![0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"name":"meta.embedded.css","patterns":[{"include":"#interpolation"},{"include":"source.css"}]},{"begin":"(<<<)\\\\s*(\\"?)(REGEXP?)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"string.regexp.heredoc.php","end":"^\\\\s*(\\\\3)(?![0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"patterns":[{"include":"#interpolation"},{"match":"(\\\\\\\\){1,2}[]$.\\\\[^{}]","name":"constant.character.escape.regex.php"},{"captures":{"1":{"name":"punctuation.definition.arbitrary-repitition.php"},"3":{"name":"punctuation.definition.arbitrary-repitition.php"}},"match":"(\\\\{)\\\\d+(,\\\\d+)?(})","name":"string.regexp.arbitrary-repitition.php"},{"begin":"\\\\[(?:\\\\^?])?","captures":{"0":{"name":"punctuation.definition.character-class.php"}},"end":"]","name":"string.regexp.character-class.php","patterns":[{"match":"\\\\\\\\[]\'\\\\[\\\\\\\\]","name":"constant.character.escape.php"}]},{"match":"[$*+^]","name":"keyword.operator.regexp.php"},{"begin":"(?i)(?<=^|\\\\s)(#)\\\\s(?=[-\\\\t !,.0-9?_a-z\\\\x7F-\\\\x{10FFFF}[^\\\\x00-\\\\x7F]]*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.php"}},"end":"$","endCaptures":{"0":{"name":"punctuation.definition.comment.php"}},"name":"comment.line.number-sign.php"}]},{"begin":"(<<<)\\\\s*(\\"?)(BLADE)(\\\\2)(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"text.html.php.blade","end":"^\\\\s*(\\\\3)(?![0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.heredoc.php"}},"name":"meta.embedded.php.blade","patterns":[{"include":"#interpolation"}]},{"begin":"(?i)(<<<)\\\\s*(\\"?)([_a-z\\\\x7F-\\\\x{10FFFF}]+[0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)(\\\\2)(\\\\s*)","beginCaptures":{"1":{"name":"punctuation.definition.string.php"},"3":{"name":"keyword.operator.heredoc.php"},"5":{"name":"invalid.illegal.trailing-whitespace.php"}},"end":"^\\\\s*(\\\\3)(?![0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"1":{"name":"keyword.operator.heredoc.php"}},"patterns":[{"include":"#interpolation"}]}]},"inheritance-single":{"patterns":[{"begin":"(?i)(?=\\\\\\\\?[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*\\\\\\\\)","end":"(?i)([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)?(?=[^0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"1":{"name":"entity.other.inherited-class.php"}},"patterns":[{"include":"#namespace"}]},{"include":"#class-builtin"},{"include":"#namespace"},{"match":"(?i)[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*","name":"entity.other.inherited-class.php"}]},"instantiation":{"patterns":[{"captures":{"1":{"name":"keyword.other.new.php"},"2":{"patterns":[{"match":"(?i)(parent|static|self)(?![0-9_a-z\\\\x7F-\\\\x{10FFFF}])","name":"storage.type.php"},{"include":"#class-name"},{"include":"#variable-name"}]}},"match":"(?i)(new)\\\\s+(?!class\\\\b)([$0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)(?![(0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}])"},{"begin":"(?i)(new)\\\\s+(?!class\\\\b)([$0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.other.new.php"},"2":{"patterns":[{"match":"(?i)(parent|static|self)(?![0-9_a-z\\\\x7F-\\\\x{10FFFF}])","name":"storage.type.php"},{"include":"#class-name"},{"include":"#variable-name"}]},"3":{"name":"punctuation.definition.arguments.begin.bracket.round.php"}},"contentName":"meta.function-call.php","end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.bracket.round.php"}},"patterns":[{"include":"#named-arguments"},{"include":"$self"}]}]},"interface-extends":{"patterns":[{"begin":"(?i)(extends)\\\\s+","beginCaptures":{"1":{"name":"storage.modifier.extends.php"}},"end":"(?i)(?=\\\\{)","patterns":[{"include":"#comments"},{"match":",","name":"punctuation.separator.classes.php"},{"include":"#inheritance-single"}]}]},"interpolation":{"patterns":[{"match":"\\\\\\\\[0-7]{1,3}","name":"constant.character.escape.octal.php"},{"match":"\\\\\\\\x\\\\h{1,2}","name":"constant.character.escape.hex.php"},{"match":"\\\\\\\\u\\\\{\\\\h+}","name":"constant.character.escape.unicode.php"},{"match":"\\\\\\\\[$\\\\\\\\efnrtv]","name":"constant.character.escape.php"},{"begin":"\\\\{(?=\\\\$.*?})","beginCaptures":{"0":{"name":"punctuation.definition.variable.php"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.variable.php"}},"patterns":[{"include":"$self"}]},{"include":"#variable-name"}]},"interpolation_double_quoted":{"patterns":[{"match":"\\\\\\\\\\"","name":"constant.character.escape.php"},{"include":"#interpolation"}]},"invoke-call":{"begin":"(?i)((\\\\$+)[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"variable.other.php"},"2":{"name":"punctuation.definition.variable.php"},"3":{"name":"punctuation.definition.arguments.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.bracket.round.php"}},"name":"meta.function-call.invoke.php","patterns":[{"include":"#named-arguments"},{"include":"$self"}]},"match_statement":{"patterns":[{"match":"\\\\s+(?=match\\\\b)"},{"begin":"\\\\bmatch\\\\b","beginCaptures":{"0":{"name":"keyword.control.match.php"}},"end":"}|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.section.match-block.end.bracket.curly.php"}},"name":"meta.match-statement.php","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.match-expression.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.match-expression.end.bracket.round.php"}},"patterns":[{"include":"$self"}]},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.section.match-block.begin.bracket.curly.php"}},"end":"(?=}|\\\\?>)","patterns":[{"match":"=>","name":"keyword.definition.arrow.php"},{"include":"$self"}]}]}]},"named-arguments":{"captures":{"1":{"name":"entity.name.variable.parameter.php"},"2":{"name":"punctuation.separator.colon.php"}},"match":"(?i)(?<=^|[(,])\\\\s*([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)\\\\s*(:)(?!:)"},"namespace":{"begin":"(?i)(?:(namespace)|[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)?(\\\\\\\\)","beginCaptures":{"1":{"name":"variable.language.namespace.php"},"2":{"name":"punctuation.separator.inheritance.php"}},"end":"(?i)(?![0-9_a-z\\\\x7F-\\\\x{10FFFF}]*\\\\\\\\)","name":"support.other.namespace.php","patterns":[{"match":"\\\\\\\\","name":"punctuation.separator.inheritance.php"}]},"nowdoc_interior":{"patterns":[{"begin":"(<<<)\\\\s*\'(HTML)\'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"text.html","end":"^\\\\s*(\\\\2)(?![0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"name":"meta.embedded.html","patterns":[{"include":"text.html.basic"}]},{"begin":"(<<<)\\\\s*\'(XML)\'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"text.xml","end":"^\\\\s*(\\\\2)(?![0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"name":"meta.embedded.xml","patterns":[{"include":"text.xml"}]},{"begin":"(<<<)\\\\s*\'([DS]QL)\'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.sql","end":"^\\\\s*(\\\\2)(?![0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"name":"meta.embedded.sql","patterns":[{"include":"source.sql"}]},{"begin":"(<<<)\\\\s*\'(J(?:AVASCRIPT|S))\'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.js","end":"^\\\\s*(\\\\2)(?![0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"name":"meta.embedded.js","patterns":[{"include":"source.js"}]},{"begin":"(<<<)\\\\s*\'(JSON)\'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.json","end":"^\\\\s*(\\\\2)(?![0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"name":"meta.embedded.json","patterns":[{"include":"source.json"}]},{"begin":"(<<<)\\\\s*\'(CSS)\'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"source.css","end":"^\\\\s*(\\\\2)(?![0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"name":"meta.embedded.css","patterns":[{"include":"source.css"}]},{"begin":"(<<<)\\\\s*\'(REGEXP?)\'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"string.regexp.nowdoc.php","end":"^\\\\s*(\\\\2)(?![0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"patterns":[{"match":"(\\\\\\\\){1,2}[]$.\\\\[^{}]","name":"constant.character.escape.regex.php"},{"captures":{"1":{"name":"punctuation.definition.arbitrary-repitition.php"},"3":{"name":"punctuation.definition.arbitrary-repitition.php"}},"match":"(\\\\{)\\\\d+(,\\\\d+)?(})","name":"string.regexp.arbitrary-repitition.php"},{"begin":"\\\\[(?:\\\\^?])?","captures":{"0":{"name":"punctuation.definition.character-class.php"}},"end":"]","name":"string.regexp.character-class.php","patterns":[{"match":"\\\\\\\\[]\'\\\\[\\\\\\\\]","name":"constant.character.escape.php"}]},{"match":"[$*+^]","name":"keyword.operator.regexp.php"},{"begin":"(?i)(?<=^|\\\\s)(#)\\\\s(?=[-\\\\t !,.0-9?_a-z\\\\x7F-\\\\x{10FFFF}[^\\\\x00-\\\\x7F]]*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.php"}},"end":"$","endCaptures":{"0":{"name":"punctuation.definition.comment.php"}},"name":"comment.line.number-sign.php"}]},{"begin":"(<<<)\\\\s*\'(BLADE)\'(\\\\s*)$","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.php"},"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"contentName":"text.html.php.blade","end":"^\\\\s*(\\\\2)(?![0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"0":{"name":"punctuation.section.embedded.end.php"},"1":{"name":"keyword.operator.nowdoc.php"}},"name":"meta.embedded.php.blade"},{"begin":"(?i)(<<<)\\\\s*\'([_a-z\\\\x7F-\\\\x{10FFFF}]+[0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)\'(\\\\s*)","beginCaptures":{"1":{"name":"punctuation.definition.string.php"},"2":{"name":"keyword.operator.nowdoc.php"},"3":{"name":"invalid.illegal.trailing-whitespace.php"}},"end":"^\\\\s*(\\\\2)(?![0-9A-Z_a-z\\\\x7F-\\\\x{10FFFF}])","endCaptures":{"1":{"name":"keyword.operator.nowdoc.php"}}}]},"null_coalescing":{"match":"\\\\?\\\\?","name":"keyword.operator.null-coalescing.php"},"numbers":{"patterns":[{"match":"0[Xx]\\\\h+(?:_\\\\h+)*","name":"constant.numeric.hex.php"},{"match":"0[Bb][01]+(?:_[01]+)*","name":"constant.numeric.binary.php"},{"match":"0[Oo][0-7]+(?:_[0-7]+)*","name":"constant.numeric.octal.php"},{"match":"0(?:_?[0-7]+)+","name":"constant.numeric.octal.php"},{"captures":{"1":{"name":"punctuation.separator.decimal.period.php"},"2":{"name":"punctuation.separator.decimal.period.php"}},"match":"(?:[0-9]+(?:_[0-9]+)*)?(\\\\.)[0-9]+(?:_[0-9]+)*(?:[Ee][-+]?[0-9]+(?:_[0-9]+)*)?|[0-9]+(?:_[0-9]+)*(\\\\.)(?:[0-9]+(?:_[0-9]+)*)?(?:[Ee][-+]?[0-9]+(?:_[0-9]+)*)?|[0-9]+(?:_[0-9]+)*[Ee][-+]?[0-9]+(?:_[0-9]+)*","name":"constant.numeric.decimal.php"},{"match":"0|[1-9](?:_?[0-9]+)*","name":"constant.numeric.decimal.php"}]},"object":{"patterns":[{"begin":"(\\\\??->)\\\\s*(\\\\$?\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"punctuation.definition.variable.php"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.variable.php"}},"patterns":[{"include":"$self"}]},{"begin":"(?i)(\\\\??->)\\\\s*([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"entity.name.function.php"},"3":{"name":"punctuation.definition.arguments.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.bracket.round.php"}},"name":"meta.method-call.php","patterns":[{"include":"#named-arguments"},{"include":"$self"}]},{"captures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"variable.other.property.php"},"3":{"name":"punctuation.definition.variable.php"}},"match":"(?i)(\\\\??->)\\\\s*((\\\\$+)?[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)?"}]},"parameter-default-types":{"patterns":[{"include":"#strings"},{"include":"#numbers"},{"include":"#string-backtick"},{"include":"#variables"},{"match":"=>","name":"keyword.operator.key.php"},{"match":"=","name":"keyword.operator.assignment.php"},{"match":"&(?=\\\\s*\\\\$)","name":"storage.modifier.reference.php"},{"begin":"(array)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"support.function.construct.php"},"2":{"name":"punctuation.definition.array.begin.bracket.round.php"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.array.end.bracket.round.php"}},"name":"meta.array.php","patterns":[{"include":"#parameter-default-types"}]},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.section.array.begin.php"}},"end":"]|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.section.array.end.php"}},"patterns":[{"include":"$self"}]},{"include":"#instantiation"},{"begin":"(?i)(?=[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+(::)\\\\s*([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)?)","end":"(?i)(::)\\\\s*([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)?","endCaptures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"constant.other.class.php"}},"patterns":[{"include":"#class-name"}]},{"include":"#constants"}]},"php-types":{"patterns":[{"match":"\\\\?","name":"keyword.operator.nullable-type.php"},{"match":"[\\\\&|]","name":"punctuation.separator.delimiter.php"},{"match":"(?i)\\\\b(null|int|float|bool|string|array|object|callable|iterable|true|false|mixed|void)\\\\b","name":"keyword.other.type.php"},{"match":"(?i)\\\\b(parent|self)\\\\b","name":"storage.type.php"},{"match":"\\\\(","name":"punctuation.definition.type.begin.bracket.round.php"},{"match":"\\\\)","name":"punctuation.definition.type.end.bracket.round.php"},{"include":"#class-name"}]},"php_doc":{"patterns":[{"match":"^(?!\\\\s*\\\\*).*?(?:(?=\\\\*/)|$\\\\n?)","name":"invalid.illegal.missing-asterisk.phpdoc.php"},{"captures":{"1":{"name":"keyword.other.phpdoc.php"},"2":{"name":"storage.modifier.php"},"3":{"name":"storage.modifier.visibility.${3:/downcase}.php"},"4":{"name":"invalid.illegal.wrong-access-type.phpdoc.php"}},"match":"^\\\\s*\\\\*\\\\s*(@access)\\\\s+(?i:((p(?:ublic|rivate|rotected)))|(.+))\\\\s*$"},{"captures":{"1":{"name":"keyword.other.phpdoc.php"},"2":{"name":"markup.underline.link.php"}},"match":"(@xlink)\\\\s+(.+)\\\\s*$"},{"begin":"(@(?:global|param|property(-(read|write))?|return|throws|var))\\\\s+(?=[(?A-Z\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}])","beginCaptures":{"1":{"name":"keyword.other.phpdoc.php"}},"contentName":"meta.other.type.phpdoc.php","end":"(?=\\\\s|\\\\*/)","patterns":[{"include":"#php_doc_types_array_multiple"},{"include":"#php_doc_types_array_single"},{"include":"#php_doc_types"},{"match":"[\\\\&|]","name":"punctuation.separator.delimiter.php"}]},{"match":"@(api|abstract|author|category|copyright|example|global|inherit[Dd]oc|internal|license|link|method|property(-(read|write))?|package|param|return|see|since|source|static|subpackage|throws|todo|var|version|uses|deprecated|final|ignore)\\\\b","name":"keyword.other.phpdoc.php"},{"captures":{"1":{"name":"keyword.other.phpdoc.php"}},"match":"\\\\{(@(link|inherit[Dd]oc)).+?}","name":"meta.tag.inline.phpdoc.php"}]},"php_doc_types":{"captures":{"0":{"patterns":[{"match":"\\\\?","name":"keyword.operator.nullable-type.php"},{"match":"\\\\b(string|integer|int|boolean|bool|float|double|object|mixed|array|resource|void|null|callback|false|true|self|static)\\\\b","name":"keyword.other.type.php"},{"include":"#class-name"},{"match":"[\\\\&|]","name":"punctuation.separator.delimiter.php"}]}},"match":"(?i)\\\\??[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+([\\\\&|]\\\\??[0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)*"},"php_doc_types_array_multiple":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.type.begin.bracket.round.phpdoc.php"}},"end":"(\\\\))(\\\\[])?|(?=\\\\*/)","endCaptures":{"1":{"name":"punctuation.definition.type.end.bracket.round.phpdoc.php"},"2":{"name":"keyword.other.array.phpdoc.php"}},"patterns":[{"include":"#php_doc_types_array_multiple"},{"include":"#php_doc_types_array_single"},{"include":"#php_doc_types"},{"match":"[\\\\&|]","name":"punctuation.separator.delimiter.php"}]},"php_doc_types_array_single":{"captures":{"1":{"patterns":[{"include":"#php_doc_types"}]},"2":{"name":"keyword.other.array.phpdoc.php"}},"match":"(?i)([0-9\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]+)(\\\\[])"},"regex-double-quoted":{"begin":"\\"/(?=(\\\\\\\\.|[^\\"/])++/[ADSUXeimsux]*\\")","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"end":"(/)([ADSUXeimsux]*)(\\")","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.regexp.double-quoted.php","patterns":[{"match":"(\\\\\\\\){1,2}[]$.\\\\[^{}]","name":"constant.character.escape.regex.php"},{"include":"#interpolation_double_quoted"},{"captures":{"1":{"name":"punctuation.definition.arbitrary-repetition.php"},"3":{"name":"punctuation.definition.arbitrary-repetition.php"}},"match":"(\\\\{)\\\\d+(,\\\\d+)?(})","name":"string.regexp.arbitrary-repetition.php"},{"begin":"\\\\[(?:\\\\^?])?","captures":{"0":{"name":"punctuation.definition.character-class.php"}},"end":"]","name":"string.regexp.character-class.php","patterns":[{"include":"#interpolation_double_quoted"}]},{"match":"[$*+^]","name":"keyword.operator.regexp.php"}]},"regex-single-quoted":{"begin":"\'/(?=(\\\\\\\\(?:\\\\\\\\(?:\\\\\\\\[\'\\\\\\\\]?|[^\'])|.)|[^\'/])++/[ADSUXeimsux]*\')","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"end":"(/)([ADSUXeimsux]*)(\')","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.regexp.single-quoted.php","patterns":[{"include":"#single_quote_regex_escape"},{"captures":{"1":{"name":"punctuation.definition.arbitrary-repetition.php"},"3":{"name":"punctuation.definition.arbitrary-repetition.php"}},"match":"(\\\\{)\\\\d+(,\\\\d+)?(})","name":"string.regexp.arbitrary-repetition.php"},{"begin":"\\\\[(?:\\\\^?])?","captures":{"0":{"name":"punctuation.definition.character-class.php"}},"end":"]","name":"string.regexp.character-class.php"},{"match":"[$*+^]","name":"keyword.operator.regexp.php"}]},"scope-resolution":{"patterns":[{"captures":{"1":{"patterns":[{"match":"\\\\b(self|static|parent)\\\\b","name":"storage.type.php"},{"include":"#class-name"},{"include":"#variable-name"}]}},"match":"([A-Z\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}][0-9A-Z\\\\\\\\_a-z\\\\x7F-\\\\x{10FFFF}]*)(?=\\\\s*::)"},{"begin":"(?i)(::)\\\\s*([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"entity.name.function.php"},"3":{"name":"punctuation.definition.arguments.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.arguments.end.bracket.round.php"}},"name":"meta.method-call.static.php","patterns":[{"include":"#named-arguments"},{"include":"$self"}]},{"captures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"keyword.other.class.php"}},"match":"(?i)(::)\\\\s*(class)\\\\b"},{"captures":{"1":{"name":"keyword.operator.class.php"},"2":{"name":"variable.other.class.php"},"3":{"name":"punctuation.definition.variable.php"},"4":{"name":"constant.other.class.php"}},"match":"(?i)(::)\\\\s*(?:((\\\\$+)[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)|([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*))?"}]},"single_quote_regex_escape":{"match":"\\\\\\\\(?:\\\\\\\\(?:\\\\\\\\[\'\\\\\\\\]?|[^\'])|.)","name":"constant.character.escape.php"},"sql-string-double-quoted":{"begin":"\\"\\\\s*(?=(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER|AND|WITH)\\\\b)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"contentName":"source.sql.embedded.php","end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.quoted.double.sql.php","patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.sql"}},"match":"(#)(\\\\\\\\\\"|[^\\"])*(?=\\"|$)","name":"comment.line.number-sign.sql"},{"captures":{"1":{"name":"punctuation.definition.comment.sql"}},"match":"(--)(\\\\\\\\\\"|[^\\"])*(?=\\"|$)","name":"comment.line.double-dash.sql"},{"match":"\\\\\\\\[\\"\'\\\\\\\\`]","name":"constant.character.escape.php"},{"match":"\'(?=((\\\\\\\\\')|[^\\"\'])*(\\"|$))","name":"string.quoted.single.unclosed.sql"},{"match":"`(?=((\\\\\\\\`)|[^\\"`])*(\\"|$))","name":"string.quoted.other.backtick.unclosed.sql"},{"begin":"\'","end":"\'","name":"string.quoted.single.sql","patterns":[{"include":"#interpolation_double_quoted"}]},{"begin":"`","end":"`","name":"string.quoted.other.backtick.sql","patterns":[{"include":"#interpolation_double_quoted"}]},{"include":"#interpolation_double_quoted"},{"include":"source.sql"}]},"sql-string-single-quoted":{"begin":"\'\\\\s*(?=(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER|AND|WITH)\\\\b)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"contentName":"source.sql.embedded.php","end":"\'","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.quoted.single.sql.php","patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.sql"}},"match":"(#)(\\\\\\\\\'|[^\'])*(?=\'|$)","name":"comment.line.number-sign.sql"},{"captures":{"1":{"name":"punctuation.definition.comment.sql"}},"match":"(--)(\\\\\\\\\'|[^\'])*(?=\'|$)","name":"comment.line.double-dash.sql"},{"match":"\\\\\\\\[\\"\'\\\\\\\\`]","name":"constant.character.escape.php"},{"match":"N(?=\')"},{"match":"`(?=((\\\\\\\\`)|[^\'`])*(\'|$))","name":"string.quoted.other.backtick.unclosed.sql"},{"match":"\\"(?=((\\\\\\\\\\")|[^\\"\'])*(\'|$))","name":"string.quoted.double.unclosed.sql"},{"include":"source.sql"}]},"string-backtick":{"begin":"`","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"end":"`","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.interpolated.php","patterns":[{"match":"\\\\\\\\`","name":"constant.character.escape.php"},{"include":"#interpolation"}]},"string-double-quoted":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.quoted.double.php","patterns":[{"include":"#interpolation_double_quoted"}]},"string-single-quoted":{"begin":"\'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.php"}},"end":"\'","endCaptures":{"0":{"name":"punctuation.definition.string.end.php"}},"name":"string.quoted.single.php","patterns":[{"match":"\\\\\\\\[\'\\\\\\\\]","name":"constant.character.escape.php"}]},"strings":{"patterns":[{"include":"#regex-double-quoted"},{"include":"#sql-string-double-quoted"},{"include":"#string-double-quoted"},{"include":"#regex-single-quoted"},{"include":"#sql-string-single-quoted"},{"include":"#string-single-quoted"}]},"support":{"patterns":[{"match":"(?i)\\\\bapc_(store|sma_info|compile_file|clear_cache|cas|cache_info|inc|dec|define_constants|delete(_file)?|exists|fetch|load_constants|add|bin_(dump|load)(file)?)\\\\b","name":"support.function.apc.php"},{"match":"(?i)\\\\b(compact|count|current|end|extract|in_array|key(_exists)?|list|nat(case)?sort|next|pos|prev|range|reset|shuffle|sizeof|[ak]?r?sort|u[ak]?sort|array_(all|any|change_key_case|chunk|column|combine|count_values|fill(_keys)?|filter|find(_key)?|flip|is_list|key_(exists|first|last)|keys|map|multisort|pad|pop|product|push|rand|reduce|reverse|search|shift|slice|splice|sum|unique|unshift|values|u?(diff|intersect)(_u?(key|assoc))?|(walk|replace|merge)(_recursive)?))\\\\b","name":"support.function.array.php"},{"match":"(?i)\\\\b(connection_(aborted|status)|constant|defined?|die|eval|exit|get_browser|__halt_compiler|highlight_(file|string)|hrtime|ignore_user_abort|pack|php_strip_whitespace|show_source|u?sleep|sys_getloadavg|time_(nanosleep|sleep_until)|uniqid|unpack)\\\\b","name":"support.function.basic_functions.php"},{"match":"(?i)\\\\bbc(add|ceil|comp|(div|pow)(mod)?|floor|mod|mul|round|scale|sqrt|sub)\\\\b","name":"support.function.bcmath.php"},{"match":"(?i)\\\\bblenc_encrypt\\\\b","name":"support.function.blenc.php"},{"match":"(?i)\\\\bbz(compress|close|open|decompress|errstr|errno|error|flush|write|read)\\\\b","name":"support.function.bz2.php"},{"match":"(?i)\\\\b((French|Gregorian|Jewish|Julian)ToJD|cal_(to_jd|info|days_in_month|from_jd)|unixtojd|jdto(unix|jewish)|easter_(da(?:te|ys))|JD(MonthName|To(Gregorian|Julian|French)|DayOfWeek))\\\\b","name":"support.function.calendar.php"},{"match":"(?i)\\\\b(__autoload|class_alias|(class|interface|method|property|trait|enum)_exists|is_(a|subclass_of)|get_(class(_(vars|methods))?|(called|parent)_class|(mangled_)?object_vars|declared_(classes|interfaces|traits)))\\\\b","name":"support.function.classobj.php"},{"match":"(?i)\\\\b(com_(create_guid|print_typeinfo|event_sink|load_typelib|get_active_object|message_pump)|variant_(sub|set(_type)?|not|neg|cast|cat|cmp|int|idiv|imp|or|div|date_(from|to)_timestamp|pow|eqv|fix|and|add|abs|round|get_type|xor|mod|mul))\\\\b","name":"support.function.com.php"},{"match":"(?i)\\\\b(isset|unset|eval|empty|list)\\\\b","name":"support.function.construct.php"},{"match":"(?i)\\\\b(print|echo)\\\\b","name":"support.function.construct.output.php"},{"match":"(?i)\\\\bctype_(space|cntrl|digit|upper|punct|print|lower|alnum|alpha|graph|xdigit)\\\\b","name":"support.function.ctype.php"},{"match":"(?i)\\\\bcurl_(close|copy_handle|errno|error|escape|exec|getinfo|init|pause|reset|setopt(_array)?|strerror|unescape|upkeep|version|multi_((add|remove)_handle|close|errno|exec|getcontent|info_read|init|select|setopt|strerror)|share_(close|errno|init(_persistent)?|setopt|strerror))\\\\b","name":"support.function.curl.php"},{"match":"(?i)\\\\b(strtotime|str[fp]time|checkdate|time|timezone_name_(from_abbr|get)|idate|timezone_((location|offset|transitions|version)_get|(abbreviations|identifiers)_list|open)|date(_(sun(rise|set)|sun_info|sub|create(_immutable)?(_from_format)?|timestamp_[gs]et|timezone_[gs]et|time_set|isodate_set|interval_(create_from_date_string|format)|offset_get|diff|default_timezone_[gs]et|date_set|parse(_from_format)?|format|add|get_last_errors|modify))?|localtime|get(date|timeofday)|gm(strftime|date|mktime)|microtime|mktime)\\\\b","name":"support.function.datetime.php"},{"match":"(?i)\\\\bdba_(sync|handlers|nextkey|close|insert|optimize|open|delete|popen|exists|key_split|firstkey|fetch|list|replace)\\\\b","name":"support.function.dba.php"},{"match":"(?i)\\\\bdbx_(sort|connect|compare|close|escape_string|error|query|fetch_row)\\\\b","name":"support.function.dbx.php"},{"match":"(?i)\\\\b(scandir|chdir|chroot|closedir|opendir|dir|rewinddir|readdir|getcwd)\\\\b","name":"support.function.dir.php"},{"match":"(?i)\\\\beio_(sync(fs)?|sync_file_range|symlink|stat(vfs)?|sendfile|set_min_parallel|set_max_(idle|poll_(reqs|time)|parallel)|seek|n(threads|op|pending|reqs|ready)|chown|chmod|custom|close|cancel|truncate|init|open|dup2|unlink|utime|poll|event_loop|f(sync|stat(vfs)?|chown|chmod|truncate|datasync|utime|allocate)|write|lstat|link|rename|realpath|read(ahead|dir|link)?|rmdir|get_(event_stream|last_error)|grp(_(add|cancel|limit))?|mknod|mkdir|busy)\\\\b","name":"support.function.eio.php"},{"match":"(?i)\\\\benchant_(dict_(store_replacement|suggest|check|is_in_session|describe|quick_check|add_to_(personal|session)|get_error)|broker_(set_ordering|init|dict_exists|describe|free(_dict)?|list_dicts|request_(pwl_)?dict|get_error))\\\\b","name":"support.function.enchant.php"},{"match":"(?i)\\\\b(split(i)?|sql_regcase|ereg(i)?(_replace)?)\\\\b","name":"support.function.ereg.php"},{"match":"(?i)\\\\b((restore|set)_(e(?:rror|xception))_handler|trigger_error|debug_(print_)?backtrace|user_error|error_(log|reporting|(clear|get)_last))\\\\b","name":"support.function.errorfunc.php"},{"match":"(?i)\\\\b(shell_exec|system|passthru|proc_(nice|close|terminate|open|get_status)|escapeshell(arg|cmd)|exec)\\\\b","name":"support.function.exec.php"},{"match":"(?i)\\\\b(exif_(thumbnail|tagname|imagetype|read_data)|read_exif_data)\\\\b","name":"support.function.exif.php"},{"match":"(?i)\\\\bfann_((duplicate|length|merge|shuffle|subset)_train_data|scale_(train(_data)?|((?:in|out)put)(_train_data)?)|set_(scaling_params|sarprop_(step_error_(shift|threshold_factor)|temperature|weight_decay_shift)|cascade_(num_candidate_groups|candidate_(change_fraction|limit|stagnation_epochs)|output_(change_fraction|stagnation_epochs)|weight_multiplier|activation_(functions|steepnesses)|(m(?:ax|in))_(cand|out)_epochs)|callback|training_algorithm|train_(error|stop)_function|((?:in|out)put)_scaling_params|error_log|quickprop_(decay|mu)|weight(_array)?|learning_(momentum|rate)|bit_fail_limit|activation_(function|steepness)(_(hidden|layer|output))?|rprop_(((?:de|in)crease)_factor|delta_(max|min|zero)))|save(_train)?|num_((?:in|out)put)_train_data|copy|clear_scaling_params|cascadetrain_on_(file|data)|create_((s(?:parse|hortcut|tandard))(_array)?|train(_from_callback)?|from_file)|test(_data)?|train(_(on_(file|data)|epoch))?|init_weights|descale_(input|output|train)|destroy(_train)?|print_error|run|reset_(MSE|err(no|str))|read_train_from_file|randomize_weights|get_(sarprop_(step_error_(shift|threshold_factor)|temperature|weight_decay_shift)|num_(input|output|layers)|network_type|MSE|connection_(array|rate)|bias_array|bit_fail(_limit)?|cascade_(num_(candidate(?:s|_groups))|(candidate|output)_(change_fraction|limit|stagnation_epochs)|weight_multiplier|activation_(functions|steepnesses)(_count)?|(m(?:ax|in))_(cand|out)_epochs)|total_((?:connecti|neur)ons)|training_algorithm|train_(error|stop)_function|err(no|str)|quickprop_(decay|mu)|learning_(momentum|rate)|layer_array|activation_(function|steepness)|rprop_(((?:de|in)crease)_factor|delta_(max|min|zero))))\\\\b","name":"support.function.fann.php"},{"match":"(?i)\\\\b(symlink|stat|set_file_buffer|chown|chgrp|chmod|copy|clearstatcache|touch|tempnam|tmpfile|is_(dir|(uploaded_)?file|executable|link|readable|writ(e)?able)|disk_(free|total)_space|diskfreespace|dirname|delete|unlink|umask|pclose|popen|pathinfo|parse_ini_(file|string)|fscanf|fstat|fseek|fnmatch|fclose|ftell|ftruncate|file(size|[acm]time|type|inode|owner|perms|group)?|file_(exists|(get|put)_contents)|f(open|puts|putcsv|passthru|eof|flush|write|lock|read|gets(s)?|getc(sv)?)|lstat|lchown|lchgrp|link(info)?|rename|rewind|read(file|link)|realpath(_cache_(get|size))?|rmdir|glob|move_uploaded_file|mkdir|basename|f(data)?sync)\\\\b","name":"support.function.file.php"},{"match":"(?i)\\\\b(finfo_(set_flags|close|open|file|buffer)|mime_content_type)\\\\b","name":"support.function.fileinfo.php"},{"match":"(?i)\\\\bfilter_(has_var|input(_array)?|id|var(_array)?|list)\\\\b","name":"support.function.filter.php"},{"match":"(?i)\\\\b(f(?:astcgi_finish_request|pm_get_status))\\\\b","name":"support.function.fpm.php"},{"match":"(?i)\\\\b(call_user_(func|method)(_array)?|create_function|unregister_tick_function|forward_static_call(_array)?|function_exists|func_(num_args|get_arg(s)?)|register_(shutdown|tick)_function|get_defined_functions)\\\\b","name":"support.function.funchand.php"},{"match":"(?i)\\\\b((n)?gettext|textdomain|d((?:(n)?|c(n)?)gettext)|bind(textdomain|_textdomain_codeset))\\\\b","name":"support.function.gettext.php"},{"match":"(?i)\\\\bgmp_(scan[01]|strval|sign|sub|setbit|sqrt(rem)?|hamdist|neg|nextprime|com|clrbit|cmp|testbit|intval|init|invert|import|or|div(exact)?|div_(qr??|r)|jacobi|popcount|pow(m)?|perfect_(square|power)|prob_prime|export|fact|legendre|and|add|abs|root(rem)?|random(_(bits|range|seed))?|gcd(ext)?|xor|mod|mul|binomial|kronecker|lcm)\\\\b","name":"support.function.gmp.php"},{"match":"(?i)\\\\bhash(_(algos|copy|equals|file|final|hkdf|hmac(_(file|algos)?)?|init|pbkdf2|update(_(file|stream))?))?\\\\b","name":"support.function.hash.php"},{"match":"(?i)\\\\b(http_(support|send_(status|stream|content_(disposition|type)|data|file|last_modified)|head|negotiate_(charset|content_type|language)|chunked_decode|cache_(etag|last_modified)|throttle|inflate|deflate|date|post_(data|fields)|put_(data|file|stream)|persistent_handles_(count|clean|ident)|parse_(cookie|headers|message|params)|redirect|request(_(method_(exists|name|(un)?register)|body_encode))?|get(_request_(headers|body(_stream)?))?|match_(etag|modified|request_header)|build_(cookie|str|url))|ob_(etag|deflate|inflate)handler)\\\\b","name":"support.function.http.php"},{"match":"(?i)\\\\b(iconv(_(str(pos|len|rpos)|substr|[gs]et_encoding|mime_(decode(_headers)?|encode)))?|ob_iconv_handler)\\\\b","name":"support.function.iconv.php"},{"match":"(?i)\\\\biis_((st(?:art|op))_(serv(?:ice|er))|set_(script_map|server_rights|dir_security|app_settings)|(add|remove)_server|get_(script_map|service_state|server_(rights|by_(comment|path))|dir_security))\\\\b","name":"support.function.iisfunc.php"},{"match":"(?i)\\\\b(iptc(embed|parse)|(jpeg|png)2wbmp|gd_info|getimagesize(fromstring)?|image(s[xy]|scale|(char|string)(up)?|set(clip|style|thickness|tile|interpolation|pixel|brush)|savealpha|convolution|copy(resampled|resized|merge(gray)?)?|colors(forindex|total)|color(set|closest(alpha|hwb)?|transparent|deallocate|(allocate|exact|resolve)(alpha)?|at|match)|crop(auto)?|create(truecolor|from(avif|bmp|string|jpeg|png|wbmp|webp|gif|gd(2(part)?)?|tga|xpm|xbm))?|types|ttf(bbox|text)|truecolortopalette|istruecolor|interlace|2wbmp|destroy|dashedline|jpeg|_type_to_(extension|mime_type)|ps(slantfont|text|(encode|extend|free|load)font|bbox)|png|polygon|palette(copy|totruecolor)|ellipse|ft(text|bbox)|filter|fill|filltoborder|filled(arc|ellipse|polygon|rectangle)|font(height|width)|flip|webp|wbmp|line|loadfont|layereffect|antialias|affine(matrix(concat|get))?|alphablending|arc|rotate|rectangle|gif|gd2?|gammacorrect|grab(screen|window)|xbm|resolution|openpolygon|get(clip|interpolation)|avif|bmp))\\\\b","name":"support.function.image.php"},{"match":"(?i)\\\\b(sys_get_temp_dir|set_(time_limit|include_path|magic_quotes_runtime)|cli_[gs]et_process_title|ini_(alter|get(_all)?|restore|set)|zend_(thread_id|version|logo_guid)|dl|php(credits|info|version)|php_(sapi_name|ini_(scanned_files|loaded_file)|uname|logo_guid)|putenv|extension_loaded|version_compare|assert(_options)?|restore_include_path|gc_(collect_cycles|disable|enable(d)?)|getopt|get_(cfg_var|current_user|defined_constants|extension_funcs|include_path|included_files|loaded_extensions|magic_quotes_(gpc|runtime)|required_files|resources)|get(env|lastmod|rusage|my(inode|[gpu]id))|memory_get_(peak_)?usage|main|magic_quotes_runtime)\\\\b","name":"support.function.info.php"},{"match":"(?i)\\\\bibase_(set_event_handler|service_((?:at|de)tach)|server_info|num_(fields|params)|name_result|connect|commit(_ret)?|close|trans|delete_user|drop_db|db_info|pconnect|param_info|prepare|err(code|msg)|execute|query|field_info|fetch_(assoc|object|row)|free_(event_handler|query|result)|wait_event|add_user|affected_rows|rollback(_ret)?|restore|gen_id|modify_user|maintain_db|backup|blob_(cancel|close|create|import|info|open|echo|add|get))\\\\b","name":"support.function.interbase.php"},{"match":"(?i)\\\\b(normalizer_(normalize|is_normalized)|idn_to_(unicode|utf8|ascii)|numfmt_(set_(symbol|(text_)?attribute|pattern)|create|(parse|format)(_currency)?|get_(symbol|(text_)?attribute|pattern|error_(code|message)|locale))|collator_(sort(_with_sort_keys)?|set_(attribute|strength)|compare|create|asort|get_(strength|sort_key|error_(code|message)|locale|attribute))|transliterator_(create(_(inverse|from_rules))?|transliterate|list_ids|get_error_(code|message))|intl(cal|tz)_get_error_(code|message)|intl_(is_failure|error_name|get_error_(code|message))|datefmt_(set_(calendar|lenient|pattern|timezone(_id)?)|create|is_lenient|parse|format(_object)?|localtime|get_(calendar(_object)?|time(type|zone(_id)?)|datetype|pattern|error_(code|message)|locale))|locale_(set_default|compose|canonicalize|parse|filter_matches|lookup|accept_from_http|get_(script|display_(script|name|variant|language|region)|default|primary_language|keywords|all_variants|region))|resourcebundle_(create|count|locales|get(_(error_(code|message)))?)|grapheme_(str(i?str|r?i?pos|len|_split)|substr|extract)|msgfmt_(set_pattern|create|(format|parse)(_message)?|get_(pattern|error_(code|message)|locale)))\\\\b","name":"support.function.intl.php"},{"match":"(?i)\\\\bjson_(decode|encode|last_error(_msg)?|validate)\\\\b","name":"support.function.json.php"},{"match":"(?i)\\\\bldap_(start|tls|sort|search|sasl_bind|set_(option|rebind_proc)|(first|next)_(attribute|entry|reference)|connect|control_paged_result(_response)?|count_entries|compare|close|t61_to_8859|8859_to_t61|dn2ufn|delete|unbind|parse_(re(?:ference|sult))|escape|errno|err2str|error|explode_dn|bind|free_result|list|add|rename|read|get_(option|dn|entries|values(_len)?|attributes)|modify(_batch)?|mod_(add|del|replace))\\\\b","name":"support.function.ldap.php"},{"match":"(?i)\\\\blibxml_(set_(streams_context|external_entity_loader)|clear_errors|disable_entity_loader|use_internal_errors|get_(errors|last_error))\\\\b","name":"support.function.libxml.php"},{"match":"(?i)\\\\b(ezmlm_hash|mail)\\\\b","name":"support.function.mail.php"},{"match":"(?i)\\\\b(a?(cos|sin|tan)h?|sqrt|srand|hypot|hexdec|ceil|is_(nan|(in)?finite)|octdec|dec(hex|oct|bin)|deg2rad|pi|pow|exp(m1)?|floor|f(div|mod|pow)|lcg_value|log(1[0p])?|atan2|abs|round|rand|rad2deg|getrandmax|mt_(srand|rand|getrandmax)|max|min|bindec|base_convert|intdiv)\\\\b","name":"support.function.math.php"},{"match":"(?i)\\\\bmb_(str(cut|str|to(lower|upper)|istr|ipos|imwidth|pos|width|len|rchr|richr|ripos|rpos|_pad|_split)|substitute_character|substr(_count)?|split|send_mail|http_((?:in|out)put)|check_encoding|convert_(case|encoding|kana|variables)|internal_encoding|output_handler|decode_(numericentity|mimeheader)|detect_(encoding|order)|parse_str|preferred_mime_name|encoding_aliases|encode_(numericentity|mimeheader)|ereg(i(_replace)?)?|ereg_(search(_(get(pos|regs)|init|regs|(set)?pos))?|replace(_callback)?|match)|list_encodings|language|regex_(set_options|encoding)|get_info|[lr]?trim|[lu]cfirst|ord|chr|scrub)\\\\b","name":"support.function.mbstring.php"},{"match":"(?i)\\\\b(m(?:crypt_(cfb|create_iv|cbc|ofb|decrypt|encrypt|ecb|list_(algorithms|modes)|generic(_((de)?init|end))?|enc_(self_test|is_block_(algorithm|algorithm_mode|mode)|get_(supported_key_sizes|(block|iv|key)_size|(algorithms|modes)_name))|get_(cipher_name|(block|iv|key)_size)|module_(close|self_test|is_block_(algorithm|algorithm_mode|mode)|open|get_(supported_key_sizes|algo_(block|key)_size)))|decrypt_generic))\\\\b","name":"support.function.mcrypt.php"},{"match":"(?i)\\\\bmemcache_debug\\\\b","name":"support.function.memcache.php"},{"match":"(?i)\\\\bmhash(_(count|keygen_s2k|get_(hash_name|block_size)))?\\\\b","name":"support.function.mhash.php"},{"match":"(?i)\\\\b(log_(cmd_(insert|delete|update)|killcursor|write_batch|reply|getmore)|bson_((?:de|en)code))\\\\b","name":"support.function.mongo.php"},{"match":"(?i)\\\\bmysql_(stat|set_charset|select_db|num_(fields|rows)|connect|client_encoding|close|create_db|escape_string|thread_id|tablename|insert_id|info|data_seek|drop_db|db_(name|query)|unbuffered_query|pconnect|ping|errno|error|query|field_(seek|name|type|table|flags|len)|fetch_(object|field|lengths|assoc|array|row)|free_result|list_(tables|dbs|processes|fields)|affected_rows|result|real_escape_string|get_(client|host|proto|server)_info)\\\\b","name":"support.function.mysql.php"},{"match":"(?i)\\\\bmysqli_(ssl_set|store_result|stat|send_(query|long_data)|set_(charset|opt|local_infile_(default|handler))|stmt_(store_result|send_long_data|next_result|close|init|data_seek|prepare|execute|fetch|free_result|attr_[gs]et|result_metadata|reset|get_(result|warnings)|more_results|bind_(param|result))|select_db|slave_query|savepoint|next_result|change_user|character_set_name|connect|commit|client_encoding|close|thread_safe|init|options|((?:en|dis)able)_(r(?:eads_from_master|pl_parse))|dump_debug_info|debug|data_seek|use_result|ping|poll|param_count|prepare|escape_string|execute|embedded_server_(start|end)|kill|query|field_seek|free_result|autocommit|rollback|report|refresh|fetch(_(object|fields|field(_direct)?|assoc|all|array|row))?|rpl_(parse_enabled|probe|query_type)|release_savepoint|reap_async_query|real_(connect|escape_string|query)|more_results|multi_query|get_(charset|connection_stats|client_(stats|info|version)|cache_stats|warnings|links_stats|metadata)|master_query|bind_(param|result)|begin_transaction)\\\\b","name":"support.function.mysqli.php"},{"match":"(?i)\\\\bmysqlnd_memcache_(set|get_config)\\\\b","name":"support.function.mysqlnd-memcache.php"},{"match":"(?i)\\\\bmysqlnd_ms_(set_(user_pick_server|qos)|dump_servers|query_is_select|fabric_select_(shard|global)|get_(stats|last_(used_connection|gtid))|xa_(commit|rollback|gc|begin)|match_wild)\\\\b","name":"support.function.mysqlnd-ms.php"},{"match":"(?i)\\\\bmysqlnd_qc_(set_(storage_handler|cache_condition|is_select|user_handlers)|clear_cache|get_(normalized_query_trace_log|core_stats|cache_info|query_trace_log|available_handlers))\\\\b","name":"support.function.mysqlnd-qc.php"},{"match":"(?i)\\\\bmysqlnd_uh_(set_(statement|connection)_proxy|convert_to_mysqlnd)\\\\b","name":"support.function.mysqlnd-uh.php"},{"match":"(?i)\\\\b(syslog|socket_(set_(blocking|timeout)|get_status)|set(raw)?cookie|http_response_code|openlog|headers_(list|sent)|header(_(re(?:gister_callback|move)))?|checkdnsrr|closelog|inet_(ntop|pton)|ip2long|openlog|dns_(check_record|get_(record|mx))|define_syslog_variables|(p)?fsockopen|long2ip|get(servby(name|port)|host(name|by(name(l)?|addr))|protoby(n(?:ame|umber))|mxrr)|http_(clear|get)_last_response_headers|net_get_interfaces|request_parse_body)\\\\b","name":"support.function.network.php"},{"match":"(?i)\\\\bnsapi_(virtual|response_headers|request_headers)\\\\b","name":"support.function.nsapi.php"},{"match":"(?i)\\\\b(oci(?:(statementtype|setprefetch|serverversion|savelob(file)?|numcols|new(collection|cursor|descriptor)|nlogon|column(scale|size|name|type(raw)?|isnull|precision)|coll(size|trim|assign(elem)?|append|getelem|max)|commit|closelob|cancel|internaldebug|definebyname|plogon|parse|error|execute|fetch(statement|into)?|free(statement|collection|cursor|desc)|write(temporarylob|lobtofile)|loadlob|log(o(?:n|ff))|rowcount|rollback|result|bindbyname)|_(statement_type|set_(client_(i(?:nfo|dentifier))|prefetch|edition|action|module_name)|server_version|num_(fields|rows)|new_(connect|collection|cursor|descriptor)|connect|commit|client_version|close|cancel|internal_debug|define_by_name|pconnect|password_change|parse|error|execute|bind_(array_)?by_name|field_(scale|size|name|type(_raw)?|is_null|precision)|fetch(_(object|assoc|all|array|row))?|free_(statement|descriptor)|lob_(copy|is_equal)|rollback|result|get_implicit_resultset)))\\\\b","name":"support.function.oci8.php"},{"match":"(?i)\\\\bopcache_(compile_file|invalidate|is_script_cached|reset|get_(status|configuration))\\\\b","name":"support.function.opcache.php"},{"match":"(?i)\\\\bopenssl_(sign|spki_(new|export(_challenge)?|verify)|seal|csr_(sign|new|export(_to_file)?|get_(subject|public_key))|cipher_(iv|key)_length|open|dh_compute_key|digest|decrypt|public_((?:de|en)crypt)|encrypt|error_string|pkcs12_(export(_to_file)?|read)|(cms|pkcs7)_(sign|decrypt|encrypt|verify|read)|verify|free_key|random_pseudo_bytes|pkey_(derive|new|export(_to_file)?|free|get_(details|public|private))|private_((?:de|en)crypt)|pbkdf2|get_((cipher|md)_methods|cert_locations|curve_names|(p(?:ublic|rivate))key)|x509_(check_private_key|checkpurpose|parse|export(_to_file)?|fingerprint|free|read|verify))\\\\b","name":"support.function.openssl.php"},{"match":"(?i)\\\\b(output_(add_rewrite_var|reset_rewrite_vars)|flush|ob_(start|clean|implicit_flush|end_(clean|flush)|flush|list_handlers|gzhandler|get_(status|contents|clean|flush|length|level)))\\\\b","name":"support.function.output.php"},{"match":"(?i)\\\\bpassword_(algos|hash|needs_rehash|verify|get_info)\\\\b","name":"support.function.password.php"},{"match":"(?i)\\\\bpcntl_(alarm|async_signals|errno|exec|r?fork|get_last_error|[gs]et((?:cpuaffin|prior)ity)|signal(_(dispatch|get_handler))?|sig(procmask|timedwait|waitinfo)|strerror|unshare|wait(p?id)?|wexitstatus|wif((?:exit|signal|stopp)ed)|w(stop|term)sig)\\\\b","name":"support.function.pcntl.php"},{"match":"(?i)\\\\bpg_(socket|send_(prepare|execute|query(_params)?)|set_(client_encoding|error_verbosity)|select|host|num_(fields|rows)|consume_input|connection_(status|reset|busy)|connect(_poll)?|convert|copy_(from|to)|client_encoding|close|cancel_query|tty|transaction_status|trace|insert|options|delete|dbname|untrace|unescape_bytea|update|pconnect|ping|port|put_line|parameter_status|prepare|version|query(_params)?|escape_(string|identifier|literal|bytea)|end_copy|execute|flush|free_result|last_(notice|error|oid)|field_(size|num|name|type(_oid)?|table|is_null|prtlen)|affected_rows|result_(status|seek|error(_field)?)|fetch_(object|assoc|all(_columns)?|array|row|result)|get_(notify|pid|result)|meta_data|lo_(seek|close|create|tell|truncate|import|open|unlink|export|write|read(_all)?)|)\\\\b","name":"support.function.pgsql.php"},{"match":"(?i)\\\\b(virtual|getallheaders|apache_([gs]etenv|note|child_terminate|lookup_uri|response_headers|reset_timeout|request_headers|get_(version|modules)))\\\\b","name":"support.function.php_apache.php"},{"match":"(?i)\\\\bdom_import_simplexml\\\\b","name":"support.function.php_dom.php"},{"match":"(?i)\\\\bftp_(ssl_connect|systype|site|size|set_option|nlist|nb_(continue|f?(put|get))|ch(dir|mod)|connect|cdup|close|delete|put|pwd|pasv|exec|quit|f(put|get)|login|alloc|rename|raw(list)?|rmdir|get(_option)?|mdtm|mkdir)\\\\b","name":"support.function.php_ftp.php"},{"match":"(?i)\\\\bimap_((create|delete|list|rename|scan)(mailbox)?|status|sort|subscribe|set_quota|set(flag_full|acl)|search|savebody|num_(recent|msg)|check|close|clearflag_full|thread|timeout|open|header(info)?|headers|append|alerts|reopen|8bit|unsubscribe|undelete|utf7_((?:de|en)code)|utf8|uid|ping|errors|expunge|qprint|gc|fetch(structure|header|text|mime|body)|fetch_overview|lsub|list(s(?:can|ubscribed))|last_error|rfc822_(parse_(headers|adrlist)|write_address)|get(subscribed|acl|mailboxes)|get_quota(root)?|msgno|mime_header_decode|mail_(copy|compose|move)|mail|mailboxmsginfo|binary|body(struct)?|base64)\\\\b","name":"support.function.php_imap.php"},{"match":"(?i)\\\\bmssql_(select_db|num_(fields|rows)|next_result|connect|close|init|data_seek|pconnect|execute|query|field_(seek|name|type|length)|fetch_(object|field|assoc|array|row|batch)|free_(statement|result)|rows_affected|result|guid_string|get_last_message|min_(error|message)_severity|bind)\\\\b","name":"support.function.php_mssql.php"},{"match":"(?i)\\\\bodbc_(statistics|specialcolumns|setoption|num_(fields|rows)|next_result|connect|columns|columnprivileges|commit|cursor|close(_all)?|tables|tableprivileges|do|data_source|pconnect|primarykeys|procedures|procedurecolumns|prepare|error(msg)?|exec(ute)?|field_(scale|num|name|type|precision|len)|foreignkeys|free_result|fetch_(into|object|array|row)|longreadlen|autocommit|rollback|result(_all)?|gettypeinfo|binmode)\\\\b","name":"support.function.php_odbc.php"},{"match":"(?i)\\\\bpreg_(split|quote|filter|last_error(_msg)?|replace(_callback(_array)?)?|grep|match(_all)?)\\\\b","name":"support.function.php_pcre.php"},{"match":"(?i)\\\\b(spl_(classes|object_hash|autoload(_(call|unregister|extensions|functions|register))?)|class_(implements|uses|parents)|iterator_(count|to_array|apply))\\\\b","name":"support.function.php_spl.php"},{"match":"(?i)\\\\bzip_(close|open|entry_(name|compressionmethod|compressedsize|close|open|filesize|read)|read)\\\\b","name":"support.function.php_zip.php"},{"match":"(?i)\\\\bposix_(strerror|set(s|e?u|[ep]?g)id|ctermid|ttyname|times|isatty|initgroups|uname|errno|kill|e?access|get(sid|cwd|uid|pid|ppid|pwnam|pwuid|pgid|pgrp|euid|egid|login|rlimit|gid|grnam|groups|grgid)|get_last_error|mknod|mkfifo|(sys|f?path)conf|setrlimit)\\\\b","name":"support.function.posix.php"},{"match":"(?i)\\\\bset(thread|proc)title\\\\b","name":"support.function.proctitle.php"},{"match":"(?i)\\\\bpspell_(store_replacement|suggest|save_wordlist|new(_(config|personal))?|check|clear_session|config_(save_repl|create|ignore|(d(?:ata|ict))_dir|personal|runtogether|repl|mode)|add_to_(session|personal))\\\\b","name":"support.function.pspell.php"},{"match":"(?i)\\\\breadline(_(completion_function|clear_history|callback_(handler_(install|remove)|read_char)|info|on_new_line|write_history|list_history|add_history|redisplay|read_history))?\\\\b","name":"support.function.readline.php"},{"match":"(?i)\\\\brecode(_(string|file))?\\\\b","name":"support.function.recode.php"},{"match":"(?i)\\\\brrd(c_disconnect|_(create|tune|info|update|error|version|first|fetch|last(update)?|restore|graph|xport))\\\\b","name":"support.function.rrd.php"},{"match":"(?i)\\\\b(shm_((get|has|remove|put)_var|detach|attach|remove)|sem_(acquire|release|remove|get)|ftok|msg_((get|remove|set|stat)_queue|send|queue_exists|receive))\\\\b","name":"support.function.sem.php"},{"match":"(?i)\\\\bsession_(status|start|set_(save_handler|cookie_params)|save_path|name|commit|cache_(expire|limiter)|is_registered|id|destroy|decode|unset|unregister|encode|write_close|abort|reset|register(_shutdown)?|((?:regener|cre)ate)_id|get_cookie_params|module_name|gc)\\\\b","name":"support.function.session.php"},{"match":"(?i)\\\\bshmop_(size|close|open|delete|write|read)\\\\b","name":"support.function.shmop.php"},{"match":"(?i)\\\\bsimplexml_(import_dom|load_(string|file))\\\\b","name":"support.function.simplexml.php"},{"match":"(?i)\\\\b(snmp(?:(walk(oid)?|realwalk|get(next)?|set)|_(set_(valueretrieval|quick_print|enum_print|oid_(numeric_print|output_format))|read_mib|get_(valueretrieval|quick_print))|[23]_(set|walk|real_walk|get(next)?)))\\\\b","name":"support.function.snmp.php"},{"match":"(?i)\\\\b(is_soap_fault|use_soap_error_handler)\\\\b","name":"support.function.soap.php"},{"match":"(?i)\\\\bsocket_(accept|addrinfo_(bind|connect|explain|lookup)|atmark|bind|(clear|last)_error|close|cmsg_space|connect|create(_(listen|pair))?|(ex|im)port_stream|[gs]et_option|[gs]etopt|get(peer|sock)name|listen|read|recv(from|msg)?|select|send(msg|to)?|set_(non)?block|shutdown|strerror|write|wsaprotocol_info_(export|import|release))\\\\b","name":"support.function.sockets.php"},{"match":"(?i)\\\\bsqlite_(single_query|seek|has_(more|prev)|num_(fields|rows)|next|changes|column|current|close|create_(aggregate|function)|open|unbuffered_query|udf_((?:de|en)code)_binary|popen|prev|escape_string|error_string|exec|valid|key|query|field_name|factory|fetch_(string|single|column_types|object|all|array)|lib(encoding|version)|last_(insert_rowid|error)|array_query|rewind|busy_timeout)\\\\b","name":"support.function.sqlite.php"},{"match":"(?i)\\\\bsqlsrv_(send_stream_data|server_info|has_rows|num_(fields|rows)|next_result|connect|configure|commit|client_info|close|cancel|prepare|errors|execute|query|field_metadata|fetch(_(array|object))?|free_stmt|rows_affected|rollback|get_(config|field)|begin_transaction)\\\\b","name":"support.function.sqlsrv.php"},{"match":"(?i)\\\\bstats_(harmonic_mean|covariance|standard_deviation|skew|cdf_(noncentral_(chisquare|f)|negative_binomial|chisquare|cauchy|t|uniform|poisson|exponential|f|weibull|logistic|laplace|gamma|binomial|beta)|stat_(noncentral_t|correlation|innerproduct|independent_t|powersum|percentile|paired_t|gennch|binomial_coef)|dens_(normal|negative_binomial|chisquare|cauchy|t|pmf_(hypergeometric|poisson|binomial)|exponential|f|weibull|logistic|laplace|gamma|beta)|den_uniform|variance|kurtosis|absolute_deviation|rand_(setall|phrase_to_seeds|ranf|get_seeds|gen_(noncentral_[ft]|noncenral_chisquare|normal|chisquare|t|int|i(uniform|poisson|binomial(_negative)?)|exponential|f(uniform)?|gamma|beta)))\\\\b","name":"support.function.stats.php"},{"match":"(?i)\\\\bstream_(bucket_(new|prepend|append|make_writeable)|context_(create|[gs]et_(options?|default|params))|copy_to_stream|filter_((ap|pre)pend|register|remove)|get_(contents|filters|line|meta_data|transports|wrappers)|is(atty|_local)|notification_callback|register_wrapper|resolve_include_path|select|set_(blocking|chunk_size|(read|write)_buffer|timeout)|socket_(accept|client|enable_crypto|get_name|pair|recvfrom|sendto|server|shutdown)|supports_lock|wrapper_((un)?register|restore))\\\\b","name":"support.function.streamsfuncs.php"},{"match":"(?i)\\\\b(money_format|md5(_file)?|metaphone|bin2hex|sscanf|sha1(_file)?|str(str|c?spn|n(at)?(case)?cmp|chr|coll|(case)?cmp|to(upper|lower)|tok|tr|istr|pos|pbrk|len|rchr|ri?pos|rev)|str_(getcsv|i?replace|pad|repeat|rot13|shuffle|split|word_count|contains|(starts|ends)_with|(in|de)crement)|strip(c?slashes|os)|strip_tags|similar_text|soundex|substr(_(count|compare|replace))?|setlocale|html(specialchars(_decode)?|entities)|html_entity_decode|hex2bin|hebrev(c)?|number_format|nl2br|nl_langinfo|chop|chunk_split|chr|convert_(cyr_string|uu((?:de|en)code))|count_chars|crypt|crc32|trim|implode|ord|uc(first|words)|join|parse_str|print(f)?|echo|explode|v?[fs]?printf|quoted_printable_((?:de|en)code)|quotemeta|wordwrap|lcfirst|[lr]trim|localeconv|levenshtein|addc?slashes|get_html_translation_table)\\\\b","name":"support.function.string.php"},{"match":"(?i)\\\\bsybase_(set_message_handler|select_db|num_(fields|rows)|connect|close|deadlock_retry_count|data_seek|unbuffered_query|pconnect|query|field_seek|fetch_(object|field|assoc|array|row)|free_result|affected_rows|result|get_last_message|min_(client|error|message|server)_severity)\\\\b","name":"support.function.sybase.php"},{"match":"(?i)\\\\b(taint|is_tainted|untaint)\\\\b","name":"support.function.taint.php"},{"match":"(?i)\\\\b(tidy_([gs]etopt|set_encoding|save_config|config_count|clean_repair|is_(x(?:html|ml))|diagnose|(access|error|warning)_count|load_config|reset_config|(parse|repair)_(string|file)|get_(status|html(_ver)?|head|config|output|opt_doc|root|release|body))|ob_tidyhandler)\\\\b","name":"support.function.tidy.php"},{"match":"(?i)\\\\btoken_(name|get_all)\\\\b","name":"support.function.tokenizer.php"},{"match":"(?i)\\\\btrader_(stoch([fr]|rsi)?|stddev|sin(h)?|sum|sub|set_(compat|unstable_period)|sqrt|sar(ext)?|sma|ht_(sine|trend(line|mode)|dc(p(?:eriod|hase))|phasor)|natr|cci|cos(h)?|correl|cdl(shootingstar|shortline|sticksandwich|stalledpattern|spinningtop|separatinglines|hikkake(mod)?|highwave|homingpigeon|hangingman|harami(cross)?|hammer|concealbabyswall|counterattack|closingmarubozu|thrusting|tasukigap|takuri|tristar|inneck|invertedhammer|identical3crows|2crows|onneck|doji(star)?|darkcloudcover|dragonflydoji|unique3river|upsidegap2crows|3(starsinsouth|inside|outside|whitesoldiers|linestrike|blackcrows)|piercing|engulfing|evening(doji)?star|kicking(bylength)?|longline|longleggeddoji|ladderbottom|advanceblock|abandonedbaby|risefall3methods|rickshawman|gapsidesidewhite|gravestonedoji|xsidegap3methods|morning(doji)?star|mathold|matchinglow|marubozu|belthold|breakaway)|ceil|cmo|tsf|typprice|t3|tema|tan(h)?|trix|trima|trange|obv|div|dema|dx|ultosc|ppo|plus_d[im]|errno|exp|ema|var|kama|floor|wclprice|willr|wma|ln|log10|bop|beta|bbands|linearreg(_(slope|intercept|angle))?|asin|acos|atan|atr|adosc|add??|adx(r)?|apo|avgprice|aroon(osc)?|rsi|rocp??|rocr(100)?|get_(compat|unstable_period)|min(index)?|minus_d[im]|minmax(index)?|mid(p(?:oint|rice))|mom|mult|medprice|mfi|macd(ext|fix)?|mavp|max(index)?|ma(ma)?)\\\\b","name":"support.function.trader.php"},{"match":"(?i)\\\\buopz_(copy|compose|implement|overload|delete|undefine|extend|function|flags|restore|rename|redefine|backup)\\\\b","name":"support.function.uopz.php"},{"match":"(?i)\\\\b(http_build_query|(raw)?url((?:de|en)code)|parse_url|get_(headers|meta_tags)|base64_((?:de|en)code))\\\\b","name":"support.function.url.php"},{"match":"(?i)\\\\b((bool|double|float|int|str)val|debug_zval_dump|empty|get_(debug_type|defined_vars|resource_(id|type))|[gs]ettype|is_(array|bool|callable|countable|double|float|int(eger)?|iterable|long|null|numeric|object|real|resource|scalar|string)|isset|print_r|(un)?serialize|unset|var_(dump|export))\\\\b","name":"support.function.var.php"},{"match":"(?i)\\\\bwddx_(serialize_(va(?:lue|rs))|deserialize|packet_(start|end)|add_vars)\\\\b","name":"support.function.wddx.php"},{"match":"(?i)\\\\bxhprof_(sample_)?((?:dis|en)able)\\\\b","name":"support.function.xhprof.php"},{"match":"(?i)\\\\b(utf8_((?:de|en)code)|xml_(set_((notation|(end|start)_namespace|unparsed_entity)_decl_handler|(character_data|default|element|external_entity_ref|processing_instruction)_handler|object)|parse(_into_struct)?|parser_([gs]et_option|create(_ns)?|free)|error_string|get_(current_((column|line)_number|byte_index)|error_code)))\\\\b","name":"support.function.xml.php"},{"match":"(?i)\\\\bxmlrpc_(server_(call_method|create|destroy|add_introspection_data|register_(introspection_callback|method))|is_fault|decode(_request)?|parse_method_descriptions|encode(_request)?|[gs]et_type)\\\\b","name":"support.function.xmlrpc.php"},{"match":"(?i)\\\\bxmlwriter_((end|start|write)_(comment|cdata|dtd(_(attlist|entity|element))?|document|pi|attribute|element)|(start|write)_(attribute|element)_ns|write_raw|set_indent(_string)?|text|output_memory|open_(memory|uri)|full_end_element|flush|)\\\\b","name":"support.function.xmlwriter.php"},{"match":"(?i)\\\\b(zlib_(decode|encode|get_coding_type)|readgzfile|gz(seek|compress|close|tell|inflate|open|decode|deflate|uncompress|puts|passthru|encode|eof|file|write|rewind|read|getc|getss?)|deflate_(add|init)|inflate_(add|get_(read_len|status)|init))\\\\b","name":"support.function.zlib.php"}]},"switch_statement":{"patterns":[{"match":"\\\\s+(?=switch\\\\b)"},{"begin":"\\\\bswitch\\\\b(?!\\\\s*\\\\(.*\\\\)\\\\s*:)","beginCaptures":{"0":{"name":"keyword.control.switch.php"}},"end":"}|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.section.switch-block.end.bracket.curly.php"}},"name":"meta.switch-statement.php","patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.switch-expression.begin.bracket.round.php"}},"end":"\\\\)|(?=\\\\?>)","endCaptures":{"0":{"name":"punctuation.definition.switch-expression.end.bracket.round.php"}},"patterns":[{"include":"$self"}]},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.section.switch-block.begin.bracket.curly.php"}},"end":"(?=}|\\\\?>)","patterns":[{"include":"$self"}]}]}]},"ternary_expression":{"begin":"\\\\?","beginCaptures":{"0":{"name":"keyword.operator.ternary.php"}},"end":"(?<!:):(?!:)","endCaptures":{"0":{"name":"keyword.operator.ternary.php"}},"patterns":[{"captures":{"1":{"patterns":[{"include":"$self"}]}},"match":"(?i)^\\\\s*([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)\\\\s*(?=:(?!:))"},{"include":"$self"}]},"ternary_shorthand":{"match":"\\\\?:","name":"keyword.operator.ternary.php"},"use-inner":{"patterns":[{"include":"#comments"},{"begin":"(?i)\\\\b(as)\\\\s+","beginCaptures":{"1":{"name":"keyword.other.use-as.php"}},"end":"(?i)[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*","endCaptures":{"0":{"name":"entity.other.alias.php"}}},{"include":"#class-name"},{"match":",","name":"punctuation.separator.delimiter.php"}]},"var_basic":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.variable.php"}},"match":"(?i)(\\\\$+)[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*","name":"variable.other.php"}]},"var_global":{"captures":{"1":{"name":"punctuation.definition.variable.php"}},"match":"(\\\\$)((_(COOKIE|FILES|GET|POST|REQUEST))|arg([cv]))\\\\b","name":"variable.other.global.php"},"var_global_safer":{"captures":{"1":{"name":"punctuation.definition.variable.php"}},"match":"(\\\\$)((GLOBALS|_(ENV|SERVER|SESSION)))","name":"variable.other.global.safer.php"},"var_language":{"captures":{"1":{"name":"punctuation.definition.variable.php"}},"match":"(\\\\$)this\\\\b","name":"variable.language.this.php"},"variable-name":{"patterns":[{"include":"#var_global"},{"include":"#var_global_safer"},{"captures":{"1":{"name":"variable.other.php"},"2":{"name":"punctuation.definition.variable.php"},"4":{"name":"keyword.operator.class.php"},"5":{"name":"variable.other.property.php"},"6":{"name":"punctuation.section.array.begin.php"},"7":{"name":"constant.numeric.index.php"},"8":{"name":"variable.other.index.php"},"9":{"name":"punctuation.definition.variable.php"},"10":{"name":"string.unquoted.index.php"},"11":{"name":"punctuation.section.array.end.php"}},"match":"(?i)((\\\\$)(?<name>[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*))\\\\s*(?:(\\\\??->)\\\\s*(\\\\g<name>)|(\\\\[)(?:(\\\\d+)|((\\\\$)\\\\g<name>)|([_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*))(]))?"},{"captures":{"1":{"name":"variable.other.php"},"2":{"name":"punctuation.definition.variable.php"},"4":{"name":"punctuation.definition.variable.php"}},"match":"(?i)((\\\\$\\\\{)(?<name>[_a-z\\\\x7F-\\\\x{10FFFF}][0-9_a-z\\\\x7F-\\\\x{10FFFF}]*)(}))"}]},"variables":{"patterns":[{"include":"#var_language"},{"include":"#var_global"},{"include":"#var_global_safer"},{"include":"#var_basic"},{"begin":"\\\\$\\\\{(?=.*?})","beginCaptures":{"0":{"name":"punctuation.definition.variable.php"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.variable.php"}},"patterns":[{"include":"$self"}]}]}},"scopeName":"source.php","embeddedLangs":["html","xml","sql","javascript","json","css"]}')),t=[...Xn,...Kn,...Zn,...st,...fi,...Et,e];export{t as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{h,o,ee,i,a,v,t,n,_,zt,er,ze,Nn,Ue,dn,Re,re}from"./chunk-vt40e1kp.js";var M=[{label:"每天 9:00",cron:"0 9 * * *"},{label:"每个工作日 9:00",cron:"0 9 * * 1-5"},{label:"每周一 9:00",cron:"0 9 * * 1"},{label:"每小时",cron:"0 * * * *"},{label:"每天 18:00",cron:"0 18 * * *"},{label:"每月 1 号 9:00",cron:"0 9 1 * *"}],ae=["日","一","二","三","四","五","六","日"],ie=(r)=>r.padStart(2,"0");function Q(r){let p=M.find((I)=>I.cron===r.trim());if(p)return p.label;let N=r.trim().split(/\s+/);if(N.length!==5)return r;let[u="",y="",b="",D="",c=""]=N,C=(I)=>/^\d+$/.test(I);if(D!=="*")return r;if(C(u)&&y==="*"&&b==="*"&&c==="*")return`每小时第 ${u} 分`;let P=u.match(/^\*\/(\d+)$/);if(P&&y==="*"&&b==="*"&&c==="*")return`每 ${P[1]} 分钟`;if(!C(u)||!C(y))return r;let m=`${y}:${ie(u)}`;if(b==="*"&&c==="*")return`每天 ${m}`;if(b==="*"&&c==="1-5")return`每个工作日 ${m}`;if(b==="*"&&/^[0-7](,[0-7])*$/.test(c))return`每周${c.split(",").map((I)=>ae[Number(I)]).join("、")} ${m}`;if(C(b)&&c==="*")return`每月 ${b} 号 ${m}`;return r}function X(r){let p=Date.now()-r,N=Math.floor(Math.abs(p)/1000);if(N<60)return"刚刚";let u=Math.floor(N/60);if(u<60)return`${u} 分钟${p>0?"前":"后"}`;let y=Math.floor(u/60);if(y<24)return`${y} 小时${p>0?"前":"后"}`;return`${Math.floor(y/24)} 天${p>0?"前":"后"}`}function ge(r){let{Button:p,confirm:N,PageLayout:u,Switch:y,cn:b,style:D}=_(),{connection:c,onOpen:C}=r,[P,m]=a([]),[I,J]=a([]),[T,U]=a([]),[j,R]=a(),[B,V]=a([]),[F,W]=a(!0),[O,w]=a(),[z,L]=a(),[K,A]=a(!1),[Y,f]=a({}),s=i(0),q=h(async()=>{let e=++s.current;try{let[l,d,g,x]=await Promise.all([c.request("/api/automations"),c.request("/api/projects").catch(()=>[]),c.request("/api/info").catch(()=>{return}),c.request("/api/models").catch(()=>({models:[]}))]),oe=[...new Set(l.flatMap((S)=>S.lastSessionID?[S.lastSessionID]:[]))],se=(await Promise.all(oe.map(async(S)=>c.request(`/api/sessions/${encodeURIComponent(S)}`).catch((k)=>{if(k instanceof Error&&"status"in k&&k.status===404)return;throw k})))).filter((S)=>S!==void 0);if(e!==s.current)return;if(m(l.sort((S,k)=>S.created-k.created)),J(d),U(se),R(g),x?.models)V(x.models.map((S)=>S.id));w(void 0)}catch(l){if(e===s.current)w(l instanceof Error?l.message:"加载失败")}finally{if(e===s.current)W(!1)}},[c]);o(()=>(q(),()=>{s.current++}),[q]);let E=(e)=>{L(e),A(!0)},Z=async(e)=>{f((l)=>({...l,[e.id]:!0}));try{let l=await c.request(`/api/automations/${e.id}/run`,{method:"POST"});C(l.id)}catch(l){w(l instanceof Error?l.message:"运行失败")}finally{f((l)=>({...l,[e.id]:!1}))}},te=async(e)=>{if(!await N({title:`删除自动化「${e.name}」?`,description:"已经跑出来的会话会保留。",action:"删除",danger:!0}))return;try{await c.request(`/api/automations/${e.id}`,{method:"DELETE"}),m((d)=>d.filter((g)=>g.id!==e.id))}catch(d){w(d instanceof Error?d.message:"删除失败")}},ne=async(e,l)=>{try{let d=await c.request(`/api/automations/${e.id}`,{method:"PATCH",headers:{"content-type":"application/json"},body:JSON.stringify({enabled:l})});m((g)=>g.map((x)=>x.id===e.id?d:x))}catch(d){w(d instanceof Error?d.message:"状态切换失败")}};return n(u,{title:"自动化",description:n(v,{children:["到点自动开一个新会话执行提示词,跑完的结果在会话里查看。",j?.timezone&&n("span",{className:"text-faint",children:["按服务器时区 ",j.timezone,"。"]})]}),actions:n(p,{variant:"primary",onClick:()=>E(null),children:[t(Re,{className:"size-4"}),"新建"]}),children:[O&&t("div",{className:"mb-4 rounded-lg bg-danger/10 px-3 py-2 text-xs text-danger",children:O}),F?t("div",{className:"flex justify-center py-12 text-xs text-faint",children:"正在加载自动化…"}):P.length===0?n("div",{className:D("surface.emptyDashed","animate-fade"),children:[t("div",{className:"grid size-11 place-items-center rounded-xl bg-raised text-dim",children:t(zt,{className:"size-5"})}),n("div",{children:[t("p",{className:"text-[15px] font-medium",children:"还没有自动化"}),t("p",{className:"mt-1 text-sm text-dim",children:"比如「每个工作日 9 点总结昨天的提交」。"})]}),n(p,{size:"sm",onClick:()=>E(null),className:"mt-1",children:[t(Re,{className:"size-3.5"}),"新建自动化"]})]}):t("ul",{className:"flex animate-fade flex-col gap-3",children:P.map((e)=>{let l=e.projectID?I.find((x)=>x.id===e.projectID):void 0,d=e.lastSessionID?T.find((x)=>x.id===e.lastSessionID):void 0,g=Boolean(Y[e.id]);return t("li",{children:n("article",{className:D("surface.card","group p-4 transition-[border-color,box-shadow] duration-200 hover:border-line-strong hover:shadow-composer"),children:[n("div",{className:"flex items-start gap-3",children:[n("div",{className:b("min-w-0 flex-1 transition-opacity duration-200",!e.enabled&&"opacity-55"),children:[t("h2",{className:"truncate text-[15px] font-medium",children:e.name}),n("div",{className:"mt-1 flex flex-wrap items-center gap-x-3.5 gap-y-1 text-[13px] text-dim",children:[n("span",{className:"flex items-center gap-1.5 [&_svg]:size-3.5 [&_svg]:text-faint",children:[t(zt,{}),Q(e.schedule)]}),n("span",{className:"flex items-center gap-1.5 [&_svg]:size-3.5 [&_svg]:text-faint",children:[l?t(ze,{}):t(Nn,{}),l?l.name:"聊天"]}),e.enabled&&e.nextRun!==null&&n("span",{className:"flex items-center gap-1.5 [&_svg]:size-3.5 [&_svg]:text-faint",children:[t(er,{}),"下次 ",X(e.nextRun)]})]})]}),t(y,{checked:e.enabled,label:e.enabled?"停用":"启用",onCheckedChange:(x)=>ne(e,x),className:"mt-0.5"})]}),t("p",{className:b("mt-3 line-clamp-2 text-sm leading-6 whitespace-pre-wrap text-faint transition-opacity duration-200",!e.enabled&&"opacity-55"),children:e.prompt}),n("div",{className:"mt-3 -mb-1 flex items-center gap-1",children:[n(p,{size:"sm",onClick:()=>Z(e),disabled:g,children:[t(dn,{className:"size-3.5"}),g?"正在启动…":"立即运行"]}),n(p,{size:"sm",variant:"ghost",onClick:()=>E(e),children:[t(Ue,{className:"size-3.5"}),"编辑"]}),n(p,{size:"sm",variant:"danger-ghost",onClick:()=>te(e),children:[t(re,{className:"size-3.5"}),"删除"]}),t("div",{className:"flex-1"}),e.lastRun!==null&&n("button",{type:"button",disabled:!d,onClick:()=>d&&C(d.id),className:"rounded-md px-1.5 py-1 text-[13px] text-faint transition-colors enabled:hover:bg-raised enabled:hover:text-ink",children:["上次运行 ",X(e.lastRun),d?.archivedAt!=null?" · 已归档":"",!d?" · 会话已删除":""]})]})]})},e.id)})}),z!==void 0&&t(le,{open:K,onOpenChange:A,automation:z??void 0,projects:I,models:B,timezone:j?.timezone,onSaved:(e)=>{m((l)=>{let d=l.findIndex((g)=>g.id===e.id);if(d>=0){let g=[...l];return g[d]=e,g}return[...l,e].sort((g,x)=>g.created-x.created)}),A(!1)},connection:c},z?.id??"new")]})}var H="custom",G="chat";function le(r){let{Button:p,Dialog:N,Field:u,Form:y,FormError:b,Input:D,Select:c,Textarea:C}=_(),P=ee(),m=r.automation,[I,J]=a(m?.name??""),[T,U]=a(m?.prompt??""),[j,R]=a(m?.schedule??M[0]?.cron??"0 9 * * *"),[B,V]=a(()=>!M.some((f)=>f.cron===j)),[F,W]=a(m?.projectID??G),[O,w]=a(m?.model??""),[z,L]=a(!1),[K,A]=a();async function Y(f){f.preventDefault(),L(!0),A(void 0);try{let s=F===G?void 0:F,q={name:I,prompt:T,schedule:j,model:O||void 0},E;if(m)E=await r.connection.request(`/api/automations/${m.id}`,{method:"PATCH",headers:{"content-type":"application/json"},body:JSON.stringify({...q,projectID:s??null})});else E=await r.connection.request("/api/automations",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({...q,projectID:s})});r.onSaved(E)}catch(s){A(s instanceof Error?s.message:"保存失败")}finally{L(!1)}}return t(N,{open:r.open,onOpenChange:r.onOpenChange,title:r.automation?"编辑自动化":"新建自动化",size:"lg",footer:n(v,{children:[t("div",{className:"flex-1 max-sm:hidden"}),t(p,{onClick:()=>r.onOpenChange(!1),children:"取消"}),t(p,{type:"submit",form:P,variant:"primary",disabled:z,children:z?"正在保存…":r.automation?"保存":"创建"})]}),children:n(y,{id:P,onSubmit:Y,children:[t(u,{label:"名称",children:(f)=>t(D,{id:f,autoFocus:!m,required:!0,value:I,onChange:(s)=>J(s.target.value),placeholder:"例如:每日提交总结"})}),t(u,{label:"提示词",hint:"没人盯着运行,写清楚要做什么、结果怎么汇报。",children:(f)=>t(C,{id:f,required:!0,value:T,onChange:(s)=>U(s.target.value),rows:5,placeholder:"总结昨天到现在的 git 提交,按模块分组,列出需要我关注的改动。"})}),n("div",{className:"grid gap-x-3 gap-y-4 sm:grid-cols-2",children:[t(u,{label:"时间",children:(f)=>t(c,{id:f,value:B?H:j,onValueChange:(s)=>{if(V(s===H),s!==H)R(s)},groups:[{options:M.map((s)=>({value:s.cron,label:s.label}))},{options:[{value:H,label:"自定义(cron)"}]}]})}),t(u,{label:"在哪里运行",children:(f)=>t(c,{id:f,value:F,onValueChange:W,groups:[{options:[{value:G,label:"聊天",description:"不绑定目录",icon:t(Nn,{})}]},...r.projects.length?[{label:"项目",options:r.projects.map((s)=>({value:s.id,label:s.name,icon:t(ze,{})}))}]:[]]})})]}),B&&t(u,{label:"cron 表达式",hint:`分 时 日 月 周,例如 30 8 * * 1-5 是工作日 8:30。${r.timezone?`按 ${r.timezone} 时间。`:""}`,children:(f)=>t(D,{id:f,required:!0,value:j,onChange:(s)=>R(s.target.value),spellCheck:!1,className:"font-mono"})}),r.models.length>0&&t(u,{label:"模型",children:(f)=>t(c,{id:f,value:O||"default",onValueChange:(s)=>w(s==="default"?"":s),groups:[{options:[{value:"default",label:"默认模型"},...r.models.map((s)=>({value:s,label:s}))]}]})}),t(b,{children:K})]})})}export{ge as AutomationsPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Xn}from"./chunk-74j07k8k.js";export{Xn as default};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import{e,y,mt,C,S,E,T,A,I,L,s,Tn,p,J,jn,po,Ia,Ra,Vn}from"./chunk-y0m8hrwz.js";import{On,mn}from"./chunk-ttg6tbwx.js";import{Xe}from"./chunk-20q90epj.js";function rt(n,c){let m=0;if(c===void 0){for(let x of n)if(x=+x)m+=x}else{let x=-1;for(let _ of n)if(_=+c(_,++x,n))m+=_}return m}function dt(n){var c=n.length/6|0,m=Array(c),x=0;while(x<c)m[x]="#"+n.slice(x*6,++x*6);return m}var pt=dt("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab");function Pt(n){return n.source}function At(n){return n.target}function Tt(n){let c=Pt,m=At,x=Ia,_=Ra,P=null,g=null,N=jn(a);function a(){let i,f=po.call(arguments),v=c.apply(this,f),k=m.apply(this,f);if(P==null)g=n(i=N());if(g.lineStart(),f[0]=v,g.point(+x.apply(this,f),+_.apply(this,f)),f[0]=k,g.point(+x.apply(this,f),+_.apply(this,f)),g.lineEnd(),i)return g=null,i+""||null}return a.source=function(i){return arguments.length?(c=i,a):c},a.target=function(i){return arguments.length?(m=i,a):m},a.x=function(i){return arguments.length?(x=typeof i==="function"?i:J(+i),a):x},a.y=function(i){return arguments.length?(_=typeof i==="function"?i:J(+i),a):_},a.context=function(i){return arguments.length?(i==null?P=g=null:g=n(P=i),a):P},a}function vt(){return Tt(Vn)}function Ct(n){return n.target.depth}function yt(n){return n.depth}function gt(n,c){return c-1-n.height}function st(n,c){return n.sourceLinks.length?n.depth:c-1}function xt(n){return n.targetLinks.length?n.depth:n.sourceLinks.length?mn(n.sourceLinks,Ct)-1:0}function et(n){return function(){return n}}function _t(n,c){return ot(n.source,c.source)||n.index-c.index}function St(n,c){return ot(n.target,c.target)||n.index-c.index}function ot(n,c){return n.y0-c.y0}function kt(n){return n.value}function Bt(n){return n.index}function Ot(n){return n.nodes}function Rt(n){return n.links}function wt(n,c){let m=n.get(c);if(!m)throw Error("missing: "+c);return m}function Lt({nodes:n}){for(let c of n){let m=c.y0,x=m;for(let _ of c.sourceLinks)_.y0=m+_.width/2,m+=_.width;for(let _ of c.targetLinks)_.y1=x+_.width/2,x+=_.width}}function it(){let n=0,c=0,m=1,x=1,_=24,P=8,g,N=Bt,a=st,i,f,v=Ot,k=Rt,h=6;function w(){let t={nodes:v.apply(null,arguments),links:k.apply(null,arguments)};return G(t),M(t),W(t),U(t),z(t),Lt(t),t}w.update=function(t){return Lt(t),t},w.nodeId=function(t){return arguments.length?(N=typeof t==="function"?t:et(t),w):N},w.nodeAlign=function(t){return arguments.length?(a=typeof t==="function"?t:et(t),w):a},w.nodeSort=function(t){return arguments.length?(i=t,w):i},w.nodeWidth=function(t){return arguments.length?(_=+t,w):_},w.nodePadding=function(t){return arguments.length?(P=g=+t,w):P},w.nodes=function(t){return arguments.length?(v=typeof t==="function"?t:et(t),w):v},w.links=function(t){return arguments.length?(k=typeof t==="function"?t:et(t),w):k},w.linkSort=function(t){return arguments.length?(f=t,w):f},w.size=function(t){return arguments.length?(n=c=0,m=+t[0],x=+t[1],w):[m-n,x-c]},w.extent=function(t){return arguments.length?(n=+t[0][0],m=+t[1][0],c=+t[0][1],x=+t[1][1],w):[[n,c],[m,x]]},w.iterations=function(t){return arguments.length?(h=+t,w):h};function G({nodes:t,links:l}){for(let[r,o]of t.entries())o.index=r,o.sourceLinks=[],o.targetLinks=[];let u=new Map(t.map((r,o)=>[N(r,o,t),r]));for(let[r,o]of l.entries()){o.index=r;let{source:d,target:b}=o;if(typeof d!=="object")d=o.source=wt(u,d);if(typeof b!=="object")b=o.target=wt(u,b);d.sourceLinks.push(o),b.targetLinks.push(o)}if(f!=null)for(let{sourceLinks:r,targetLinks:o}of t)r.sort(f),o.sort(f)}function M({nodes:t}){for(let l of t)l.value=l.fixedValue===void 0?Math.max(rt(l.sourceLinks,kt),rt(l.targetLinks,kt)):l.fixedValue}function W({nodes:t}){let l=t.length,u=new Set(t),r=new Set,o=0;while(u.size){for(let d of u){d.depth=o;for(let{target:b}of d.sourceLinks)r.add(b)}if(++o>l)throw Error("circular link");u=r,r=new Set}}function U({nodes:t}){let l=t.length,u=new Set(t),r=new Set,o=0;while(u.size){for(let d of u){d.height=o;for(let{source:b}of d.targetLinks)r.add(b)}if(++o>l)throw Error("circular link");u=r,r=new Set}}function q({nodes:t}){let l=On(t,(o)=>o.depth)+1,u=(m-n-_)/(l-1),r=Array(l);for(let o of t){let d=Math.max(0,Math.min(l-1,Math.floor(a.call(null,o,l))));if(o.layer=d,o.x0=n+d*u,o.x1=o.x0+_,r[d])r[d].push(o);else r[d]=[o]}if(i)for(let o of r)o.sort(i);return r}function Z(t){let l=mn(t,(u)=>(x-c-(u.length-1)*g)/rt(u,kt));for(let u of t){let r=c;for(let o of u){o.y0=r,o.y1=r+o.value*l,r=o.y1+g;for(let d of o.sourceLinks)d.width=d.value*l}r=(x-r+g)/(u.length+1);for(let o=0;o<u.length;++o){let d=u[o];d.y0+=r*(o+1),d.y1+=r*(o+1)}Q(u)}}function z(t){let l=q(t);g=Math.min(P,(x-c)/(On(l,(u)=>u.length)-1)),Z(l);for(let u=0;u<h;++u){let r=Math.pow(0.99,u),o=Math.max(1-r,(u+1)/h);D(l,r,o),B(l,r,o)}}function B(t,l,u){for(let r=1,o=t.length;r<o;++r){let d=t[r];for(let b of d){let K=0,Y=0;for(let{source:R,value:ht}of b.targetLinks){let nt=ht*(b.layer-R.layer);K+=O(R,b)*nt,Y+=nt}if(!(Y>0))continue;let F=(K/Y-b.y0)*l;b.y0+=F,b.y1+=F,tt(b)}if(i===void 0)d.sort(ot);H(d,u)}}function D(t,l,u){for(let r=t.length,o=r-2;o>=0;--o){let d=t[o];for(let b of d){let K=0,Y=0;for(let{target:R,value:ht}of b.sourceLinks){let nt=ht*(R.layer-b.layer);K+=V(b,R)*nt,Y+=nt}if(!(Y>0))continue;let F=(K/Y-b.y0)*l;b.y0+=F,b.y1+=F,tt(b)}if(i===void 0)d.sort(ot);H(d,u)}}function H(t,l){let u=t.length>>1,r=t[u];j(t,r.y0-g,u-1,l),X(t,r.y1+g,u+1,l),j(t,x,t.length-1,l),X(t,c,0,l)}function X(t,l,u,r){for(;u<t.length;++u){let o=t[u],d=(l-o.y0)*r;if(d>0.000001)o.y0+=d,o.y1+=d;l=o.y1+g}}function j(t,l,u,r){for(;u>=0;--u){let o=t[u],d=(o.y1-l)*r;if(d>0.000001)o.y0-=d,o.y1-=d;l=o.y0-g}}function tt({sourceLinks:t,targetLinks:l}){if(f===void 0){for(let{source:{sourceLinks:u}}of l)u.sort(St);for(let{target:{targetLinks:u}}of t)u.sort(_t)}}function Q(t){if(f===void 0)for(let{sourceLinks:l,targetLinks:u}of t)l.sort(St),u.sort(_t)}function O(t,l){let u=t.y0-(t.sourceLinks.length-1)*g/2;for(let{target:r,width:o}of t.sourceLinks){if(r===l)break;u+=o+g}for(let{source:r,width:o}of l.targetLinks){if(r===t)break;u-=o}return u}function V(t,l){let u=l.y0-(l.targetLinks.length-1)*g/2;for(let{source:r,width:o}of l.targetLinks){if(r===t)break;u+=o+g}for(let{target:r,width:o}of t.sourceLinks){if(r===l)break;u-=o}return u}return w}function Nt(n){return[n.source.x1,n.y0]}function Gt(n){return[n.target.x0,n.y1]}function at(){return vt().source(Nt).target(Gt)}var bt=function(){var n=e(function(N,a,i,f){for(i=i||{},f=N.length;f--;i[N[f]]=a);return i},"o"),c=[1,9],m=[1,10],x=[1,5,10,12],_={trace:e(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:e(function(a,i,f,v,k,h,w){var G=h.length-1;switch(k){case 7:let M=v.findOrCreateNode(h[G-4].trim().replaceAll('""','"')),W=v.findOrCreateNode(h[G-2].trim().replaceAll('""','"')),U=parseFloat(h[G].trim());v.addLink(M,W,U);break;case 8:case 9:case 11:this.$=h[G];break;case 10:this.$=h[G-1];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:c,20:m},{1:[2,6],7:11,10:[1,12]},n(m,[2,4],{9:13,5:[1,14]}),{12:[1,15]},n(x,[2,8]),n(x,[2,9]),{19:[1,16]},n(x,[2,11]),{1:[2,1]},{1:[2,5]},n(m,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:c,20:m},{15:18,16:7,17:8,18:c,20:m},{18:[1,19]},n(m,[2,3]),{12:[1,20]},n(x,[2,10]),{15:21,16:7,17:8,18:c,20:m},n([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:e(function(a,i){if(i.recoverable)this.trace(a);else{var f=Error(a);throw f.hash=i,f}},"parseError"),parse:e(function(a){var i=this,f=[0],v=[],k=[null],h=[],w=this.table,G="",M=0,W=0,U=0,q=2,Z=1,z=h.slice.call(arguments,1),B=Object.create(this.lexer),D={yy:{}};for(var H in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,H))D.yy[H]=this.yy[H];if(B.setInput(a,D.yy),D.yy.lexer=B,D.yy.parser=this,typeof B.yylloc>"u")B.yylloc={};var X=B.yylloc;h.push(X);var j=B.options&&B.options.ranges;if(typeof D.yy.parseError==="function")this.parseError=D.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function tt(R){f.length=f.length-2*R,k.length=k.length-R,h.length=h.length-R}e(tt,"popStack");function Q(){var R=v.pop()||B.lex()||Z;if(typeof R!=="number"){if(R instanceof Array)v=R,R=v.pop();R=i.symbols_[R]||R}return R}e(Q,"lex");var O,V,t,l,u,r,o={},d,b,K,Y;while(!0){if(t=f[f.length-1],this.defaultActions[t])l=this.defaultActions[t];else{if(O===null||typeof O>"u")O=Q();l=w[t]&&w[t][O]}if(typeof l>"u"||!l.length||!l[0]){var F="";Y=[];for(d in w[t])if(this.terminals_[d]&&d>q)Y.push("'"+this.terminals_[d]+"'");if(B.showPosition)F="Parse error on line "+(M+1)+`:
|
|
2
|
+
`+B.showPosition()+`
|
|
3
|
+
Expecting `+Y.join(", ")+", got '"+(this.terminals_[O]||O)+"'";else F="Parse error on line "+(M+1)+": Unexpected "+(O==Z?"end of input":"'"+(this.terminals_[O]||O)+"'");this.parseError(F,{text:B.match,token:this.terminals_[O]||O,line:B.yylineno,loc:X,expected:Y})}if(l[0]instanceof Array&&l.length>1)throw Error("Parse Error: multiple actions possible at state: "+t+", token: "+O);switch(l[0]){case 1:if(f.push(O),k.push(B.yytext),h.push(B.yylloc),f.push(l[1]),O=null,!V){if(W=B.yyleng,G=B.yytext,M=B.yylineno,X=B.yylloc,U>0)U--}else O=V,V=null;break;case 2:if(b=this.productions_[l[1]][1],o.$=k[k.length-b],o._$={first_line:h[h.length-(b||1)].first_line,last_line:h[h.length-1].last_line,first_column:h[h.length-(b||1)].first_column,last_column:h[h.length-1].last_column},j)o._$.range=[h[h.length-(b||1)].range[0],h[h.length-1].range[1]];if(r=this.performAction.apply(o,[G,W,M,D.yy,l[1],k,h].concat(z)),typeof r<"u")return r;if(b)f=f.slice(0,-1*b*2),k=k.slice(0,-1*b),h=h.slice(0,-1*b);f.push(this.productions_[l[1]][0]),k.push(o.$),h.push(o._$),K=w[f[f.length-2]][f[f.length-1]],f.push(K);break;case 3:return!0}}return!0},"parse")},P=function(){var N={EOF:1,parseError:e(function(i,f){if(this.yy.parser)this.yy.parser.parseError(i,f);else throw Error(i)},"parseError"),setInput:e(function(a,i){if(this.yy=i||this.yy||{},this._input=a,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:e(function(){var a=this._input[0];this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a;var i=a.match(/(?:\r\n?|\n).*/g);if(i)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),a},"input"),unput:e(function(a){var i=a.length,f=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-i),this.offset-=i;var v=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),f.length-1)this.yylineno-=f.length-1;var k=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:f?(f.length===v.length?this.yylloc.first_column:0)+v[v.length-f.length].length-f[0].length:this.yylloc.first_column-i},this.options.ranges)this.yylloc.range=[k[0],k[0]+this.yyleng-i];return this.yyleng=this.yytext.length,this},"unput"),more:e(function(){return this._more=!0,this},"more"),reject:e(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
|
|
4
|
+
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:e(function(a){this.unput(this.match.slice(a))},"less"),pastInput:e(function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:e(function(){var a=this.match;if(a.length<20)a+=this._input.substr(0,20-a.length);return(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:e(function(){var a=this.pastInput(),i=Array(a.length+1).join("-");return a+this.upcomingInput()+`
|
|
5
|
+
`+i+"^"},"showPosition"),test_match:e(function(a,i){var f,v,k;if(this.options.backtrack_lexer){if(k={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)k.yylloc.range=this.yylloc.range.slice(0)}if(v=a[0].match(/(?:\r\n?|\n).*/g),v)this.yylineno+=v.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:v?v[v.length-1].length-v[v.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+a[0].length},this.yytext+=a[0],this.match+=a[0],this.matches=a,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(a[0].length),this.matched+=a[0],f=this.performAction.call(this,this.yy,this,i,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(f)return f;else if(this._backtrack){for(var h in k)this[h]=k[h];return!1}return!1},"test_match"),next:e(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var a,i,f,v;if(!this._more)this.yytext="",this.match="";var k=this._currentRules();for(var h=0;h<k.length;h++)if(f=this._input.match(this.rules[k[h]]),f&&(!i||f[0].length>i[0].length)){if(i=f,v=h,this.options.backtrack_lexer)if(a=this.test_match(f,k[h]),a!==!1)return a;else if(this._backtrack){i=!1;continue}else return!1;else if(!this.options.flex)break}if(i){if(a=this.test_match(i,k[v]),a!==!1)return a;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
|
6
|
+
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:e(function(){var i=this.next();if(i)return i;else return this.lex()},"lex"),begin:e(function(i){this.conditionStack.push(i)},"begin"),popState:e(function(){var i=this.conditionStack.length-1;if(i>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:e(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:e(function(i){if(i=this.conditionStack.length-1-Math.abs(i||0),i>=0)return this.conditionStack[i];else return"INITIAL"},"topState"),pushState:e(function(i){this.begin(i)},"pushState"),stateStackSize:e(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:e(function(i,f,v,k){var h=k;switch(v){case 0:return this.pushState("csv"),4;break;case 1:return this.pushState("csv"),4;break;case 2:return 10;case 3:return 5;case 4:return 12;case 5:return this.pushState("escaped_text"),18;break;case 6:return 20;case 7:return this.popState("escaped_text"),18;break;case 8:return 19}},"anonymous"),rules:[/^(?:sankey-beta\b)/i,/^(?:sankey\b)/i,/^(?:$)/i,/^(?:((\u000D\u000A)|(\u000A)))/i,/^(?:(\u002C))/i,/^(?:(\u0022))/i,/^(?:([\u0020-\u0021\u0023-\u002B\u002D-\u007E])*)/i,/^(?:(\u0022)(?!(\u0022)))/i,/^(?:(([\u0020-\u0021\u0023-\u002B\u002D-\u007E])|(\u002C)|(\u000D)|(\u000A)|(\u0022)(\u0022))*)/i],conditions:{csv:{rules:[2,3,4,5,6,7,8],inclusive:!1},escaped_text:{rules:[7,8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8],inclusive:!0}}};return N}();_.lexer=P;function g(){this.yy={}}return e(g,"Parser"),g.prototype=_,_.Parser=g,new g}();bt.parser=bt;var lt=bt,ut=[],ft=[],ct=new Map,It=e(()=>{ut=[],ft=[],ct=new Map,C()},"clear"),Mt=class{constructor(n,c,m=0){this.source=n,this.target=c,this.value=m}static{e(this,"SankeyLink")}},Yt=e((n,c,m)=>{ut.push(new Mt(n,c,m))},"addLink"),Dt=class{constructor(n){this.ID=n}static{e(this,"SankeyNode")}},jt=e((n)=>{n=y.sanitizeText(n,s());let c=ct.get(n);if(c===void 0)c=new Dt(n),ct.set(n,c),ft.push(c);return c},"findOrCreateNode"),$t=e(()=>ft,"getNodes"),zt=e(()=>ut,"getLinks"),Vt=e(()=>({nodes:ft.map((n)=>({id:n.ID})),links:ut.map((n)=>({source:n.source.ID,target:n.target.ID,value:n.value}))}),"getGraph"),Ft={nodesMap:ct,getConfig:e(()=>s().sankey,"getConfig"),getNodes:$t,getLinks:zt,getGraph:Vt,addLink:Yt,findOrCreateNode:jt,getAccTitle:E,setAccTitle:S,getAccDescription:A,setAccDescription:T,getDiagramTitle:L,setDiagramTitle:I,clear:It},Et=class n{static{e(this,"Uid")}static{this.count=0}static next(c){return new n(c+ ++n.count)}constructor(c){this.id=c,this.href=`#${c}`}toString(){return"url("+this.href+")"}},Wt={left:yt,right:gt,center:xt,justify:st},Ut=e((n)=>{let c=0,m=0;for(let x of n){let _=x.value??0;if(_>c)c=_,m=x.layer??0}return m},"findCentralNodeLayer"),Ht=e(function(n,c,m,x){let{securityLevel:_,sankey:P}=s(),g=Tn.sankey,N;if(_==="sandbox")N=p("#i"+c);let a=_==="sandbox"?p(N.nodes()[0].contentDocument.body):p("body"),i=_==="sandbox"?a.select(`[id="${c}"]`):p(`[id="${c}"]`),f=P?.width??g.width,v=P?.height??g.width,k=P?.useMaxWidth??g.useMaxWidth,h=P?.nodeAlignment??g.nodeAlignment,w=P?.prefix??g.prefix,G=P?.suffix??g.suffix,M=P?.showValues??g.showValues,W=P?.nodeWidth??g.nodeWidth??10,U=P?.nodePadding??g.nodePadding??12,q=P?.labelStyle??g.labelStyle??"legacy",Z=P?.nodeColors??{},z=x.db.getGraph(),B=Wt[h];it().nodeId((r)=>r.id).nodeWidth(W).nodePadding(U+(M?15:0)).nodeAlign(B).extent([[0,0],[f,v]])(z);let H=Ut(z.nodes),X=Xe(pt),j=e((r)=>Z[r]??X(r),"getNodeColor");i.append("g").attr("class","nodes").selectAll(".node").data(z.nodes).join("g").attr("class","node").attr("id",(r)=>(r.uid=Et.next("node-")).id).attr("transform",function(r){return"translate("+r.x0+","+r.y0+")"}).attr("x",(r)=>r.x0).attr("y",(r)=>r.y0).append("rect").attr("height",(r)=>r.y1-r.y0).attr("width",(r)=>r.x1-r.x0).attr("fill",(r)=>j(r.id));let tt=e(({id:r,value:o})=>{if(!M)return r;return`${r}
|
|
7
|
+
${w}${Math.round(o*100)/100}${G}`},"getText"),Q=e((r)=>{if(q==="outlined"){if((r.layer??0)<H)return{x:r.x0-6,anchor:"end"};return{x:r.x1+6,anchor:"start"}}if(r.x0<f/2)return{x:r.x1+6,anchor:"start"};return{x:r.x0-6,anchor:"end"}},"getLabelPosition"),O=i.append("g").attr("class","node-labels").attr("font-size",14),V=e((r)=>O.selectAll(r?`.${r}`:"text").data(z.nodes).join("text").attr("class",r??null).attr("x",(o)=>Q(o).x).attr("y",(o)=>(o.y1+o.y0)/2).attr("dy",`${M?"0":"0.35"}em`).attr("text-anchor",(o)=>Q(o).anchor).text(tt),"appendLabel");if(q==="outlined")V("sankey-label-bg"),V("sankey-label-fg");else V();let t=i.append("g").attr("class","links").attr("fill","none").attr("stroke-opacity",0.5).selectAll(".link").data(z.links).join("g").attr("class","link").style("mix-blend-mode","multiply"),l=P?.linkColor??"gradient";if(l==="gradient"){let r=t.append("linearGradient").attr("id",(o)=>(o.uid=Et.next("linearGradient-")).id).attr("gradientUnits","userSpaceOnUse").attr("x1",(o)=>o.source.x1).attr("x2",(o)=>o.target.x0);r.append("stop").attr("offset","0%").attr("stop-color",(o)=>j(o.source.id)),r.append("stop").attr("offset","100%").attr("stop-color",(o)=>j(o.target.id))}let u;switch(l){case"gradient":u=e((r)=>r.uid,"coloring");break;case"source":u=e((r)=>j(r.source.id),"coloring");break;case"target":u=e((r)=>j(r.target.id),"coloring");break;default:u=l}t.append("path").attr("d",at()).attr("stroke",u).attr("stroke-width",(r)=>Math.max(1,r.width)),mt(void 0,i,0,k)},"draw"),Xt={draw:Ht},Jt=e((n)=>n.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,`
|
|
8
|
+
`).trim(),"prepareTextForParsing"),Kt=e((n)=>`.label {
|
|
9
|
+
font-family: ${n.fontFamily};
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.node-labels {
|
|
13
|
+
font-family: ${n.fontFamily};
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
/* Outlined label style - background stroke for better readability */
|
|
17
|
+
.sankey-label-bg {
|
|
18
|
+
stroke: ${n.mainBkg||n.background||"#fff"};
|
|
19
|
+
stroke-width: 4px;
|
|
20
|
+
stroke-linejoin: round;
|
|
21
|
+
paint-order: stroke;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/* Foreground label text */
|
|
25
|
+
.sankey-label-fg {
|
|
26
|
+
fill: ${n.textColor};
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/* Node styling */
|
|
30
|
+
.node rect {
|
|
31
|
+
shape-rendering: crispEdges;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
/* Link styling */
|
|
35
|
+
.link {
|
|
36
|
+
fill: none;
|
|
37
|
+
stroke-opacity: 0.5;
|
|
38
|
+
mix-blend-mode: multiply;
|
|
39
|
+
}
|
|
40
|
+
`,"getStyles"),Qt=Kt,qt=lt.parse.bind(lt);lt.parse=(n)=>qt(Jt(n));var Be={styles:Qt,parser:lt,db:Ft,renderer:Xt};export{Be as diagram};
|