@codingame/monaco-editor-wrapper 3.10.0-monaco-update.1 → 3.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (638) hide show
  1. package/README.md +15 -0
  2. package/dist/COBOL.tmLanguage.js +172 -0
  3. package/dist/Erlang.plist.js +1752 -0
  4. package/dist/HTML (Eex)2.js +100 -0
  5. package/dist/JSON.tmLanguage.js +221 -0
  6. package/dist/JSONC.tmLanguage.js +221 -0
  7. package/dist/JavaProperties.tmLanguage.js +116 -0
  8. package/dist/JavaScript.tmLanguage.js +5929 -0
  9. package/dist/JavaScriptReact.tmLanguage.js +5929 -0
  10. package/dist/Kotlin.tmLanguage.js +724 -0
  11. package/dist/META.js +100 -0
  12. package/dist/MagicPython.tmLanguage.js +4221 -0
  13. package/dist/MagicRegExp.tmLanguage.js +505 -0
  14. package/dist/Markdown Redcarpet.js +221 -0
  15. package/dist/RMarkdown.js +25 -0
  16. package/dist/Rcpp.js +50 -0
  17. package/dist/Rd (R Documentation).js +131 -0
  18. package/dist/Regular Expressions (JavaScript).tmLanguage.js +166 -0
  19. package/dist/Scala.tmLanguage.js +1324 -0
  20. package/dist/TypeScript.tmLanguage.js +5680 -0
  21. package/dist/TypeScriptReact.tmLanguage.js +5929 -0
  22. package/dist/{_virtual/_commonjsHelpers.js → _monaco-editor_commonjs-external.js} +9 -2
  23. package/dist/_rollupPluginBabelHelpers.js +51 -0
  24. package/dist/angular.js +62 -0
  25. package/dist/asp-vb-net.tmlanguage.js +247 -0
  26. package/dist/aspnetcorerazor.js +72 -0
  27. package/dist/aspnetcorerazor.tmLanguage.js +1825 -0
  28. package/dist/atd.js +110 -0
  29. package/dist/atd2.js +114 -0
  30. package/dist/buildignore.r.js +5 -0
  31. package/dist/buildtarget.js +53 -0
  32. package/dist/c.js +101 -0
  33. package/dist/c.tmLanguage.js +3565 -0
  34. package/dist/cabal.js +10 -0
  35. package/dist/cabal.tmLanguage.js +66 -0
  36. package/dist/clojure.js +68 -0
  37. package/dist/clojure.tmLanguage.js +439 -0
  38. package/dist/cobol.js +6 -0
  39. package/dist/cobol2.js +341 -0
  40. package/dist/codeblock-cabal.js +42 -0
  41. package/dist/codeblock-haskell.js +42 -0
  42. package/dist/codeblock-literate-haskell.js +42 -0
  43. package/dist/codeblock.js +59 -0
  44. package/dist/codeblock2.js +36 -0
  45. package/dist/codeblock3.js +95 -0
  46. package/dist/coffeescript-coffeescript.code-snippets.js +18 -0
  47. package/dist/coffeescript.js +91 -0
  48. package/dist/coffeescript.tmLanguage.js +1324 -0
  49. package/dist/configuration/files.d.ts +6 -0
  50. package/dist/configuration/index.d.ts +2 -1
  51. package/dist/cpp-c.code-snippets.js +18 -0
  52. package/dist/cpp-cpp.code-snippets.js +18 -0
  53. package/dist/cpp.js +101 -0
  54. package/dist/cpp.tmLanguage.js +16648 -0
  55. package/dist/cpptools.js +2631 -0
  56. package/dist/cram.js +257 -0
  57. package/dist/csharp.js +92 -0
  58. package/dist/csharp.tmLanguage.js +4992 -0
  59. package/dist/css.js +106 -0
  60. package/dist/css.tmLanguage.js +1873 -0
  61. package/dist/css.worker.js +6 -0
  62. package/dist/cuda-cpp.js +101 -0
  63. package/dist/cuda-cpp.tmLanguage.js +19993 -0
  64. package/dist/d-diet.js +92 -0
  65. package/dist/d.js +3212 -0
  66. package/dist/d2.js +97 -0
  67. package/dist/d3.js +609 -0
  68. package/dist/dart.js +543 -0
  69. package/dist/dart2.js +103 -0
  70. package/dist/dart3.js +1130 -0
  71. package/dist/dcf.js +93 -0
  72. package/dist/debian-control.r.js +69 -0
  73. package/dist/diet.js +758 -0
  74. package/dist/diet2.js +100 -0
  75. package/dist/django-html.js +155 -0
  76. package/dist/django-html.tmLanguage.js +715 -0
  77. package/dist/django-txt.js +155 -0
  78. package/dist/django-txt.tmLanguage.js +269 -0
  79. package/dist/dml.js +169 -0
  80. package/dist/dml2.js +90 -0
  81. package/dist/dockercompose.js +82 -0
  82. package/dist/dpp.js +97 -0
  83. package/dist/dscript.js +90 -0
  84. package/dist/dune-project.js +481 -0
  85. package/dist/dune-project2.js +65 -0
  86. package/dist/dune-workspace.js +298 -0
  87. package/dist/dune-workspace2.js +65 -0
  88. package/dist/dune.js +2962 -0
  89. package/dist/dune2.js +65 -0
  90. package/dist/eex.js +55 -0
  91. package/dist/elixir-snippets.js +184 -0
  92. package/dist/elixir.js +2341 -0
  93. package/dist/elixir2.js +69 -0
  94. package/dist/elixir3.js +40 -0
  95. package/dist/erlang-erlang.js +195 -0
  96. package/dist/erlang.js +81 -0
  97. package/dist/erlang2.js +86 -0
  98. package/dist/expression.js +846 -0
  99. package/dist/features/cssContribution.d.ts +1 -0
  100. package/dist/features/cssContribution.js +7 -0
  101. package/dist/features/extensionConfigurations.d.ts +1 -0
  102. package/dist/features/extensionConfigurations.js +44 -0
  103. package/dist/features/htmlContribution.d.ts +4 -0
  104. package/dist/features/htmlContribution.js +112 -0
  105. package/dist/features/jsonContribution.d.ts +6 -0
  106. package/dist/features/jsonContribution.js +43 -0
  107. package/dist/features/typescriptContribution.d.ts +1 -0
  108. package/dist/features/typescriptContribution.js +32 -0
  109. package/dist/fsharp-fsharp.code-snippets.js +18 -0
  110. package/dist/fsharp.js +80 -0
  111. package/dist/fsharp.tmLanguage.js +1844 -0
  112. package/dist/go.js +103 -0
  113. package/dist/go.mod.js +8 -0
  114. package/dist/go.mod.tmGrammar.js +182 -0
  115. package/dist/go.sum.tmGrammar.js +55 -0
  116. package/dist/go.tmLanguage.js +1025 -0
  117. package/dist/go.work.js +8 -0
  118. package/dist/govulncheck.tmGrammar.js +138 -0
  119. package/dist/groovy-groovy.code-snippets.js +229 -0
  120. package/dist/groovy.js +79 -0
  121. package/dist/groovy.tmLanguage.js +1391 -0
  122. package/dist/haskell.js +88 -0
  123. package/dist/haskell.tmLanguage.js +629 -0
  124. package/dist/haskell2.js +16 -0
  125. package/dist/html (eex).js +31 -0
  126. package/dist/html-derivative.tmLanguage.js +57 -0
  127. package/dist/html-html.code-snippets.js +20 -0
  128. package/dist/html.js +11 -0
  129. package/dist/html.tmLanguage.js +2652 -0
  130. package/dist/html.tmLanguage2.js +107 -0
  131. package/dist/html.worker.js +6 -0
  132. package/dist/index.d.ts +3 -3
  133. package/dist/index.js +2207 -0
  134. package/dist/index2.js +1398 -0
  135. package/dist/inline-styles.js +104 -0
  136. package/dist/inline-template.js +88 -0
  137. package/dist/jade.js +11 -0
  138. package/dist/java-java.js +125 -0
  139. package/dist/java-properties.js +73 -0
  140. package/dist/java.js +98 -0
  141. package/dist/java.tmLanguage.js +1863 -0
  142. package/dist/java2.js +917 -0
  143. package/dist/javascript-javascript.code-snippets.js +205 -0
  144. package/dist/javascript.js +197 -0
  145. package/dist/javascriptreact.js +197 -0
  146. package/dist/jsdoc.js.injection.tmLanguage.js +32 -0
  147. package/dist/jsdoc.ts.injection.tmLanguage.js +32 -0
  148. package/dist/json.js +75 -0
  149. package/dist/json.worker.js +6 -0
  150. package/dist/jsonc.js +75 -0
  151. package/dist/jsx-tags.js +158 -0
  152. package/dist/julia.js +89 -0
  153. package/dist/julia.tmLanguage.js +954 -0
  154. package/dist/jvm-bytecode-verbose.js +1231 -0
  155. package/dist/jvm-bytecode.js +565 -0
  156. package/dist/kotlin-kotlin.js +117 -0
  157. package/dist/kotlin.js +103 -0
  158. package/dist/kotlinscript.js +103 -0
  159. package/dist/languages/extensions/extensionConfigurationLoader.d.ts +3 -0
  160. package/dist/languages/extensions/grammarLoader.d.ts +2 -0
  161. package/dist/languages/extensions/languageConfigurationLoader.d.ts +2 -0
  162. package/dist/languages/extensions/snippetLoader.d.ts +2 -0
  163. package/dist/languages/extensions/themeLoader.d.ts +2 -0
  164. package/dist/languages/index.d.ts +2 -0
  165. package/dist/languages/textMate/index.d.ts +1 -0
  166. package/dist/literate haskell.js +88 -0
  167. package/dist/literateHaskell.tmLanguage.js +70 -0
  168. package/dist/lua.js +84 -0
  169. package/dist/lua.tmLanguage.js +914 -0
  170. package/dist/lua2.js +2853 -0
  171. package/dist/main.js +3564 -9
  172. package/dist/markdown-basics-markdown.code-snippets.js +121 -0
  173. package/dist/markdown-svelte-css.js +37 -0
  174. package/dist/markdown-svelte-js.js +37 -0
  175. package/dist/markdown-svelte.js +59 -0
  176. package/dist/markdown-vue.js +54 -0
  177. package/dist/markdown.js +49 -0
  178. package/dist/markdown.tmLanguage.js +3042 -0
  179. package/dist/menhir-action.js +51 -0
  180. package/dist/menhir.js +597 -0
  181. package/dist/merlin.js +111 -0
  182. package/dist/monaco.d.ts +10 -6
  183. package/dist/namespace.r.js +88 -0
  184. package/dist/oasis.js +99 -0
  185. package/dist/objective-c.js +79 -0
  186. package/dist/objective-c.tmLanguage.js +3763 -0
  187. package/dist/objective-cpp.js +79 -0
  188. package/dist/ocaml-dune-project.js +38 -0
  189. package/dist/ocaml-dune.js +53 -0
  190. package/dist/ocaml-markdown-codeblock.js +42 -0
  191. package/dist/ocaml-ocaml.js +88 -0
  192. package/dist/ocaml-ocamllex.js +12 -0
  193. package/dist/ocaml.META.js +29 -0
  194. package/dist/ocaml.interface.js +292 -0
  195. package/dist/ocaml.interface2.js +114 -0
  196. package/dist/ocaml.js +903 -0
  197. package/dist/ocaml.menhir.js +81 -0
  198. package/dist/ocaml.oasis.js +18 -0
  199. package/dist/ocaml.ocamlbuild.js +45 -0
  200. package/dist/ocaml.ocamlformat.js +8 -0
  201. package/dist/ocaml.ocamllex.js +60 -0
  202. package/dist/ocaml.opam-install.js +49 -0
  203. package/dist/ocaml.opam.js +69 -0
  204. package/dist/ocaml2.js +114 -0
  205. package/dist/ocaml3.js +136 -0
  206. package/dist/ocamlbuild.js +189 -0
  207. package/dist/ocamldoc.js +54 -0
  208. package/dist/ocamlformat.js +206 -0
  209. package/dist/ocamllex.js +133 -0
  210. package/dist/omnisharp-csharp.js +508 -0
  211. package/dist/omnisharp.js +594 -0
  212. package/dist/opam-install.js +40 -0
  213. package/dist/opam.js +140 -0
  214. package/dist/pascal-pascal.js +382 -0
  215. package/dist/pascal.js +80 -0
  216. package/dist/pascal.tmLanguage.js +169 -0
  217. package/dist/pascal2.js +26 -0
  218. package/dist/perl.js +93 -0
  219. package/dist/perl.tmLanguage.js +2986 -0
  220. package/dist/perl6.js +86 -0
  221. package/dist/perl6.tmLanguage.js +323 -0
  222. package/dist/pgsql.tmLanguage.js +284 -0
  223. package/dist/php-php.code-snippets.js +267 -0
  224. package/dist/php.js +154 -0
  225. package/dist/php.tmLanguage.js +4036 -0
  226. package/dist/pip-requirements.js +8 -0
  227. package/dist/pip-requirements.tmLanguage.js +89 -0
  228. package/dist/plaintext.js +11 -0
  229. package/dist/platform.tmLanguage.js +1135 -0
  230. package/dist/postcss.src.yaml.js +393 -0
  231. package/dist/postgres.js +80 -0
  232. package/dist/postgresql.js +75 -0
  233. package/dist/powershell.js +107 -0
  234. package/dist/powershell.tmLanguage.js +1037 -0
  235. package/dist/pug-svelte-dotblock.js +69 -0
  236. package/dist/pug-svelte-tags.js +215 -0
  237. package/dist/pug-svelte.js +307 -0
  238. package/dist/python.js +236 -0
  239. package/dist/r.js +664 -0
  240. package/dist/r2.js +88 -0
  241. package/dist/rbuildignore.js +39 -0
  242. package/dist/rd.js +81 -0
  243. package/dist/reason-markdown-codeblock.js +42 -0
  244. package/dist/reason.js +79 -0
  245. package/dist/rmd.js +84 -0
  246. package/dist/rnamespace.js +283 -0
  247. package/dist/ruby.js +95 -0
  248. package/dist/ruby.tmLanguage.js +2784 -0
  249. package/dist/rust.js +84 -0
  250. package/dist/rust.tmLanguage.js +1178 -0
  251. package/dist/sassdoc.tmLanguage.js +362 -0
  252. package/dist/scala.js +85 -0
  253. package/dist/scalameta.js +224 -0
  254. package/dist/scss.js +117 -0
  255. package/dist/scss.tmLanguage.js +1887 -0
  256. package/dist/sdl.js +162 -0
  257. package/dist/sdl2.js +90 -0
  258. package/dist/semanticdb.js +62 -0
  259. package/dist/shell-unix-bash.tmLanguage.js +2038 -0
  260. package/dist/shellscript.js +93 -0
  261. package/dist/solargraph.js +192 -0
  262. package/dist/solidity-solidity.js +213 -0
  263. package/dist/solidity.js +1224 -0
  264. package/dist/solidity2.js +71 -0
  265. package/dist/solidity3.js +143 -0
  266. package/dist/sql.js +99 -0
  267. package/dist/sql.tmLanguage.js +636 -0
  268. package/dist/svelte.js +120 -0
  269. package/dist/svelte.svelte-vscode-javascript.js +45 -0
  270. package/dist/svelte.svelte-vscode-svelte.js +46 -0
  271. package/dist/svelte.svelte-vscode-typescript.js +43 -0
  272. package/dist/svelte.svelte-vscode.js +383 -0
  273. package/dist/svelte.tmLanguage.src.yaml.js +1099 -0
  274. package/dist/svlangserver-systemverilog.js +395 -0
  275. package/dist/svlangserver.js +85 -0
  276. package/dist/swift-swift.code-snippets.js +183 -0
  277. package/dist/swift.js +90 -0
  278. package/dist/swift.tmLanguage.js +3312 -0
  279. package/dist/systemverilog.js +187 -0
  280. package/dist/systemverilog.tmLanguage.js +1259 -0
  281. package/dist/tasty.js +72 -0
  282. package/dist/tcl-tcl.js +151 -0
  283. package/dist/tcl.js +78 -0
  284. package/dist/tcl.tmlanguage.yaml.js +5490 -0
  285. package/dist/template.js +207 -0
  286. package/dist/theme/index.d.ts +4 -1
  287. package/dist/theme-defaults~dark_plus.js +210 -0
  288. package/dist/theme-defaults~dark_plus_experimental.js +145 -0
  289. package/dist/theme-defaults~dark_vs.js +412 -0
  290. package/dist/theme-defaults~hc_black.js +471 -0
  291. package/dist/theme-defaults~hc_light.js +595 -0
  292. package/dist/theme-defaults~light_plus.js +212 -0
  293. package/dist/theme-defaults~light_plus_experimental.js +158 -0
  294. package/dist/theme-defaults~light_vs.js +441 -0
  295. package/dist/tools/EditorOpenHandlerRegistry.d.ts +2 -3
  296. package/dist/ts.worker.js +6 -0
  297. package/dist/typescript-basics-typescript.code-snippets.js +313 -0
  298. package/dist/typescript-language-features.js +1103 -0
  299. package/dist/typescript.js +216 -0
  300. package/dist/typescriptreact.js +216 -0
  301. package/dist/vb-vb.code-snippets.js +88 -0
  302. package/dist/vb.js +79 -0
  303. package/dist/verilog.js +187 -0
  304. package/dist/{node_modules/monaco-vim/lib/cm/keymap_vim.js → vim.js} +1790 -4
  305. package/dist/volar-vue.js +289 -0
  306. package/dist/vscode-R-r-snippets.js +534 -0
  307. package/dist/vscode-R-rmarkdown.js +461 -0
  308. package/dist/vscode-R.js +660 -0
  309. package/dist/vscode-django-filters.js +340 -0
  310. package/dist/vscode-django.js +37 -0
  311. package/dist/vscode-go-go.js +276 -0
  312. package/dist/vscode-go.js +1610 -0
  313. package/dist/vscode-groovy.js +28 -0
  314. package/dist/vscode-python.js +706 -0
  315. package/dist/vue-directives.js +25 -0
  316. package/dist/vue-interpolations.js +25 -0
  317. package/dist/vue-sfc-style-variable-injection.js +63 -0
  318. package/dist/vue.js +151 -0
  319. package/dist/vue.tmLanguage.js +1218 -0
  320. package/dist/worker.d.ts +10 -1
  321. package/dist/worker.js +43 -11
  322. package/dist/xml.js +116 -0
  323. package/dist/xml.tmLanguage.js +395 -0
  324. package/dist/xsl.js +39 -0
  325. package/dist/xsl.tmLanguage.js +102 -0
  326. package/dist/yaml.js +82 -0
  327. package/dist/yaml.tmLanguage.js +629 -0
  328. package/package.json +67 -127
  329. package/stats.html +1429 -90
  330. package/dist/_virtual/_monaco-editor.js +0 -6
  331. package/dist/_virtual/actions.js +0 -3
  332. package/dist/_virtual/basicInput.js +0 -3
  333. package/dist/_virtual/cm_adapter.js +0 -3
  334. package/dist/_virtual/commands.js +0 -3
  335. package/dist/_virtual/editor.api.js +0 -6
  336. package/dist/_virtual/index.js +0 -3
  337. package/dist/_virtual/index2.js +0 -3
  338. package/dist/_virtual/index3.js +0 -3
  339. package/dist/_virtual/keymap_vim.js +0 -3
  340. package/dist/_virtual/shiftCommand.js +0 -6
  341. package/dist/_virtual/state.js +0 -3
  342. package/dist/_virtual/statusbar.js +0 -3
  343. package/dist/_virtual/util.js +0 -3
  344. package/dist/assets/Angular.ng-template-16.1.8.vsix/expression-c051cd51.json +0 -834
  345. package/dist/assets/Angular.ng-template-16.1.8.vsix/inline-styles-59ea31e9.json +0 -92
  346. package/dist/assets/Angular.ng-template-16.1.8.vsix/inline-template-f0c3f556.json +0 -76
  347. package/dist/assets/Angular.ng-template-16.1.8.vsix/template-e24e3ba1.json +0 -195
  348. package/dist/assets/Dart-Code.dart-code-3.75.20231009.vsix/dart-bea1db40.json +0 -534
  349. package/dist/assets/Dart-Code.dart-code-3.75.20231009.vsix/dart-language-configuration-c4b1f694.json +0 -29
  350. package/dist/assets/Dart-Code.dart-code-3.75.20231009.vsix/flutter_activity_bar-17811551.svg +0 -14
  351. package/dist/assets/IMCTradingBV.svlangserver-0.4.1.vsix/codeblock-67e70f41.json +0 -81
  352. package/dist/assets/IMCTradingBV.svlangserver-0.4.1.vsix/language-configuration-3467c3a6.json +0 -57
  353. package/dist/assets/IMCTradingBV.svlangserver-0.4.1.vsix/systemverilog-ff001e9f.json +0 -349
  354. package/dist/assets/IMCTradingBV.svlangserver-0.4.1.vsix/systemverilog.tmLanguage-31a99a46.json +0 -1246
  355. package/dist/assets/IMCTradingBV.svlangserver-0.4.1.vsix/tasks.schema-832643df.json +0 -30
  356. package/dist/assets/JakeBecker.elixir-ls-0.17.1.vsix/eex-e9a5e762.json +0 -41
  357. package/dist/assets/JakeBecker.elixir-ls-0.17.1.vsix/eex-language-configuration-6fb789e3.json +0 -58
  358. package/dist/assets/JakeBecker.elixir-ls-0.17.1.vsix/elixir-7cb5db44.json +0 -2580
  359. package/dist/assets/JakeBecker.elixir-ls-0.17.1.vsix/elixir-language-configuration-4bd217f4.json +0 -74
  360. package/dist/assets/JakeBecker.elixir-ls-0.17.1.vsix/html-eex-3079072a.json +0 -25
  361. package/dist/assets/JuanBlanco.solidity-0.0.165.vsix/solidity-1f693465.json +0 -213
  362. package/dist/assets/JuanBlanco.solidity-0.0.165.vsix/solidity-642a30e7.json +0 -1215
  363. package/dist/assets/JuanBlanco.solidity-0.0.165.vsix/solidity.configuration-d0229207.json +0 -32
  364. package/dist/assets/REditorSupport.r-2.8.2.vsix/Markdown Redcarpet-12881a56.json +0 -146
  365. package/dist/assets/REditorSupport.r-2.8.2.vsix/RMarkdown-0bbb72c0.json +0 -13
  366. package/dist/assets/REditorSupport.r-2.8.2.vsix/Rcpp-cea57c6d.json +0 -34
  367. package/dist/assets/REditorSupport.r-2.8.2.vsix/Rd (R Documentation)-555f4e62.json +0 -117
  368. package/dist/assets/REditorSupport.r-2.8.2.vsix/Rlogo-6d3318a6.svg +0 -14
  369. package/dist/assets/REditorSupport.r-2.8.2.vsix/dcf-3d561f42.json +0 -82
  370. package/dist/assets/REditorSupport.r-2.8.2.vsix/dcf-configuration-d58bba2d.json +0 -24
  371. package/dist/assets/REditorSupport.r-2.8.2.vsix/r-configuration-78e137e5.json +0 -33
  372. package/dist/assets/REditorSupport.r-2.8.2.vsix/r-fe2a45c3.json +0 -647
  373. package/dist/assets/REditorSupport.r-2.8.2.vsix/r-snippets-9e46c45c.json +0 -475
  374. package/dist/assets/REditorSupport.r-2.8.2.vsix/rbuildignore-9cfe22f1.json +0 -27
  375. package/dist/assets/REditorSupport.r-2.8.2.vsix/rbuildignore-configuration-8eb95bcb.json +0 -2
  376. package/dist/assets/REditorSupport.r-2.8.2.vsix/rd-configuration-194dd9d9.json +0 -27
  377. package/dist/assets/REditorSupport.r-2.8.2.vsix/rmarkdown-dea1e283.json +0 -459
  378. package/dist/assets/REditorSupport.r-2.8.2.vsix/rmd-configuration-b4c6dc23.json +0 -27
  379. package/dist/assets/REditorSupport.r-2.8.2.vsix/rnamespace-290042cd.json +0 -222
  380. package/dist/assets/alefragnani.pascal-9.6.0.vsix/package.nls-8c1cec26.json +0 -24
  381. package/dist/assets/alefragnani.pascal-9.6.0.vsix/package.nls.pt-br-50a237c2.json +0 -24
  382. package/dist/assets/alefragnani.pascal-9.6.0.vsix/pascal-365151a8.json +0 -414
  383. package/dist/assets/alefragnani.pascal-9.6.0.vsix/pascal-93ca5af8.tmLanguage +0 -243
  384. package/dist/assets/alefragnani.pascal-9.6.0.vsix/pascal.configuration-650e481b.json +0 -32
  385. package/dist/assets/batisteo.vscode-django-1.14.0.vsix/django-html.tmLanguage-a755b992.json +0 -701
  386. package/dist/assets/batisteo.vscode-django-1.14.0.vsix/django-txt.tmLanguage-856346a9.json +0 -255
  387. package/dist/assets/batisteo.vscode-django-1.14.0.vsix/filters-f60b575d.json +0 -339
  388. package/dist/assets/batisteo.vscode-django-1.14.0.vsix/language-configuration-f8af0b2f.json +0 -63
  389. package/dist/assets/batisteo.vscode-django-1.14.0.vsix/tags-43e8b685.json +0 -496
  390. package/dist/assets/bitwisecook.tcl-0.4.3.vsix/language-configuration-e9539ff0.json +0 -75
  391. package/dist/assets/bitwisecook.tcl-0.4.3.vsix/tcl-10fb1e40.json +0 -142
  392. package/dist/assets/bitwisecook.tcl-0.4.3.vsix/tcl-d73ae460.json +0 -5474
  393. package/dist/assets/broadcomMFD.cobol-language-support-2.0.3.vsix/COBOL.tmLanguage-67e1eefb.json +0 -216
  394. package/dist/assets/broadcomMFD.cobol-language-support-2.0.3.vsix/lang-config-a301d1b9.json +0 -27
  395. package/dist/assets/broadcomMFD.cobol-language-support-2.0.3.vsix/pgm_conf.schema-f8558717.json +0 -24
  396. package/dist/assets/broadcomMFD.cobol-language-support-2.0.3.vsix/proc_grps.schema-428d2a80.json +0 -55
  397. package/dist/assets/ckolkman.vscode-postgres-1.4.3.vsix/language-configuration-b3cf7aac.json +0 -25
  398. package/dist/assets/ckolkman.vscode-postgres-1.4.3.vsix/pgsql-a84fddae.tmLanguage +0 -413
  399. package/dist/assets/ckolkman.vscode-postgres-1.4.3.vsix/postgres-explorer-ce4bf408.svg +0 -100
  400. package/dist/assets/golang.Go-0.39.1.vsix/go-71588b74.json +0 -274
  401. package/dist/assets/golang.Go-0.39.1.vsix/go.mod.language-configuration-0301a994.json +0 -5
  402. package/dist/assets/golang.Go-0.39.1.vsix/go.mod.tmGrammar-6cbef28b.json +0 -171
  403. package/dist/assets/golang.Go-0.39.1.vsix/go.sum.tmGrammar-36d4acfd.json +0 -44
  404. package/dist/assets/golang.Go-0.39.1.vsix/govulncheck.tmGrammar-3741e2c9.json +0 -123
  405. package/dist/assets/johnsoncodehk.vscode-angular-1.0.22.vsix/angular-directives-77c45bf9.json +0 -123
  406. package/dist/assets/johnsoncodehk.vscode-angular-1.0.22.vsix/angular-interpolations-b1f89745.json +0 -44
  407. package/dist/assets/johnsoncodehk.vscode-angular-1.0.22.vsix/angular-template-language-configuration-4cd1b761.json +0 -8
  408. package/dist/assets/justusadam.language-haskell-3.6.0.vsix/C2Hs-c12145c8.json +0 -23
  409. package/dist/assets/justusadam.language-haskell-3.6.0.vsix/C2Hs-configuration-dc72a3f0.json +0 -29
  410. package/dist/assets/justusadam.language-haskell-3.6.0.vsix/Hsc2Hs-685ef114.json +0 -23
  411. package/dist/assets/justusadam.language-haskell-3.6.0.vsix/Hsc2Hs-configuration-15e5e5c3.json +0 -30
  412. package/dist/assets/justusadam.language-haskell-3.6.0.vsix/alex-07217e37.json +0 -236
  413. package/dist/assets/justusadam.language-haskell-3.6.0.vsix/cabal-8f2b8b9f.json +0 -53
  414. package/dist/assets/justusadam.language-haskell-3.6.0.vsix/cabal-configuration-64e517a3.json +0 -6
  415. package/dist/assets/justusadam.language-haskell-3.6.0.vsix/codeblock-cabal-34484e34.json +0 -28
  416. package/dist/assets/justusadam.language-haskell-3.6.0.vsix/codeblock-haskell-138d661e.json +0 -28
  417. package/dist/assets/justusadam.language-haskell-3.6.0.vsix/codeblock-literate-haskell-90d8db8f.json +0 -28
  418. package/dist/assets/justusadam.language-haskell-3.6.0.vsix/happy-3cd8fa35.json +0 -196
  419. package/dist/assets/justusadam.language-haskell-3.6.0.vsix/haskell-192ef944.json +0 -2525
  420. package/dist/assets/justusadam.language-haskell-3.6.0.vsix/haskell-configuration-54079281.json +0 -29
  421. package/dist/assets/justusadam.language-haskell-3.6.0.vsix/literate-haskell-configuration-23cbb80e.json +0 -29
  422. package/dist/assets/justusadam.language-haskell-3.6.0.vsix/literateHaskell-0a08d9f7.json +0 -56
  423. package/dist/assets/mathiasfrohlich.Kotlin-1.7.1.vsix/Kotlin-5d2aa580.tmLanguage +0 -1067
  424. package/dist/assets/mathiasfrohlich.Kotlin-1.7.1.vsix/codeblock-8be87145.json +0 -22
  425. package/dist/assets/mathiasfrohlich.Kotlin-1.7.1.vsix/kotlin-9f43cb02.json +0 -107
  426. package/dist/assets/mathiasfrohlich.Kotlin-1.7.1.vsix/kotlin.configuration-1d328649.json +0 -35
  427. package/dist/assets/ms-dotnettools.csharp-2.6.24.vsix/aspnetcorerazor.tmLanguage-7002af3f.json +0 -1812
  428. package/dist/assets/ms-dotnettools.csharp-2.6.24.vsix/csharp-a17ace76.json +0 -493
  429. package/dist/assets/ms-dotnettools.csharp-2.6.24.vsix/language-configuration-f8b16509.json +0 -24
  430. package/dist/assets/ms-dotnettools.csharp-2.6.24.vsix/package.nls-b9937871.json +0 -419
  431. package/dist/assets/ms-dotnettools.csharp-2.6.24.vsix/package.nls.cs-80b9e0b3.json +0 -201
  432. package/dist/assets/ms-dotnettools.csharp-2.6.24.vsix/package.nls.de-2f7710c0.json +0 -201
  433. package/dist/assets/ms-dotnettools.csharp-2.6.24.vsix/package.nls.es-d1bd829b.json +0 -201
  434. package/dist/assets/ms-dotnettools.csharp-2.6.24.vsix/package.nls.fr-e0bc41f9.json +0 -201
  435. package/dist/assets/ms-dotnettools.csharp-2.6.24.vsix/package.nls.it-0e21bedf.json +0 -201
  436. package/dist/assets/ms-dotnettools.csharp-2.6.24.vsix/package.nls.ja-2384013f.json +0 -201
  437. package/dist/assets/ms-dotnettools.csharp-2.6.24.vsix/package.nls.ko-621d3dfe.json +0 -201
  438. package/dist/assets/ms-dotnettools.csharp-2.6.24.vsix/package.nls.pl-bd72e09e.json +0 -201
  439. package/dist/assets/ms-dotnettools.csharp-2.6.24.vsix/package.nls.pt-br-a446b36f.json +0 -201
  440. package/dist/assets/ms-dotnettools.csharp-2.6.24.vsix/package.nls.ru-923ade42.json +0 -201
  441. package/dist/assets/ms-dotnettools.csharp-2.6.24.vsix/package.nls.tr-10253fa3.json +0 -201
  442. package/dist/assets/ms-dotnettools.csharp-2.6.24.vsix/package.nls.zh-cn-00cb169d.json +0 -201
  443. package/dist/assets/ms-dotnettools.csharp-2.6.24.vsix/package.nls.zh-tw-1c34b33a.json +0 -201
  444. package/dist/assets/ms-dotnettools.csharp-2.6.24.vsix/vs2019_dark-a56f6e51.json +0 -783
  445. package/dist/assets/ms-dotnettools.csharp-2.6.24.vsix/vs2019_light-fd29b4ae.json +0 -807
  446. package/dist/assets/ms-python.python-2023.19.12861011.vsix/conda-environment-3aa03e16.json +0 -1
  447. package/dist/assets/ms-python.python-2023.19.12861011.vsix/conda-meta-e7f42ee0.json +0 -1
  448. package/dist/assets/ms-python.python-2023.19.12861011.vsix/condarc-8ad258e5.json +0 -1
  449. package/dist/assets/ms-python.python-2023.19.12861011.vsix/package.nls-c97ce436.json +0 -1
  450. package/dist/assets/ms-python.python-2023.19.12861011.vsix/package.nls.cs-5dee4ffc.json +0 -1
  451. package/dist/assets/ms-python.python-2023.19.12861011.vsix/package.nls.de-b852e3ec.json +0 -1
  452. package/dist/assets/ms-python.python-2023.19.12861011.vsix/package.nls.es-66adbb9e.json +0 -1
  453. package/dist/assets/ms-python.python-2023.19.12861011.vsix/package.nls.fr-6abf0276.json +0 -1
  454. package/dist/assets/ms-python.python-2023.19.12861011.vsix/package.nls.it-12650beb.json +0 -1
  455. package/dist/assets/ms-python.python-2023.19.12861011.vsix/package.nls.ja-de4ee3bd.json +0 -1
  456. package/dist/assets/ms-python.python-2023.19.12861011.vsix/package.nls.ko-254d6467.json +0 -1
  457. package/dist/assets/ms-python.python-2023.19.12861011.vsix/package.nls.pl-f957d6c6.json +0 -1
  458. package/dist/assets/ms-python.python-2023.19.12861011.vsix/package.nls.pt-br-d02ca4d9.json +0 -1
  459. package/dist/assets/ms-python.python-2023.19.12861011.vsix/package.nls.qps-ploc-f24b5e76.json +0 -1
  460. package/dist/assets/ms-python.python-2023.19.12861011.vsix/package.nls.ru-e6ba5e62.json +0 -1
  461. package/dist/assets/ms-python.python-2023.19.12861011.vsix/package.nls.tr-05d98040.json +0 -1
  462. package/dist/assets/ms-python.python-2023.19.12861011.vsix/package.nls.zh-cn-f41941e0.json +0 -1
  463. package/dist/assets/ms-python.python-2023.19.12861011.vsix/package.nls.zh-tw-02c30e90.json +0 -1
  464. package/dist/assets/ms-python.python-2023.19.12861011.vsix/pip-requirements-85cd5b06.json +0 -1
  465. package/dist/assets/ms-python.python-2023.19.12861011.vsix/pip-requirements.tmLanguage-5dcdde1f.json +0 -1
  466. package/dist/assets/ms-vscode.cpptools-1.18.0.vsix/package.nls-faad5326.json +0 -1006
  467. package/dist/assets/ms-vscode.cpptools-1.18.0.vsix/package.nls.cs-1c63e64b.json +0 -441
  468. package/dist/assets/ms-vscode.cpptools-1.18.0.vsix/package.nls.de-a80f3548.json +0 -441
  469. package/dist/assets/ms-vscode.cpptools-1.18.0.vsix/package.nls.es-ed5f9669.json +0 -441
  470. package/dist/assets/ms-vscode.cpptools-1.18.0.vsix/package.nls.fr-0a6f6680.json +0 -441
  471. package/dist/assets/ms-vscode.cpptools-1.18.0.vsix/package.nls.it-690d744e.json +0 -441
  472. package/dist/assets/ms-vscode.cpptools-1.18.0.vsix/package.nls.ja-9e548ee8.json +0 -441
  473. package/dist/assets/ms-vscode.cpptools-1.18.0.vsix/package.nls.ko-b7c6d97d.json +0 -441
  474. package/dist/assets/ms-vscode.cpptools-1.18.0.vsix/package.nls.pl-fac1f880.json +0 -441
  475. package/dist/assets/ms-vscode.cpptools-1.18.0.vsix/package.nls.pt-br-618e6fff.json +0 -441
  476. package/dist/assets/ms-vscode.cpptools-1.18.0.vsix/package.nls.ru-b8aa8e97.json +0 -441
  477. package/dist/assets/ms-vscode.cpptools-1.18.0.vsix/package.nls.tr-61b293ea.json +0 -441
  478. package/dist/assets/ms-vscode.cpptools-1.18.0.vsix/package.nls.zh-cn-2fb473f1.json +0 -441
  479. package/dist/assets/ms-vscode.cpptools-1.18.0.vsix/package.nls.zh-tw-bd960e98.json +0 -441
  480. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/META-a4e7fa6f.json +0 -56
  481. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/META-e71a284d.json +0 -10
  482. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/atd-03beef93.json +0 -57
  483. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/cram-947e10d8.json +0 -167
  484. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/dune-3f9df928.json +0 -24
  485. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/dune-ac59c79b.json +0 -2949
  486. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/dune-b84b8558.json +0 -30
  487. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/dune-project-1f8165b1.json +0 -26
  488. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/dune-project-c3d6414c.json +0 -326
  489. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/dune-workspace-714d48f4.json +0 -191
  490. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/logo-1ec58c70.svg +0 -3
  491. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/menhir-318b208e.json +0 -349
  492. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/menhir-action-1de9ecfe.json +0 -29
  493. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/menhir-ba3ffd84.json +0 -27
  494. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/merlin-68658127.json +0 -73
  495. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/oasis-6cb9104d.json +0 -6
  496. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/oasis-b3731651.json +0 -69
  497. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/ocaml-2b852e88.json +0 -54
  498. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/ocaml-721ae493.json +0 -654
  499. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/ocaml-8263d04c.json +0 -49
  500. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/ocaml-markdown-codeblock-d59b1879.json +0 -24
  501. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/ocaml.interface-82c9d397.json +0 -161
  502. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/ocamlbuild-28c2016d.json +0 -110
  503. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/ocamlbuild-68c3ee9d.json +0 -16
  504. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/ocamldoc-68623cf8.json +0 -31
  505. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/ocamlformat-12d00ff4.json +0 -5
  506. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/ocamlformat-566f44ca.json +0 -191
  507. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/ocamllex-16f56b53.json +0 -6
  508. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/ocamllex-2f54f6a7.json +0 -21
  509. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/ocamllex-9eea3c0f.json +0 -108
  510. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/opam-051cc018.json +0 -24
  511. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/opam-a3126c97.json +0 -111
  512. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/opam-install-24f044a3.json +0 -23
  513. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/opam-install-5c433c27.json +0 -19
  514. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/reason-46868a8a.json +0 -2357
  515. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/reason-e5da4a73.json +0 -25
  516. package/dist/assets/ocamllabs.ocaml-platform-1.13.1.vsix/reason-markdown-codeblock-80e4eeb5.json +0 -24
  517. package/dist/assets/pgourlain.erlang-0.9.7.vsix/Erlang-dc87abbd.plist +0 -2719
  518. package/dist/assets/pgourlain.erlang-0.9.7.vsix/erlang-ceac2319.json +0 -197
  519. package/dist/assets/pgourlain.erlang-0.9.7.vsix/erlang.configuration-52d0fdab.json +0 -25
  520. package/dist/assets/redhat.java-1.24.2023101604.vsix/JavaProperties.tmLanguage-0a8c48eb.json +0 -103
  521. package/dist/assets/redhat.java-1.24.2023101604.vsix/java-properties-configuration-97f1db18.json +0 -67
  522. package/dist/assets/redhat.java-1.24.2023101604.vsix/java.tmLanguage-7cffeca4.json +0 -1892
  523. package/dist/assets/redhat.java-1.24.2023101604.vsix/language-configuration-054e92b8.json +0 -92
  524. package/dist/assets/redhat.java-1.24.2023101604.vsix/package.nls-2147d73e.json +0 -29
  525. package/dist/assets/redhat.java-1.24.2023101604.vsix/package.nls.ko-a7811004.json +0 -26
  526. package/dist/assets/redhat.java-1.24.2023101604.vsix/package.nls.zh-cn-5b3edff8.json +0 -27
  527. package/dist/assets/redhat.java-1.24.2023101604.vsix/package.nls.zh-tw-236ee4a0.json +0 -26
  528. package/dist/assets/redhat.java-1.24.2023101604.vsix/package.schema-58232c4f.json +0 -28
  529. package/dist/assets/scala-lang.scala-0.5.7.vsix/Scala.tmLanguage-e9b79520.json +0 -1
  530. package/dist/assets/scala-lang.scala-0.5.7.vsix/language-configuration-acc80ed1.json +0 -33
  531. package/dist/assets/scalameta.metals-1.25.2.vsix/book-dark-6f0d6908.svg +0 -5
  532. package/dist/assets/scalameta.metals-1.25.2.vsix/book-light-ba883494.svg +0 -1
  533. package/dist/assets/scalameta.metals-1.25.2.vsix/buildtarget-73bbface.json +0 -37
  534. package/dist/assets/scalameta.metals-1.25.2.vsix/file_type_java-36bb31ca.svg +0 -1
  535. package/dist/assets/scalameta.metals-1.25.2.vsix/file_type_scala-b6c14b23.svg +0 -1
  536. package/dist/assets/scalameta.metals-1.25.2.vsix/jvm-bytecode-cab4d04e.json +0 -395
  537. package/dist/assets/scalameta.metals-1.25.2.vsix/jvm-bytecode-verbose-3611fa8e.json +0 -745
  538. package/dist/assets/scalameta.metals-1.25.2.vsix/scalameta-5e510695.svg +0 -11
  539. package/dist/assets/scalameta.metals-1.25.2.vsix/scalameta-logo-f3b7b0bf.png +0 -0
  540. package/dist/assets/scalameta.metals-1.25.2.vsix/semanticdb-44c14f33.json +0 -37
  541. package/dist/assets/scalameta.metals-1.25.2.vsix/tasty-c2b151f2.json +0 -56
  542. package/dist/assets/sumneko.lua-3.7.0.vsix/package.nls-f1576108.json +0 -231
  543. package/dist/assets/sumneko.lua-3.7.0.vsix/package.nls.pt-br-44d0849d.json +0 -231
  544. package/dist/assets/sumneko.lua-3.7.0.vsix/package.nls.zh-cn-3f634909.json +0 -231
  545. package/dist/assets/sumneko.lua-3.7.0.vsix/package.nls.zh-tw-144dc848.json +0 -231
  546. package/dist/assets/sumneko.lua-3.7.0.vsix/schema-dedfd658.json +0 -3421
  547. package/dist/assets/svelte.svelte-vscode-107.12.0.vsix/javascript-7aebc91a.json +0 -43
  548. package/dist/assets/svelte.svelte-vscode-107.12.0.vsix/language-configuration-3cb1f78d.json +0 -38
  549. package/dist/assets/svelte.svelte-vscode-107.12.0.vsix/markdown-svelte-4cd58a41.json +0 -45
  550. package/dist/assets/svelte.svelte-vscode-107.12.0.vsix/markdown-svelte-css-0fdc510e.json +0 -23
  551. package/dist/assets/svelte.svelte-vscode-107.12.0.vsix/markdown-svelte-js-cd568059.json +0 -23
  552. package/dist/assets/svelte.svelte-vscode-107.12.0.vsix/package-json-schema-ec2f7bd4.json +0 -9
  553. package/dist/assets/svelte.svelte-vscode-107.12.0.vsix/postcss-05883dcd.json +0 -377
  554. package/dist/assets/svelte.svelte-vscode-107.12.0.vsix/prettier-options-schema-9e36a684.json +0 -112
  555. package/dist/assets/svelte.svelte-vscode-107.12.0.vsix/pug-svelte-04246371.json +0 -293
  556. package/dist/assets/svelte.svelte-vscode-107.12.0.vsix/pug-svelte-dotblock-b92db507.json +0 -55
  557. package/dist/assets/svelte.svelte-vscode-107.12.0.vsix/pug-svelte-tags-65124af1.json +0 -201
  558. package/dist/assets/svelte.svelte-vscode-107.12.0.vsix/svelte-a1bb47f3.json +0 -22
  559. package/dist/assets/svelte.svelte-vscode-107.12.0.vsix/svelte.tmLanguage-aec82be9.json +0 -1163
  560. package/dist/assets/svelte.svelte-vscode-107.12.0.vsix/typescript-bd1c0ff1.json +0 -37
  561. package/dist/assets/webfreak.code-d-0.23.2.vsix/d-2da26fd0.json +0 -3163
  562. package/dist/assets/webfreak.code-d-0.23.2.vsix/d-316cb838.json +0 -90
  563. package/dist/assets/webfreak.code-d-0.23.2.vsix/diet-0b761e76.json +0 -87
  564. package/dist/assets/webfreak.code-d-0.23.2.vsix/diet-7fe4fdb7.json +0 -92
  565. package/dist/assets/webfreak.code-d-0.23.2.vsix/diet-83c1bebc.json +0 -742
  566. package/dist/assets/webfreak.code-d-0.23.2.vsix/dml-ef6957d3.json +0 -157
  567. package/dist/assets/webfreak.code-d-0.23.2.vsix/dub.schema-77c2f417.json +0 -377
  568. package/dist/assets/webfreak.code-d-0.23.2.vsix/general-7b927912.json +0 -84
  569. package/dist/assets/webfreak.code-d-0.23.2.vsix/sdl-b6c61596.json +0 -149
  570. package/dist/configuration/index.js +0 -45
  571. package/dist/editor/autofold.js +0 -24
  572. package/dist/editor/cobol.js +0 -67
  573. package/dist/editor/index.js +0 -9
  574. package/dist/extensions/Angular.ng-template-16.1.8.vsix.js +0 -16
  575. package/dist/extensions/Dart-Code.dart-code-3.75.20231009.vsix.js +0 -14
  576. package/dist/extensions/IMCTradingBV.svlangserver-0.4.1.vsix.js +0 -18
  577. package/dist/extensions/JakeBecker.elixir-ls-0.17.1.vsix.js +0 -18
  578. package/dist/extensions/JuanBlanco.solidity-0.0.165.vsix.js +0 -14
  579. package/dist/extensions/REditorSupport.r-2.8.2.vsix.js +0 -42
  580. package/dist/extensions/alefragnani.pascal-9.6.0.vsix.js +0 -18
  581. package/dist/extensions/batisteo.vscode-django-1.14.0.vsix.js +0 -18
  582. package/dist/extensions/bitwisecook.tcl-0.4.3.vsix.js +0 -14
  583. package/dist/extensions/broadcomMFD.cobol-language-support-2.0.3.vsix.js +0 -16
  584. package/dist/extensions/castwide.solargraph-0.24.0.vsix.js +0 -5
  585. package/dist/extensions/ckolkman.vscode-postgres-1.4.3.vsix.js +0 -14
  586. package/dist/extensions/golang.Go-0.39.1.vsix.js +0 -18
  587. package/dist/extensions/johnsoncodehk.vscode-angular-1.0.22.vsix.js +0 -14
  588. package/dist/extensions/justusadam.language-haskell-3.6.0.vsix.js +0 -38
  589. package/dist/extensions/mathiasfrohlich.Kotlin-1.7.1.vsix.js +0 -16
  590. package/dist/extensions/ms-dotnettools.csharp-2.6.24.vsix.js +0 -46
  591. package/dist/extensions/ms-python.python-2023.19.12861011.vsix.js +0 -48
  592. package/dist/extensions/ms-vscode.cpptools-1.18.0.vsix.js +0 -36
  593. package/dist/extensions/ocamllabs.ocaml-platform-1.13.1.vsix.js +0 -82
  594. package/dist/extensions/pgourlain.erlang-0.9.7.vsix.js +0 -14
  595. package/dist/extensions/redhat.java-1.24.2023101604.vsix.js +0 -26
  596. package/dist/extensions/scala-lang.scala-0.5.7.vsix.js +0 -12
  597. package/dist/extensions/scalameta.metals-1.25.2.vsix.js +0 -30
  598. package/dist/extensions/sumneko.lua-3.7.0.vsix.js +0 -18
  599. package/dist/extensions/svelte.svelte-vscode-107.12.0.vsix.js +0 -36
  600. package/dist/extensions/webfreak.code-d-0.23.2.vsix.js +0 -26
  601. package/dist/extensions.d.ts +0 -36
  602. package/dist/features/debug.js +0 -6
  603. package/dist/features/extensionHostWorker.js +0 -11
  604. package/dist/features/search.d.ts +0 -1
  605. package/dist/features/search.js +0 -7
  606. package/dist/features/viewPanels.d.ts +0 -1
  607. package/dist/features/viewPanels.js +0 -11
  608. package/dist/features/views.d.ts +0 -4
  609. package/dist/features/views.js +0 -27
  610. package/dist/keybindings/index.js +0 -36
  611. package/dist/keybindings/vim.js +0 -82
  612. package/dist/languages/index.js +0 -40
  613. package/dist/monaco.js +0 -93
  614. package/dist/node_modules/lodash.kebabcase/index.js +0 -439
  615. package/dist/node_modules/lodash.throttle/index.js +0 -443
  616. package/dist/node_modules/monaco-emacs/lib/emacs/actions.js +0 -596
  617. package/dist/node_modules/monaco-emacs/lib/emacs/basicInput.js +0 -113
  618. package/dist/node_modules/monaco-emacs/lib/emacs/commands.js +0 -184
  619. package/dist/node_modules/monaco-emacs/lib/emacs/index.js +0 -186
  620. package/dist/node_modules/monaco-emacs/lib/emacs/state.js +0 -116
  621. package/dist/node_modules/monaco-emacs/lib/emacs/util.js +0 -112
  622. package/dist/node_modules/monaco-emacs/lib/index.js +0 -31
  623. package/dist/node_modules/monaco-vim/lib/cm_adapter.js +0 -1393
  624. package/dist/node_modules/monaco-vim/lib/index.js +0 -71
  625. package/dist/node_modules/monaco-vim/lib/statusbar.js +0 -239
  626. package/dist/services.d.ts +0 -8
  627. package/dist/services.js +0 -73
  628. package/dist/style.js +0 -12
  629. package/dist/theme/index.js +0 -21
  630. package/dist/tools/EditorOpenHandlerRegistry.js +0 -108
  631. package/dist/tools/FakeWorker.d.ts +0 -5
  632. package/dist/tools/FakeWorker.js +0 -8
  633. package/dist/tools.js +0 -235
  634. /package/dist/{editor → extensions}/autofold.d.ts +0 -0
  635. /package/dist/{editor → extensions}/cobol.d.ts +0 -0
  636. /package/dist/{editor → extensions}/index.d.ts +0 -0
  637. /package/dist/{features/debug.d.ts → languages/snippets/index.d.ts} +0 -0
  638. /package/dist/{features/extensionHostWorker.d.ts → languages/textMate/semanticTokens.d.ts} +0 -0
