{"version":3,"file":"haxe.mjs","sources":["../../../../../../node_modules/highlight.js/lib/languages/haxe.js"],"sourcesContent":["/*\nLanguage: Haxe\nDescription: Haxe is an open source toolkit based on a modern, high level, strictly typed programming language.\nAuthor: Christopher Kaster <ikasoki@gmail.com> (Based on the actionscript.js language file by Alexander Myadzel)\nContributors: Kenton Hamaluik <kentonh@gmail.com>\nWebsite: https://haxe.org\nCategory: system\n*/\n\nfunction haxe(hljs) {\n  const IDENT_RE = '[a-zA-Z_$][a-zA-Z0-9_$]*';\n\n  // C_NUMBER_RE with underscores and literal suffixes\n  const HAXE_NUMBER_RE = /(-?)(\\b0[xX][a-fA-F0-9_]+|(\\b\\d+(\\.[\\d_]*)?|\\.[\\d_]+)(([eE][-+]?\\d+)|i32|u32|i64|f64)?)/;\n\n  const HAXE_BASIC_TYPES = 'Int Float String Bool Dynamic Void Array ';\n\n  return {\n    name: 'Haxe',\n    aliases: [ 'hx' ],\n    keywords: {\n      keyword: 'abstract break case cast catch continue default do dynamic else enum extern '\n               + 'final for function here if import in inline is macro never new override package private get set '\n               + 'public return static super switch this throw trace try typedef untyped using var while '\n               + HAXE_BASIC_TYPES,\n      built_in:\n        'trace this',\n      literal:\n        'true false null _'\n    },\n    contains: [\n      {\n        className: 'string', // interpolate-able strings\n        begin: '\\'',\n        end: '\\'',\n        contains: [\n          hljs.BACKSLASH_ESCAPE,\n          {\n            className: 'subst', // interpolation\n            begin: /\\$\\{/,\n            end: /\\}/\n          },\n          {\n            className: 'subst', // interpolation\n            begin: /\\$/,\n            end: /\\W\\}/\n          }\n        ]\n      },\n      hljs.QUOTE_STRING_MODE,\n      hljs.C_LINE_COMMENT_MODE,\n      hljs.C_BLOCK_COMMENT_MODE,\n      {\n        className: 'number',\n        begin: HAXE_NUMBER_RE,\n        relevance: 0\n      },\n      {\n        className: 'variable',\n        begin: \"\\\\$\" + IDENT_RE,\n      },\n      {\n        className: 'meta', // compiler meta\n        begin: /@:?/,\n        end: /\\(|$/,\n        excludeEnd: true,\n      },\n      {\n        className: 'meta', // compiler conditionals\n        begin: '#',\n        end: '$',\n        keywords: { keyword: 'if else elseif end error' }\n      },\n      {\n        className: 'type', // function types\n        begin: /:[ \\t]*/,\n        end: /[^A-Za-z0-9_ \\t\\->]/,\n        excludeBegin: true,\n        excludeEnd: true,\n        relevance: 0\n      },\n      {\n        className: 'type', // types\n        begin: /:[ \\t]*/,\n        end: /\\W/,\n        excludeBegin: true,\n        excludeEnd: true\n      },\n      {\n        className: 'type', // instantiation\n        beginKeywords: 'new',\n        end: /\\W/,\n        excludeBegin: true,\n        excludeEnd: true\n      },\n      {\n        className: 'title.class', // enums\n        beginKeywords: 'enum',\n        end: /\\{/,\n        contains: [ hljs.TITLE_MODE ]\n      },\n      {\n        className: 'title.class', // abstracts\n        begin: '\\\\babstract\\\\b(?=\\\\s*' + hljs.IDENT_RE + '\\\\s*\\\\()',\n        end: /[\\{$]/,\n        contains: [\n          {\n            className: 'type',\n            begin: /\\(/,\n            end: /\\)/,\n            excludeBegin: true,\n            excludeEnd: true\n          },\n          {\n            className: 'type',\n            begin: /from +/,\n            end: /\\W/,\n            excludeBegin: true,\n            excludeEnd: true\n          },\n          {\n            className: 'type',\n            begin: /to +/,\n            end: /\\W/,\n            excludeBegin: true,\n            excludeEnd: true\n          },\n          hljs.TITLE_MODE\n        ],\n        keywords: { keyword: 'abstract from to' }\n      },\n      {\n        className: 'title.class', // classes\n        begin: /\\b(class|interface) +/,\n        end: /[\\{$]/,\n        excludeEnd: true,\n        keywords: 'class interface',\n        contains: [\n          {\n            className: 'keyword',\n            begin: /\\b(extends|implements) +/,\n            keywords: 'extends implements',\n            contains: [\n              {\n                className: 'type',\n                begin: hljs.IDENT_RE,\n                relevance: 0\n              }\n            ]\n          },\n          hljs.TITLE_MODE\n        ]\n      },\n      {\n        className: 'title.function',\n        beginKeywords: 'function',\n        end: /\\(/,\n        excludeEnd: true,\n        illegal: /\\S/,\n        contains: [ hljs.TITLE_MODE ]\n      }\n    ],\n    illegal: /<\\//\n  };\n}\n\nmodule.exports = haxe;\n"],"names":["haxe","hljs","IDENT_RE","HAXE_NUMBER_RE","haxe_1"],"mappings":";;;;AASA,WAASA,EAAKC,GAAM;AAClB,UAAMC,IAAW,4BAGXC,IAAiB;AAIvB,WAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS,CAAE,IAAI;AAAA,MACf,UAAU;AAAA,QACR,SAAS,wQANY;AAAA,QAUrB,UACE;AAAA,QACF,SACE;AAAA;MAEJ,UAAU;AAAA,QACR;AAAA,UACE,WAAW;AAAA;AAAA,UACX,OAAO;AAAA,UACP,KAAK;AAAA,UACL,UAAU;AAAA,YACRF,EAAK;AAAA,YACL;AAAA,cACE,WAAW;AAAA;AAAA,cACX,OAAO;AAAA,cACP,KAAK;AAAA;YAEP;AAAA,cACE,WAAW;AAAA;AAAA,cACX,OAAO;AAAA,cACP,KAAK;AAAA;;;QAIXA,EAAK;AAAA,QACLA,EAAK;AAAA,QACLA,EAAK;AAAA,QACL;AAAA,UACE,WAAW;AAAA,UACX,OAAOE;AAAA,UACP,WAAW;AAAA;QAEb;AAAA,UACE,WAAW;AAAA,UACX,OAAO,QAAQD;AAAA;QAEjB;AAAA,UACE,WAAW;AAAA;AAAA,UACX,OAAO;AAAA,UACP,KAAK;AAAA,UACL,YAAY;AAAA;QAEd;AAAA,UACE,WAAW;AAAA;AAAA,UACX,OAAO;AAAA,UACP,KAAK;AAAA,UACL,UAAU,EAAE,SAAS,2BAA0B;AAAA;QAEjD;AAAA,UACE,WAAW;AAAA;AAAA,UACX,OAAO;AAAA,UACP,KAAK;AAAA,UACL,cAAc;AAAA,UACd,YAAY;AAAA,UACZ,WAAW;AAAA;QAEb;AAAA,UACE,WAAW;AAAA;AAAA,UACX,OAAO;AAAA,UACP,KAAK;AAAA,UACL,cAAc;AAAA,UACd,YAAY;AAAA;QAEd;AAAA,UACE,WAAW;AAAA;AAAA,UACX,eAAe;AAAA,UACf,KAAK;AAAA,UACL,cAAc;AAAA,UACd,YAAY;AAAA;QAEd;AAAA,UACE,WAAW;AAAA;AAAA,UACX,eAAe;AAAA,UACf,KAAK;AAAA,UACL,UAAU,CAAED,EAAK,UAAU;AAAA;QAE7B;AAAA,UACE,WAAW;AAAA;AAAA,UACX,OAAO,0BAA0BA,EAAK,WAAW;AAAA,UACjD,KAAK;AAAA,UACL,UAAU;AAAA,YACR;AAAA,cACE,WAAW;AAAA,cACX,OAAO;AAAA,cACP,KAAK;AAAA,cACL,cAAc;AAAA,cACd,YAAY;AAAA;YAEd;AAAA,cACE,WAAW;AAAA,cACX,OAAO;AAAA,cACP,KAAK;AAAA,cACL,cAAc;AAAA,cACd,YAAY;AAAA;YAEd;AAAA,cACE,WAAW;AAAA,cACX,OAAO;AAAA,cACP,KAAK;AAAA,cACL,cAAc;AAAA,cACd,YAAY;AAAA;YAEdA,EAAK;AAAA;UAEP,UAAU,EAAE,SAAS,mBAAkB;AAAA;QAEzC;AAAA,UACE,WAAW;AAAA;AAAA,UACX,OAAO;AAAA,UACP,KAAK;AAAA,UACL,YAAY;AAAA,UACZ,UAAU;AAAA,UACV,UAAU;AAAA,YACR;AAAA,cACE,WAAW;AAAA,cACX,OAAO;AAAA,cACP,UAAU;AAAA,cACV,UAAU;AAAA,gBACR;AAAA,kBACE,WAAW;AAAA,kBACX,OAAOA,EAAK;AAAA,kBACZ,WAAW;AAAA;;;YAIjBA,EAAK;AAAA;;QAGT;AAAA,UACE,WAAW;AAAA,UACX,eAAe;AAAA,UACf,KAAK;AAAA,UACL,YAAY;AAAA,UACZ,SAAS;AAAA,UACT,UAAU,CAAEA,EAAK,UAAU;AAAA;;MAG/B,SAAS;AAAA,IACb;AAAA,EACA;AAEA,SAAAG,IAAiBJ;;","x_google_ignoreList":[0]}