@codingame/monaco-vscode-api 1.76.9 → 1.78.0-next.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +87 -49
- package/dist/Bibtex.tmLanguage.js +2 -0
- package/dist/Handlebars.tmLanguage.js +2 -0
- package/dist/JSON.tmLanguage.js +2 -0
- package/dist/JSONC.tmLanguage.js +2 -0
- package/dist/JavaScript.tmLanguage.js +2 -0
- package/dist/JavaScriptReact.tmLanguage.js +2 -0
- package/dist/LaTeX.tmLanguage.js +2 -0
- package/dist/MagicPython.tmLanguage.js +2 -0
- package/dist/MagicRegExp.tmLanguage.js +2 -0
- package/dist/Red-color-theme.js +2 -0
- package/dist/Regular Expressions (JavaScript).js +2 -0
- package/dist/TeX.tmLanguage.js +2 -0
- package/dist/TypeScript.tmLanguage.js +2 -0
- package/dist/TypeScriptReact.tmLanguage.js +2 -0
- package/dist/_.contribution.js +1 -1
- package/dist/abyss-color-theme.js +2 -0
- package/dist/api.js +1 -3
- package/dist/api2.js +421 -18091
- package/dist/asp-vb-net.tmlanguage.js +2 -0
- package/dist/assets/diffLineDeleted.mp3 +0 -0
- package/dist/assets/diffLineInserted.mp3 +0 -0
- package/dist/assets/diffLineModified.mp3 +0 -0
- package/dist/audioCue.js +108 -478
- package/dist/bat.js +9 -0
- package/dist/batchfile.js +2 -0
- package/dist/batchfile.tmLanguage.js +2 -0
- package/dist/button.js +35 -8
- package/dist/c.js +2 -0
- package/dist/c.tmLanguage.js +2 -0
- package/dist/clojure.js +8 -0
- package/dist/clojure.tmLanguage.js +2 -0
- package/dist/coffeescript.js +9 -0
- package/dist/coffeescript.tmLanguage.js +2 -0
- package/dist/coffeescript2.js +2 -0
- package/dist/configuration.d.ts +269 -4
- package/dist/configuration.js +4326 -328
- package/dist/configuration2.js +14 -324
- package/dist/cpp-grammar-bailout.tmLanguage.js +2 -0
- package/dist/cpp.embedded.macro.tmLanguage.js +2 -0
- package/dist/cpp.js +16 -0
- package/dist/cpp.tmLanguage.js +2 -0
- package/dist/cpp2.js +2 -0
- package/dist/csharp.js +9 -0
- package/dist/csharp.tmLanguage.js +2 -0
- package/dist/csharp2.js +2 -0
- package/dist/cshtml.tmLanguage.js +2 -0
- package/dist/css.js +8 -0
- package/dist/css.tmLanguage.js +2 -0
- package/dist/cuda-cpp.tmLanguage.js +2 -0
- package/dist/dark_plus.js +2 -0
- package/dist/dark_plus_experimental.js +2 -0
- package/dist/dark_vs.js +2 -0
- package/dist/dart.js +8 -0
- package/dist/dart.tmLanguage.js +2 -0
- package/dist/debug.js +12113 -12209
- package/dist/default-extensions/bat.js +12 -0
- package/dist/default-extensions/clojure.js +11 -0
- package/dist/default-extensions/coffeescript.js +12 -0
- package/dist/default-extensions/cpp.js +19 -0
- package/dist/default-extensions/csharp.js +12 -0
- package/dist/default-extensions/css.js +11 -0
- package/dist/default-extensions/dart.js +11 -0
- package/dist/default-extensions/diff.js +11 -0
- package/dist/default-extensions/docker.js +11 -0
- package/dist/default-extensions/fsharp.js +12 -0
- package/dist/default-extensions/go.js +11 -0
- package/dist/default-extensions/groovy.js +12 -0
- package/dist/default-extensions/handlebars.js +11 -0
- package/dist/default-extensions/hlsl.js +11 -0
- package/dist/default-extensions/html.js +13 -0
- package/dist/default-extensions/ini.js +13 -0
- package/dist/default-extensions/java.js +12 -0
- package/dist/default-extensions/javascript.js +17 -0
- package/dist/default-extensions/json.js +13 -0
- package/dist/default-extensions/julia.js +11 -0
- package/dist/default-extensions/latex.js +14 -0
- package/dist/default-extensions/less.js +11 -0
- package/dist/default-extensions/log.js +10 -0
- package/dist/default-extensions/lua.js +11 -0
- package/dist/default-extensions/make.js +11 -0
- package/dist/default-extensions/markdown-basics.js +12 -0
- package/dist/default-extensions/objective-c.js +13 -0
- package/dist/default-extensions/perl.js +13 -0
- package/dist/default-extensions/php.js +13 -0
- package/dist/default-extensions/powershell.js +11 -0
- package/dist/default-extensions/pug.js +11 -0
- package/dist/default-extensions/python.js +12 -0
- package/dist/default-extensions/r.js +11 -0
- package/dist/default-extensions/razor.js +11 -0
- package/dist/default-extensions/ruby.js +11 -0
- package/dist/default-extensions/rust.js +11 -0
- package/dist/default-extensions/scss.js +12 -0
- package/dist/default-extensions/shaderlab.js +11 -0
- package/dist/default-extensions/shellscript.js +11 -0
- package/dist/default-extensions/sql.js +11 -0
- package/dist/default-extensions/swift.js +12 -0
- package/dist/default-extensions/theme-abyss.js +10 -0
- package/dist/default-extensions/theme-defaults.js +18 -0
- package/dist/default-extensions/theme-kimbie-dark.js +10 -0
- package/dist/default-extensions/theme-monokai-dimmed.js +10 -0
- package/dist/default-extensions/theme-monokai.js +10 -0
- package/dist/default-extensions/theme-quietlight.js +10 -0
- package/dist/default-extensions/theme-red.js +10 -0
- package/dist/default-extensions/theme-seti.js +10 -0
- package/dist/default-extensions/theme-solarized-dark.js +10 -0
- package/dist/default-extensions/theme-solarized-light.js +10 -0
- package/dist/default-extensions/theme-tomorrow-night-blue.js +10 -0
- package/dist/default-extensions/typescript-basics.js +17 -0
- package/dist/default-extensions/vb.js +12 -0
- package/dist/default-extensions/xml.js +13 -0
- package/dist/default-extensions/yaml.js +13 -0
- package/dist/dialogs.js +11 -216
- package/dist/diff.js +8 -0
- package/dist/diff.tmLanguage.js +2 -0
- package/dist/dimmed-monokai-color-theme.js +2 -0
- package/dist/docker.js +8 -0
- package/dist/docker.tmLanguage.js +2 -0
- package/dist/dom.js +101 -0
- package/dist/extensionManagement.js +4 -0
- package/dist/extensions.d.ts +368 -23
- package/dist/extensions.js +4 -85
- package/dist/extensionsRegistry.js +63 -64
- package/dist/files.d.ts +845 -0
- package/dist/files.js +1805 -1151
- package/dist/files2.js +32 -0
- package/dist/fsharp.js +9 -0
- package/dist/fsharp.tmLanguage.js +2 -0
- package/dist/fsharp2.js +2 -0
- package/dist/go.js +8 -0
- package/dist/go.tmLanguage.js +2 -0
- package/dist/groovy.js +9 -0
- package/dist/groovy.tmLanguage.js +2 -0
- package/dist/groovy2.js +2 -0
- package/dist/handlebars.js +8 -0
- package/dist/hc_black.js +2 -0
- package/dist/hc_light.js +2 -0
- package/dist/hlsl.js +8 -0
- package/dist/hlsl.tmLanguage.js +2 -0
- package/dist/html-derivative.tmLanguage.js +2 -0
- package/dist/html.js +10 -0
- package/dist/html.tmLanguage.js +2 -0
- package/dist/html.tmLanguage2.js +2 -0
- package/dist/html2.js +2 -0
- package/dist/ini.js +10 -0
- package/dist/ini.language-configuration.js +2 -0
- package/dist/ini.tmLanguage.js +2 -0
- package/dist/injection.js +1 -1
- package/dist/java.js +9 -0
- package/dist/java.tmLanguage.js +2 -0
- package/dist/java2.js +2 -0
- package/dist/javascript-language-configuration.js +2 -0
- package/dist/javascript.js +14 -0
- package/dist/javascript2.js +2 -0
- package/dist/jsdoc.js.injection.tmLanguage.js +2 -0
- package/dist/jsdoc.ts.injection.tmLanguage.js +2 -0
- package/dist/json.js +10 -0
- package/dist/jsonErrorMessages.js +1 -1
- package/dist/julia.js +8 -0
- package/dist/julia.tmLanguage.js +2 -0
- package/dist/keybindings.d.ts +1 -10
- package/dist/keybindings.js +291 -353
- package/dist/kimbie-dark-color-theme.js +2 -0
- package/dist/language-configuration.js +2 -0
- package/dist/language-configuration10.js +2 -0
- package/dist/language-configuration11.js +2 -0
- package/dist/language-configuration12.js +2 -0
- package/dist/language-configuration13.js +2 -0
- package/dist/language-configuration14.js +2 -0
- package/dist/language-configuration15.js +2 -0
- package/dist/language-configuration16.js +2 -0
- package/dist/language-configuration17.js +2 -0
- package/dist/language-configuration18.js +2 -0
- package/dist/language-configuration19.js +2 -0
- package/dist/language-configuration2.js +2 -0
- package/dist/language-configuration20.js +2 -0
- package/dist/language-configuration21.js +2 -0
- package/dist/language-configuration22.js +2 -0
- package/dist/language-configuration23.js +2 -0
- package/dist/language-configuration24.js +2 -0
- package/dist/language-configuration25.js +2 -0
- package/dist/language-configuration26.js +2 -0
- package/dist/language-configuration27.js +2 -0
- package/dist/language-configuration28.js +2 -0
- package/dist/language-configuration29.js +2 -0
- package/dist/language-configuration3.js +2 -0
- package/dist/language-configuration30.js +2 -0
- package/dist/language-configuration31.js +2 -0
- package/dist/language-configuration32.js +2 -0
- package/dist/language-configuration33.js +2 -0
- package/dist/language-configuration34.js +2 -0
- package/dist/language-configuration35.js +2 -0
- package/dist/language-configuration36.js +2 -0
- package/dist/language-configuration37.js +2 -0
- package/dist/language-configuration38.js +2 -0
- package/dist/language-configuration39.js +2 -0
- package/dist/language-configuration4.js +2 -0
- package/dist/language-configuration5.js +2 -0
- package/dist/language-configuration6.js +2 -0
- package/dist/language-configuration7.js +2 -0
- package/dist/language-configuration8.js +2 -0
- package/dist/language-configuration9.js +2 -0
- package/dist/languageService.js +5 -6
- package/dist/languages.d.ts +66 -1
- package/dist/languages.js +924 -5
- package/dist/latex.js +11 -0
- package/dist/layout.contribution.darwin.js +1 -1
- package/dist/layout.contribution.linux.js +1 -1
- package/dist/layout.contribution.win.js +1 -1
- package/dist/less.js +8 -0
- package/dist/less.tmLanguage.js +2 -0
- package/dist/light_plus.js +2 -0
- package/dist/light_plus_experimental.js +2 -0
- package/dist/light_vs.js +2 -0
- package/dist/log.js +7 -0
- package/dist/log.tmLanguage.js +2 -0
- package/dist/lua.js +8 -0
- package/dist/lua.tmLanguage.js +2 -0
- package/dist/make.js +8 -0
- package/dist/make.tmLanguage.js +2 -0
- package/dist/markdown-basics.js +9 -0
- package/dist/markdown-latex-combined.tmLanguage.js +2 -0
- package/dist/markdown.js +2 -0
- package/dist/markdown.tmLanguage.js +2 -0
- package/dist/memento.js +91 -0
- package/dist/modelEditor.d.ts +1480 -138
- package/dist/modelEditor.js +8699 -326
- package/dist/monaco.d.ts +987 -15
- package/dist/monaco.js +40 -10
- package/dist/monokai-color-theme.js +2 -0
- package/dist/notifications.js +84 -64
- package/dist/objective-c.js +10 -0
- package/dist/objective-c.tmLanguage.js +2 -0
- package/dist/objective-c__.tmLanguage.js +2 -0
- package/dist/perl.js +10 -0
- package/dist/perl.language-configuration.js +2 -0
- package/dist/perl.tmLanguage.js +2 -0
- package/dist/perl6.language-configuration.js +2 -0
- package/dist/perl6.tmLanguage.js +2 -0
- package/dist/php.js +10 -0
- package/dist/php.tmLanguage.js +2 -0
- package/dist/php2.js +2 -0
- package/dist/platform.js +105 -0
- package/dist/platform.tmLanguage.js +2 -0
- package/dist/polyfill.js +52064 -11100
- package/dist/powershell.js +8 -0
- package/dist/powershell.tmLanguage.js +2 -0
- package/dist/preferences.js +2532 -0
- package/dist/properties.language-configuration.js +2 -0
- package/dist/pug.js +8 -0
- package/dist/pug.tmLanguage.js +2 -0
- package/dist/python.js +9 -0
- package/dist/quietlight-color-theme.js +2 -0
- package/dist/r.js +8 -0
- package/dist/r.tmLanguage.js +2 -0
- package/dist/razor.js +8 -0
- package/dist/rollup-vsix-plugin.d.ts +8 -0
- package/dist/rollup-vsix-plugin.js +104 -0
- package/dist/ruby.js +8 -0
- package/dist/ruby.tmLanguage.js +2 -0
- package/dist/rust.js +8 -0
- package/dist/rust.tmLanguage.js +2 -0
- package/dist/sassdoc.tmLanguage.js +2 -0
- package/dist/scss.js +9 -0
- package/dist/scss.tmLanguage.js +2 -0
- package/dist/services.d.ts +12988 -12840
- package/dist/services.js +1 -1
- package/dist/shaderlab.js +8 -0
- package/dist/shaderlab.tmLanguage.js +2 -0
- package/dist/shell-unix-bash.tmLanguage.js +2 -0
- package/dist/shellscript.js +8 -0
- package/dist/snippets.js +6 -11
- package/dist/snippetsService.js +7 -10
- package/dist/solarized-dark-color-theme.js +2 -0
- package/dist/solarized-light-color-theme.js +2 -0
- package/dist/sql.js +8 -0
- package/dist/sql.tmLanguage.js +2 -0
- package/dist/swift.js +9 -0
- package/dist/swift.tmLanguage.js +2 -0
- package/dist/swift2.js +2 -0
- package/dist/tags-language-configuration.js +2 -0
- package/dist/textmate.d.ts +0 -264
- package/dist/textmate.js +402 -66
- package/dist/theme-abyss.js +7 -0
- package/dist/theme-defaults.js +15 -0
- package/dist/theme-kimbie-dark.js +7 -0
- package/dist/theme-monokai-dimmed.js +7 -0
- package/dist/theme-monokai.js +7 -0
- package/dist/theme-quietlight.js +7 -0
- package/dist/theme-red.js +7 -0
- package/dist/theme-seti.js +7 -0
- package/dist/theme-solarized-dark.js +7 -0
- package/dist/theme-solarized-light.js +7 -0
- package/dist/theme-tomorrow-night-blue.js +7 -0
- package/dist/theme.js +5 -11
- package/dist/{contextkeys.js → theme2.js} +165 -143
- package/dist/tokenClassificationRegistry.js +46 -2
- package/dist/tomorrow-night-blue-color-theme.js +2 -0
- package/dist/typescript-basics.js +14 -0
- package/dist/typescript.js +2 -0
- package/dist/unboundCommands.js +41 -0
- package/dist/utils.js +345 -0
- package/dist/vb.js +9 -0
- package/dist/vb2.js +2 -0
- package/dist/vs-seti-icon-theme.js +2 -0
- package/dist/vs_minimal-icon-theme.js +2 -0
- package/dist/xml.js +10 -0
- package/dist/xml.language-configuration.js +2 -0
- package/dist/xml.tmLanguage.js +2 -0
- package/dist/xsl.language-configuration.js +2 -0
- package/dist/xsl.tmLanguage.js +2 -0
- package/dist/yaml.js +10 -0
- package/dist/yaml.tmLanguage.js +2 -0
- package/package.json +50 -33
- package/dist/async.js +0 -301
- package/dist/cancellation.js +0 -3
- package/dist/configurationRegistry.js +0 -441
- package/dist/extensionResourceLoader.js +0 -96
- package/dist/labels.js +0 -14
- package/dist/languageConfiguration.js +0 -919
- package/dist/layout.js +0 -47
- package/dist/layoutService.js +0 -4
- package/dist/missing-services.js +0 -5554
- package/dist/resources.js +0 -197
- package/dist/services2.js +0 -3467
- package/dist/textFileEditorModel.js +0 -2985
- package/dist/tokenClassification.d.ts +0 -7
- package/dist/tokenClassification.js +0 -277
- package/dist/variableResolver.js +0 -1711
- package/dist/workbenchThemeService.js +0 -46
- package/dist/workspaceContext.js +0 -50
- /package/dist/{languageConfiguration.d.ts → preferences.d.ts} +0 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var php_tmLanguage = "{\n\t\"information_for_contributors\": [\n\t\t\"This file has been converted from https://github.com/atom/language-php/blob/master/grammars/php.cson\",\n\t\t\"If you want to provide a fix or improvement, please create a pull request against the original repository.\",\n\t\t\"Once accepted there, we are happy to receive an update request.\"\n\t],\n\t\"version\": \"https://github.com/atom/language-php/commit/eb28b8aea1214dcbc732f3d9b9ed20c089c648bd\",\n\t\"scopeName\": \"source.php\",\n\t\"patterns\": [\n\t\t{\n\t\t\t\"include\": \"#attribute\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#comments\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)(?:^|(?<=<\\\\?php))\\\\s*(namespace)\\\\s+([a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)(?=\\\\s*;)\",\n\t\t\t\"name\": \"meta.namespace.php\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"keyword.other.namespace.php\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"entity.name.type.namespace.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"\\\\\\\\\",\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.inheritance.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"(?i)(?:^|(?<=<\\\\?php))\\\\s*(namespace)\\\\s+\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"keyword.other.namespace.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"(?<=})|(?=\\\\?>)\",\n\t\t\t\"name\": \"meta.namespace.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)[a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+\",\n\t\t\t\t\t\"name\": \"entity.name.type.namespace.php\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\\\\\\",\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.separator.inheritance.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"{\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.namespace.begin.bracket.curly.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"}|(?=\\\\?>)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.namespace.end.bracket.curly.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"[^\\\\s]+\",\n\t\t\t\t\t\"name\": \"invalid.illegal.identifier.php\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\s+(?=use\\\\b)\"\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"(?i)\\\\buse\\\\b\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"keyword.other.use.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"(?<=})|(?=;)|(?=\\\\?>)\",\n\t\t\t\"name\": \"meta.use.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\b(const|function)\\\\b\",\n\t\t\t\t\t\"name\": \"storage.type.${1:/downcase}.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"{\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.use.begin.bracket.curly.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"}\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.use.end.bracket.curly.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#scope-resolution\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"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}]*)\",\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.other.use-as.php\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"storage.modifier.php\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"entity.other.alias.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"(?xi)\\n\\\\b(as)\\n\\\\s+([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\",\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.other.use-as.php\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \"^(?:final|abstract|public|private|protected|static)$\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"storage.modifier.php\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"match\": \".+\",\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"entity.other.alias.php\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"(?i)\\\\b(insteadof)\\\\s+([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\",\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.other.use-insteadof.php\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"support.class.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \";\",\n\t\t\t\t\t\t\t\"name\": \"punctuation.terminator.expression.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#use-inner\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#use-inner\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"(?ix)\\n\\\\b(trait)\\\\s+([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"storage.type.trait.php\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"entity.name.type.trait.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"}|(?=\\\\?>)\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.trait.end.bracket.curly.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"meta.trait.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"{\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.trait.begin.bracket.curly.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?=}|\\\\?>)\",\n\t\t\t\t\t\"contentName\": \"meta.trait.body.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"(?ix)\\n\\\\b(interface)\\\\s+([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"storage.type.interface.php\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"entity.name.type.interface.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"}|(?=\\\\?>)\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.interface.end.bracket.curly.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"meta.interface.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#interface-extends\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"{\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.interface.begin.bracket.curly.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?=}|\\\\?>)\",\n\t\t\t\t\t\"contentName\": \"meta.interface.body.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#class-constant\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"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 )?\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"storage.type.enum.php\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"entity.name.type.enum.php\"\n\t\t\t\t},\n\t\t\t\t\"3\": {\n\t\t\t\t\t\"name\": \"keyword.operator.return-value.php\"\n\t\t\t\t},\n\t\t\t\t\"4\": {\n\t\t\t\t\t\"name\": \"keyword.other.type.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"}|(?=\\\\?>)\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.enum.end.bracket.curly.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"meta.enum.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#class-implements\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"{\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.enum.begin.bracket.curly.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?=}|\\\\?>)\",\n\t\t\t\t\t\"contentName\": \"meta.enum.body.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"(?i)\\\\b(case)\\\\s*([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\",\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"storage.modifier.php\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"constant.enum.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#class-constant\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"(?ix)\\n(?:\\n \\\\b(?:(abstract|final)\\\\s+)?(class)\\\\s+([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\\n |\\\\b(new)\\\\b\\\\s*(\\\\#\\\\[.*\\\\])?\\\\s*\\\\b(class)\\\\b # anonymous class\\n)\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"storage.modifier.${1:/downcase}.php\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"storage.type.class.php\"\n\t\t\t\t},\n\t\t\t\t\"3\": {\n\t\t\t\t\t\"name\": \"entity.name.type.class.php\"\n\t\t\t\t},\n\t\t\t\t\"4\": {\n\t\t\t\t\t\"name\": \"keyword.other.new.php\"\n\t\t\t\t},\n\t\t\t\t\"5\": {\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#attribute\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"6\": {\n\t\t\t\t\t\"name\": \"storage.type.class.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"}|(?=\\\\?>)\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.class.end.bracket.curly.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"meta.class.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?<=class)\\\\s*(\\\\()\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.begin.bracket.round.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\)|(?=\\\\?>)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.end.bracket.round.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.function-call.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#named-arguments\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#class-extends\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#class-implements\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"{\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.class.begin.bracket.curly.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?=}|\\\\?>)\",\n\t\t\t\t\t\"contentName\": \"meta.class.body.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#class-constant\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#match_statement\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#switch_statement\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\s*\\\\b(yield\\\\s+from)\\\\b\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"keyword.control.yield-from.php\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"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\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"keyword.control.${1:/downcase}.php\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"(?i)\\\\b((?:require|include)(?:_once)?)(\\\\s+|(?=\\\\())\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"keyword.control.import.include.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"(?=\\\\s|;|$|\\\\?>)\",\n\t\t\t\"name\": \"meta.include.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"\\\\b(catch)\\\\s*(\\\\()\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"keyword.control.exception.catch.php\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.parameters.begin.bracket.round.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"\\\\)\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.parameters.end.bracket.round.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"meta.catch.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\|\",\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.separator.delimiter.php\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"begin\": \"(?i)(?=[\\\\\\\\a-z_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\t\t\t\t\"end\": \"(?xi)\\n( [a-z_\\\\x{7f}-\\\\x{10ffff}] [a-z0-9_\\\\x{7f}-\\\\x{10ffff}]* )\\n(?![a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\])\",\n\t\t\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\t\t\"name\": \"support.class.exception.php\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\"include\": \"#namespace\"\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"variable.other.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\b(catch|try|throw|exception|finally)\\\\b\",\n\t\t\t\"name\": \"keyword.control.exception.php\"\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"(?i)\\\\b(function)\\\\s*(?=&?\\\\s*\\\\()\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"storage.type.function.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"(?=\\\\s*{)\",\n\t\t\t\"name\": \"meta.function.closure.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(&)?\\\\s*(\\\\()\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.reference.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.begin.bracket.round.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"contentName\": \"meta.function.parameters.php\",\n\t\t\t\t\t\"end\": \"\\\\)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.end.bracket.round.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#function-parameters\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?i)(use)\\\\s*(\\\\()\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.other.function.use.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.begin.bracket.round.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.end.bracket.round.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.function.closure.use.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \",\",\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.delimiter.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"variable.other.php\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"storage.modifier.reference.php\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"match\": \"(?i)((?:(&)\\\\s*)?(\\\\$+)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\\\\s*(?=,|\\\\))\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?xi)\\n(:)\\\\s*\\n(\\n (?:\\\\?\\\\s*)? [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ | # nullable type\\n [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ (?: \\\\s*[|&]\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)+ # union type\\n)\\n(?=\\\\s*(?:{|/[/*]|\\\\#|$))\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.return-value.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#php-types\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"(?i)\\\\b(fn)\\\\s*(?=&?\\\\s*\\\\()\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"storage.type.function.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"=>\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.arrow.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"meta.function.closure.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?:(&)\\\\s*)?(\\\\()\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.reference.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.begin.bracket.round.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"contentName\": \"meta.function.parameters.php\",\n\t\t\t\t\t\"end\": \"\\\\)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.end.bracket.round.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#function-parameters\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?xi)\\n(:)\\\\s*\\n(\\n (?:\\\\?\\\\s*)? [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ | # nullable type\\n [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ (?: \\\\s*[|&]\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)+ # union type\\n)\\n(?=\\\\s*(?:=>|/[/*]|\\\\#|$))\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.return-value.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#php-types\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"(?x)\\n((?:(?:final|abstract|public|private|protected)\\\\s+)*)\\n(function)\\\\s+(__construct)\\n\\\\s*(\\\\()\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"final|abstract|public|private|protected\",\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"storage.type.function.php\"\n\t\t\t\t},\n\t\t\t\t\"3\": {\n\t\t\t\t\t\"name\": \"support.function.constructor.php\"\n\t\t\t\t},\n\t\t\t\t\"4\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.parameters.begin.bracket.round.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"contentName\": \"meta.function.parameters.php\",\n\t\t\t\"end\": \"(?xi)\\n(\\\\)) \\\\s* ( : \\\\s*\\n (?:\\\\?\\\\s*)? (?!\\\\s) [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\\\\\s\\\\|&]+ (?<!\\\\s)\\n)?\\n(?=\\\\s*(?:{|/[/*]|\\\\#|$|;))\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.parameters.end.bracket.round.php\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"invalid.illegal.return-type.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"meta.function.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \",\",\n\t\t\t\t\t\"name\": \"punctuation.separator.delimiter.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?xi)\\n((?:(?:public|private|protected|readonly)(?:\\\\s+|(?=\\\\?)))++)\\n(?: (\\n (?:\\\\?\\\\s*)? [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ | # nullable type\\n [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ (?: \\\\s*[|&]\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)+ # union type\\n) \\\\s+ )?\\n((?:(&)\\\\s*)?(\\\\$)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*) # Variable name with possible reference\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"public|private|protected|readonly\",\n\t\t\t\t\t\t\t\t\t\"name\": \"storage.modifier.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#php-types\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"variable.other.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.reference.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"5\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?=\\\\s*(?:,|\\\\)|/[/*]|\\\\#))\",\n\t\t\t\t\t\"name\": \"meta.function.parameter.promoted-property.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"=\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.assignment.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"(?=\\\\s*(?:,|\\\\)|/[/*]|\\\\#))\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#parameter-default-types\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#function-parameters\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"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*(\\\\()\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"final|abstract|public|private|protected|static\",\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"storage.type.function.php\"\n\t\t\t\t},\n\t\t\t\t\"3\": {\n\t\t\t\t\t\"name\": \"support.function.magic.php\"\n\t\t\t\t},\n\t\t\t\t\"4\": {\n\t\t\t\t\t\"name\": \"storage.modifier.reference.php\"\n\t\t\t\t},\n\t\t\t\t\"5\": {\n\t\t\t\t\t\"name\": \"entity.name.function.php\"\n\t\t\t\t},\n\t\t\t\t\"6\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.parameters.begin.bracket.round.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"contentName\": \"meta.function.parameters.php\",\n\t\t\t\"end\": \"(?xi)\\n(\\\\)) (?: \\\\s* (:) \\\\s* (\\n (?:\\\\?\\\\s*)? [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ | # nullable type\\n [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ (?: \\\\s*[|&]\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)+ # union type\\n) )?\\n(?=\\\\s*(?:{|/[/*]|\\\\#|$|;))\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.parameters.end.bracket.round.php\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"keyword.operator.return-value.php\"\n\t\t\t\t},\n\t\t\t\t\"3\": {\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"\\\\b(static)\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"storage.type.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"\\\\b(never)\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"keyword.other.type.never.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#php-types\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"meta.function.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#function-parameters\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?xi)\\n((?:(?:public|private|protected|static|readonly)(?:\\\\s+|(?=\\\\?)))++) # At least one modifier\\n(\\n (?:\\\\?\\\\s*)? [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ | # nullable type\\n [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ (?: \\\\s*[|&]\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)+ # union type\\n)?\\n\\\\s+ ((\\\\$)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*) # Variable name\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"public|private|protected|static|readonly\",\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#php-types\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"3\": {\n\t\t\t\t\t\"name\": \"variable.other.php\"\n\t\t\t\t},\n\t\t\t\t\"4\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#invoke-call\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#scope-resolution\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#variables\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#strings\"\n\t\t},\n\t\t{\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.construct.php\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.array.begin.bracket.round.php\"\n\t\t\t\t},\n\t\t\t\t\"3\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.array.end.bracket.round.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"match\": \"(array)(\\\\()(\\\\))\",\n\t\t\t\"name\": \"meta.array.empty.php\"\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"(array)\\\\s*(\\\\()\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"support.function.construct.php\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.array.begin.bracket.round.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"\\\\)|(?=\\\\?>)\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.array.end.bracket.round.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"meta.array.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)(\\\\()\\\\s*(array|real|double|float|int(?:eger)?|bool(?:ean)?|string|object|binary|unset)\\\\s*(\\\\))\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.storage-type.begin.bracket.round.php\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"storage.type.php\"\n\t\t\t\t},\n\t\t\t\t\"3\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.storage-type.end.bracket.round.php\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(array|real|double|float|int(eger)?|bool(ean)?|string|class|var|function|interface|trait|parent|self|object|mixed)\\\\b\",\n\t\t\t\"name\": \"storage.type.php\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\b(global|abstract|const|final|private|protected|public|static)\\\\b\",\n\t\t\t\"name\": \"storage.modifier.php\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#object\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \";\",\n\t\t\t\"name\": \"punctuation.terminator.expression.php\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \":\",\n\t\t\t\"name\": \"punctuation.terminator.statement.php\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#heredoc\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#numbers\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)\\\\bclone\\\\b\",\n\t\t\t\"name\": \"keyword.other.clone.php\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\.\\\\.\\\\.\",\n\t\t\t\"name\": \"keyword.operator.spread.php\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\.=?\",\n\t\t\t\"name\": \"keyword.operator.string.php\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"=>\",\n\t\t\t\"name\": \"keyword.operator.key.php\"\n\t\t},\n\t\t{\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"keyword.operator.assignment.php\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"storage.modifier.reference.php\"\n\t\t\t\t},\n\t\t\t\t\"3\": {\n\t\t\t\t\t\"name\": \"storage.modifier.reference.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"match\": \"(?i)(\\\\=)(&)|(&)(?=[$a-z_])\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"@\",\n\t\t\t\"name\": \"keyword.operator.error-control.php\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"===|==|!==|!=|<>\",\n\t\t\t\"name\": \"keyword.operator.comparison.php\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"=|\\\\+=|\\\\-=|\\\\*\\\\*?=|/=|%=|&=|\\\\|=|\\\\^=|<<=|>>=|\\\\?\\\\?=\",\n\t\t\t\"name\": \"keyword.operator.assignment.php\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"<=>|<=|>=|<|>\",\n\t\t\t\"name\": \"keyword.operator.comparison.php\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\-\\\\-|\\\\+\\\\+\",\n\t\t\t\"name\": \"keyword.operator.increment-decrement.php\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\-|\\\\+|\\\\*\\\\*?|/|%\",\n\t\t\t\"name\": \"keyword.operator.arithmetic.php\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?i)(!|&&|\\\\|\\\\|)|\\\\b(and|or|xor|as)\\\\b\",\n\t\t\t\"name\": \"keyword.operator.logical.php\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#function-call\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"<<|>>|~|\\\\^|&|\\\\|\",\n\t\t\t\"name\": \"keyword.operator.bitwise.php\"\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"(?i)\\\\b(instanceof)\\\\s+(?=[\\\\\\\\$a-z_])\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"keyword.operator.type.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"(?i)(?=[^\\\\\\\\$a-z0-9_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#class-name\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#variable-name\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#instantiation\"\n\t\t},\n\t\t{\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"keyword.control.goto.php\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"support.other.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"match\": \"(?i)(goto)\\\\s+([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\"\n\t\t},\n\t\t{\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"entity.name.goto-label.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"match\": \"(?i)^\\\\s*([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*(?<!default))\\\\s*:(?!:)\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#string-backtick\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#ternary_shorthand\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#null_coalescing\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#ternary_expression\"\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"{\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.begin.bracket.curly.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"}|(?=\\\\?>)\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.end.bracket.curly.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"\\\\[\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.section.array.begin.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"\\\\]|(?=\\\\?>)\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.section.array.end.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"\\\\(\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.begin.bracket.round.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"\\\\)|(?=\\\\?>)\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.end.bracket.round.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#constants\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \",\",\n\t\t\t\"name\": \"punctuation.separator.delimiter.php\"\n\t\t}\n\t],\n\t\"repository\": {\n\t\t\"attribute-name\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?i)(?=\\\\\\\\?[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*\\\\\\\\)\",\n\t\t\t\t\t\"end\": \"(?xi)\\n( [a-z_\\\\x{7f}-\\\\x{10ffff}] [a-z0-9_\\\\x{7f}-\\\\x{10ffff}]* )?\\n(?![a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"support.attribute.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#namespace\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?xi)\\n(\\\\\\\\)?\\\\b(Attribute)\\\\b\",\n\t\t\t\t\t\"name\": \"support.attribute.builtin.php\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.inheritance.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?i)(?=[\\\\\\\\a-z_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\"end\": \"(?xi)\\n( [a-z_\\\\x{7f}-\\\\x{10ffff}] [a-z0-9_\\\\x{7f}-\\\\x{10ffff}]* )?\\n(?![a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"support.attribute.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#namespace\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"attribute\": {\n\t\t\t\"begin\": \"\\\\#\\\\[\",\n\t\t\t\"end\": \"\\\\]\",\n\t\t\t\"name\": \"meta.attribute.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \",\",\n\t\t\t\t\t\"name\": \"punctuation.separator.delimiter.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"([a-zA-Z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)\\\\s*(\\\\()\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#attribute-name\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.begin.bracket.round.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.end.bracket.round.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#named-arguments\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#attribute-name\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"class-builtin\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.class.builtin.php\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.inheritance.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"class-name\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?i)(?=\\\\\\\\?[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*\\\\\\\\)\",\n\t\t\t\t\t\"end\": \"(?xi)\\n( [a-z_\\\\x{7f}-\\\\x{10ffff}] [a-z0-9_\\\\x{7f}-\\\\x{10ffff}]* )?\\n(?![a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"support.class.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#namespace\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#class-builtin\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?i)(?=[\\\\\\\\a-z_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\"end\": \"(?xi)\\n( [a-z_\\\\x{7f}-\\\\x{10ffff}] [a-z0-9_\\\\x{7f}-\\\\x{10ffff}]* )?\\n(?![a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"support.class.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#namespace\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"inheritance-single\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?i)(?=\\\\\\\\?[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*\\\\\\\\)\",\n\t\t\t\t\t\"end\": \"(?i)([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)?(?=[^a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"entity.other.inherited-class.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#namespace\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#class-builtin\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#namespace\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*\",\n\t\t\t\t\t\"name\": \"entity.other.inherited-class.php\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"class-extends\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?i)(extends)\\\\s+\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.extends.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?i)(?=[^A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\])\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#inheritance-single\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"interface-extends\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?i)(extends)\\\\s+\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.extends.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?i)(?={)\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \",\",\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.classes.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#inheritance-single\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"class-implements\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?i)(implements)\\\\s+\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.implements.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?i)(?={)\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \",\",\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.classes.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#inheritance-single\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"class-constant\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b(const)\\\\s*([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"constant.other.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"comments\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"/\\\\*\\\\*(?=\\\\s)\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\*/\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"comment.block.documentation.phpdoc.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#php_doc\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"/\\\\*\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\*/\",\n\t\t\t\t\t\"name\": \"comment.block.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(^\\\\s+)?(?=//)\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.whitespace.comment.leading.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?!\\\\G)\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"//\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"\\\\n|(?=\\\\?>)\",\n\t\t\t\t\t\t\t\"name\": \"comment.line.double-slash.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(^\\\\s+)?(?=#)(?!#\\\\[)\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.whitespace.comment.leading.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?!\\\\G)\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"#\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"\\\\n|(?=\\\\?>)\",\n\t\t\t\t\t\t\t\"name\": \"comment.line.number-sign.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"constants\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b(TRUE|FALSE|NULL|__(FILE|DIR|FUNCTION|CLASS|METHOD|LINE|NAMESPACE)__|ON|OFF|YES|NO|NL|BR|TAB)\\\\b\",\n\t\t\t\t\t\"name\": \"constant.language.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.constant.core.php\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.inheritance.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.constant.std.php\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.inheritance.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.constant.ext.php\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.inheritance.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.constant.parser-token.php\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.inheritance.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*\",\n\t\t\t\t\t\"name\": \"constant.other.php\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"function-parameters\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#attribute\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \",\",\n\t\t\t\t\t\"name\": \"punctuation.separator.delimiter.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?xi)\\n(?: (\\n (?:\\\\?\\\\s*)? [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ | # nullable type\\n [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ (?: \\\\s*[|&]\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)+ # union type\\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\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#php-types\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"variable.other.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.reference.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.variadic.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"5\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.function.parameter.variadic.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?xi)\\n(\\n (?:\\\\?\\\\s*)? [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ | # nullable type\\n [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+ (?: \\\\s*[|&]\\\\s* [a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]+)+ # union type\\n)\\n\\\\s+ ((?:(&)\\\\s*)?(\\\\$)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*) # Variable name with possible reference\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#php-types\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"variable.other.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.reference.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?=\\\\s*(?:,|\\\\)|/[/*]|\\\\#))\",\n\t\t\t\t\t\"name\": \"meta.function.parameter.typehinted.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"=\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.assignment.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"(?=\\\\s*(?:,|\\\\)|/[/*]|\\\\#))\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#parameter-default-types\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"variable.other.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.reference.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.function.parameter.no-default.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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*\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"variable.other.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.reference.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.assignment.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?=\\\\s*(?:,|\\\\)|/[/*]|\\\\#))\",\n\t\t\t\t\t\"name\": \"meta.function.parameter.default.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#parameter-default-types\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"named-arguments\": {\n\t\t\t\"match\": \"(?i)(?<=^|\\\\(|,)\\\\s*([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\\\\s*(:)(?!:)\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"entity.name.variable.parameter.php\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"punctuation.separator.colon.php\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t\"function-call\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"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*(\\\\()\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#namespace\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"(?i)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*\",\n\t\t\t\t\t\t\t\t\t\"name\": \"entity.name.function.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.begin.bracket.round.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\)|(?=\\\\?>)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.end.bracket.round.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.function-call.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#named-arguments\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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*(\\\\()\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#namespace\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#support\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"(?i)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*\",\n\t\t\t\t\t\t\t\t\t\"name\": \"entity.name.function.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.begin.bracket.round.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\)|(?=\\\\?>)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.end.bracket.round.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.function-call.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#named-arguments\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b(print|echo)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.construct.output.php\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"heredoc\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?i)(?=<<<\\\\s*(\\\"?)([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)(\\\\1)\\\\s*$)\",\n\t\t\t\t\t\"end\": \"(?!\\\\G)\",\n\t\t\t\t\t\"name\": \"string.unquoted.heredoc.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#heredoc_interior\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?=<<<\\\\s*'([a-zA-Z_]+[a-zA-Z0-9_]*)'\\\\s*$)\",\n\t\t\t\t\t\"end\": \"(?!\\\\G)\",\n\t\t\t\t\t\"name\": \"string.unquoted.nowdoc.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#nowdoc_interior\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"heredoc_interior\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(<<<)\\\\s*(\\\"?)(HTML)(\\\\2)(\\\\s*)$\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.begin.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.heredoc.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"5\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.trailing-whitespace.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"contentName\": \"text.html\",\n\t\t\t\t\t\"end\": \"^\\\\s*(\\\\3)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.end.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.heredoc.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.embedded.html\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#interpolation\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"text.html.basic\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(<<<)\\\\s*(\\\"?)(XML)(\\\\2)(\\\\s*)$\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.begin.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.heredoc.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"5\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.trailing-whitespace.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"contentName\": \"text.xml\",\n\t\t\t\t\t\"end\": \"^\\\\s*(\\\\3)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.end.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.heredoc.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.embedded.xml\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#interpolation\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"text.xml\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(<<<)\\\\s*(\\\"?)([DS]QL)(\\\\2)(\\\\s*)$\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.begin.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.heredoc.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"5\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.trailing-whitespace.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"contentName\": \"source.sql\",\n\t\t\t\t\t\"end\": \"^\\\\s*(\\\\3)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.end.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.heredoc.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.embedded.sql\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#interpolation\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"source.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(<<<)\\\\s*(\\\"?)(JAVASCRIPT|JS)(\\\\2)(\\\\s*)$\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.begin.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.heredoc.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"5\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.trailing-whitespace.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"contentName\": \"source.js\",\n\t\t\t\t\t\"end\": \"^\\\\s*(\\\\3)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.end.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.heredoc.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.embedded.js\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#interpolation\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"source.js\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(<<<)\\\\s*(\\\"?)(JSON)(\\\\2)(\\\\s*)$\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.begin.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.heredoc.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"5\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.trailing-whitespace.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"contentName\": \"source.json\",\n\t\t\t\t\t\"end\": \"^\\\\s*(\\\\3)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.end.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.heredoc.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.embedded.json\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#interpolation\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"source.json\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(<<<)\\\\s*(\\\"?)(CSS)(\\\\2)(\\\\s*)$\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.begin.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.heredoc.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"5\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.trailing-whitespace.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"contentName\": \"source.css\",\n\t\t\t\t\t\"end\": \"^\\\\s*(\\\\3)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.end.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.heredoc.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.embedded.css\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#interpolation\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"source.css\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(<<<)\\\\s*(\\\"?)(REGEXP?)(\\\\2)(\\\\s*)$\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.begin.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.heredoc.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"5\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.trailing-whitespace.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"contentName\": \"string.regexp.heredoc.php\",\n\t\t\t\t\t\"end\": \"^\\\\s*(\\\\3)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.end.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.heredoc.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#interpolation\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"(\\\\\\\\){1,2}[.$^\\\\[\\\\]{}]\",\n\t\t\t\t\t\t\t\"name\": \"constant.character.escape.regex.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arbitrary-repitition.php\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arbitrary-repitition.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"match\": \"({)\\\\d+(,\\\\d+)?(})\",\n\t\t\t\t\t\t\t\"name\": \"string.regexp.arbitrary-repitition.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"\\\\[(?:\\\\^?\\\\])?\",\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.character-class.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"\\\\]\",\n\t\t\t\t\t\t\t\"name\": \"string.regexp.character-class.php\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\\\\\[\\\\\\\\'\\\\[\\\\]]\",\n\t\t\t\t\t\t\t\t\t\"name\": \"constant.character.escape.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"[$^+*]\",\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.regexp.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"(?i)(?<=^|\\\\s)(#)\\\\s(?=[[a-z0-9_\\\\x{7f}-\\\\x{10ffff},. \\\\t?!-][^\\\\x{00}-\\\\x{7f}]]*$)\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"$\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"name\": \"comment.line.number-sign.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(<<<)\\\\s*(\\\"?)(BLADE)(\\\\2)(\\\\s*)$\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.begin.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.heredoc.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"5\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.trailing-whitespace.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"contentName\": \"text.html.php.blade\",\n\t\t\t\t\t\"end\": \"^\\\\s*(\\\\3)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.end.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.heredoc.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.embedded.php.blade\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#interpolation\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?i)(<<<)\\\\s*(\\\"?)([a-z_\\\\x{7f}-\\\\x{10ffff}]+[a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)(\\\\2)(\\\\s*)\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.heredoc.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"5\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.trailing-whitespace.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"^\\\\s*(\\\\3)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.heredoc.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#interpolation\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"nowdoc_interior\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(<<<)\\\\s*'(HTML)'(\\\\s*)$\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.begin.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.nowdoc.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.trailing-whitespace.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"contentName\": \"text.html\",\n\t\t\t\t\t\"end\": \"^\\\\s*(\\\\2)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.end.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.nowdoc.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.embedded.html\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"text.html.basic\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(<<<)\\\\s*'(XML)'(\\\\s*)$\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.begin.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.nowdoc.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.trailing-whitespace.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"contentName\": \"text.xml\",\n\t\t\t\t\t\"end\": \"^\\\\s*(\\\\2)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.end.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.nowdoc.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.embedded.xml\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"text.xml\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(<<<)\\\\s*'([DS]QL)'(\\\\s*)$\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.begin.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.nowdoc.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.trailing-whitespace.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"contentName\": \"source.sql\",\n\t\t\t\t\t\"end\": \"^\\\\s*(\\\\2)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.end.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.nowdoc.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.embedded.sql\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"source.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(<<<)\\\\s*'(JAVASCRIPT|JS)'(\\\\s*)$\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.begin.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.nowdoc.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.trailing-whitespace.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"contentName\": \"source.js\",\n\t\t\t\t\t\"end\": \"^\\\\s*(\\\\2)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.end.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.nowdoc.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.embedded.js\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"source.js\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(<<<)\\\\s*'(JSON)'(\\\\s*)$\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.begin.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.nowdoc.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.trailing-whitespace.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"contentName\": \"source.json\",\n\t\t\t\t\t\"end\": \"^\\\\s*(\\\\2)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.end.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.nowdoc.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.embedded.json\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"source.json\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(<<<)\\\\s*'(CSS)'(\\\\s*)$\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.begin.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.nowdoc.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.trailing-whitespace.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"contentName\": \"source.css\",\n\t\t\t\t\t\"end\": \"^\\\\s*(\\\\2)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.end.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.nowdoc.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.embedded.css\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"source.css\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(<<<)\\\\s*'(REGEXP?)'(\\\\s*)$\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.begin.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.nowdoc.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.trailing-whitespace.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"contentName\": \"string.regexp.nowdoc.php\",\n\t\t\t\t\t\"end\": \"^\\\\s*(\\\\2)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.end.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.nowdoc.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"(\\\\\\\\){1,2}[.$^\\\\[\\\\]{}]\",\n\t\t\t\t\t\t\t\"name\": \"constant.character.escape.regex.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arbitrary-repitition.php\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arbitrary-repitition.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"match\": \"({)\\\\d+(,\\\\d+)?(})\",\n\t\t\t\t\t\t\t\"name\": \"string.regexp.arbitrary-repitition.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"\\\\[(?:\\\\^?\\\\])?\",\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.character-class.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"\\\\]\",\n\t\t\t\t\t\t\t\"name\": \"string.regexp.character-class.php\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\\\\\[\\\\\\\\'\\\\[\\\\]]\",\n\t\t\t\t\t\t\t\t\t\"name\": \"constant.character.escape.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"[$^+*]\",\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.regexp.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"(?i)(?<=^|\\\\s)(#)\\\\s(?=[[a-z0-9_\\\\x{7f}-\\\\x{10ffff},. \\\\t?!-][^\\\\x{00}-\\\\x{7f}]]*$)\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"$\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"name\": \"comment.line.number-sign.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(<<<)\\\\s*'(BLADE)'(\\\\s*)$\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.begin.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.nowdoc.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.trailing-whitespace.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"contentName\": \"text.html.php.blade\",\n\t\t\t\t\t\"end\": \"^\\\\s*(\\\\2)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.end.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.nowdoc.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.embedded.php.blade\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?i)(<<<)\\\\s*'([a-z_\\\\x{7f}-\\\\x{10ffff}]+[a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)'(\\\\s*)\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.nowdoc.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.trailing-whitespace.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"^\\\\s*(\\\\2)(?![A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.nowdoc.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"instantiation\": {\n\t\t\t\"begin\": \"(?i)(new)\\\\s+(?!class\\\\b)\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"keyword.other.new.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"(?i)(?=[^a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\])\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)(parent|static|self)(?![a-z0-9_\\\\x{7f}-\\\\x{10ffff}])\",\n\t\t\t\t\t\"name\": \"storage.type.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#class-name\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#variable-name\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"interpolation\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\\\\\[0-7]{1,3}\",\n\t\t\t\t\t\"name\": \"constant.character.escape.octal.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\\\\\x[0-9A-Fa-f]{1,2}\",\n\t\t\t\t\t\"name\": \"constant.character.escape.hex.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\\\\\u{[0-9A-Fa-f]+}\",\n\t\t\t\t\t\"name\": \"constant.character.escape.unicode.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\\\\\[nrtvef$\\\\\\\\]\",\n\t\t\t\t\t\"name\": \"constant.character.escape.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"{(?=\\\\$.*?})\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"}\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#variable-name\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"interpolation_double_quoted\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\\\\\\\\"\",\n\t\t\t\t\t\"name\": \"constant.character.escape.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#interpolation\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"invoke-call\": {\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"variable.other.php\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"match\": \"(?i)((\\\\$+)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)(?=\\\\s*\\\\()\",\n\t\t\t\"name\": \"meta.function-call.invoke.php\"\n\t\t},\n\t\t\"namespace\": {\n\t\t\t\"begin\": \"(?i)(?:(namespace)|[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)?(\\\\\\\\)\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"variable.language.namespace.php\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"punctuation.separator.inheritance.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"(?i)(?![a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*\\\\\\\\)\",\n\t\t\t\"name\": \"support.other.namespace.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\\\\\\",\n\t\t\t\t\t\"name\": \"punctuation.separator.inheritance.php\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"numbers\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"0[xX][0-9a-fA-F]+(?:_[0-9a-fA-F]+)*\",\n\t\t\t\t\t\"name\": \"constant.numeric.hex.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"0[bB][01]+(?:_[01]+)*\",\n\t\t\t\t\t\"name\": \"constant.numeric.binary.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"0[oO][0-7]+(?:_[0-7]+)*\",\n\t\t\t\t\t\"name\": \"constant.numeric.octal.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"0(?:_?[0-7]+)+\",\n\t\t\t\t\t\"name\": \"constant.numeric.octal.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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)\",\n\t\t\t\t\t\"name\": \"constant.numeric.decimal.php\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.decimal.period.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.decimal.period.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"0|[1-9](?:_?[0-9]+)*\",\n\t\t\t\t\t\"name\": \"constant.numeric.decimal.php\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"object\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(\\\\??->)\\\\s*(\\\\$?{)\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.class.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"}\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?i)(\\\\??->)\\\\s*([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\\\\s*(\\\\()\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.class.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"entity.name.function.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.begin.bracket.round.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\)|(?=\\\\?>)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.end.bracket.round.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.method-call.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#named-arguments\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.class.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"variable.other.property.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"match\": \"(?i)(\\\\??->)\\\\s*((\\\\$+)?[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)?\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"php-types\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\?\",\n\t\t\t\t\t\"name\": \"keyword.operator.nullable-type.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"[|&]\",\n\t\t\t\t\t\"name\": \"punctuation.separator.delimiter.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b(null|int|float|bool|string|array|object|callable|iterable|false|mixed|void)\\\\b\",\n\t\t\t\t\t\"name\": \"keyword.other.type.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b(parent|self)\\\\b\",\n\t\t\t\t\t\"name\": \"storage.type.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#class-name\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"parameter-default-types\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#strings\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#numbers\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#string-backtick\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#variables\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"=>\",\n\t\t\t\t\t\"name\": \"keyword.operator.key.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"=\",\n\t\t\t\t\t\"name\": \"keyword.operator.assignment.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"&(?=\\\\s*\\\\$)\",\n\t\t\t\t\t\"name\": \"storage.modifier.reference.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(array)\\\\s*(\\\\()\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"support.function.construct.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.array.begin.bracket.round.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.array.end.bracket.round.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.array.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#parameter-default-types\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"\\\\[\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.array.begin.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\]|(?=\\\\?>)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.array.end.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#instantiation\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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)\",\n\t\t\t\t\t\"end\": \"(?i)(::)\\\\s*([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)?\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.class.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"constant.other.class.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#class-name\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#constants\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"php_doc\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"^(?!\\\\s*\\\\*).*?(?:(?=\\\\*\\\\/)|$\\\\n?)\",\n\t\t\t\t\t\"name\": \"invalid.illegal.missing-asterisk.phpdoc.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.other.phpdoc.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"storage.modifier.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.wrong-access-type.phpdoc.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"match\": \"^\\\\s*\\\\*\\\\s*(@access)\\\\s+((public|private|protected)|(.+))\\\\s*$\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.other.phpdoc.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"markup.underline.link.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"match\": \"(@xlink)\\\\s+(.+)\\\\s*$\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(@(?:global|param|property(-(read|write))?|return|throws|var))\\\\s+(?=[?A-Za-z_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]|\\\\()\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.other.phpdoc.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?=\\\\s|\\\\*/)\",\n\t\t\t\t\t\"contentName\": \"meta.other.type.phpdoc.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#php_doc_types_array_multiple\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#php_doc_types_array_single\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#php_doc_types\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"keyword.other.phpdoc.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.other.phpdoc.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"match\": \"{(@(link|inherit[Dd]oc)).+?}\",\n\t\t\t\t\t\"name\": \"meta.tag.inline.phpdoc.php\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"php_doc_types\": {\n\t\t\t\"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}\\\\\\\\]*)*\",\n\t\t\t\"captures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"\\\\?\",\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.nullable-type.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"(?x)\\\\b\\n(string|integer|int|boolean|bool|float|double|object|mixed\\n|array|resource|void|null|callback|false|true|self|static)\\\\b\",\n\t\t\t\t\t\t\t\"name\": \"keyword.other.type.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#class-name\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"[|&]\",\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.delimiter.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t\"php_doc_types_array_multiple\": {\n\t\t\t\"begin\": \"\\\\(\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.type.begin.bracket.round.phpdoc.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"(\\\\))(\\\\[\\\\])|(?=\\\\*/)\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.type.end.bracket.round.phpdoc.php\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"keyword.other.array.phpdoc.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#php_doc_types_array_multiple\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#php_doc_types_array_single\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#php_doc_types\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"[|&]\",\n\t\t\t\t\t\"name\": \"punctuation.separator.delimiter.php\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"php_doc_types_array_single\": {\n\t\t\t\"match\": \"(?i)([a-z_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\][a-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]*)(\\\\[\\\\])\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#php_doc_types\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"keyword.other.array.phpdoc.php\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t\"regex-double-quoted\": {\n\t\t\t\"begin\": \"\\\"/(?=(\\\\\\\\.|[^\\\"/])++/[imsxeADSUXu]*\\\")\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"(/)([imsxeADSUXu]*)(\\\")\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.end.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"string.regexp.double-quoted.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(\\\\\\\\){1,2}[.$^\\\\[\\\\]{}]\",\n\t\t\t\t\t\"name\": \"constant.character.escape.regex.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#interpolation_double_quoted\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arbitrary-repetition.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arbitrary-repetition.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"match\": \"({)\\\\d+(,\\\\d+)?(})\",\n\t\t\t\t\t\"name\": \"string.regexp.arbitrary-repetition.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"\\\\[(?:\\\\^?\\\\])?\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.character-class.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\]\",\n\t\t\t\t\t\"name\": \"string.regexp.character-class.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#interpolation_double_quoted\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"[$^+*]\",\n\t\t\t\t\t\"name\": \"keyword.operator.regexp.php\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"regex-single-quoted\": {\n\t\t\t\"begin\": \"'/(?=(\\\\\\\\(?:\\\\\\\\(?:\\\\\\\\[\\\\\\\\']?|[^'])|.)|[^'/])++/[imsxeADSUXu]*')\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"(/)([imsxeADSUXu]*)(')\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.end.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"string.regexp.single-quoted.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#single_quote_regex_escape\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arbitrary-repetition.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arbitrary-repetition.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"match\": \"({)\\\\d+(,\\\\d+)?(})\",\n\t\t\t\t\t\"name\": \"string.regexp.arbitrary-repetition.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"\\\\[(?:\\\\^?\\\\])?\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.character-class.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\]\",\n\t\t\t\t\t\"name\": \"string.regexp.character-class.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"[$^+*]\",\n\t\t\t\t\t\"name\": \"keyword.operator.regexp.php\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"scope-resolution\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"([A-Za-z_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\][A-Za-z0-9_\\\\x{7f}-\\\\x{10ffff}\\\\\\\\]*)(?=\\\\s*::)\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"\\\\b(self|static|parent)\\\\b\",\n\t\t\t\t\t\t\t\t\t\"name\": \"storage.type.php\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#class-name\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#variable-name\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?i)(::)\\\\s*([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\\\\s*(\\\\()\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.class.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"entity.name.function.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.begin.bracket.round.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\)|(?=\\\\?>)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.end.bracket.round.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.method-call.static.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#named-arguments\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)(::)\\\\s*(class)\\\\b\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.class.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.other.class.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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)?\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.class.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"variable.other.class.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\"name\": \"constant.other.class.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"single_quote_regex_escape\": {\n\t\t\t\"match\": \"\\\\\\\\(?:\\\\\\\\(?:\\\\\\\\[\\\\\\\\']?|[^'])|.)\",\n\t\t\t\"name\": \"constant.character.escape.php\"\n\t\t},\n\t\t\"sql-string-double-quoted\": {\n\t\t\t\"begin\": \"\\\"\\\\s*(?=(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER|AND|WITH)\\\\b)\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"contentName\": \"source.sql.embedded.php\",\n\t\t\t\"end\": \"\\\"\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.end.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"string.quoted.double.sql.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(#)(\\\\\\\\\\\"|[^\\\"])*(?=\\\"|$)\",\n\t\t\t\t\t\"name\": \"comment.line.number-sign.sql\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(--)(\\\\\\\\\\\"|[^\\\"])*(?=\\\"|$)\",\n\t\t\t\t\t\"name\": \"comment.line.double-dash.sql\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\\\\\[\\\\\\\\\\\"`']\",\n\t\t\t\t\t\"name\": \"constant.character.escape.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"'(?=((\\\\\\\\')|[^'\\\"])*(\\\"|$))\",\n\t\t\t\t\t\"name\": \"string.quoted.single.unclosed.sql\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"`(?=((\\\\\\\\`)|[^`\\\"])*(\\\"|$))\",\n\t\t\t\t\t\"name\": \"string.quoted.other.backtick.unclosed.sql\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"'\",\n\t\t\t\t\t\"end\": \"'\",\n\t\t\t\t\t\"name\": \"string.quoted.single.sql\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#interpolation_double_quoted\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"`\",\n\t\t\t\t\t\"end\": \"`\",\n\t\t\t\t\t\"name\": \"string.quoted.other.backtick.sql\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#interpolation_double_quoted\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#interpolation_double_quoted\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"source.sql\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"sql-string-single-quoted\": {\n\t\t\t\"begin\": \"'\\\\s*(?=(SELECT|INSERT|UPDATE|DELETE|CREATE|REPLACE|ALTER|AND|WITH)\\\\b)\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"contentName\": \"source.sql.embedded.php\",\n\t\t\t\"end\": \"'\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.end.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"string.quoted.single.sql.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(#)(\\\\\\\\'|[^'])*(?='|$)\",\n\t\t\t\t\t\"name\": \"comment.line.number-sign.sql\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(--)(\\\\\\\\'|[^'])*(?='|$)\",\n\t\t\t\t\t\"name\": \"comment.line.double-dash.sql\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.sql\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\\\\\[\\\\\\\\'`\\\"]\",\n\t\t\t\t\t\"name\": \"constant.character.escape.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"`(?=((\\\\\\\\`)|[^`'])*('|$))\",\n\t\t\t\t\t\"name\": \"string.quoted.other.backtick.unclosed.sql\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\"(?=((\\\\\\\\\\\")|[^\\\"'])*('|$))\",\n\t\t\t\t\t\"name\": \"string.quoted.double.unclosed.sql\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"source.sql\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"string-backtick\": {\n\t\t\t\"begin\": \"`\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"`\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.end.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"string.interpolated.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\\\\\`\",\n\t\t\t\t\t\"name\": \"constant.character.escape.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#interpolation\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"string-double-quoted\": {\n\t\t\t\"begin\": \"\\\"\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"\\\"\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.end.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"string.quoted.double.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#interpolation_double_quoted\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"string-single-quoted\": {\n\t\t\t\"begin\": \"'\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"'\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.end.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"string.quoted.single.php\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\\\\\[\\\\\\\\']\",\n\t\t\t\t\t\"name\": \"constant.character.escape.php\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"strings\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#regex-double-quoted\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#sql-string-double-quoted\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#string-double-quoted\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#regex-single-quoted\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#sql-string-single-quoted\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#string-single-quoted\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"support\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.apc.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.array.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.basic_functions.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bbc(scale|sub|sqrt|comp|div|pow(mod)?|add|mod|mul)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.bcmath.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bblenc_encrypt\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.blenc.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bbz(compress|close|open|decompress|errstr|errno|error|flush|write|read)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.bz2.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.calendar.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.classobj.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.com.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b(isset|unset|eval|empty|list)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.construct.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b(print|echo)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.construct.output.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bctype_(space|cntrl|digit|upper|punct|print|lower|alnum|alpha|graph|xdigit)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.ctype.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.curl.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.datetime.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bdba_(sync|handlers|nextkey|close|insert|optimize|open|delete|popen|exists|key_split|firstkey|fetch|list|replace)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.dba.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bdbx_(sort|connect|compare|close|escape_string|error|query|fetch_row)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.dbx.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b(scandir|chdir|chroot|closedir|opendir|dir|rewinddir|readdir|getcwd)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.dir.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.eio.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.enchant.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b(split(i)?|sql_regcase|ereg(i)?(_replace)?)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.ereg.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b((restore|set)_(error_handler|exception_handler)|trigger_error|debug_(print_)?backtrace|user_error|error_(log|reporting|get_last))\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.errorfunc.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b(shell_exec|system|passthru|proc_(nice|close|terminate|open|get_status)|escapeshell(arg|cmd)|exec)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.exec.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b(exif_(thumbnail|tagname|imagetype|read_data)|read_exif_data)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.exif.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.fann.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.file.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b(finfo_(set_flags|close|open|file|buffer)|mime_content_type)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.fileinfo.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bfilter_(has_var|input(_array)?|id|var(_array)?|list)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.filter.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bfastcgi_finish_request\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.fpm.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.funchand.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b((n)?gettext|textdomain|d((n)?gettext|c(n)?gettext)|bind(textdomain|_textdomain_codeset))\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.gettext.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.gmp.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bhash(_(hmac(_file)?|copy|init|update(_(file|stream))?|pbkdf2|equals|file|final|algos))?\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.hash.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.http.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b(iconv(_(str(pos|len|rpos)|substr|(get|set)_encoding|mime_(decode(_headers)?|encode)))?|ob_iconv_handler)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.iconv.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.iisfunc.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.image.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.info.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.interbase.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.intl.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bjson_(decode|encode|last_error(_msg)?)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.json.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.ldap.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\blibxml_(set_(streams_context|external_entity_loader)|clear_errors|disable_entity_loader|use_internal_errors|get_(errors|last_error))\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.libxml.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b(ezmlm_hash|mail)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.mail.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.math.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.mbstring.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.mcrypt.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bmemcache_debug\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.memcache.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bmhash(_(count|keygen_s2k|get_(hash_name|block_size)))?\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.mhash.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b(log_(cmd_(insert|delete|update)|killcursor|write_batch|reply|getmore)|bson_(decode|encode))\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.mongo.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.mysql.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.mysqli.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bmysqlnd_memcache_(set|get_config)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.mysqlnd-memcache.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.mysqlnd-ms.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.mysqlnd-qc.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bmysqlnd_uh_(set_(statement|connection)_proxy|convert_to_mysqlnd)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.mysqlnd-uh.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.network.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bnsapi_(virtual|response_headers|request_headers)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.nsapi.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.oci8.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bopcache_(compile_file|invalidate|reset|get_(status|configuration))\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.opcache.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.openssl.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.output.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bpassword_(hash|needs_rehash|verify|get_info)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.password.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.pcntl.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.pgsql.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b(virtual|getallheaders|apache_((get|set)env|note|child_terminate|lookup_uri|response_headers|reset_timeout|request_headers|get_(version|modules)))\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.php_apache.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bdom_import_simplexml\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.php_dom.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.php_ftp.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.php_imap.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.php_mssql.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.php_odbc.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bpreg_(split|quote|filter|last_error|replace(_callback)?|grep|match(_all)?)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.php_pcre.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b(spl_(classes|object_hash|autoload(_(call|unregister|extensions|functions|register))?)|class_(implements|uses|parents)|iterator_(count|to_array|apply))\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.php_spl.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bzip_(close|open|entry_(name|compressionmethod|compressedsize|close|open|filesize|read)|read)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.php_zip.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.posix.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bset(thread|proc)title\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.proctitle.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.pspell.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.readline.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\brecode(_(string|file))?\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.recode.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\brrd(c_disconnect|_(create|tune|info|update|error|version|first|fetch|last(update)?|restore|graph|xport))\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.rrd.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.sem.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.session.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bshmop_(size|close|open|delete|write|read)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.shmop.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bsimplexml_(import_dom|load_(string|file))\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.simplexml.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.snmp.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b(is_soap_fault|use_soap_error_handler)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.soap.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.sockets.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.sqlite.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.sqlsrv.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.stats.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.streamsfuncs.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.string.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.sybase.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b(taint|is_tainted|untaint)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.taint.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.tidy.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\btoken_(name|get_all)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.tokenizer.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.trader.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\buopz_(copy|compose|implement|overload|delete|undefine|extend|function|flags|restore|rename|redefine|backup)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.uopz.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\b(http_build_query|(raw)?url(decode|encode)|parse_url|get_(headers|meta_tags)|base64_(decode|encode))\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.url.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.var.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bwddx_(serialize_(value|vars)|deserialize|packet_(start|end)|add_vars)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.wddx.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bxhprof_(sample_)?(disable|enable)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.xhprof.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.xml.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.xmlrpc.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.xmlwriter.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"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\",\n\t\t\t\t\t\"name\": \"support.function.zlib.php\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)\\\\bis_int(eger)?\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.alias.php\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"switch_statement\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\s+(?=switch\\\\b)\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"\\\\bswitch\\\\b(?!\\\\s*\\\\(.*\\\\)\\\\s*:)\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.control.switch.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"}|(?=\\\\?>)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.section.switch-block.end.bracket.curly.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.switch-statement.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"\\\\(\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.switch-expression.begin.bracket.round.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"\\\\)|(?=\\\\?>)\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.switch-expression.end.bracket.round.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"{\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.section.switch-block.begin.bracket.curly.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"(?=}|\\\\?>)\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"match_statement\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\s+(?=match\\\\b)\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"\\\\bmatch\\\\b\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.control.match.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"}|(?=\\\\?>)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.section.match-block.end.bracket.curly.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.match-statement.php\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"\\\\(\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.match-expression.begin.bracket.round.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"\\\\)|(?=\\\\?>)\",\n\t\t\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.match-expression.end.bracket.round.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"begin\": \"{\",\n\t\t\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.section.match-block.begin.bracket.curly.php\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"end\": \"(?=}|\\\\?>)\",\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"match\": \"=>\",\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.definition.arrow.php\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"use-inner\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#comments\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?i)\\\\b(as)\\\\s+\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.other.use-as.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?i)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"entity.other.alias.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#class-name\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \",\",\n\t\t\t\t\t\"name\": \"punctuation.separator.delimiter.php\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"var_basic\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)(\\\\$+)[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*\",\n\t\t\t\t\t\"name\": \"variable.other.php\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"var_global\": {\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"match\": \"(\\\\$)((_(COOKIE|FILES|GET|POST|REQUEST))|arg(v|c))\\\\b\",\n\t\t\t\"name\": \"variable.other.global.php\"\n\t\t},\n\t\t\"var_global_safer\": {\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"match\": \"(\\\\$)((GLOBALS|_(ENV|SERVER|SESSION)))\",\n\t\t\t\"name\": \"variable.other.global.safer.php\"\n\t\t},\n\t\t\"var_language\": {\n\t\t\t\"match\": \"(\\\\$)this\\\\b\",\n\t\t\t\"name\": \"variable.language.this.php\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t\"variable-name\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#var_global\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#var_global_safer\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"variable.other.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.class.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"5\": {\n\t\t\t\t\t\t\t\"name\": \"variable.other.property.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"6\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.array.begin.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"7\": {\n\t\t\t\t\t\t\t\"name\": \"constant.numeric.index.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"8\": {\n\t\t\t\t\t\t\t\"name\": \"variable.other.index.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"9\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"10\": {\n\t\t\t\t\t\t\t\"name\": \"string.unquoted.index.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"11\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.array.end.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"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)?\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"variable.other.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"match\": \"(?i)((\\\\${)(?<name>[a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)(}))\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"variables\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#var_language\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#var_global\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#var_global_safer\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#var_basic\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"\\\\${(?=.*?})\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"}\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.variable.php\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"ternary_shorthand\": {\n\t\t\t\"match\": \"\\\\?:\",\n\t\t\t\"name\": \"keyword.operator.ternary.php\"\n\t\t},\n\t\t\"ternary_expression\": {\n\t\t\t\"begin\": \"\\\\?\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"keyword.operator.ternary.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"(?<!:):(?!:)\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"keyword.operator.ternary.php\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?i)^\\\\s*([a-z_\\\\x{7f}-\\\\x{10ffff}][a-z0-9_\\\\x{7f}-\\\\x{10ffff}]*)\\\\s*(?=:(?!:))\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"null_coalescing\": {\n\t\t\t\"match\": \"\\\\?\\\\?\",\n\t\t\t\"name\": \"keyword.operator.null-coalescing.php\"\n\t\t}\n\t}\n}";
|
|
2
|
+
export { php_tmLanguage as default };
|
package/dist/php2.js
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var php = "{\n\t\"class …\": {\n\t\t\"prefix\": \"class\",\n\t\t\"body\": [\n\t\t\t\"class ${1:ClassName} ${2:extends ${3:AnotherClass}} ${4:implements ${5:Interface}}\",\n\t\t\t\"{\",\n\t\t\t\"\\t$0\",\n\t\t\t\"}\",\n\t\t\t\"\"\n\t\t],\n\t\t\"description\": \"Class definition\"\n\t},\n\t\"PHPDoc class …\": {\n\t\t\"prefix\": \"doc_class\",\n\t\t\"isFileTemplate\": true,\n\t\t\"body\": [\n\t\t\t\"/**\",\n\t\t\t\" * ${6:undocumented class}\",\n\t\t\t\" */\",\n\t\t\t\"class ${1:ClassName} ${2:extends ${3:AnotherClass}} ${4:implements ${5:Interface}}\",\n\t\t\t\"{\",\n\t\t\t\"\\t$0\",\n\t\t\t\"}\",\n\t\t\t\"\"\n\t\t],\n\t\t\"description\": \"Documented Class Declaration\"\n\t},\n\t\"function __construct\": {\n\t\t\"prefix\": \"con\",\n\t\t\"body\": [\n\t\t\t\"${1:public} function __construct(${2:${3:Type} $${4:var}${5: = ${6:null}}}) {\",\n \"\\t\\\\$this->${4:var} = $${4:var};$0\",\n \"}\"\n\t\t]\n\t},\n\t\"PHPDoc property\": {\n\t\t\"prefix\": \"doc_v\",\n\t\t\"body\": [\n\t\t\t\"/** @var ${1:Type} $${2:var} ${3:description} */\",\n\t\t\t\"${4:protected} $${2:var}${5: = ${6:null}};$0\"\n\t\t],\n\t\t\"description\": \"Documented Class Variable\"\n\t},\n\t\"PHPDoc function …\": {\n\t\t\"prefix\": \"doc_f\",\n\t\t\"isFileTemplate\": true,\n\t\t\"body\": [\n\t\t\t\"/**\",\n\t\t\t\" * ${1:undocumented function summary}\",\n\t\t\t\" *\",\n\t\t\t\" * ${2:Undocumented function long description}\",\n\t\t\t\" *\",\n\t\t\t\"${3: * @param ${4:Type} $${5:var} ${6:Description}}\",\n\t\t\t\"${7: * @return ${8:type}}\",\n\t\t\t\"${9: * @throws ${10:conditon}}\",\n\t\t\t\" **/\",\n\t\t\t\"${11:public }function ${12:FunctionName}(${13:${14:${4:Type} }$${5:var}${15: = ${16:null}}})\",\n\t\t\t\"{\",\n\t\t\t\"\\t${0:# code...}\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"Documented function\"\n\t},\n\t\"PHPDoc param …\": {\n\t\t\"prefix\": \"param\",\n\t\t\"body\": [\n\t\t\t\"* @param ${1:Type} ${2:var} ${3:Description}$0\"\n\t\t],\n\t\t\"description\": \"Parameter documentation\"\n\t},\n\t\"function …\": {\n\t\t\"prefix\": \"fun\",\n\t\t\"body\": [\n\t\t\t\"${1:public }function ${2:FunctionName}(${3:${4:${5:Type} }$${6:var}${7: = ${8:null}}})\",\n\t\t\t\"{\",\n\t\t\t\"\\t${0:# code...}\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"Function\"\n\t},\n\t\"trait …\": {\n\t\t\"prefix\": \"trait\",\n\t\t\"body\": [\n\t\t\t\"/**\",\n\t\t\t\" * $1\",\n\t\t\t\" */\",\n\t\t\t\"trait ${2:TraitName}\",\n\t\t\t\"{\",\n\t\t\t\"\\t$0\",\n\t\t\t\"}\",\n\t\t\t\"\"\n\t\t],\n\t\t\"description\": \"Trait\"\n\t},\n\t\"define(…, …)\": {\n\t\t\"prefix\": \"def\",\n\t\t\"body\": [\n\t\t\t\"define('$1', ${2:'$3'});\",\n\t\t\t\"$0\"\n\t\t],\n\t\t\"description\": \"Definition\"\n\t},\n\t\"do … while …\": {\n\t\t\"prefix\": \"do\",\n\t\t\"body\": [\n\t\t\t\"do {\",\n\t\t\t\"\\t${0:# code...}\",\n\t\t\t\"} while (${1:$${2:a} <= ${3:10}});\"\n\t\t],\n\t\t\"description\": \"Do-While loop\"\n\t},\n\t\t\"while …\": {\n\t\t\"prefix\": \"while\",\n\t\t\"body\": [\n\t\t\t\"while (${1:$${2:a} <= ${3:10}}) {\",\n\t\t\t\"\\t${0:# code...}\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"While-loop\"\n\t},\n\t\"if …\": {\n\t\t\"prefix\": \"if\",\n\t\t\"body\": [\n\t\t\t\"if (${1:condition}) {\",\n\t\t\t\"\\t${0:# code...}\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"If block\"\n\t},\n\t\"if … else …\": {\n\t\t\"prefix\": \"ifelse\",\n\t\t\"body\": [\n\t\t\t\"if (${1:condition}) {\",\n\t\t\t\"\\t${2:# code...}\",\n\t\t\t\"} else {\",\n\t\t\t\"\\t${3:# code...}\",\n\t\t\t\"}\",\n\t\t\t\"$0\"\n\t\t],\n\t\t\"description\": \"If Else block\"\n\t},\n\t\"$… = ( … ) ? … : …\": {\n\t\t\"prefix\": \"if?\",\n\t\t\"body\": \"$${1:retVal} = (${2:condition}) ? ${3:a} : ${4:b} ;\",\n\t\t\"description\": \"Ternary conditional assignment\"\n\t},\n\t\"else …\": {\n\t\t\"prefix\": \"else\",\n\t\t\"body\": [\n\t\t\t\"else {\",\n\t\t\t\"\\t${0:# code...}\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"Else block\"\n\t},\n\t\"elseif …\": {\n\t\t\"prefix\": \"elseif\",\n\t\t\"body\": [\n\t\t\t\"elseif (${1:condition}) {\",\n\t\t\t\"\\t${0:# code...}\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"Elseif block\"\n\t},\n\t\"for …\": {\n\t\t\"prefix\": \"for\",\n\t\t\"body\": [\n\t\t\t\"for ($${1:i}=${2:0}; $${1:i} < $3; $${1:i}++) { \",\n\t\t\t\"\\t${0:# code...}\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"For-loop\"\n\t},\n\t\"foreach …\": {\n\t\t\"prefix\": \"foreach\",\n\t\t\"body\": [\n\t\t\t\"foreach ($${1:variable} as $${2:key} ${3:=> $${4:value}}) {\",\n\t\t\t\"\\t${0:# code...}\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"Foreach loop\"\n\t},\n\t\"$… = array (…)\": {\n\t\t\"prefix\": \"array\",\n\t\t\"body\": \"$${1:arrayName} = array('$2' => $3${4:,} $0);\",\n\t\t\"description\": \"Array initializer\"\n\t},\n\t\"$… = […]\": {\n\t\t\"prefix\": \"shorray\",\n\t\t\"body\": \"$${1:arrayName} = ['$2' => $3${4:,} $0];\",\n\t\t\"description\": \"Array initializer\"\n\t},\n\t\"… => …\": {\n\t\t\"prefix\": \"keyval\",\n\t\t\"body\": \"'$1' => $2${3:,} $0\",\n\t\t\"description\": \"Key-Value initializer\"\n\t},\n\t\"switch …\": {\n\t\t\"prefix\": \"switch\",\n\t\t\"body\": [\n\t\t\t\"switch (\\\\$${1:variable}) {\",\n\t\t\t\"\\tcase '${2:value}':\",\n\t\t\t\"\\t\\t${3:# code...}\",\n\t\t\t\"\\t\\tbreak;\",\n\t\t\t\"\\t$0\",\n\t\t\t\"\\tdefault:\",\n\t\t\t\"\\t\\t${4:# code...}\",\n\t\t\t\"\\t\\tbreak;\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"Switch block\"\n\t},\n\t\"case …\": {\n\t\t\"prefix\": \"case\",\n\t\t\"body\": [\n\t\t\t\"case '${1:value}':\",\n\t\t\t\"\\t${0:# code...}\",\n\t\t\t\"\\tbreak;\"\n\t\t],\n\t\t\"description\": \"Case Block\"\n\t},\n\t\"$this->…\": {\n\t\t\"prefix\": \"this\",\n\t\t\"body\": \"\\\\$this->$0;\",\n\t\t\"description\": \"$this->...\"\n\t},\n\t\"echo $this->…\": {\n\t\t\"prefix\": \"ethis\",\n\t\t\"body\": \"echo \\\\$this->$0;\",\n\t\t\"description\": \"Echo this\"\n\t},\n\t\"Throw Exception\": {\n\t\t\"prefix\": \"throw\",\n\t\t\"body\": [\n\t\t\t\"throw new $1Exception(${2:\\\"${3:Error Processing Request}\\\"}${4:, ${5:1}});\",\n\t\t\t\"$0\"\n\t\t],\n\t\t\"description\": \"Throw exception\"\n\t},\n\t\"Region Start\": {\n\t\t\"prefix\": \"#region\",\n\t\t\"body\": [\n\t\t\t\"#region\"\n\t\t],\n\t\t\"description\": \"Folding Region Start\"\n\t},\n\t\"Region End\": {\n\t\t\"prefix\": \"#endregion\",\n\t\t\"body\": [\n\t\t\t\"#endregion\"\n\t\t],\n\t\t\"description\": \"Folding Region End\"\n\t},\n\t\"Try Catch Block\": {\n\t\t\"prefix\": \"try\",\n\t\t\"body\": [\n\t\t\t\"try {\",\n\t\t\t\"\\t${1://code...}\",\n\t\t\t\"} catch (${2:\\\\Throwable} ${3:\\\\$th}) {\",\n\t\t\t\"\\t${4://throw \\\\$th;}\",\n\t\t\t\"}\"\n\t\t],\n\t\t\"description\": \"Try catch block\"\n\t}\n}\n";
|
|
2
|
+
export { php as default };
|
package/dist/platform.js
ADDED
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { getConfiguredDefaultLocale, localize } from 'monaco-editor/esm/vs/nls.js';
|
|
2
|
+
const LANGUAGE_DEFAULT = 'en';
|
|
3
|
+
let _locale = undefined;
|
|
4
|
+
let _language = LANGUAGE_DEFAULT;
|
|
5
|
+
let _userAgent = undefined;
|
|
6
|
+
const globals = (typeof self === 'object' ? self : typeof global === 'object' ? global : {});
|
|
7
|
+
let nodeProcess = undefined;
|
|
8
|
+
if (typeof globals.vscode !== 'undefined' && typeof globals.vscode.process !== 'undefined') {
|
|
9
|
+
nodeProcess = globals.vscode.process;
|
|
10
|
+
}
|
|
11
|
+
else if (typeof process !== 'undefined') {
|
|
12
|
+
nodeProcess = process;
|
|
13
|
+
}
|
|
14
|
+
const isElectronProcess = typeof nodeProcess?.versions?.electron === 'string';
|
|
15
|
+
const isElectronRenderer = isElectronProcess && nodeProcess?.type === 'renderer';
|
|
16
|
+
if (typeof navigator === 'object' && !isElectronRenderer) {
|
|
17
|
+
_userAgent = navigator.userAgent;
|
|
18
|
+
_userAgent.indexOf('Windows') >= 0;
|
|
19
|
+
_userAgent.indexOf('Macintosh') >= 0;
|
|
20
|
+
(_userAgent.indexOf('Macintosh') >= 0 || _userAgent.indexOf('iPad') >= 0 || _userAgent.indexOf('iPhone') >= 0) && !!navigator.maxTouchPoints && navigator.maxTouchPoints > 0;
|
|
21
|
+
_userAgent.indexOf('Linux') >= 0;
|
|
22
|
+
_userAgent?.indexOf('Mobi') >= 0;
|
|
23
|
+
const configuredLocale = getConfiguredDefaultLocale(
|
|
24
|
+
(
|
|
25
|
+
localize({ key: 'ensureLoaderPluginIsLoaded', comment: ['{Locked}'] }, '_')));
|
|
26
|
+
_locale = configuredLocale || LANGUAGE_DEFAULT;
|
|
27
|
+
_language = _locale;
|
|
28
|
+
}
|
|
29
|
+
else if (typeof nodeProcess === 'object') {
|
|
30
|
+
_locale = LANGUAGE_DEFAULT;
|
|
31
|
+
_language = LANGUAGE_DEFAULT;
|
|
32
|
+
const rawNlsConfig = nodeProcess.env['VSCODE_NLS_CONFIG'];
|
|
33
|
+
if (rawNlsConfig) {
|
|
34
|
+
try {
|
|
35
|
+
const nlsConfig = JSON.parse(rawNlsConfig);
|
|
36
|
+
const resolved = nlsConfig.availableLanguages['*'];
|
|
37
|
+
_locale = nlsConfig.locale;
|
|
38
|
+
_language = resolved ? resolved : LANGUAGE_DEFAULT;
|
|
39
|
+
}
|
|
40
|
+
catch (e) {
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
console.error('Unable to resolve platform.');
|
|
46
|
+
}
|
|
47
|
+
const userAgent = _userAgent;
|
|
48
|
+
const language = _language;
|
|
49
|
+
var Language;
|
|
50
|
+
( (function(Language) {
|
|
51
|
+
function value() {
|
|
52
|
+
return language;
|
|
53
|
+
}
|
|
54
|
+
Language.value = value;
|
|
55
|
+
function isDefaultVariant() {
|
|
56
|
+
if (language.length === 2) {
|
|
57
|
+
return language === 'en';
|
|
58
|
+
}
|
|
59
|
+
else if (language.length >= 3) {
|
|
60
|
+
return language[0] === 'e' && language[1] === 'n' && language[2] === '-';
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
return false;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
Language.isDefaultVariant = isDefaultVariant;
|
|
67
|
+
function isDefault() {
|
|
68
|
+
return language === 'en';
|
|
69
|
+
}
|
|
70
|
+
Language.isDefault = isDefault;
|
|
71
|
+
})(Language || (Language = {})));
|
|
72
|
+
const setTimeout0IsFaster = (typeof globals.postMessage === 'function' && !globals.importScripts);
|
|
73
|
+
(() => {
|
|
74
|
+
if (setTimeout0IsFaster) {
|
|
75
|
+
const pending = [];
|
|
76
|
+
globals.addEventListener('message', (e) => {
|
|
77
|
+
if (e.data && e.data.vscodeScheduleAsyncWork) {
|
|
78
|
+
for (let i = 0, len = pending.length; i < len; i++) {
|
|
79
|
+
const candidate = pending[i];
|
|
80
|
+
if (candidate.id === e.data.vscodeScheduleAsyncWork) {
|
|
81
|
+
pending.splice(i, 1);
|
|
82
|
+
candidate.callback();
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
let lastId = 0;
|
|
89
|
+
return (callback) => {
|
|
90
|
+
const myId = ++lastId;
|
|
91
|
+
pending.push({
|
|
92
|
+
id: myId,
|
|
93
|
+
callback: callback
|
|
94
|
+
});
|
|
95
|
+
globals.postMessage({ vscodeScheduleAsyncWork: myId }, '*');
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
return (callback) => setTimeout(callback);
|
|
99
|
+
})();
|
|
100
|
+
const isChrome = !!(userAgent && userAgent.indexOf('Chrome') >= 0);
|
|
101
|
+
!!(userAgent && userAgent.indexOf('Firefox') >= 0);
|
|
102
|
+
!!(!isChrome && (userAgent && userAgent.indexOf('Safari') >= 0));
|
|
103
|
+
!!(userAgent && userAgent.indexOf('Edg/') >= 0);
|
|
104
|
+
!!(userAgent && userAgent.indexOf('Android') >= 0);
|
|
105
|
+
export { Language };
|