@@ -0,0 +1,4036 @@
1
+ var information_for_contributors = [
2
+ "This file has been converted from https://github.com/microsoft/vscode/blob/master/extensions/php/",
3
+ "If you want to provide a fix or improvement, please create a pull request against the original repository.",
4
+ "Once accepted there, we are happy to receive an update request."
5
+ ];
6
+ var version = "https://github.com/KapitanOczywisty/language-php/commit/5e8f000cb5a20f44f7a7a89d07ad0774031c53f3";
7
+ var scopeName = "source.php";
8
+ var patterns = [
9
+ {
10
+ include: "#attribute"
11
+ },
12
+ {
13
+ include: "#comments"
14
+ },
15
+ {
16
+ match: "(?i)(?:^|(?<=<\\?php))\\s*(namespace)\\s+([a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+)(?=\\s*;)",
17
+ name: "meta.namespace.php",
18
+ captures: {
19
+ "1": {
20
+ name: "keyword.other.namespace.php"
21
+ },
22
+ "2": {
23
+ name: "entity.name.type.namespace.php",
24
+ patterns: [
25
+ {
26
+ match: "\\\\",
27
+ name: "punctuation.separator.inheritance.php"
28
+ }
29
+ ]
30
+ }
31
+ }
32
+ },
33
+ {
34
+ begin: "(?i)(?:^|(?<=<\\?php))\\s*(namespace)\\s+",
35
+ beginCaptures: {
36
+ "1": {
37
+ name: "keyword.other.namespace.php"
38
+ }
39
+ },
40
+ end: "(?<=})|(?=\\?>)",
41
+ name: "meta.namespace.php",
42
+ patterns: [
43
+ {
44
+ include: "#comments"
45
+ },
46
+ {
47
+ match: "(?i)[a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+",
48
+ name: "entity.name.type.namespace.php",
49
+ captures: {
50
+ "0": {
51
+ patterns: [
52
+ {
53
+ match: "\\\\",
54
+ name: "punctuation.separator.inheritance.php"
55
+ }
56
+ ]
57
+ }
58
+ }
59
+ },
60
+ {
61
+ begin: "{",
62
+ beginCaptures: {
63
+ "0": {
64
+ name: "punctuation.definition.namespace.begin.bracket.curly.php"
65
+ }
66
+ },
67
+ end: "}|(?=\\?>)",
68
+ endCaptures: {
69
+ "0": {
70
+ name: "punctuation.definition.namespace.end.bracket.curly.php"
71
+ }
72
+ },
73
+ patterns: [
74
+ {
75
+ include: "$self"
76
+ }
77
+ ]
78
+ },
79
+ {
80
+ match: "[^\\s]+",
81
+ name: "invalid.illegal.identifier.php"
82
+ }
83
+ ]
84
+ },
85
+ {
86
+ match: "\\s+(?=use\\b)"
87
+ },
88
+ {
89
+ begin: "(?i)\\buse\\b",
90
+ beginCaptures: {
91
+ "0": {
92
+ name: "keyword.other.use.php"
93
+ }
94
+ },
95
+ end: "(?<=})|(?=;)|(?=\\?>)",
96
+ name: "meta.use.php",
97
+ patterns: [
98
+ {
99
+ match: "\\b(const|function)\\b",
100
+ name: "storage.type.${1:/downcase}.php"
101
+ },
102
+ {
103
+ begin: "{",
104
+ beginCaptures: {
105
+ "0": {
106
+ name: "punctuation.definition.use.begin.bracket.curly.php"
107
+ }
108
+ },
109
+ end: "}",
110
+ endCaptures: {
111
+ "0": {
112
+ name: "punctuation.definition.use.end.bracket.curly.php"
113
+ }
114
+ },
115
+ patterns: [
116
+ {
117
+ include: "#scope-resolution"
118
+ },
119
+ {
120
+ match: "(?xi)\n\\b(as)\n\\s+(final|abstract|public|private|protected|static)\n\\s+([a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)",
121
+ captures: {
122
+ "1": {
123
+ name: "keyword.other.use-as.php"
124
+ },
125
+ "2": {
126
+ name: "storage.modifier.php"
127
+ },
128
+ "3": {
129
+ name: "entity.other.alias.php"
130
+ }
131
+ }
132
+ },
133
+ {
134
+ match: "(?xi)\n\\b(as)\n\\s+([a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)",
135
+ captures: {
136
+ "1": {
137
+ name: "keyword.other.use-as.php"
138
+ },
139
+ "2": {
140
+ patterns: [
141
+ {
142
+ match: "^(?:final|abstract|public|private|protected|static)$",
143
+ name: "storage.modifier.php"
144
+ },
145
+ {
146
+ match: ".+",
147
+ name: "entity.other.alias.php"
148
+ }
149
+ ]
150
+ }
151
+ }
152
+ },
153
+ {
154
+ match: "(?i)\\b(insteadof)\\s+([a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)",
155
+ captures: {
156
+ "1": {
157
+ name: "keyword.other.use-insteadof.php"
158
+ },
159
+ "2": {
160
+ name: "support.class.php"
161
+ }
162
+ }
163
+ },
164
+ {
165
+ match: ";",
166
+ name: "punctuation.terminator.expression.php"
167
+ },
168
+ {
169
+ include: "#use-inner"
170
+ }
171
+ ]
172
+ },
173
+ {
174
+ include: "#use-inner"
175
+ }
176
+ ]
177
+ },
178
+ {
179
+ begin: "(?ix)\n\\b(trait)\\s+([a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)",
180
+ beginCaptures: {
181
+ "1": {
182
+ name: "storage.type.trait.php"
183
+ },
184
+ "2": {
185
+ name: "entity.name.type.trait.php"
186
+ }
187
+ },
188
+ end: "}|(?=\\?>)",
189
+ endCaptures: {
190
+ "0": {
191
+ name: "punctuation.definition.trait.end.bracket.curly.php"
192
+ }
193
+ },
194
+ name: "meta.trait.php",
195
+ patterns: [
196
+ {
197
+ include: "#comments"
198
+ },
199
+ {
200
+ begin: "{",
201
+ beginCaptures: {
202
+ "0": {
203
+ name: "punctuation.definition.trait.begin.bracket.curly.php"
204
+ }
205
+ },
206
+ end: "(?=}|\\?>)",
207
+ contentName: "meta.trait.body.php",
208
+ patterns: [
209
+ {
210
+ include: "$self"
211
+ }
212
+ ]
213
+ }
214
+ ]
215
+ },
216
+ {
217
+ begin: "(?ix)\n\\b(interface)\\s+([a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)",
218
+ beginCaptures: {
219
+ "1": {
220
+ name: "storage.type.interface.php"
221
+ },
222
+ "2": {
223
+ name: "entity.name.type.interface.php"
224
+ }
225
+ },
226
+ end: "}|(?=\\?>)",
227
+ endCaptures: {
228
+ "0": {
229
+ name: "punctuation.definition.interface.end.bracket.curly.php"
230
+ }
231
+ },
232
+ name: "meta.interface.php",
233
+ patterns: [
234
+ {
235
+ include: "#comments"
236
+ },
237
+ {
238
+ include: "#interface-extends"
239
+ },
240
+ {
241
+ begin: "{",
242
+ beginCaptures: {
243
+ "0": {
244
+ name: "punctuation.definition.interface.begin.bracket.curly.php"
245
+ }
246
+ },
247
+ end: "(?=}|\\?>)",
248
+ contentName: "meta.interface.body.php",
249
+ patterns: [
250
+ {
251
+ include: "#class-constant"
252
+ },
253
+ {
254
+ include: "$self"
255
+ }
256
+ ]
257
+ }
258
+ ]
259
+ },
260
+ {
261
+ begin: "(?ix)\n\\b(enum)\\s+([a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)\n(?: \\s* (:) \\s* (int | string) \\b )?",
262
+ beginCaptures: {
263
+ "1": {
264
+ name: "storage.type.enum.php"
265
+ },
266
+ "2": {
267
+ name: "entity.name.type.enum.php"
268
+ },
269
+ "3": {
270
+ name: "keyword.operator.return-value.php"
271
+ },
272
+ "4": {
273
+ name: "keyword.other.type.php"
274
+ }
275
+ },
276
+ end: "}|(?=\\?>)",
277
+ endCaptures: {
278
+ "0": {
279
+ name: "punctuation.definition.enum.end.bracket.curly.php"
280
+ }
281
+ },
282
+ name: "meta.enum.php",
283
+ patterns: [
284
+ {
285
+ include: "#comments"
286
+ },
287
+ {
288
+ include: "#class-implements"
289
+ },
290
+ {
291
+ begin: "{",
292
+ beginCaptures: {
293
+ "0": {
294
+ name: "punctuation.definition.enum.begin.bracket.curly.php"
295
+ }
296
+ },
297
+ end: "(?=}|\\?>)",
298
+ contentName: "meta.enum.body.php",
299
+ patterns: [
300
+ {
301
+ match: "(?i)\\b(case)\\s*([a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)",
302
+ captures: {
303
+ "1": {
304
+ name: "storage.modifier.php"
305
+ },
306
+ "2": {
307
+ name: "constant.enum.php"
308
+ }
309
+ }
310
+ },
311
+ {
312
+ include: "#class-constant"
313
+ },
314
+ {
315
+ include: "$self"
316
+ }
317
+ ]
318
+ }
319
+ ]
320
+ },
321
+ {
322
+ begin: "(?ix)\n(?:\n \\b((?:(?:final|abstract|readonly)\\s+)*)(class)\\s+([a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)\n |\\b(new)\\b\\s*(\\#\\[.*\\])?\\s*(?:(readonly)\\s+)?\\b(class)\\b # anonymous class\n)",
323
+ beginCaptures: {
324
+ "1": {
325
+ patterns: [
326
+ {
327
+ match: "final|abstract",
328
+ name: "storage.modifier.${0:/downcase}.php"
329
+ },
330
+ {
331
+ match: "readonly",
332
+ name: "storage.modifier.php"
333
+ }
334
+ ]
335
+ },
336
+ "2": {
337
+ name: "storage.type.class.php"
338
+ },
339
+ "3": {
340
+ name: "entity.name.type.class.php"
341
+ },
342
+ "4": {
343
+ name: "keyword.other.new.php"
344
+ },
345
+ "5": {
346
+ patterns: [
347
+ {
348
+ include: "#attribute"
349
+ }
350
+ ]
351
+ },
352
+ "6": {
353
+ name: "storage.modifier.php"
354
+ },
355
+ "7": {
356
+ name: "storage.type.class.php"
357
+ }
358
+ },
359
+ end: "}|(?=\\?>)",
360
+ endCaptures: {
361
+ "0": {
362
+ name: "punctuation.definition.class.end.bracket.curly.php"
363
+ }
364
+ },
365
+ name: "meta.class.php",
366
+ patterns: [
367
+ {
368
+ begin: "(?<=class)\\s*(\\()",
369
+ beginCaptures: {
370
+ "1": {
371
+ name: "punctuation.definition.arguments.begin.bracket.round.php"
372
+ }
373
+ },
374
+ end: "\\)|(?=\\?>)",
375
+ endCaptures: {
376
+ "0": {
377
+ name: "punctuation.definition.arguments.end.bracket.round.php"
378
+ }
379
+ },
380
+ name: "meta.function-call.php",
381
+ patterns: [
382
+ {
383
+ include: "#named-arguments"
384
+ },
385
+ {
386
+ include: "$self"
387
+ }
388
+ ]
389
+ },
390
+ {
391
+ include: "#comments"
392
+ },
393
+ {
394
+ include: "#class-extends"
395
+ },
396
+ {
397
+ include: "#class-implements"
398
+ },
399
+ {
400
+ begin: "{",
401
+ beginCaptures: {
402
+ "0": {
403
+ name: "punctuation.definition.class.begin.bracket.curly.php"
404
+ }
405
+ },
406
+ end: "(?=}|\\?>)",
407
+ contentName: "meta.class.body.php",
408
+ patterns: [
409
+ {
410
+ include: "#class-constant"
411
+ },
412
+ {
413
+ include: "$self"
414
+ }
415
+ ]
416
+ }
417
+ ]
418
+ },
419
+ {
420
+ include: "#match_statement"
421
+ },
422
+ {
423
+ include: "#switch_statement"
424
+ },
425
+ {
426
+ match: "\\s*\\b(yield\\s+from)\\b",
427
+ captures: {
428
+ "1": {
429
+ name: "keyword.control.yield-from.php"
430
+ }
431
+ }
432
+ },
433
+ {
434
+ match: "(?x)\n\\b(\n break|case|continue|declare|default|die|do|\n else(if)?|end(declare|for(each)?|if|switch|while)|exit|\n for(each)?|if|return|switch|use|while|yield\n)\\b",
435
+ captures: {
436
+ "1": {
437
+ name: "keyword.control.${1:/downcase}.php"
438
+ }
439
+ }
440
+ },
441
+ {
442
+ begin: "(?i)\\b((?:require|include)(?:_once)?)(\\s+|(?=\\())",
443
+ beginCaptures: {
444
+ "1": {
445
+ name: "keyword.control.import.include.php"
446
+ }
447
+ },
448
+ end: "(?=\\s|;|$|\\?>)",
449
+ name: "meta.include.php",
450
+ patterns: [
451
+ {
452
+ include: "$self"
453
+ }
454
+ ]
455
+ },
456
+ {
457
+ begin: "\\b(catch)\\s*(\\()",
458
+ beginCaptures: {
459
+ "1": {
460
+ name: "keyword.control.exception.catch.php"
461
+ },
462
+ "2": {
463
+ name: "punctuation.definition.parameters.begin.bracket.round.php"
464
+ }
465
+ },
466
+ end: "\\)",
467
+ endCaptures: {
468
+ "0": {
469
+ name: "punctuation.definition.parameters.end.bracket.round.php"
470
+ }
471
+ },
472
+ name: "meta.catch.php",
473
+ patterns: [
474
+ {
475
+ match: "(?xi)\n([a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ (?: \\s*\\|\\s* [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+)*) # union or single exception class\n\\s*\n((\\$+)[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)? # Variable",
476
+ captures: {
477
+ "1": {
478
+ patterns: [
479
+ {
480
+ match: "\\|",
481
+ name: "punctuation.separator.delimiter.php"
482
+ },
483
+ {
484
+ begin: "(?i)(?=[\\\\a-z_\\x{7f}-\\x{10ffff}])",
485
+ end: "(?xi)\n( [a-z_\\x{7f}-\\x{10ffff}] [a-z0-9_\\x{7f}-\\x{10ffff}]* )\n(?![a-z0-9_\\x{7f}-\\x{10ffff}\\\\])",
486
+ endCaptures: {
487
+ "1": {
488
+ name: "support.class.exception.php"
489
+ }
490
+ },
491
+ patterns: [
492
+ {
493
+ include: "#namespace"
494
+ }
495
+ ]
496
+ }
497
+ ]
498
+ },
499
+ "2": {
500
+ name: "variable.other.php"
501
+ },
502
+ "3": {
503
+ name: "punctuation.definition.variable.php"
504
+ }
505
+ }
506
+ }
507
+ ]
508
+ },
509
+ {
510
+ match: "\\b(catch|try|throw|exception|finally)\\b",
511
+ name: "keyword.control.exception.php"
512
+ },
513
+ {
514
+ begin: "(?i)\\b(function)\\s*(?=&?\\s*\\()",
515
+ beginCaptures: {
516
+ "1": {
517
+ name: "storage.type.function.php"
518
+ }
519
+ },
520
+ end: "(?=\\s*{)",
521
+ name: "meta.function.closure.php",
522
+ patterns: [
523
+ {
524
+ include: "#comments"
525
+ },
526
+ {
527
+ begin: "(&)?\\s*(\\()",
528
+ beginCaptures: {
529
+ "1": {
530
+ name: "storage.modifier.reference.php"
531
+ },
532
+ "2": {
533
+ name: "punctuation.definition.parameters.begin.bracket.round.php"
534
+ }
535
+ },
536
+ contentName: "meta.function.parameters.php",
537
+ end: "\\)",
538
+ endCaptures: {
539
+ "0": {
540
+ name: "punctuation.definition.parameters.end.bracket.round.php"
541
+ }
542
+ },
543
+ patterns: [
544
+ {
545
+ include: "#function-parameters"
546
+ }
547
+ ]
548
+ },
549
+ {
550
+ begin: "(?i)(use)\\s*(\\()",
551
+ beginCaptures: {
552
+ "1": {
553
+ name: "keyword.other.function.use.php"
554
+ },
555
+ "2": {
556
+ name: "punctuation.definition.parameters.begin.bracket.round.php"
557
+ }
558
+ },
559
+ end: "\\)",
560
+ endCaptures: {
561
+ "0": {
562
+ name: "punctuation.definition.parameters.end.bracket.round.php"
563
+ }
564
+ },
565
+ name: "meta.function.closure.use.php",
566
+ patterns: [
567
+ {
568
+ match: ",",
569
+ name: "punctuation.separator.delimiter.php"
570
+ },
571
+ {
572
+ captures: {
573
+ "1": {
574
+ name: "variable.other.php"
575
+ },
576
+ "2": {
577
+ name: "storage.modifier.reference.php"
578
+ },
579
+ "3": {
580
+ name: "punctuation.definition.variable.php"
581
+ }
582
+ },
583
+ match: "(?i)((?:(&)\\s*)?(\\$+)[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)\\s*(?=,|\\))"
584
+ }
585
+ ]
586
+ },
587
+ {
588
+ match: "(?xi)\n(:)\\s*\n(\n # nullable type\n (?:\\?\\s*)? [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ |\n # union, intersection or DNF type\n (?: [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ | \\(\\s* [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+(?:\\s*&\\s*[a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+)+ \\s*\\) )\n (?: \\s*[|&]\\s*\n (?: [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ | \\(\\s* [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+(?:\\s*&\\s*[a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+)+ \\s*\\) )\n )+\n)\n(?=\\s*(?:{|/[/*]|\\#|$))",
589
+ captures: {
590
+ "1": {
591
+ name: "keyword.operator.return-value.php"
592
+ },
593
+ "2": {
594
+ patterns: [
595
+ {
596
+ include: "#php-types"
597
+ }
598
+ ]
599
+ }
600
+ }
601
+ }
602
+ ]
603
+ },
604
+ {
605
+ begin: "(?i)\\b(fn)\\s*(?=&?\\s*\\()",
606
+ beginCaptures: {
607
+ "1": {
608
+ name: "storage.type.function.php"
609
+ }
610
+ },
611
+ end: "=>",
612
+ endCaptures: {
613
+ "0": {
614
+ name: "punctuation.definition.arrow.php"
615
+ }
616
+ },
617
+ name: "meta.function.closure.php",
618
+ patterns: [
619
+ {
620
+ begin: "(?:(&)\\s*)?(\\()",
621
+ beginCaptures: {
622
+ "1": {
623
+ name: "storage.modifier.reference.php"
624
+ },
625
+ "2": {
626
+ name: "punctuation.definition.parameters.begin.bracket.round.php"
627
+ }
628
+ },
629
+ contentName: "meta.function.parameters.php",
630
+ end: "\\)",
631
+ endCaptures: {
632
+ "0": {
633
+ name: "punctuation.definition.parameters.end.bracket.round.php"
634
+ }
635
+ },
636
+ patterns: [
637
+ {
638
+ include: "#function-parameters"
639
+ }
640
+ ]
641
+ },
642
+ {
643
+ match: "(?xi)\n(:)\\s*\n(\n # nullable type\n (?:\\?\\s*)? [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ |\n # union, intersection or DNF type\n (?: [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ | \\(\\s* [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+(?:\\s*&\\s*[a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+)+ \\s*\\) )\n (?: \\s*[|&]\\s*\n (?: [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ | \\(\\s* [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+(?:\\s*&\\s*[a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+)+ \\s*\\) )\n )+\n)\n(?=\\s*(?:=>|/[/*]|\\#|$))",
644
+ captures: {
645
+ "1": {
646
+ name: "keyword.operator.return-value.php"
647
+ },
648
+ "2": {
649
+ patterns: [
650
+ {
651
+ include: "#php-types"
652
+ }
653
+ ]
654
+ }
655
+ }
656
+ }
657
+ ]
658
+ },
659
+ {
660
+ begin: "(?x)\n((?:(?:final|abstract|public|private|protected)\\s+)*)\n(function)\\s+(__construct)\n\\s*(\\()",
661
+ beginCaptures: {
662
+ "1": {
663
+ patterns: [
664
+ {
665
+ match: "final|abstract|public|private|protected",
666
+ name: "storage.modifier.php"
667
+ }
668
+ ]
669
+ },
670
+ "2": {
671
+ name: "storage.type.function.php"
672
+ },
673
+ "3": {
674
+ name: "support.function.constructor.php"
675
+ },
676
+ "4": {
677
+ name: "punctuation.definition.parameters.begin.bracket.round.php"
678
+ }
679
+ },
680
+ contentName: "meta.function.parameters.php",
681
+ end: "(?xi)\n(\\)) \\s* ( : \\s*\n (?:\\?\\s*)? (?!\\s) [a-z0-9_\\x{7f}-\\x{10ffff}\\\\\\s\\|&()]+ (?<!\\s)\n)?\n(?=\\s*(?:{|/[/*]|\\#|$|;))",
682
+ endCaptures: {
683
+ "1": {
684
+ name: "punctuation.definition.parameters.end.bracket.round.php"
685
+ },
686
+ "2": {
687
+ name: "invalid.illegal.return-type.php"
688
+ }
689
+ },
690
+ name: "meta.function.php",
691
+ patterns: [
692
+ {
693
+ include: "#comments"
694
+ },
695
+ {
696
+ match: ",",
697
+ name: "punctuation.separator.delimiter.php"
698
+ },
699
+ {
700
+ begin: "(?xi)\n((?:(?:public|private|protected|readonly)(?:\\s+|(?=\\?)))++)\n(?: (\n # nullable type\n (?:\\?\\s*)? [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ |\n # union, intersection or DNF type\n (?: [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ | \\(\\s* [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+(?:\\s*&\\s*[a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+)+ \\s*\\) )\n (?: \\s*[|&]\\s*\n (?: [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ | \\(\\s* [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+(?:\\s*&\\s*[a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+)+ \\s*\\) )\n )+\n) \\s+ )?\n((?:(&)\\s*)?(\\$)[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*) # Variable name with possible reference",
701
+ beginCaptures: {
702
+ "1": {
703
+ patterns: [
704
+ {
705
+ match: "public|private|protected|readonly",
706
+ name: "storage.modifier.php"
707
+ }
708
+ ]
709
+ },
710
+ "2": {
711
+ patterns: [
712
+ {
713
+ include: "#php-types"
714
+ }
715
+ ]
716
+ },
717
+ "3": {
718
+ name: "variable.other.php"
719
+ },
720
+ "4": {
721
+ name: "storage.modifier.reference.php"
722
+ },
723
+ "5": {
724
+ name: "punctuation.definition.variable.php"
725
+ }
726
+ },
727
+ end: "(?=\\s*(?:,|\\)|/[/*]|\\#))",
728
+ name: "meta.function.parameter.promoted-property.php",
729
+ patterns: [
730
+ {
731
+ begin: "=",
732
+ beginCaptures: {
733
+ "0": {
734
+ name: "keyword.operator.assignment.php"
735
+ }
736
+ },
737
+ end: "(?=\\s*(?:,|\\)|/[/*]|\\#))",
738
+ patterns: [
739
+ {
740
+ include: "#parameter-default-types"
741
+ }
742
+ ]
743
+ }
744
+ ]
745
+ },
746
+ {
747
+ include: "#function-parameters"
748
+ }
749
+ ]
750
+ },
751
+ {
752
+ begin: "(?x)\n((?:(?:final|abstract|public|private|protected|static)\\s+)*)\n(function)\\s+\n(?i:\n (__(?:call|construct|debugInfo|destruct|get|set|isset|unset|toString|\n clone|set_state|sleep|wakeup|autoload|invoke|callStatic|serialize|unserialize))\n |(?:(&)?\\s*([a-zA-Z_\\x{7f}-\\x{10ffff}][a-zA-Z0-9_\\x{7f}-\\x{10ffff}]*))\n)\n\\s*(\\()",
753
+ beginCaptures: {
754
+ "1": {
755
+ patterns: [
756
+ {
757
+ match: "final|abstract|public|private|protected|static",
758
+ name: "storage.modifier.php"
759
+ }
760
+ ]
761
+ },
762
+ "2": {
763
+ name: "storage.type.function.php"
764
+ },
765
+ "3": {
766
+ name: "support.function.magic.php"
767
+ },
768
+ "4": {
769
+ name: "storage.modifier.reference.php"
770
+ },
771
+ "5": {
772
+ name: "entity.name.function.php"
773
+ },
774
+ "6": {
775
+ name: "punctuation.definition.parameters.begin.bracket.round.php"
776
+ }
777
+ },
778
+ contentName: "meta.function.parameters.php",
779
+ end: "(?xi)\n(\\)) (?: \\s* (:) \\s* (\n # nullable type\n (?:\\?\\s*)? [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ |\n # union, intersection or DNF type\n (?: [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ | \\(\\s* [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+(?:\\s*&\\s*[a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+)+ \\s*\\) )\n (?: \\s*[|&]\\s*\n (?: [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ | \\(\\s* [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+(?:\\s*&\\s*[a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+)+ \\s*\\) )\n )+\n) )?\n(?=\\s*(?:{|/[/*]|\\#|$|;))",
780
+ endCaptures: {
781
+ "1": {
782
+ name: "punctuation.definition.parameters.end.bracket.round.php"
783
+ },
784
+ "2": {
785
+ name: "keyword.operator.return-value.php"
786
+ },
787
+ "3": {
788
+ patterns: [
789
+ {
790
+ match: "\\b(static)\\b",
791
+ name: "storage.type.php"
792
+ },
793
+ {
794
+ match: "\\b(never)\\b",
795
+ name: "keyword.other.type.never.php"
796
+ },
797
+ {
798
+ include: "#php-types"
799
+ }
800
+ ]
801
+ }
802
+ },
803
+ name: "meta.function.php",
804
+ patterns: [
805
+ {
806
+ include: "#function-parameters"
807
+ }
808
+ ]
809
+ },
810
+ {
811
+ match: "(?xi)\n((?:(?:public|private|protected|static|readonly)(?:\\s+|(?=\\?)))++) # At least one modifier\n(\n # nullable type\n (?:\\?\\s*)? [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ |\n # union, intersection or DNF type\n (?: [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ | \\(\\s* [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+(?:\\s*&\\s*[a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+)+ \\s*\\) )\n (?: \\s*[|&]\\s*\n (?: [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ | \\(\\s* [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+(?:\\s*&\\s*[a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+)+ \\s*\\) )\n )+\n)?\n\\s+ ((\\$)[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*) # Variable name",
812
+ captures: {
813
+ "1": {
814
+ patterns: [
815
+ {
816
+ match: "public|private|protected|static|readonly",
817
+ name: "storage.modifier.php"
818
+ }
819
+ ]
820
+ },
821
+ "2": {
822
+ patterns: [
823
+ {
824
+ include: "#php-types"
825
+ }
826
+ ]
827
+ },
828
+ "3": {
829
+ name: "variable.other.php"
830
+ },
831
+ "4": {
832
+ name: "punctuation.definition.variable.php"
833
+ }
834
+ }
835
+ },
836
+ {
837
+ include: "#invoke-call"
838
+ },
839
+ {
840
+ include: "#scope-resolution"
841
+ },
842
+ {
843
+ include: "#variables"
844
+ },
845
+ {
846
+ include: "#strings"
847
+ },
848
+ {
849
+ captures: {
850
+ "1": {
851
+ name: "support.function.construct.php"
852
+ },
853
+ "2": {
854
+ name: "punctuation.definition.array.begin.bracket.round.php"
855
+ },
856
+ "3": {
857
+ name: "punctuation.definition.array.end.bracket.round.php"
858
+ }
859
+ },
860
+ match: "(array)(\\()(\\))",
861
+ name: "meta.array.empty.php"
862
+ },
863
+ {
864
+ begin: "(array)\\s*(\\()",
865
+ beginCaptures: {
866
+ "1": {
867
+ name: "support.function.construct.php"
868
+ },
869
+ "2": {
870
+ name: "punctuation.definition.array.begin.bracket.round.php"
871
+ }
872
+ },
873
+ end: "\\)|(?=\\?>)",
874
+ endCaptures: {
875
+ "0": {
876
+ name: "punctuation.definition.array.end.bracket.round.php"
877
+ }
878
+ },
879
+ name: "meta.array.php",
880
+ patterns: [
881
+ {
882
+ include: "$self"
883
+ }
884
+ ]
885
+ },
886
+ {
887
+ match: "(?i)(\\()\\s*(array|real|double|float|int(?:eger)?|bool(?:ean)?|string|object|binary|unset)\\s*(\\))",
888
+ captures: {
889
+ "1": {
890
+ name: "punctuation.definition.storage-type.begin.bracket.round.php"
891
+ },
892
+ "2": {
893
+ name: "storage.type.php"
894
+ },
895
+ "3": {
896
+ name: "punctuation.definition.storage-type.end.bracket.round.php"
897
+ }
898
+ }
899
+ },
900
+ {
901
+ match: "(?i)\\b(array|real|double|float|int(eger)?|bool(ean)?|string|class|var|function|interface|trait|parent|self|object|mixed)\\b",
902
+ name: "storage.type.php"
903
+ },
904
+ {
905
+ match: "(?i)\\b(global|abstract|const|final|private|protected|public|static)\\b",
906
+ name: "storage.modifier.php"
907
+ },
908
+ {
909
+ include: "#object"
910
+ },
911
+ {
912
+ match: ";",
913
+ name: "punctuation.terminator.expression.php"
914
+ },
915
+ {
916
+ match: ":",
917
+ name: "punctuation.terminator.statement.php"
918
+ },
919
+ {
920
+ include: "#heredoc"
921
+ },
922
+ {
923
+ include: "#numbers"
924
+ },
925
+ {
926
+ match: "(?i)\\bclone\\b",
927
+ name: "keyword.other.clone.php"
928
+ },
929
+ {
930
+ match: "\\.\\.\\.",
931
+ name: "keyword.operator.spread.php"
932
+ },
933
+ {
934
+ match: "\\.=?",
935
+ name: "keyword.operator.string.php"
936
+ },
937
+ {
938
+ match: "=>",
939
+ name: "keyword.operator.key.php"
940
+ },
941
+ {
942
+ captures: {
943
+ "1": {
944
+ name: "keyword.operator.assignment.php"
945
+ },
946
+ "2": {
947
+ name: "storage.modifier.reference.php"
948
+ },
949
+ "3": {
950
+ name: "storage.modifier.reference.php"
951
+ }
952
+ },
953
+ match: "(?i)(\\=)(&)|(&)(?=[$a-z_])"
954
+ },
955
+ {
956
+ match: "@",
957
+ name: "keyword.operator.error-control.php"
958
+ },
959
+ {
960
+ match: "===|==|!==|!=|<>",
961
+ name: "keyword.operator.comparison.php"
962
+ },
963
+ {
964
+ match: "=|\\+=|\\-=|\\*\\*?=|/=|%=|&=|\\|=|\\^=|<<=|>>=|\\?\\?=",
965
+ name: "keyword.operator.assignment.php"
966
+ },
967
+ {
968
+ match: "<=>|<=|>=|<|>",
969
+ name: "keyword.operator.comparison.php"
970
+ },
971
+ {
972
+ match: "\\-\\-|\\+\\+",
973
+ name: "keyword.operator.increment-decrement.php"
974
+ },
975
+ {
976
+ match: "\\-|\\+|\\*\\*?|/|%",
977
+ name: "keyword.operator.arithmetic.php"
978
+ },
979
+ {
980
+ match: "(?i)(!|&&|\\|\\|)|\\b(and|or|xor|as)\\b",
981
+ name: "keyword.operator.logical.php"
982
+ },
983
+ {
984
+ include: "#function-call"
985
+ },
986
+ {
987
+ match: "<<|>>|~|\\^|&|\\|",
988
+ name: "keyword.operator.bitwise.php"
989
+ },
990
+ {
991
+ begin: "(?i)\\b(instanceof)\\s+(?=[\\\\$a-z_])",
992
+ beginCaptures: {
993
+ "1": {
994
+ name: "keyword.operator.type.php"
995
+ }
996
+ },
997
+ end: "(?i)(?=[^\\\\$a-z0-9_\\x{7f}-\\x{10ffff}])",
998
+ patterns: [
999
+ {
1000
+ include: "#class-name"
1001
+ },
1002
+ {
1003
+ include: "#variable-name"
1004
+ }
1005
+ ]
1006
+ },
1007
+ {
1008
+ include: "#instantiation"
1009
+ },
1010
+ {
1011
+ captures: {
1012
+ "1": {
1013
+ name: "keyword.control.goto.php"
1014
+ },
1015
+ "2": {
1016
+ name: "support.other.php"
1017
+ }
1018
+ },
1019
+ match: "(?i)(goto)\\s+([a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)"
1020
+ },
1021
+ {
1022
+ captures: {
1023
+ "1": {
1024
+ name: "entity.name.goto-label.php"
1025
+ }
1026
+ },
1027
+ match: "(?i)^\\s*([a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*(?<!default))\\s*:(?!:)"
1028
+ },
1029
+ {
1030
+ include: "#string-backtick"
1031
+ },
1032
+ {
1033
+ include: "#ternary_shorthand"
1034
+ },
1035
+ {
1036
+ include: "#null_coalescing"
1037
+ },
1038
+ {
1039
+ include: "#ternary_expression"
1040
+ },
1041
+ {
1042
+ begin: "{",
1043
+ beginCaptures: {
1044
+ "0": {
1045
+ name: "punctuation.definition.begin.bracket.curly.php"
1046
+ }
1047
+ },
1048
+ end: "}|(?=\\?>)",
1049
+ endCaptures: {
1050
+ "0": {
1051
+ name: "punctuation.definition.end.bracket.curly.php"
1052
+ }
1053
+ },
1054
+ patterns: [
1055
+ {
1056
+ include: "$self"
1057
+ }
1058
+ ]
1059
+ },
1060
+ {
1061
+ begin: "\\[",
1062
+ beginCaptures: {
1063
+ "0": {
1064
+ name: "punctuation.section.array.begin.php"
1065
+ }
1066
+ },
1067
+ end: "\\]|(?=\\?>)",
1068
+ endCaptures: {
1069
+ "0": {
1070
+ name: "punctuation.section.array.end.php"
1071
+ }
1072
+ },
1073
+ patterns: [
1074
+ {
1075
+ include: "$self"
1076
+ }
1077
+ ]
1078
+ },
1079
+ {
1080
+ begin: "\\(",
1081
+ beginCaptures: {
1082
+ "0": {
1083
+ name: "punctuation.definition.begin.bracket.round.php"
1084
+ }
1085
+ },
1086
+ end: "\\)|(?=\\?>)",
1087
+ endCaptures: {
1088
+ "0": {
1089
+ name: "punctuation.definition.end.bracket.round.php"
1090
+ }
1091
+ },
1092
+ patterns: [
1093
+ {
1094
+ include: "$self"
1095
+ }
1096
+ ]
1097
+ },
1098
+ {
1099
+ include: "#constants"
1100
+ },
1101
+ {
1102
+ match: ",",
1103
+ name: "punctuation.separator.delimiter.php"
1104
+ }
1105
+ ];
1106
+ var repository = {
1107
+ "attribute-name": {
1108
+ patterns: [
1109
+ {
1110
+ begin: "(?i)(?=\\\\?[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*\\\\)",
1111
+ end: "(?xi)\n( [a-z_\\x{7f}-\\x{10ffff}] [a-z0-9_\\x{7f}-\\x{10ffff}]* )?\n(?![a-z0-9_\\x{7f}-\\x{10ffff}\\\\])",
1112
+ endCaptures: {
1113
+ "1": {
1114
+ name: "support.attribute.php"
1115
+ }
1116
+ },
1117
+ patterns: [
1118
+ {
1119
+ include: "#namespace"
1120
+ }
1121
+ ]
1122
+ },
1123
+ {
1124
+ match: "(?xi)\n(\\\\)?\\b(Attribute|SensitiveParameter|AllowDynamicProperties|ReturnTypeWillChange)\\b",
1125
+ name: "support.attribute.builtin.php",
1126
+ captures: {
1127
+ "1": {
1128
+ name: "punctuation.separator.inheritance.php"
1129
+ }
1130
+ }
1131
+ },
1132
+ {
1133
+ begin: "(?i)(?=[\\\\a-z_\\x{7f}-\\x{10ffff}])",
1134
+ end: "(?xi)\n( [a-z_\\x{7f}-\\x{10ffff}] [a-z0-9_\\x{7f}-\\x{10ffff}]* )?\n(?![a-z0-9_\\x{7f}-\\x{10ffff}\\\\])",
1135
+ endCaptures: {
1136
+ "1": {
1137
+ name: "support.attribute.php"
1138
+ }
1139
+ },
1140
+ patterns: [
1141
+ {
1142
+ include: "#namespace"
1143
+ }
1144
+ ]
1145
+ }
1146
+ ]
1147
+ },
1148
+ attribute: {
1149
+ begin: "\\#\\[",
1150
+ end: "\\]",
1151
+ name: "meta.attribute.php",
1152
+ patterns: [
1153
+ {
1154
+ match: ",",
1155
+ name: "punctuation.separator.delimiter.php"
1156
+ },
1157
+ {
1158
+ begin: "([a-zA-Z0-9_\\x{7f}-\\x{10ffff}\\\\]+)\\s*(\\()",
1159
+ beginCaptures: {
1160
+ "1": {
1161
+ patterns: [
1162
+ {
1163
+ include: "#attribute-name"
1164
+ }
1165
+ ]
1166
+ },
1167
+ "2": {
1168
+ name: "punctuation.definition.arguments.begin.bracket.round.php"
1169
+ }
1170
+ },
1171
+ end: "\\)",
1172
+ endCaptures: {
1173
+ "0": {
1174
+ name: "punctuation.definition.arguments.end.bracket.round.php"
1175
+ }
1176
+ },
1177
+ patterns: [
1178
+ {
1179
+ include: "#named-arguments"
1180
+ },
1181
+ {
1182
+ include: "$self"
1183
+ }
1184
+ ]
1185
+ },
1186
+ {
1187
+ include: "#attribute-name"
1188
+ }
1189
+ ]
1190
+ },
1191
+ "class-builtin": {
1192
+ patterns: [
1193
+ {
1194
+ match: "(?xi)\n(\\\\)?\\b\n(Attribute|(APC|Append)Iterator|Array(Access|Iterator|Object)\n|Bad(Function|Method)CallException\n|(Caching|CallbackFilter)Iterator|Collator|Collectable|Cond|Countable|CURLFile\n|Date(Interval|Period|Time(Interface|Immutable|Zone)?)?|Directory(Iterator)?|DomainException\n|DOM(Attr|CdataSection|CharacterData|Comment|Document(Fragment)?|Element|EntityReference\n |Implementation|NamedNodeMap|Node(list)?|ProcessingInstruction|Text|XPath)\n|(Error)?Exception|EmptyIterator\n|finfo\n|Ev(Check|Child|Embed|Fork|Idle|Io|Loop|Periodic|Prepare|Signal|Stat|Timer|Watcher)?\n|Event(Base|Buffer(Event)?|SslContext|Http(Request|Connection)?|Config|DnsBase|Util|Listener)?\n|FANNConnection|(Filter|Filesystem)Iterator\n|Gender\\\\Gender|GlobIterator|Gmagick(Draw|Pixel)?\n|Haru(Annotation|Destination|Doc|Encoder|Font|Image|Outline|Page)\n|Http((Inflate|Deflate)?Stream|Message|Request(Pool)?|Response|QueryString)\n|HRTime\\\\(PerformanceCounter|StopWatch)\n|Intl(Calendar|((CodePoint|RuleBased)?Break|Parts)?Iterator|DateFormatter|TimeZone)\n|Imagick(Draw|Pixel(Iterator)?)?\n|InfiniteIterator|InvalidArgumentException|Iterator(Aggregate|Iterator)?\n|JsonSerializable\n|KTaglib_(MPEG_(File|AudioProperties)|Tag|ID3v2_(Tag|(AttachedPicture)?Frame))\n|Lapack|(Length|Locale|Logic)Exception|LimitIterator|Lua(Closure)?\n|Mongo(BinData|Client|Code|Collection|CommandCursor|Cursor(Exception)?|Date|DB(Ref)?|DeleteBatch\n |Grid(FS(Cursor|File)?)|Id|InsertBatch|Int(32|64)|Log|Pool|Regex|ResultException|Timestamp\n |UpdateBatch|Write(Batch|ConcernException))?\n|Memcache(d)?|MessageFormatter|MultipleIterator|Mutex\n|mysqli(_(driver|stmt|warning|result))?\n|MysqlndUh(Connection|PreparedStatement)\n|NoRewindIterator|Normalizer|NumberFormatter\n|OCI-(Collection|Lob)|OuterIterator|(OutOf(Bounds|Range)|Overflow)Exception\n|ParentIterator|PDO(Statement)?|Phar(Data|FileInfo)?|php_user_filter|Pool\n|QuickHash(Int(Set|StringHash)|StringIntHash)\n|Recursive(Array|Caching|Directory|Fallback|Filter|Iterator|Regex|Tree)?Iterator\n|Reflection(Class|Function(Abstract)?|Method|Object|Parameter|Property|(Zend)?Extension)?\n|RangeException|Reflector|RegexIterator|ResourceBundle|RuntimeException|RRD(Creator|Graph|Updater)\n|SAM(Connection|Message)|SCA(_(SoapProxy|LocalProxy))?\n|SDO_(DAS_(ChangeSummary|Data(Factory|Object)|Relational|Setting|XML(_Document)?)\n |Data(Factory|Object)|Exception|List|Model_(Property|ReflectionDataObject|Type)|Sequence)\n|SeekableIterator|Serializable|SessionHandler(Interface)?|SimpleXML(Iterator|Element)|SNMP\n|Soap(Client|Fault|Header|Param|Server|Var)\n|SphinxClient|Spoofchecker\n|Spl(DoublyLinkedList|Enum|File(Info|Object)|FixedArray|(Max|Min)?Heap|Observer|ObjectStorage\n |(Priority)?Queue|Stack|Subject|Type|TempFileObject)\n|SQLite(3(Result|Stmt)?|Database|Result|Unbuffered)\n|stdClass|streamWrapper|SVM(Model)?|Swish(Result(s)?|Search)?|Sync(Event|Mutex|ReaderWriter|Semaphore)\n|Thread(ed)?|tidy(Node)?|TokyoTyrant(Table|Iterator|Query)?|Transliterator|Traversable\n|UConverter|(Underflow|UnexpectedValue)Exception\n|V8Js(Exception)?|Varnish(Admin|Log|Stat)\n|Worker|Weak(Map|Ref)\n|XML(Diff\\\\(Base|DOM|File|Memory)|Reader|Writer)|XsltProcessor\n|Yaf_(Route_(Interface|Map|Regex|Rewrite|Simple|Supervar)\n |Action_Abstract|Application|Config_(Simple|Ini|Abstract)|Controller_Abstract\n |Dispatcher|Exception|Loader|Plugin_Abstract|Registry|Request_(Abstract|Simple|Http)\n |Response_Abstract|Router|Session|View_(Simple|Interface))\n|Yar_(Client(_Exception)?|Concurrent_Client|Server(_Exception)?)\n|ZipArchive|ZMQ(Context|Device|Poll|Socket)?)\n\\b",
1195
+ name: "support.class.builtin.php",
1196
+ captures: {
1197
+ "1": {
1198
+ name: "punctuation.separator.inheritance.php"
1199
+ }
1200
+ }
1201
+ }
1202
+ ]
1203
+ },
1204
+ "class-name": {
1205
+ patterns: [
1206
+ {
1207
+ begin: "(?i)(?=\\\\?[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*\\\\)",
1208
+ end: "(?xi)\n( [a-z_\\x{7f}-\\x{10ffff}] [a-z0-9_\\x{7f}-\\x{10ffff}]* )?\n(?![a-z0-9_\\x{7f}-\\x{10ffff}\\\\])",
1209
+ endCaptures: {
1210
+ "1": {
1211
+ name: "support.class.php"
1212
+ }
1213
+ },
1214
+ patterns: [
1215
+ {
1216
+ include: "#namespace"
1217
+ }
1218
+ ]
1219
+ },
1220
+ {
1221
+ include: "#class-builtin"
1222
+ },
1223
+ {
1224
+ begin: "(?i)(?=[\\\\a-z_\\x{7f}-\\x{10ffff}])",
1225
+ end: "(?xi)\n( [a-z_\\x{7f}-\\x{10ffff}] [a-z0-9_\\x{7f}-\\x{10ffff}]* )?\n(?![a-z0-9_\\x{7f}-\\x{10ffff}\\\\])",
1226
+ endCaptures: {
1227
+ "1": {
1228
+ name: "support.class.php"
1229
+ }
1230
+ },
1231
+ patterns: [
1232
+ {
1233
+ include: "#namespace"
1234
+ }
1235
+ ]
1236
+ }
1237
+ ]
1238
+ },
1239
+ "inheritance-single": {
1240
+ patterns: [
1241
+ {
1242
+ begin: "(?i)(?=\\\\?[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*\\\\)",
1243
+ end: "(?i)([a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)?(?=[^a-z0-9_\\x{7f}-\\x{10ffff}\\\\])",
1244
+ endCaptures: {
1245
+ "1": {
1246
+ name: "entity.other.inherited-class.php"
1247
+ }
1248
+ },
1249
+ patterns: [
1250
+ {
1251
+ include: "#namespace"
1252
+ }
1253
+ ]
1254
+ },
1255
+ {
1256
+ include: "#class-builtin"
1257
+ },
1258
+ {
1259
+ include: "#namespace"
1260
+ },
1261
+ {
1262
+ match: "(?i)[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*",
1263
+ name: "entity.other.inherited-class.php"
1264
+ }
1265
+ ]
1266
+ },
1267
+ "class-extends": {
1268
+ patterns: [
1269
+ {
1270
+ begin: "(?i)(extends)\\s+",
1271
+ beginCaptures: {
1272
+ "1": {
1273
+ name: "storage.modifier.extends.php"
1274
+ }
1275
+ },
1276
+ end: "(?i)(?=[^A-Za-z0-9_\\x{7f}-\\x{10ffff}\\\\])",
1277
+ patterns: [
1278
+ {
1279
+ include: "#comments"
1280
+ },
1281
+ {
1282
+ include: "#inheritance-single"
1283
+ }
1284
+ ]
1285
+ }
1286
+ ]
1287
+ },
1288
+ "interface-extends": {
1289
+ patterns: [
1290
+ {
1291
+ begin: "(?i)(extends)\\s+",
1292
+ beginCaptures: {
1293
+ "1": {
1294
+ name: "storage.modifier.extends.php"
1295
+ }
1296
+ },
1297
+ end: "(?i)(?={)",
1298
+ patterns: [
1299
+ {
1300
+ include: "#comments"
1301
+ },
1302
+ {
1303
+ match: ",",
1304
+ name: "punctuation.separator.classes.php"
1305
+ },
1306
+ {
1307
+ include: "#inheritance-single"
1308
+ }
1309
+ ]
1310
+ }
1311
+ ]
1312
+ },
1313
+ "class-implements": {
1314
+ patterns: [
1315
+ {
1316
+ begin: "(?i)(implements)\\s+",
1317
+ beginCaptures: {
1318
+ "1": {
1319
+ name: "storage.modifier.implements.php"
1320
+ }
1321
+ },
1322
+ end: "(?i)(?={)",
1323
+ patterns: [
1324
+ {
1325
+ include: "#comments"
1326
+ },
1327
+ {
1328
+ match: ",",
1329
+ name: "punctuation.separator.classes.php"
1330
+ },
1331
+ {
1332
+ include: "#inheritance-single"
1333
+ }
1334
+ ]
1335
+ }
1336
+ ]
1337
+ },
1338
+ "class-constant": {
1339
+ patterns: [
1340
+ {
1341
+ match: "(?i)\\b(const)\\s*([a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)",
1342
+ captures: {
1343
+ "1": {
1344
+ name: "storage.modifier.php"
1345
+ },
1346
+ "2": {
1347
+ name: "constant.other.php"
1348
+ }
1349
+ }
1350
+ }
1351
+ ]
1352
+ },
1353
+ comments: {
1354
+ patterns: [
1355
+ {
1356
+ begin: "/\\*\\*(?=\\s)",
1357
+ beginCaptures: {
1358
+ "0": {
1359
+ name: "punctuation.definition.comment.php"
1360
+ }
1361
+ },
1362
+ end: "\\*/",
1363
+ endCaptures: {
1364
+ "0": {
1365
+ name: "punctuation.definition.comment.php"
1366
+ }
1367
+ },
1368
+ name: "comment.block.documentation.phpdoc.php",
1369
+ patterns: [
1370
+ {
1371
+ include: "#php_doc"
1372
+ }
1373
+ ]
1374
+ },
1375
+ {
1376
+ begin: "/\\*",
1377
+ captures: {
1378
+ "0": {
1379
+ name: "punctuation.definition.comment.php"
1380
+ }
1381
+ },
1382
+ end: "\\*/",
1383
+ name: "comment.block.php"
1384
+ },
1385
+ {
1386
+ begin: "(^\\s+)?(?=//)",
1387
+ beginCaptures: {
1388
+ "1": {
1389
+ name: "punctuation.whitespace.comment.leading.php"
1390
+ }
1391
+ },
1392
+ end: "(?!\\G)",
1393
+ patterns: [
1394
+ {
1395
+ begin: "//",
1396
+ beginCaptures: {
1397
+ "0": {
1398
+ name: "punctuation.definition.comment.php"
1399
+ }
1400
+ },
1401
+ end: "\\n|(?=\\?>)",
1402
+ name: "comment.line.double-slash.php"
1403
+ }
1404
+ ]
1405
+ },
1406
+ {
1407
+ begin: "(^\\s+)?(?=#)(?!#\\[)",
1408
+ beginCaptures: {
1409
+ "1": {
1410
+ name: "punctuation.whitespace.comment.leading.php"
1411
+ }
1412
+ },
1413
+ end: "(?!\\G)",
1414
+ patterns: [
1415
+ {
1416
+ begin: "#",
1417
+ beginCaptures: {
1418
+ "0": {
1419
+ name: "punctuation.definition.comment.php"
1420
+ }
1421
+ },
1422
+ end: "\\n|(?=\\?>)",
1423
+ name: "comment.line.number-sign.php"
1424
+ }
1425
+ ]
1426
+ }
1427
+ ]
1428
+ },
1429
+ constants: {
1430
+ patterns: [
1431
+ {
1432
+ match: "(?i)\\b(TRUE|FALSE|NULL|__(FILE|DIR|FUNCTION|CLASS|METHOD|LINE|NAMESPACE)__|ON|OFF|YES|NO|NL|BR|TAB)\\b",
1433
+ name: "constant.language.php"
1434
+ },
1435
+ {
1436
+ match: "(?x)\n(\\\\)?\\b\n(DEFAULT_INCLUDE_PATH\n|EAR_(INSTALL|EXTENSION)_DIR\n|E_(ALL|COMPILE_(ERROR|WARNING)|CORE_(ERROR|WARNING)|DEPRECATED|ERROR|NOTICE\n |PARSE|RECOVERABLE_ERROR|STRICT|USER_(DEPRECATED|ERROR|NOTICE|WARNING)|WARNING)\n|PHP_(ROUND_HALF_(DOWN|EVEN|ODD|UP)|(MAJOR|MINOR|RELEASE)_VERSION|MAXPATHLEN\n |BINDIR|SHLIB_SUFFIX|SYSCONFDIR|SAPI|CONFIG_FILE_(PATH|SCAN_DIR)\n |INT_(MAX|SIZE)|ZTS|OS|OUTPUT_HANDLER_(START|CONT|END)|DEBUG|DATADIR\n |URL_(SCHEME|HOST|USER|PORT|PASS|PATH|QUERY|FRAGMENT)|PREFIX\n |EXTRA_VERSION|EXTENSION_DIR|EOL|VERSION(_ID)?\n |WINDOWS_(NT_(SERVER|DOMAIN_CONTROLLER|WORKSTATION)\n |VERSION_(MAJOR|MINOR)|BUILD|SUITEMASK|SP_(MAJOR|MINOR)\n |PRODUCTTYPE|PLATFORM)\n |LIBDIR|LOCALSTATEDIR)\n|STD(ERR|IN|OUT)|ZEND_(DEBUG_BUILD|THREAD_SAFE))\n\\b",
1437
+ name: "support.constant.core.php",
1438
+ captures: {
1439
+ "1": {
1440
+ name: "punctuation.separator.inheritance.php"
1441
+ }
1442
+ }
1443
+ },
1444
+ {
1445
+ match: "(?x)\n(\\\\)?\\b\n(__COMPILER_HALT_OFFSET__|AB(MON_(1|2|3|4|5|6|7|8|9|10|11|12)|DAY[1-7])\n|AM_STR|ASSERT_(ACTIVE|BAIL|CALLBACK_QUIET_EVAL|WARNING)|ALT_DIGITS\n|CASE_(UPPER|LOWER)|CHAR_MAX|CONNECTION_(ABORTED|NORMAL|TIMEOUT)|CODESET|COUNT_(NORMAL|RECURSIVE)\n|CREDITS_(ALL|DOCS|FULLPAGE|GENERAL|GROUP|MODULES|QA|SAPI)\n|CRYPT_(BLOWFISH|EXT_DES|MD5|SHA(256|512)|SALT_LENGTH|STD_DES)|CURRENCY_SYMBOL\n|D_(T_)?FMT|DATE_(ATOM|COOKIE|ISO8601|RFC(822|850|1036|1123|2822|3339)|RSS|W3C)\n|DAY_[1-7]|DECIMAL_POINT|DIRECTORY_SEPARATOR\n|ENT_(COMPAT|IGNORE|(NO)?QUOTES)|EXTR_(IF_EXISTS|OVERWRITE|PREFIX_(ALL|IF_EXISTS|INVALID|SAME)|REFS|SKIP)\n|ERA(_(D_(T_)?FMT)|T_FMT|YEAR)?|FRAC_DIGITS|GROUPING|HASH_HMAC|HTML_(ENTITIES|SPECIALCHARS)\n|INF|INFO_(ALL|CREDITS|CONFIGURATION|ENVIRONMENT|GENERAL|LICENSEMODULES|VARIABLES)\n|INI_(ALL|CANNER_(NORMAL|RAW)|PERDIR|SYSTEM|USER)|INT_(CURR_SYMBOL|FRAC_DIGITS)\n|LC_(ALL|COLLATE|CTYPE|MESSAGES|MONETARY|NUMERIC|TIME)|LOCK_(EX|NB|SH|UN)\n|LOG_(ALERT|AUTH(PRIV)?|CRIT|CRON|CONS|DAEMON|DEBUG|EMERG|ERR|INFO|LOCAL[1-7]|LPR|KERN|MAIL\n |NEWS|NODELAY|NOTICE|NOWAIT|ODELAY|PID|PERROR|WARNING|SYSLOG|UCP|USER)\n|M_(1_PI|SQRT(1_2|2|3|PI)|2_(SQRT)?PI|PI(_(2|4))?|E(ULER)?|LN(10|2|PI)|LOG(10|2)E)\n|MON_(1|2|3|4|5|6|7|8|9|10|11|12|DECIMAL_POINT|GROUPING|THOUSANDS_SEP)\n|N_(CS_PRECEDES|SEP_BY_SPACE|SIGN_POSN)|NAN|NEGATIVE_SIGN|NO(EXPR|STR)\n|P_(CS_PRECEDES|SEP_BY_SPACE|SIGN_POSN)|PM_STR|POSITIVE_SIGN\n|PATH(_SEPARATOR|INFO_(EXTENSION|(BASE|DIR|FILE)NAME))|RADIXCHAR\n|SEEK_(CUR|END|SET)|SORT_(ASC|DESC|LOCALE_STRING|REGULAR|STRING)|STR_PAD_(BOTH|LEFT|RIGHT)\n|T_FMT(_AMPM)?|THOUSEP|THOUSANDS_SEP\n|UPLOAD_ERR_(CANT_WRITE|EXTENSION|(FORM|INI)_SIZE|NO_(FILE|TMP_DIR)|OK|PARTIAL)\n|YES(EXPR|STR))\n\\b",
1446
+ name: "support.constant.std.php",
1447
+ captures: {
1448
+ "1": {
1449
+ name: "punctuation.separator.inheritance.php"
1450
+ }
1451
+ }
1452
+ },
1453
+ {
1454
+ match: "(?x)\n(\\\\)?\\b\n(GLOB_(MARK|BRACE|NO(SORT|CHECK|ESCAPE)|ONLYDIR|ERR|AVAILABLE_FLAGS)\n|XML_(SAX_IMPL|(DTD|DOCUMENT(_(FRAG|TYPE))?|HTML_DOCUMENT|NOTATION|NAMESPACE_DECL|PI|COMMENT|DATA_SECTION|TEXT)_NODE\n |OPTION_(SKIP_(TAGSTART|WHITE)|CASE_FOLDING|TARGET_ENCODING)\n |ERROR_((BAD_CHAR|(ATTRIBUTE_EXTERNAL|BINARY|PARAM|RECURSIVE)_ENTITY)_REF|MISPLACED_XML_PI|SYNTAX|NONE\n |NO_(MEMORY|ELEMENTS)|TAG_MISMATCH|INCORRECT_ENCODING|INVALID_TOKEN|DUPLICATE_ATTRIBUTE\n |UNCLOSED_(CDATA_SECTION|TOKEN)|UNDEFINED_ENTITY|UNKNOWN_ENCODING|JUNK_AFTER_DOC_ELEMENT\n |PARTIAL_CHAR|EXTERNAL_ENTITY_HANDLING|ASYNC_ENTITY)\n |ENTITY_(((REF|DECL)_)?NODE)|ELEMENT(_DECL)?_NODE|LOCAL_NAMESPACE|ATTRIBUTE_(NMTOKEN(S)?|NOTATION|NODE)\n |CDATA|ID(REF(S)?)?|DECL_NODE|ENTITY|ENUMERATION)\n|MHASH_(RIPEMD(128|160|256|320)|GOST|MD(2|4|5)|SHA(1|224|256|384|512)|SNEFRU256|HAVAL(128|160|192|224|256)\n |CRC23(B)?|TIGER(128|160)?|WHIRLPOOL|ADLER32)\n|MYSQL_(BOTH|NUM|CLIENT_(SSL|COMPRESS|IGNORE_SPACE|INTERACTIVE|ASSOC))\n|MYSQLI_(REPORT_(STRICT|INDEX|OFF|ERROR|ALL)|REFRESH_(GRANT|MASTER|BACKUP_LOG|STATUS|SLAVE|HOSTS|THREADS|TABLES|LOG)\n |READ_DEFAULT_(FILE|GROUP)|(GROUP|MULTIPLE_KEY|BINARY|BLOB)_FLAG|BOTH\n |STMT_ATTR_(CURSOR_TYPE|UPDATE_MAX_LENGTH|PREFETCH_ROWS)|STORE_RESULT\n |SERVER_QUERY_(NO_((GOOD_)?INDEX_USED)|WAS_SLOW)|SET_(CHARSET_NAME|FLAG)\n |NO_(DEFAULT_VALUE_FLAG|DATA)|NOT_NULL_FLAG|NUM(_FLAG)?\n |CURSOR_TYPE_(READ_ONLY|SCROLLABLE|NO_CURSOR|FOR_UPDATE)\n |CLIENT_(SSL|NO_SCHEMA|COMPRESS|IGNORE_SPACE|INTERACTIVE|FOUND_ROWS)\n |TYPE_(GEOMETRY|((MEDIUM|LONG|TINY)_)?BLOB|BIT|SHORT|STRING|SET|YEAR|NULL|NEWDECIMAL|NEWDATE|CHAR\n |TIME(STAMP)?|TINY|INT24|INTERVAL|DOUBLE|DECIMAL|DATE(TIME)?|ENUM|VAR_STRING|FLOAT|LONG(LONG)?)\n |TIME_STAMP_FLAG|INIT_COMMAND|ZEROFILL_FLAG|ON_UPDATE_NOW_FLAG\n |OPT_(NET_((CMD|READ)_BUFFER_SIZE)|CONNECT_TIMEOUT|INT_AND_FLOAT_NATIVE|LOCAL_INFILE)\n |DEBUG_TRACE_ENABLED|DATA_TRUNCATED|USE_RESULT|(ENUM|(PART|PRI|UNIQUE)_KEY|UNSIGNED)_FLAG\n |ASSOC|ASYNC|AUTO_INCREMENT_FLAG)\n|MCRYPT_(RC(2|6)|RIJNDAEL_(128|192|256)|RAND|GOST|XTEA|MODE_(STREAM|NOFB|CBC|CFB|OFB|ECB)|MARS\n |BLOWFISH(_COMPAT)?|SERPENT|SKIPJACK|SAFER(64|128|PLUS)|CRYPT|CAST_(128|256)|TRIPLEDES|THREEWAY\n |TWOFISH|IDEA|(3)?DES|DECRYPT|DEV_(U)?RANDOM|PANAMA|ENCRYPT|ENIGNA|WAKE|LOKI97|ARCFOUR(_IV)?)\n|STREAM_(REPORT_ERRORS|MUST_SEEK|MKDIR_RECURSIVE|BUFFER_(NONE|FULL|LINE)|SHUT_(RD)?WR\n |SOCK_(RDM|RAW|STREAM|SEQPACKET|DGRAM)|SERVER_(BIND|LISTEN)\n |NOTIFY_(REDIRECTED|RESOLVE|MIME_TYPE_IS|SEVERITY_(INFO|ERR|WARN)|COMPLETED|CONNECT|PROGRESS\n |FILE_SIZE_IS|FAILURE|AUTH_(REQUIRED|RESULT))\n |CRYPTO_METHOD_((SSLv2(3)?|SSLv3|TLS)_(CLIENT|SERVER))|CLIENT_((ASYNC_)?CONNECT|PERSISTENT)\n |CAST_(AS_STREAM|FOR_SELECT)|(IGNORE|IS)_URL|IPPROTO_(RAW|TCP|ICMP|IP|UDP)|OOB\n |OPTION_(READ_(BUFFER|TIMEOUT)|BLOCKING|WRITE_BUFFER)|URL_STAT_(LINK|QUIET)|USE_PATH\n |PEEK|PF_(INET(6)?|UNIX)|ENFORCE_SAFE_MODE|FILTER_(ALL|READ|WRITE))\n|SUNFUNCS_RET_(DOUBLE|STRING|TIMESTAMP)\n|SQLITE_(READONLY|ROW|MISMATCH|MISUSE|BOTH|BUSY|SCHEMA|NOMEM|NOTFOUND|NOTADB|NOLFS|NUM|CORRUPT\n |CONSTRAINT|CANTOPEN|TOOBIG|INTERRUPT|INTERNAL|IOERR|OK|DONE|PROTOCOL|PERM|ERROR|EMPTY\n |FORMAT|FULL|LOCKED|ABORT|ASSOC|AUTH)\n|SQLITE3_(BOTH|BLOB|NUM|NULL|TEXT|INTEGER|OPEN_(READ(ONLY|WRITE)|CREATE)|FLOAT_ASSOC)\n|CURL(M_(BAD_((EASY)?HANDLE)|CALL_MULTI_PERFORM|INTERNAL_ERROR|OUT_OF_MEMORY|OK)\n |MSG_DONE|SSH_AUTH_(HOST|NONE|DEFAULT|PUBLICKEY|PASSWORD|KEYBOARD)\n |CLOSEPOLICY_(SLOWEST|CALLBACK|OLDEST|LEAST_(RECENTLY_USED|TRAFFIC)\n |INFO_(REDIRECT_(COUNT|TIME)|REQUEST_SIZE|SSL_VERIFYRESULT|STARTTRANSFER_TIME\n |(SIZE|SPEED)_(DOWNLOAD|UPLOAD)|HTTP_CODE|HEADER_(OUT|SIZE)|NAMELOOKUP_TIME\n |CONNECT_TIME|CONTENT_(TYPE|LENGTH_(DOWNLOAD|UPLOAD))|CERTINFO|TOTAL_TIME\n |PRIVATE|PRETRANSFER_TIME|EFFECTIVE_URL|FILETIME)\n |OPT_(RESUME_FROM|RETURNTRANSFER|REDIR_PROTOCOLS|REFERER|READ(DATA|FUNCTION)|RANGE|RANDOM_FILE\n |MAX(CONNECTS|REDIRS)|BINARYTRANSFER|BUFFERSIZE\n |SSH_(HOST_PUBLIC_KEY_MD5|(PRIVATE|PUBLIC)_KEYFILE)|AUTH_TYPES)\n |SSL(CERT(TYPE|PASSWD)?|ENGINE(_DEFAULT)?|VERSION|KEY(TYPE|PASSWD)?)\n |SSL_(CIPHER_LIST|VERIFY(HOST|PEER))\n |STDERR|HTTP(GET|HEADER|200ALIASES|_VERSION|PROXYTUNNEL|AUTH)\n |HEADER(FUNCTION)?|NO(BODY|SIGNAL|PROGRESS)|NETRC|CRLF|CONNECTTIMEOUT(_MS)?\n |COOKIE(SESSION|JAR|FILE)?|CUSTOMREQUEST|CERTINFO|CLOSEPOLICY|CA(INFO|PATH)|TRANSFERTEXT\n |TCP_NODELAY|TIME(CONDITION|OUT(_MS)?|VALUE)|INTERFACE|INFILE(SIZE)?|IPRESOLVE\n |DNS_(CACHE_TIMEOUT|USE_GLOBAL_CACHE)|URL|USER(AGENT|PWD)|UNRESTRICTED_AUTH|UPLOAD\n |PRIVATE|PROGRESSFUNCTION|PROXY(TYPE|USERPWD|PORT|AUTH)?|PROTOCOLS|PORT\n |POST(REDIR|QUOTE|FIELDS)?|PUT|EGDSOCKET|ENCODING|VERBOSE|KRB4LEVEL|KEYPASSWD|QUOTE|FRESH_CONNECT\n |FTP(APPEND|LISTONLY|PORT|SSLAUTH)\n |FTP_(SSL|SKIP_PASV_IP|CREATE_MISSING_DIRS|USE_EP(RT|SV)|FILEMETHOD)\n |FILE(TIME)?|FORBID_REUSE|FOLLOWLOCATION|FAILONERROR|WRITE(FUNCTION|HEADER)|LOW_SPEED_(LIMIT|TIME)\n |AUTOREFERER)\n |PROXY_(HTTP|SOCKS(4|5))|PROTO_(SCP|SFTP|HTTP(S)?|TELNET|TFTP|DICT|FTP(S)?|FILE|LDAP(S)?|ALL)\n |E_((RECV|READ)_ERROR|GOT_NOTHING|MALFORMAT_USER\n |BAD_(CONTENT_ENCODING|CALLING_ORDER|PASSWORD_ENTERED|FUNCTION_ARGUMENT)\n |SSH|SSL_(CIPHER|CONNECT_ERROR|CERTPROBLEM|CACERT|PEER_CERTIFICATE|ENGINE_(NOTFOUND|SETFAILED))\n |SHARE_IN_USE|SEND_ERROR|HTTP_(RANGE_ERROR|NOT_FOUND|PORT_FAILED|POST_ERROR)\n |COULDNT_(RESOLVE_(HOST|PROXY)|CONNECT)|TOO_MANY_REDIRECTS|TELNET_OPTION_SYNTAX|OBSOLETE\n |OUT_OF_MEMORY|OPERATION|TIMEOUTED|OK|URL_MALFORMAT(_USER)?|UNSUPPORTED_PROTOCOL\n |UNKNOWN_TELNET_OPTION|PARTIAL_FILE\n |FTP_(BAD_DOWNLOAD_RESUME|SSL_FAILED|COULDNT_(RETR_FILE|GET_SIZE|STOR_FILE|SET_(BINARY|ASCII)|USE_REST)\n |CANT_(GET_HOST|RECONNECT)|USER_PASSWORD_INCORRECT|PORT_FAILED|QUOTE_ERROR|WRITE_ERROR\n |WEIRD_((PASS|PASV|SERVER|USER)_REPLY|227_FORMAT)|ACCESS_DENIED)\n |FILESIZE_EXCEEDED|FILE_COULDNT_READ_FILE|FUNCTION_NOT_FOUND|FAILED_INIT|WRITE_ERROR|LIBRARY_NOT_FOUND\n |LDAP_(SEARCH_FAILED|CANNOT_BIND|INVALID_URL)|ABORTED_BY_CALLBACK)\n |VERSION_NOW\n |FTP(METHOD_(MULTI|SINGLE|NO)CWD|SSL_(ALL|NONE|CONTROL|TRY)|AUTH_(DEFAULT|SSL|TLS))\n |AUTH_(ANY(SAFE)?|BASIC|DIGEST|GSSNEGOTIATE|NTLM))\n|CURL_(HTTP_VERSION_(1_(0|1)|NONE)|NETRC_(REQUIRED|IGNORED|OPTIONAL)|TIMECOND_(IF(UN)?MODSINCE|LASTMOD)\n |IPRESOLVE_(V(4|6)|WHATEVER)|VERSION_(SSL|IPV6|KERBEROS4|LIBZ))\n|IMAGETYPE_(GIF|XBM|BMP|SWF|COUNT|TIFF_(MM|II)|ICO|IFF|UNKNOWN|JB2|JPX|JP2|JPC|JPEG(2000)?|PSD|PNG|WBMP)\n|INPUT_(REQUEST|GET|SERVER|SESSION|COOKIE|POST|ENV)|ICONV_(MIME_DECODE_(STRICT|CONTINUE_ON_ERROR)|IMPL|VERSION)\n|DNS_(MX|SRV|SOA|HINFO|NS|NAPTR|CNAME|TXT|PTR|ANY|ALL|AAAA|A(6)?)\n|DOM(STRING_SIZE_ERR)\n|DOM_((SYNTAX|HIERARCHY_REQUEST|NO_(MODIFICATION_ALLOWED|DATA_ALLOWED)|NOT_(FOUND|SUPPORTED)|NAMESPACE\n |INDEX_SIZE|USE_ATTRIBUTE|VALID_(MODIFICATION|STATE|CHARACTER|ACCESS)|PHP|VALIDATION|WRONG_DOCUMENT)_ERR)\n|JSON_(HEX_(TAG|QUOT|AMP|APOS)|NUMERIC_CHECK|ERROR_(SYNTAX|STATE_MISMATCH|NONE|CTRL_CHAR|DEPTH|UTF8)|FORCE_OBJECT)\n|PREG_((D_UTF8(_OFFSET)?|NO|INTERNAL|(BACKTRACK|RECURSION)_LIMIT)_ERROR|GREP_INVERT\n |SPLIT_(NO_EMPTY|(DELIM|OFFSET)_CAPTURE)|SET_ORDER|OFFSET_CAPTURE|PATTERN_ORDER)\n|PSFS_(PASS_ON|ERR_FATAL|FEED_ME|FLAG_(NORMAL|FLUSH_(CLOSE|INC)))\n|PCRE_VERSION|POSIX_((F|R|W|X)_OK|S_IF(REG|BLK|SOCK|CHR|IFO))\n|FNM_(NOESCAPE|CASEFOLD|PERIOD|PATHNAME)\n|FILTER_(REQUIRE_(SCALAR|ARRAY)|NULL_ON_FAILURE|CALLBACK|DEFAULT|UNSAFE_RAW\n |SANITIZE_(MAGIC_QUOTES|STRING|STRIPPED|SPECIAL_CHARS|NUMBER_(INT|FLOAT)|URL\n |EMAIL|ENCODED|FULL_SPCIAL_CHARS)\n |VALIDATE_(REGEXP|BOOLEAN|INT|IP|URL|EMAIL|FLOAT)\n |FORCE_ARRAY\n |FLAG_(SCHEME_REQUIRED|STRIP_(BACKTICK|HIGH|LOW)|HOST_REQUIRED|NONE|NO_(RES|PRIV)_RANGE|ENCODE_QUOTES\n |IPV(4|6)|PATH_REQUIRED|EMPTY_STRING_NULL|ENCODE_(HIGH|LOW|AMP)|QUERY_REQUIRED\n |ALLOW_(SCIENTIFIC|HEX|THOUSAND|OCTAL|FRACTION)))\n|FILE_(BINARY|SKIP_EMPTY_LINES|NO_DEFAULT_CONTEXT|TEXT|IGNORE_NEW_LINES|USE_INCLUDE_PATH|APPEND)\n|FILEINFO_(RAW|MIME(_(ENCODING|TYPE))?|SYMLINK|NONE|CONTINUE|DEVICES|PRESERVE_ATIME)\n|FORCE_(DEFLATE|GZIP)\n|LIBXML_(XINCLUDE|NSCLEAN|NO(XMLDECL|BLANKS|NET|CDATA|ERROR|EMPTYTAG|ENT|WARNING)\n |COMPACT|DTD(VALID|LOAD|ATTR)|((DOTTED|LOADED)_)?VERSION|PARSEHUGE|ERR_(NONE|ERROR|FATAL|WARNING)))\n\\b",
1455
+ name: "support.constant.ext.php",
1456
+ captures: {
1457
+ "1": {
1458
+ name: "punctuation.separator.inheritance.php"
1459
+ }
1460
+ }
1461
+ },
1462
+ {
1463
+ match: "(?x)\n(\\\\)?\\b\n(T_(RETURN|REQUIRE(_ONCE)?|GOTO|GLOBAL|(MINUS|MOD|MUL|XOR)_EQUAL|METHOD_C|ML_COMMENT|BREAK\n |BOOL_CAST|BOOLEAN_(AND|OR)|BAD_CHARACTER|SR(_EQUAL)?|STRING(_CAST|VARNAME)?|START_HEREDOC|STATIC\n |SWITCH|SL(_EQUAL)?|HALT_COMPILER|NS_(C|SEPARATOR)|NUM_STRING|NEW|NAMESPACE|CHARACTER|COMMENT\n |CONSTANT(_ENCAPSED_STRING)?|CONCAT_EQUAL|CONTINUE|CURLY_OPEN|CLOSE_TAG|CLONE|CLASS(_C)?\n |CASE|CATCH|TRY|THROW|IMPLEMENTS|ISSET|IS_((GREATER|SMALLER)_OR_EQUAL|(NOT_)?(IDENTICAL|EQUAL))\n |INSTANCEOF|INCLUDE(_ONCE)?|INC|INT_CAST|INTERFACE|INLINE_HTML|IF|OR_EQUAL|OBJECT_(CAST|OPERATOR)\n |OPEN_TAG(_WITH_ECHO)?|OLD_FUNCTION|DNUMBER|DIR|DIV_EQUAL|DOC_COMMENT|DOUBLE_(ARROW|CAST|COLON)\n |DOLLAR_OPEN_CURLY_BRACES|DO|DEC|DECLARE|DEFAULT|USE|UNSET(_CAST)?|PRINT|PRIVATE|PROTECTED|PUBLIC\n |PLUS_EQUAL|PAAMAYIM_NEKUDOTAYIM|EXTENDS|EXIT|EMPTY|ENCAPSED_AND_WHITESPACE\n |END(SWITCH|IF|DECLARE|FOR(EACH)?|WHILE)|END_HEREDOC|ECHO|EVAL|ELSE(IF)?|VAR(IABLE)?|FINAL|FILE\n |FOR(EACH)?|FUNC_C|FUNCTION|WHITESPACE|WHILE|LNUMBER|LIST|LINE|LOGICAL_(AND|OR|XOR)\n |ARRAY_(CAST)?|ABSTRACT|AS|AND_EQUAL))\n\\b",
1464
+ name: "support.constant.parser-token.php",
1465
+ captures: {
1466
+ "1": {
1467
+ name: "punctuation.separator.inheritance.php"
1468
+ }
1469
+ }
1470
+ },
1471
+ {
1472
+ match: "(?i)[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*",
1473
+ name: "constant.other.php"
1474
+ }
1475
+ ]
1476
+ },
1477
+ "function-parameters": {
1478
+ patterns: [
1479
+ {
1480
+ include: "#attribute"
1481
+ },
1482
+ {
1483
+ include: "#comments"
1484
+ },
1485
+ {
1486
+ match: ",",
1487
+ name: "punctuation.separator.delimiter.php"
1488
+ },
1489
+ {
1490
+ match: "(?xi)\n(?: (\n # nullable type\n (?:\\?\\s*)? [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ |\n # union, intersection or DNF type\n (?: [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ | \\(\\s* [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+(?:\\s*&\\s*[a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+)+ \\s*\\) )\n (?: \\s*[|&]\\s*\n (?: [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ | \\(\\s* [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+(?:\\s*&\\s*[a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+)+ \\s*\\) )\n )+\n) \\s+ )?\n((?:(&)\\s*)?(\\.\\.\\.)(\\$)[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*) # Variable name with possible reference\n(?=\\s*(?:,|\\)|/[/*]|\\#|$)) # A closing parentheses (end of argument list) or a comma or a comment",
1491
+ captures: {
1492
+ "1": {
1493
+ patterns: [
1494
+ {
1495
+ include: "#php-types"
1496
+ }
1497
+ ]
1498
+ },
1499
+ "2": {
1500
+ name: "variable.other.php"
1501
+ },
1502
+ "3": {
1503
+ name: "storage.modifier.reference.php"
1504
+ },
1505
+ "4": {
1506
+ name: "keyword.operator.variadic.php"
1507
+ },
1508
+ "5": {
1509
+ name: "punctuation.definition.variable.php"
1510
+ }
1511
+ },
1512
+ name: "meta.function.parameter.variadic.php"
1513
+ },
1514
+ {
1515
+ begin: "(?xi)\n(\n # nullable type\n (?:\\?\\s*)? [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ |\n # union, intersection or DNF type\n (?: [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ | \\(\\s* [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+(?:\\s*&\\s*[a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+)+ \\s*\\) )\n (?: \\s*[|&]\\s*\n (?: [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+ | \\(\\s* [a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+(?:\\s*&\\s*[a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+)+ \\s*\\) )\n )+\n)\n\\s+ ((?:(&)\\s*)?(\\$)[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*) # Variable name with possible reference",
1516
+ beginCaptures: {
1517
+ "1": {
1518
+ patterns: [
1519
+ {
1520
+ include: "#php-types"
1521
+ }
1522
+ ]
1523
+ },
1524
+ "2": {
1525
+ name: "variable.other.php"
1526
+ },
1527
+ "3": {
1528
+ name: "storage.modifier.reference.php"
1529
+ },
1530
+ "4": {
1531
+ name: "punctuation.definition.variable.php"
1532
+ }
1533
+ },
1534
+ end: "(?=\\s*(?:,|\\)|/[/*]|\\#))",
1535
+ name: "meta.function.parameter.typehinted.php",
1536
+ patterns: [
1537
+ {
1538
+ begin: "=",
1539
+ beginCaptures: {
1540
+ "0": {
1541
+ name: "keyword.operator.assignment.php"
1542
+ }
1543
+ },
1544
+ end: "(?=\\s*(?:,|\\)|/[/*]|\\#))",
1545
+ patterns: [
1546
+ {
1547
+ include: "#parameter-default-types"
1548
+ }
1549
+ ]
1550
+ }
1551
+ ]
1552
+ },
1553
+ {
1554
+ match: "(?xi)\n((?:(&)\\s*)?(\\$)[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*) # Variable name with possible reference\n(?=\\s*(?:,|\\)|/[/*]|\\#|$)) # A closing parentheses (end of argument list) or a comma or a comment",
1555
+ captures: {
1556
+ "1": {
1557
+ name: "variable.other.php"
1558
+ },
1559
+ "2": {
1560
+ name: "storage.modifier.reference.php"
1561
+ },
1562
+ "3": {
1563
+ name: "punctuation.definition.variable.php"
1564
+ }
1565
+ },
1566
+ name: "meta.function.parameter.no-default.php"
1567
+ },
1568
+ {
1569
+ begin: "(?xi)\n((?:(&)\\s*)?(\\$)[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*) # Variable name with possible reference\n\\s*(=)\\s*",
1570
+ beginCaptures: {
1571
+ "1": {
1572
+ name: "variable.other.php"
1573
+ },
1574
+ "2": {
1575
+ name: "storage.modifier.reference.php"
1576
+ },
1577
+ "3": {
1578
+ name: "punctuation.definition.variable.php"
1579
+ },
1580
+ "4": {
1581
+ name: "keyword.operator.assignment.php"
1582
+ }
1583
+ },
1584
+ end: "(?=\\s*(?:,|\\)|/[/*]|\\#))",
1585
+ name: "meta.function.parameter.default.php",
1586
+ patterns: [
1587
+ {
1588
+ include: "#parameter-default-types"
1589
+ }
1590
+ ]
1591
+ }
1592
+ ]
1593
+ },
1594
+ "named-arguments": {
1595
+ match: "(?i)(?<=^|\\(|,)\\s*([a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)\\s*(:)(?!:)",
1596
+ captures: {
1597
+ "1": {
1598
+ name: "entity.name.variable.parameter.php"
1599
+ },
1600
+ "2": {
1601
+ name: "punctuation.separator.colon.php"
1602
+ }
1603
+ }
1604
+ },
1605
+ "function-call": {
1606
+ patterns: [
1607
+ {
1608
+ begin: "(?x)\n(\n \\\\?(?<![a-zA-Z0-9_\\x{7f}-\\x{10ffff}]) # Optional root namespace\n [a-zA-Z_\\x{7f}-\\x{10ffff}][a-zA-Z0-9_\\x{7f}-\\x{10ffff}]* # First namespace\n (?:\\\\[a-zA-Z_\\x{7f}-\\x{10ffff}][a-zA-Z0-9_\\x{7f}-\\x{10ffff}]*)+ # Additional namespaces\n)\\s*(\\()",
1609
+ beginCaptures: {
1610
+ "1": {
1611
+ patterns: [
1612
+ {
1613
+ include: "#namespace"
1614
+ },
1615
+ {
1616
+ match: "(?i)[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*",
1617
+ name: "entity.name.function.php"
1618
+ }
1619
+ ]
1620
+ },
1621
+ "2": {
1622
+ name: "punctuation.definition.arguments.begin.bracket.round.php"
1623
+ }
1624
+ },
1625
+ end: "\\)|(?=\\?>)",
1626
+ endCaptures: {
1627
+ "0": {
1628
+ name: "punctuation.definition.arguments.end.bracket.round.php"
1629
+ }
1630
+ },
1631
+ name: "meta.function-call.php",
1632
+ patterns: [
1633
+ {
1634
+ include: "#named-arguments"
1635
+ },
1636
+ {
1637
+ include: "$self"
1638
+ }
1639
+ ]
1640
+ },
1641
+ {
1642
+ begin: "(\\\\)?(?<![a-zA-Z0-9_\\x{7f}-\\x{10ffff}])([a-zA-Z_\\x{7f}-\\x{10ffff}][a-zA-Z0-9_\\x{7f}-\\x{10ffff}]*)\\s*(\\()",
1643
+ beginCaptures: {
1644
+ "1": {
1645
+ patterns: [
1646
+ {
1647
+ include: "#namespace"
1648
+ }
1649
+ ]
1650
+ },
1651
+ "2": {
1652
+ patterns: [
1653
+ {
1654
+ include: "#support"
1655
+ },
1656
+ {
1657
+ match: "(?i)[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*",
1658
+ name: "entity.name.function.php"
1659
+ }
1660
+ ]
1661
+ },
1662
+ "3": {
1663
+ name: "punctuation.definition.arguments.begin.bracket.round.php"
1664
+ }
1665
+ },
1666
+ end: "\\)|(?=\\?>)",
1667
+ endCaptures: {
1668
+ "0": {
1669
+ name: "punctuation.definition.arguments.end.bracket.round.php"
1670
+ }
1671
+ },
1672
+ name: "meta.function-call.php",
1673
+ patterns: [
1674
+ {
1675
+ include: "#named-arguments"
1676
+ },
1677
+ {
1678
+ include: "$self"
1679
+ }
1680
+ ]
1681
+ },
1682
+ {
1683
+ match: "(?i)\\b(print|echo)\\b",
1684
+ name: "support.function.construct.output.php"
1685
+ }
1686
+ ]
1687
+ },
1688
+ heredoc: {
1689
+ patterns: [
1690
+ {
1691
+ begin: "(?i)(?=<<<\\s*(\"?)([a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)(\\1)\\s*$)",
1692
+ end: "(?!\\G)",
1693
+ name: "string.unquoted.heredoc.php",
1694
+ patterns: [
1695
+ {
1696
+ include: "#heredoc_interior"
1697
+ }
1698
+ ]
1699
+ },
1700
+ {
1701
+ begin: "(?=<<<\\s*'([a-zA-Z_]+[a-zA-Z0-9_]*)'\\s*$)",
1702
+ end: "(?!\\G)",
1703
+ name: "string.unquoted.nowdoc.php",
1704
+ patterns: [
1705
+ {
1706
+ include: "#nowdoc_interior"
1707
+ }
1708
+ ]
1709
+ }
1710
+ ]
1711
+ },
1712
+ heredoc_interior: {
1713
+ patterns: [
1714
+ {
1715
+ begin: "(<<<)\\s*(\"?)(HTML)(\\2)(\\s*)$",
1716
+ beginCaptures: {
1717
+ "0": {
1718
+ name: "punctuation.section.embedded.begin.php"
1719
+ },
1720
+ "1": {
1721
+ name: "punctuation.definition.string.php"
1722
+ },
1723
+ "3": {
1724
+ name: "keyword.operator.heredoc.php"
1725
+ },
1726
+ "5": {
1727
+ name: "invalid.illegal.trailing-whitespace.php"
1728
+ }
1729
+ },
1730
+ contentName: "text.html",
1731
+ end: "^\\s*(\\3)(?![A-Za-z0-9_\\x{7f}-\\x{10ffff}])",
1732
+ endCaptures: {
1733
+ "0": {
1734
+ name: "punctuation.section.embedded.end.php"
1735
+ },
1736
+ "1": {
1737
+ name: "keyword.operator.heredoc.php"
1738
+ }
1739
+ },
1740
+ name: "meta.embedded.html",
1741
+ patterns: [
1742
+ {
1743
+ include: "#interpolation"
1744
+ },
1745
+ {
1746
+ include: "text.html.basic"
1747
+ }
1748
+ ]
1749
+ },
1750
+ {
1751
+ begin: "(<<<)\\s*(\"?)(XML)(\\2)(\\s*)$",
1752
+ beginCaptures: {
1753
+ "0": {
1754
+ name: "punctuation.section.embedded.begin.php"
1755
+ },
1756
+ "1": {
1757
+ name: "punctuation.definition.string.php"
1758
+ },
1759
+ "3": {
1760
+ name: "keyword.operator.heredoc.php"
1761
+ },
1762
+ "5": {
1763
+ name: "invalid.illegal.trailing-whitespace.php"
1764
+ }
1765
+ },
1766
+ contentName: "text.xml",
1767
+ end: "^\\s*(\\3)(?![A-Za-z0-9_\\x{7f}-\\x{10ffff}])",
1768
+ endCaptures: {
1769
+ "0": {
1770
+ name: "punctuation.section.embedded.end.php"
1771
+ },
1772
+ "1": {
1773
+ name: "keyword.operator.heredoc.php"
1774
+ }
1775
+ },
1776
+ name: "meta.embedded.xml",
1777
+ patterns: [
1778
+ {
1779
+ include: "#interpolation"
1780
+ },
1781
+ {
1782
+ include: "text.xml"
1783
+ }
1784
+ ]
1785
+ },
1786
+ {
1787
+ begin: "(<<<)\\s*(\"?)([DS]QL)(\\2)(\\s*)$",
1788
+ beginCaptures: {
1789
+ "0": {
1790
+ name: "punctuation.section.embedded.begin.php"
1791
+ },
1792
+ "1": {
1793
+ name: "punctuation.definition.string.php"
1794
+ },
1795
+ "3": {
1796
+ name: "keyword.operator.heredoc.php"
1797
+ },
1798
+ "5": {
1799
+ name: "invalid.illegal.trailing-whitespace.php"
1800
+ }
1801
+ },
1802
+ contentName: "source.sql",
1803
+ end: "^\\s*(\\3)(?![A-Za-z0-9_\\x{7f}-\\x{10ffff}])",
1804
+ endCaptures: {
1805
+ "0": {
1806
+ name: "punctuation.section.embedded.end.php"
1807
+ },
1808
+ "1": {
1809
+ name: "keyword.operator.heredoc.php"
1810
+ }
1811
+ },
1812
+ name: "meta.embedded.sql",
1813
+ patterns: [
1814
+ {
1815
+ include: "#interpolation"
1816
+ },
1817
+ {
1818
+ include: "source.sql"
1819
+ }
1820
+ ]
1821
+ },
1822
+ {
1823
+ begin: "(<<<)\\s*(\"?)(JAVASCRIPT|JS)(\\2)(\\s*)$",
1824
+ beginCaptures: {
1825
+ "0": {
1826
+ name: "punctuation.section.embedded.begin.php"
1827
+ },
1828
+ "1": {
1829
+ name: "punctuation.definition.string.php"
1830
+ },
1831
+ "3": {
1832
+ name: "keyword.operator.heredoc.php"
1833
+ },
1834
+ "5": {
1835
+ name: "invalid.illegal.trailing-whitespace.php"
1836
+ }
1837
+ },
1838
+ contentName: "source.js",
1839
+ end: "^\\s*(\\3)(?![A-Za-z0-9_\\x{7f}-\\x{10ffff}])",
1840
+ endCaptures: {
1841
+ "0": {
1842
+ name: "punctuation.section.embedded.end.php"
1843
+ },
1844
+ "1": {
1845
+ name: "keyword.operator.heredoc.php"
1846
+ }
1847
+ },
1848
+ name: "meta.embedded.js",
1849
+ patterns: [
1850
+ {
1851
+ include: "#interpolation"
1852
+ },
1853
+ {
1854
+ include: "source.js"
1855
+ }
1856
+ ]
1857
+ },
1858
+ {
1859
+ begin: "(<<<)\\s*(\"?)(JSON)(\\2)(\\s*)$",
1860
+ beginCaptures: {
1861
+ "0": {
1862
+ name: "punctuation.section.embedded.begin.php"
1863
+ },
1864
+ "1": {
1865
+ name: "punctuation.definition.string.php"
1866
+ },
1867
+ "3": {
1868
+ name: "keyword.operator.heredoc.php"
1869
+ },
1870
+ "5": {
1871
+ name: "invalid.illegal.trailing-whitespace.php"
1872
+ }
1873
+ },
1874
+ contentName: "source.json",
1875
+ end: "^\\s*(\\3)(?![A-Za-z0-9_\\x{7f}-\\x{10ffff}])",
1876
+ endCaptures: {
1877
+ "0": {
1878
+ name: "punctuation.section.embedded.end.php"
1879
+ },
1880
+ "1": {
1881
+ name: "keyword.operator.heredoc.php"
1882
+ }
1883
+ },
1884
+ name: "meta.embedded.json",
1885
+ patterns: [
1886
+ {
1887
+ include: "#interpolation"
1888
+ },
1889
+ {
1890
+ include: "source.json"
1891
+ }
1892
+ ]
1893
+ },
1894
+ {
1895
+ begin: "(<<<)\\s*(\"?)(CSS)(\\2)(\\s*)$",
1896
+ beginCaptures: {
1897
+ "0": {
1898
+ name: "punctuation.section.embedded.begin.php"
1899
+ },
1900
+ "1": {
1901
+ name: "punctuation.definition.string.php"
1902
+ },
1903
+ "3": {
1904
+ name: "keyword.operator.heredoc.php"
1905
+ },
1906
+ "5": {
1907
+ name: "invalid.illegal.trailing-whitespace.php"
1908
+ }
1909
+ },
1910
+ contentName: "source.css",
1911
+ end: "^\\s*(\\3)(?![A-Za-z0-9_\\x{7f}-\\x{10ffff}])",
1912
+ endCaptures: {
1913
+ "0": {
1914
+ name: "punctuation.section.embedded.end.php"
1915
+ },
1916
+ "1": {
1917
+ name: "keyword.operator.heredoc.php"
1918
+ }
1919
+ },
1920
+ name: "meta.embedded.css",
1921
+ patterns: [
1922
+ {
1923
+ include: "#interpolation"
1924
+ },
1925
+ {
1926
+ include: "source.css"
1927
+ }
1928
+ ]
1929
+ },
1930
+ {
1931
+ begin: "(<<<)\\s*(\"?)(REGEXP?)(\\2)(\\s*)$",
1932
+ beginCaptures: {
1933
+ "0": {
1934
+ name: "punctuation.section.embedded.begin.php"
1935
+ },
1936
+ "1": {
1937
+ name: "punctuation.definition.string.php"
1938
+ },
1939
+ "3": {
1940
+ name: "keyword.operator.heredoc.php"
1941
+ },
1942
+ "5": {
1943
+ name: "invalid.illegal.trailing-whitespace.php"
1944
+ }
1945
+ },
1946
+ contentName: "string.regexp.heredoc.php",
1947
+ end: "^\\s*(\\3)(?![A-Za-z0-9_\\x{7f}-\\x{10ffff}])",
1948
+ endCaptures: {
1949
+ "0": {
1950
+ name: "punctuation.section.embedded.end.php"
1951
+ },
1952
+ "1": {
1953
+ name: "keyword.operator.heredoc.php"
1954
+ }
1955
+ },
1956
+ patterns: [
1957
+ {
1958
+ include: "#interpolation"
1959
+ },
1960
+ {
1961
+ match: "(\\\\){1,2}[.$^\\[\\]{}]",
1962
+ name: "constant.character.escape.regex.php"
1963
+ },
1964
+ {
1965
+ captures: {
1966
+ "1": {
1967
+ name: "punctuation.definition.arbitrary-repitition.php"
1968
+ },
1969
+ "3": {
1970
+ name: "punctuation.definition.arbitrary-repitition.php"
1971
+ }
1972
+ },
1973
+ match: "({)\\d+(,\\d+)?(})",
1974
+ name: "string.regexp.arbitrary-repitition.php"
1975
+ },
1976
+ {
1977
+ begin: "\\[(?:\\^?\\])?",
1978
+ captures: {
1979
+ "0": {
1980
+ name: "punctuation.definition.character-class.php"
1981
+ }
1982
+ },
1983
+ end: "\\]",
1984
+ name: "string.regexp.character-class.php",
1985
+ patterns: [
1986
+ {
1987
+ match: "\\\\[\\\\'\\[\\]]",
1988
+ name: "constant.character.escape.php"
1989
+ }
1990
+ ]
1991
+ },
1992
+ {
1993
+ match: "[$^+*]",
1994
+ name: "keyword.operator.regexp.php"
1995
+ },
1996
+ {
1997
+ begin: "(?i)(?<=^|\\s)(#)\\s(?=[[a-z0-9_\\x{7f}-\\x{10ffff},. \\t?!-][^\\x{00}-\\x{7f}]]*$)",
1998
+ beginCaptures: {
1999
+ "1": {
2000
+ name: "punctuation.definition.comment.php"
2001
+ }
2002
+ },
2003
+ end: "$",
2004
+ endCaptures: {
2005
+ "0": {
2006
+ name: "punctuation.definition.comment.php"
2007
+ }
2008
+ },
2009
+ name: "comment.line.number-sign.php"
2010
+ }
2011
+ ]
2012
+ },
2013
+ {
2014
+ begin: "(<<<)\\s*(\"?)(BLADE)(\\2)(\\s*)$",
2015
+ beginCaptures: {
2016
+ "0": {
2017
+ name: "punctuation.section.embedded.begin.php"
2018
+ },
2019
+ "1": {
2020
+ name: "punctuation.definition.string.php"
2021
+ },
2022
+ "3": {
2023
+ name: "keyword.operator.heredoc.php"
2024
+ },
2025
+ "5": {
2026
+ name: "invalid.illegal.trailing-whitespace.php"
2027
+ }
2028
+ },
2029
+ contentName: "text.html.php.blade",
2030
+ end: "^\\s*(\\3)(?![A-Za-z0-9_\\x{7f}-\\x{10ffff}])",
2031
+ endCaptures: {
2032
+ "0": {
2033
+ name: "punctuation.section.embedded.end.php"
2034
+ },
2035
+ "1": {
2036
+ name: "keyword.operator.heredoc.php"
2037
+ }
2038
+ },
2039
+ name: "meta.embedded.php.blade",
2040
+ patterns: [
2041
+ {
2042
+ include: "#interpolation"
2043
+ }
2044
+ ]
2045
+ },
2046
+ {
2047
+ begin: "(?i)(<<<)\\s*(\"?)([a-z_\\x{7f}-\\x{10ffff}]+[a-z0-9_\\x{7f}-\\x{10ffff}]*)(\\2)(\\s*)",
2048
+ beginCaptures: {
2049
+ "1": {
2050
+ name: "punctuation.definition.string.php"
2051
+ },
2052
+ "3": {
2053
+ name: "keyword.operator.heredoc.php"
2054
+ },
2055
+ "5": {
2056
+ name: "invalid.illegal.trailing-whitespace.php"
2057
+ }
2058
+ },
2059
+ end: "^\\s*(\\3)(?![A-Za-z0-9_\\x{7f}-\\x{10ffff}])",
2060
+ endCaptures: {
2061
+ "1": {
2062
+ name: "keyword.operator.heredoc.php"
2063
+ }
2064
+ },
2065
+ patterns: [
2066
+ {
2067
+ include: "#interpolation"
2068
+ }
2069
+ ]
2070
+ }
2071
+ ]
2072
+ },
2073
+ nowdoc_interior: {
2074
+ patterns: [
2075
+ {
2076
+ begin: "(<<<)\\s*'(HTML)'(\\s*)$",
2077
+ beginCaptures: {
2078
+ "0": {
2079
+ name: "punctuation.section.embedded.begin.php"
2080
+ },
2081
+ "1": {
2082
+ name: "punctuation.definition.string.php"
2083
+ },
2084
+ "2": {
2085
+ name: "keyword.operator.nowdoc.php"
2086
+ },
2087
+ "3": {
2088
+ name: "invalid.illegal.trailing-whitespace.php"
2089
+ }
2090
+ },
2091
+ contentName: "text.html",
2092
+ end: "^\\s*(\\2)(?![A-Za-z0-9_\\x{7f}-\\x{10ffff}])",
2093
+ endCaptures: {
2094
+ "0": {
2095
+ name: "punctuation.section.embedded.end.php"
2096
+ },
2097
+ "1": {
2098
+ name: "keyword.operator.nowdoc.php"
2099
+ }
2100
+ },
2101
+ name: "meta.embedded.html",
2102
+ patterns: [
2103
+ {
2104
+ include: "text.html.basic"
2105
+ }
2106
+ ]
2107
+ },
2108
+ {
2109
+ begin: "(<<<)\\s*'(XML)'(\\s*)$",
2110
+ beginCaptures: {
2111
+ "0": {
2112
+ name: "punctuation.section.embedded.begin.php"
2113
+ },
2114
+ "1": {
2115
+ name: "punctuation.definition.string.php"
2116
+ },
2117
+ "2": {
2118
+ name: "keyword.operator.nowdoc.php"
2119
+ },
2120
+ "3": {
2121
+ name: "invalid.illegal.trailing-whitespace.php"
2122
+ }
2123
+ },
2124
+ contentName: "text.xml",
2125
+ end: "^\\s*(\\2)(?![A-Za-z0-9_\\x{7f}-\\x{10ffff}])",
2126
+ endCaptures: {
2127
+ "0": {
2128
+ name: "punctuation.section.embedded.end.php"
2129
+ },
2130
+ "1": {
2131
+ name: "keyword.operator.nowdoc.php"
2132
+ }
2133
+ },
2134
+ name: "meta.embedded.xml",
2135
+ patterns: [
2136
+ {
2137
+ include: "text.xml"
2138
+ }
2139
+ ]
2140
+ },
2141
+ {
2142
+ begin: "(<<<)\\s*'([DS]QL)'(\\s*)$",
2143
+ beginCaptures: {
2144
+ "0": {
2145
+ name: "punctuation.section.embedded.begin.php"
2146
+ },
2147
+ "1": {
2148
+ name: "punctuation.definition.string.php"
2149
+ },
2150
+ "2": {
2151
+ name: "keyword.operator.nowdoc.php"
2152
+ },
2153
+ "3": {
2154
+ name: "invalid.illegal.trailing-whitespace.php"
2155
+ }
2156
+ },
2157
+ contentName: "source.sql",
2158
+ end: "^\\s*(\\2)(?![A-Za-z0-9_\\x{7f}-\\x{10ffff}])",
2159
+ endCaptures: {
2160
+ "0": {
2161
+ name: "punctuation.section.embedded.end.php"
2162
+ },
2163
+ "1": {
2164
+ name: "keyword.operator.nowdoc.php"
2165
+ }
2166
+ },
2167
+ name: "meta.embedded.sql",
2168
+ patterns: [
2169
+ {
2170
+ include: "source.sql"
2171
+ }
2172
+ ]
2173
+ },
2174
+ {
2175
+ begin: "(<<<)\\s*'(JAVASCRIPT|JS)'(\\s*)$",
2176
+ beginCaptures: {
2177
+ "0": {
2178
+ name: "punctuation.section.embedded.begin.php"
2179
+ },
2180
+ "1": {
2181
+ name: "punctuation.definition.string.php"
2182
+ },
2183
+ "2": {
2184
+ name: "keyword.operator.nowdoc.php"
2185
+ },
2186
+ "3": {
2187
+ name: "invalid.illegal.trailing-whitespace.php"
2188
+ }
2189
+ },
2190
+ contentName: "source.js",
2191
+ end: "^\\s*(\\2)(?![A-Za-z0-9_\\x{7f}-\\x{10ffff}])",
2192
+ endCaptures: {
2193
+ "0": {
2194
+ name: "punctuation.section.embedded.end.php"
2195
+ },
2196
+ "1": {
2197
+ name: "keyword.operator.nowdoc.php"
2198
+ }
2199
+ },
2200
+ name: "meta.embedded.js",
2201
+ patterns: [
2202
+ {
2203
+ include: "source.js"
2204
+ }
2205
+ ]
2206
+ },
2207
+ {
2208
+ begin: "(<<<)\\s*'(JSON)'(\\s*)$",
2209
+ beginCaptures: {
2210
+ "0": {
2211
+ name: "punctuation.section.embedded.begin.php"
2212
+ },
2213
+ "1": {
2214
+ name: "punctuation.definition.string.php"
2215
+ },
2216
+ "2": {
2217
+ name: "keyword.operator.nowdoc.php"
2218
+ },
2219
+ "3": {
2220
+ name: "invalid.illegal.trailing-whitespace.php"
2221
+ }
2222
+ },
2223
+ contentName: "source.json",
2224
+ end: "^\\s*(\\2)(?![A-Za-z0-9_\\x{7f}-\\x{10ffff}])",
2225
+ endCaptures: {
2226
+ "0": {
2227
+ name: "punctuation.section.embedded.end.php"
2228
+ },
2229
+ "1": {
2230
+ name: "keyword.operator.nowdoc.php"
2231
+ }
2232
+ },
2233
+ name: "meta.embedded.json",
2234
+ patterns: [
2235
+ {
2236
+ include: "source.json"
2237
+ }
2238
+ ]
2239
+ },
2240
+ {
2241
+ begin: "(<<<)\\s*'(CSS)'(\\s*)$",
2242
+ beginCaptures: {
2243
+ "0": {
2244
+ name: "punctuation.section.embedded.begin.php"
2245
+ },
2246
+ "1": {
2247
+ name: "punctuation.definition.string.php"
2248
+ },
2249
+ "2": {
2250
+ name: "keyword.operator.nowdoc.php"
2251
+ },
2252
+ "3": {
2253
+ name: "invalid.illegal.trailing-whitespace.php"
2254
+ }
2255
+ },
2256
+ contentName: "source.css",
2257
+ end: "^\\s*(\\2)(?![A-Za-z0-9_\\x{7f}-\\x{10ffff}])",
2258
+ endCaptures: {
2259
+ "0": {
2260
+ name: "punctuation.section.embedded.end.php"
2261
+ },
2262
+ "1": {
2263
+ name: "keyword.operator.nowdoc.php"
2264
+ }
2265
+ },
2266
+ name: "meta.embedded.css",
2267
+ patterns: [
2268
+ {
2269
+ include: "source.css"
2270
+ }
2271
+ ]
2272
+ },
2273
+ {
2274
+ begin: "(<<<)\\s*'(REGEXP?)'(\\s*)$",
2275
+ beginCaptures: {
2276
+ "0": {
2277
+ name: "punctuation.section.embedded.begin.php"
2278
+ },
2279
+ "1": {
2280
+ name: "punctuation.definition.string.php"
2281
+ },
2282
+ "2": {
2283
+ name: "keyword.operator.nowdoc.php"
2284
+ },
2285
+ "3": {
2286
+ name: "invalid.illegal.trailing-whitespace.php"
2287
+ }
2288
+ },
2289
+ contentName: "string.regexp.nowdoc.php",
2290
+ end: "^\\s*(\\2)(?![A-Za-z0-9_\\x{7f}-\\x{10ffff}])",
2291
+ endCaptures: {
2292
+ "0": {
2293
+ name: "punctuation.section.embedded.end.php"
2294
+ },
2295
+ "1": {
2296
+ name: "keyword.operator.nowdoc.php"
2297
+ }
2298
+ },
2299
+ patterns: [
2300
+ {
2301
+ match: "(\\\\){1,2}[.$^\\[\\]{}]",
2302
+ name: "constant.character.escape.regex.php"
2303
+ },
2304
+ {
2305
+ captures: {
2306
+ "1": {
2307
+ name: "punctuation.definition.arbitrary-repitition.php"
2308
+ },
2309
+ "3": {
2310
+ name: "punctuation.definition.arbitrary-repitition.php"
2311
+ }
2312
+ },
2313
+ match: "({)\\d+(,\\d+)?(})",
2314
+ name: "string.regexp.arbitrary-repitition.php"
2315
+ },
2316
+ {
2317
+ begin: "\\[(?:\\^?\\])?",
2318
+ captures: {
2319
+ "0": {
2320
+ name: "punctuation.definition.character-class.php"
2321
+ }
2322
+ },
2323
+ end: "\\]",
2324
+ name: "string.regexp.character-class.php",
2325
+ patterns: [
2326
+ {
2327
+ match: "\\\\[\\\\'\\[\\]]",
2328
+ name: "constant.character.escape.php"
2329
+ }
2330
+ ]
2331
+ },
2332
+ {
2333
+ match: "[$^+*]",
2334
+ name: "keyword.operator.regexp.php"
2335
+ },
2336
+ {
2337
+ begin: "(?i)(?<=^|\\s)(#)\\s(?=[[a-z0-9_\\x{7f}-\\x{10ffff},. \\t?!-][^\\x{00}-\\x{7f}]]*$)",
2338
+ beginCaptures: {
2339
+ "1": {
2340
+ name: "punctuation.definition.comment.php"
2341
+ }
2342
+ },
2343
+ end: "$",
2344
+ endCaptures: {
2345
+ "0": {
2346
+ name: "punctuation.definition.comment.php"
2347
+ }
2348
+ },
2349
+ name: "comment.line.number-sign.php"
2350
+ }
2351
+ ]
2352
+ },
2353
+ {
2354
+ begin: "(<<<)\\s*'(BLADE)'(\\s*)$",
2355
+ beginCaptures: {
2356
+ "0": {
2357
+ name: "punctuation.section.embedded.begin.php"
2358
+ },
2359
+ "1": {
2360
+ name: "punctuation.definition.string.php"
2361
+ },
2362
+ "2": {
2363
+ name: "keyword.operator.nowdoc.php"
2364
+ },
2365
+ "3": {
2366
+ name: "invalid.illegal.trailing-whitespace.php"
2367
+ }
2368
+ },
2369
+ contentName: "text.html.php.blade",
2370
+ end: "^\\s*(\\2)(?![A-Za-z0-9_\\x{7f}-\\x{10ffff}])",
2371
+ endCaptures: {
2372
+ "0": {
2373
+ name: "punctuation.section.embedded.end.php"
2374
+ },
2375
+ "1": {
2376
+ name: "keyword.operator.nowdoc.php"
2377
+ }
2378
+ },
2379
+ name: "meta.embedded.php.blade"
2380
+ },
2381
+ {
2382
+ begin: "(?i)(<<<)\\s*'([a-z_\\x{7f}-\\x{10ffff}]+[a-z0-9_\\x{7f}-\\x{10ffff}]*)'(\\s*)",
2383
+ beginCaptures: {
2384
+ "1": {
2385
+ name: "punctuation.definition.string.php"
2386
+ },
2387
+ "2": {
2388
+ name: "keyword.operator.nowdoc.php"
2389
+ },
2390
+ "3": {
2391
+ name: "invalid.illegal.trailing-whitespace.php"
2392
+ }
2393
+ },
2394
+ end: "^\\s*(\\2)(?![A-Za-z0-9_\\x{7f}-\\x{10ffff}])",
2395
+ endCaptures: {
2396
+ "1": {
2397
+ name: "keyword.operator.nowdoc.php"
2398
+ }
2399
+ }
2400
+ }
2401
+ ]
2402
+ },
2403
+ instantiation: {
2404
+ begin: "(?i)(new)\\s+(?!class\\b)",
2405
+ beginCaptures: {
2406
+ "1": {
2407
+ name: "keyword.other.new.php"
2408
+ }
2409
+ },
2410
+ end: "(?i)(?=[^a-z0-9_\\x{7f}-\\x{10ffff}\\\\])",
2411
+ patterns: [
2412
+ {
2413
+ match: "(?i)(parent|static|self)(?![a-z0-9_\\x{7f}-\\x{10ffff}])",
2414
+ name: "storage.type.php"
2415
+ },
2416
+ {
2417
+ include: "#class-name"
2418
+ },
2419
+ {
2420
+ include: "#variable-name"
2421
+ }
2422
+ ]
2423
+ },
2424
+ interpolation: {
2425
+ patterns: [
2426
+ {
2427
+ match: "\\\\[0-7]{1,3}",
2428
+ name: "constant.character.escape.octal.php"
2429
+ },
2430
+ {
2431
+ match: "\\\\x[0-9A-Fa-f]{1,2}",
2432
+ name: "constant.character.escape.hex.php"
2433
+ },
2434
+ {
2435
+ match: "\\\\u{[0-9A-Fa-f]+}",
2436
+ name: "constant.character.escape.unicode.php"
2437
+ },
2438
+ {
2439
+ match: "\\\\[nrtvef$\\\\]",
2440
+ name: "constant.character.escape.php"
2441
+ },
2442
+ {
2443
+ begin: "{(?=\\$.*?})",
2444
+ beginCaptures: {
2445
+ "0": {
2446
+ name: "punctuation.definition.variable.php"
2447
+ }
2448
+ },
2449
+ end: "}",
2450
+ endCaptures: {
2451
+ "0": {
2452
+ name: "punctuation.definition.variable.php"
2453
+ }
2454
+ },
2455
+ patterns: [
2456
+ {
2457
+ include: "$self"
2458
+ }
2459
+ ]
2460
+ },
2461
+ {
2462
+ include: "#variable-name"
2463
+ }
2464
+ ]
2465
+ },
2466
+ interpolation_double_quoted: {
2467
+ patterns: [
2468
+ {
2469
+ match: "\\\\\"",
2470
+ name: "constant.character.escape.php"
2471
+ },
2472
+ {
2473
+ include: "#interpolation"
2474
+ }
2475
+ ]
2476
+ },
2477
+ "invoke-call": {
2478
+ captures: {
2479
+ "1": {
2480
+ name: "variable.other.php"
2481
+ },
2482
+ "2": {
2483
+ name: "punctuation.definition.variable.php"
2484
+ }
2485
+ },
2486
+ match: "(?i)((\\$+)[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)(?=\\s*\\()",
2487
+ name: "meta.function-call.invoke.php"
2488
+ },
2489
+ namespace: {
2490
+ begin: "(?i)(?:(namespace)|[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)?(\\\\)",
2491
+ beginCaptures: {
2492
+ "1": {
2493
+ name: "variable.language.namespace.php"
2494
+ },
2495
+ "2": {
2496
+ name: "punctuation.separator.inheritance.php"
2497
+ }
2498
+ },
2499
+ end: "(?i)(?![a-z0-9_\\x{7f}-\\x{10ffff}]*\\\\)",
2500
+ name: "support.other.namespace.php",
2501
+ patterns: [
2502
+ {
2503
+ match: "\\\\",
2504
+ name: "punctuation.separator.inheritance.php"
2505
+ }
2506
+ ]
2507
+ },
2508
+ numbers: {
2509
+ patterns: [
2510
+ {
2511
+ match: "0[xX][0-9a-fA-F]+(?:_[0-9a-fA-F]+)*",
2512
+ name: "constant.numeric.hex.php"
2513
+ },
2514
+ {
2515
+ match: "0[bB][01]+(?:_[01]+)*",
2516
+ name: "constant.numeric.binary.php"
2517
+ },
2518
+ {
2519
+ match: "0[oO][0-7]+(?:_[0-7]+)*",
2520
+ name: "constant.numeric.octal.php"
2521
+ },
2522
+ {
2523
+ match: "0(?:_?[0-7]+)+",
2524
+ name: "constant.numeric.octal.php"
2525
+ },
2526
+ {
2527
+ match: "(?x)\n(?:\n (?:[0-9]+(?:_[0-9]+)*)?(\\.)[0-9]+(?:_[0-9]+)*(?:[eE][+-]?[0-9]+(?:_[0-9]+)*)?| # .3\n [0-9]+(?:_[0-9]+)*(\\.)(?:[0-9]+(?:_[0-9]+)*)?(?:[eE][+-]?[0-9]+(?:_[0-9]+)*)?| # 3.\n [0-9]+(?:_[0-9]+)*[eE][+-]?[0-9]+(?:_[0-9]+)* # 2e-3\n)",
2528
+ name: "constant.numeric.decimal.php",
2529
+ captures: {
2530
+ "1": {
2531
+ name: "punctuation.separator.decimal.period.php"
2532
+ },
2533
+ "2": {
2534
+ name: "punctuation.separator.decimal.period.php"
2535
+ }
2536
+ }
2537
+ },
2538
+ {
2539
+ match: "0|[1-9](?:_?[0-9]+)*",
2540
+ name: "constant.numeric.decimal.php"
2541
+ }
2542
+ ]
2543
+ },
2544
+ object: {
2545
+ patterns: [
2546
+ {
2547
+ begin: "(\\??->)\\s*(\\$?{)",
2548
+ beginCaptures: {
2549
+ "1": {
2550
+ name: "keyword.operator.class.php"
2551
+ },
2552
+ "2": {
2553
+ name: "punctuation.definition.variable.php"
2554
+ }
2555
+ },
2556
+ end: "}",
2557
+ endCaptures: {
2558
+ "0": {
2559
+ name: "punctuation.definition.variable.php"
2560
+ }
2561
+ },
2562
+ patterns: [
2563
+ {
2564
+ include: "$self"
2565
+ }
2566
+ ]
2567
+ },
2568
+ {
2569
+ begin: "(?i)(\\??->)\\s*([a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)\\s*(\\()",
2570
+ beginCaptures: {
2571
+ "1": {
2572
+ name: "keyword.operator.class.php"
2573
+ },
2574
+ "2": {
2575
+ name: "entity.name.function.php"
2576
+ },
2577
+ "3": {
2578
+ name: "punctuation.definition.arguments.begin.bracket.round.php"
2579
+ }
2580
+ },
2581
+ end: "\\)|(?=\\?>)",
2582
+ endCaptures: {
2583
+ "0": {
2584
+ name: "punctuation.definition.arguments.end.bracket.round.php"
2585
+ }
2586
+ },
2587
+ name: "meta.method-call.php",
2588
+ patterns: [
2589
+ {
2590
+ include: "#named-arguments"
2591
+ },
2592
+ {
2593
+ include: "$self"
2594
+ }
2595
+ ]
2596
+ },
2597
+ {
2598
+ captures: {
2599
+ "1": {
2600
+ name: "keyword.operator.class.php"
2601
+ },
2602
+ "2": {
2603
+ name: "variable.other.property.php"
2604
+ },
2605
+ "3": {
2606
+ name: "punctuation.definition.variable.php"
2607
+ }
2608
+ },
2609
+ match: "(?i)(\\??->)\\s*((\\$+)?[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)?"
2610
+ }
2611
+ ]
2612
+ },
2613
+ "php-types": {
2614
+ patterns: [
2615
+ {
2616
+ match: "\\?",
2617
+ name: "keyword.operator.nullable-type.php"
2618
+ },
2619
+ {
2620
+ match: "[|&]",
2621
+ name: "punctuation.separator.delimiter.php"
2622
+ },
2623
+ {
2624
+ match: "(?i)\\b(null|int|float|bool|string|array|object|callable|iterable|true|false|mixed|void)\\b",
2625
+ name: "keyword.other.type.php"
2626
+ },
2627
+ {
2628
+ match: "(?i)\\b(parent|self)\\b",
2629
+ name: "storage.type.php"
2630
+ },
2631
+ {
2632
+ match: "\\(",
2633
+ name: "punctuation.definition.type.begin.bracket.round.php"
2634
+ },
2635
+ {
2636
+ match: "\\)",
2637
+ name: "punctuation.definition.type.end.bracket.round.php"
2638
+ },
2639
+ {
2640
+ include: "#class-name"
2641
+ }
2642
+ ]
2643
+ },
2644
+ "parameter-default-types": {
2645
+ patterns: [
2646
+ {
2647
+ include: "#strings"
2648
+ },
2649
+ {
2650
+ include: "#numbers"
2651
+ },
2652
+ {
2653
+ include: "#string-backtick"
2654
+ },
2655
+ {
2656
+ include: "#variables"
2657
+ },
2658
+ {
2659
+ match: "=>",
2660
+ name: "keyword.operator.key.php"
2661
+ },
2662
+ {
2663
+ match: "=",
2664
+ name: "keyword.operator.assignment.php"
2665
+ },
2666
+ {
2667
+ match: "&(?=\\s*\\$)",
2668
+ name: "storage.modifier.reference.php"
2669
+ },
2670
+ {
2671
+ begin: "(array)\\s*(\\()",
2672
+ beginCaptures: {
2673
+ "1": {
2674
+ name: "support.function.construct.php"
2675
+ },
2676
+ "2": {
2677
+ name: "punctuation.definition.array.begin.bracket.round.php"
2678
+ }
2679
+ },
2680
+ end: "\\)",
2681
+ endCaptures: {
2682
+ "0": {
2683
+ name: "punctuation.definition.array.end.bracket.round.php"
2684
+ }
2685
+ },
2686
+ name: "meta.array.php",
2687
+ patterns: [
2688
+ {
2689
+ include: "#parameter-default-types"
2690
+ }
2691
+ ]
2692
+ },
2693
+ {
2694
+ begin: "\\[",
2695
+ beginCaptures: {
2696
+ "0": {
2697
+ name: "punctuation.section.array.begin.php"
2698
+ }
2699
+ },
2700
+ end: "\\]|(?=\\?>)",
2701
+ endCaptures: {
2702
+ "0": {
2703
+ name: "punctuation.section.array.end.php"
2704
+ }
2705
+ },
2706
+ patterns: [
2707
+ {
2708
+ include: "$self"
2709
+ }
2710
+ ]
2711
+ },
2712
+ {
2713
+ include: "#instantiation"
2714
+ },
2715
+ {
2716
+ begin: "(?xi)\n(?=[a-z0-9_\\x{7f}-\\x{10ffff}\\\\]+\n (::)\\s*([a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)?\n)",
2717
+ end: "(?i)(::)\\s*([a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)?",
2718
+ endCaptures: {
2719
+ "1": {
2720
+ name: "keyword.operator.class.php"
2721
+ },
2722
+ "2": {
2723
+ name: "constant.other.class.php"
2724
+ }
2725
+ },
2726
+ patterns: [
2727
+ {
2728
+ include: "#class-name"
2729
+ }
2730
+ ]
2731
+ },
2732
+ {
2733
+ include: "#constants"
2734
+ }
2735
+ ]
2736
+ },
2737
+ php_doc: {
2738
+ patterns: [
2739
+ {
2740
+ match: "^(?!\\s*\\*).*?(?:(?=\\*\\/)|$\\n?)",
2741
+ name: "invalid.illegal.missing-asterisk.phpdoc.php"
2742
+ },
2743
+ {
2744
+ captures: {
2745
+ "1": {
2746
+ name: "keyword.other.phpdoc.php"
2747
+ },
2748
+ "3": {
2749
+ name: "storage.modifier.php"
2750
+ },
2751
+ "4": {
2752
+ name: "invalid.illegal.wrong-access-type.phpdoc.php"
2753
+ }
2754
+ },
2755
+ match: "^\\s*\\*\\s*(@access)\\s+((public|private|protected)|(.+))\\s*$"
2756
+ },
2757
+ {
2758
+ captures: {
2759
+ "1": {
2760
+ name: "keyword.other.phpdoc.php"
2761
+ },
2762
+ "2": {
2763
+ name: "markup.underline.link.php"
2764
+ }
2765
+ },
2766
+ match: "(@xlink)\\s+(.+)\\s*$"
2767
+ },
2768
+ {
2769
+ begin: "(@(?:global|param|property(-(read|write))?|return|throws|var))\\s+(?=[?A-Za-z_\\x{7f}-\\x{10ffff}\\\\]|\\()",
2770
+ beginCaptures: {
2771
+ "1": {
2772
+ name: "keyword.other.phpdoc.php"
2773
+ }
2774
+ },
2775
+ end: "(?=\\s|\\*/)",
2776
+ contentName: "meta.other.type.phpdoc.php",
2777
+ patterns: [
2778
+ {
2779
+ include: "#php_doc_types_array_multiple"
2780
+ },
2781
+ {
2782
+ include: "#php_doc_types_array_single"
2783
+ },
2784
+ {
2785
+ include: "#php_doc_types"
2786
+ }
2787
+ ]
2788
+ },
2789
+ {
2790
+ match: "(?x)\n@\n(\n api|abstract|author|category|copyright|example|global|inherit[Dd]oc|internal|\n license|link|method|property(-(read|write))?|package|param|return|see|since|source|\n static|subpackage|throws|todo|var|version|uses|deprecated|final|ignore\n)\\b",
2791
+ name: "keyword.other.phpdoc.php"
2792
+ },
2793
+ {
2794
+ captures: {
2795
+ "1": {
2796
+ name: "keyword.other.phpdoc.php"
2797
+ }
2798
+ },
2799
+ match: "{(@(link|inherit[Dd]oc)).+?}",
2800
+ name: "meta.tag.inline.phpdoc.php"
2801
+ }
2802
+ ]
2803
+ },
2804
+ php_doc_types: {
2805
+ match: "(?i)\\??[a-z_\\x{7f}-\\x{10ffff}\\\\][a-z0-9_\\x{7f}-\\x{10ffff}\\\\]*([|&]\\??[a-z_\\x{7f}-\\x{10ffff}\\\\][a-z0-9_\\x{7f}-\\x{10ffff}\\\\]*)*",
2806
+ captures: {
2807
+ "0": {
2808
+ patterns: [
2809
+ {
2810
+ match: "\\?",
2811
+ name: "keyword.operator.nullable-type.php"
2812
+ },
2813
+ {
2814
+ match: "(?x)\\b\n(string|integer|int|boolean|bool|float|double|object|mixed\n|array|resource|void|null|callback|false|true|self|static)\\b",
2815
+ name: "keyword.other.type.php"
2816
+ },
2817
+ {
2818
+ include: "#class-name"
2819
+ },
2820
+ {
2821
+ match: "[|&]",
2822
+ name: "punctuation.separator.delimiter.php"
2823
+ },
2824
+ {
2825
+ match: "\\(",
2826
+ name: "punctuation.definition.type.begin.bracket.round.php"
2827
+ },
2828
+ {
2829
+ match: "\\)",
2830
+ name: "punctuation.definition.type.end.bracket.round.php"
2831
+ }
2832
+ ]
2833
+ }
2834
+ }
2835
+ },
2836
+ php_doc_types_array_multiple: {
2837
+ begin: "\\(",
2838
+ beginCaptures: {
2839
+ "0": {
2840
+ name: "punctuation.definition.type.begin.bracket.round.phpdoc.php"
2841
+ }
2842
+ },
2843
+ end: "(\\))(\\[\\])|(?=\\*/)",
2844
+ endCaptures: {
2845
+ "1": {
2846
+ name: "punctuation.definition.type.end.bracket.round.phpdoc.php"
2847
+ },
2848
+ "2": {
2849
+ name: "keyword.other.array.phpdoc.php"
2850
+ }
2851
+ },
2852
+ patterns: [
2853
+ {
2854
+ include: "#php_doc_types_array_multiple"
2855
+ },
2856
+ {
2857
+ include: "#php_doc_types_array_single"
2858
+ },
2859
+ {
2860
+ include: "#php_doc_types"
2861
+ },
2862
+ {
2863
+ match: "[|&]",
2864
+ name: "punctuation.separator.delimiter.php"
2865
+ }
2866
+ ]
2867
+ },
2868
+ php_doc_types_array_single: {
2869
+ match: "(?i)([a-z_\\x{7f}-\\x{10ffff}\\\\][a-z0-9_\\x{7f}-\\x{10ffff}\\\\]*)(\\[\\])",
2870
+ captures: {
2871
+ "1": {
2872
+ patterns: [
2873
+ {
2874
+ include: "#php_doc_types"
2875
+ }
2876
+ ]
2877
+ },
2878
+ "2": {
2879
+ name: "keyword.other.array.phpdoc.php"
2880
+ }
2881
+ }
2882
+ },
2883
+ "regex-double-quoted": {
2884
+ begin: "\"/(?=(\\\\.|[^\"/])++/[imsxeADSUXu]*\")",
2885
+ beginCaptures: {
2886
+ "0": {
2887
+ name: "punctuation.definition.string.begin.php"
2888
+ }
2889
+ },
2890
+ end: "(/)([imsxeADSUXu]*)(\")",
2891
+ endCaptures: {
2892
+ "0": {
2893
+ name: "punctuation.definition.string.end.php"
2894
+ }
2895
+ },
2896
+ name: "string.regexp.double-quoted.php",
2897
+ patterns: [
2898
+ {
2899
+ match: "(\\\\){1,2}[.$^\\[\\]{}]",
2900
+ name: "constant.character.escape.regex.php"
2901
+ },
2902
+ {
2903
+ include: "#interpolation_double_quoted"
2904
+ },
2905
+ {
2906
+ captures: {
2907
+ "1": {
2908
+ name: "punctuation.definition.arbitrary-repetition.php"
2909
+ },
2910
+ "3": {
2911
+ name: "punctuation.definition.arbitrary-repetition.php"
2912
+ }
2913
+ },
2914
+ match: "({)\\d+(,\\d+)?(})",
2915
+ name: "string.regexp.arbitrary-repetition.php"
2916
+ },
2917
+ {
2918
+ begin: "\\[(?:\\^?\\])?",
2919
+ captures: {
2920
+ "0": {
2921
+ name: "punctuation.definition.character-class.php"
2922
+ }
2923
+ },
2924
+ end: "\\]",
2925
+ name: "string.regexp.character-class.php",
2926
+ patterns: [
2927
+ {
2928
+ include: "#interpolation_double_quoted"
2929
+ }
2930
+ ]
2931
+ },
2932
+ {
2933
+ match: "[$^+*]",
2934
+ name: "keyword.operator.regexp.php"
2935
+ }
2936
+ ]
2937
+ },
2938
+ "regex-single-quoted": {
2939
+ begin: "'/(?=(\\\\(?:\\\\(?:\\\\[\\\\']?|[^'])|.)|[^'/])++/[imsxeADSUXu]*')",
2940
+ beginCaptures: {
2941
+ "0": {
2942
+ name: "punctuation.definition.string.begin.php"
2943
+ }
2944
+ },
2945
+ end: "(/)([imsxeADSUXu]*)(')",
2946
+ endCaptures: {
2947
+ "0": {
2948
+ name: "punctuation.definition.string.end.php"
2949
+ }
2950
+ },
2951
+ name: "string.regexp.single-quoted.php",
2952
+ patterns: [
2953
+ {
2954
+ include: "#single_quote_regex_escape"
2955
+ },
2956
+ {
2957
+ captures: {
2958
+ "1": {
2959
+ name: "punctuation.definition.arbitrary-repetition.php"
2960
+ },
2961
+ "3": {
2962
+ name: "punctuation.definition.arbitrary-repetition.php"
2963
+ }
2964
+ },
2965
+ match: "({)\\d+(,\\d+)?(})",
2966
+ name: "string.regexp.arbitrary-repetition.php"
2967
+ },
2968
+ {
2969
+ begin: "\\[(?:\\^?\\])?",
2970
+ captures: {
2971
+ "0": {
2972
+ name: "punctuation.definition.character-class.php"
2973
+ }
2974
+ },
2975
+ end: "\\]",
2976
+ name: "string.regexp.character-class.php"
2977
+ },
2978
+ {
2979
+ match: "[$^+*]",
2980
+ name: "keyword.operator.regexp.php"
2981
+ }
2982
+ ]
2983
+ },
2984
+ "scope-resolution": {
2985
+ patterns: [
2986
+ {
2987
+ match: "([A-Za-z_\\x{7f}-\\x{10ffff}\\\\][A-Za-z0-9_\\x{7f}-\\x{10ffff}\\\\]*)(?=\\s*::)",
2988
+ captures: {
2989
+ "1": {
2990
+ patterns: [
2991
+ {
2992
+ match: "\\b(self|static|parent)\\b",
2993
+ name: "storage.type.php"
2994
+ },
2995
+ {
2996
+ include: "#class-name"
2997
+ },
2998
+ {
2999
+ include: "#variable-name"
3000
+ }
3001
+ ]
3002
+ }
3003
+ }
3004
+ },
3005
+ {
3006
+ begin: "(?i)(::)\\s*([a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)\\s*(\\()",
3007
+ beginCaptures: {
3008
+ "1": {
3009
+ name: "keyword.operator.class.php"
3010
+ },
3011
+ "2": {
3012
+ name: "entity.name.function.php"
3013
+ },
3014
+ "3": {
3015
+ name: "punctuation.definition.arguments.begin.bracket.round.php"
3016
+ }
3017
+ },
3018
+ end: "\\)|(?=\\?>)",
3019
+ endCaptures: {
3020
+ "0": {
3021
+ name: "punctuation.definition.arguments.end.bracket.round.php"
3022
+ }
3023
+ },
3024
+ name: "meta.method-call.static.php",
3025
+ patterns: [
3026
+ {
3027
+ include: "#named-arguments"
3028
+ },
3029
+ {
3030
+ include: "$self"
3031
+ }
3032
+ ]
3033
+ },
3034
+ {
3035
+ match: "(?i)(::)\\s*(class)\\b",
3036
+ captures: {
3037
+ "1": {
3038
+ name: "keyword.operator.class.php"
3039
+ },
3040
+ "2": {
3041
+ name: "keyword.other.class.php"
3042
+ }
3043
+ }
3044
+ },
3045
+ {
3046
+ match: "(?xi)\n(::)\\s*\n(?:\n ((\\$+)[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*) # Variable\n |\n ([a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*) # Constant\n)?",
3047
+ captures: {
3048
+ "1": {
3049
+ name: "keyword.operator.class.php"
3050
+ },
3051
+ "2": {
3052
+ name: "variable.other.class.php"
3053
+ },
3054
+ "3": {
3055
+ name: "punctuation.definition.variable.php"
3056
+ },
3057
+ "4": {
3058
+ name: "constant.other.class.php"
3059
+ }
3060
+ }
3061
+ }
3062
+ ]
3063
+ },
3064
+ single_quote_regex_escape: {
3065
+ match: "\\\\(?:\\\\(?:\\\\[\\\\']?|[^'])|.)",
3066
+ name: "constant.character.escape.php"
3067
+ },
3068
+ "sql-string-double-quoted": {
3069
+ begin: "\"\\s*(?=(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER|AND|WITH)\\b)",
3070
+ beginCaptures: {
3071
+ "0": {
3072
+ name: "punctuation.definition.string.begin.php"
3073
+ }
3074
+ },
3075
+ contentName: "source.sql.embedded.php",
3076
+ end: "\"",
3077
+ endCaptures: {
3078
+ "0": {
3079
+ name: "punctuation.definition.string.end.php"
3080
+ }
3081
+ },
3082
+ name: "string.quoted.double.sql.php",
3083
+ patterns: [
3084
+ {
3085
+ match: "(#)(\\\\\"|[^\"])*(?=\"|$)",
3086
+ name: "comment.line.number-sign.sql",
3087
+ captures: {
3088
+ "1": {
3089
+ name: "punctuation.definition.comment.sql"
3090
+ }
3091
+ }
3092
+ },
3093
+ {
3094
+ match: "(--)(\\\\\"|[^\"])*(?=\"|$)",
3095
+ name: "comment.line.double-dash.sql",
3096
+ captures: {
3097
+ "1": {
3098
+ name: "punctuation.definition.comment.sql"
3099
+ }
3100
+ }
3101
+ },
3102
+ {
3103
+ match: "\\\\[\\\\\"`']",
3104
+ name: "constant.character.escape.php"
3105
+ },
3106
+ {
3107
+ match: "'(?=((\\\\')|[^'\"])*(\"|$))",
3108
+ name: "string.quoted.single.unclosed.sql"
3109
+ },
3110
+ {
3111
+ match: "`(?=((\\\\`)|[^`\"])*(\"|$))",
3112
+ name: "string.quoted.other.backtick.unclosed.sql"
3113
+ },
3114
+ {
3115
+ begin: "'",
3116
+ end: "'",
3117
+ name: "string.quoted.single.sql",
3118
+ patterns: [
3119
+ {
3120
+ include: "#interpolation_double_quoted"
3121
+ }
3122
+ ]
3123
+ },
3124
+ {
3125
+ begin: "`",
3126
+ end: "`",
3127
+ name: "string.quoted.other.backtick.sql",
3128
+ patterns: [
3129
+ {
3130
+ include: "#interpolation_double_quoted"
3131
+ }
3132
+ ]
3133
+ },
3134
+ {
3135
+ include: "#interpolation_double_quoted"
3136
+ },
3137
+ {
3138
+ include: "source.sql"
3139
+ }
3140
+ ]
3141
+ },
3142
+ "sql-string-single-quoted": {
3143
+ begin: "'\\s*(?=(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER|AND|WITH)\\b)",
3144
+ beginCaptures: {
3145
+ "0": {
3146
+ name: "punctuation.definition.string.begin.php"
3147
+ }
3148
+ },
3149
+ contentName: "source.sql.embedded.php",
3150
+ end: "'",
3151
+ endCaptures: {
3152
+ "0": {
3153
+ name: "punctuation.definition.string.end.php"
3154
+ }
3155
+ },
3156
+ name: "string.quoted.single.sql.php",
3157
+ patterns: [
3158
+ {
3159
+ match: "(#)(\\\\'|[^'])*(?='|$)",
3160
+ name: "comment.line.number-sign.sql",
3161
+ captures: {
3162
+ "1": {
3163
+ name: "punctuation.definition.comment.sql"
3164
+ }
3165
+ }
3166
+ },
3167
+ {
3168
+ match: "(--)(\\\\'|[^'])*(?='|$)",
3169
+ name: "comment.line.double-dash.sql",
3170
+ captures: {
3171
+ "1": {
3172
+ name: "punctuation.definition.comment.sql"
3173
+ }
3174
+ }
3175
+ },
3176
+ {
3177
+ match: "\\\\[\\\\'`\"]",
3178
+ name: "constant.character.escape.php"
3179
+ },
3180
+ {
3181
+ match: "`(?=((\\\\`)|[^`'])*('|$))",
3182
+ name: "string.quoted.other.backtick.unclosed.sql"
3183
+ },
3184
+ {
3185
+ match: "\"(?=((\\\\\")|[^\"'])*('|$))",
3186
+ name: "string.quoted.double.unclosed.sql"
3187
+ },
3188
+ {
3189
+ include: "source.sql"
3190
+ }
3191
+ ]
3192
+ },
3193
+ "string-backtick": {
3194
+ begin: "`",
3195
+ beginCaptures: {
3196
+ "0": {
3197
+ name: "punctuation.definition.string.begin.php"
3198
+ }
3199
+ },
3200
+ end: "`",
3201
+ endCaptures: {
3202
+ "0": {
3203
+ name: "punctuation.definition.string.end.php"
3204
+ }
3205
+ },
3206
+ name: "string.interpolated.php",
3207
+ patterns: [
3208
+ {
3209
+ match: "\\\\`",
3210
+ name: "constant.character.escape.php"
3211
+ },
3212
+ {
3213
+ include: "#interpolation"
3214
+ }
3215
+ ]
3216
+ },
3217
+ "string-double-quoted": {
3218
+ begin: "\"",
3219
+ beginCaptures: {
3220
+ "0": {
3221
+ name: "punctuation.definition.string.begin.php"
3222
+ }
3223
+ },
3224
+ end: "\"",
3225
+ endCaptures: {
3226
+ "0": {
3227
+ name: "punctuation.definition.string.end.php"
3228
+ }
3229
+ },
3230
+ name: "string.quoted.double.php",
3231
+ patterns: [
3232
+ {
3233
+ include: "#interpolation_double_quoted"
3234
+ }
3235
+ ]
3236
+ },
3237
+ "string-single-quoted": {
3238
+ begin: "'",
3239
+ beginCaptures: {
3240
+ "0": {
3241
+ name: "punctuation.definition.string.begin.php"
3242
+ }
3243
+ },
3244
+ end: "'",
3245
+ endCaptures: {
3246
+ "0": {
3247
+ name: "punctuation.definition.string.end.php"
3248
+ }
3249
+ },
3250
+ name: "string.quoted.single.php",
3251
+ patterns: [
3252
+ {
3253
+ match: "\\\\[\\\\']",
3254
+ name: "constant.character.escape.php"
3255
+ }
3256
+ ]
3257
+ },
3258
+ strings: {
3259
+ patterns: [
3260
+ {
3261
+ include: "#regex-double-quoted"
3262
+ },
3263
+ {
3264
+ include: "#sql-string-double-quoted"
3265
+ },
3266
+ {
3267
+ include: "#string-double-quoted"
3268
+ },
3269
+ {
3270
+ include: "#regex-single-quoted"
3271
+ },
3272
+ {
3273
+ include: "#sql-string-single-quoted"
3274
+ },
3275
+ {
3276
+ include: "#string-single-quoted"
3277
+ }
3278
+ ]
3279
+ },
3280
+ support: {
3281
+ patterns: [
3282
+ {
3283
+ match: "(?xi)\n\\b\napc_(\n store|sma_info|compile_file|clear_cache|cas|cache_info|inc|dec|define_constants|delete(_file)?|\n exists|fetch|load_constants|add|bin_(dump|load)(file)?\n)\\b",
3284
+ name: "support.function.apc.php"
3285
+ },
3286
+ {
3287
+ match: "(?xi)\\b\n(\n shuffle|sizeof|sort|next|nat(case)?sort|count|compact|current|in_array|usort|uksort|uasort|\n pos|prev|end|each|extract|ksort|key(_exists)?|krsort|list|asort|arsort|rsort|reset|range|\n array(_(shift|sum|splice|search|slice|chunk|change_key_case|count_values|column|combine|\n (diff|intersect)(_(u)?(key|assoc))?|u(diff|intersect)(_(u)?assoc)?|unshift|unique|\n pop|push|pad|product|values|keys|key_exists|filter|fill(_keys)?|flip|walk(_recursive)?|\n reduce|replace(_recursive)?|reverse|rand|multisort|merge(_recursive)?|map)?)\n)\\b",
3288
+ name: "support.function.array.php"
3289
+ },
3290
+ {
3291
+ match: "(?xi)\\b\n(\n show_source|sys_getloadavg|sleep|highlight_(file|string)|constant|connection_(aborted|status)|\n time_(nanosleep|sleep_until)|ignore_user_abort|die|define(d)?|usleep|uniqid|unpack|__halt_compiler|\n php_(check_syntax|strip_whitespace)|pack|eval|exit|get_browser\n)\\b",
3292
+ name: "support.function.basic_functions.php"
3293
+ },
3294
+ {
3295
+ match: "(?i)\\bbc(scale|sub|sqrt|comp|div|pow(mod)?|add|mod|mul)\\b",
3296
+ name: "support.function.bcmath.php"
3297
+ },
3298
+ {
3299
+ match: "(?i)\\bblenc_encrypt\\b",
3300
+ name: "support.function.blenc.php"
3301
+ },
3302
+ {
3303
+ match: "(?i)\\bbz(compress|close|open|decompress|errstr|errno|error|flush|write|read)\\b",
3304
+ name: "support.function.bz2.php"
3305
+ },
3306
+ {
3307
+ match: "(?xi)\\b\n(\n (French|Gregorian|Jewish|Julian)ToJD|cal_(to_jd|info|days_in_month|from_jd)|unixtojd|\n jdto(unix|jewish)|easter_(date|days)|JD(MonthName|To(Gregorian|Julian|French)|DayOfWeek)\n)\\b",
3308
+ name: "support.function.calendar.php"
3309
+ },
3310
+ {
3311
+ match: "(?xi)\\b\n(\n class_alias|all_user_method(_array)?|is_(a|subclass_of)|__autoload|(class|interface|method|property|trait)_exists|\n get_(class(_(vars|methods))?|(called|parent)_class|object_vars|declared_(classes|interfaces|traits))\n)\\b",
3312
+ name: "support.function.classobj.php"
3313
+ },
3314
+ {
3315
+ match: "(?xi)\\b\n(\n com_(create_guid|print_typeinfo|event_sink|load_typelib|get_active_object|message_pump)|\n variant_(sub|set(_type)?|not|neg|cast|cat|cmp|int|idiv|imp|or|div|date_(from|to)_timestamp|\n pow|eqv|fix|and|add|abs|round|get_type|xor|mod|mul)\n)\\b",
3316
+ name: "support.function.com.php"
3317
+ },
3318
+ {
3319
+ match: "(?i)\\b(isset|unset|eval|empty|list)\\b",
3320
+ name: "support.function.construct.php"
3321
+ },
3322
+ {
3323
+ match: "(?i)\\b(print|echo)\\b",
3324
+ name: "support.function.construct.output.php"
3325
+ },
3326
+ {
3327
+ match: "(?i)\\bctype_(space|cntrl|digit|upper|punct|print|lower|alnum|alpha|graph|xdigit)\\b",
3328
+ name: "support.function.ctype.php"
3329
+ },
3330
+ {
3331
+ match: "(?xi)\\b\ncurl_(\n share_(close|init|setopt)|strerror|setopt(_array)?|copy_handle|close|init|unescape|pause|escape|\n errno|error|exec|version|file_create|reset|getinfo|\n multi_(strerror|setopt|select|close|init|info_read|(add|remove)_handle|getcontent|exec)\n)\\b",
3332
+ name: "support.function.curl.php"
3333
+ },
3334
+ {
3335
+ match: "(?xi)\\b\n(\n strtotime|str[fp]time|checkdate|time|timezone_name_(from_abbr|get)|idate|\n timezone_((location|offset|transitions|version)_get|(abbreviations|identifiers)_list|open)|\n date(_(sun(rise|set)|sun_info|sub|create(_(immutable_)?from_format)?|timestamp_(get|set)|timezone_(get|set)|time_set|\n isodate_set|interval_(create_from_date_string|format)|offset_get|diff|default_timezone_(get|set)|date_set|\n parse(_from_format)?|format|add|get_last_errors|modify))?|\n localtime|get(date|timeofday)|gm(strftime|date|mktime)|microtime|mktime\n)\\b",
3336
+ name: "support.function.datetime.php"
3337
+ },
3338
+ {
3339
+ match: "(?i)\\bdba_(sync|handlers|nextkey|close|insert|optimize|open|delete|popen|exists|key_split|firstkey|fetch|list|replace)\\b",
3340
+ name: "support.function.dba.php"
3341
+ },
3342
+ {
3343
+ match: "(?i)\\bdbx_(sort|connect|compare|close|escape_string|error|query|fetch_row)\\b",
3344
+ name: "support.function.dbx.php"
3345
+ },
3346
+ {
3347
+ match: "(?i)\\b(scandir|chdir|chroot|closedir|opendir|dir|rewinddir|readdir|getcwd)\\b",
3348
+ name: "support.function.dir.php"
3349
+ },
3350
+ {
3351
+ match: "(?xi)\\b\neio_(\n sync(fs)?|sync_file_range|symlink|stat(vfs)?|sendfile|set_min_parallel|set_max_(idle|poll_(reqs|time)|parallel)|\n seek|n(threads|op|pending|reqs|ready)|chown|chmod|custom|close|cancel|truncate|init|open|dup2|unlink|utime|poll|\n event_loop|f(sync|stat(vfs)?|chown|chmod|truncate|datasync|utime|allocate)|write|lstat|link|rename|realpath|\n read(ahead|dir|link)?|rmdir|get_(event_stream|last_error)|grp(_(add|cancel|limit))?|mknod|mkdir|busy\n)\\b",
3352
+ name: "support.function.eio.php"
3353
+ },
3354
+ {
3355
+ match: "(?xi)\\b\nenchant_(\n dict_(store_replacement|suggest|check|is_in_session|describe|quick_check|add_to_(personal|session)|get_error)|\n broker_(set_ordering|init|dict_exists|describe|free(_dict)?|list_dicts|request_(pwl_)?dict|get_error)\n)\\b",
3356
+ name: "support.function.enchant.php"
3357
+ },
3358
+ {
3359
+ match: "(?i)\\b(split(i)?|sql_regcase|ereg(i)?(_replace)?)\\b",
3360
+ name: "support.function.ereg.php"
3361
+ },
3362
+ {
3363
+ match: "(?i)\\b((restore|set)_(error_handler|exception_handler)|trigger_error|debug_(print_)?backtrace|user_error|error_(log|reporting|get_last))\\b",
3364
+ name: "support.function.errorfunc.php"
3365
+ },
3366
+ {
3367
+ match: "(?i)\\b(shell_exec|system|passthru|proc_(nice|close|terminate|open|get_status)|escapeshell(arg|cmd)|exec)\\b",
3368
+ name: "support.function.exec.php"
3369
+ },
3370
+ {
3371
+ match: "(?i)\\b(exif_(thumbnail|tagname|imagetype|read_data)|read_exif_data)\\b",
3372
+ name: "support.function.exif.php"
3373
+ },
3374
+ {
3375
+ match: "(?xi)\\b\nfann_(\n (duplicate|length|merge|shuffle|subset)_train_data|scale_(train(_data)?|(input|output)(_train_data)?)|\n set_(scaling_params|sarprop_(step_error_(shift|threshold_factor)|temperature|weight_decay_shift)|\n cascade_(num_candidate_groups|candidate_(change_fraction|limit|stagnation_epochs)|\n output_(change_fraction|stagnation_epochs)|weight_multiplier|activation_(functions|steepnesses)|\n (max|min)_(cand|out)_epochs)|\n callback|training_algorithm|train_(error|stop)_function|(input|output)_scaling_params|error_log|\n quickprop_(decay|mu)|weight(_array)?|learning_(momentum|rate)|bit_fail_limit|\n activation_(function|steepness)(_(hidden|layer|output))?|\n rprop_((decrease|increase)_factor|delta_(max|min|zero)))|\n save(_train)?|num_(input|output)_train_data|copy|clear_scaling_params|cascadetrain_on_(file|data)|\n create_((sparse|shortcut|standard)(_array)?|train(_from_callback)?|from_file)|\n test(_data)?|train(_(on_(file|data)|epoch))?|init_weights|descale_(input|output|train)|destroy(_train)?|\n print_error|run|reset_(MSE|err(no|str))|read_train_from_file|randomize_weights|\n get_(sarprop_(step_error_(shift|threshold_factor)|temperature|weight_decay_shift)|num_(input|output|layers)|\n network_type|MSE|connection_(array|rate)|bias_array|bit_fail(_limit)?|\n cascade_(num_(candidates|candidate_groups)|(candidate|output)_(change_fraction|limit|stagnation_epochs)|\n weight_multiplier|activation_(functions|steepnesses)(_count)?|(max|min)_(cand|out)_epochs)|\n total_(connections|neurons)|training_algorithm|train_(error|stop)_function|err(no|str)|\n quickprop_(decay|mu)|learning_(momentum|rate)|layer_array|activation_(function|steepness)|\n rprop_((decrease|increase)_factor|delta_(max|min|zero)))\n)\\b",
3376
+ name: "support.function.fann.php"
3377
+ },
3378
+ {
3379
+ match: "(?xi)\\b\n(\n symlink|stat|set_file_buffer|chown|chgrp|chmod|copy|clearstatcache|touch|tempnam|tmpfile|\n is_(dir|(uploaded_)?file|executable|link|readable|writ(e)?able)|disk_(free|total)_space|diskfreespace|\n dirname|delete|unlink|umask|pclose|popen|pathinfo|parse_ini_(file|string)|fscanf|fstat|fseek|fnmatch|\n fclose|ftell|ftruncate|file(size|[acm]time|type|inode|owner|perms|group)?|file_(exists|(get|put)_contents)|\n f(open|puts|putcsv|passthru|eof|flush|write|lock|read|gets(s)?|getc(sv)?)|lstat|lchown|lchgrp|link(info)?|\n rename|rewind|read(file|link)|realpath(_cache_(get|size))?|rmdir|glob|move_uploaded_file|mkdir|basename\n)\\b",
3380
+ name: "support.function.file.php"
3381
+ },
3382
+ {
3383
+ match: "(?i)\\b(finfo_(set_flags|close|open|file|buffer)|mime_content_type)\\b",
3384
+ name: "support.function.fileinfo.php"
3385
+ },
3386
+ {
3387
+ match: "(?i)\\bfilter_(has_var|input(_array)?|id|var(_array)?|list)\\b",
3388
+ name: "support.function.filter.php"
3389
+ },
3390
+ {
3391
+ match: "(?i)\\bfastcgi_finish_request\\b",
3392
+ name: "support.function.fpm.php"
3393
+ },
3394
+ {
3395
+ 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",
3396
+ name: "support.function.funchand.php"
3397
+ },
3398
+ {
3399
+ match: "(?i)\\b((n)?gettext|textdomain|d((n)?gettext|c(n)?gettext)|bind(textdomain|_textdomain_codeset))\\b",
3400
+ name: "support.function.gettext.php"
3401
+ },
3402
+ {
3403
+ match: "(?xi)\\b\ngmp_(\n scan[01]|strval|sign|sub|setbit|sqrt(rem)?|hamdist|neg|nextprime|com|clrbit|cmp|testbit|\n intval|init|invert|import|or|div(exact)?|div_(q|qr|r)|jacobi|popcount|pow(m)?|perfect_square|\n prob_prime|export|fact|legendre|and|add|abs|root(rem)?|random(_(bits|range))?|gcd(ext)?|xor|mod|mul\n)\\b",
3404
+ name: "support.function.gmp.php"
3405
+ },
3406
+ {
3407
+ match: "(?i)\\bhash(_(hmac(_file)?|copy|init|update(_(file|stream))?|pbkdf2|equals|file|final|algos))?\\b",
3408
+ name: "support.function.hash.php"
3409
+ },
3410
+ {
3411
+ match: "(?xi)\\b\n(\n http_(support|send_(status|stream|content_(disposition|type)|data|file|last_modified)|head|\n negotiate_(charset|content_type|language)|chunked_decode|cache_(etag|last_modified)|throttle|\n inflate|deflate|date|post_(data|fields)|put_(data|file|stream)|persistent_handles_(count|clean|ident)|\n parse_(cookie|headers|message|params)|redirect|request(_(method_(exists|name|(un)?register)|body_encode))?|\n get(_request_(headers|body(_stream)?))?|match_(etag|modified|request_header)|build_(cookie|str|url))|\n ob_(etag|deflate|inflate)handler\n)\\b",
3412
+ name: "support.function.http.php"
3413
+ },
3414
+ {
3415
+ match: "(?i)\\b(iconv(_(str(pos|len|rpos)|substr|(get|set)_encoding|mime_(decode(_headers)?|encode)))?|ob_iconv_handler)\\b",
3416
+ name: "support.function.iconv.php"
3417
+ },
3418
+ {
3419
+ match: "(?i)\\biis_((start|stop)_(service|server)|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",
3420
+ name: "support.function.iisfunc.php"
3421
+ },
3422
+ {
3423
+ match: "(?xi)\\b\n(\n iptc(embed|parse)|(jpeg|png)2wbmp|gd_info|getimagesize(fromstring)?|\n image(s[xy]|scale|(char|string)(up)?|set(style|thickness|tile|interpolation|pixel|brush)|savealpha|\n convolution|copy(resampled|resized|merge(gray)?)?|colors(forindex|total)|\n color(set|closest(alpha|hwb)?|transparent|deallocate|(allocate|exact|resolve)(alpha)?|at|match)|\n crop(auto)?|create(truecolor|from(string|jpeg|png|wbmp|webp|gif|gd(2(part)?)?|xpm|xbm))?|\n types|ttf(bbox|text)|truecolortopalette|istruecolor|interlace|2wbmp|destroy|dashedline|jpeg|\n _type_to_(extension|mime_type)|ps(slantfont|text|(encode|extend|free|load)font|bbox)|png|polygon|\n palette(copy|totruecolor)|ellipse|ft(text|bbox)|filter|fill|filltoborder|\n filled(arc|ellipse|polygon|rectangle)|font(height|width)|flip|webp|wbmp|line|loadfont|layereffect|\n antialias|affine(matrix(concat|get))?|alphablending|arc|rotate|rectangle|gif|gd(2)?|gammacorrect|\n grab(screen|window)|xbm)\n)\\b",
3424
+ name: "support.function.image.php"
3425
+ },
3426
+ {
3427
+ match: "(?xi)\\b\n(\n sys_get_temp_dir|set_(time_limit|include_path|magic_quotes_runtime)|cli_(get|set)_process_title|\n ini_(alter|get(_all)?|restore|set)|zend_(thread_id|version|logo_guid)|dl|php(credits|info|version)|\n php_(sapi_name|ini_(scanned_files|loaded_file)|uname|logo_guid)|putenv|extension_loaded|version_compare|\n assert(_options)?|restore_include_path|gc_(collect_cycles|disable|enable(d)?)|getopt|\n get_(cfg_var|current_user|defined_constants|extension_funcs|include_path|included_files|loaded_extensions|\n magic_quotes_(gpc|runtime)|required_files|resources)|\n get(env|lastmod|rusage|my(inode|[gup]id))|\n memory_get_(peak_)?usage|main|magic_quotes_runtime\n)\\b",
3428
+ name: "support.function.info.php"
3429
+ },
3430
+ {
3431
+ match: "(?xi)\\b\nibase_(\n set_event_handler|service_(attach|detach)|server_info|num_(fields|params)|name_result|connect|\n commit(_ret)?|close|trans|delete_user|drop_db|db_info|pconnect|param_info|prepare|err(code|msg)|\n execute|query|field_info|fetch_(assoc|object|row)|free_(event_handler|query|result)|wait_event|\n add_user|affected_rows|rollback(_ret)?|restore|gen_id|modify_user|maintain_db|backup|\n blob_(cancel|close|create|import|info|open|echo|add|get)\n)\\b",
3432
+ name: "support.function.interbase.php"
3433
+ },
3434
+ {
3435
+ match: "(?xi)\\b\n(\n normalizer_(normalize|is_normalized)|idn_to_(unicode|utf8|ascii)|\n numfmt_(set_(symbol|(text_)?attribute|pattern)|create|(parse|format)(_currency)?|\n get_(symbol|(text_)?attribute|pattern|error_(code|message)|locale))|\n collator_(sort(_with_sort_keys)?|set_(attribute|strength)|compare|create|asort|\n get_(strength|sort_key|error_(code|message)|locale|attribute))|\n transliterator_(create(_(inverse|from_rules))?|transliterate|list_ids|get_error_(code|message))|\n intl(cal|tz)_get_error_(code|message)|intl_(is_failure|error_name|get_error_(code|message))|\n datefmt_(set_(calendar|lenient|pattern|timezone(_id)?)|create|is_lenient|parse|format(_object)?|localtime|\n get_(calendar(_object)?|time(type|zone(_id)?)|datetype|pattern|error_(code|message)|locale))|\n locale_(set_default|compose|canonicalize|parse|filter_matches|lookup|accept_from_http|\n get_(script|display_(script|name|variant|language|region)|default|primary_language|keywords|all_variants|region))|\n resourcebundle_(create|count|locales|get(_(error_(code|message)))?)|\n grapheme_(str(i?str|r?i?pos|len)|substr|extract)|\n msgfmt_(set_pattern|create|(format|parse)(_message)?|get_(pattern|error_(code|message)|locale))\n)\\b",
3436
+ name: "support.function.intl.php"
3437
+ },
3438
+ {
3439
+ match: "(?i)\\bjson_(decode|encode|last_error(_msg)?)\\b",
3440
+ name: "support.function.json.php"
3441
+ },
3442
+ {
3443
+ match: "(?xi)\\b\nldap_(\n start|tls|sort|search|sasl_bind|set_(option|rebind_proc)|(first|next)_(attribute|entry|reference)|\n connect|control_paged_result(_response)?|count_entries|compare|close|t61_to_8859|8859_to_t61|\n dn2ufn|delete|unbind|parse_(reference|result)|escape|errno|err2str|error|explode_dn|bind|\n free_result|list|add|rename|read|get_(option|dn|entries|values(_len)?|attributes)|modify(_batch)?|\n mod_(add|del|replace)\n)\\b",
3444
+ name: "support.function.ldap.php"
3445
+ },
3446
+ {
3447
+ match: "(?i)\\blibxml_(set_(streams_context|external_entity_loader)|clear_errors|disable_entity_loader|use_internal_errors|get_(errors|last_error))\\b",
3448
+ name: "support.function.libxml.php"
3449
+ },
3450
+ {
3451
+ match: "(?i)\\b(ezmlm_hash|mail)\\b",
3452
+ name: "support.function.mail.php"
3453
+ },
3454
+ {
3455
+ match: "(?xi)\\b\n(\n (a)?(cos|sin|tan)(h)?|sqrt|srand|hypot|hexdec|ceil|is_(nan|(in)?finite)|octdec|dec(hex|oct|bin)|deg2rad|\n pi|pow|exp(m1)?|floor|fmod|lcg_value|log(1(p|0))?|atan2|abs|round|rand|rad2deg|getrandmax|\n mt_(srand|rand|getrandmax)|max|min|bindec|base_convert\n)\\b",
3456
+ name: "support.function.math.php"
3457
+ },
3458
+ {
3459
+ match: "(?xi)\\b\nmb_(\n str(cut|str|to(lower|upper)|istr|ipos|imwidth|pos|width|len|rchr|richr|ripos|rpos)|\n substitute_character|substr(_count)?|split|send_mail|http_(input|output)|check_encoding|\n convert_(case|encoding|kana|variables)|internal_encoding|output_handler|decode_(numericentity|mimeheader)|\n detect_(encoding|order)|parse_str|preferred_mime_name|encoding_aliases|encode_(numericentity|mimeheader)|\n ereg(i(_replace)?)?|ereg_(search(_(get(pos|regs)|init|regs|(set)?pos))?|replace(_callback)?|match)|\n list_encodings|language|regex_(set_options|encoding)|get_info\n)\\b",
3460
+ name: "support.function.mbstring.php"
3461
+ },
3462
+ {
3463
+ match: "(?xi)\\b\n(\n mcrypt_(\n cfb|create_iv|cbc|ofb|decrypt|encrypt|ecb|list_(algorithms|modes)|generic(_((de)?init|end))?|\n enc_(self_test|is_block_(algorithm|algorithm_mode|mode)|\n get_(supported_key_sizes|(block|iv|key)_size|(algorithms|modes)_name))|\n get_(cipher_name|(block|iv|key)_size)|\n module_(close|self_test|is_block_(algorithm|algorithm_mode|mode)|open|\n get_(supported_key_sizes|algo_(block|key)_size)))|\n mdecrypt_generic\n)\\b",
3464
+ name: "support.function.mcrypt.php"
3465
+ },
3466
+ {
3467
+ match: "(?i)\\bmemcache_debug\\b",
3468
+ name: "support.function.memcache.php"
3469
+ },
3470
+ {
3471
+ match: "(?i)\\bmhash(_(count|keygen_s2k|get_(hash_name|block_size)))?\\b",
3472
+ name: "support.function.mhash.php"
3473
+ },
3474
+ {
3475
+ match: "(?i)\\b(log_(cmd_(insert|delete|update)|killcursor|write_batch|reply|getmore)|bson_(decode|encode))\\b",
3476
+ name: "support.function.mongo.php"
3477
+ },
3478
+ {
3479
+ match: "(?xi)\\b\nmysql_(\n stat|set_charset|select_db|num_(fields|rows)|connect|client_encoding|close|create_db|escape_string|\n thread_id|tablename|insert_id|info|data_seek|drop_db|db_(name|query)|unbuffered_query|pconnect|ping|\n errno|error|query|field_(seek|name|type|table|flags|len)|fetch_(object|field|lengths|assoc|array|row)|\n free_result|list_(tables|dbs|processes|fields)|affected_rows|result|real_escape_string|\n get_(client|host|proto|server)_info\n)\\b",
3480
+ name: "support.function.mysql.php"
3481
+ },
3482
+ {
3483
+ match: "(?xi)\\b\nmysqli_(\n ssl_set|store_result|stat|send_(query|long_data)|set_(charset|opt|local_infile_(default|handler))|\n stmt_(store_result|send_long_data|next_result|close|init|data_seek|prepare|execute|fetch|free_result|\n attr_(get|set)|result_metadata|reset|get_(result|warnings)|more_results|bind_(param|result))|\n select_db|slave_query|savepoint|next_result|change_user|character_set_name|connect|commit|\n client_encoding|close|thread_safe|init|options|(enable|disable)_(reads_from_master|rpl_parse)|\n dump_debug_info|debug|data_seek|use_result|ping|poll|param_count|prepare|escape_string|execute|\n embedded_server_(start|end)|kill|query|field_seek|free_result|autocommit|rollback|report|refresh|\n fetch(_(object|fields|field(_direct)?|assoc|all|array|row))?|rpl_(parse_enabled|probe|query_type)|\n release_savepoint|reap_async_query|real_(connect|escape_string|query)|more_results|multi_query|\n get_(charset|connection_stats|client_(stats|info|version)|cache_stats|warnings|links_stats|metadata)|\n master_query|bind_(param|result)|begin_transaction\n)\\b",
3484
+ name: "support.function.mysqli.php"
3485
+ },
3486
+ {
3487
+ match: "(?i)\\bmysqlnd_memcache_(set|get_config)\\b",
3488
+ name: "support.function.mysqlnd-memcache.php"
3489
+ },
3490
+ {
3491
+ 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",
3492
+ name: "support.function.mysqlnd-ms.php"
3493
+ },
3494
+ {
3495
+ 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",
3496
+ name: "support.function.mysqlnd-qc.php"
3497
+ },
3498
+ {
3499
+ match: "(?i)\\bmysqlnd_uh_(set_(statement|connection)_proxy|convert_to_mysqlnd)\\b",
3500
+ name: "support.function.mysqlnd-uh.php"
3501
+ },
3502
+ {
3503
+ match: "(?xi)\\b\n(\n syslog|socket_(set_(blocking|timeout)|get_status)|set(raw)?cookie|http_response_code|openlog|\n headers_(list|sent)|header(_(register_callback|remove))?|checkdnsrr|closelog|inet_(ntop|pton)|ip2long|\n openlog|dns_(check_record|get_(record|mx))|define_syslog_variables|(p)?fsockopen|long2ip|\n get(servby(name|port)|host(name|by(name(l)?|addr))|protoby(name|number)|mxrr)\n)\\b",
3504
+ name: "support.function.network.php"
3505
+ },
3506
+ {
3507
+ match: "(?i)\\bnsapi_(virtual|response_headers|request_headers)\\b",
3508
+ name: "support.function.nsapi.php"
3509
+ },
3510
+ {
3511
+ match: "(?xi)\\b\n(\n oci(statementtype|setprefetch|serverversion|savelob(file)?|numcols|new(collection|cursor|descriptor)|nlogon|\n column(scale|size|name|type(raw)?|isnull|precision)|coll(size|trim|assign(elem)?|append|getelem|max)|commit|\n closelob|cancel|internaldebug|definebyname|plogon|parse|error|execute|fetch(statement|into)?|\n free(statement|collection|cursor|desc)|write(temporarylob|lobtofile)|loadlob|log(on|off)|rowcount|rollback|\n result|bindbyname)|\n oci_(statement_type|set_(client_(info|identifier)|prefetch|edition|action|module_name)|server_version|\n num_(fields|rows)|new_(connect|collection|cursor|descriptor)|connect|commit|client_version|close|cancel|\n internal_debug|define_by_name|pconnect|password_change|parse|error|execute|bind_(array_)?by_name|\n field_(scale|size|name|type(_raw)?|is_null|precision)|fetch(_(object|assoc|all|array|row))?|\n free_(statement|descriptor)|lob_(copy|is_equal)|rollback|result|get_implicit_resultset)\n)\\b",
3512
+ name: "support.function.oci8.php"
3513
+ },
3514
+ {
3515
+ match: "(?i)\\bopcache_(compile_file|invalidate|reset|get_(status|configuration))\\b",
3516
+ name: "support.function.opcache.php"
3517
+ },
3518
+ {
3519
+ match: "(?xi)\\b\nopenssl_(\n sign|spki_(new|export(_challenge)?|verify)|seal|csr_(sign|new|export(_to_file)?|get_(subject|public_key))|\n cipher_iv_length|open|dh_compute_key|digest|decrypt|public_(decrypt|encrypt)|encrypt|error_string|\n pkcs12_(export(_to_file)?|read)|pkcs7_(sign|decrypt|encrypt|verify)|verify|free_key|random_pseudo_bytes|\n pkey_(new|export(_to_file)?|free|get_(details|public|private))|private_(decrypt|encrypt)|pbkdf2|\n get_((cipher|md)_methods|cert_locations|(public|private)key)|\n x509_(check_private_key|checkpurpose|parse|export(_to_file)?|fingerprint|free|read)\n)\\b",
3520
+ name: "support.function.openssl.php"
3521
+ },
3522
+ {
3523
+ match: "(?xi)\\b\n(\n output_(add_rewrite_var|reset_rewrite_vars)|flush|\n ob_(start|clean|implicit_flush|end_(clean|flush)|flush|list_handlers|gzhandler|\n get_(status|contents|clean|flush|length|level))\n)\\b",
3524
+ name: "support.function.output.php"
3525
+ },
3526
+ {
3527
+ match: "(?i)\\bpassword_(hash|needs_rehash|verify|get_info)\\b",
3528
+ name: "support.function.password.php"
3529
+ },
3530
+ {
3531
+ match: "(?xi)\\b\npcntl_(\n strerror|signal(_dispatch)?|sig(timedwait|procmask|waitinfo)|setpriority|errno|exec|fork|\n w(stopsig|termsig|if(stopped|signaled|exited))|wait(pid)?|alarm|getpriority|get_last_error\n)\\b",
3532
+ name: "support.function.pcntl.php"
3533
+ },
3534
+ {
3535
+ match: "(?xi)\\b\npg_(\n socket|send_(prepare|execute|query(_params)?)|set_(client_encoding|error_verbosity)|select|host|\n num_(fields|rows)|consume_input|connection_(status|reset|busy)|connect(_poll)?|convert|copy_(from|to)|\n client_encoding|close|cancel_query|tty|transaction_status|trace|insert|options|delete|dbname|untrace|\n unescape_bytea|update|pconnect|ping|port|put_line|parameter_status|prepare|version|query(_params)?|\n escape_(string|identifier|literal|bytea)|end_copy|execute|flush|free_result|last_(notice|error|oid)|\n field_(size|num|name|type(_oid)?|table|is_null|prtlen)|affected_rows|result_(status|seek|error(_field)?)|\n fetch_(object|assoc|all(_columns)?|array|row|result)|get_(notify|pid|result)|meta_data|\n lo_(seek|close|create|tell|truncate|import|open|unlink|export|write|read(_all)?)|\n)\\b",
3536
+ name: "support.function.pgsql.php"
3537
+ },
3538
+ {
3539
+ match: "(?i)\\b(virtual|getallheaders|apache_((get|set)env|note|child_terminate|lookup_uri|response_headers|reset_timeout|request_headers|get_(version|modules)))\\b",
3540
+ name: "support.function.php_apache.php"
3541
+ },
3542
+ {
3543
+ match: "(?i)\\bdom_import_simplexml\\b",
3544
+ name: "support.function.php_dom.php"
3545
+ },
3546
+ {
3547
+ match: "(?xi)\\b\nftp_(\n ssl_connect|systype|site|size|set_option|nlist|nb_(continue|f?(put|get))|ch(dir|mod)|connect|cdup|close|\n delete|put|pwd|pasv|exec|quit|f(put|get)|login|alloc|rename|raw(list)?|rmdir|get(_option)?|mdtm|mkdir\n)\\b",
3548
+ name: "support.function.php_ftp.php"
3549
+ },
3550
+ {
3551
+ match: "(?xi)\\b\nimap_(\n (create|delete|list|rename|scan)(mailbox)?|status|sort|subscribe|set_quota|set(flag_full|acl)|search|savebody|\n num_(recent|msg)|check|close|clearflag_full|thread|timeout|open|header(info)?|headers|append|alerts|reopen|\n 8bit|unsubscribe|undelete|utf7_(decode|encode)|utf8|uid|ping|errors|expunge|qprint|gc|\n fetch(structure|header|text|mime|body)|fetch_overview|lsub|list(scan|subscribed)|last_error|\n rfc822_(parse_(headers|adrlist)|write_address)|get(subscribed|acl|mailboxes)|get_quota(root)?|\n msgno|mime_header_decode|mail_(copy|compose|move)|mail|mailboxmsginfo|binary|body(struct)?|base64\n)\\b",
3552
+ name: "support.function.php_imap.php"
3553
+ },
3554
+ {
3555
+ match: "(?xi)\\b\nmssql_(\n select_db|num_(fields|rows)|next_result|connect|close|init|data_seek|pconnect|execute|query|\n field_(seek|name|type|length)|fetch_(object|field|assoc|array|row|batch)|free_(statement|result)|\n rows_affected|result|guid_string|get_last_message|min_(error|message)_severity|bind\n)\\b",
3556
+ name: "support.function.php_mssql.php"
3557
+ },
3558
+ {
3559
+ match: "(?xi)\\b\nodbc_(\n statistics|specialcolumns|setoption|num_(fields|rows)|next_result|connect|columns|columnprivileges|commit|\n cursor|close(_all)?|tables|tableprivileges|do|data_source|pconnect|primarykeys|procedures|procedurecolumns|\n prepare|error(msg)?|exec(ute)?|field_(scale|num|name|type|precision|len)|foreignkeys|free_result|\n fetch_(into|object|array|row)|longreadlen|autocommit|rollback|result(_all)?|gettypeinfo|binmode\n)\\b",
3560
+ name: "support.function.php_odbc.php"
3561
+ },
3562
+ {
3563
+ match: "(?i)\\bpreg_(split|quote|filter|last_error|replace(_callback)?|grep|match(_all)?)\\b",
3564
+ name: "support.function.php_pcre.php"
3565
+ },
3566
+ {
3567
+ match: "(?i)\\b(spl_(classes|object_hash|autoload(_(call|unregister|extensions|functions|register))?)|class_(implements|uses|parents)|iterator_(count|to_array|apply))\\b",
3568
+ name: "support.function.php_spl.php"
3569
+ },
3570
+ {
3571
+ match: "(?i)\\bzip_(close|open|entry_(name|compressionmethod|compressedsize|close|open|filesize|read)|read)\\b",
3572
+ name: "support.function.php_zip.php"
3573
+ },
3574
+ {
3575
+ match: "(?xi)\\b\nposix_(\n strerror|set(s|e?u|[ep]?g)id|ctermid|ttyname|times|isatty|initgroups|uname|errno|kill|access|\n get(sid|cwd|uid|pid|ppid|pwnam|pwuid|pgid|pgrp|euid|egid|login|rlimit|gid|grnam|groups|grgid)|\n get_last_error|mknod|mkfifo\n)\\b",
3576
+ name: "support.function.posix.php"
3577
+ },
3578
+ {
3579
+ match: "(?i)\\bset(thread|proc)title\\b",
3580
+ name: "support.function.proctitle.php"
3581
+ },
3582
+ {
3583
+ match: "(?xi)\\b\npspell_(\n store_replacement|suggest|save_wordlist|new(_(config|personal))?|check|clear_session|\n config_(save_repl|create|ignore|(data|dict)_dir|personal|runtogether|repl|mode)|add_to_(session|personal)\n)\\b",
3584
+ name: "support.function.pspell.php"
3585
+ },
3586
+ {
3587
+ 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",
3588
+ name: "support.function.readline.php"
3589
+ },
3590
+ {
3591
+ match: "(?i)\\brecode(_(string|file))?\\b",
3592
+ name: "support.function.recode.php"
3593
+ },
3594
+ {
3595
+ match: "(?i)\\brrd(c_disconnect|_(create|tune|info|update|error|version|first|fetch|last(update)?|restore|graph|xport))\\b",
3596
+ name: "support.function.rrd.php"
3597
+ },
3598
+ {
3599
+ match: "(?xi)\\b\n(\n shm_((get|has|remove|put)_var|detach|attach|remove)|sem_(acquire|release|remove|get)|ftok|\n msg_((get|remove|set|stat)_queue|send|queue_exists|receive)\n)\\b",
3600
+ name: "support.function.sem.php"
3601
+ },
3602
+ {
3603
+ match: "(?xi)\\b\nsession_(\n status|start|set_(save_handler|cookie_params)|save_path|name|commit|cache_(expire|limiter)|\n is_registered|id|destroy|decode|unset|unregister|encode|write_close|abort|reset|register(_shutdown)?|\n regenerate_id|get_cookie_params|module_name\n)\\b",
3604
+ name: "support.function.session.php"
3605
+ },
3606
+ {
3607
+ match: "(?i)\\bshmop_(size|close|open|delete|write|read)\\b",
3608
+ name: "support.function.shmop.php"
3609
+ },
3610
+ {
3611
+ match: "(?i)\\bsimplexml_(import_dom|load_(string|file))\\b",
3612
+ name: "support.function.simplexml.php"
3613
+ },
3614
+ {
3615
+ match: "(?xi)\\b\n(\n snmp(walk(oid)?|realwalk|get(next)?|set)|\n snmp_(set_(valueretrieval|quick_print|enum_print|oid_(numeric_print|output_format))|read_mib|\n get_(valueretrieval|quick_print))|\n snmp[23]_(set|walk|real_walk|get(next)?)\n)\\b",
3616
+ name: "support.function.snmp.php"
3617
+ },
3618
+ {
3619
+ match: "(?i)\\b(is_soap_fault|use_soap_error_handler)\\b",
3620
+ name: "support.function.soap.php"
3621
+ },
3622
+ {
3623
+ match: "(?xi)\\b\nsocket_(\n shutdown|strerror|send(to|msg)?|set_((non)?block|option)|select|connect|close|clear_error|bind|\n create(_(pair|listen))?|cmsg_space|import_stream|write|listen|last_error|accept|recv(from|msg)?|\n read|get(peer|sock)name|get_option\n)\\b",
3624
+ name: "support.function.sockets.php"
3625
+ },
3626
+ {
3627
+ match: "(?xi)\\b\nsqlite_(\n single_query|seek|has_(more|prev)|num_(fields|rows)|next|changes|column|current|close|\n create_(aggregate|function)|open|unbuffered_query|udf_(decode|encode)_binary|popen|prev|\n escape_string|error_string|exec|valid|key|query|field_name|factory|\n fetch_(string|single|column_types|object|all|array)|lib(encoding|version)|\n last_(insert_rowid|error)|array_query|rewind|busy_timeout\n)\\b",
3628
+ name: "support.function.sqlite.php"
3629
+ },
3630
+ {
3631
+ match: "(?xi)\\b\nsqlsrv_(\n send_stream_data|server_info|has_rows|num_(fields|rows)|next_result|connect|configure|commit|\n client_info|close|cancel|prepare|errors|execute|query|field_metadata|fetch(_(array|object))?|\n free_stmt|rows_affected|rollback|get_(config|field)|begin_transaction\n)\\b",
3632
+ name: "support.function.sqlsrv.php"
3633
+ },
3634
+ {
3635
+ match: "(?xi)\\b\nstats_(\n harmonic_mean|covariance|standard_deviation|skew|\n cdf_(noncentral_(chisquare|f)|negative_binomial|chisquare|cauchy|t|uniform|poisson|exponential|f|weibull|\n logistic|laplace|gamma|binomial|beta)|\n stat_(noncentral_t|correlation|innerproduct|independent_t|powersum|percentile|paired_t|gennch|binomial_coef)|\n dens_(normal|negative_binomial|chisquare|cauchy|t|pmf_(hypergeometric|poisson|binomial)|exponential|f|\n weibull|logistic|laplace|gamma|beta)|\n den_uniform|variance|kurtosis|absolute_deviation|\n rand_(setall|phrase_to_seeds|ranf|get_seeds|\n gen_(noncentral_[ft]|noncenral_chisquare|normal|chisquare|t|int|\n i(uniform|poisson|binomial(_negative)?)|exponential|f(uniform)?|gamma|beta))\n)\\b",
3636
+ name: "support.function.stats.php"
3637
+ },
3638
+ {
3639
+ match: "(?xi)\\b\n(\n set_socket_blocking|\n stream_(socket_(shutdown|sendto|server|client|pair|enable_crypto|accept|recvfrom|get_name)|\n set_(chunk_size|timeout|(read|write)_buffer|blocking)|select|notification_callback|supports_lock|\n context_(set_(option|default|params)|create|get_(options|default|params))|copy_to_stream|is_local|\n encoding|filter_(append|prepend|register|remove)|wrapper_((un)?register|restore)|\n resolve_include_path|register_wrapper|get_(contents|transports|filters|wrappers|line|meta_data)|\n bucket_(new|prepend|append|make_writeable)\n )\n)\\b",
3640
+ name: "support.function.streamsfuncs.php"
3641
+ },
3642
+ {
3643
+ match: "(?xi)\\b\n(\n money_format|md5(_file)?|metaphone|bin2hex|sscanf|sha1(_file)?|\n 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)|\n str_(getcsv|ireplace|pad|repeat|replace|rot13|shuffle|split|word_count)|\n strip(c?slashes|os)|strip_tags|similar_text|soundex|substr(_(count|compare|replace))?|setlocale|\n html(specialchars(_decode)?|entities)|html_entity_decode|hex2bin|hebrev(c)?|number_format|nl2br|nl_langinfo|\n chop|chunk_split|chr|convert_(cyr_string|uu(decode|encode))|count_chars|crypt|crc32|trim|implode|ord|\n uc(first|words)|join|parse_str|print(f)?|echo|explode|v?[fs]?printf|quoted_printable_(decode|encode)|\n quotemeta|wordwrap|lcfirst|[lr]trim|localeconv|levenshtein|addc?slashes|get_html_translation_table\n)\\b",
3644
+ name: "support.function.string.php"
3645
+ },
3646
+ {
3647
+ match: "(?xi)\\b\nsybase_(\n set_message_handler|select_db|num_(fields|rows)|connect|close|deadlock_retry_count|data_seek|\n unbuffered_query|pconnect|query|field_seek|fetch_(object|field|assoc|array|row)|free_result|\n affected_rows|result|get_last_message|min_(client|error|message|server)_severity\n)\\b",
3648
+ name: "support.function.sybase.php"
3649
+ },
3650
+ {
3651
+ match: "(?i)\\b(taint|is_tainted|untaint)\\b",
3652
+ name: "support.function.taint.php"
3653
+ },
3654
+ {
3655
+ match: "(?xi)\\b\n(\n tidy_((get|set)opt|set_encoding|save_config|config_count|clean_repair|is_(xhtml|xml)|diagnose|\n (access|error|warning)_count|load_config|reset_config|(parse|repair)_(string|file)|\n get_(status|html(_ver)?|head|config|output|opt_doc|root|release|body))|\n ob_tidyhandler\n)\\b",
3656
+ name: "support.function.tidy.php"
3657
+ },
3658
+ {
3659
+ match: "(?i)\\btoken_(name|get_all)\\b",
3660
+ name: "support.function.tokenizer.php"
3661
+ },
3662
+ {
3663
+ match: "(?xi)\\b\ntrader_(\n stoch(f|r|rsi)?|stddev|sin(h)?|sum|sub|set_(compat|unstable_period)|sqrt|sar(ext)?|sma|\n ht_(sine|trend(line|mode)|dc(period|phase)|phasor)|natr|cci|cos(h)?|correl|\n cdl(shootingstar|shortline|sticksandwich|stalledpattern|spinningtop|separatinglines|\n hikkake(mod)?|highwave|homingpigeon|hangingman|harami(cross)?|hammer|concealbabyswall|\n counterattack|closingmarubozu|thrusting|tasukigap|takuri|tristar|inneck|invertedhammer|\n identical3crows|2crows|onneck|doji(star)?|darkcloudcover|dragonflydoji|unique3river|\n upsidegap2crows|3(starsinsouth|inside|outside|whitesoldiers|linestrike|blackcrows)|\n piercing|engulfing|evening(doji)?star|kicking(bylength)?|longline|longleggeddoji|\n ladderbottom|advanceblock|abandonedbaby|risefall3methods|rickshawman|gapsidesidewhite|\n gravestonedoji|xsidegap3methods|morning(doji)?star|mathold|matchinglow|marubozu|\n belthold|breakaway)|\n ceil|cmo|tsf|typprice|t3|tema|tan(h)?|trix|trima|trange|obv|div|dema|dx|ultosc|ppo|\n plus_d[im]|errno|exp|ema|var|kama|floor|wclprice|willr|wma|ln|log10|bop|beta|bbands|\n linearreg(_(slope|intercept|angle))?|asin|acos|atan|atr|adosc|ad|add|adx(r)?|apo|avgprice|\n aroon(osc)?|rsi|roc|rocp|rocr(100)?|get_(compat|unstable_period)|min(index)?|minus_d[im]|\n minmax(index)?|mid(point|price)|mom|mult|medprice|mfi|macd(ext|fix)?|mavp|max(index)?|ma(ma)?\n)\\b",
3664
+ name: "support.function.trader.php"
3665
+ },
3666
+ {
3667
+ match: "(?i)\\buopz_(copy|compose|implement|overload|delete|undefine|extend|function|flags|restore|rename|redefine|backup)\\b",
3668
+ name: "support.function.uopz.php"
3669
+ },
3670
+ {
3671
+ match: "(?i)\\b(http_build_query|(raw)?url(decode|encode)|parse_url|get_(headers|meta_tags)|base64_(decode|encode))\\b",
3672
+ name: "support.function.url.php"
3673
+ },
3674
+ {
3675
+ match: "(?xi)\\b\n(\n strval|settype|serialize|(bool|double|float)val|debug_zval_dump|intval|import_request_variables|isset|\n is_(scalar|string|null|numeric|callable|int(eger)?|object|double|float|long|array|resource|real|bool)|\n unset|unserialize|print_r|empty|var_(dump|export)|gettype|get_(defined_vars|resource_type)\n)\\b",
3676
+ name: "support.function.var.php"
3677
+ },
3678
+ {
3679
+ match: "(?i)\\bwddx_(serialize_(value|vars)|deserialize|packet_(start|end)|add_vars)\\b",
3680
+ name: "support.function.wddx.php"
3681
+ },
3682
+ {
3683
+ match: "(?i)\\bxhprof_(sample_)?(disable|enable)\\b",
3684
+ name: "support.function.xhprof.php"
3685
+ },
3686
+ {
3687
+ match: "(?xi)\n\\b\n(\n utf8_(decode|encode)|\n xml_(set_((notation|(end|start)_namespace|unparsed_entity)_decl_handler|\n (character_data|default|element|external_entity_ref|processing_instruction)_handler|object)|\n parse(_into_struct)?|parser_((get|set)_option|create(_ns)?|free)|error_string|\n get_(current_((column|line)_number|byte_index)|error_code))\n)\\b",
3688
+ name: "support.function.xml.php"
3689
+ },
3690
+ {
3691
+ match: "(?xi)\\b\nxmlrpc_(\n server_(call_method|create|destroy|add_introspection_data|register_(introspection_callback|method))|\n is_fault|decode(_request)?|parse_method_descriptions|encode(_request)?|(get|set)_type\n)\\b",
3692
+ name: "support.function.xmlrpc.php"
3693
+ },
3694
+ {
3695
+ match: "(?xi)\\b\nxmlwriter_(\n (end|start|write)_(comment|cdata|dtd(_(attlist|entity|element))?|document|pi|attribute|element)|\n (start|write)_(attribute|element)_ns|write_raw|set_indent(_string)?|text|output_memory|open_(memory|uri)|\n full_end_element|flush|\n)\\b",
3696
+ name: "support.function.xmlwriter.php"
3697
+ },
3698
+ {
3699
+ match: "(?xi)\\b\n(\n zlib_(decode|encode|get_coding_type)|readgzfile|\n gz(seek|compress|close|tell|inflate|open|decode|deflate|uncompress|puts|passthru|encode|eof|file|\n write|rewind|read|getc|getss?)\n)\\b",
3700
+ name: "support.function.zlib.php"
3701
+ },
3702
+ {
3703
+ match: "(?i)\\bis_int(eger)?\\b",
3704
+ name: "support.function.alias.php"
3705
+ }
3706
+ ]
3707
+ },
3708
+ switch_statement: {
3709
+ patterns: [
3710
+ {
3711
+ match: "\\s+(?=switch\\b)"
3712
+ },
3713
+ {
3714
+ begin: "\\bswitch\\b(?!\\s*\\(.*\\)\\s*:)",
3715
+ beginCaptures: {
3716
+ "0": {
3717
+ name: "keyword.control.switch.php"
3718
+ }
3719
+ },
3720
+ end: "}|(?=\\?>)",
3721
+ endCaptures: {
3722
+ "0": {
3723
+ name: "punctuation.definition.section.switch-block.end.bracket.curly.php"
3724
+ }
3725
+ },
3726
+ name: "meta.switch-statement.php",
3727
+ patterns: [
3728
+ {
3729
+ begin: "\\(",
3730
+ beginCaptures: {
3731
+ "0": {
3732
+ name: "punctuation.definition.switch-expression.begin.bracket.round.php"
3733
+ }
3734
+ },
3735
+ end: "\\)|(?=\\?>)",
3736
+ endCaptures: {
3737
+ "0": {
3738
+ name: "punctuation.definition.switch-expression.end.bracket.round.php"
3739
+ }
3740
+ },
3741
+ patterns: [
3742
+ {
3743
+ include: "$self"
3744
+ }
3745
+ ]
3746
+ },
3747
+ {
3748
+ begin: "{",
3749
+ beginCaptures: {
3750
+ "0": {
3751
+ name: "punctuation.definition.section.switch-block.begin.bracket.curly.php"
3752
+ }
3753
+ },
3754
+ end: "(?=}|\\?>)",
3755
+ patterns: [
3756
+ {
3757
+ include: "$self"
3758
+ }
3759
+ ]
3760
+ }
3761
+ ]
3762
+ }
3763
+ ]
3764
+ },
3765
+ match_statement: {
3766
+ patterns: [
3767
+ {
3768
+ match: "\\s+(?=match\\b)"
3769
+ },
3770
+ {
3771
+ begin: "\\bmatch\\b",
3772
+ beginCaptures: {
3773
+ "0": {
3774
+ name: "keyword.control.match.php"
3775
+ }
3776
+ },
3777
+ end: "}|(?=\\?>)",
3778
+ endCaptures: {
3779
+ "0": {
3780
+ name: "punctuation.definition.section.match-block.end.bracket.curly.php"
3781
+ }
3782
+ },
3783
+ name: "meta.match-statement.php",
3784
+ patterns: [
3785
+ {
3786
+ begin: "\\(",
3787
+ beginCaptures: {
3788
+ "0": {
3789
+ name: "punctuation.definition.match-expression.begin.bracket.round.php"
3790
+ }
3791
+ },
3792
+ end: "\\)|(?=\\?>)",
3793
+ endCaptures: {
3794
+ "0": {
3795
+ name: "punctuation.definition.match-expression.end.bracket.round.php"
3796
+ }
3797
+ },
3798
+ patterns: [
3799
+ {
3800
+ include: "$self"
3801
+ }
3802
+ ]
3803
+ },
3804
+ {
3805
+ begin: "{",
3806
+ beginCaptures: {
3807
+ "0": {
3808
+ name: "punctuation.definition.section.match-block.begin.bracket.curly.php"
3809
+ }
3810
+ },
3811
+ end: "(?=}|\\?>)",
3812
+ patterns: [
3813
+ {
3814
+ match: "=>",
3815
+ name: "keyword.definition.arrow.php"
3816
+ },
3817
+ {
3818
+ include: "$self"
3819
+ }
3820
+ ]
3821
+ }
3822
+ ]
3823
+ }
3824
+ ]
3825
+ },
3826
+ "use-inner": {
3827
+ patterns: [
3828
+ {
3829
+ include: "#comments"
3830
+ },
3831
+ {
3832
+ begin: "(?i)\\b(as)\\s+",
3833
+ beginCaptures: {
3834
+ "1": {
3835
+ name: "keyword.other.use-as.php"
3836
+ }
3837
+ },
3838
+ end: "(?i)[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*",
3839
+ endCaptures: {
3840
+ "0": {
3841
+ name: "entity.other.alias.php"
3842
+ }
3843
+ }
3844
+ },
3845
+ {
3846
+ include: "#class-name"
3847
+ },
3848
+ {
3849
+ match: ",",
3850
+ name: "punctuation.separator.delimiter.php"
3851
+ }
3852
+ ]
3853
+ },
3854
+ var_basic: {
3855
+ patterns: [
3856
+ {
3857
+ match: "(?i)(\\$+)[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*",
3858
+ name: "variable.other.php",
3859
+ captures: {
3860
+ "1": {
3861
+ name: "punctuation.definition.variable.php"
3862
+ }
3863
+ }
3864
+ }
3865
+ ]
3866
+ },
3867
+ var_global: {
3868
+ captures: {
3869
+ "1": {
3870
+ name: "punctuation.definition.variable.php"
3871
+ }
3872
+ },
3873
+ match: "(\\$)((_(COOKIE|FILES|GET|POST|REQUEST))|arg(v|c))\\b",
3874
+ name: "variable.other.global.php"
3875
+ },
3876
+ var_global_safer: {
3877
+ captures: {
3878
+ "1": {
3879
+ name: "punctuation.definition.variable.php"
3880
+ }
3881
+ },
3882
+ match: "(\\$)((GLOBALS|_(ENV|SERVER|SESSION)))",
3883
+ name: "variable.other.global.safer.php"
3884
+ },
3885
+ var_language: {
3886
+ match: "(\\$)this\\b",
3887
+ name: "variable.language.this.php",
3888
+ captures: {
3889
+ "1": {
3890
+ name: "punctuation.definition.variable.php"
3891
+ }
3892
+ }
3893
+ },
3894
+ "variable-name": {
3895
+ patterns: [
3896
+ {
3897
+ include: "#var_global"
3898
+ },
3899
+ {
3900
+ include: "#var_global_safer"
3901
+ },
3902
+ {
3903
+ captures: {
3904
+ "1": {
3905
+ name: "variable.other.php"
3906
+ },
3907
+ "2": {
3908
+ name: "punctuation.definition.variable.php"
3909
+ },
3910
+ "4": {
3911
+ name: "keyword.operator.class.php"
3912
+ },
3913
+ "5": {
3914
+ name: "variable.other.property.php"
3915
+ },
3916
+ "6": {
3917
+ name: "punctuation.section.array.begin.php"
3918
+ },
3919
+ "7": {
3920
+ name: "constant.numeric.index.php"
3921
+ },
3922
+ "8": {
3923
+ name: "variable.other.index.php"
3924
+ },
3925
+ "9": {
3926
+ name: "punctuation.definition.variable.php"
3927
+ },
3928
+ "10": {
3929
+ name: "string.unquoted.index.php"
3930
+ },
3931
+ "11": {
3932
+ name: "punctuation.section.array.end.php"
3933
+ }
3934
+ },
3935
+ match: "(?xi)\n((\\$)(?<name>[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*))\\s*\n(?:\n (\\??->)\\s*(\\g<name>)\n |\n (\\[)(?:(\\d+)|((\\$)\\g<name>)|([a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*))(\\])\n)?"
3936
+ },
3937
+ {
3938
+ captures: {
3939
+ "1": {
3940
+ name: "variable.other.php"
3941
+ },
3942
+ "2": {
3943
+ name: "punctuation.definition.variable.php"
3944
+ },
3945
+ "4": {
3946
+ name: "punctuation.definition.variable.php"
3947
+ }
3948
+ },
3949
+ match: "(?i)((\\${)(?<name>[a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)(}))"
3950
+ }
3951
+ ]
3952
+ },
3953
+ variables: {
3954
+ patterns: [
3955
+ {
3956
+ include: "#var_language"
3957
+ },
3958
+ {
3959
+ include: "#var_global"
3960
+ },
3961
+ {
3962
+ include: "#var_global_safer"
3963
+ },
3964
+ {
3965
+ include: "#var_basic"
3966
+ },
3967
+ {
3968
+ begin: "\\${(?=.*?})",
3969
+ beginCaptures: {
3970
+ "0": {
3971
+ name: "punctuation.definition.variable.php"
3972
+ }
3973
+ },
3974
+ end: "}",
3975
+ endCaptures: {
3976
+ "0": {
3977
+ name: "punctuation.definition.variable.php"
3978
+ }
3979
+ },
3980
+ patterns: [
3981
+ {
3982
+ include: "$self"
3983
+ }
3984
+ ]
3985
+ }
3986
+ ]
3987
+ },
3988
+ ternary_shorthand: {
3989
+ match: "\\?:",
3990
+ name: "keyword.operator.ternary.php"
3991
+ },
3992
+ ternary_expression: {
3993
+ begin: "\\?",
3994
+ beginCaptures: {
3995
+ "0": {
3996
+ name: "keyword.operator.ternary.php"
3997
+ }
3998
+ },
3999
+ end: "(?<!:):(?!:)",
4000
+ endCaptures: {
4001
+ "0": {
4002
+ name: "keyword.operator.ternary.php"
4003
+ }
4004
+ },
4005
+ patterns: [
4006
+ {
4007
+ match: "(?i)^\\s*([a-z_\\x{7f}-\\x{10ffff}][a-z0-9_\\x{7f}-\\x{10ffff}]*)\\s*(?=:(?!:))",
4008
+ captures: {
4009
+ "1": {
4010
+ patterns: [
4011
+ {
4012
+ include: "$self"
4013
+ }
4014
+ ]
4015
+ }
4016
+ }
4017
+ },
4018
+ {
4019
+ include: "$self"
4020
+ }
4021
+ ]
4022
+ },
4023
+ null_coalescing: {
4024
+ match: "\\?\\?",
4025
+ name: "keyword.operator.null-coalescing.php"
4026
+ }
4027
+ };
4028
+ var php_tmLanguage = {
4029
+ information_for_contributors: information_for_contributors,
4030
+ version: version,
4031
+ scopeName: scopeName,
4032
+ patterns: patterns,
4033
+ repository: repository
4034
+ };
4035
+
4036
+ export { php_tmLanguage as default, information_for_contributors, patterns, repository, scopeName, version };