{"version":3,"file":"zephir-DswtAdTf.chunk.mjs","sources":["../node_modules/highlight.js/lib/languages/zephir.js"],"sourcesContent":["/*\n Language: Zephir\n Description: Zephir, an open source, high-level language designed to ease the creation and maintainability of extensions for PHP with a focus on type and memory safety.\n Author: Oleg Efimov \n Website: https://zephir-lang.com/en\n Category: web\n Audit: 2020\n */\n\n/** @type LanguageFn */\nfunction zephir(hljs) {\n const STRING = {\n className: 'string',\n contains: [ hljs.BACKSLASH_ESCAPE ],\n variants: [\n hljs.inherit(hljs.APOS_STRING_MODE, { illegal: null }),\n hljs.inherit(hljs.QUOTE_STRING_MODE, { illegal: null })\n ]\n };\n const TITLE_MODE = hljs.UNDERSCORE_TITLE_MODE;\n const NUMBER = { variants: [\n hljs.BINARY_NUMBER_MODE,\n hljs.C_NUMBER_MODE\n ] };\n const KEYWORDS =\n // classes and objects\n 'namespace class interface use extends '\n + 'function return '\n + 'abstract final public protected private static deprecated '\n // error handling\n + 'throw try catch Exception '\n // keyword-ish things their website does NOT seem to highlight (in their own snippets)\n // 'typeof fetch in ' +\n // operators/helpers\n + 'echo empty isset instanceof unset '\n // assignment/variables\n + 'let var new const self '\n // control\n + 'require '\n + 'if else elseif switch case default '\n + 'do while loop for continue break '\n + 'likely unlikely '\n // magic constants\n // https://github.com/phalcon/zephir/blob/master/Library/Expression/Constants.php\n + '__LINE__ __FILE__ __DIR__ __FUNCTION__ __CLASS__ __TRAIT__ __METHOD__ __NAMESPACE__ '\n // types - https://docs.zephir-lang.com/0.12/en/types\n + 'array boolean float double integer object resource string '\n + 'char long unsigned bool int uint ulong uchar '\n // built-ins\n + 'true false null undefined';\n\n return {\n name: 'Zephir',\n aliases: [ 'zep' ],\n keywords: KEYWORDS,\n contains: [\n hljs.C_LINE_COMMENT_MODE,\n hljs.COMMENT(\n /\\/\\*/,\n /\\*\\//,\n { contains: [\n {\n className: 'doctag',\n begin: /@[A-Za-z]+/\n }\n ] }\n ),\n {\n className: 'string',\n begin: /<<<['\"]?\\w+['\"]?$/,\n end: /^\\w+;/,\n contains: [ hljs.BACKSLASH_ESCAPE ]\n },\n {\n // swallow composed identifiers to avoid parsing them as keywords\n begin: /(::|->)+[a-zA-Z_\\x7f-\\xff][a-zA-Z0-9_\\x7f-\\xff]*/ },\n {\n className: 'function',\n beginKeywords: 'function fn',\n end: /[;{]/,\n excludeEnd: true,\n illegal: /\\$|\\[|%/,\n contains: [\n TITLE_MODE,\n {\n className: 'params',\n begin: /\\(/,\n end: /\\)/,\n keywords: KEYWORDS,\n contains: [\n 'self',\n hljs.C_BLOCK_COMMENT_MODE,\n STRING,\n NUMBER\n ]\n }\n ]\n },\n {\n className: 'class',\n beginKeywords: 'class interface',\n end: /\\{/,\n excludeEnd: true,\n illegal: /[:($\"]/,\n contains: [\n { beginKeywords: 'extends implements' },\n TITLE_MODE\n ]\n },\n {\n beginKeywords: 'namespace',\n end: /;/,\n illegal: /[.']/,\n contains: [ TITLE_MODE ]\n },\n {\n beginKeywords: 'use',\n end: /;/,\n contains: [ TITLE_MODE ]\n },\n { begin: /=>/ // No markup, just a relevance booster\n },\n STRING,\n NUMBER\n ]\n };\n}\n\nmodule.exports = zephir;\n"],"names":["zephir","hljs","STRING","TITLE_MODE","NUMBER","KEYWORDS","zephir_1"],"mappings":"4YAUA,SAASA,EAAOC,EAAM,CACpB,MAAMC,EAAS,CACb,UAAW,SACX,SAAU,CAAED,EAAK,gBAAkB,EACnC,SAAU,CACRA,EAAK,QAAQA,EAAK,iBAAkB,CAAE,QAAS,KAAM,EACrDA,EAAK,QAAQA,EAAK,kBAAmB,CAAE,QAAS,KAAM,CACvD,CACL,EACQE,EAAaF,EAAK,sBAClBG,EAAS,CAAE,SAAU,CACzBH,EAAK,mBACLA,EAAK,aACT,GACQI,EAEJ,sfAyBF,MAAO,CACL,KAAM,SACN,QAAS,CAAE,KAAO,EAClB,SAAUA,EACV,SAAU,CACRJ,EAAK,oBACLA,EAAK,QACH,OACA,OACA,CAAE,SAAU,CACV,CACE,UAAW,SACX,MAAO,YACR,CACX,CAAW,CACJ,EACD,CACE,UAAW,SACX,MAAO,oBACP,IAAK,QACL,SAAU,CAAEA,EAAK,gBAAkB,CACpC,EACD,CAEE,MAAO,kDAAoD,EAC7D,CACE,UAAW,WACX,cAAe,cACf,IAAK,OACL,WAAY,GACZ,QAAS,UACT,SAAU,CACRE,EACA,CACE,UAAW,SACX,MAAO,KACP,IAAK,KACL,SAAUE,EACV,SAAU,CACR,OACAJ,EAAK,qBACLC,EACAE,CACD,CACF,CACF,CACF,EACD,CACE,UAAW,QACX,cAAe,kBACf,IAAK,KACL,WAAY,GACZ,QAAS,SACT,SAAU,CACR,CAAE,cAAe,oBAAsB,EACvCD,CACD,CACF,EACD,CACE,cAAe,YACf,IAAK,IACL,QAAS,OACT,SAAU,CAAEA,CAAY,CACzB,EACD,CACE,cAAe,MACf,IAAK,IACL,SAAU,CAAEA,CAAY,CACzB,EACD,CAAE,MAAO,IACR,EACDD,EACAE,CACD,CACL,CACA,CAEA,IAAAE,EAAiBN","x_google_ignoreList":[0]}